VASSAL Automation

I would recommend searching your computer for all files ending in .vmod. Your browser isn’t making its own decisions about where to save things, so checking its settings for where it saves downloaded files is another option.

1 Like

Hold the cursor over the module name in the Vassal Module Manager window, you should see a hover text appear with the pathname of the where the module file resides.

Ok. I found where the module is at, but how do I access the buildfile from there?

Scroll up to my post here, or the other Joel’s post here.

1 Like

Ok. Finally found it. Thanks!!!

Ok. I was following the directions for the Terrain Recording, and I have encountered an error. I am up to the step where it says “Type terrain.TerrainDefinitions into the Input box, click OK and save and re-load your module.” I did everything up to that point (correctly, I think). I then got an error message that says “Custom Class Error. There was an error loading or instantiating the class terrain.TerrainDefinitions, which is provided by this module.” Any idea what I could have done wrong to provoke this error?




Check the module in a program that can read ZIP archives. Is your class file in the module? (I suspect it’s not. You need to put it there manually.)

Hello Brent,
I’m not able to use custom Java code, but a few year ago I implemented automatic CRT resolution for some simple games using only Vassal available traits and it works. Unfortunately, a lot of trigger traits and complex boolean expressions are needed and this surely is a great problem. I didn’t try to record terrain types because if you have a large map it will ends in a real nightmare. Waiting for the V4!
Be well.
Panther_2010

:grinning:

2 Likes

I am not entirely sure what the class file is, but I do have the terrain file in the game folder (see my screenshots above), and in the terrain folder are many files with the .class designation.

How were you able to do that without using Java code?

Can you please click on the ‘Show Details’ tag on the error dialog and cut and paste here the error report.

If you are interested, I can send to you the CRT Prototype. Just let me know.
Be well.

Panther_2010

Vassal is capable of significant automation without resorting to custom Java classes. I’ve pretty much been able to automate everything I’ve ever needed with just Java Math, which can be accessed directly by Vassal. The only time I needed to create a custom class was to enhance the LoS thread in 3.4.x so it would report range and blocking terrain, but that class was broken by 3.6.x. I rebuilt my PC about a year ago and haven’t reinstalled my Java IDE nor do I intend to for the time being. So I guess that LoS class is dead. It just seems late in the game to go down the Vassal 3 rabbit-hole again considering that Vassal 4 seems to be gaining momentum.

As for existing features I’ve completely automated:

  • Determination of area/hex control.
  • Income in games based on area control.
  • Card-based events.
  • Ops/CP/MP expenditures.
  • Fully automated purchases.
  • Unit strength calculation by area/hex.
  • Rules enforcement.
  • Combat.

I did fully automate movement, but the game doesn’t use a TEC, so it was fairly simple endeavor. If your hexes only have a MP cost, it would be feasible, even without custom Java, but once you start having hexside costs (walls, elevations) and directional features (rivers, roads), it becomes a massive undertaking.

Also, as a general word of caution - it probably only took me about 10 hours to get area/hex control working but I’ve spent 100+ hours troubleshooting the bugs for outlier situations. I’m not sure if I’d do it all over again.

3 Likes

It won’t work if it’s not put into the module. You have to copy the class files into the module in order to use them.

No I made a custom class. My LoS thread used to automatically calculate range and blocking terrain like below. It worked up to 3.5.8 but no longer works in 3.6.6. I just don’t have the time/energy right now to find out why…

Yes, I would love to see the CRT prototype. Please send it my way. Thanks so much!!!

  1. That error message is text. You can copy and paste it here. It’s easier to read that way, when it’s not a screenshot.

  2. That error message indicates the class file isn’t being found. Have you copied the class file into the module? When you open the module in a ZIP archiving program, do you see a directory named terrain with a file named TerrainDefinitions.class in it? If not, that’s why you’re getting this error.

Wow, looks like you have automated nearly everything. I am not familiar with Java math. How is that different then the normal Java coding? I am not even looking at automating the movement, I just want the hexes which a unit can move into highlighted. I would still manually move the units. But, automating combat is really the main thing I am looking at. It should help cut down the time it takes to get through each turn.