"Wheeling" - Pivot / Move

Hi -
i read about using Vassal for “Miniature-Games” and would like to make my own mod for a Game. It would be very useful, if it would be possible to:

  1. Combine multiple “Units” together (like snapping them together), to be able to Pivot them “as one” around one of the front-corners.
  2. Give a Unit a maximum Movedistance, including this Pivot. This might be a big problem. For example in the “real” game you can wheel your unit up to 2 inch an then move further to a total of 9 inch (or more, depending on the unit).
    Even more complicated, no matter how far you wheel, it always counts as 2 inch from your total 9 inch move.
    If multiple units are combined, this gets even more complicatet, as the width of all the units come into play - the longer the Line the less “degree” you can pivot with your 2 inches …

If there are already possibilities to do that in Vassal, please let me know - and it would be awesome, if such features could be seen in a futere release
Thanks,
Arno

There were official RFEs for that two years ago and again last summer.
But I don’t know if it is in Vassal yet.

It’s a major problem for all who want to make modules for mass battle tabletops. :cry:

das besprechen wir dann mal im Tiny-Soldiers weiter ;)
LG,
Arno

Anything new on this?

Hi,

I worked on a system briefly to acheive this effect without ‘modification’ of code, but rather creative use of existing functions. The key is to get past the mental block that is, each ‘miniature’ must be represented by an individual piece… in reality, there is no need for it, all you need is an interface and graphical representation of the overall unit and the models it contains.

Although it was a long time ago, and through lack of time was never finished beyond concept, I began work on such a system. Perhaps it could be adapted to your needs, or anybodies ‘unit / ranks’ needs.

Without getting beyond one piece one model, its highly unlikely that such a thing is possible in real terms, not least in the incredible amount of slowdown you would generate, keeping track of 200+ peices and rotating them in large batches.

For this to work, and work well and be playable, it needs a very different, simpler implimentation. Requiring more initial work for the designer, yet much improved results on completion.

It does depend heavily on the scale, by which i mean skirmish or epic scale for example, 100 models or 1000 models 10 units approx. per side or 100 units per side…

Pivoting en masse is not easy to get right, but is possible.

[Edit] Limiting moves isn’t difficult, but what if you make a mistake and have to redo the pivot. ~I mean you can’t limit the pivot to 2" , so most things will be on trust to large extent, even if some form of enforced regulation is there, and you need to be able to ‘undo’, unfortunately the more complicated the combination of actions involved and variables changed requires more than one ‘undo’ in the Vassal engine and much of which is invisible / unknown to the average user… suddenly they find that they have 1 or 2" less movement than they feel they should… can break games. Not impossible, but you have to remember what the Vassal engine caters for, bard games and the like, as if you were at the board, not like a computer simulation.

There was a Flash DBA game that did exactly this, sadly the site is long gone now. There was also Milton Soong’s Little Cyber Wars that did this, in Java but it hasn’t been updated in ages and the rest of the program was rather lacking. The Virtual Tabletop alpha does this, in 3d no less.
It doesn’t seem to be impossible, but since I can’t code my way out of a wet ‘hello world’ I really don’t know ;)

Sure would be nice though. I think most of us want something that can wheel/pivot groups of counters or ‘stands’ not hundreds of individual ‘figures’ or images.

Thus spake “Skalla”:

VASSAL will eventually have this; it’s just a matter of someone getting
around to coding it. (This means that someone should volunteer to code
it, if the usual developers are too slow for your taste.)


J.


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

Post generated using Mail2Forum (mail2forum.com)

Hey Joel, no worries mate. I know nothing about coding and am certainly not suggesting “the usual developers are too slow” lol! You guys have done great stuff with VASSAL, it’s come a long way since the beginning.

Was just saying it should be possible given it has been done in those other programs.

Well, you would need to wheel from both front corners at least…

But why not just use offset layers for each individual model and then use the usual pivot function?

Again I would suggestthat individual models as a set, is more complicated than necessary… I mean take for example… lets see… Warhammer: do each individual figure need DPs and need to be individually managed, or is it units and characters that are the ‘functional component’.

I gather wounds are assigned to units, they move as one (exception being of course skirmish, but they need no mass pivot).

The only problem i forsee is differing unit frontage for the pivot, but you would have the same problem for any new one based on multile peices rather than an individual peice with multiple layers.

There is nothing wrong with the code already in place, it is just a matter of overcoming the assumption thta a model needs to be represented by its own personal peice within Vassal in all situations. It isn’t the case.

Go open the De Bellis Vassalus mod, drag 4 or 5 units out on the map and put them in a line. Now try to wheel the line as a group.
Can’t be done. They all pivot individually. So then you spend forever trying to get them all to line up again. And this will happen over and over during the course of a game. DBV is just one example. Any attempt at miniatures style mods outside of skirmish sized, single figure games is going to need this.

On Dec 23, 2010, at 1:15 PM, Skalla wrote:

