Ancient Warfare Game

Ancient Warfare Game

Discuss game development here, from a distinct game project to an accessible third-party mutator, down to the interaction and design of individual units if you like.

Moderator: Moderators

callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Ancient Warfare Game

Post by callmeandy »

As part of Strategic Ancient warfare game, I am wondering if it might be possible to build a battle interface in Spring.

So in terms of RTS in Spring I am looking to build a game that can work along the following lines:

1) Loading with a map generated externally and procedurally immediately prior to loading Spring.

2) Group numbers of warriors together and have them act as a unit. Whereby fighting in formations can be programmed into their behaviour and ordered from the interface.

3) Loading units at pre-defined positions again according to a disposition instruction set piped to spring prior to loading.

4) Having, most likely a duration limited battle, and/or possibly a "capture the flag" scenario when units attacking fixed positions.

5) An interface option for either player to choose to Rout rtaher than continuing with the fight.

6) Units to be hampered by morale and "do their own thing"

7) Provide details of the outcome back to the host game.

Eight) Having siege weapons being able to knock down walls etc.

Additionally I wonder what the size limitations for the map are?

Any comments much appreciated.

AS
User avatar
CarRepairer
Cursed Zero-K Developer
Posts: 3359
Joined: 07 Nov 2007, 21:48

Re: Ancient Warfare Game

Post by CarRepairer »

All of that is possible. Join #moddev in the lobby to get help online.
User avatar
SanadaUjiosan
Conflict Terra Developer
Posts: 907
Joined: 21 Jan 2010, 06:21

Re: Ancient Warfare Game

Post by SanadaUjiosan »

Sounds like something along the lines of Total War?
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

SanadaUjiosan wrote:Sounds like something along the lines of Total War?
Yep a sort of cross between Civ for the strategy and something like Total War for the tactics. Considering building the world in mutiverse.
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7049
Joined: 16 Nov 2004, 13:08

Re: Ancient Warfare Game

Post by zwzsg »

Yeah, it's possible, even done for most parts:
  • Exemple of procedural map: my hexfarm map
  • Exemple of mod with groups of unit acting as single unit Cuberor's Finest v4 (thread) (warning, old mod, may require maintenance to work again)
  • Exemple of mod with units loaded at predefined position: Kernel Panic's missions, Gundam RTS's mission, ZK's missions.
  • Exemple of fixed duration battle: Kernel Panic's ColorWar modoption.
  • Exemple of capture the flag: Knorke's Spring Tanks
  • Exemple of rout: already seen the hardcoded in game menu? You can also rather easily Lua your own end game button.
  • Exemple of providing outcome back to the host game: See Zero-K's planetwar.
  • Siege weapons knocking wall : It's not clear what you mean by that. Technically, a Merl firing on Dragon Teeth would fit, but I'm sure you don't mean that.
  • Max map size: Something like 64x64 (in "screen" size). I've played on a 64x16 map and a 32x32 map (PicassoCT's Trenches and Intercontinental). There may be trouble trying to make a 64x64 map though.

But it would still be a load of work to pull it out. Be prepared to write dozen thousands of lines of Lua for the next few years.
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

zwzsg wrote:Yeah, it's possible, even done for most parts:
  • Exemple of procedural map: my hexfarm map
  • Exemple of mod with groups of unit acting as single unit Cuberor's Finest v4 (thread) (warning, old mod, may require maintenance to work again)
  • Exemple of mod with units loaded at predefined position: Kernel Panic's missions, Gundam RTS's mission, ZK's missions.
  • Exemple of fixed duration battle: Kernel Panic's ColorWar modoption.
  • Exemple of capture the flag: Knorke's Spring Tanks
  • Exemple of rout: already seen the hardcoded in game menu? You can also rather easily Lua your own end game button.
  • Exemple of providing outcome back to the host game: See Zero-K's planetwar.
  • Siege weapons knocking wall : It's not clear what you mean by that. Technically, a Merl firing on Dragon Teeth would fit, but I'm sure you don't mean that.
  • Max map size: Something like 64x64 (in "screen" size). I've played on a 64x16 map and a 32x32 map (PicassoCT's Trenches and Intercontinental). There may be trouble trying to make a 64x64 map though.
But it would still be a load of work to pull it out. Be prepared to write dozen thousands of lines of Lua for the next few years.
Thanks for all these pointers zwzsg. On the siege weapons thing I am thinking in terms of Trebuchets, catapults etc chucking missiles at walls to breech them.

