A downloadable demo

lava lamp irl for reference

added directed movement to vanilla Gray-Scott model, whose diffusion is undirected, and reactions only happen between agents occupying the same space. Creating substance somewhere and destroying it elsewhere via separate processes could debar said substance from certain roles. It's possible to duplicate information, but for purposes of game balance, something created cheaply shan't have much strength of its own, e.g., instructions shouldn't do much without workers to carry them out

for my program, substances can get converted to other types, but the total amount across all types is mostly conserved (calculate amount of transfer before applying to either, but there could be still rounding error cuz I used floating points)

I want to use this as a game's magic system, but would need to ensure stability, lest something like this should happen

this prototype doesn't even have GPU utilization... might have to rework the whole thing if I want to make a module like  https://assetstore.unity.com/packages/tools/particles-effects/fluidsim-5717

Download

Download
lavaLamp.java 11 kB

Install instructions

program isn't interactive, so there isn't point in downloading atm

haven't made an editor yet; source is poorly-commented

default parameters used for cover video look like this