In article <dff59fc4-e585-64bc-97d4-1f10da2...@netbsd.org>, Charlotte Koch <charlo...@netbsd.org> wrote: >Hiya, > >My inclination is to remove all code from robots(6) that is guarded >inside "#ifdef FANCY" -- because it isn't defined at all in the code nor >the Makefile. And "FANCY" doesn't seem to have any meaning in e.g. >curses, either. > >That led me to investigate where -DFANCY even came from in the first >place. I found PR #5832 where apparently we supported -DFANCY for... >Linux? Also see src/games/robots/move.c r1.7 and r1.9. > >I don't understand what the story is, here. It seems the goal was to >make sure the Linux version of our games was... identical to the one >that we maintain in src? Even though we don't use it? What? > >Please help me understand what's going on here, and why I shouldn't just >remove all this unused FANCY code.
So I wrote autobot mode (-A) I believe in the summer of 1986 together with some changes to let it use very large screen sizes. The algorithm to avoid robots is pretty simplistic: Run away from robots in a single direction until you run out of moves, then in a different direction and when you get stuck teleport. FANCY changes its behavior to: 1. Stand still instead of trying to run away (the Stand_still variable) 2. Instead of starting to try moves from the beginning of moves, try the next move available from the prior move (the Pattern_roll variable) The behavior produced interesting results, but the high scores in regular mode were better this is why the regular mode is still the default. I should have documented this, and perhaps I will. It has nothing to do with Linux IIRC. The next step would have been to examine the board and decide which tactic to choose dynamically. Of course these days one can train a NN to do a lot better. christos