November 18, 2019, 06:11:08 PM

Author Topic: Vassal Warmaster  (Read 38027 times)

0 Members and 1 Guest are viewing this topic.

Offline Geep

  • Full Member
  • *
  • Posts: 898
Vassal Warmaster
« on: August 22, 2014, 04:19:20 PM »
Hi everyone,

I've begun making a Warmaster mod for the online gaming platform Vassal. Some of you may know of Vassal from the rather decent Vassal 40k mod. To give a brief overview- it allows players around the world to play all sorts of games online, using simple sprites and functions powered by Java. It is NOT a self contained game- you do need to know the rules- but it will hopefully let those of us stuck far from any opponents to get the occasional game in.

I'm new to making Vassal mods, and programming in general, so this may be a slow process and the first release may be rather raw, but hopefully something good can come of it.

The best news is- you can help!
While I'm sorting out all of the basic mod building the finished product will need sprites to represent the game pieces. Lots and lots of sprites.
An example of the sprites from Vassal 40k is:

I'm trying to work with a scale of 15 pixels per cm. This may be too much- I really don't know yet. Either way, the current examples of bases are like so:

I would appreciate any help in trying to populate these bases with little soldiers!
I've worked out rough guides for the size of the models. It doesn't matter if models extend past these lines (or the base), but the ranks will look neatest if they follow these guides (they've been arranged so there's as equal a distance as possible to the side and rear if multiple stands are placed together).

First up- 2x7. This is the usual troop number for small troops, like goblins. It would probably also suit Skaven well.

Next up is 2x6. This is the usual number for basic troops, like Orcs, High Elves and Empire infantry.

Then there's 2x5. This is for the big infantry like Black Orcs, or for scouts/skirmishers (like Empire Militia)

Lastly for now is the cavalry

A few extra notes:
There are free programs which are pretty good for making sprites. I'm using GIMP 2.0, which takes some getting used to but has many very useful features.

PLEASE KEEP ALL IMAGES AS PNG FILES. These are simply the best files to work with and give the neatest finish, plus they retain layers.

Please don't bother trying to decorate the bases. The base is just a guide at this stage, and the actual base will be added within the Vassal program itself.

Finally- Don't worry if you doubt your own artistic skill. I will probably come back and try to tackle some of these myself, but it would take ages for me to get through them all, and in the meantime anything is better than nothing! (I will be making some 'generic' markers with nothing but symbols, but something that actually looks vaguely like troops would be much better).

As added incentive, anyone who helps out can get their name in the module's information area  ;D

Also, if anyone has any experience with programming for Vassal or Java there are a few things I'd really appreciate help with on that front too.
« Last Edit: April 04, 2018, 02:50:51 AM by Geep »

Offline stevothedivo

  • Active Member
  • *
  • Posts: 16
    • Loc: Melbourne, Australia
    • Books of War Publishing
Re: Vassal Warmaster
« Reply #1 on: August 22, 2014, 04:41:35 PM »
No experience with designing anything for Vassal (played a few games on it, though, good platform!) reckon any of these would be helpful?
If you wrote the author (mind you, the page is 12 years old....but the last update was July 4, 2014 so they'd still be running I guess) and shared your project idea with him he may still have the images he used somewhere (as for many units the text flows over onto the unit image)
There are several other WM and WMA top down images of units available online, do some research and contact the authors - they might even be Vassal players themselves and willing to share credit with you to build the module.
Check out Vassal Wargamers on StalkBook and join a continental group - you may find someone happy to show you the ropes or even set up the base structure for you.
Good luck - if/when this eventuates you've a gaming partner in me, even if it's to test the system out for flaws/bugs etc...
« Last Edit: August 22, 2014, 05:28:26 PM by stevothedivo »
Dogs lick their balls because they can. Period.

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #2 on: August 23, 2014, 06:30:54 PM »
The problem with using other images is that the scale will probably be out, and trying to shrink it to this few pixels is likely to just cause trouble.

I've finished a few generic counters- any army could use them for any unit. I've so far only done basic infantry.

The counters can have the colours of their bases changed, and also have a range of simple coloured flags added (top right of the infantry stand). Stands which have moved have a 'move counter' added to their bottom right corner. I'm making the command stands round, and they have an 'order counter' that can be turned on/off to show if that stand has given orders that turn or not (The movement counter is automated, this one isn't).

All stands also have a semi-transparent 'Initiative Range' field that can be put up, and all character stands have 20, 40, 60, 80 and 100cm rings that can be added for easy measuring of command range (if you have a few up at once they get less transparent, as you can see here).

I'd still really like to have proper counters with soldiers if anyone wants to help, but these will suffice for early testing.

