Use the arrow keys to move between objects in the generative space, the other buttons to record a screenshot or gif. This is a collection of self-building gradually forming equilibria, formed by a pseudofractal recursive line-drawing algorithm combined with a feed-forward mechanism that imitates a cellular automata.
Source Code:
```lua
pico-8 cartridge // http://www.pico-8.com
version 42
__lua__
cls()
r=rnd
seed=r(-1)
srand(seed)
-- poke(24364,7) 7 == four way mirror, 5 == rorschach
function q()return r(32)-16end
pal({q(),q(),q(),q()},1)fillp(r({∧,░,…,█,█,█,▥,▒,♪,▤}))
max_depth = r(25) + 10
_set_fps(60)
-- pal({8,-8,2,1,-3,13,-16},1) -- dead god
poke(0x5f54,0x60)
palt(0,false)
function p()
if(r()>.5)srand(seed)
if(r()>.9)srand(seed)
end
function reinit()
srand(seed)cls()pal({q(),q(),q(),q()},1)fillp(r({∧,░,…,█,█,█,▥,▒,♪,▤}))
end
function s(x0, y0, x1, y1, depth)
depth = depth or 0
if(depth>max_depth)return
p()
line(x0,y0,x1,y1,r(7))
if (x1-x0 < 2 and y1-y0 < 2) flip()
if(r()>0.999)cls()
px=r(x0+x1)+x0
py=r(y0+y1)+y0
px1=(r(px+x1))/2
py1=(r(py+y1))/2
s(fr(px),fr(py),fr(px1),fr(py1), 1+depth)
end
function fr(n)
if(r()>.9)sspr(0,0,128,128,2,2,124,124)
for i=0,25do
x=r(88)+20y=r(88)+20
if r()>0.7 then
sspr(x+g(),y+g(),8,8,y+g(),x+g(),r(4)+7,r(4)+7)else
sspr(x+r(4)-r(4),y+r(4)-r(4),8,8,x+r(4)-r(4),y+r(4)-r(4),r(4)+7,r(4)+7)end
end
if(btnp(➡️))seed+=1reinit()
if(btnp(⬅️))seed-=1reinit()
if(btnp(⬆️))seed+=.1reinit()
if(btnp(⬇️))seed-=.1reinit()
if(btnp(4))extcmd("screen")
if(btnp(5))extcmd("video")
flip()
if(n>128)return r(n)
return n
end
function g()return r(4)-r(4)end
::_::
if(btnp(➡️))seed+=1reinit()
s(r(128),r(128),r(128),r(128))
goto _
```