Making interactive forms like in the B-17 module...?

I’ve attached a scan of one of the forms I’d like to make interactive for my module.

I have the B-17 module and I’ve looked through it, but while I can see the many dozens of info boxes in the main editing module table of contents, they’re invisible when I load the log sheets in the game editor window and I haven’t the slightest idea how I’m supposed to properly align them with my scan.

How’d the original author do this? Is there a tutorial available for making these?

Thank you.

I’m also willing to reproduce that form in HTML if that makes it easier to edit in the module…?

Ok, I’ve searched the archives and haven’t come up with anything that directly addresses what I want to do.

Do I really need to create text label counters for every single box on that chart? Or if I reproduce the chart in HTML is there a faster way to implement its interactivity?

(I realize it’s MDW, so I’m waiting patiently for a response - just keeping everyone updated on my own efforts.)

*********** REPLY SEPARATOR ***********

On 25/05/2009 at 5:11 PM Shad wrote:

Yep. Those B-17 charts are a labour of love.

Nope, converting it to HTML will prevent you being able to what the B-17 designer did.


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

Post generated using Mail2Forum (mail2forum.com)

Well, I’ve got the love and am willing to do the work, but am having really hard time reverse-engineering what was done in the B-17 module.

Can you, or someone else, give me a brief text description of the process needed to create one of those invisible editable counters?

  1. Create a Chart Window and add a tabbed panel.

  2. Add a Map to the Panel

  3. Add a board to the map and add your scanned chart to the board.

[You have probably got this far]

  1. Right-click on the Map Window that was created below the Map in step 2 and add an At-start stack to the map. Give the Stack an appropriate name, then close it. Set the start position at 50,50.

  2. Right-click on the At-start stack and add a Single Piece. Add the appropriate traits (text label, layers etc.). You can leave the Basic Piece image blank, or it is easier to position the field if you add a small white or transparent image the same size as the box on the chart. Save the piece

  3. Open up the At-start stack created in Step 4 and click on ‘Reposition Stack’. Drag the Stack image rectangle from 50,50 to the place you want it to live.

B.


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

Post generated using Mail2Forum (mail2forum.com)

Thanks Brent - sounds easy enough. I’ll have a look when I get home tonight and let you know. :smiley:

Brent,

Had a go at this tonight. Took me about 25 minutes from start to finish but now I’ve got a perfectly aligned & working editable “invisible” counter for the Month_____ dialogue on that chart upthread.

Labor of love indeed!

Thank you for the instructions.

Update:

I rebuilt the entire chart in HTML, then used Fireshot to export a perfect PNG capture of the finished document. Converted to PNG8 and had a full chart “map” at only ~50kb.

Adding editable blanks is easy enough now that everything is perfectly aligned. I need only input the table’s first line of markers and then can duplicate those and only adjust the Y-axis value to bump them down to the next line.

However, duping the at-start stacks is needlessly painful. Rather than just select the entire row of counters in the VASSAL editor tree, I have to copy & paste them via right-clicks one by one, over and over.

Why can’t we select multiple items at once in that window? I’m gonna get arthritis at this rate! :frowning:

It is an RFE already and it has been looked at, but it is not a simple problem, so no-one has got to it yet. There are issues with what to do if you select components of multiple types and only some of them can be pasted to the destination. Or if you select components from multiple levels.

My feeling is that a limited multi-select cut & paste would resolve the majority of problems. My solution would be to only allow multi-selection of the same type of components at the same level in the tree.

B.


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

Post generated using Mail2Forum (mail2forum.com)

Just that minor addition would make certain aspects of module creation SO much quicker. Please consider it, or beat whoever the naysayers are over the head until they submit!

Looks great! Cool implementation. To create all the needed at-start stacks, most people would resort to modifying the buildFile with a script.

rk

Post generated using Mail2Forum (mail2forum.com)

Not a scripter, wish I was.