Offline Lex

  • Global Moderator
  • Full Member
  • ***
  • Posts: 1445
  • I wonder...
    • Loc: Bergen op Zoom, Netherlands
    • Warmuster . BitzBox
Re: Vassal Warmaster
« Reply #3 on: August 24, 2014, 12:18:55 PM »
nice work!  keep it comming

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #4 on: August 25, 2014, 11:31:02 AM »

I've had a few false starts, but now the markers are cruising around the board, spinning to their heart's content. I have 2 main troubles right now- 1) the mouse-over close up magnifies everything, including the command ranges, which just looks messy and 2) I need to get the grouping command and group rotator working from the Fighting Chaos fantasy mod.
If anyone has any Java experience and feels like helping out the files I'm working on can be found here:
As you can see though it's a bit old, and I have no idea how to adapt it into my mod.

There's also a conundrum I'm debating- I can make it so that the basic common unit configurations are very easy options (press a key to add/remove stand to the left of the command stand, etc.), but I then can't think of a way to add flags to those extra stands, or change their base colours, so the overall look would be very messy.
Whether I choose to go with this option probably depends on whether I can get the grouping command to work.

Since no one is keen on the image making, can I get help in other ways?
Could I get a few photos of models (preferably Warhammer scale, but Warmaster close ups are good too) from directly above?
If anyone has something like a grass gaming mat can I also get a photo of that from above?
These will just be guides for when I get around to improving the markers.

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #5 on: August 26, 2014, 03:04:36 PM »
I don't usually like double posting, but I guess this thread is a bit of a project log.

Making images is much easier and more interesting than trying to work out coding (have we had any handy people with Java coding experience suddenly appear and want to help?).
For that reason I've had a go at making some Empire Halberdiers:

Larger image (the game has a zoom, plus magnifying mouse-over option)

The left two are a basic human image with no real detail (right hand holds a halberd, left a shield- you do have to use your imagination looking from above when working with so few pixels). I figure I can copy and paste the human shape for many things, then add details.
The middle figures have a few extra details- one has gained a hat, the other has some hair and has lost his shield (repositioning both hands around the halberd, which is now angled). Images like these can easily be copied to make variety among the halberdiers.
The last two are completed Talabeclanders. They're the same as the middle two, except their uniforms have gained colour and the left one has gained a feather for his hat (imagination required).

Overall I'm pretty happy with this look. 10x10 pixels isn't much to work with, but I think it should look acceptable en masse.

