Jump to content

UE Explorer 1.2 Suggestions


EliotVU

Recommended Posts

  • Replies 86
  • Created
  • Last Reply

Top Posters In This Topic

Hey again,

 

If anyone is interested or wondering on how to contribute/help with UE Explorer, I have written several bullet points on how: http://eliotvu.com/forum/showthread.php?tid=61&pid=338#pid338

 

I'm sure it would be a great deal of work, but any hope you might take a crack at integrating a decompiler for all the swf / actionscript in the upk files? That controls a good bit of the Xcom UI. (I have no idea whether other games do, but I thought I'd throw it out there ... see the UI Editing thread for what we've been able to do.)

 

Cheers!

 

I've been lurking that thread sometime ago, I didn't even know SWF files were available in the .upk files :P Although this looks complicated and definitely too much effort to decompile another language, but I guess maybe in the future I could definitely have it clean it up ready for exporting so you can then decompile that file by a third-party more easily!

Link to comment
Share on other sites

Hey again,

 

If anyone is interested or wondering on how to contribute/help with UE Explorer, I have written several bullet points on how: http://eliotvu.com/forum/showthread.php?tid=61&pid=338#pid338

 

I'm sure it would be a great deal of work, but any hope you might take a crack at integrating a decompiler for all the swf / actionscript in the upk files? That controls a good bit of the Xcom UI. (I have no idea whether other games do, but I thought I'd throw it out there ... see the UI Editing thread for what we've been able to do.)

 

Cheers!

 

I've been lurking that thread sometime ago, I didn't even know SWF files were available in the .upk files :P Although this looks complicated and definitely too much effort to decompile another language, but I guess maybe in the future I could definitely have it clean it up ready for exporting so you can then decompile that file by a third-party more easily!

 

That would be great! Thanks for considering it. Now if we could only find those pesky native functions ...

 

Only other suggestion I would offer: Is it possible to have UE load a upk and then close its access to the file?

 

It is only a matter of convenience, but right now after making a hex change in Notepad++, I have to not only close the upk in UE as in 1.1, but also shut down UE entirely before Notepad ++ will allow me to save the change. Otherwise, Notepad++ complains the file is open in another program.

 

(I can, of course, restart UE, open the upk, and see the effect.) It would be easier and a time-saver if I UE let go of the file itself after loading it into memory, and then allowing me to reload it after saving changes in Notepad ++.

 

Regardless, many thanks for all your efforts!

 

Best

John

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...

Eliot,

 

A couple of suggestions, based on my experience with XComStrategyGame >> XGStrategyAI >> AIAddNewObjectives

 

Here's how it appears in UExplorer 1.2.2.1:

 

 m_iCounter = 0;
    iMonth = GetMonth();
    // End:0x82
    if((UnresolvedNativeFunction_253(iMonth, 2) == 0) || World().m_kFundingCouncil.HasActiveCampaign())
    {
        AddCouncilMission();
        // End:0xD5
        iNumCouncil ++ );
        {
        }
        AddNewTerrorMission(AI().DetermineBestTerrorTarget());
        iNumTerror ++ );
    }
    iNumUFOs = 1;
    iNumAbductions = 1;
    // End:0x141
    if(STORAGE().EverHadItem(180))
    {
        AddLateMission(iNumCouncil, iNumTerror, iNumUFOs, iNumAbductions);
    }
    // End:0x1A5
    else
    {
        // End:0x1A5
        iNumAbductions ++ );
        {
            // End:0x1A5
            if(((GetMonth()) < 3) || Roll(class'XGTacticalGameCore'.default.EARLY_UFO_CHANCE))
            {
                iNumUFOs ++ );
            }
        }
    }
    // End:0x204
    if(iAbductionsAdded < iNumAbductions)
    {
        iNumUFOs += (iNumAbductions - iAbductionsAdded);
    }
    // End:0x258
    if(iNumUFOs > class'XGTacticalGameCore'.default.UFO_LIMIT)
    {
        iNumUFOs = class'XGTacticalGameCore'.default.UFO_LIMIT;
    }
    arrVisibleTargets = DetermineBestVisibleTargets();
    AddUFOs(iNumUFOs, arrVisibleTargets);
    AddNewOverseers();
    //return;    
}

 

 

It appears that UnresolvedNativeFunction_253 (FD) is in fact the modulo function, as the events that happen under the condition occur every other month.

 

Second, I believe the decompiler is tripping over the A5 (++) function, specifically the 16 at the end. When it encounters one, it does not include the next line of code, as there are commands that show up in the hex viewer (and are executed in the game) that do not appear in the object view. (that's why there are the { } with no commands appearing; they're in there, just not appearing in the decompiler).

 

Thanks again for your hard work.

 

Cheers,

JL

 

Update: Eliot's suggestion below did the trick. Thanks! Learn something new ...

Edited by johnnylump
Link to comment
Share on other sites


Change your NativeTableList right on the status bar to the latest UDK or the one generated by this community(search the forums).

 

Thanks for appreciating my work :)

Link to comment
Share on other sites

I have been unable to install UE Explorer because I have a 'directory junction' on C: to relocate the Public Folders to another logical drive on the same physical volume. The installer you are using then complains the path to the 'Default Desktop' is too long. So apparently everything installs fine except the desktop icon, which causes an abort and backs out the installation. Perhaps you would consider a simple solution such as making the creation of the desktop icon an optional choice instead of a fatal error?

 

BTW: Yours is not the only app I have had this problem with (just the first I have been able to communicate with), so if you could share the details of any solution I will pass it along to other authors.

 

-Dubious-

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...