# .font: font.text_2
2021-11-30 08:51 dustin  
# .font: font.text_1
solution free! it was very joyful to trick  krissz 's engine! :d  
  
here's what i think is happening:  
  
to solve the cave, you need a \ which must come from the amoeba, but you also need a | to blast the exit free, and the | also must come from the amoeba! how can this be?  
  
here's what i believe to be the engine rules for amoeba which are relevant here (they slightly differ from what i posted under cso 200):  
  
1. if at the end of a cavescan, the amoeba count is 200 or more, then the "overgrown" flag is set. next frame, all amoebas are converted into |.  
  
2. if during a cavescan, a falling | activates a magic wall, the "stop amoeba" flag is set instantly. from there on, every amoeba is converted into \.  
  
3. the "overgrown" flag can overwrite the "stop amoeba" flag, but not vice versa.  
  
with these rules, this cave works as follows:  
  
the decisive frame is the frame where the | activates the magic wall. so ^ has already moved away and the falling | is located directly above the mwall, ready to activate it. in this frame, all the action happens! in chronological order:  
(note that the following events are "chronological" only for the engine, while as player, it looks like it all happens simultaneousely.)  
  
at the start of the cavescan, the amoeba count is 199 or less. (otherwise, the "overgrown" flag would already have been set one frame before.)  
  
during the cavescan, at least two amoebas must luckily grow simultaneousely to push the amoeba count to 201 or bigger. (200 is n o t enough as we will see!) note that with one exception, all amoebas are scanned before the | which activates the mwall!  
  
when the falling | is in the scanner and activates the mwall, the "stop amoeba" flag is set and the engine wants to convert all amoebas into \.  
  
after the mwall activation, only one more amoeba is scanned, and it is immediately converted into a \.  
  
at the end of the cavescan, the amoeba count is now at least 201-1=200. this triggers the "overgrown" flag which overwrites the "stop amoeba" flag.  
  
so the result of the whole cavescan in that one frame is: mwall activated, one amoeba converted into \, "overgrown" flag is active. that means that next frame, all the remaining amoebas are converted into |||. the amoeba converts into \ at ||| at the same time! :d