A couple of problems with PBEM

First, the programme threw up at startup with

java.io.IOException: Unable to overwrite /Users/herwin/VASSAL/Preferences
Data stored in /Users/herwin/VASSAL/temp2.zip
at VASSAL.tools.ArchiveWriter.write(ArchiveWriter.java:475)
at VASSAL.tools.ArchiveWriter.write(ArchiveWriter.java:266)
at VASSAL.preferences.PrefsEditor.write(PrefsEditor.java:235)
at VASSAL.preferences.Prefs.write(Prefs.java:206)
at VASSAL.preferences.Prefs.getGlobalPrefs(Prefs.java:232)
at VASSAL.i18n.Resources.(Resources.java:90)
at VASSAL.launch.ModuleManagerWindow.(ModuleManagerWindow.java:198)
at VASSAL.launch.ModuleManagerWindow.(ModuleManagerWindow.java:168)
at VASSAL.launch.ModuleManager.launch(ModuleManager.java:386)
at VASSAL.launch.ModuleManager$2.run(ModuleManager.java:281)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Second, the replay function only replays the first six moves of:
Peter O’Kane> AF2 moves K32.09 → K32.09 *

  • Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S3 created in K21.20
  • Peter O’Kane> S2T moves K21.20 → offboard *
  • Peter O’Kane> S3 created in K31.01
  • Peter O’Kane> 417 moves K54.03 → K31.14 *
  • Peter O’Kane> 417 moves K31.14 → K31.13 *
  • Peter O’Kane> 4 moves K31.13 → K31.16 *
  • Peter O’Kane> 319 moves K31.15 → K31.16 *
  • Peter O’Kane> Ordzonze moves K27.09 → K22.08 *
  • Peter O’Kane> 157 (II) moves K25.09 → K25.10 *
  • Peter O’Kane> 157 (II) moves K25.10 → K24.09 *
  • Peter O’Kane> 19 moves K26.10 → K25.10 *
  • Peter O’Kane> 8 Gd moves K28.11 → K27.11 *
  • Peter O’Kane> 416 moves K28.12 → K28.11 *
  • Peter O’Kane> 223 moves K28.13 → K28.12 *
  • Peter O’Kane> 256 moves K29.14 → K28.13 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> AF2 moves K31.13 → K35.14 *
  • Peter O’Kane> Pax moves K20.01 → K20.05 *
  • Peter O’Kane> S2T moves offboard → K20.06 *
  • Peter O’Kane> S2T moves K20.06 → K21.06 *
  • Peter O’Kane> S2T moves K21.06 → K20.05 *
  • Peter O’Kane> S2T moves K31.01 → K32.09 *
  • Peter O’Kane> S2T moves K32.09 → K32.08 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> Pax moves K20.05 → K20.05 *
  • Peter O’Kane> Disorganised created in K22.10

My configuration is a MacBook Pro running Mac OS X 10.6.2 and the latest Java. The second problem also occurs when I run under Windows XP in Bootcamp:
Model Name: MacBook Pro
Model Identifier: MacBookPro2,2
Processor Name: Intel Core 2 Duo
Processor Speed: 2.33 GHz
Number Of Processors: 1
Total Number Of Cores: 2
L2 Cache: 4 MB
Memory: 2 GB
Bus Speed: 667 MHz
Boot ROM Version: MBP22.00A5.B07
SMC Version (system): 1.12f5
Serial Number (system): W86430PMW0L
Hardware UUID: 00000000-0000-1000-8000-0017F2C4A132
Sudden Motion Sensor:
State: Enabled

Thus spake “herwin”:

This could be due to some process still having an open file handle to
that file, or could be due to bad file permissions.

In order to troubleshoot your second problem, we need to have your
log file.


J.


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

Post generated using Mail2Forum (mail2forum.com)

How do I ship it?

Thus spake “herwin”:

Zip it and post it here.


J.


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

Post generated using Mail2Forum (mail2forum.com)

OK

Thus spake “herwin”:

I loaded the log you posted and had no problem stepping though all the moves
(somewhat beyond even the ones you posted above).