I could expand the size of everything, even doubling the board size (so doubled stand size), but I worry that going too big will cause memory problems (there's going to be a lot of layers involved in a game like this).

Any opinions? Anyone want to have a go modifying the above to make their own soldiers?
« Last Edit: August 26, 2014, 03:09:27 PM by Geep »

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #6 on: September 05, 2014, 01:03:32 PM »
Things are ongoing, but I'm being slowed by glitches and minor problems. Fortunately the people over at the Vassal forum are very friendly, even if I don't understand all of what they say  :P

Anyway, here's some colourful updates:

I've made counters for; light cavalry (with nothing, with spears and with arrows), heavy cavalry (with nothing, with spears and with lances, and chariots (the two designs may not vary enough, but I don't think that'll really matter. Also, there's the silhouette of a horsehead behind the wheel, though you can't really see it). There's also a General, combat hero and wizard.

I've also made markers for monsters, flyers and machines, all of which can have bases horizontal or vertical.

Lastly I've made some artillery counters- The cannon, bolt thrower and stone thrower.

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #7 on: September 05, 2014, 01:30:39 PM »
What I've completed now is a semi-working version of the game- its just not very easy to use yet.

For those curious, the game works as follows:

You can arrange the stands as you want, and add flags or change base colours to help distinguish between your units, and between your units and enemy units. Hopefully this will become less important when more army specific markers are made, but for now the generic ones can work.
The command markers can have a command radius extended, as shown above, to help determine range of units from the order-giver very easily. There's also the initiative range marker each stand has, though it has some problems I need to fix.

Units can move in any direction, you can jump forward or backwards more easily than sideways. Each unit type (Infantry, Cavalry, Character, etc.) has different movement options. Each can move 1cm forward, backwards, left or right, or jump forwards or backwards at either half their full movement or equal to their full movement, just to make things quicker. The exceptions are Characters and Flyers, where they jump forward less to make overall movement faster (trying to go 76cm when your options are 1/50/100 is a pain). As units move they leave movement trails, with dots to make each movement distance easy to count. You can also drag and drop units if you need to be more precise, but then you have to take care of your own distance measuring.
You can also see the little 'M' counter that appears, letting you know that unit has moved this turn.

Rotating and wheeling are the current sore spots of the game. I've worked out temporary 'work arounds' as you can see below, but this is the main area I'm working on. Unfortunately it requires me to learn Java programming, which is happening slowly.

Currently each stand rotates by itself, so a rotate action causes the above unit to do this:

You then have to manually put all stands back into base-to-base, which can de done easily enough, but is slow.

For pivoting, there is no current easy way to measure pivot distance. What I've done is to make pivot arc measuring templates (this was a fun heap of maths). These are also slow and messy, but at least they work.
Step 1: Place the template so that its corner lines up with the corner you're pivoting around, and the yellow base line of the template is flat against your unit. Then take the Line of Sight thread (your opponent should do this for pesky technical reasons) and stretch it from the pivoting corner to the appropriate centimetre distance on the template (the black/white bands go from 2-12cm, and each dot marks a 1cm outside rotation distance for that base length). In the picture these three stands are pivoting 6cm.

Step 2: Take the stand touching the pivot point and choose to pivot around that point (if you right click there are options). Then swivel the stand to line up with the yellow line (the line disappears if you do something else, which is why the opponent should help out by drawing it- as it'll then stay until you're done).

Step 3: Pivot the other stands and arrange them as appropriate along the line.

It's slow, it's clunky, but for now it works... sort of. There are a few bugs with the pivoting command I'm trying to get sorted.

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #8 on: September 05, 2014, 01:55:30 PM »
One good thing about Vassal is the ease of making shiny buttons to simplify things.

The previous pictures were of the table, where you can see at the top options for: a 'photo' of the current set up, zoom options, an overview window (so you can be focussed on the minutiae of moving but quickly get a whole table overview), the Line of Sight and Range threads (the range thread measures out centimetres, rounding up (it has to round, and up seemed the best choice)).
The 'Group' and 'Ungroup' commands are currently pipedreams. Supposedly other mods have got this to work, so it may be possible, but right now they do nothing.
The 'O' button clears all Order markers (character tokens have the option of having a small Order marker displayed when they can no longer give orders. This button clears them all in one click).
The 'C' button clears confusion markers (just like order markers).
The 'M' button clears Movement markers (the little 'M's which let you know a unit moved that turn).

The non-table portion looks like this:

Surrender lets you give up control of your army to another player.
Armies opens up the area where you can get the markers and templates to play.
There are two mustering windows- one for each player. These are where you can assemble your armies pre-game and, once I've worked out how, you'll be able to save and load armies with these windows.
Army lists is a player-edited text area. The idea is to disclose your army list with your opponent here. There's a few handy settings, like a 'delayed' list reveal so you can be safe putting things in there without concern your opponent may cheat.
Table opens or closes the window with the playing table.

Then we come to the things I've colour coded (see the text window colours associated with each button)-
Dice- currently you can roll from 1 to 10 D6 and the text screen gives you a list of the numbers and their total. There's also an 'XD6' option, where you can roll whatever dice number you want, but it inly tells you individual rolls (no total).
Command roll simply rolls 2D6, adds them together, and gives you the result. Nice easy ordering.
Blunder roll rolls on the blunder table for you and gives you the resulting text.
Turn counter lets you track the turn number and phase of the game. Handy if you need to save the game and come back to it.

So- that's all for now.

Things I will be working on-
1) Getting pivot to work without the bug, and ideally give a measure of the furthest moving edge.
2) Get grouping to work. This may be a hard one. I do have a 'work around' idea, but it's not neat.
3) Get save/load armies to work
4) Make army specific counters. Any help here would still be appreciated  ;)

Almost forgot- one last thing, I've finished a stand of Empire Halberdiers
This is the big version in all its pixelated glory

They'll usually appear much smaller, where I think they look fairly decent (they look best at about mid-zoom in the game, which is what I think is appropriate- if too detailed they'll eat too much memory in moving and pivoting)

Edit: The green background makes the halberdiers easier to see, though I've been lazy making the image so the big ones lose some of the semi-opaque details.

« Last Edit: September 05, 2014, 02:15:37 PM by Geep »

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #9 on: November 12, 2014, 11:57:35 AM »
In case anyone's wondering what happened with this, I've basically discovered that Vassal's pivot mechanic is completely fubarred and there's not much I can do about it. If I get into java programming I may be able to come up with something, but I that requires a lot of time. It's still possible to use the game as is, it's just another annoyance to go with the use of the pivot templates, etc.

I'll post what I've done so far in case anyone wants to have a poke at it- can I upload files on this site, or do I need to find another?

I've made another 2 stands of Empire Talabeclanders-


I may get around to making more. Is there any actual interest from anyone in trying to use something like this?

I think I'll try and make a Man O War version- the movement mechanics in that game are much simpler, and probably lend themselves to the current mechanics better.
If anyone wants to let me know the dimensions of Man O War ships and templates that'd be great!

