Plausibility of creating a crude AI for VSQL

I’m starting in on a new project but I’m not sure if it’s possible. I got the idea to write a crude AI to play the German side in scenario one of Squad Leader(The Guards Counterattack). Not a lot of practical value, but it seems like a good programming exercise. I would put myself at intermediate skill with Python and beginner Java. The obstacle I’m running into is finding a way for the “AI” to interact with the board. Common sense suggests that counters are probably stored as objects, and there’s probably a way to access the counters in play programmatically as VSQL has a button for accessing a list of counters in play. I am not advanced enough in programming to have an idea of how to go about accessing those. VSQL also locks counters to hexes, meaning the board file probably has some useful information, however opening it with a text editor reveals gibberish. Would it be viable to try to access the game from a lower level and have the AI program send commands to VASSAL?

I understand that what I’m proposing has little practical value. This is an exercise in programming rather than an attempt to make something more universally usable.

Thus spake sommerjj:

I’m starting in on a new project but I’m not sure if it’s possible. I
got the idea to write a crude AI to play the German side in scenario one
of Squad Leader(The Guards Counterattack). Not a lot of practical
value, but it seems like a good programming exercise. I would put
myself at intermediate skill with Python and beginner Java. The
obstacle I’m running into is finding a way for the “AI” to interact with
the board. Common sense suggests that counters are probably stored as
objects, and there’s probably a way to access the counters in play
programmatically as VSQL has a button for accessing a list of counters
in play. I am not advanced enough in programming to have an idea of how
to go about accessing those. VSQL also locks counters to hexes, meaning
the board file probably has some useful information, however opening it
with a text editor reveals gibberish. Would it be viable to try to
access the game from a lower level and have the AI program send commands
to VASSAL?

I understand that what I’m proposing has little practical value. This
is an exercise in programming rather than an attempt to make something
more universally usable.

If you really want to do this with VASSAL 3, you need to get the code
and start looking around. VASSAL 4 will have the objects made available
in a much more sensible way, but for now the only way is to dig into
the code.


J.