Game Development Reference
In-Depth Information
Overhauled main menu
Observing AI in demo state
Visual AI Debugging
After watching AI behavior in demo mode for a while, I was terrified. When playing game
normally, you usually see tanks in “fighting” state, which works pretty well, but when tanks
go roaming, it's a complete disaster. They get stuck easily, they don't go too far from the
original location, they wait too much.
Some things could be improved just by changing
wait_time
,
turn_time
and
drive_time
to different values, but we certainly have to do bigger changes than that.
On the other hand, “observe AI in action, tweak, repeat” cycle proved to be very effective,
I will definitely use this technique in all my future games.
To make visual debugging easier, build yourself some tooling. One way to do it is to have
global
$debug
variable which you can toggle by pressing some button:
class
PlayState
<
GameState
# ...
def
button_down
(
id
)
# ...
if
id
==
Gosu
::
KbF1