Offline jchaos79

  • Moderator
  • Veteran member
  • *
  • Posts: 2530
    • Loc: Vigo, Galicia, Spain
    • Fortunes of war
Re: Vassal Warmaster
« Reply #10 on: November 12, 2014, 12:17:29 PM »

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #11 on: November 25, 2014, 07:49:35 AM »
Ok, I've made something of a solution to the pivot problem- Units are no longer a selection of individual stands (mostly) but are one command stand (with flag and other markers) with other stands as optional attachments. This means they all move and rotate as one. Moving a brigade will still be a nuisance, but it should be a lot better than it was.
The downside is that I'm not going to make images for every possible stand placement- I've gone with the following:

The halberdiers show the command stand (with flag) and every possible pre-programmed stand placement. This allows for easy lines, columns, diagonals and a few other odd shapes as shown. I've tried to make stand placement as intuitive as possible with hotkeys- essentially, on a standard qwerty keyboard imagine the command stand as being at about the 'S' position. 'Q' then adds or takes away a stand to the front left, 'E' the front right, 'A' direct left, and so on. 'S' adds one behind and 'X' adds the second behind.

The downside to this (other than many, many hours of work for little visual change) is that you can't cycle through base colours anymore. Instead, you now choose base colours when you pick your force from the menu. There's a tab with the 5 current bases to choose from for every model.

I've also made the last few generic markers- the characters with mount options

I got pretty lazy by this point- it's just the standard image stuck over the monster image, which makes the wizard's hat look odd and not fit. I may revisit it later, but for now it'll do.

I've also made some terrain:

Simple hills, forests, buildings, walls and a lake. The smallest hill is made to stack on the biggest (as shown) and the forests have an option to show the inside (more than 2cm from the edge)- as can be seen on the smaller forest.

I'm pretty happy with the buildings

There's a small house, here with 2 wall pieces attached, and a Wizard's Tower, which is a pretty faithful recreation of the Forgeworld model.

One day I'd like to add more terrain options, more board colours, make a less hideous monocolour green board, etc. but for now I just wanted to get this program useable.

So- along the lines of useable- here's a quick worked example:

The light cavalry (Pistoliers) want to charge the Halberdiers. Ignoring the initiative option, we can measure the distance between the two (red line) and to the hero to work out the command roll needed. Then we hit the command roll button- it's a 5, so they can charge (I don't know if the numbers will show in these screenshots).

The charge- an M appears on the Light Cav command stand to show they've moved this turn. If you want to pause a game and need more details there's an option to add notes for the stands as well.

The dice are rolled (see dice button and side panel) and the Light Cav do well- 4 hits to 1- as shown by the handy damage counters (these can scroll from 1-6, and be copied as needed)

The halberdiers are pushed back and a stand is removed, but 1 hit is still outstanding. This is pretty easy to do neatly now.

The light cav follow up and deal another 6 hits, but this time take 4 hits in return.

The halberdiers are removed completely, and the light cav (with 1 lost stand and 2 hits outstanding) can ponder their options.

I should be able to put this up for download soon, though right now it'll only have generic markers.

Before I do that, is there anything really critical people think I need to add?
Pretty much the only thing I haven't shown is the deployment zone markers, and I'm considering making a simple break-point tracker.

Offline Geep

  • Full Member
  • *
  • Posts: 898
Re: Vassal Warmaster
« Reply #12 on: November 25, 2014, 02:21:13 PM »
So now I have added a break-point tracker, and in true GW tradition I went with skulls!

Set the red number as your break point, green as your unit count, and if green equals red you break. Currently numbers are limited to 15 (red) and 30 (green), which I think is easily enough as a starter.

So- anything else before I put it out there? Any unit positions which are vital, extra markers, etc?

Do many people have an interest in this at all?

Offline wmchaos2000

  • Active Member
  • *
  • Posts: 158
  • Sir Killalot II for the masses!!! /mvh ola
Re: Vassal Warmaster
« Reply #13 on: November 25, 2014, 11:51:43 PM »
I am following your progress with high interest.
Have had similar ideas for several years, just not the Vassal-way.
Have a big admiration for the work and effort you have put into this. :)
Keep it up!

Offline jchaos79

  • Moderator
  • Veteran member
  • *
  • Posts: 2530
    • Loc: Vigo, Galicia, Spain
    • Fortunes of war
Re: Vassal Warmaster
« Reply #14 on: November 26, 2014, 12:09:44 AM »
Nowdays I am more focus in my brushes, so I could not leave a proper feedback. Anyway it is a very interesting tool/game that could close together warmaster players from different cities or countries. So go on Geep, it seems you are in the right way!

Keep the good work!