#wxsand: owen piette's falling sand game #version 4.4, file subversion 2 #element element r g b gravity slip density conductivity visible #self probabilityofchanging element [probabilityofchangingintothiselement element] [...] #hotself tempatwhichthiselementselfprobabilitystartstoincreaseto100 element #hotcolor element r g b #neighbor probabilityofreacting element1 element2 [probabilityofchangingintotheseelements element1 element2] [...] #hotneighbor tempatwhichthiselementselfprobabilitystartstoincreaseto100 element1 element2 #explosion neighbor1 neighbor2 xspeed<255 yspeed<255 #pexplosion neighbor1 neighbor2 diameter element group top war-dots1 war-dot-base1 t1trap engineerhut1 engineer1 suicide-bomberdot1 group bottom war-dots2 war-dot-base2 t2trap engineerhut2 engineer2 suicide-bomberdot2 #erases element empty 0 0 0 0 1 0 0 1 #makes a small horde of dots for team one element war-dots1 200 0 0 0 0 0 0 1 element war-dots12 200 0 0 .1 0 0 0 0 element strong-war-dot1 100 0 0 .1 0 0 0 0 neighbor .01 war-dots12 empty 1 empty war-dots12 neighbor .01 strong-war-dot1 empty 1 empty strong-war-dot1 self 1 war-dots1 .8 war-dots12 .1 strong-war-dot1 .01 suicide-bomber-dot1 .07 gunman1 .02 rocketeer1 neighbor 1 war-dots12 engineer2 .75 corpse war-dots12 .25 engineer2 corpse neighbor 1 strong-war-dot1 engineer2 1 strong-war-dot1 corpse neighbor 1 war-dots12 gunman2 .75 war-dots12 corpse .25 corpse gunman2 neighbor 1 strong-war-dot1 gunman2 1 strong-war-dot1 corpse #makes a small horde of dots for team two element war-dots2 0 0 200 0 0 0 0 1 element war-dots22 0 0 200 -.2 0 0 0 0 element strong-war-dot2 0 0 100 -.2 0 0 0 0 neighbor .01 war-dots22 empty 1 empty war-dots22 neighbor .01 strong-war-dot2 empty 1 empty strong-war-dot2 self 1 war-dots2 .8 war-dots22 .1 strong-war-dot2 .01 suicide-bomber-dot2 .07 gunman2 .02 rocketeer2 neighbor 1 war-dots22 engineer1 .75 corpse war-dots22 .25 engineer1 corpse neighbor 1 strong-war-dot1 engineer2 1 strong-war-dot1 corpse neighbor 1 war-dots22 gunman1 .75 war-dots22 corpse .25 corpse gunman1 neighbor 1 strong-war-dot2 gunman1 1 strong-war-dot2 corpse neighbor neighbor corpse neighbor corpse neighbor war-dot2
1 war-dots12 war-dots22 .5 corpse war-dots12 .5 war-dots22 corpse 1 strong-war-dot1 war-dots22 .75 corpse strong-war-dot1 .25 war-dots22 1 strong-war-dot2 war-dots12 .75 corpse strong-war-dot2 .25 war-dots12 1 strong-war-dot1 strong-war-dot2 .5 corpse strong-war-dot1 .5 strongcorpse
#creates all but engineer dots for team one until destroyed size=8 element war-dot-base1 255 0 0 0 0 0 0 1
neighbor .01 war-dot-base1 empty .8 war-dot-base1 war-dots12 .1 war-dot-base1 strong-war-dot1 .01 war-dot-base1 suicide-bomber-dot1 .07 war-dot-base1 gunman1 .02 war-dot-base1 rocketeer1 neighbor .5 war-dot-base1 war-dots22 .5 war-dot-base1 corpse .25 rubble corpse .25 rubble war-dots22 neighbor 1 war-dot-base1 strong-war-dot2 .75 rubble strong-war-dot2 .25 war-dotbase1 corpse neighbor 1 war-dot-base1 t1trap .25 war-dot-base1 engineer1 .75 war-dot-base1 empty #creates all but engineer dots for team two until destroyed size=8 element war-dot-base2 0 0 255 0 0 0 0 1 neighbor .01 war-dot-base2 empty .8 war-dot-base2 war-dots22 .1 war-dot-base2 strong-war-dot2 .01 war-dot-base2 suicide-bomber-dot2 .07 war-dot-base2 gunman2 .02 war-dot-base2 rocketeer2 neighbor .5 war-dot-base2 war-dots12 .5 war-dot-base2 corpse .25 rubble corpse .25 rubble war-dots12 neighbor 1 war-dot-base2 strong-war-dot1 .75 rubble strong-war-dot1 .25 war-dotbase2 corpse neighbor 1 war-dot-base2 t2trap .25 war-dot-base2 engineer2 .75 war-dot-base2 empty #acts as a wall for all dots element sand-bags 238 204 128 0 0 0 0 1 neighbor .25 sand-bags pistolbullet1 .25 empty empty .75 sand-bags empty neighbor .25 sand-bags pistolbullet2 .25 empty empty .75 sand-bags empty pexplosion sand-bags rocket1 3 rubbled pexplosion sand-bags rocket2 3 rubbled element corpse 0 100 0 0 0 0 0 0 element corpse2 0 90 0 0 0 0 0 0 element corpse3 0 80 0 0 0 0 0 0 element corpse4 0 70 0 0 0 0 0 0 element corpse5 0 60 0 0 0 0 0 0 element corpse6 0 50 0 0 0 0 0 0 element corpse7 0 40 0 0 0 0 0 0 element corpse8 0 30 0 0 0 0 0 0 element corpse9 0 20 0 0 0 0 0 0 element corpse10 0 10 0 0 0 0 0 0 self .05 corpse 1 corpse2 self .05 corpse2 1 corpse3 self .05 corpse3 1 corpse4 self .05 corpse4 1 corpse5 self .05 corpse5 1 corpse6 self .05 corpse6 1 corpse7 self .05 corpse7 1 corpse8 self .05 corpse8 1 corpse9 self .05 corpse9 1 corpse10 self .05 corpse10 1 empty element element element element element element element element
rubble 100 rubble2 90 rubble3 80 rubble4 70 rubble5 60 rubble6 50 rubble7 40 rubble8 30
100 100 90 90 0 80 80 0 70 70 0 60 60 0 50 50 0 40 40 0 30 30 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
element rubble9 20 20 20 0 0 0 0 0 element rubble10 10 10 10 0 0 0 0 0 self .005 rubble 1 rubble2 self .005 rubble2 1 rubble3 self .005 rubble3 1 rubble4 self .005 rubble4 1 rubble5 self .005 rubble5 1 rubble6 self .005 rubble6 1 rubble7 self .005 rubble7 1 rubble8 self .005 rubble8 1 rubble9 self .005 rubble9 1 rubble10 self .005 rubble10 1 empty element burnt-corpse 54 0 0 0 0 0 0 0 self .25 burnt-corpse 1 empty neighbor neighbor neighbor neighbor neighbor neighbor neighbor neighbor neighbor neighbor
.2 .2 .2 .2 .2 .2 .2 .2 .2 .2
war-dots12 war-dots12 war-dots12 war-dots12 war-dots12 war-dots12 war-dots12 war-dots12 war-dots12 war-dots12
corpse 1 war-dots12 burnt-corpse corpse2 1 war-dots12 burnt-corpse corpse3 1 war-dots12 burnt-corpse corpse4 1 war-dots12 burnt-corpse corpse5 1 war-dots12 burnt-corpse corpse6 1 war-dots12 burnt-corpse corpse7 1 war-dots12 burnt-corpse corpse8 1 war-dots12 burnt-corpse corpse9 1 war-dots12 burnt-corpse corpse10 1 war-dots12 burnt-corpse
neighbor neighbor neighbor neighbor neighbor neighbor neighbor neighbor neighbor neighbor
.2 .2 .2 .2 .2 .2 .2 .2 .2 .2
war-dots22 war-dots22 war-dots22 war-dots22 war-dots22 war-dots22 war-dots22 war-dots22 war-dots22 war-dots22
corpse 1 war-dots22 burnt-corpse corpse2 1 war-dots22 burnt-corpse corpse3 1 war-dots22 burnt-corpse corpse4 1 war-dots22 burnt-corpse corpse5 1 war-dots22 burnt-corpse corpse6 1 war-dots22 burnt-corpse corpse7 1 war-dots22 burnt-corpse corpse8 1 war-dots22 burnt-corpse corpse9 1 war-dots22 burnt-corpse corpse10 1 war-dots22 burnt-corpse
element trapstarter1 0 0 0 0 0 0 0 0 #kills team two's normal dots (wear's out with use) element t1trap 91 79 47 0 0 0 0 1 element t1trap2 81 68 35 0 0 0 0 0 element t1trap3 71 57 22 0 0 0 0 0 element t1trap4 61 47 9 0 0 0 0 0 element t1trap5 54 39 0 0 0 0 0 0 element trapstarter2 0 0 0 0 0 0 0 0 #kills team one's normal dots (wears out with use) element t2trap 91 79 47 0 0 0 0 1 element t2trap2 81 68 35 0 0 0 0 0 element t2trap3 71 57 22 0 0 0 0 0 element t2trap4 61 47 9 0 0 0 0 0 element t2trap5 54 39 0 0 0 0 0 0 neighbor 1 t1trap war-dots22 .90 t1trap2 corpse6 .08 rubble9 corpse .02 rubble9 war-dots22 neighbor .90 t1trap2 war-dots22 .80 t1trap3 corpse5 .16 rubble9 corpse .04 rubble9 war-dots22
neighbor .80 t1trap3 war-dots22 .70 t1trap4 corpse4 .22 rubble9 corpse .08 rubble9 war-dots22 neighbor .70 t1trap4 war-dots22 .60 t1trap5 corpse3 .30 rubble9 corpse .1 rubble9 war-dots22 neighbor .60 t1trap5 war-dots22 .50 rubble9 corpse2 .50 rubble9 war-dots22 neighbor 1 t2trap war-dots12 .90 t2trap2 corpse6 .08 rubble9 corpse .02 rubble9 war-dots12 neighbor .90 t2trap2 war-dots12 .80 t2trap3 corpse5 .16 rubble9 corpse .04 rubble9 war-dots12 neighbor .80 t2trap3 war-dots12 .70 t2trap4 corpse4 .22 rubble9 corpse .08 rubble9 war-dots12 neighbor .70 t2trap4 war-dots12 .60 t2trap5 corpse3 .30 rubble9 corpse .1 rubble9 war-dots12 neighbor .60 t2trap5 war-dots12 .50 rubble9 corpse2 .50 rubble9 war-dots12 neighbor 1 t1trap strong-war-dot2 .70 t1trap2 corpse6 .18 rubble9 corpse .12 rubble9 strong-war-dot2 neighbor .90 t1trap2 strong-war-dot2 .60 t1trap3 corpse5 .26 rubble9 corpse .14 rubble9 strong-war-dot2 neighbor .80 t1trap3 strong-war-dot2 .50 t1trap4 corpse4 .32 rubble9 corpse .18 rubble9 strong-war-dot2 neighbor .70 t1trap4 strong-war-dot2 .40 t1trap5 corpse3 .40 rubble9 corpse .2 rubble9 strong-war-dot2 neighbor .60 t1trap5 strong-war-dot2 .30 rubble9 corpse2 .70 rubble9 strong-wardot2 neighbor 1 t2trap strong-war-dot1 .70 t2trap2 corpse6 .18 rubble9 corpse .12 rubble9 strong-war-dot1 neighbor .90 t2trap2 strong-war-dot1 .60 t2trap3 corpse5 .26 rubble9 corpse .14 rubble9 strong-war-dot1 neighbor .80 t2trap3 strong-war-dot1 .50 t2trap4 corpse4 .32 rubble9 corpse .18 rubble9 strong-war-dot1 neighbor .70 t2trap4 strong-war-dot1 .40 t2trap5 corpse3 .40 rubble9 corpse .2 rubble9 strong-war-dot1 neighbor .60 t2trap5 strong-war-dot1 .30 rubble9 corpse2 .70 rubble9 strong-wardot1 #creates traps for team one element engineer1 255 139 139 .1 0 0 0 1 #creates engineers for team one size=4 element engineerhut1 255 74 173 0 0 0 0 1 #creates traps for team two element engineer2 139 139 255 -.2 0 0 0 1 #creates engineers for team two size=4 element engineerhut2 173 74 255 0 0 0 0 1 neighbor 1 engineerhut1 engineerhut1 corpse neighbor 1 engineerhut2 engineerhut2 corpse neighbor 1 engineerhut1 engineerhut1 corpse neighbor 1 engineerhut2 engineerhut2 corpse neighbor 1 engineerhut1 neighbor 1 engineerhut2
war-dots22 .50 rubble corpse .25 rubble war-dots22 .25 war-dots12 .50 rubble corpse .25 rubble war-dots12 .25 strong-war-dot2 .75 rubble strong-war-dot2 .25 strong-war-dot1 .75 rubble strong-war-dot1 .25 t1trap .25 engineerhut1 engineer1 .75 engineerhut1 empty t2trap .25 engineerhut2 engineer2 .75 engineerhut2 empty
neighbor .01 engineer1 empty 1 empty engineer1 neighbor .01 engineer2 empty 1 empty engineer2 self .001 engineer1 1 trapstarter1 self .001 engineer2 1 trapstarter2 neighbor 1 trapstarter1 empty 1 trapstarter1 t1trap neighbor .05 trapstarter1 t1trap 1 t1trap t1trap neighbor 1 trapstarter2 empty 1 trapstarter2 t2trap neighbor .05 trapstarter2 t2trap 1 t2trap t2trap neighbor .001 engineerhut1 empty 1 engineerhut1 engineer1 neighbor .001 engineerhut2 empty 1 engineerhut2 engineer2 neighbor 1 engineerhut1 t1trap 1 engineerhut1 empty neighbor 1 engineerhut1 trapstarter1 1 engineerhut1 engineer1 neighbor 1 engineerhut1 t2trap 1 engineerhut1 empty neighbor 1 engineerhut2 t2trap 1 engineerhut2 empty neighbor 1 engineerhut2 trapstarter2 1 engineerhut2 engineer2 neighbor 1 engineerhut2 t1trap 1 engineerhut2 empty #will explode, literally, he touches something and ka-boom! element suicide-bomber-dot1 50 0 0 .1 0 0 0 0 neighbor .1 suicide-bomber-dot1 empty 1 empty suicide-bomber-dot1 #will explode, literally, he touches something and ka-boom! element suicide-bomber-dot2 0 0 50 -.2 0 0 0 0 neighbor .1 suicide-bomber-dot2 empty 1 empty suicide-bomber-dot2 pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion
suicide-bomber-dot1 suicide-bomber-dot1 suicide-bomber-dot2 suicide-bomber-dot2 suicide-bomber-dot1 suicide-bomber-dot2 suicide-bomber-dot1 suicide-bomber-dot2 suicide-bomber-dot1 suicide-bomber-dot2 suicide-bomber-dot1 suicide-bomber-dot2
war-dots22 12 rubbled strong-war-dot2 12 rubbled war-dots12 12 rubbled strong-war-dot1 12 rubbled t2trap 12 rubbled t1trap 12 rubbled war-dot-base2 12 rubbled war-dot-base1 12 rubbled engineerhut2 12 rubbled engineerhut1 12 rubbled pistolbullet2 12 rubbled pistolbullet1 12 rubbled
#helps with explosions element rubbled 247 63 63 0 0 0 0 0 self .5 rubbled .75 empty .05 rubble7 .05 rubble8 .05 rubble9 .05 rubble10 .05 corpse #gunman with a basic pistol element gunman1 200 0 0 .1 0 0 0 0 #gunman with a basic pistol element gunman2 0 0 200 -.2 0 0 0 0 neighbor .02 gunman1 empty .9 empty gunman1 .1 gunman1 pistolbullet1 neighbor .02 gunman2 empty .9 empty gunman2 .1 gunman2 pistolbullet2 #pistol bullet element pistolbullet1 100 100 100 1 0 0 0 0 self .005 pistolbullet1 1 empty #pistol bullet
element pistolbullet2 100 100 100 -1 0 0 0 0 self .005 pistolbullet2 1 empty neighbor neighbor neighbor neighbor neighbor neighbor
1 1 1 1 1 1
pistolbullet1 pistolbullet1 pistolbullet1 pistolbullet2 pistolbullet2 pistolbullet2
strong-war-dot2 1 empty war-dots22 war-dots22 1 empty corpse engineer2 1 empty corpse strong-war-dot1 1 empty war-dots12 war-dots12 1 empty corpse engineer1 1 empty corpse
#gunman with a rocket-launcher element rocketeer1 200 0 0 .1 0 0 0 0 #gunman with a rocket-launcher element rocketeer2 0 0 200 -.2 0 0 0 0 neighbor .01 rocketeer1 empty .95 empty rocketeer1 .05 rocketeer1 rocket1 neighbor .01 rocketeer2 empty .95 empty rocketeer2 .05 rocketeer2 rocket2 #rocket element rocket1 100 100 100 1 0 0 0 0 neighbor .25 rocket1 empty 1 rocket1 fire1 self .005 rocket1 1 g-rocket #rocket element rocket2 100 100 100 -1 0 0 0 0 neighbor .25 rocket2 empty 1 rocket2 fire2 self .005 rocket2 1 g-rocket #rocket effect element fire1 247 63 63 -.1 1 0 0 0 self .25 fire1 1 empty #rocket effect element fire2 247 63 63 .1 1 0 0 0 self .25 fire2 1 empty #helps to make rockets self into an explode element g-rocket 0 0 0 0 0 0 0 0 pexplosion g-rocket empty 12 rubbled pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion pexplosion
rocket1 rocket1 rocket1 rocket1 rocket1 rocket1 rocket1 rocket1 rocket1
strong-war-dot2 6 rubbled war-dots22 6 rubbled engineer2 6 rubbled suicide-bomber-dot1 12 rubbled t1trap 6 rubbled t1trap2 6 rubbled t1trap3 6 rubbled t1trap4 6 rubbled t1trap5 6 rubbled
pexplosion pexplosion pexplosion pexplosion pexplosion
rocket2 rocket2 rocket2 rocket2 rocket1
strong-war-dot1 6 rubbled war-dots12 6 rubbled engineer2 6 rubbled suicide-bomber-dot2 12 rubbled t2trap 6 rubbled
pexplosion pexplosion pexplosion pexplosion
rocket1 rocket1 rocket1 rocket1
t2trap2 t2trap3 t2trap4 t2trap5
6 6 6 6
rubbled rubbled rubbled rubbled