Not sure what dimensions you are referring to on the map. My ideal is to represent most likely a 10km square area. I will need to match the spring map to an area in the global map by executing a routine to create a heightmap at the desired resolution (no dounbt they will be different) and to automate constructs of texture maps etc required by Spring.

Yes I understand about the workload. Thanks for your help.
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7049
Joined: 16 Nov 2004, 13:08

Re: Ancient Warfare Game

Post by zwzsg »

callmeandy wrote:On the siege weapons thing I am thinking in terms of Trebuchets, catapults etc chucking missiles at walls to breech them.
What makes a catapult different from a reskinned tank?
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

zwzsg wrote:
callmeandy wrote:On the siege weapons thing I am thinking in terms of Trebuchets, catapults etc chucking missiles at walls to breech them.
What makes a catapult different from a reskinned tank?
I agree with you but I didnt know if physics are active on buildings or whether there are any other approaches to damage effects.
Its not really concern about the unit at all.
User avatar
Beherith
Posts: 5145
Joined: 26 Oct 2007, 16:21

Re: Ancient Warfare Game

Post by Beherith »

Physics (in this case ballistic projectiles) are well supported by the engine.
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

Beherith wrote:Physics (in this case ballistic projectiles) are well supported by the engine.
Is this in terms of the projectiles effect on buildings, terrain etc
User avatar
Beherith
Posts: 5145
Joined: 26 Oct 2007, 16:21

Re: Ancient Warfare Game

Post by Beherith »

Terrain is deformable, structures can be partially destroyed.
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7049
Joined: 16 Nov 2004, 13:08

Re: Ancient Warfare Game

Post by zwzsg »

Then say something like: Features that fall over when hit by certain weapons.

Though you'd need to have toyed with Spring a little to know that we call features the "static" models like trees, rocks, walls, as opposed to units which are "live".

