[messages] [Developers] Re: VASSAL 4 model description

Joel Uckelman uckelman at nomic.net
Tue Jul 19 06:22:11 MST 2011

Thus spake rami:
> After reading the above the following things came into my mind. They may
> be off-topic or currently irrelevant, but I'll just list them here.
> Ignore them at will. ;) 
> Please also note that I do not know inner workings of the current VASSAL
> engine, so these points may have been answered by earlier design.
> - Actions with scripts. A good idea, but I think there can be two kinds
> of Actions / scripts. The ones that are launched via the UI by the user
> (like context menu actions) and the ones that react to the model change
> without the aid of the user (scripts attached to the model by the
> current module?). These two kinds of actions may have different places
> in MVC. 

The latter kind of script---the kind not directly triggered by the user---
are either attached to property change listeners or called from other
> - Is there just one script attached to an action or can there be many?

I was thinking "one", but I don't have a compelling reason for that.

> Is it possible to change/swap the script entry on runtime?

It should be, yes.

> Each script
> should also have an undo equivalent to be able to undo moves if
> necessary (Command design patter should be useful).

Yes. Would be neat if that could be generated automatically.
> - The actual module design affects a great deal of the core Model
> design. How the modules are added to the system? As plug-ins? If as
> plugins then each plugin could provide its own additional menus etc.
> However,
> - Currently the available modules vary from card games to dice games to
> strategy games or even RPGs(?). That is a wide variety of games. All
> having different types of data and core functionalities. How does the
> Model take care of all of this variance? 

Every game object in a physical game is logically just a bundle of
properties. The model stores those. The functionality comes from the
scripts and Actions.

> - Animation is one of my personal PITA. Should the game be able to show
> actions in animated manner (including the ability to see what the other
> user is pointing at the moment etc.)). If animation is included then it
> probably will affect the model in some way. 

I don't see how this would affect the Model. Things like animations and
the position of the cursor are in the domain of the GUI View. (I would
very much like to make it possible to see the other player's cursor,
> Sorry if this was off topic or just plain silly.

These are all good and useful questions.


More information about the messages mailing list