Monday, January 15, 2007

New Battle System

I'm done with the changes mentioned in the previous post. I have setup a new movement system that allows you to make multiple moves from one territory, and multiple armies can now occupy one territory at the same time.
I'm currently working on a new battle system to go along with this new movement system. It made sense to me to have the game make all moves first and then process the battles that result. Why is this significant? It is because the old battle system dealt with a one on one battle as soon as a move was made. This necessitated an upgrade to the old battle system to handle more that two armies involved in a battle. This meant I had to write an entirely new battle algorithm. That in itself wasn't that hard, but what made it more difficult was the fact that I am also adding diplomatic states at the same time. So, not all countries in a territory are necessarily involved in the battle. It is possible that a battle could end with more than one country surviving. It creates a question related to who wins the battle and captures the territory. It all depends on who is at war with the country that owns the territory. At this point I use the strength of the surviving armies as a tie breaker. I haven't actually tested to see how well it works, but in a "everyone at war with everyone" situation it works fine.
All that is left to do at the moment is upgrading a window that displays battle results so that it can deal with these new larger battles.

Labels: , , ,

Saturday, September 02, 2006

New Developments

I know I haven't posted in quite a while. I've been busy. I thought that I should let everyone know about the most recent developments in version 4.0 of War on Lithon.

I'm currently working on changing the way territory information is stored. I used to have this info (number of troops, ownership, number of troops moving, and the destination of the move) stored in separate variables (matrices actually). This ment that each territory could only store one value for each property. I decided this was too limiting, so I have created three new classes of object, Territory, Army, and Move. The new setup of the program is going to be, a matrix of Territory objects, each of which contains a vector (a structure in Java for storing groups of objects) for Army objects and a vector for Move objects, as well as variables for ownership and type of territory (undeveloped, city, or military base). What this change will do is, let you set more that one move per territory, and have armies from different countries in the same territory. I'm still in the middle of getting the part related to using the moves vector working.

Well, I hope at least one person (other than me) found this interesting.
See ya later.

Saturday, March 18, 2006

War on Lithon Blog

I decided that it might be a good idea to create a blog about War on Lithon in order to give you updates about the development of version 4.0.

In regards to that, development has slowed down quite a bit. This is mainly due to how busy I've been with my job. I'm supposed to have a week off, so this might give me some time to work on it. Right now version 4.0 includes the following features that weren't in the previous version:

• The ability to save games
• randomly generated map
• Three map sizes

Possible additions to these are:

• Diplomacy (War & Peace)
• Multiplayer (LAN games)

Let me know what you think of these and if you have any other suggestions I'd be happy to hear them.