Jump to content

Photo

Finding the first step?


  • Please log in to reply
229 replies to this topic

#21
sage2

sage2

    Regular

  • Members
  • PipPip
  • 63 posts
I was looking at those late last night, but I didn't see one that would work as a 'force'.

Incidentally, one limitation of the hex editing is that you cannot increase the digits -- i.e. an increase of 1 digit place will cause the exe to not load. This means you can't make a '0' into a 10. You can make a 10 into a smaller number though, i.e. 00 or 05 (or whatever.

Edited by sage2, 10 October 2012 - 04:31 PM.


#22
atoric

atoric

    Stranger

  • Members
  • Pip
  • 6 posts

Incidentally, one limitation of the hex editing is that you cannot increase the digits -- i.e. an increase of 1 digit place will cause the exe to not load. This means you can't make a '0' into a 10. You can make a 10 into a smaller number though, i.e. 00 or 05 (or whatever.

That is why you need to use resource editing program instead of hex editing.

#23
DaGawdfadda

DaGawdfadda

    Journeyman

  • Members
  • Pip
  • 43 posts
I can confirm that creating a copy of files in my documents doesnt work (at least not for what I was trying todo, reduce cost of soldier recruitment and starting soldier quantity)

#24
NephilimNexus

NephilimNexus

    Fan

  • Members
  • PipPipPip
  • 305 posts

You are welcome. Well, you can just follow these steps:
1. Mod DefaultGameCore.ini (it is the same inside exe) to whatever you like.
2. Open XComGame.exe inside Resource Hacker.
3. Find RCdata/1020/1033 in left section.
4. Right click 1033 and select "Replace Resource". You will see a new window.
5. Click button "Open file with new resource...", which you will see on new window.
6. Find file, which you modded before and select it.
7. Now fill three text boxes with such values:
Resource type: RCDATA
Resource name: 1020
Resource language: 1033
8. Click "Replace" button. You should see modded content to the right. If not, then something went wrong.
9. Save file using File -> Save and now game is modded.


HOORAY! This is exactly what I wanted!

Well, exactly what I wanted was for the external config files to work, but in the mean time this does the job - mucho thanks!

I only see one hitch, now, and that is that sharing mods like this will be impossible... well, not impossible, but probably illegal since that would mean sharing modified copies of the XComGame.exe file, which I'm sure won't float with 2K Games or Firaxis. But hey, that's their fault, not yours or ours.

#25
Beknatok

Beknatok

    Regular

  • Members
  • PipPip
  • 79 posts
Hmmm... what would happen if someone totally nukes that script out of the .EXE? Think the engine is smart enough to then reference one of the existing .INI files?

#26
atoric

atoric

    Stranger

  • Members
  • Pip
  • 6 posts

Hmmm... what would happen if someone totally nukes that script out of the .EXE? Think the engine is smart enough to then reference one of the existing .INI files?

Doing so means altering exe file, which will work for you, but won't work for others, because you need to provide modified exe-file. Better approach is to do what Langy suggested - to write a patcher, which will inject modded content into exe. Modders will distribute modded content (ini files) as well as patcher. User will need to use patcher to inject ini files into exe. Such approach avoids sharing exe file, which is good in terms of user agreement, and user friendly, because no need to replace resources manually. I can write such patcher. Question is do we actually need it? What if Firaxis will provide modding tools with next patch?

#27
Beknatok

Beknatok

    Regular

  • Members
  • PipPip
  • 79 posts
To share some more findings...

I'm rather intrigued by the evidence that the game is reaching out to a central server, in order to retreive a copy of the GameCore.ini file. Looking through DefaultEngine.ini, I found this bit of code:

[Engine.OnlineSubsystem]
IniLocPatcherClassName="Engine.IniLocPatcher"

[Engine.IniLocPatcher]
!Files=ClearArray
+Files=(Filename="XComGameCore.ini")
;+Files=(Filename="XComGame.ini")

XComGame.ini is commented out, but XComGameCore.ini is not. Googling turned up some more informaton regarding these settings.

http://uncodex.com/2...locpatcher.html

This all implies that the game is capable of "calling home" to get another copy of XComGameCore.ini. I am presuming that this would override the values cooked into the .EXE file, giving the Devs further additional control over gameplay balance & ensuring fair MP play.


I think I'm going to go back and reinstall the demo. We know in the demo, that the actual GameCore.ini file was being used. I need to see how it is referenced/inherited in the other ini files. This might allow us to adjust the current ini files, to use the local copy instead of the cooked one.

#28
DaGawdfadda

DaGawdfadda

    Journeyman

  • Members
  • Pip
  • 43 posts
Outside of the DefaultNameList has anyone seen anything related to this reference:

[XComGame.XGCharacterGenerator]

#29
Beknatok

Beknatok

    Regular

  • Members
  • PipPip
  • 79 posts

Doing so means altering exe file, which will work for you, but won't work for others, because you need to provide modified exe-file. Better approach is to do what Langy suggested - to write a patcher, which will inject modded content into exe. Modders will distribute modded content (ini files) as well as patcher. User will need to use patcher to inject ini files into exe. Such approach avoids sharing exe file, which is good in terms of user agreement, and user friendly, because no need to replace resources manually. I can write such patcher. Question is do we actually need it? What if Firaxis will provide modding tools with next patch?


To give a bit of background, I have a CS degree and am a database developer. As such, while I'm knowledgeable enough to dig around and look for hints and such, writing a patcher is beyond my skillset.

To answer your question about whether we need it or not... well, I am perfectly happy using your method of just modifying the .EXE solely for my own private use. My main motivation for modding is to tweak a few settings in the game that I despise (Skyranger Capacity & # of small items soldiers can carry). But since I'm at work & have time to kill, I figured I'd contribute to the community as a whole with my thoughts and speculation on the matter.

#30
atoric

atoric

    Stranger

  • Members
  • Pip
  • 6 posts

I think I'm going to go back and reinstall the demo. We know in the demo, that the actual GameCore.ini file was being used. I need to see how it is referenced/inherited in the other ini files. This might allow us to adjust the current ini files, to use the local copy instead of the cooked one.

I had same idea today and I have already checked this and other ini files. There are 5 blocks, which are different between demo and release in this file as I remember, and that piece is the same, so you can save your time.




Page loaded in: 0.604 seconds