Jump to content

UPK Utils bug?


amaciel81

Recommended Posts

When I use HexToPseudocode over UIMissionControl_UFOAlert.UpdateData, I got the following output:

 

 

 

//This script was generated by HexToPseudoCode decompiler for use with PatchUPK/PatcherGUI tool
UPK_FILE = xcomstrategygame.upk
OBJECT = UIMissionControl_UFOAlert.UpdateData : AUTO
[REPLACEMENT_CODE]
/*(0x0000/0x0000)*/ 0F 00 <.kAlert> 19 1B <GetMgr> 4A 16 [@] <XGMissionControlUI.m_kCurrentAlert> 00 ( 01 <XGMissionControlUI.m_kCurrentAlert> )
/*(0x002A/0x001E)*/ 0F 00 <.colorState> 45 19 19 19 2E <Class.XComHeadquartersGame> 19 12 20 <Engine.Engine> [@] <Engine.Engine.GetCurrentWorldInfo.ReturnValue> 00 ( 1C <Engine.Engine.GetCurrentWorldInfo> 16 ) [@] <Engine.WorldInfo.Game> 00 ( 01 <Engine.WorldInfo.Game> ) [@] <XComHeadquartersGame.GetGameCore.ReturnValue> 00 ( 1B <GetGameCore> 16 ) [@] <XGStrategy.GetHQ.ReturnValue> 00 ( 1B <GetHQ> 16 ) [@] <XGHeadQuarters.IsHyperwaveActive.ReturnValue> 00 ( 1B <IsHyperwaveActive> 16 ) [@] ( 2C 0A ) [@] ( 2C 03 )
/*(0x00BC/0x0088)*/ 1B <AS_SetTitle> 12 20 <XComGame.UIUtilities> [@] <XComGame.UIUtilities.GetHTMLColoredText.ReturnValue> 00 ( 1B <GetHTMLColoredText> EB 35 <XComGame.XGTacticalScreenMgr.TText.StrValue> <XComGame.XGTacticalScreenMgr.TText> 00 00 35 <XGMissionControlUI.TMCAlert.txtTitle> <XGMissionControlUI.TMCAlert> 00 00 19 1B <GetMgr> 4A 16 [@] <XGMissionControlUI.m_kCurrentAlert> 00 ( 01 <XGMissionControlUI.m_kCurrentAlert> ) 16 00 <.colorState> 4A 16 ) 16
/*(0x0137/0x00DF)*/ 1B <AS_SetContact> 12 20 <XComGame.UIUtilities> [@] <XComGame.UIUtilities.GetHTMLColoredText.ReturnValue> 00 ( 1B <GetHTMLColoredText> EB 35 <XComGame.XGTacticalScreenMgr.TLabeledText.strLabel> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 25 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16 00 <.colorState> 4A 16 ) 35 <XComGame.XGTacticalScreenMgr.TLabeledText.StrValue> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 25 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16
/*(0x01CE/0x0142)*/ 1B <AS_SetLocation> 12 20 <XComGame.UIUtilities> [@] <XComGame.UIUtilities.GetHTMLColoredText.ReturnValue> 00 ( 1B <GetHTMLColoredText> EB 35 <XComGame.XGTacticalScreenMgr.TLabeledText.strLabel> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 26 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16 00 <.colorState> 4A 16 ) 35 <XComGame.XGTacticalScreenMgr.TLabeledText.StrValue> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 26 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16
/*(0x0265/0x01A5)*/ 1B <AS_SetClass> 12 20 <XComGame.UIUtilities> [@] <XComGame.UIUtilities.GetHTMLColoredText.ReturnValue> 00 ( 1B <GetHTMLColoredText> EB 35 <XComGame.XGTacticalScreenMgr.TLabeledText.strLabel> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 02 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16 00 <.colorState> 4A 16 ) 35 <XComGame.XGTacticalScreenMgr.TLabeledText.StrValue> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 02 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16
/*(0x02FE/0x020A)*/ 07 [@label_0x0571] 9A 00 <.colorState> 2C 0A 16
/*(0x030E/0x0216)*/     1C <Core.Object.ParseStringIntoArray> 35 <XComGame.XGTacticalScreenMgr.TLabeledText.StrValue> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 05 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 00 <.speciesList> 1F <%t "//"> 27 16
/*(0x0358/0x0244)*/     [#label_0x0358]
/*(0x0358/0x0244)*/     07 [@label_0x044C] 96 00 <.I> 36 00 <.speciesList> 16
/*(0x0370/0x0254)*/         07 [@label_0x03EF] 96 00 <.I> 2C 06 16
/*(0x0380/0x0260)*/             0E <Core.Object.ConcatEqual_StrStr.ReturnValue> 61 42 00 <.formattedSpecies1> 10 A5 00 <.I> 16 00 <.speciesList> 16
/*(0x03AA/0x027A)*/             07 [@label_0x03EC] 82 96 00 <.I> 2C 06 16 18 [@] ( 96 00 <.I> 36 00 <.speciesList> 16 16 )
/*(0x03D4/0x0298)*/                 0E <Core.Object.ConcatEqual_StrStr.ReturnValue> 61 42 00 <.formattedSpecies1> 1F <%t "    "> 16
/*(0x03EC/0x02A8)*/             [#label_0x03EC]
/*(0x03EC/0x02A8)*/             06 [@label_0x0449]
/*(0x03EF/0x02AB)*/         [#label_0x03EF]
/*(0x03EF/0x02AB)*/         0E <Core.Object.ConcatEqual_StrStr.ReturnValue> 61 42 00 <.formattedSpecies2> 10 A5 00 <.I> 16 00 <.speciesList> 16
/*(0x0419/0x02C5)*/         07 [@label_0x0449] 96 00 <.I> 36 00 <.speciesList> 16
/*(0x0431/0x02D5)*/             0E <Core.Object.ConcatEqual_StrStr.ReturnValue> 61 42 00 <.formattedSpecies2> 1F <%t "    "> 16
/*(0x0449/0x02E5)*/         [#label_0x0449]
/*(0x0449/0x02E5)*/         06 [@label_0x0358]
/*(0x044C/0x02E8)*/     [#label_0x044C]
/*(0x044C/0x02E8)*/     1B <AS_SetHyperwaveData> 01 <@m_strHyperwavePanelTitle> EB 35 <XComGame.XGTacticalScreenMgr.TLabeledText.strLabel> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 03 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16 35 <XComGame.XGTacticalScreenMgr.TLabeledText.StrValue> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 03 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> EB 35 <XComGame.XGTacticalScreenMgr.TLabeledText.strLabel> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 04 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16 35 <XComGame.XGTacticalScreenMgr.TLabeledText.StrValue> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 04 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> EB 35 <XComGame.XGTacticalScreenMgr.TLabeledText.strLabel> <XComGame.XGTacticalScreenMgr.TLabeledText> 00 00 10 2C 05 35 <XGMissionControlUI.TMCAlert.arrLabeledText> <XGMissionControlUI.TMCAlert> 00 00 00 <.kAlert> 16 00 <.formattedSpecies1> 00 <.formattedSpecies2> 16
/*(0x0571/0x039D)*/ [#label_0x0571]
/*(0x0571/0x039D)*/ 1B <UpdateButtonText> 16
/*(0x057B/0x03A7)*/ 04 0B
/*(0x057D/0x03A9)*/ 53

 

 

When I try to apply this code, I got the following error:

PatchUPK
Opening package ...
Package file: /home/alexandre/.local/share/Steam/SteamApps/common/XCom-Enemy-Unknown/xew/xcomgame/cookedpcconsole/xcomstrategygame.upk
Package opened successfully!
Searching for object named UIMissionControl_UFOAlert.UpdateData ...
Object found!
Unresolved reference: [@label_0x0358]
Invalid/empty data!
Execution stopped at #2 command named [REPLACEMENT_CODE].
However, clearly the reference to label_0x0358 exists, it's in 8th line of replacement code block. Someone knows why it is doing this?

 

Regards,

Edited by amaciel81
Link to comment
Share on other sites

Yes I still have a project pending named XCOMModUtil. It's all-in-one thing with GUI support and some bugfixes/enhancements. I had big plans for this utility, but then Witcher 3 got me completely distracted :) and when I returned to modding XCOM Firaxis announced XCOM2. Kinda discouraged me from returning to this and I still can't bring myself to continue my work, sorry. :( I mean, I'm happy about XCOM2 and all the new modding possibilities, but still.

Link to comment
Share on other sites

Yep -- the trick with market studies is that to generate interest, anyone should find real potential for worthy development & a target (real and as wide as possible) customer base.

 

I also highly suspect XCom2 will grab a fair chunk of all our leasure times along with most Modding projects we ever wished to work on.

Although i must say that two major things are currently occupying my mind -- LW-Pedia & Campaign-Summary. Sooooo happy right now about some results we're getting... still, there's no way to predict if & when something will reach release status.

I just hope we'll get enough done *BEFORE* the catastrophic tornado (in a good sense) of a new gameplay brings us to our knees while we also figure out the juicy SDK details and how it should revolutionize our customization grasp over mucho-more-gringo-fun to deal with.

 

We also have to remember the tragedy of Hex-Editing restrictions (EU+EW+LW) and the pain vs gain ratio we all had to cope with & against.

 

Thus... if you ever feel the need to restart work on your "XComModUtil" stuff, good luck and i'll be sure to check out for these tools. I believe some of us will *STILL* plan to enhance LW even further -- with your help, we'll be 150+200% more efficient at anything... grab a shovel, we've got work to do.

 

All the best coders are here. Including our precious phantom from frozen solid Russia.

 

I've always got this motto when preparing for projects -- DO IT!! Now. :wink:

Edited by Zyxpsilon
Link to comment
Share on other sites

  • Recently Browsing   0 members

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