Possible new civilization game: make our own!

Yes, it is likely that the off map bombardment from Artillery or Ships will require a special phase.
Aircrafts will also require a special handling to allow for Anti Aircraft fire.

But I'll cross this bridge when I come to it. First step is to have relatively simple land battle between units from let say Ancient to Napoleonic.
 
One question: once you have created the "strategic map" where you would have your towns, mines, etc, I presume you would be initiating battles based on the terrain and locations surrounding armies on the strategic map when they confront each other.

It would be very cool if you could implement a system where the "tactical map" (the one where the battles take place) is a zoomed-in version of the strategic map. This could be automatically generated based on the surrounding 8 tiles in the strategic map, with units pre-placed in relation to where they were in those 8 tiles when the battle started. If you take the tile terrain value of the 8 tiles and do some kind of mathematical operation on them in such a way that you will always get the same number, you can feed that number into the random number generator so that the terrain you generate for the tactical map will always be displayed the same way if the battle is fought in the same location.

You could also use this to implement defensive works (which would be built while in the "strategic map") which you can use to your advantage during battles. I'm thinking fortifications and cannon batteries, but also bridges on a river location, which would GREATLY change the tactics necessary in the battle (is there a place to ford the river to outflank defenders?, is the bridge the only way to cross?, is the battle worth fighting?, etc.)


I like your idea of using some loose scripting to define the attributes of objects instead of strictly defining them in code. I think if you go this route it could greatly speed up the development because non-programmer modders on the CFC forums can collaborate create content and flesh out the game rules while you can focus on coding. :)
 
About the tactical / strategical map:

The scale can be very different. For instance 100 km on the strategical map, and 1 km in the battle map.

So instead or a real zoom, I will generate randomly a map based on the main features of the tiles where the ennemy armies are located on the strategical map.

For instance, if the defending army is in a forst, the attacking army is Norht in a plain, and a river is between, then the random battle map may have a rivers running mostly West East, crossing the battle map ar about 2/3 of the map (to the North).
South of the river, 2/3 of the map will be mostly forest, with a few hills, some clearings, while North of the river, 1/3 of the map will be mostly plaisn, with a few woods.

If you have some fortifications at the strategical level, they you will be allowed to place them on the tactical map during your unit placement phase.

I like your idea of using some loose scripting to define the attributes of objects instead of strictly defining them in code. I think if you go this route it could greatly speed up the development because non-programmer modders on the CFC forums can collaborate create content and flesh out the game rules while you can focus on coding.
That's the idea. For instance, in my tests, I need to add some weapons and units. It's long. But when the first version is OK, I can just ask volunteer to use the editor to add many new units, with new attributes.

I don't really care about balacing or contents at the moment. I don't want to see if the range of a weapon should be 1 , 2 or 10.
I just want to have a range and have it work in game.

Then the modders will be able to experiment with the proper values to have nice balance game.
 
Here are a few screenies showing the latest additions.

First, a small view of the unit editor. As you can see, you can add weapons to a unit template. The weapon need to be defined earlier. You can have a generic one (such as bayonet), shared by everyone, or a more specific one, like the British_Musket.

For each weapon, you can select what animation to play. Here, to make a link to good old civ, I'm saying that for Bayonet, it should use the animation Bayonet2, which correspond in fact to the AttackB.flc, while for the musket, it should play a musket animation, which correspond to AttackA.flc. The important point here is the capability to have a generic weapon, give it to a unit, and then associated an animation, specific to the unit, when using this kind of weapon.



Now, let's move to the battle. I'm in the initial attack phase.

When I select a unit, I can see it's information, and the list below the Icon only contains the musket, as the bayonet cannot be used for range attack.
A swordsman would have no weapon. Meaning it cannot attack.
A tank can have a MG and a gun, and has the capability to select which weapon to use, depending on the target (infantry? Another gun?).



Then I move the the movement phase.

The weapon list is empty. Weapons are not used in this phase.



And then the melee. The only available weapon here is the bayonet.

