Page 1 of 2

Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:22
by Twilight
I would like to port/convert my Total Annihilation mod (Total Annihilation: Twilight) over to Spring, and was wondering if there was already a specific thread or tutorial that would help walk me through what is needed. There are a lot of tutorials I've seen while looking around, but many do not cover TA mod conversion specifics.

I did see there used to be a TA2Spring tool that would do a basic conversion of most things, but that it no longer works and has been deprecated (And I can't find a place to download it, in any case).

I've been working on this mod for about 5 years now (from back when it was an unofficial update to the Absolute Annihilation mod), and feel like it's time to open up the possibilities and options for this mod that the Spring engine allows.

Any direction or help in getting started (And specific things to watch for or pitfalls to avoid) would be much appreciated. Thank you! (And if this is the wrong area for this post, I apologize, and request that it be moved to the right place.)

Twilight

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:36
by FLOZi
Do you have any custom textures?

If not, most things are straightforward, to get working, but be prepared to spend some time ironing out bugs.

The hardest part is getting anyone to play it, but seen as it's yet another AA->UH->OTA ripoff, that might be easier. :wink:

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:48
by zwzsg
Create the folder /TA_Twilight.sdd/ inside your /mods/ folder
Inside put a file named modinfo.lua with the following content

Code: Select all

return {

		game = "Total Annihilation",
		shortGame = "TA",

		name = "Total Annihilation: Twilight",
		shortName = "TA:T",
		version = "2.0",

		mutator = "Save/Load",
		description = "Port of the fork of the mod",
		url = "http://www.tauniverse.com/forum/forumdisplay.php?f=152",
		modtype = "1",

		--depend = { "SomeFile.sdz", "OtherFile.sd7", },

	}
- Add a ModOptions.lua (you don't need much in it at first)
- Add \LuaRules\draw.lua
- Add \LuaRules\main.lua
- Add a gadget to spawn the start units


- Unpack Totala1.hpi, BTdata.ccx, CCdata.ccx, Rev31.gp3, and the .ufo of the six last cavedog units.
- Merge their contents, making sure that the overwriting followed the priority: Totala1.hpi > BTdata.ccx > CCdata.ccx > Rev31.gp3 > 6 last units
- Delete /AI/
- Delete /Anims/ then recreate it later for cursors
- Delete /Bitmaps/
- Delete /Bitmaps-French/
- Delete /Bitmaps-German/
- Delete /Bitmaps-Italian/
- Delete /Bitmaps-Spanish/
- Delete /Camps/
- Delete all the contents of /Features/ save /Features/All Words/ (Dragon Teeth) and /Features/Corpses/ (Units wreckages)
- Delete /Fonts/
- Delete /Guis/*.FNT
- Delete /Palettes/
- Delete /Textures/ (not before converting them, see below)
- Delete everything that is not a .FBI inside /Units/


- Recreate /Anims/ and add in it all the cursor*.bmp
- Unpack all the /Textures/*.gaf into /UnitTextures/tatex/*.bmp with GafDump.exe -B
- Write a /UnitTextures/tatex/teamtex.txt (list of textures that are team color)


- Remove /Gamedata/AllSound.tdf
- Remove /Gamedata/BuildInfo.tdf
- Remove /Gamedata/Category.tdf
- Remove /Gamedata/Help.tdf
- Remove /Gamedata/Los.tdf
- Remove /Gamedata/Meteor.tdf
- Remove /Gamedata/Translate.tdf
- Remove /Gamedata/UnitView.tdf
- Remove /Gamedata/Version.tdf
- Remove /Gamedata/Weapons.tdf
- Cleanse /Gamedata/SideData.tdf of all the GUI info

- In TA, the sidedata.tdf buildtree is overwritten by the *.gui buildtree. Therefore, the buildtree of the seaplants defined inside rev31.gp3 /gamedata/sidedata.tdf is not followed, and instead TA follow the buildtree of the seaplants defined in CCdata.ccx /guis/ArmPlat1.gui and CorPlat1.gui. Difference include the hawk/vamp instead of the freedom fighter/avenger, and the regular air cons instead of the seaplane air cons. Similarly the the Core Cons Sub was replaced by the Core Cons Ship. However Spring follows the sidedata.tdf instead of the *.gui, and so the buildtree is wrong. To fix that problem modify /gamedata/sidedata.tdf so as to reflect the TA buildtree we're accustomed to.
- Add SmoothAnim=1; in every /units/*.fbi
- Add an Armor.txt


After that the bulk of it will be ported. But you will have to spend a hundred more times to fix all the little things that don't work quite exactly the same in Spring.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:49
by Twilight
FLOZi wrote:Do you have any custom textures?
That's a good question. Almost all of the units used in TA:Twilight were either OTA units or ones pulled from Unit Universe, although sometimes heavily modified. I focused most of my work on the balancing of the mod, and didn't really mess with the textures as I received them. I would think they'd all be OTA texures. Is there a way I would know otherwise?
If not, most things are straightforward, to get working, but be prepared to spend some time ironing out bugs.
Yes, I figured it would take some fiddling with. What I was hoping to do is do a general conversion/port of everything over to Spring, so that's it at least working (albeit buggily), and then go back through and start fixing any individual errors/bugs/unforseen consequences that may be evident once it is on Spring.
The hardest part is getting anyone to play it, but seen as it's yet another AA->UH->OTA ripoff, that might be easier. :wink:
Well, we had/still have a reasonable playerbase (For a TA mod) for the current TA version, and I thought this might be a way to shed some of the difficulties/quirks of the TA engine. At best, it will be a fun new take on things that people may enjoy and like playing. At worst, I'll still be able to enjoy it, personally, and learn something in the process.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:53
by Twilight
zwzsg wrote: <extensive list of things to do>
Thanks so much! I haven't had a chance to read through it all yet, but this is the sort of list I was hoping to find.
After that the bulk of it will be ported. But you will have to spend a hundred more times to fix all the little things that don't work quite exactly the same in Spring.
Ah, yes, I expected as much, but one small step at a time, I suppose.

Again, thank you!

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:53
by MidKnight
TWIIIILIIIIGHT!
YAAAAAAAAAAAAAAY!



:mrgreen:

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 19:57
by zwzsg
Twilight wrote:
FLOZi wrote:Do you have any custom textures?
That's a good question. Almost all of the units used in TA:Twilight were either OTA units or ones pulled from Unit Universe, although sometimes heavily modified. I focused most of my work on the balancing of the mod, and didn't really mess with the textures as I received them. I would think they'd all be OTA texures. Is there a way I would know otherwise?[/quote]Many UU units have custom textures. You can know by looking if you have any /textures/*.gaf that aren't from Cavedog.

But the best is simply to:
- Get GafDump.exe
- Merge all /Textures/ folders from all Cavedog and Twilight hpi, ccx, gp3, ufo (using the proper priority).
- Unpack all the /Textures/*.gaf into /UnitTextures/tatex/*.bmp with GafDump.exe -B

Because anyway Spring doesn't ship with TA textures anymore, and most TA derived mods have now switched to better looking model sporting new textures.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 20:10
by FLOZi
Btw, no point doing this:

Add SmoothAnim=1; in every /units/*.fbi

As it is removed in 0.83.x

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 20:17
by Pxtl
Iirc, isnt' TA Twilight a fork from Absolute Annihilation?

If so, I'd rely heavily on the work already done ironing out all the TA => Spring conversion bugs provided in BA.

I'd just take the BA files and then merge your FBI files against the BA ones, giving you a copy of your stats against the BA unitset. Then on a unit-to-unit basis test the scripts + model to see if yours works better or if BA provides a close-enough behavior or if you're going to have to fix your old unit for Spring to get the behavior you need.

Then worry about your added units.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 20:23
by zwzsg
Lots of evolution happened between AA for Total and current day BA.

And even if BA inwards are comparativley simple next to, let's say, ZK, it's still a huge mess of gadgets, lups, CEG, etc.. that would confuse anyone who's only modding experience is TotalA units stats tweaking.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 20:24
by Johannes
So what's the mod like?

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 20:24
by Gota
Is TA twilight=TA escalation?
Cause if it is...
This is freaking amazing:
http://www.youtube.com/watch?v=Ro16ZIWI ... re=related

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 20:27
by zwzsg
Gota: No, not at all. Escalation is good, with tons of new models created only for it, new scripts, innovative tricks. Escalation is a merge of TheRegisteredOne's Talon and Wotan's TAWP (performed by both respective author, not by a fourth party)

Twilight is just a fork of Absolute Annihilation, so your usual big dump of random unit, with a focus on who care about looks, I got epic balance!

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 21:11
by Twilight
Johannes wrote:So what's the mod like?
zwzsg wrote:Twilight is just a fork of Absolute Annihilation, so your usual big dump of random unit, with a focus on who care about looks, I got epic balance!
Gee, I'm not quite sure how to take that, although it's not necessarily an unfair statement... :)

From the TA:Twilight website (http://twilight.tauniverse.com):
What is Total Annihilation: Twilight
Put simply, TA:T is an extension of OTA (Original TA), balancing old units and adding in new ones, as might have happened had Cavedog (The maker of Total Annihilation) not gone out of business and continued to update TA. Take a look at some of the features of TA:T:
(http://twilight.tauniverse.com/features.html)

TA: Twilight strives to make all of the original units useful, as well as adding in new ones to fill strategic roles, all while keeping the original TA feel. While there are many units, they have been added for the purpose of filling specific roles and to generally improve gameplay and fun, and not just so we can say we have lots of units. The idea is that every unit should have a good reason to be built and used. There are some units that are more specialized, and whose ideal situation may not happen all of the time, but the goal is to never have a unit that is just not worth building, either because it is worthless in the first place, or because other units do what it does just as well. Some overlap is fine, as long as each overlapping unit has a solid reason to be built in and of itself.


From the Absolute Annihilation Twilight Betas to Total Annihilation: Twilight
Here's the short summary of where we came from:

Twilight had been a player of the Absolute Annihilation mod for quite a while (Which was itself descended from the very popular UberHack TA mod), but when Caydr, the maker of Absolute Annihilation, decided to stop supporting the OTA version and only release new versions for the Spring engine, Twilight asked for permission to continue to work on AA and release new versions of it.

Caydr granted this permission, and so since about November of 2005, Twilight had been maintaining and releasing "Twilight Betas" of Absolute Annihilation, which continued to fix bugs and adjust balance issues found in AA version 6.0. For a few months the forums had been hosted at Caydr's own website, http://www.caydr.com, but an announcement on the front page of the site on January 30th, 2007 stated that he was too busy to keep the site going, and was going to let it lapse. The "Twilight Betas" had changed things substantially since Twilight had taken over development, and he wanted to avoid confusion between the latest "Beta" (Released February 13th, 2007) and the last "official" release of Absolute Annihilation for the TA engine (Instead of the Spring engine), which was put out in the summer of 2005. Because of this, Twilight had been planning to break off and rename the mod, so that he could drop the tenuous "Beta" pretense, and just develop this new mod officially. Caydr's announcement sounded like a good excuse to get that moving, and so, with deep thanks to TAUniverse's gracious hosting, Total Annihilation: Twilight began!

Since taking over in November 2005, Twilight released about 12 new "beta" versions of the AA mod, ending with Twilight Beta 5.7. Instead of 5.8, the next version was Total Annihilation: Twilight v1.0, released in March of 2007. TA:T is now up to version 1.9 (As of March 12st, 2011), and Twilight continues working with the community on fixing bugs, balancing units, adding in new units to fill needed roles, etc.
The best way to get a feel for it is to try it out, which is why I'm working on getting it going on Spring. Balance is a very subjective thing, and I realize it may not be to everyone's tastes, but I have been working on balancing the mod for multi-player for years, and have spent many hours carefully thinking over the balance changes and additions I have made.

This doesn't mean that the changes are necessarily right, or the best, but it does mean that I haven't made them without giving them a lot of thought, and seeing them playtested in actual multi-player games. That's the best I can do, really. :)
MidKnight wrote:TWIIIILIIIIGHT!
YAAAAAAAAAAAAAAY!


:mrgreen:
Um...thanks, I think? Have you played TA:T before, or...? Don't misunderstand me, I appreciate your enthusiasm, but I was just wondering what I had done to deserve it. :)

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 21:51
by oksnoop2
Oh I thought he was making a twilight vampire joke or something... Anyway good luck.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 21:51
by zwzsg
Don't forget to browse the wiki. Click "Development" on the menu bar at the top of this page, then click "Game Development", then follow all the links.

Also, this may be a useful starting point: http://springrts.com/wiki/SpringTutorialGame

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 21:53
by hoijui
did you try any Spring mods yet? for example BA?
if you would like BA except balance, then it might really be worth to start with that.

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 22:18
by smoth
Any particular reason why you do not want to work from ba as a base? 90% of the two will probably be similar outside of the handful of units which are purloined from unit universe?

Your balance you talk about, be ready to throw that away. This isn't TA and the maps have fairly different resource values.

Expect everyone to compare it to AA which was your base so the ba comparisons are not unjustified

Are you ready to devote years to a project that will be marginalized due to saturation of the very small player base who already has a TA fix.

Have you tried the other spring projects to see what this engine can do? I am not talking only the TA variants

Not trying to be mean just putting that out there
Gl hf

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 22:55
by FLOZi
I'd just take the BA files and then merge your FBI files against the BA ones, giving you a copy of your stats against the BA unitset. Then on a unit-to-unit basis test the scripts + model to see if yours works better or if BA provides a close-enough behavior or if you're going to have to fix your old unit for Spring to get the behavior you need.
Pretty sure BA is lua now, but he could surely find an old version of BA or even AA to do this with.

Most importantly you have a thick skin.

Welcome to Spring. :wink:

Re: Converting/Porting a Total Annihilation mod over to Spring..

Posted: 06 Jul 2011, 23:31
by Forboding Angel
MidKnight wrote:TWIIIILIIIIGHT!
YAAAAAAAAAAAAAAY!



:mrgreen:
Troll Successful. :lol: