Writing an Adventure in multiple modules

Freeform discussion about anything related to modding Transcendence.
Post Reply
User avatar
Mutos
Militia Lieutenant
Militia Lieutenant
Posts: 218
Joined: Thu Aug 14, 2008 3:31 am
Location: Near Paris, France
Contact:

Hi all,


I'm beginning my adventure writing. But in fine, it will include a massive bundle of data. I would like to break it out in multiple XML files so as not to have a single, mammoth file that will get undebuggable...

How can this be done ? I have worked out some ideas, on which I would like to get your advice. I would distinguish different kinds of data :
- XML data that will constitute the adventure itself and must be in the <Adventure> module,
- XML data that override vanilla data and must therefore be in the <Adventure> module, in order not to break anything outside of the adventure,
- XML data that are used only by the adventure and not referenced in vanilla game, and thus can be put in <Extension> modules of reasonable size,
- Resources like images and sounds, that are better kept in a common subfolder for the entire adventure pack, itself split in distinct subfolders for each <Extension> module and maybe split further along module logic if need be.

Then, the adventure pack would consist in a set of XML files and a subfolder with a tree structure inside it, all this to be distributed in a packed file and directly unpacked into the Extensions folder.

What do you think about this way of organizing the adventure data ? Is there something that, as a Transcendence modding newbie, I may have overlooked ?

EDIT #1 : what about using Modules in an Adventure, like the ones that are included in the Transcendence.XML file ? Does anyone know if it is possible ?
@+

Benoît 'Mutos' ROBIN
Hoshikaze 2250 Project
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

You are somewhat limited in what can be done due to the nature of extensions.

Version 099 has changed some things, most specifically you can put topologies in a new adventure extension format, and everything else in there (in the same file) runs only in that adventure.

Normal extensions apply to any game, adventure extensions only apply to the particular adventure.

What I have been doing is keeping all the little components for an adventure extension in their own mod extensions in a development set up- a transcendence folder that I work on the mod ideas in.

Once I have tested and debugged, I plan to integrate the files into the adventure extension for a release version- which unfortunately creates a single, large, hard to work on file. But who needs to work on it? I keep the development files handy and can upgrade/debug as needed.

I also did this in 098- but I worked on a lot of mods that required an "unpacked" version of transcendence where I went ahead and created modules for specific things.

I kind of prefer that way, but a lot of people never unpack the game and get frustrated when having to do some extra work to install a mod.

With the new format, adventure extension can handle everything I want to do, but require that all the parts be integrated into a single file.

So- while working on a mod, break it down into little mod extensions that are easy to handle, and plan your release as a package- if you want to extend ALL the games with your mod, release a regular extension. If you only want your adventure extension to have the extra content, compile it into a single file when you release it. If you really want to get into involved changes AND create an easy to work on format, release your mod as an "unpacked" version complete with modules, full access to xml redesign and all the missing bits.

As far as images go you do have the freedom to place the resources in sub folders in the extension folder- which is a good thing. :)
User avatar
Mutos
Militia Lieutenant
Militia Lieutenant
Posts: 218
Joined: Thu Aug 14, 2008 3:31 am
Location: Near Paris, France
Contact:

Hi Periculi,


Thanks for the information. I hope the next release will extend the use of Modules to the Adventure files, this is where they would be most useful !

Anyway, unpacking the source was the first thing I did, it's much easier this way, I totally agree with you. But what do you mean when you say "require the unpacked version" ? I thought Transcendence took its data in only 1/ the TDB, 2/ the extension folder, and unpacking the source was just there for example.

One other thing I ddn't completely understand is the last part of what ou said :
If you really want to get into involved changes AND create an easy to work on format, release your mod as an "unpacked" version complete with modules, full access to xml redesign and all the missing bits.
The italics mark what I didn't understand. Unfortunately, that's the very meaning of the sentence :( Do you mean I should release both development and final versions ? I don't care if someone uses my Adventure content in other extensions, but I wouldn't like to change anything in the regular game or other mods when people install my Adventure !
@+

Benoît 'Mutos' ROBIN
Hoshikaze 2250 Project
User avatar
Periculi
Fleet Officer
Fleet Officer
Posts: 1282
Joined: Sat Oct 13, 2007 7:48 pm
Location: Necroposting in a forum near you

you can run the game from TranscendenceSource folder by adding the .exe and the sound file.

This is what is referred to as an "unpacked" version. Rather than using .tdb format, the game loads and uses the xml files. So- they are not just for reference.

You can get around some of the extension limitations by altering the game source xml. For example, in transcendence.xml you can find global tables that define the planetary structure used by all the systems. (where in a system it says <Lookup table="DesertWorld"/> it is referring to this global table)

You can't change that global table in an extension. You can alter it in the xml, which you can then release as an "unpacked" version.

You can add new modules to the game in this manner.
User avatar
Mutos
Militia Lieutenant
Militia Lieutenant
Posts: 218
Joined: Thu Aug 14, 2008 3:31 am
Location: Near Paris, France
Contact:

Hi Periculi,


Thanks for the answer. As far as possible, I'll keep with regular Extensions and Adventure, and try to avoid resorting to Unpacked versions. Future may prove it needed, but I hope not. It'll be a matter of how I'll use the provided Globals.

However, I've added the ability to break Adventures down into Modules to the WishList for future versions.
@+

Benoît 'Mutos' ROBIN
Hoshikaze 2250 Project
Post Reply