Jump to content

"Back porting" LW features to EW


walrusWrangler

Recommended Posts

As a preface, I'm pretty new to EW modding, and I haven't actually tried playing LW yet. I don't really have the desire to, for a number of reasons. One being that I'm simply not done enjoying EW yet.

I'm not going to get into the politics of LW. Suffice it to say, it's not for everyone. However, as someone who enjoys modding games, it's frustrating to see so many good mods that conceptually would work with EW which are locked to LW, unusable without also accepting their radical changes to gameplay that make XCOM a completely different beast. What LW has done with the closed off engine of XCOM is amazing, and I have a lot of respect for their accomplishments. However, I'm also pretty pleased with EW's vanilla game balance.

I'm mainly talking about general use features, like the various UI upgrades, soldier customizability options (Gender, Nationality, and Class aware name lists? More soldier nationalities and voices? Yes please), and various other QoL mods.
A lot of them do have EW compatible versions, but there's still enough that don't, or have gimped EW versions due to lacking LW modding features.

 

I hope that discussing this isn't seen as some sort of attempt to take a hatchet to LW and sell its organs piecemeal on the street. I just want to try to make XCOM, and XCOM modding, a better experience for all users, EW and LW alike.
=============================
There are two aspects to this that I can see:

  • Cutting LW specific aspects out of currently existing mods
  • Seperating LW's changes that support extended modding capabilities from their other changes
  • Placing the organs on ice and reaching out to grey market contacts

=============================
Cutting:
I don't know much about making XCOM mods from scratch, but I have a decent amount of programming skill, and a lot of experience tweaking mods for interoperability (mainly with Morrowind and Doom). I guess I'm just looking for where I would get info on how to start tweaking mods to strip out LW specific components.
=============================
Seperating:
I understand that some things will not be possible from the outset because LW exposed, added, and otherwise reworked a lot of things under the hood to remove a lot of limitations and to allow for much more possibilities with modding. As a sort of stretch goal, I'd like to learn how to seperate that from the gameplay changes if at all possible, to open up the extended options currently available to LW modding out to general EW modding.

=============================

Any guidance or help would be greatly appreciated.

Link to comment
Share on other sites

The thing about LW mods is that much of it required rewriting existing functions (blackbox and otherwise) within the game. Those rewrites are often "re-purposing" of existing "non-essential" (debug, multiplayer, tutorial, etc.) vanilla code. All of this was necessary because it took a long time (years) to figure out a way to expand the size of the game executable without breaking everything, and the game just did not provide a mechanism for modding or making code changes. Every change originally had to fit within the existing code blocks without changing the size of the jumps. There are other limitations, like the inability to add new variables (you have to re-use existing ones that are accessible within that block of code). An LW specific mod generally relies upon extensively rewritten code that only LW has available. Otherwise the authors made vanilla mods available. Remember, ALL mods that are more than INI edits are changes to the hex code of the game. LW mods are changes to their own "changed from vanilla" hex code.

 

Rather than trying to reverse engineer the 60,000 or so lines of LW code changes, I would suggest you search the "Mod Talk" forum for "R&D" subject threads where the LW developers (and others) discussed the things they learned in their explorations, along with the subject related articles in the wiki, and try to develop your own version of the mods in question. With the better tools currently available, perhaps you will find a better way.

 

The wiki was created to preserve the information discovered about the game code. For anyone wishing to get into creating their own mods, I suggest starting with the "Category 0: Start Here" articles.

 

-Dubious-

Edited by dubiousintent
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...