Design of a module for two players and one referee


Is it possible to design a module for two players (or two teams) whose actions remain hidden from them, but not from a referee? If so, could the referee see the moves of both on a single board to resolve possible sightings or clashes of forces? Example: an aircraft carrier operation.

Thank you very much.

Let me add my voice to this question. A group of us were considering playing Flat Top and wanted to do it with players plus a referee. The current Flat Top module does not seem to truly support this option, unless I am missing something.

It think it IS possible. You’d use probably the “Invisible” trait if you didn’t want the sides to see each others’ moves at all (or you could use a Mask trait if you wanted both sides to see the position of generic units w/o knowing which was which).

Your “Definition of Player” sides would include a “Referee” or “Moderator” player, and you’d give that side access to both sides’ forces (e.g. their Invisible traits, Mask traits, and any other stuff protected by side like private “Hands”).

And so each player/side would be able to log in and make moves, but wouldn’t be able to see any of the other side’s stuff. And then the moderator could log in and the map would show them both sides’ stuff, and they could perhaps place markers (visible to both sides) on the board where appropriate, or unmask the invisible/masked pieces as appropriate. Etc.

I imagine a different version of the Flat Top module would have to be made to support this, for example.



Some of the documentation for the older versions of Flat Top imply that the hidden movement option was supported. But your comments encouraged me enough to edit the current module to look around.

  1. There is a ‘Referee’ player setup in the module but it does not show during the startup of module or using the ‘Retire’ button (which lets you change sides).
  2. But the ‘invisible’ attribute simply substitutes a ‘washed-out’ image for a normal image of a counter.

I guess I need to decide if I want to learn enough to make/modify Vassal modules. I am guessing that there is a community of ‘modders’ and I need to decide if I want to fall into that rabbit hole.


Thank you very much for the reply.

In our group we have designed a game to represent the aircraft carrier battles during the IIGM in the Pacific, in the “Flat Top” line. We expect each team to receive a Vassal module with the game, perform their actions on a map, and hide them. It then sends the module to the other team, which does the same thing. Next, the second team sends the module to the referee, who checks if the searches have yielded any results, and informs the appropriate team accordingly. To make the referee’s job easier, he should somehow be able to check the actions of both teams on a single map.

Is it possible to do something like this?

Thanks again.

This is an indication that whoever created the scenarios was occupying the Referee player side at the moment they were saved, so that side is locked by the scenario creator’s password and unavailable for selection.

That’s normal–it gives you (the person who made it invisible) an indicator of its status to differentiate it from visible units. To other players however, it will in fact be completely invisible.


You seem knowledgeable on these items. With your comment about the Referee being the scenario creator as the impetus, I launched Flat Top, selected New Game and a miracle happened . . . I could select Referee. Up until now I have always tested by selecting a previously created scenario. But at that point I was in a position of having to create a scenario, not something I am ready to undertake. But maybe there is a way to ‘copy’ an existing scenario as a new one, setting myself up as the Referee.

On the existing ‘invisible’ attribute, it does substitute the washed-out image as I mentioned before. But regardless of which side I select (Japan or USA) the same image is shown even when I switch to the other side. I understand the motive for the washed-out image but it does not actually confer invisibility against the opponent.

This is expected. The “New Game” option is not loading any predefined setup file at all, just a blank map, so that’s why the Referee player side is available to choose. There isn’t a way to copy one of the existing scenario files and free up the Referee player side–you either have to reconstruct scenarios from scratch or get in touch with the module designer to re-save these setups without his password locking the Referee side.

The Invisible trait in this module is configured for “Any player”, so the only way to truly test invisibility from an opponent’s perspective is to be occupying another player side with a different module password (e.g., make a piece invisible, save the game, close the game, change your module password, reopen your saved game). Simply switching sides while leaving your password unchanged is not sufficient. If this trait were changed to “Any side” or “Any of the specified sides”, you could test it by merely switching sides (but you can’t make this change and see it reflected in the predefined setups without doing a Refresh Counters on them after loading one).

You have been most helpful.

Once again I was ‘testing’ things without understanding the bigger picture. I agreed (within the gaming group) to test out playing Flat Top via Vassal, assuming that it supported the desired hidden movement. So I have been testing the module all by myself. I have already scheduled a testing session with another member of the group at 1pm today so I should see the ‘invisible’ attribute strut it’s stuff during that session.

Conceptually it does not seem to be hard to have an ‘Umpire’ player to get us to the desired functionality but it also seems like this kind of functionality will have been developed in other modules.

Thanks for your prompt responses.

The role of the module password and its interplay with sides and some of the trait configurations is genuinely tricky to get your head around at first. In all the years on Consimworld, for example, player password issues run a close second to installation woes for troubleshooting posts. It’s possible that this module is very close to what’s desired and just needs some fine-tuning to meet requirements.

FYI - Flat Top testing today did prove that the invisibility attribute was enforced such that the opponent could NOT see the counter (and the movement trails). There are other issues but the core functionality is there to allow for ‘umpired’ games. We did our testing with two players and we still need to check everything out using a US player, Japanese Player and the observer (umpire).

Thanks for your input.

You will founder here, at least if using the included predefined setups–because the Referee player side is locked and unavailable in all of them. It’s true that the designer included a strangely-named player side called <observer>, but I think that was from confusion about the nature of player sides and true observer status. You’ll find that taking that side won’t help with anything, because none of the traits relevant to a refereed game (Restricted Access, Invisible, et al) are configured to use it.