Jump to content

Modding Armor to add Grappler property - issues


JDDysart

Recommended Posts

Progress Update:

 

Edit:

 

Verified - the eAP_Grapple property (in the DGC.ini, either loading or changing the cooked in copy) already DOES add the Grapple to the Left Wrist of the modded armors - at least visually!

 

This much is already working, without additional modding; now I would like to get the control (on tactical missions) to function properly!

 

Okay, seem to have the 1st mod patched into my game, but the game appears to have not yet used it! :(

 

Going back through the mod talk forum I did find some old discussions on modding the grapple to work with various armors - with the same results that I have so far achieved.

 

What I didn't see anyone mention is that adding the eAbility to an armor puts the Grapple function after the small-item functions; whereas the Skeleton and Ghost Armors have it before the small-item functions. Not exactly certain just what this may mean, but I suspect that it is a clue on how to go about making a Grapple work (properly!) with other armors. So now I believe there to be two avenues to approach this on: Find where the eAbility_Grapple gets added to the tactical function queue -or- track down just where the armors (with a eAP_Grapple property) are being added to a soldier's tactical loadouts, as a proper mod at either (or both) of these locations should get the job done.

 

So, to anyone with knowledge of the scripts in XComGame.upk and/or XComStrategyGame.upk: Can you point me any closer (than an entire upk-file) to the scripts (functions?) that I should be looking at?

Edited by JDDysart
Link to comment
Share on other sites

There might be some clues in the article "Additional_Items_Mod". However, this was a VERY early attempt hacking the ResourceCache, which means it was prior to our understanding how to enable the use of the INI file. The implementation mechanism will almost certainly need to be revamped but the basic discoveries should still be valid for EU. See also "BuildItems_File_Changes_Additional_Items_Mod" and "Strategy_Charges_File_Changes_Additional_Items_Mod". Also related, but probably not relevant to your line of inquiry is "Weapons_Config_File_Changes_Additional_Items_Mod".

 

-Dubious-

Edited by dubiousintent
Link to comment
Share on other sites

Okay - it is "Honest Injun" time!

 

Has anyone else already solved the issue with getting eAP_Grapple to work properly on armors other than Skeleton and Ghost in Enemy Unknown?

 

:ohmy: The answer I found seems so simple that I find it hard to believe that someone else hasn't already produced a mod (patch?) for this? :huh:

Link to comment
Share on other sites

"Simple" in retrospect does not equate to "obvious". It's taken you 10 days of mucking around in the code. Most people never get beyond trying something in the DGC.INI file once or twice. Understanding how the system works in just that one simple respect is a major undertaking, and (for what it was worth) the benefit of four years of prior delving preserved in the wiki and forums. Congrats on sticking to it.

 

If it's simple enough we can put it into the "How_to_DIY_common_mod_solutions" article. OTOH, if you care to write up what you discovered about how the system handles such changes, we have several articles on "mods" as well as a "template" article file you can use as a guide. Or just pass the info to me and I'll write it up with some cross-references.

 

-Dubious-

Link to comment
Share on other sites

First, the 10 days (2 weeks?) that I spent "mucking around in the code" was mostly teaching myself how to compose pseudo code for the UPKTools; during which I just happened to notice a fairly large elephant in what seemed to be an awfully small room. I'm sure the Long War modders couldn't have missed this - whether they realized the significance is a good question - then whether or not they would have passed it on is yet another question.

 

Second, I have attempted to place a small (yet highly technical) blurb in the "How_to_DIY_common_mod_solutions" article (How to get the eAP_Grapple property to work properly with any Armor); hopefully it isn't so technical that a moderator kicks it back out! -Dubious- please feel free to simplify (clear up any misconceptions in) my blurb, if you see any way to do so.

 

Third, I am currently trying to determine how to properly document and package a mod that will standardize the initialization of the Armors available to the XCom Forces. I'm thinking the "template" that you linked to would be a good way to start with the documentation phase - but I'm not quite sure of just where to paste the template to? - for the purpose of modifying it? I'm thinking of naming this mod something like STD-XGArmor-Initializations? Suggestions welcome?

 

Further info: standardizing to 3 Large Item slots, 4 Small Item slots, and 2 Specials (Grapple and Psi Source) slots; with all 9 of these enabled - for the armors at the beginning of the DGC.ini file. I'm thinking the 3 Large Item slots are primarily for a Rocketeer with a Standard Rocket, a Shredder Rocket, and a primary(?) firearm?

 

Edit:

 

Okay, I've got a wiki page, "Armor Initialization Modding - XCOM:EU 2012", started.

 

I'll add some more to it, after I get past a (longer-or-shorter) nap.

Edited by JDDysart
Link to comment
Share on other sites

Re: the DIY article. I wouldn't worry about "too technical". There are others just as complex. The only suggestion (other than the edits I already made) would be to place a heavily commented but functional PatcherGUI file that actually makes the change for a "new" specific armor, so people can see how to implement your instructions. The "How to customize Zhang" entry is a very minimalist example. And for an example of "heavily commented" I suggest looking at several of the mini-mods included in wghost81's "XCOM Interface and Game Tweaks" downloads. In particular the "Soldier Gender" and "Soldier Nationality" Probability tweaks, which similarly require the user to interpret the general instructions into specific instances and are in pseudo-code as well.

 

I see you found the "Guidelines_for_new_posts" article (or deduced it's principles for naming articles). That article name is quite suitable.

 

When you get to the point of packaging to upload to the Nexus, I suggest you do a Nexus search for "ReadMe generator". Whether you use one or not, they will generally give you a good idea of what you need to include on the download page description, as well as the mod documentation. The template for a wiki article is not really suited to the "salesmanship" you need on a download page description. Though I would expect you could use some of the information from it in building the page description.

 

-Dubious-

Edited by dubiousintent
Link to comment
Share on other sites

Seems I've run in to a bit of a stumbling block: indented Programming Code that I'm wanting to add line numbers to? but the wiki o-list function doesn't seem to be all that compatible with this sort of indented "list"! ... seems to reduce both tabs (when one finds a way to get them into the wiki) and multiple-spaces to a single space, more-or-less eliminating the desired indentation(s)! The various combinations of ":" characters and a single "#" character, that I have attempted, haven't yet worked for me.

 

Example:

 

// End:0x33
if(m_kInventory == none)
{
m_kInventory = Spawn(class'XGInventory');
}

 

Now I'm wondering if there is an easy answer? or if I'm going to have to go to a "brute force" method of adding said line numbers?

Link to comment
Share on other sites

Thanks, I did see that.

 

For my example I'm wanting each and every line numbered (for reference to a particular line)?

 

// End:0x33
if(m_kInventory == none)
{
m_kInventory = Spawn(class'XGInventory');
}

Should have 5 line numbers, all at the same level / indentation, on the left; with my example code using the same relative indentation to the right of the list numbers - each line hopefully still on the same line as a list number!

 

Maybe a single line <pre> </pre> or <code> </code> would work?

# <code>// End 0x33</code>

# <code> if(m_kinventory == none)</code>

etc.

Except - I believe these both prevent word wrapping if the line length exceeds the display width?

Link to comment
Share on other sites

Oh! You want to have your code 'line numbered'. The idea behind wiki line numbering is that it will automatically adjust when some new lines are inserted into the existing list. That should not be the case with "code".

 

In this situation, I would edit it in Notepad++ (or similar programming editor) with 'line numbering' enabled. Perform the indentation in NP++ as well, so when you copy and paste into the wiki page both are already there. "Code" tagged blocks are essentially "nowiki" blocks. Which why we have to come up with so many workarounds for it.

 

You do realize you can combine formatting codes like "#" or "*" with indents (":"), as in ":*" or "*:" or ":#"? Though indenting and blank lines reset the line numbering.

 

And I am not aware of any satisfactory solution to word wrapping of code lines so they conform to code indenting, other than doing so manually. In which case it is usually better to do so outside of the wiki HTML, as in NP++, and past the result into a "code" block.

 

-Dubious-

Edited by dubiousintent
Link to comment
Share on other sites

  • Recently Browsing   0 members

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