Spring has hard coded falling animation for trees, (but that can't be reused for custom models like your wall would be), and Knorke has workarounded something to Lua out fall-over anim for his custom tree in Spring Tanks.

Anyway, before asking too many questions, best would be to try out varied Spring games (not just the BA you see hosted in lobby), maybe open their sd7/sdz with 7-zip and see what's inside, read some Spring modding tutorial, and try your hand at it, so that you know better how Spring modding goes and can make more precise questions which can be given better answers.



Because any broad question will be answered by either:
- Zero-K has it!
- You could Lua it!
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

zwzsg wrote:Then say something like: Features that fall over when hit by certain weapons.

Though you'd need to have toyed with Spring a little to know that we call features the "static" models like trees, rocks, walls, as opposed to units which are "live".

Spring has hard coded falling animation for trees, (but that can't be reused for custom models like your wall would be), and Knorke has workarounded something to Lua out fall-over anim for his custom tree in Spring Tanks.

Anyway, before asking too many questions, best would be to try out varied Spring games (not just the BA you see hosted in lobby), maybe open their sd7/sdz with 7-zip and see what's inside, read some Spring modding tutorial, and try your hand at it, so that you know better how Spring modding goes and can make more precise questions which can be given better answers.

Because any broad question will be answered by either:
- Zero-K has it!
- You could Lua it!
I am getting the answers I need for now to be frank - at this stage I dont care so much about how to do it, just whether or not the engine's limitations will inhibit it, and in a very rough sense if there are hoop's that need to be jumped through in order to do things. All in all the thing sounds like I will be delving more deeply though in the coming days. Sounds good.
User avatar
SanadaUjiosan
Conflict Terra Developer
Posts: 907
Joined: 21 Jan 2010, 06:21

Re: Ancient Warfare Game

Post by SanadaUjiosan »

zwzsg wrote:Because any broad question will be answered by either:
- Zero-K has it!
- You could Lua it!
Extremely true.

zwzsg is totally right, playing the Spring games that aren't *A is a great way to see what is truly possible with the engine. The Cursed, Evolution RTS, Conflict Terra, Knorke's Spring Tanks, GundamRTS, Spring 1944, and Zero-K are great examples.

Of course there is still a lot that is possible that hasn't been done before, or not developed to a certain level.
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

Any comments on the question about: Whether units can be hampered by morale and "do their own thing". I guess te question is can AI be scripted to overide player instruction. The sort of things I am thinking of:

Getting over eager and charging without orders,
Panicking in the face of overwhelming enemies,
or panicking on seeing their numbers falling rapidly.

And even refusing orders come to that due to fatigue levels deteriorating.
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

SanadaUjiosan wrote:
zwzsg wrote:Because any broad question will be answered by either:
- Zero-K has it!
- You could Lua it!
Extremely true.

zwzsg is totally right, playing the Spring games that aren't *A is a great way to see what is truly possible with the engine. The Cursed, Evolution RTS, Conflict Terra, Knorke's Spring Tanks, GundamRTS, Spring 1944, and Zero-K are great examples.

Of course there is still a lot that is possible that hasn't been done before, or not developed to a certain level.
Will give all these a look in due course I am sure, thanks for the suggestion. But sorry what is *A?
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: Ancient Warfare Game

Post by smoth »

one of the many ta-based games. They use names like WAFFLE annihilation... so the *a is * is a wildcard. Pretty much need to look at projects listed in that post as the *A are very similar and mostly use stuff internal to the engine.
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7049
Joined: 16 Nov 2004, 13:08

Re: Ancient Warfare Game

Post by zwzsg »

callmeandy wrote:But sorry what is *A?
*A means: Spring games whose names are made of two words, the second of which being annihilation. For exemple:
- BA (Balanced Annihiliatin)
- AA (Absolute Annihilation)
- XTA
- Tech Annihilation
- NOTA
- ...

This is a handy abbreviation to designate Spring games that stayed close to TA. In 1997 came out a commercial, closed source game called Total Annihilation (TA in short). Maybe you have heard of it? Anyway, Spring started as a free engine to load Total Annihilation data and play it in 3D. Then gradually Spring became a more moddable engine. But lots of Spring mods stayed close to their root. We call them the *A.


callmeandy wrote:morale
With a Lua gadget, you can:
- Give every unit a custom parameter called morale.
- Have it increase or decrease under whatever condition you wish.
- When it's low, make it impossible for player to give orders to them.
- Have your game logic give them whatever orders.

It's all perfectly doable, and rather easy for any competent Spring Lua coder.


callmeandy wrote:I am getting the answers I need for now to be frank - at this stage I dont care so much about how to do it, just whether or not the engine's limitations will inhibit it, and in a very rough sense if there are hoop's that need to be jumped through in order to do things.
Yeah, but sometimes, we would say that it's possible, even though it would require a great amount of work for less than satisfactory results.




Take for exemple bridge or tunnels: It's possible to make maps that looks like they have bridge and tunnels (I've done it).

But they're not real bridge or tunnels as you can't have land units crossing at different levels. Then some engine dev will say we can "just" MoveCtrl the units. Without mentionning that implies rewriting half the pathfinding and movement behavior code in Lua.

But if you play a bit with Spring, then you'll sense the map is 2D heighmap array with a texture projected on it, and that while you can hack around to fake tunnels or bridges, you'd better switch to another engine if you want true multi-level maps.




Or for exemples more relevant to your game:
  • Models have solid part. Good for robots, less good for organic units.
  • You can't have that many features (like wall segments) without lagging the game.
  • Everything out of games, such as overmap, linking battles to battles, is not handled by Spring, so you would have to code it (others have done it but I doubt you'll be able to reuse everything).

So if you want to make a game like Total War, best would be to mod Total War itself.
Coercing Spring into being Total War will be years of work for ugly results.
callmeandy
Posts: 14
Joined: 12 Mar 2012, 16:07

Re: Ancient Warfare Game

Post by callmeandy »

zwzsg wrote: [*] Everything out of games, such as overmap, linking battles to battles, is not handled by Spring, so you would have to code it (others have done it but I doubt you'll be able to reuse everything).
Appreciate this - all of the strategy elements are in the pipe and not a worry.
zwzsg wrote: So if you want to make a game like Total War, best would be to mod Total War itself.
Coercing Spring into being Total War will be years of work for ugly results.
Actually the RTS battle aspects of this game is secondary to the strategy. So much so that it had been penned as being a non-deliverable on the wish list.

However any tactical real time addition will make things more attractive. I just need to get a picture of the possible at the moment and I understand what you say about the balance between whats possible and what realistically doable.

Wouldnt it be good if I could mod the RTS component of Total War bolt it on to an MMO architecture and use this entirely outside of Total War - i.e opening it up to the mass online market for people that dont have a copy of RTW

Though I think I might run into some legislation problems!!
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7049
Joined: 16 Nov 2004, 13:08

Re: Ancient Warfare Game

Post by zwzsg »

Oh you wanna make a MMO? lol, good luck! :P

(Also, ZK did it! PW again!)
Post Reply

Return to “Game Development”