[This message has been edited.]

Go open the De Bellis Vassalus mod, drag 4 or 5 units out on the map
and
put them in a line. Now try to wheel the line as a group.
Can’t be done. They all pivot individually.

As the thread indicates, this is a long-standing request for a new
feature.

I suspect that it is likely to be difficult, since there hasn’t been
much in the way of work done on it, and IIRC there isn’t a lot that is
done with operations on groups of units.

So, perhaps it would help if you can explain a bit how you might like
to see this work.

Which units perform the pivot?
Is it based on selected units?

How do you know where to pivot from?

What happens if you select units that are not in a line?
Do they pivot? Do you get an error message?
How do we figure out if the units are “in a line” in the first place?

Do we need to have a grouping function implemented first?

Well, as I’ve mentioned, I’m no coder. The way I have seen it done was units that were placed adjacent to each other could be selected as a group, and then you could grab either front corner of the piece on the end and pivot the whole group. In VASSAL I would suppose you could implement it as two separate commands, “wheel right” and “wheel left”. Not sure how often people would need/want to mass rotate non adjacent pieces, if so it would require wheel as a separate command I suppose.
It is certainly not necessary nor high priority to VASSAL as it stands, but it would be nice someday ;)

I think you just hit the nail on the head. The hard part is not wheeling per se. That code is already implemented. The hard part is defining the group of units to be wheeled. Essentially, the group that would be wheeled needs to be known as a super unit that VASSAL understands all of the dimensions (length and width). If you could have a group/ungroup function, that would take care of the problem. The grouped set of units could be looked at by VASSAL as a single unit. From there it is a matter of applying the wheel function.

John

The idea of a “super unit” or better described as you have here - the ability to group / ungroup different units was discussed before a long time back. I think it’s a great idea and worthy of an RFE, but as was noted back in that discussion from long back, one of the vassal dev’s pointed out all the traits and features this implicates or could affect so it is not as simple as it might seem at first glance and may be a significant task to implement.

Thus spake jacar:

“tar” wrote:

On Dec 23, 2010, at 1:15 PM, Skalla wrote:
Do we need to have a grouping function implemented first?

I think you just hit the nail on the head. The hard part is not
wheeling per se. That code is already implemented. The hard part is
defining the group of units to be wheeled. Essentially, the group that
would be wheeled needs to be known as a super unit that VASSAL
understands all of the dimensions (length and width). If you could have
a group/ungroup function, that would take care of the problem. The
grouped set of units could be looked at by VASSAL as a single unit.
From there it is a matter of applying the wheel function.

John

Grouping could possibly be handled as a different sort of Stack
(i.e, a horizontal one).


J.

So, when forming a group, VASSAL would need to know when to make units “stick” together, much like the stacking option where units would stack if they were near the center of one another.

Units could be in a group when they are sharing a side but not necessarily a whole side.

Facing might be another option. To group, units should be facing the same direction.

Units are of different base widths and depths. Vassal would need to understand this point as well…though I suspect this would be somewhat of a non-issue.

Once the group is formed, VASSAL needs to be able to understand the new dimensions and be able to understand where a front corner is and where the center is for both wheeling and rotating.

John

John

Another approach to think about is that used by actual military units - namely that each component unit simply takes a mark from a ‘guide’ unit and performs whatever actions are necessary to maintain current distance from the guide, and adopt the same facing as the guide.

If we make one assumption - that the game’s abstraction level is well thought out - then I believe the following is a sensible conclusion to be drawn:
The individual units of the game are in fact the largest-sized units that actually have trained to perform the maneuvers of the game, and larger ‘super-units’ maneuver by having the base components synchronize with each other.

So, in a battalion-scale game, forming square either succeeds or fails based on engine calculations of morale, time to contact by approaching cavalry, etc. By contrast in a company-scal game the individual maneuvers by companies is compared to the movement of approaching cavalry pelotons, to see whether base-units have successfully completed the super-maneuver.

Using this guide mechanism, you might even be able to program this mostly in the module, with a minimum of Java code:

Guide units advertise their planned position and facing for a wheel, and follower units trigger on this to maintain distance at a new calculated position with the same facing as the guide unit.

This mechanism has the benefit of completely side-stepping the 2" and 9" inch rule: Let units move their 11", and If units are too far out they simply lag, unless the guide has moved less than 9" after the wheel to give them time to catch up. This is entierly realistic.

If I am understanding your two posts correctly, this is a fine idea for a game that is being designed from ground up. However, when you are playing a game that has already been designed, complete with wheeling and rotating rules, then it would be much better to use some sort of horizontal stacking scheme that VASSAL knows how to wheel and rotate.

John

One more thing. There are some miniatures games that this sort of wheeling and pivoting don’t apply. Namely, modern/sci-fi warfare and any sort of skirmish warfare…basically any sort of game that does not require any sort of formation.