Vassal 3.2 Discussion

Fellow Developers,

I think it is time to have a discussion about 3.2 development. Most of us have stated at different times that such and such a feature should be included in 3.2.

I’d like us to layout a firm plan of what we will be including in 3.2 and give ourselves a reasonable timeline to try and follow and get it done and get 3.2 out in a timely fashion.

Can we set a date (is 30 June too early) as a cutoff for new features?

What are our priority features to include?

For me they are:

  • Tango Icon support
  • Named KeyStrokes
  • Counter autoloader
  • Improved Game updater
  • Calculated Properties and in-line Java expressions (Stage 1 Beanshell)

This is all stuff for developers, but 3.1 was all about the user experience, so I have a baklog of developer improvements ready to go.

B.

For me it’s:

  • JOGL (with Joel’s help)
  • Whatever RFEs I take on SF

Brent, at one point you were working on terrain properties. I’m really interested in that. Are you still planning on including that?

  • M.

2009/3/3 Brent Easton <messages@forums.vassalengine.org (messages@forums.vassalengine.org)>


Michael Kiefte, Ph.D.
Associate Professor
School of Human Communication Disorders
Dalhousie University
Halifax, Nova Scotia, Canada
tel: +1 902 494 5150
fax: +1 902 494 5151

Post generated using Mail2Forum (mail2forum.com)

For me:

To have all the i18n keys done and tagged for ya’ll

From: messages-bounces@forums.vassalengine.org [mailto:messages-bounces@forums.vassalengine.org] On Behalf Of Michael Kiefte
Sent: Tuesday, March 03, 2009 4:55 PM
To: VASSAL Engine Forums Mailing List
Subject: Re: [Developers]Vassal 3.2 Discussion

For me it’s:

  • JOGL (with Joel’s help)
  • Whatever RFEs I take on SF

Brent, at one point you were working on terrain properties. I’m really interested in that. Are you still planning on including that?

I think it is time to have a discussion about 3.2 development. Most of us have stated at different times that such and such a feature should be included in 3.2.

I’d like us to layout a firm plan of what we will be including in 3.2 and give ourselves a reasonable timeline to try and follow and get it done and get 3.2 out in a timely fashion.

Can we set a date (is 30 June too early) as a cutoff for new features?

What are our priority features to include?

For me they are:

  • Tango Icon support
  • Named KeyStrokes
  • Counter autoloader
  • Improved Game updater
  • Calculated Properties and in-line Java expressions (Stage 1 Beanshell)

This is all stuff for developers, but 3.1 was all about the user experience, so I have a baklog of developer improvements ready to go.

B.


Messages mailing list
Messages@forums.vassalengine.org (Messages@forums.vassalengine.org)
http://forums.vassalengine.org/mailman/listinfo/messages_forums.vassalengine.org


Michael Kiefte, Ph.D.
Associate Professor
School of Human Communication Disorders
Dalhousie University
Halifax, Nova Scotia, Canada
tel: +1 902 494 5150
fax: +1 902 494 5151

Post generated using Mail2Forum (mail2forum.com)

Michael,

I am finding that I have a number of projects ‘mostly’ finished, but cannot get back to them to polish them up for final inclusion. I keep getting sidetracked by other priorities. Would you be interested in taking over a couple of the RFE’s I have started?

The Counter autoloader is one that is very nearly done, it just needs a bit of spit and polish to ensure it is easy to use.

The other obvious one is Terrain Properties - it is one that I just never get around to. It’s probably 80% complete and what is there works well. Would you be interested in taking it over?

B.


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake “Brent Easton”:

I had 1 June in my head as a target, but that was when I thought we’d be
releasing 3.1.0 in January. 30 June is ok with me.

Really? I thought that 3.1 was all about bugs. :slight_smile:

I’m planning to work on

  • tabs
  • logging improvements

in that order, and possibly some other small things.


J.


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake Michael Kiefte:

I honestly still don’t see how this can be done without undertaking the
model/view project first.


J.


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

Post generated using Mail2Forum (mail2forum.com)

I’d like to take a look at what you’ve got.

I had a very simple idea of a lookup table with terrain properties were input as cells in a spreadsheet with location name as the key. But I seem to recall you had a fancy GUI. Before I say whether I’d take it over, what do you have left to complete?

  • M.

Post generated using Mail2Forum (mail2forum.com)

Hi Michael,

The current source is in the SVN repository under VSQL in the terrain project.

You activate it in a module by importing two classes:

  1. Into your module, import terrain.TerrainDefinitions. Use this to define the different types of terrain.
  2. Into a board, delete the existing HexGrid and import terrain.TerrainHexGrid.

Edit the new HexGrid and click the ‘Edit Grid’ button to open the Terrain Grid editor.

Working: Hex Terrain (e.g. swamp/sea/hills/impassible), Edge Terrain (e.g. cliff, river), Tag Terrain (Essentially Properties that can be hung off terrain)

Not Working: Line Terrain (e.g. roads, railway). The editor does not work (However, check the VSQL-Dominik project which has fixes and extensions).

