|
|
|
|
# 1
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
Theory: Mod Merging & Folder Trees
Rating: Rookie
Requires: Relic Mod Tools, specifically the Mod Packager, and also for you to have setup at least one mod ready for editing, preferably having done some modding on it too. In this tutorial I will be investigating the folder tree system, module files and also how to merge two or more mods together. When making a mod you will have a base mod data folder for it, this will be in your THQ/Dawn of War - Dark Crusade folder (assuming you are making a DC mod and assuming you haven't installed it anywhere funny). For the purposes of this tutorial it will be called YOURMOD folder. When you start the mod this will of course be pretty much empty as will just be a copy of the my_mod folder, but as you start to fill it up with modded goods you need to know where on earth you should be putting those things; the structure of the folder tree is very important and is integral to getting your mod working. OK, so how the heck do you find this structure out? The damn thing is empty right? And so are the other folders too...well, not quite. Take a look in the DXP2 folder which should be in the same bunch as YOURMOD folder, there's some archives in there, and it's those that will tell us the structure we need. Extracting an Archive Extract DXP2Data-SharedTextures-Full.sga using the Mod Packager. Open the packager, then open the correct .sga archives and extract the whole thing to a folder of your choice. ![]() This extracted archive will contain all the textures that are used on models on the game. It is these textures that people are editing when they talk about "skinning". OK, open up the extraction and head on in. You'll find that you've got to plow through a whole shit load of folders before you get to any real files right? I'll answer that in a minute. If you wanted to edit a texture you would go and find the texture you want to edit, the ones for the units are in Art/EBPS/Races/*somerace*/texture_share, and then edit it to your heart's content. Then you would need to recreate the folder tree from the archive in YOURMOD folder and place the new texture in the right folder. The archive itself should be considered as the DATA folder (hence all of them have Data in the name), which goes inside the mod folder, so the full path is YOURMOD/Data/Art/EBPS/Races/*somerace*/texture_share. The spelling should be exactly correct or it will not work, although capitals don't matter. You do not however need any extraneous folders that are empty in your mod; the folders are only needed if there is something to go in them (pretty obvious that though really). Note: Data/Art/EBPs is already made for you in My_Mod folder that you copied. ![]() The Combined Trees So why all the folders? Well, that's because that's not the whole Art folder. The Art folder is spread across most of the archives. Extract DXP2Data.sga to a different folder and you will see that is has an Art folder in it too. This Art folder should be considered as the same Art folder as in the other archive; the two archive's folder structure overlaps and shares folders. The Art folder contains, among other things, the icons, they are in Art/ui/ingame/*somerace_icons*. So if you wanted to edit a couple of the icons you would need to recreate this folder structure in YOURMOD folder so that they are in the right place. Remeber to consider the archive itself as the Data folder. The Art folder is already made for us however, it's the same one as before. ![]() Between them the archives contain the complete structure, many folders are shared across them like the Art folder, but the complete picture doesn't really matter as you only need to know the paths that are used by the things you are modding and know where they overlap. Take a look in the DXP2Data archive, in the Attrib folder. Look familiar? This is the folder structure that the Attribure Editor recreates as your mod the hell out of the game, it recreates this in....yep you guessed it YOURMOD/Data/Attrib. So basically: PLACE IT WHERE YOU FOUND IT!! If you edit something, create an exact replica of its original home, but inside your YOURMOD folder instead. This way it will overwrite the original without destroying it. This goes for all your files: camera files, icons, .screen edits, vis files, models. Whatever. Modules Dawn of War is modular, this facilitates easy modding of it. There should be at least 4 mod folders and 4 corresponding module files in THQ/Dawn of War - Dark Crusade: DXP2 folder, W40k folder, My-Mod folder and YOURMOD folder along with DXP2.module, w40k.module etc. The real game that you'd paid money for is in fact a module itself or two rather, the DXP2 folder and W40k folder make up the game together. (Note: for DC only modders, DXP2 contains all the info from Winter Assault and Dark Crusade, and w40k contains the info from the original DOW game albeit stripped down to avoid duplicate files). Now there's nothing in these folders really but the archives, but for now you should consider those fully expanded out inside their parent folders, using the proper folder structure. That is basically what they are anyway, they have just been compressed down. Anything in these folders (archives) is up for modding, you can fuck about with any of this shit, just remember to stick it your own mod folder or you could break your game!. RequiredMod Open up the DXP2.module file with a text editor (but you should know that already Now open up the module file for YOURMOD; the RequiredMods list has two mods in it this time. So, the engine first checks the mod folder for whichever mod has been activated, in this case it would be YOURMOD. After this it will now check DXP2 as that is the first in the list of required mods for YOURMOD, then W40k as this is next on the list. YOURMOD is piggybacking on DXP2. So any files that appear and are extra in DXP2 and then W40k (quite a lot most likely) will get loaded, for any files that clash between the folders, that have the same name and path etc. i.e. the stuff you've modded, the order of modules listed in the module file dictates which is used with the actual mod being activated taking overall precedence. In this case, YOURMOD will overrule DXP2, which will in turn overrule W40k - YOURMOD comes out on top. Imagine/picture each mod folder as a mapped out tree of files laid flat. W40k lies at the bottom, with DXP2 on top of it; any files and folders with exactly the same name and path will lie directly on top of each other. YOURMOD's folder structure, most likely much smaller, sits on top of DXP2 and again indentical file paths lie exactly on top of each other. In this way the files that have been modded in YOURMOD cover over the old versions in DXP2, which covers defunct versions in W40k (though I don't think there any, they've been stripped out). Any files that are not covered poke out into the light and are still showing and so get loaded. If your files in YOURMOD don't use the same file path and folder structure as DXP2 then they won't sit directly above the corresponding file, and it's then that things go wrong, mainly being that your file will get ignored. The game engine will following a file path dictated in another file and your new file won't be there, but the old one will. You can either make sure your file is in the right place, or edit the directing file to point to a new place where your new file will be. Generally the first option is easier: If the path ain't broke then don't fix it! Note: the Data folders are read first before any archives. This is dictated in the module file. If you place any real files in a correct folder structure in the DXP2 or w40k folders then it will override the corresponding file in the archives, without being a complete and separate mod. This is useful for things like skins and new maps which don't cause sync errors, and this is where they will tell you to put these. Any new maps you have will be in DXP2/Data/Scenarios/MP. Any skins will follow the structure laid out in the Texture archive we extracted earlier. Merging Mods To merge mods you basically need to slide another layer, one for each extra mod, into this little stack we've created. First decide which mod you want to be to one that you are actually playing: this mod should be the top layer. Any additonal mods go beneath this, then DXP2, then W40k at the bottom. To achieve this first open the module file of the mod you want to play. Then edit the RequiredMod list. The module associated with the file you're editing will be top automatically of course, then RequiredMod1, RequiredMod2 etc. e.g. YOURMOD.module file (<= top layer mod) Code:
Note how DXP2 is now RequiredMod.3, not 1: it's moved down the list. The main mods you'll want to merge will be race mods. These (theoretcally) will not overlap the existing files at all, they will simply add a whole new branch to the folder structure - there will be no files underneath them in the hypothetical stack, and none above either. Other mods may have clashing files and this is where stuff is going to get broken, the overlaying/overriding file from the mod on top may not be right for the mod beneath it, which will fuck it up. Sorry! A Patching Mod Another use it use a piggybacking mod as a test mod for your own mod. EG you have a large mod that is publicly released and instead of crapping up your version you create a patching mod that has your mod as a requirement. The patch mod will then only contain the changes you have made and you can easily find any errors you made that way or revert, all the while you can still multi with the real public version. When the times comes you can combine and compile and installer. Hope this has been useful. Not sure how necessary it was, but it felt good to get it down in text. It's pretty long winded and once it clicks it's all easy as pie, I just wanted to make sure it clicked! I may update this with more useful info about module files, some sneaky stuff, though only after some testing and research. Thanks. Last edited by Octopus Rex : 9th Feb 09 at 5:32 AM. Reason: added bit about a patch mod |
|
|
|
|
# 5 |
|
Banned
Join Date: Nov 2006
Location: @0,0
|
yes i know, but when you convert modules between versions, you have to do it in small steps, you have to pick the mod apart and change different bits. I merely told you a little part of the unit converting bits, because Im dumb for anything else, but maybe someone else can help you with the other bits.
|
|
|
|
|
# 6
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
Unfortunately there is no "Convert Mod to DC" button, Mikeel. Like Edvin said there's tons of small things that could be broken, some may cause fatal errors, some may not. There's no hard and fast set of procedures to converting, it's merely a case of finding out what is broken and then finding out how to fix it. Compiler and others are involved in converting Steel Legion to DC, and it's a huge task. Other mods and new models may not need any altering at all.
The main thing is that they don't work because they code has changed and modding sometimes got broken between patches and expansions. Relic didn't really tell us why stuff was now broken, it just was. So, I can't really write a guide on that, and don't really want to either. Sorry! |
|
|
|
|
# 7 | |
|
Member
Join Date: Sep 2007
|
Read through this, though I am having trouble. I have done what you have said about the RequiredMod part of the MODULE, since I want to merge Inquisition Daemonhunt and the Tyranid beta. So far, my MODULE looks like:
Quote:
Yet, for some unknown reason, when I try to open my mod in Dark Crusade, I get greeted by a message saying "Failure to activate the requested game". Was wondering if you could possibly help me to merge the mods, or maybe even write a step-by-step tutorial for those (such as I), who cannot get the two to merge. |
|
|
|
|
|
# 8
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
Well, first things first your w40k and DXP2 are the wrong way round.
Not sure why but my spidey sense is also telling me that you should put Tyranids above Inq: Daemonhunt because then the objectives mod will be on top of DXP2. Your archive stuff is needless too and may be causing you errors. You don't need all that gubbinz. Leave it as it is in the My_Mod.module file. The info you've put there is already in the other module files for the required mod. I don't know why people put that in there, the DXP2 module file doesn't list all the w40k archives does it? None of those archives are actually in your mod folder either so it's probably not going to find them. (Daemonhunt actually uses archives so it should have them in it's module file, but I don't think any others do.) (I haven't experimented with that all too much so feel free to correct me with other experiences modders) The DataFolder stuff: that's most likely wrong too, though it won't be screwing up the mod merge really. It should only be used when you've actually folders for all that stuff that you've made yourself i.e. are you using a Data_Sound folder? Or have you stuck with the normal 'one Data folder' approach? Try that then report back. ![]() Last edited by Octopus Rex : 21st Sep 07 at 4:59 PM. |
|
|
|
|
# 9 |
|
Member
Join Date: Sep 2007
|
I swear I had DXP2 over WH40K... easy mistake to make I guess, though I certainly feel silly now! I'll try what you suggested in the morning, then report back. Thanks for what you've pointed out so far though.
Edit: Done what you said. Changed DXP2 and W40K around, put ID, tyranids and Objective Points into the places you mentioned. Returned the Archives part back to normal, as well as the Data part. But I still get exactly the same message as before. I honestly do not understand this, since last time I tried this (before I reinstalled the game recently) I did the same as has been done now, and it semi-worked (got a Fatal AI Error back then). No idea why it won't even load now. Last edited by Silanoliel : 22nd Sep 07 at 5:57 AM. |
|
|
|
|
# 10 | |
|
Guest
|
Here, try out this one. Funny, I'm actually trying the same thing as you. Like you said, it works - as long as you don't tell the computer to play the Daemonhunters. You can have Tyranid allies, but you'll just have to play as Daemonhunter yourself =/ Otherwise - boom! Fatal scar error. Don't know how to fix it, but it sure is AI problem, because after that my Daemonhunter ally just stops dead in its track.
This was generated for my when I used the mod manager external program to launch both mods. Somehow for my game it doesn't work when I try to launch the game from Windows - I always have to activate them in-game. Nevertheless the external program provided me with a new module file, albeit in the wrong directory somehow (one folder "up" where DC is installed). Quote:
|
|
|
|
# 11
|
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
Silanoliel: sorry mate, didn't see your edit. I've just noticed you've used the wrong names for the mods. It is "inquisition_daemonhunt_DC" not "inquisition_daemonhunt". The folder is called the later, but you want to link to the module file, which has the DC bit on the end! Same goes for objective_points_DC.
absque_deau: Quote:
This is incorrect. You are running Dark Crusade and telling it that it requires itself, among other things. Also, like I said before, you don't need all that junk in the middle. Setup your own unique mod file and folder and run it from there. Last edited by Octopus Rex : 25th Sep 07 at 2:35 AM. |
|
|
|
|
|
# 13
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
No, you should leave them as they are, keep your my mod folder for your own mod stuff. They should be fine. Just be careful when modding the GKs as the INQ mod fiddles with them and swops them for veterans or something (Compiler - you naughty frenchman! NAUGHTY!
)Last edited by Octopus Rex : 22nd Oct 07 at 5:42 PM. |
|
|
|
|
# 14 |
|
Member
Join Date: Apr 2006
|
Yeah,compiler did change the Relic GKs to Deathwatch Veterans.
Anyway,for my personal mod(im not going to distribute it,it will be installed on my com only),i would like to remove those vets in my own personal mod and replace back the old GK.I want to do it just to get used to those tools.Is there any tips of doing that? Besides,after trying to merge those 2 mods,the Tau Commander have been replaced by another unit.How do i change it back to Tau Commander? To moderators,please dont delete my post,im just trying to learn to use those tools. |
|
|
|
|
# 16
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
No.
Why have you put objective points above daemonhunt? Although it may not actually matter. Also, stick the AI below the others as they will have updated AI (i.e. above DXP2). Don't just pick a random order, think about the order carefully. |
|
|
|
|
# 17 |
|
Member
Join Date: Apr 2006
|
Ok,i guess i still dont really understand how to arrange my module files.
Based on the My_Mod module that i have posted,My_Mod's data folder will be loaded first,then,which mod will be load?dowai or W40k? Besides,which sequence does those mods load?Does it load RequiredMod.1 first,then,RequiredMod.2, and so on or it's the other way round? Do correct me if im wrong.Thanks. |
|
|
|
|
# 18
|
||
|
Ouroboros-in-training
Join Date: Jul 2006
|
Quote:
Also, remember the whole 'stack of mods' analogy and think like that. YOURMOD is the TOP module of the stack. You know this gets loaded first (you just said it did). The engine does not suddenly jump to the bottom of the stack - that would be a shit analogy. Quote:
|
||
|
|
|
|
# 20
|
||
|
Ouroboros-in-training
Join Date: Jul 2006
|
Quote:
Quote:
|
||
|
|
|
|
# 21 |
|
Member
Join Date: Apr 2006
|
Yeah,i have read though the whole thing a few times and i was kinda confused with the module thing.Hope i understand it now.
Alright,then,why did you suggest me to put the ai mod at the bottom of the race mod? The reason i put the ai mod on top of the race mods is to let my mod to use the latest ai core files in the latest edition of ai mod,instead of using the older version of the ai core in those race mod. |
|
|
|
|
# 23 |
|
Member
Join Date: Dec 2006
|
It works for me and the Daemonhunt mod. I'm making my mod(its like table-top mods, just its "black library books" based on books like Space Wolf series). I add Daemonhunt and it loads nicely . Compiler told me that I can use his mod this way only(so I cant put extract the files to the mod and upload it to the net) which is fine for me, since it means my mod dont have to be that large( It is nearly 2 gigabytes, but on Daemonhunt it only contains my new "Golden Eagle" Deathwatcher skin file) .
However I'm going to add Firestorm,Steel Legion and Witch Hunters the same way, what order should I choose at loading? Load Daemonhunt first? or Firestorm, Steel Legion? Last edited by DeusImperator : 1st Nov 07 at 12:24 PM. |
|
|
|
|
# 24
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
In theory they should not overlap seeing as they are race mods. Steel Legion will be fine, but there's a conflict between daemonhunt and firestorm, namely the GKs. Experiment with daemonhunt on top first, then firestorm and see which works out best. Other than the GKs conflict, it should be fine.
|
|
|
|
|
# 25 |
|
Member
Join Date: Dec 2006
|
Thanks!
Somehow Space marine banners get IDH banners for space marines race...dont know why other banners work fine. And also If there is a Deamonhunt player the Space marine Deathwatchers use the DH teamcolours too. Module: [global] UIName = Astartesglory Description = Playable = 1 DllName = WXPMod ModFolder = Astartesglory ModVersion = 1.0 TextureFE = TextureIcon = DataFolder.1 = %LOCALE%\Data DataFolder.2 = Data DataFolder.3 = Data_Shared_Textures\%TEXTURE-LEVEL% DataFolder.4 = Data_Sound\%SOUND-LEVEL% DataFolder.5 = Data_Whm\%MODEL-LEVEL% RequiredMod.1 = inquisition_daemonhunt_DC RequiredMod.2 = objective_points_DC RequiredMod.3 = DXP2 RequiredMod.4 = W40k Last edited by DeusImperator : 1st Nov 07 at 3:04 PM. |
|
|
|
|
# 26
|
|
Ouroboros-in-training
Join Date: Jul 2006
|
Hmm, not entirely sure why that is happening, but I'm pretty certain that it's got something to do with the Deathwatch troops and the objective points_DC mod. As I haven't actually mucked about with Daemonhunt myself I couldn't say exactly how to fix it for sure. You'll probably need to some kind of hex editing and duplication to eliminate the team colour bleed. Not sure where though.
Last edited by Octopus Rex : 3rd Nov 07 at 6:29 AM. |
|
|
![]() |
|
|||||||
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|