Last for today, I've updated a bit the unit contextual menu, you can see it shows the name of the unit, and the faction. And on the right pannel, the faction is displayed, as well as its color.

 
:clap: Bravo Steph. It's looking really good. All the combat and movement stuff sounds really good. It's gonna have all the strategic levels that we all wish Civ 3 had.

Will the zoomed in tactical map use the same terrain graphics as the main map, or will there be a different set of terrain graphics for it?
 
As I'm adding some flesh in my test items to program the battle, it is a good time to show again some concepts.

Here I have added a few weapons.



You can see that the Cavalry carbin inherits from the Musket, which inherits from Firearm. I have few attributes in the game at the moment, only the range, so it's not really easy to see the interest of this. Just understand that I can use this inheritance to say that the Cavalry carbin is exactly like the musket, except for the range which is different. No need to define all the paremeters of the carbin. Just one.

Here is another example with units.




First, you can see that you can have an editor name, and a usual name. Usual name will appear in game, while the editor name is for easier reference in the editor.
Second, you can see some units are in blue. This is a virtual item. It means it cannot be build directly (and so it has just an icon, no animation). It's purpose is just to help with the inherirance.

Now, if I try to edit this virtual Napoleonic Infantry, you can see in the attributes page that it has one attribute "Full men complement", define to 1000.



If I edit my Highlander, I see that they have no specific attribute (notice the option right of the small funnel icon, the filter button).



However, If I change this filter to "All", I can see that my Highlanders have inherited the 1000 men from their parent, the Napoleonic infantry.



Now, suppose I want to give a little bonus to the French. I can just use a modifier, and say for instance the French have +200 men compared to the other Napoloenic infantry