I just finished the Chinese Replacement Table - ~480 at start stacks, about 3 hours solid mind-numbing work :open_mouth:

Module can be found here, for those interested in taking a look at the chart…

I’m working on the Japanese Replacement Table now, this time I’m doing it through the buildFile.

I set up the map, the month stack, and the entire first row of counters the regular way via the menu, then duped the module and unzipped the dupe to a working dir.

Adding row after identical row is REALLY fast & easy if you edit the buildFile directly.

Here’s what the code for one of the at-start stack cells looks like:

<VASSAL.build.module.map.SetupStack name=“Manchukuo11” owningBoard=“Japanese Replacement Table” useGridLocation=“false” x=“850” y=“236”>
<VASSAL.build.widget.PieceSlot entryName=“Blank” gpid=“955” height=“0” width=“0”>+/null/immob;;V label;10,0;Change Data;14;;0,0,0;b;0;c;0;b;c;$pieceName$ ($label$);Dialog;0;0;TextLabel\ piece;;;blank-replacements-jpn.png;Blank/ \ null;0;0;900</VASSAL.build.widget.PieceSlot>
</VASSAL.build.module.map.SetupStack>

If it looks complex, it’s not. The bold parts are all that need changing. You copy and paste an entire row’s code (11 stacks in this case), then change the name to the new row’s name (keeping the ## id which specifies column), put in the new y coordinate which is identical for all your new counters in that row, and then increment all the gpids one at a time.

Where it took maybe 3~4 minutes and way too many clicks to put in a new row of 11 counters before, I can do it in ~30 seconds and a few keyboard strokes.

Vast improvement.

(note - obviously I share this information for the benefit of non-devs, you dudes are experts already! :wink: )

Got a little carried away with the replacement charts, and added one for each month of the full campaign for either side…

~200 blank counters per chart * 12 months * 3.5 years * 2 sides = ~17,000 counters loaded all at once on module launch

or ~550MB of RAM sucked into java.exe in one go… :open_mouth:

I’ve since come to my senses and hacked it back down to a year’s worth of charts for either side, and a MUCH more manageable memory footprint! :smiley:

Thus spake “Shad”:

That really cries out for a better way of managing tabs.

Also, I don’t find 550MB especially excessive. For tabs you haven’t displayed
yet, no image should be loaded—same for the tokens.


J.


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

Post generated using Mail2Forum (mail2forum.com)

Yeah, but bear in mind that was for a module that had neither counters nor a real map added as of yet. 550MB right off the bat (and a ~2 min load on my Intel CoreDuo T2600 + 2 gig RAM laptop) was not a good starting point!

One map per month for a year, which would then be erased and reused, is more than enough I think.

What it REALLY cries out for, is some sort of VASSAL-native editable table format! :stuck_out_tongue:

native table fomat? Its very bare but that would be the Spreadsheet trait

If it had some of the similar functionality like excel such as to format the grid lines, add pics in cells etc… this would be ideal for what you want

From: Shad messages@forums.vassalengine.org
To: messages@forums.vassalengine.org
Sent: Tuesday, June 2, 2009 7:01:06 AM
Subject: [Module Design]Re: Making interactive forms like in the B-17 module…?

uckelman wrote:

Yeah, but bear in mind that was for a module that had neither counters nor a real map added as of yet. 550MB right off the bat (and a ~2 min load on my Intel CoreDuo T2600 + 2 gig RAM laptop) was not a good starting point!

One map per month for a year, which would then be erased and reused, is more than enough I think.

What it REALLY cries out for, is some sort of VASSAL-native editable table format! :stuck_out_tongue:


Got VASSAL?
Got BoardGameGeek?

Then let’s get it on.
BGG VASSAL Competitor’s Directory – wargamers wanted! (boardgamegeek.com/geeklist/23350)


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake Timothy Mccarron:

I think what’s really called for here is a combination of HTML form elements
and SVG. Someone should create an RFE for this.


J.


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

Post generated using Mail2Forum (mail2forum.com)