Jump to content

Added 2 additional Characters - download inside.


Kurukaze
 Share

Recommended Posts

After some work with Resource Hacker and a HEX-Editor I finally did add 2 minor characters to the Rebellion pool - Mara Jade (IMP) and Kyle Katarn (REB).

 

http://www.teutloff.net/zip/charupdate.zip

 

We're talking about 31 characters per side now, no replacement or editing of an existing unit that now is no longer available.

When trying this file, please be sure to read the included ReadMe, especially the known issues part.

 

With that much achieved, other needs show up:

- An editor like RebEd but capable of accessing ALL units in a .DAT file and not just a limited number of units. Further, it would be great if this editor could actually recompile DLLs so name entries etc. get extended or cut to the fitting string length.

 

- Someone who knows how to create an installer that is capable of opening an existing DLL to add an entry and recompile and save the DLL, so this patch could be applied without overwriting existing changes.

 

- Knowledge about the structure of the TACTICAL.DLL. While the DLLs this patch is replacing order the characters Major Reb, Major Imp, Minor Reb and Minor Imp, the TACTICALL.DLL uses some sort of broken alphabetical order (looks like they forgot Brandei and added him last) with no room to add character information in between. However, the images inside TACTICAL.DLL are hardwired - the 2 new characters do not mess up the order and do not get the image of someone else assigned. Thus, the programm "knows" somewhere how the units are linked into the TACTICAL.DLL - solving this will lead to new units added without limitations. (Except for star fighters because of the just 4 available flight groups red, green, blue and gold. Dealing with this can wait however, getting the images placed into the TACTICAL.DLL and getting rid of the error-message should be priority.)

 

Feel free to try this patch, but remember to backup your current files before applying it.

Link to comment
Share on other sites

This is most excellent dude! I'm right in the middle of an exciting game I don't wish to disturb at the moment so am not at liberty to test this, but feel free to approach me or I suspect the rather talented artistic wonder god Lord_La_Forge if you need any image requirements! :)
http://www.jahled.co.uk/smallmonkeywars.gif
Link to comment
Share on other sites

Sadly no. RebEd does not access the new characters. RebEd is hardwired to the standard "locations" of saved data - that is why if you change unit names with RebEd the name sometimes gets cut off or in other cases is filled with blanks.

 

As I said, a newer editor with a non-static data access would be needed. But before that - the last pointer must be found. What to look for:

 

Example Ma'w'shiye:

The .DAT file lists this character entry as "857" which is 089 003 in bytes.

Also, the .DAT file refers to the string table entry, "10841" which is 089 042 in bytes.

The .DLLs of the encyclopedia have all of this characters entry at resource "6745" which is 089 026 in bytes. The entry "6745" is also used for the character extra picture in the STRATEGY.DLL

The GOKRES.DLL use the resource entries "2649" (089 010) and "19033" (089 074) for the small pictures used in the status window and the fleets/systems, as well as entry "31321" (089 122) for the assigned prison bars that will be overlayered if this character is captured. (Yes, for some reason every character has its own set of prison bars, but just one picture for enroute and injured state is used)

Back to the STRATEGY.DLL, the strings for command ranks (commander, admiral and general) are referred to as "37465", "38489" and "39513" which are 089 146, 089 150 and 089 154 in bytes.

So the second byte is used as some sort of flag-byte, always pointing to the related resources with a "base" of 089.

The TACTICAL.DLL however has Ma'w'shiye listed at "2232" which is 184 008 - a total break of the structure used elsewhere. Even worse, the characters are listed in a different order from the other DLLs. What is needed to add that last picture is some sort of table, telling Rebellion to use TACTICAL.DLL resource 2232 with string table 10841, unit type 857 or encyclopedia material 6745. A simple add to this very table with the new resource in the TACTICAL.DLL and the related entry of the new unit type (in Kyle Katarns case, 858) and the complete addition of a new character is done.

Problem: That table does not necessarily need to use this numbers - it could be possible that an index-structure is used with numbers/adresses I haven't found at all yet. Further, this table could be hardwired into Rebellion itself and thus be not editable. In total, by now this table is more of a problem than the addition of the 2 characters was. But maybe someone already stumbled over it not knowing what it could be and remembers now.

The most probable locations - in my opinion - would be:

- TACTICAL.DLL as this one started the structure break.

- STRATEGY.DLL as there are other character image inside that RebEd does not edit, prolly obsolete material not used in the game. Nonetheless, this images are not in the structured order as well.

- REBEXE.EXe as I already said it could be hardwired.

 

A tiny chance exists that it is in one of the .DAT files though not many of them are large enough, and not many of them are left of which it is still unknown yet what sort of data they contain.

 

And, there is the EMSPRITE.DLL - it should not have anything to do with this, but:

Character images in the TACTICAL.DLL range from 2200 - 2266 (with some gaps in it) and then the next resource is 2300. Funny thing is in the EMSPRITE.DLL there is a resource group ranging from 2200-2266 as well - and then the next resource is 2300. Maybe just a coincidence, but worth a look - just I did spent so much time looking at byte-cluster, I'm atm out of my ability to read them :? So maybe I already found what I'm looking for but didn't recognize it.

 

