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

rami rs55862 at yahoo.com
Tue Jul 19 04:21:42 MST 2011

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. 

- Is there just one script attached to an action or can there be many?
Is it possible to change/swap the script entry on runtime?  Each script
should also have an undo equivalent to be able to undo moves if
necessary (Command design patter should be useful).

- 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.

- 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? How does a module add
functionality to the model? Or is the model just  a common data
repository ? If the Model is expandable, how is it done? Does it, for
example, wrap around an "engine" that provides a common interface for
all game types? There could be a base engine that would be inherited by
card game engine, board game engine etc. that could in turn be expanded
by the module developer. The module would the pass the proper engine
object to the Model upon initialization.. 

- 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. 

Sorry if this was off topic or just plain silly.

Read this topic online here:

More information about the messages mailing list