This is done with this kind of window, where you can select an attribute, the type of modification (here it's just an absolute change, it could be a percentage), and the value of the change.

In the right pannel, you see the list of changes from the inheritance path.



Here, French infantry add +200 men to the parent level, for a total of 1200
 
It's indeed very promising, but I think modders will need some time to get used to it. Because contrary to civ, you don't have a big window showing all the current parameters of your unit, as you see only what you want to change specifically.
Imagine looking at the Cossacks in the editor, and seeing only MP+1.


One last screen for today. Just a test shot.

Here is how the things will work. Let suppose we are in the initial attack phase.
When you move the mouse on the map, the cursor is an arrow (for the moment it's just basic windows cursors, I will make it better letter if an artist can help).
When you move other a unit, ennemy or friend, the arrows become a hand. So you can select the unit, even ennemy ones, to get some information (in the right pannel).
By default, it's the "top" unit which is selected. If you want to change it, you can do by right clicking on the unit, and choosing which units you want to select in the contextual menu.

Now, if the selected unit belongs to the current faction (ie it is your unit), and it has a range weapon, it can use it to attack someone.
However, to give the attack order, you need to activate the "attack" mod, just by pressing the CTRL key. Then, if you move the mouse other a unit, the cursor becomes a cross. If you click then, your unit attack (yes, it means that you can shoot at your own units, be careful!).
To sum up: click on unit without CTRL selects it, with CTRL it attacks it if the currently selected unit is yours and has a range weapon.

Then, a small message will say what happens: here the French infantry attacked the two British infantry stacked in the square.

And yes, it means that every unit in the square is attacked as the same time (but obviously, the attack will be spread somewhat).

This report message is temporary, I will make a much nicer one, with colours an icons :).

You can also notice something. The report just says that the French attacked the British. It doesn't tell the result.

This is normal, as the result will be known only after everyone attacks.

So if the French attacks the Highlander, the British player can in the same phase ask the highlanders to attack the French.

So 1200 French will attack 2000 highlander, and the 2000 highlanders will attack in return.

Here, as the highlander are partly protected by the forest, it is likely the French will meet a gloomy fate...

 
Not knowing how far along you might be on a tac implementation was gonna ask why not wait to implement it later. Looking at the map in you last comment was wondering if just could apply your notional combat system to the strat map for a simplier system now. That way if attacking on a flank/rear, across a river, or a unit on a mountain just take from terrain as depicted above and apply, run so many rounds and then quit combat (or allow unit option to try to retreat). Just wondering, and feel free to ignore as it is your game and may go totally against your design philosophy (i vaguely remember playing a game that let you resolve quickly at this level or play a tac resolution). Looking real nice at this point ... hope get a terrain guy to help (wish I had that ability).
 
I can make a playable game with tactical battle only, no economy, no diplomacy, no tech, relatively quickly, as it's focused on one aspect of the game, warfare.

If I make a quick resolution system for the strategical level, I'll still have to add economy, tech, etc. and I don't think it's doable before quite sometime.

So I'd rather finish the tactical battle, make it playable so we have a fun little game, and then move to the strategical.

And it's likely at this stage I will focus only on strategical, without a link to tactical battle. The link will be added when both level work well separately.
 
I have improved a bit the immediate report message.

In the range attack phase, when you select a friendly unit, and then click on a suqare containing units, while pressing the CTRL key, you give the order to attack.

This message is immediately displayed. It tells who attack whats, but it doesn't give the result yet.



Before the attack, if you select the unit, the right control pannel will tell you that the unit is waiting for order (blue text), and you can select the weapon.

After the attack, if you select again the unit, it will tell you it is attacking (red text), and with what weapon (not changeable at this stage). You cannot do anything with this unit until next phase.

 
After you have given attack order to all your units, you click on next, and move to the next player, in the same phase.

He can give attack orders as well, and then next will move to the next phase, as every player has gone through this phase.

Before going to the next phase, you will get a log report, giving the result of every attack (one line summary). Until now, you just knew that unit A1 and A2 attacked unit B, and unit B attcked A1, but you didn't knew the result. Now, at the end of the phase, you know the result!



If you want details, double click on one of the summary, and a windows give you all the details.

For the moment, Ijust used a random casualties between 0 and 100 to illustrate the principles. Next, I will add the actual attack engine behind, with influence of the weapons, the terrain, etc.

It means the complete model behind will be explained in this window. No more guessing what bonus applies. Just read it!

 
Bravo! It all looks great Steph. I can't wait to play the test version. So, so, so much more realistic than Civ. It sounds like it will be really fun to play! I'm envisaging all the modding possibilities too. The ability to have units have different weapons with different animations is great. I'm thinking if one wanted to make an RPG style character based game this could be used well. Your single character you could have various weapons he could use.

Actually a good feature would be to be able to equip your units differently after they have been made. So just say you build your regiment of soldiers and they have a certain type of gun. But you have to equip them with bayonets. And later if you develop a better gun, you have to then equip them with the new gun. So I'm thinking you have to build the weapons separately and then equip the units. These weapons should be able to be unequipped also, should you wish to arm them differently. The weapons should be able to be stored for later use or sold.

What do you think? Perhaps you have better ideas on this, or it might be too complicated to implement.
 
In theory I could add such possibility to equip units with different equipment as new techonologies become availalbe.
The main problem can come from the animations. If you change the equipment, should the animation change, and then are the graphics available?

However, there may be different ways to handle that, and I'm not sure how as I'm focus on the battle, and not the tech part.

Probably the easiest way would be in the editor to give all the possible weapons to the unit template, but each weapon would have its own upgrade path.
And it will be available only at the proper time.
So musketeer could have a musket and a bayonet, but only the musket will be available at first. When you discover "bayonet", then you will have two choices for attack.

Another possibility would be to have two different musketeers, one with musket upgradable to musket + bayonet.
 
A small update for today




I have added a global list of units. So far, each square knew the list of the units in the square.

The global list allows first to list the unit currently on the map, but more importantly I will soon add their current status (waiting order, firing, etc), so it will be easy to know who is still available this turn.

And this same global list will be used behind the scene to easily reset all the units to "available" when changing phase.

Also, it's not done yet, but the list will include the possibilities to sort on any column, and to filter the units, for instance to show only yours, or only the units which currently are availalbe.
 
Back
Top Bottom