-
Notifications
You must be signed in to change notification settings - Fork 29
Fun with counters: VASL Prototypes
This is a first effort to create a page that usefully describes VASL prototypes used in VASL counters.
Initially, I have thrown out a bare bones structure for the page and linked a number of relevant documents. Feel free to edit the structure and add thoughts, ideas, documents that you have.
Doug
Section 1 The Purpose and Use of Prototypes in counter making
Section 2 Current VASL Prototypes
Detailed description of existing prototypes
Section 3 Hierarchy of Prototypes
Description of how various prototypes are linked together to form counters
Section 4 Problems and Issues
Edited by Doug Rimmer, starting May 30, 2018 to propose resolution of these items and those listed in Tom Repetti's "Prototype issues and actions required" document from Section 6.
The following inconsistencies were identified by Doug Rimmer when preparing his VASL Prototypes document. These are not necessarily errors and may be valid to enable required distinctions between counters (especially from one nationality to another). They may be a useful starting point for creating a deeper understanding of the current structure and linkage of VASL prototypes.
-
Why is prototype DBUnit inherited by geINF and ruINF? It is not present in any other xxINF for any other nationality.
-
Why is prototype DBUnit inherited by geCRW and ruCRW? It is not present in any other xxCRW for any other nationality.
-
Why is prototype DBUnit inherited by geLDR and ruLDR? It is not present in any other xxLDR for any other nationality.
-
Why is prototype DBUnit inherited by geLDR1 and ruLDR1? It is not present in any other xxLDR1 for any other nationality.
-
Why is prototype DBUnit inherited by geCTtur, geOTtur, geOTturF, ruCTtur, and ruOTtur ? It is not present in any other xxCTtur or xxOTtur for any other nationality.
Response: DBUnit is needed to support Double Blind functionality which is in development mode and thus not applied to all nationalities. Leave all DBUnit prototypes in place.
Why does prototype CRWmark have the trait "Layer – mofan"? INFmark and LDRmark have "Layer – FAN". Response: In all three files the trait is exactly the same but in CRWmark it is not named. Add name FAN to the trait in CRWmark.
Why does prototype LDRmark have the trait "Report Action (Ctrl V)" which is SQ/HS? LDRmark1 has "Report Action (Ctrl V, Ctrl E, Ctrl Q)". Response: As per TR3 below, it appears that LDRmark is unused and can be deleted so this question is resolved. No action required.
Why does prototype geOTturF exist? It is identical to geOTtur. Response: Only one counter uses this prototype according to the Buildfile, "37 FlaK/Pz IV [fire]". Could not find in Editor. No action required.
Why does prototype Unit58v not report Wreck in chatter when CTRL-F applied? It is missing the Report Action trait required. Prototype Unit58vw does contain this trait. Response: This relates to TR18. Unit58v is not actually missing the Report Action trait. CTRL-F (wreck) is part of the Report Action trait at the top of the trait list for Unit58v along with CTRL-X and CTRL-Z. In prototype Unit58vw, the wreck trait is a separate Report Action trait. Making this consistent would be a lot of work for little gain. Recommend no action be taken on this or TR18.
Why does prototype Unit58c not contain CTRL-F? Response: Unit58c is not actually missing the Report Action trait. CTRL-F (wreck) is part of the Report Action trait at the top of the trait list for Unit58c along with CTRL-X and CTRL-Z. No action required.
Why does prototype amCRW have the trait "Trigger Action - +1 brk ML vs IT?" Response: This applies to Allied Minor and should be deleted from the amCRW prototype.
Items from Prototype issues and actions required (while many of these require no action, there does not seem to be record of that decision, so it seemed useful to include each of the issues here):
TR1: Remove the Basic Piece trait from all prototypes: -na-LDR, -na-LDR1, ssGES, geGES, jaHRO, brLDRp1, brLDRp, brLDRo, brLDRo1. Response: Agree this should be done.
TR2: Create -na- types that are greyed out because they don't exist yet? Ex: will Hakaa Palle use Finnish vehicles? Response: Overtaken by events. No action required
TR3: Are -na-LDR prototypes used? Do we use LDRmark or LDRmark1 or both? Response: According to Tom's document, the only counters that use the -na-LDR prototypes are the blank 1/2 counters in the middle top of the 9 counters under the ? Tab of each nationality. Leaders use LDR1. He recommends that we should remove -na-LDR and LDRmark prototypes; then remove the "1" from the -na-LDR1 and LDRmark1 prototypes.
TR4: Motion should be included in the Unit58v prototype. Response: It would need to be included in Unit58vw as well. At present, Motion is included in the layer of prototypes that utilize the Unit58v and Unit58vw prototypes. It would need to be taken out of each of them. Propose no action at this time; a lot of work for little gain.
TR5: Hindrance is a good candidate for splitting Unit58v into Hindrance Types (AFVs) vs Non Hindrance Types (Trucks and...) Response: At present, a Hindrance trait is included in the layer of prototypes that utilize the Unit58v and Unit58vw prototypes. This layer already has separate prototypes for vehicle types which provide a hindrance and those that don't. Propose no action at this time; a lot of work for little gain.
TR6: What is Hindrance = true used for? Response: LOS. No action required.
TR7: What is Turreted = yes used for? Response: It tells VASL to put down a turret counter. No action required.
TR8: What is Location used for? Response: The Marker=Location trait is used to tell VASL to leave the piece alone when moving stacks. No action required.
TR9: What uses -na-OTntCAR? Response: Carriers, which are always CE. No action required.
TR10: Is it necessary to have nationality-specific wrecks -na-WRK? Response:Nothing to suggest that it is necessary, however no evident problem exists. Recommend no action required.
TR11: What command step-reduces IJA MMC? Response: Ctrl-S. No action required.
TR12: Is jaSQ/jaHS used? Shouldn't they both be just jaMMC, which is normal INFmark but lets ctrl-F step reduce? Response: Yes, JA squads use jaSQ and jaHS use jaHS. Recommend no action required.
TR13: What do heroes use? What uses Hero and HROmark? Response: Heroes = prototype wound1, unit, and HROmark. Nobody uses the prototype Hero. Recommend deleting prototype Hero.
TR14: We have Wound1; is there just a "wound"? And how does it get used? Response: no "wound" prototype. All Leaders and Heroes have Wound1 prototypes. No action required.
TR15: What uses repV? Response: repV is used to report on ctrl-V for weapons that can be dm'd. No action required.
TR16: what uses Trail? Response: Other > Map > Control has four 1/2" colored (red, yellow, blue, green) counters. When moved, they leave a semi-transparent colored circle in the hex just exited. No action required.
TR17: Why is Sniper a Location? Response: See TR8. Sniper counters are not moved as part of a stack.
TR18: What is Unit58vw used for? Response: some prototypes are based on it. ruOTntCAR, brCTtur, brOTtur, brCTnt, brCTntAVRE, brOTnt, brOTntLVT, brOTntCAR, brTRtur, brTR, etc. but not all nationalities have those prototypes, it seems? Not sure why axCTnt (which uses Unit58vw) should be different than amCTnt (which uses Unit58v). Recommend that this be treated as unresolved and be created as an issue. Update Jan 2002: the only difference between Unit58v and Unit58vw is the placement of the Wreck trait (see above). It would be possible to replace one with the other.
TR19: Is it necessary to allow Wrecks (Unit58w) to Rotate? Response: It doesn't seem like they do… Wrecks can only Show Info (ctrl-I), mark Moved (ctrl-M), Burn (ctrl-B), label (ctrl-L), clone (ctrl-K) and delete (ctrl-D). No action required.
TR20-22: Do not exist.
TR23: Note that when you are a boxed nationality (Hungarians with light blue outer box and green axis minor inner box), you use the outer box nationality prototypes. Response: No action required.
TR24: Need a way to ref other counters (and have them show in the counter tray) instead of having to duplicate the counter itself. Cuz if you update it in one place you might not catch all the others where its dupes are. Response: Requires further action. Recommend that this be created as an issue.
TR25: Could we find a way to put prototypes in folders? Response: Requires further action. Recommend that this be created as an issue.
TR26: Do not exist.
TR27: change default labeling of yellow trail (other > map > control) to "yellow" vice "nml". Response: Requires further action. Recommend that this be created as an issue.
The following issues identified in Tom Repetti's document require further action: TR1, TR3, TR13, TR17, TR18, TR24, TR25, TR27.
Section 5 The Way Forward
How best to keep prototype documentation current?
How to manage future changes to prototypes, both adding new ones and changing existing ones?
What opportunities exist to improve the existing prototype structure?
Who is using the prototypes and can we make them easier/simpler to use?
Section 6 Reference material
This section should disappear as the information in the documents below gets integrated into the above sections.
VASL Prototypes: an inheritance tree view by Doug Rimmer (2018). This .pdf provides a view of all the prototypes contained in the VASL Game Piece Prototype Definitions folder visible when you choose Edit Module in VASSAL (using VASL6.4.1). It shows the traits contained within each prototype, including other prototypes inherited by the prototype being viewed.
VASL counter traits and prototypes by Tom Repetti. This powerpoint provides a high-level schematic of prototypes used in VASL, including the inheritence relationships.
Prototype issues and actions required by Tom Repetti. This spreadsheet lists a number of previously identified issues with VASL counters; it is uncertain whether or not any of these issues have already been addressed.
Readable buildFile by Tom Repetti. Without being 100% certain, it appears that this text file lists all of the counters (at what point in time?) that appear in the VASL buildFile, and the traits associated with them. Further clarification of this is required to understand exactly what this file represents (and how it might be useful).