Please describe exactly how you’re trying to step through the moves in
the log.


J.


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

Post generated using Mail2Forum (mail2forum.com)

I was clicking on ‘step forward through logfile’. My Java configuration is

java -version
java version “1.6.0_17”
Java™ SE Runtime Environment (build 1.6.0_17-b04-248-10M3025)
Java HotSpot™ 64-Bit Server VM (build 14.3-b01-101, mixed mode)

I tried stepping further, assuming that some moves were not being displayed, and got this (note I undid and redid some early moves):

  • OCS - Case Blue & GBII version 2.5
  • Loading CaseBlue.vsav …
  • Loaded CaseBlue.vsav
  • Peter O’Kane> AF2 moves K32.09 → K32.09 *
  • Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S3 created in K21.20
  • Peter O’Kane> S2T moves K21.20 → offboard *
  • Peter O’Kane> S3 created in K31.01
  • UNDO: * Peter O’Kane> S3 created in K31.01
  • UNDO: * Peter O’Kane> S2T moves K21.20 → offboard *
  • UNDO: * Peter O’Kane> S3 created in K21.20
  • UNDO: * Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • UNDO: * Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • UNDO: * Peter O’Kane> AF2 moves K32.09 → K32.09 *
  • Peter O’Kane> AF2 moves K32.09 → K32.09 *
  • Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S3 created in K21.20
  • Peter O’Kane> S2T moves K21.20 → offboard *
  • Peter O’Kane> S3 created in K31.01
  • Peter O’Kane> 417 moves K54.03 → K31.14 *
  • Peter O’Kane> 417 moves K31.14 → K31.13 *
  • Peter O’Kane> 4 moves K31.13 → K31.16 *
  • Peter O’Kane> 319 moves K31.15 → K31.16 *
  • Peter O’Kane> Ordzonze moves K27.09 → K22.08 *
  • Peter O’Kane> 157 (II) moves K25.09 → K25.10 *
  • Peter O’Kane> 157 (II) moves K25.10 → K24.09 *
  • Peter O’Kane> 19 moves K26.10 → K25.10 *
  • Peter O’Kane> 8 Gd moves K28.11 → K27.11 *
  • Peter O’Kane> 416 moves K28.12 → K28.11 *
  • Peter O’Kane> 223 moves K28.13 → K28.12 *
  • Peter O’Kane> 256 moves K29.14 → K28.13 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> EQ moves K31.13 → K34.14 *
  • Peter O’Kane> AF2 moves K31.13 → K35.14 *
  • Peter O’Kane> Pax moves K20.01 → K20.05 *
  • Peter O’Kane> S2T moves offboard → K20.06 *
  • Peter O’Kane> S2T moves K20.06 → K21.06 *
  • Peter O’Kane> S2T moves K21.06 → K20.05 *
  • Peter O’Kane> S2T moves K31.01 → K32.09 *
  • Peter O’Kane> S2T moves K32.09 → K32.08 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> S2T, Pax, Truck 1, 9, Strategic Mode, Pax, Pax, S1, S4, I.15, Po.2, AF1 moves K20.05 → K20.05 *
  • Peter O’Kane> Pax moves K20.05 → K20.05 *
  • Peter O’Kane> Disorganised created in K22.10
  • Peter O’Kane> Ind-3 moves K23.09 → K23.10 *
  • Peter O’Kane> 416 moves K54.03 → K20.05 *
  • Peter O’Kane> 319 moves K54.03 → K50.02 *
  • Peter O’Kane> Mak-ala moves K54.03 → K47.05 *
  • Peter O’Kane> Strategic Mode created in K47.05
  • Peter O’Kane> Strategic Mode created in K50.02
  • Peter O’Kane> Li.2 moves K58.03 → K59.04 *
  • Peter O’Kane> Li.2 moves K59.04 → K58.03 *
  • Peter O’Kane> 416 moves K20.05 → K20.06 *
  • Peter O’Kane> I.16 moves K32.09 → K32.08 *
  • Peter O’Kane> I.16 moves K32.08 → K32.08 *
  • Peter O’Kane> 317 moves K32.08 → K32.08 *
    *** 2d6 = 1,2 *** <Peter O’Kane>