The main reason I keep putting this off is working out how to present all of this information to module developers an easily accessible way. Have a look at TerrainBasicPiece which exposes a new property CurrentTerrain which will return the terrain of the hex a piece is in. The two modules that actively use this access the terrain information via custom Java classes, apart from the $currentTerrain$ attribute.

How do we return information about edge terrain and line terrain? Could it even be used in a module?

The Tag terrain would be returned as additional properties. e.g the Port (true/false) tag could be returned by property terrain_Port.

I have some vague ideas floating around about a configurable tool to generate a custom ‘Area of Effect’ based on configurable rules that access terrain info.

I’ve never been quite convinced that these facilities are useful to the average developer.

Perhaps we could introduce this in stages. The most useful and easiest to use features are the Hex and Tag terrains. These can easily be used by most modules and this could be implemented pretty much right away with little work.

Interested in your thoughts, even if you want to leave it with me. Looking over it again has fired me up to get something happening again.

Regards,
Brent.

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

On 3/03/2009 at 7:56 PM Michael Kiefte wrote:

Post generated using Mail2Forum (mail2forum.com)

2009/3/3 Joel Uckelman <uckelman@nomic.net (uckelman@nomic.net)>

What I’m working on is a generic way to provide a GC directly into a multi-texture grid. It’s inspired by TextureRenderer which allows you to paint directly into an OpenGL texture, including entire GUIs, animations, etc. However, it’s not suitable for our purposes because there are hard limits on how big a single texture can be and there are constraints such as 2^n dimensions which are annoying. What I would like to do is substitute a GC from a MultiTextureRenderer at the lowest level and uh… well… hope for the best.

At the simplest level, it should work. The painful parts are then going to be user interaction which have to be addressed separately. That may be where the model/view comes in, because there’s really no generic front-end that I can think of like GC for rendering. I could generate events from the OpenGL from mouse clicks, etc., but I haven’t thought that far.

I’d love to say that I’m almost finished, but I’m not. It’s pretty easy to slap together a mock-up, but I’m spending more time on this.

  • M.

Post generated using Mail2Forum (mail2forum.com)

I want to do some basic improvements to the Server Status pane. I’d like to see syncing straight to a game; At the moment it takes no less than 8 mouse clicks to join a live Vassal Game.

Also, I’d like to see a Main chat area in a pane on the Module Manager window; But I’m not sure I can do this without server-side changes; May need to take it up with rk.

Ben,

That would be great if you could look after that. I have signed

RFE [2492729] Streamline Room Creation process - AutoSynch

over to you. It shouldn’t be too hard, all the code is there, just manually activated at the moment. I had a good look over this code when I was fixing the locked room problem, so feel free to pick my brains if you get stuck.

It should be possible. Look at how a module creates the Main Room for itself. Essentially, we want the Module Manager to pretend to be a module, joining a Main Room for a virtual module, perhaps called ‘Chat Room’?

B.


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake “bsmith”:

I was going to suggest that someone implement that synch improvements that we
discusses when Brent was adding locakable rooms.


J.


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake Joel Uckelman:

Gah! I can’t type today.

“I was going to suggest that someone implement the synch improvements
that we discussed when Brent was adding locakable rooms.”

There.


J.


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

Post generated using Mail2Forum (mail2forum.com)

Perhaps baby steps is the best way to go. I think you’re right here. Get the hex and tag terrain properties working and see how people use it. I think this would be relatively easy. The properties mechanism should search the terrain properties right after stack properties and before map and global properties.

As for hex sides, I’m not sure how they can be used and probably shouldn’t be introduced immediately. Same with lines. I can’t think of a way that module programmers can use them.

  • M.

Post generated using Mail2Forum (mail2forum.com)

Tim,

I’ll merge these into the trunk over the next day or two. Joel is busy with the new site and it will be good to get these in place as you do them.

So far I see tmcarron-i18n@5070 and 5110 ready to go.

B.


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

Post generated using Mail2Forum (mail2forum.com)

Let me see if I understand. What you’re talking about is basically keeping the 2D rendering logic in VASSAL, but painting it onto a surface that the user can rotate and manipulate. Is that right? Do we think this would give us any performance improvement or is just a fancy way of implementing the rotate-the-map-view feature request?

rk

Post generated using Mail2Forum (mail2forum.com)

I’ll definitely have the Jabber server protocol ready for 3.2. I have everything working except for the “who’s playing now” reporting.

rk

Post generated using Mail2Forum (mail2forum.com)

Ok,

So the general plan for 3.2 looks like this:

  • I18n of Module Editor
  • Tango Icon support
  • Named KeyStrokes
  • Counter autoloader
  • Improved Game updater
  • Map Terrain Properties (Stage 1 - Full Hex terrain and Hex attributes)
  • Calculated Properties and in-line Java expressions (Stage 1 Beanshell)
  • Tabs/Docking interface
  • Further JOGL investigation
  • Logging Improvements
  • Various other RFE’s as time permits

New feature cutoff date to be June 30, 2009, beta 1 released asap in July.

B.


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake Rodney Kinney:

Does the mean we might also be able to plug the giant server memory leak?


J.


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

Post generated using Mail2Forum (mail2forum.com)

Thus spake “Brent Easton”:

That looks good to me.


J.


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

Post generated using Mail2Forum (mail2forum.com)