Standards

Hi guys. I dug up a few things we came close to agreement on, these are important so I thought I would sticky them here for future reference. We can update this top post if we change our minds.

Basic Premise

For PBEM:

  1. User opens Vassal.
  2. Clicks on Play Logfile and a dialog box pops up.
  3. File selector appears with the last used save folder.
  4. He selects a logfile.
  5. The module automatically loads.
  6. The logfile automatically loads.

For Live Play:

  1. User opens Vassal.

  2. Clicks on Play Live (or something similar)

  3. Gets a list of all modules and games in progress.

  4. Double clicks a game.

  5. Module automatically loads, game automatically syncs.

Filename extensions

.vmod for modules
.vlog for log files

Folder Structure

Vassal 3.0.12 lib docs modules savegames game-a game-b

Default Shortcut Key Mappings

Ctrl+ and Ctrl- to zoom in and out.
Ctrl-Z - undo
Shift-Ctrl-Z - redo

Ctrl-S - save
Ctrl-Q - quit

1 Like

The folder structure we have there I’m not happy with myself. I think the game save areas should be more generic and closer to the top level, the reason for this is it can be painful when you’ve got multiple PBEM games and you’re e-mail client is asking for a save directory each time you need to save an attachment.

Having to drill down through a long directory structure to Save a log would get painful, I would prefer just a “savegames” folder or something like that, then the users can decide if they want to create subfolders or just dump all logfiles there. It should remain flexible.

Ben

Was this something we did actually come to agreement on? I seem to recall wanting the structure to be more like

VASSAL
  2.9.9
  3.0.13
  ...
  modules
    mod-a
    mod-b
    mod-c
    ...

so that multiple versions don’t clobber one another.

No final dicision was made as far as I’m aware.

But whatever decision we make, this is the process we want to make as painless as possible for the user:

For PBEM:

  1. User opens Vassal.
  2. Clicks on Play Logfile and a dialog box pops up.
  3. File selector appears with the last used save folder.
  4. He selects a logfile.
  5. The module automatically loads.
  6. The logfile automatically loads.

For Live Play:

  1. User opens Vassal.
  2. Clicks on Play Live (or something similar)
  3. Gets a list of all modules and games in progress.
  4. Double clicks a game.
  5. Module automatically loads, game automatically syncs.

I’m not sure why we need a seperate folder for each module. Would it not be better to just have a modules folder which looks like this?

VASL.vmod
Tunisia v1.3.vmod
C&C Ancients.vmod

This way it’s obvious to users where they all are and there is no need to create folders or drill down through a tree to find the module they want. Having seperate folder just seems convoluted to me.

Wont having the different modules located in one (same) dir/location cause some users confusion when it comes to module extensions?

Module extensions will only have one standard, and that is vmod. If Vassal cannot find the correct module, it should display a File Selection dialog (vmod xxx not found) so the user can browse for it instead.

I think having seperate folders would mean users need to create folders, and that is asking too much of them.

Brent you will need to sign up to the forum or your replies will no get there.

Cheers.

Post generated using Mail2Forum (mail2forum.com)

Brent mentioned logfiles needing different folders. I’m in two minds here, I think the save directory for savegames should really remain flexible. I would lean toward the default being a single folder, but more advanced users can still create individual folders if they so desire.

I’ve always got 4 PBEM games going at any one time and find that needing to store more than 3-4 logs on the HD per game is unecessary because all of the e-mails are archived anyway. Having said that, I do have individual folders myself.

I’ve updated the original post with a section for default key mappings; So far only Cntrl+ and Cntrl- have been added for zoom. If anyone has ideas for other key mappings which should be considered reserved for basic Vassal functions, let me know.

cheers!

Thus spake “bsmith”:

Ctrl-Z - undo
Shift-Ctrl-Z - redo

Ctrl-S - save
Ctrl-Q - quit

BTW, Control is usually abreviated as “Ctrl”, not “Cntrl”.

–
J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

command line arguments

if started with a vlog-file as commandline argument,
assume “Play Logfile”, and skip the file selector, used the one given as argument.

If started with a vmod-file as commandline argument,
assume “Live Play”, and let user chose between “new game” or games in progress that match the given module.

If I may add, I tink adding the standard mouse interactions would be also good

  • Mouse wheel scroll (scroll canvas up / down)
  • CTRL + mouse wheel up/downstrong text** (scroll canvas left/right)
  • ALT + mouse wheel up/downstrong text** (zoom canvas in/out)

I would not use the mouse wheel by itself for zoom because it’s very easy to scroll and people will be zooming many times without wanting it. In addition, the wheel scroll is already used on browsers to scroll up/down and everyone uses that these days.

What uses those? I’d expect mouse wheel scrolling to zoom and dragging to pan anything that displays a map.

to pan I would probably use space + drag-move

browsers already use scroll to scroll the page.
Most apps already use the ones I mentioned above to zoon and scroll

Probably better SHIFT+Wheel for left/right and CTRL+Wheel for Zoom (Plain Wheel for up/down yes I agree). It’s what VASSAL client already uses and I’m pretty sure various other things as well.

Of course which-wheel-thing-maps-to-which-wheel-function is an easy target for User Preferences if someone has had their brain ruined by some other app :slight_smile:

1 Like