Any help in finding this table-sort of resource is greatly appreciated.

Oh, and the table may be even larger, as it could contain the relations to troop and specforce images in the TACTICAL.DLL as well (they are in there in quite some disorder) as maybe the relation between capital ship and 3dmesh-resource.

Link to comment
Share on other sites

Hello, yesterday i've tried to find these Katarn and Jade things.

I've found them in the strategy.dll --> 6746 & 6812.

 

As i see, for the rebels we have slots from 6720 to 6784.This would allow to insert even above 60 characters.

As for the imperials we have slots from 6784 to 9001. Here we would insert even more imperials, as for the rebels.

 

We have problems in the Tactical.dll

As u said here we have slots from 2201 to 2266. Only five positions are free : the 13,24,38,52 and 59. But maybe this allow only 5 extended persons, to be fully visible in the space battle - if we find the relation between the dll's.

I didnt think that we could extend somehow the number of the characters...only if we found a way to use in the Tactical other slots, but we can show its locations in the other dll's(if is possible - maybe this is hardcoded in the rebellion.exe - then we cannot do nothing)

 

I've tried also to add a character : i've done the inserts in the strategy,encytext,textstra,gokres,encybmap and tactical DLL's.

However i didnt see the character - maybe is also needed to modify something in that Mxxxx.dat file, what we copy in gdata.

Maybe this gdata contains the stats of the characters, after my opinion.

And without stats the game didnt see "my" character.

 

How do u use, and with wich program, that DAT extension ?

How du u can tell the stats of the characters for the game ??????

 

I've also tried to remade Kyle and Mara in Photoshop, to look better in the game, but the result was a bunch of several colors, nothing seen in the game. I suppose, that u allready modified them with a program...

Can u send the authentic pictures for that 2 characters ?

I will remade them to look better ;)

 

My e-mail adress is : hulyeallat@gmail.com

As i see, that u sent the pics, to your adress i will send a few Reloaded characters(made by Lord La Forge), but, with new system and battle pictures, remade by me.

Link to comment
Share on other sites

The MNCHARSD.DAT needs to be extended by 148 byte per character. These carry the information of the character as explained by vakundok in the "Inside Rebellion" post. I edited the values using a HEX editor. The .DAT also must be modified in the 4 DWORD header, increasing the ammount pointer by one (also explaned by vakonduk) in

 

http://www.swrebellion.com/forums/postt284.html

 

I think the MNCHARSD.DAT was explained on page 2.

 

If a table entry could by found, we can leave the remaining gaps in the TACTICAL.DLL and use resources in an completely different range for the images there - as these resource numbers aren't calculated but just pinpointed. The character amount limitation is much more present in the calculated pointers.

 

I have to look up the orginal files. It was some quick work, more to present the mechanic than anything else. Kyle is from a Jedi Knight II screenshot I think.

 

At the moment I'm thinking about moving Thrawn and Mara Jade to the major characters, offering the Empire 4 major (immortal) chars like the Rebellion has. In that case, I'd need to fill up the spares with 2 new imps to keep the total of (then) 32 chars per faction. Again, I don't think adding these chars is the main problem anymore, but getting the reference to the TACTICAL.DLL is.

Link to comment
Share on other sites

Right now, i didnt understand too much about this table contents, but i hope that u will be able, to solve this misterious thing :)

 

I am very courious , if u can add 2 major characters to be immortal.

 

I am courious, how do u set the character stats, and their rank.

 

I hope, u will find that Mara Jade and Kyle Katarn pictures :)

 

Btw, u can told your e-mail adress , i can send the cards.

Link to comment
Share on other sites

  • SWR Staff - Executive
If you're using an image in Rebellion, you want to make sure you keep Rebellion's 256 color palette.

Evaders99

http://swrebellion.com/images/banners/rebellionbanner02or6.gif Webmaster

http://swrebellion.com/images/banners/swcicuserbar.png Administrator

 

Fighting is terrible, but not as terrible as losing the will to fight.

- SW:Rebellion Network - Evaders Squadron Coding -

The cake is a lie.

Link to comment
Share on other sites

  • 1 month later...

I have tried to add further characters to Kurukaze's additional 2.

I followed his lead by adding the BMP's to all the .DLL's referred to above.

 

However, I can't work out the .DAT file as Hex editing is my weakness.

 

I have tried to work out how to use Hexplorer referred to in the post linked above.

 

I now realise I don't know where to start with a Hex editor.

I appreciate that everyone who can, would be more than happy to explain how, but I really can't get it.

 

Working on the assumption that all the additonal bitmap pictures have been added to the next available slots as Mara Jade and Kyle Katarn, (6747 & 6813) is there anyway someone could mod the character .DAT file so this can be downloadable and just dropped in to enable 34 characters or above?

 

If you really need editing experience then I'm going to have to make do.

Link to comment
Share on other sites

  • 10 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

Copyright (c) 1999-2022 by SWRebellion Community - All logos and trademarks in this site are property of their respective owner. The comments are property of their posters. Star Wars(TM) is a registered trademark of LucasFilm, Ltd. We are not affiliated with LucasFilm or Walt Disney. This is a fan site and online gaming community (non-profit). Powered by Invision Community

×
×
  • Create New...