Jump to content

2016-05-12 Patch SDK Changes


davidlallen

Recommended Posts

Not sure if you saw my edit, but in the above post I linked to another thread. It seems that when you make a new "default mod", you get all the old code. Looks like the patch updated the main sdk files but they forgot about the ones that the default mod grabs. Maybe you can make your diffs from that.

Link to comment
Share on other sites

  • Replies 75
  • Created
  • Last Reply

Top Posters In This Topic

Well -- that simply means we can actually get these old files to compare stuff. I just created a temporary "Default Mod" and the whole 1927 files (from Feb-3rd) were indeed all there. Copy/Paste.. done!

Now onto some analysis steps for specific tricky changes that may explain a few important development steps.

Indirectly, thanks. ;)

Link to comment
Share on other sites

Anyone else experiencing an issue where the over-the-shoulder camera on a mind-controlled unit targeting another unit doesn't work?

 

From what I can tell, this bug seems to only manifest when the game packages are built in final-release mode, as the camera seems to work fine when in a debug build mode. Can anyone confirm this (or at least the bug's presence)? I think I might be losing my mind trying to figure this out, because I can only replicate this without my debug tools, and I would really not like it if this bug is only present on my system for whatever reason (it's happened before).

 

For the record, I do not have the DLC purchased or installed, and here's a couple file sizes and MD5 sums of the likely files involved:

 

XCom2.exe 38,677,272 bytes, file version 1.0.0.53767, MD5 a4571709b88eb1bf10cbd9de0319146e

XComGame.upk 11,357,383 bytes, MD5 28e033532dceeda2b7a3afcc3705f302

Link to comment
Share on other sites

There was a fairly big change to the Mission.ini that broke a couple of mods, among them the ever popular IESS, IESS+ and More Pods.

 

What happened is that Firaxis introduced the concept of "Buckets" into the file. At the point where Pod definitions are handed over to the Mission Schedules, some of those definitions have been put together into groups (=buckets) and this group is handed over instead.

 

This has the advantage that now mods and dlc can throw things into these buckets and don't need to edit the mission schedules themselves. For example, in the base game, there are buckets labeld "LIST_BOSS" that each contain a Boss pods and their filler pod that gets called when the boss pod isn't availabe. The DLC adds the rulers into those buckets.

 

So far, so good and it makes sense. However, it comes with a price:

 

The mission schedules had to be changed to refer to those buckets. Mods that changed those mission schedules (like IESS...) need to be updated to the new format before they work again.

 

Also, i suspect that anything that edits those buckets will need two versions - one that works without the DLC and one that works for people that have the DLC.

Link to comment
Share on other sites

 

 

 

Also, i suspect that anything that edits those buckets will need two versions - one that works without the DLC and one that works for people that have the DLC.

 

I'm pretty sure that these changes will affect any game with or without DLCs, otherwise the game would break for one of the 2 groups, since there are more in-depth changes made on the code itself, and doesnt make any sense they would maintain 2 versions of each script for different players. Case in point... either you have any of the extra packs, the code reflects changes made for each one, like the ability to have 2 part arms content or face paints, when the game was released. In any game development, the developers must prepare the code for any situation, and either you have a DLC or not, the code must always be there and working for all scenarios. The same is not true for assets ofc (well, mostly), those are only added with the DLC itself, otherwise it would allow ppl without the DLCs to be able to get them with some effort. For example, when the game came out, even though there was still no anarchy extras, and hence they were not used, the game shipped with the Torso and Legs skins, BUT not with the meshes.

 

Link to comment
Share on other sites

I'm not sure if this is accurate. I do not have the DLC installed but I have "EncounterBuckets" in DefaultMissions and an "EncounterBucket" struct in XGGameData. I'm pretty sure there's only one codebase, otherwise every time they release a new DLC the number of different codebase versions would increase exponentially? That would be incredibly un-mod-friendly.

 

I mean, it makes sense if mods are broken and need to be updated, but having separate codebases for each DLC combination would be a ridiculously horrendous idea.

 

The SDK also doesn't care what mods you have installed or not I'm pretty sure, and there's only one SrcOrig as far as I know. If someone with the DLC bought and installed wants to force update their SDK installation and PM me their SrcOrig, I'll compare against what I have.

Link to comment
Share on other sites

Well, let's say i make a mod that wants to throw some stuff into the bucket for bosses.

 

In the base game, this bucket has two entries: Bucket = Boss Pod + Filler Pod.

In the DLC, this bucket has 5 entries: Bucket = Boss Pod + Filler Pod + 3 Rulers

The DLC removes the base game line and adds its own instead just like any mod would using "+" and "-"

 

If i make a mod that uses that line, i need to "-" it again. Both of them actually, because DLC users have a different one than non-DLC users and i don't want to keep either of them.

Then i "+" my own line. And there it get's interesting:

 

Assuming that with my mod i add two more things to the bucket for some reason, the line that i add has: Bucket = 1 Boss, 1 Filler, the 3 Rulers and the 2 Mod Things.

Will i be able to use that with the base game? Or will the base game trip over those rulers because it doesn't know what to do with them?

 

I don't know the answer to that yet.

If the game's code is robust enough to ignore any entries it doesn't recognize, we are good. If not, we have a problem.

Edited by DerBK
Link to comment
Share on other sites

the game will just ignore any DLC shenanigans... its the same as when you start a new game and check the box to play related missions to the Alien Hunters DLC. If the checkbox is marked, the code will use those values, if not, will ignore them

Link to comment
Share on other sites

Well that makes much more sense, I was worried that you were implying that the codebase itself was changing! But you were specifically talking about just the INI files themselves.

 

Interestingly, "EncounterBuckets" doesn't seem to be used in the UC code, so it seems as though it is entirely native. Makes it difficult to know how it is used without testing.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...