Thus spake “herwin”:

I’m confused—I thought you said that you had stepped all the way to the
end of the log, but only got the first six moves. What you posted this
time is all of the moves I saw, which is way more than the first six.

Could you try again with stating what exactly the problem is?


J.


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

Post generated using Mail2Forum (mail2forum.com)

The problem actually seems to be that for some of my clicks on the step forward button, nothing shows up on the display, and I get the strong impression that nothing happened. There is an interval after the sixth or so move displayed when nothing is displayed in response to clicks for quite some time, and I assumed that nothing was being displayed or would be displayed from that point on in the replay. Sorry for reporting the wrong bug, but most programmes reliably provide feedback to user commands. If you read any GUI design text, that’s a basic rule. Otherwise you get loud user complaints about it–like this one.

This is actually caused by the problem where one single ‘user action’ can generate multiple commands that require multiple ‘step’ or ‘undo’ clicks. This is one of the issues I have been working on resolving for 3.2.

B.


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

Post generated using Mail2Forum (mail2forum.com)

OK, I see. Some sort of user feedback will keep us happy.

OK, I see. Some sort of user feedback will keep us happy.

I see this quite a bit when your opponent changes the stacking in a hex. In this case if you look close at the highlighted stack you can see units moving in it.

Jim

Another improvement here would be to center the map on the location in question, rather than move the map so the location appearing ‘somewhere’ on the map.

Thus spake “jimcot”:

There’s already an option for doing that, with the restriction that anything
which is too close to an edge cannot be centered. Once we’ve switched to
JOGL for display, it will be possible to center any location on any map.


J.


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

Post generated using Mail2Forum (mail2forum.com)

The plan is to fix it properly in 3.2, so that if you hit a button or command, it generates one command only that replays or undos as one single command.

Of course, it is still up to the module designer to actually make each set of actions actually generate a report.

B.


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

Post generated using Mail2Forum (mail2forum.com)

In version 3.1.13, running the Case Blue and GBII module (v2.5) it doesn’t center the location on the screen. Instead, it moves the screen so the location is visible, usually on one edge. At least that’s what I’m seeing.

If every move is centred, then if you step through a log file quickly, the map madly flicks all over the place and it is impossible to get an idea of what is going on.

The current scheme means that if a bunch of moves happen in the same section of map, then then the map does NOT move and you get to see the units moving around the current view in a coherent fashion.

Sometimes you want exact map centering, but just as often, you do not. How do we neatly handle both requirements?

B.


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

Post generated using Mail2Forum (mail2forum.com)

I have noticed that too.

Maybe if the location of movement if off-screen then center it instead of scrolling just to have it in the visible area on the edge of screen.

If the location fits on current screen then don’t scroll, except if the boundaries of the piece might cross the visible area (part of piece hidden), then adjust so entire piece will fit (but don’t scroll it to center).

This is perhaps one area where it may be impossible to come up with
the right answer, since what one wants is likely to be different
depending on the context.

On Jan 14, 2010, at 2:25 PM, morvael wrote:

Nevertheless, this sounds like it might be a good heuristic. It
means that if things really are spatially close by, it will minimize
the number of times the screen scrolls. But I would keep the
behavior simple and consistent. So, I would suggest doing only one
kind of screen readjustment (centering) anytime any part of the piece
is off-screen. *

(In the worst case, imagine moving down a line of units, moving them
one-by-one. Without centering, you would eventually shift the view
slightly each time the next item comes up. With centering, the
movement would be larger, but less frequent)

Now, if the view actually scrolls rather than jumps, this will be
nicer. I can’t recall what actually happens in Vassal now. Maybe
that would have to wait for JOGL?

  • Is there potentially a problem if someone is moving a large terrain
    “piece” that is larger than the viewport?

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

Post generated using Mail2Forum (mail2forum.com)