Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
A Simulation in Emoji (ncase.me)
145 points by callumlocke on Nov 28, 2015 | hide | past | favorite | 32 comments


A Start Up Game: http://ncase.me/emoji-prototype/?remote=-K4BeA6ciFnVG_fD9wXP

People appear, and have ideas. Ideas need customers (or money) to become startups. Startups need customers (or MORE money) to become businesses. Too much money creates rocketships - which need even more consumers to land.

Real businesses create angels, and subsequently investors.

Feel free to tinker with the weightings, depending on how many successes you'd like to have!


"Real business"es have to have the probability of being obsoleted by new startups, or else you end up with a cash factory that spits out investors that cover half the world: http://imgur.com/Bg1SV3g


They have a chance to become a dead pool in this simulation model, more or less approximating that. EDIT: I was wrong, see below.


Currently the rule set says only "startup" and "rocketship" can turn into dead pool, not "real business". Adding the "dead pool" rule to "real business" would indeed approximate that. (Or make it conditional to > a certain number of neighboring "startup"s if you like)


Right you are. My bad.


I was also wondering why the domain was familiar. Nicky Case creates some awesome interactive stories and demos of concepts like anxiety & Hebbian learning[0], Self-categorization theory[1], and the effects of very mild systemic bias on segregation[2]. Plus most of it is licensed under CC0 and available on Github[3]!

[0]: http://ncase.me/neurons/

[1]: http://ncase.me/group-prototype/

[2]: http://ncase.me/polygons/

[3]: https://github.com/ncase/


Zombie apocalypse: http://ncase.me/emoji-prototype/?remote=-K4BxmGwlnBjJ96ipVsg or with zombie decay: http://ncase.me/emoji-prototype/?remote=-K4C-rlmldj1NYKXa-jf

(p.s. If the subject of "Programming zombie apocalypse simulators" appeals to you at all: http://confreaks.tv/videos/keeprubyweird2015-prepare-yoursel... )


I added some guns into the mix, to give the survivors a chance:

http://ncase.me/emoji-prototype/?remote=-K4CpUfuwB2mRqRWRiz4

Turns out that the NRA was right!


Added reproduction of surviving humans. Sometimes it fuels the apocalypse and the world dies. Sometimes an isolated population repopulates the world. And sometimes it takes one infected idiot to ruin all the things.

http://ncase.me/emoji-prototype/?remote=-K4ED-VB3jb7Mhbpj_e4




A story of a bamboo forest, marauding dragons, and gentle panda bears. Gosh, these are fun.

http://ncase.me/emoji-prototype/?remote=-K4CpBTSuA4-zO0owfzp


This is really cool! I made a fairly simple system with plants, herbivores, and carnivores... Plants can reproduce to any open square on the board. Herbivores and carnivores reproduce when they eat, and can die from overcrowding or randomly from disease/old age. Corpses provide fertilizer for nearby plants. Certainly not the most realistic model, but a lot of fun to mess around with!

http://ncase.me/emoji-prototype/?remote=-K4BOya31RZ3XEK5PTgy


Yeah this is really cool! I tweaked the settings a bit - think this is a bit more stable of an ecosystem (also not the most realistic) http://ncase.me/emoji-prototype/?remote=-K4Bsn4mc4p0CJkH43cB


Awesome! I tried coming up with justifications for all of the rules, and decided that having animals popping into existence didn't make sense, but if you consider the whole thing an open system with an influx of predators, then yours still makes perfect sense. Much more interesting to watch :)


Since it was mentioned in the description and I hadn't seen anyone else do it, here's the Game of Life with poop emoji: http://ncase.me/emoji-prototype/?remote=-K4CKcP-uNe-iuB9brbL



This use of characters for graphics reminds me of how graphics in old game consoles like the NES worked - effectively a text-mode display with a user-definable colour font.


I made an advanced zombie simulator, with medics, cops, hordes, and more! Inspired by patio11.

http://ncase.me/emoji-prototype/?remote=-K4CAvIr6PQhPlQ44ahe



http://ncase.me/emoji-prototype/?remote=-K4C8dO98eRuDkYqjLqj

Im not sure what I've done here, but it sure is pretty to watch


http://ncase.me/emoji-prototype/?remote=-K4C-x5QN9AmdeUR8x5L

Forest simulation. Seedlings sometimes appear, and they sometimes turn into trees.

Fires can start within a tree, and when they do they will wipe out adjacent trees and seedlings, with a chance of turning them into fertile ash. When a seedling grows next to fertile ash, that ash turns into a tree. Hopefully simulating the benefits of fire to regrowth of a forest system, although not to any degree of real world accuracy!


In case anyone else isn't seeing the emoji characters on Ubuntu - "apt-get install ttf-ancient-fonts" and a browser restart solved the problem for me.


Thanks for the suggestion. It also works on Arch Linux.

yaourt -S ttf-ancient-fonts


Nothing lives for long in this acursed land http://ncase.me/emoji-prototype/?remote=-K4D_6Swzvpxt6eAfFGa


Extremely interesting. My first thought was to step through the simulation and try to see lightning strike, but I guess it doesn't display.

I think this would be a very interesting use case for Elm with its "time traveling" mechanic.


It would be great if you could have simulation objects inherit from one another - e.g. if you're making a weather system to have a generic cloud, and then have thunder cloud and rain cloud inherit from cloud.


This is great fun. Does anyone else remember StarLogo? https://en.wikipedia.org/wiki/StarLogo


Am I the only one for whom most of the example symbols aren't displayed properly? (firefox, win7, so a relatively "normal" configuration)


Amazing. Can you change the speed of the simulation?


You could if the javascript didn't throw away the return value from setInterval(). If:

    setInterval(Model.tick,1000/30);
were:

    Model.id = setInterval(Model.tick,1000/30);
I think you could then clearInterval() and inject your own ‘tick’ method with whatever frequency you wanted. It's a shame there's no actual direct way to vary the frequency, given how brilliantly put-together the rest of the UI is.


This is just awesome!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: