What is Vassal and its core function?

You won’t find anybody advocating for the way things are now. It’s an odd, idiosyncratic contraption. I reluctantly concluded that all of this needed to be junked a decade ago.

Here’s what I wrote on the topic in 2020:

All of this applies to fixing bugs as well. You saw exactly what I’m talking about here play out with the grid numbering problem.

More, from 2020:

We’ve mostly arrived there now, though when I wrote this I was expecting 3.5 to be the destination instead of 3.6.

Responding specifically to your request for a spreadsheet component in V3:

  • I don’t know of any Swing-based spreadsheet components. Building the GUI for one from scratch starting from a JTable would be a huge job.
  • You’d need an expression evaluator, and the most obvious candidate for that is Beanshell. Writing an expression evaluator from scratch is likewise a huge job.
  • You’d need a way to refer to properties, and that couldn’t differ much from the way they are referred to now.

What you’re asking for would be a major time commitment, and developer time is a finite and precious resource. I try to spend my own development time on things which will push back the day when we can no longer keep V3 working or bring forward the day that V4 will be usable. Adding a spreadsheet feature to V3 won’t do either of those things. I won’t work on it.

Maybe you can convince someone else to try; I’d argue that’s throwing good time after bad. If you want C-style arithmetical expressions and natural syntax for direct property access, that can be had essentially for free with JavaScript as the scripting language, which is where we’re headed with V4. That, and a human-readable file format, is what will cut through the mess you’ve described.

6 Likes