Jump to content

Kurukaze

Members
  • Posts

    17
  • Joined

  • Last visited

Legacy Profile Fields

  • INTERESTS
    Playing Bass guitar, writting, computer stuff, church, friends

Kurukaze's Achievements

Apprentice

Apprentice (3/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

0

Reputation

  1. I'll try to upload a guide for you guys on how to change the .DAT in a save way. However, you need to be sorta secure when using a HEX-Editor Greetings to ArwenEvenstar of SciFi-Forum for keeping me awake btw
  2. The newly added units have an encyclopedia entry, so basically it's possible, yes. Just atm it's much working with HEX and DLL editors.
  3. Just wanted to let you know that I'm trying to define a new type of mission at the moment. I was wondering if someone tried this by now, and what difficulties were experienced while doing so.
  4. A quicky, I added a total of 5 fighter types to the Empire using one of the Rebel fighters OK until, the game crashes upon Tactical engagement. old post reply, but so am I. Yes. Indeed. Use auto resolve to make it work? Nonetheless, I check back on my questions. Thanks. And yes, I think "autoresolve" could be the workaround for all remaining problems, as the TACTICAL.DLL sorta starts a game within the game. For a complete MOD-project with more units, maybe the "take command"-button should just vanish. "Take command" starts a game within the game so to say. This "second game" is the key problem, as I have not found files/tables/entries that specify the communication between these two game-parts.
  5. Well, for the worst part of the answer: I have not found anything like a link table yet, and I'm finally out of places to look for them The TACTICAL.DLL and the rest of the game seem like 2 different parts - nearly 2 different games. So, the only thing that can be added without any "non functional" part around are facilities. For units - personal and army alike - the will have no image in the tactical space fight, representing them in the "cargo slot" of ships in the fleet. For star fighters, mixed groups have not been thought off by the programmers, the splitting into 4 groups mainly basing on fighter type also is kinda hardcoded. So, if a MOD would disable the tactical space fight by default, this mod could run with vast types of units without the player noticing any "non functional" parts - except for the player may miss the tactical battle (I know some players always simulate results, I know for other players it is the most fun part of the game). This is just for programmers that could think of a pure building strategy game without real time elements.
  6. 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.
  7. 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.
  8. While I'm sadly still stuck with the TACTICAL.DLL and finding the pointers between units in the "main part" of the game and their images in the DLL, I started thinking about difficulties that may ocurre when adding additional types of units. Facilities: Facilities don't get transported on star ships so they don't have any bitmap in there. Further, the only way to search them via the GUI is the galactic display. If this display works via the family-pointer in the .DAT files, there is NO limitation for additional facilities. Advanced Mines and Advanced Refineries are coming to mind instantly, advanced ion cannons, Laser batteries level 3, a shield system looking like the one the rebels used at Hoth, maybe rebel only etc .... Future by now, but it's prolly the unit type that can be added without interferring with the GUI at all. Sadly, it's also the most "boring" one .... Star Fighters: Fighter squadrons as well don't have references to special "finders" as facilities. However, they are "very" hardwired into the TACTICAL.DLL - 4 fighter groups per side in the GUI there. So more than 4 types of star fighters within one fleet could lead to seriuos problems. Further, additional models would be needed. I haven't done any model-exchanging yet, so any help from people with experience doing that would be great. The most important questions: Are there pointers within the DLL? Is there a way to point from a 3d-mesh resource to the according texture-resource? Anyone out there who tried playing with 5 types of fighter squadrons using RebEd exchanging one of the existing types or have one type of fighter squadron work for both factions? Capital Ships: Starcruisers etc don't have a problem with finders in the "main game" as well. The fleet finder either brings up references to fleets or single ships, ordered by name, not type. Additionally, ships get assigned to task forces in the tactical game which do not have problems with mixing ship types. So to successfully add a starship, just the 3d-model problem - adding a model to the TACTICAL.DLL is simple using Resource Hacker, again we need that pointers location - needs to be solved. Troops: The troop finder is limited to 5 types of troops per side. When using more troops, these simple do not get displayed there, rendering the troop finder useless when heavily adding troop types. Not that this would be much of a problem - it's just not a "100%" implementation. Additionally, troops have the same problem I'm trying to solve in the character-patch by now: An image inside the TACTICAL.DLL that leaves system sturcture of the main game, thus is wired into the game via some sort of pointer-table. Special Forces: As the troops, the personal finder is limited when it comes to special forces units. While characters are just presented in an alphabetical list, the special forces are displayed with a static table limited to 4 types of special forces. Thus, the personal finder would be useless as well when heavily adding new units of special forces. And of cause, the problem with the TACTICAL.DLL comes up here as well. So the following types of units have no GUI problems within the "main game" : Facilities Characters Star Fighters Capital Ships These types of units have no GUI (images, buttons.... ) problems inside the tactical display: Facilities Capital Ships These types of units have no 3D-Model problems inside the tactical display: Facilities Characters Troops Special Forces Anyone thought of other problems? Other suggestions?
  9. Good guess, but I don't think that's it. Whenever I run the game in "windows mode" (even the original vanilla version) I get those same errors whenever the tactical space battle starts. So, I don't believe it has anything to do with your mods. It's just a compatibility error with the "window" Ok, there is no error message running in full screen mode. If even the standard version gives that error, I guess that's one issue less So the last problem is: If an image gets added to the TACTICAL.DLL, where is / should be the pointer to the referring unit ?
  10. 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.
  11. Took some time to clean up the BMPs. They look much better now, and the blue blurr is gone. I'll update the zip within the next days as I hope to get rid of the bug-message in the Encyclopedia as well. Tested the behaviour of the tactical fight: The game does not crash (windowed mode) but gives a "the pixel format was invalid as specified" message - twice, so my guess is one message per new unit. So the game tries to look up the pixel in the TACTICAL.DLL, just now I need to find out at which adress it looks up - or better where a unit gets an adress assigned. Looks like this is the final information needed to fully add new units - except for star fighters, and again the problem is inside the TACTICAL.DLL - star fighters get split up and assigned to groups (gold red blue green) by type first. Now if you come in with 5 types of star fighters the game would run out of groups to assign them .... So what we know by now is that the game loads up the required graphical elements when switching between the main screens - options, command centre and galaxy map. Prolly due to minimize memory usage back in a time when machines had 32? 64? MB of RAM.... EDIT: Assitional Update: I found the Bug-Message. It's the next entry following the one after Mara's encyclopedia entry, and resource hacker for some reason forgot to add in a 00 00 block to divide the entries. A simple recompiling fixed it. With this done, we have quite some space for additional characters available and are not running into some hardcoded limitations as I feared when the message showed up. The only limitation left is the TACTICAL.DLL now. Is there a chance that some of the modell-modders run into entries that are neither textures nor wireframes ? It could be possible that the table type resource I'm looking for is somewhere among that entries in the TACTICAL.DLL itself. Another EDIT: I'll start a new thread with the title "Additional Units" and the fresh download inside, so some more people will have a look. I also updated the link in this thread in my earlier post.
  12. So, I'm running tired and getting sloppy, forgot to add a "how to" to the archive. I put this here: EDIT: http://www.teutloff.net/zip/charupdate.zip The rebupdate.zip contains: EDATA.193 EDATA.194 ----- put these 2 into (yourpath)\Rebellion\EDATA MNCHARSD.DAT ----- put this one into (yourpath)\Rebellion\GDATA ENCYBMAP.DLL ENCYTEXT.DLL GOKRES.DLL STRATEGY.DLL TEXTSTRA.DLL ----- put these into (yourpath)\Rebellion If successful, the Empire will have Mara Jade around, while the Rebels get Kyle Katarn - additionally, not overwriting existing chars. BEFORE using these - backup your current settings Information/Known Issues: I used this on the BASIC files of Rebellion, no other patches attached, not even the official update. The bitmaps were done in a hurry so they have sadly blue "frames" around the characters, and one of the Kyle BMPs shows the full blue background. I'll fix that later, I was more into the mechanics while doing this. Mara Jade's encyclopedia entry gets an automated "If you can read this you should report a bug"-message added. I'll look up where this may come from. I did not add bitmaps to the TACTICAL.DLL so the game might crash when trying to take command in a space battle and Mara or Kyle is on one of the ships. I need to get more information about how the TACTICAL.DLL is structured or if there is a table around where the resource numbers get allocated to the chars. So with this additional things available - does anyone know if there is a newer version of RebED on the launch ? Would be great if I could edit additional characters with the card system instead of using a HEX-Editor.... Last but definetly not least: BIG THX to vakundok for posting this detailed information about the structure of the .DAT files in the GDATA directory. It is this information that made it possible for me to solve the generic part of "Add a new Unit". What's left is details. And @ Lord_La_Forge: I'll try ADDING Z-95 Headhunters for the Alliance next, but this would prolly take a week or something. I have to HEX all the values of the units into the .DAT files. And again - though it would be no problem to add an entry to the TACTICAL.DLL, I don't know WHERE to add that entry or HOW to link it to the unit. So again there is the risk of a crash when taking command in a space battle. If two of you people could set up a fast multiplayer game and run recruting to see if BOTH sides can get to 31 chars before recruitment is done that would be great. There is still a tiny chance of a total cap of 60 character units maximum per game, though I really doubt it. EDIT: I updated the link to the new package which has a ReadMe included now.
  13. Scratch 1 - Name problem is solved. It had something to do with arrays/pointers. Not sure if there isn't another problem coming up - still have to test that in a multiplayer enviroment. It may be possible still that recruitment stops as soon as there are 60 characters in total around, though I doubt it - 'cause of the structures in DLL and strings. Speaking of structure - the TACTICAL.DLL proves difficult. As far as I get it, the reserved space for characters - both minor and major - is ranging from resource 2200-2299 limiting them in total to 100. This would still leave room for 40 additional characters, but the structure used in that DLL differs from the others. Assumption: The tactical space battle was developed by another production unit and the existing game parts were later sorta hardwired into another. So what I'm missing is some sort of table offering a junction between eg Villar's 10907-ID from the MNCHARSD.DAT and also found in the TEXTSTRA.DLL to his 2262-entry in the TACTICAL.DLL - but .... .... this problem shouldn't affect gameplay as long as you do not use the tactical console So what I'll do now is: Add 2 characters - one Imp, one Reb - to the original game files, start a game, see if I can recruit up to 31 one chars again, and then packup the DLLs, the MNCHARSD.DAT and the images for the EDATA-directory into a zip, upload it somewhere and post a link here. Should be done within the next 24 hours unless I get a sleep attack.
  14. Ok, I gave it a shot.... and added a unit - a minor char. things that do not work: 1 - the name does not get displayed, even though I added it in the TEXTSTRA.DLL with resourcehacker. Also when applying command functions, the then "new" name does not get displayed either. 2 - the TACTICAL.DLL as well as the not yet in RebEd bitmaps of the characters - prolly not even used in game - do not use the structure of the other DLLs. For 1, I'll do some tests with crosslinking in the MNCHARSD.DAT to see if this is a problem of array-dimensions.... For 2, there must be a table that holds information about what tactical bitmap is assinged to which unit. finding this table would be a great step towards getting behind the last secrets of this game. The result I have at the moment is an additional rebel minor char, succesful entry of background in the encyclopedia files and a correct assignment of images. The unit gets recruited and can perform all types of missions.
  15. Ok sadly this post is a month old, but a possible soluiton - not with rebed though - to disable the events could be changing the "family" pointer in the major character dat. you would need a HEX editor to do so. The family pointer is described in the following thread: http://www.swrebellion.com/forums/postt284.html Some mechanics define classes about this sort of ID-numbers, so at least for Han and Leia changing that value to the one of minor characters (56 I think) could solve the event-problem - this would disable the "millenium falcon" effect as well though. Now for Luke, changing the value could prove fatal as he is among the "victory conditions" of the standard game. I'd say change Han's value, start a game and leave the character you used to replace him on a planet for 200 days, normal cases some bounty hunters would show up. Also, try a confirmed move of that character to another system and see if it still moves faster than other characters do.

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...