Jump to content
ℹ️ Intermittent Download History issues ×

johnnylump

Premium Member
  • Posts

    763
  • Joined

  • Last visited

Everything posted by johnnylump

  1. XComStrategyGame.upk >> class XGFundingCouncil >> function BuildMission() You'll have to make hex edits to change the stats.
  2. Here are some upk_mod files to update this for the latest EW patch (patch 1). It now includes display of Psi XP if you have at least one Psi XP, and the advanced servomotors foundry project now modifies the mobility stat. However, the +4 mobility for hte kinetic strike module is not working at this time. SoldierStats_UpdateData@UIStrategyComponent@XcomStrategyGame UpdateHeader@XGSoldierUI@XComStrategyGame GetXPRequired@XGTacticalGameCore@XcomGame GetInventoryStatModifiers@[email protected]
  3. Amineri -- I'll get this fix in Long War. Here's the text for a upkmodder file with the fix:
  4. This was the EU freeze ... there may be another freeze due to suppression, which wghost has observed. In our experience, true freezes were a result of a code error, so perhaps there's one where the AI considers suppression or has a really low shot chance.
  5. Well, I looked up both, and I *think* they are fixed in EW. The freeze was in XGAIAbilityDM.AI_GetScoreModifier ... there was a divide by zero error. The lack of hunkering down was in XGAIAbilityDM.AI_DefenseScore ... I don't recall the error. But in both cases, it looks like Amineri's fixes are in place. I haven't observed the alien freeze, nor have I have observed the aliens hunkering down in EW.
  6. Amineri can correct me, but I believe answering this question isn't necessary -- there is a math bug in the code that caused the aliens to skip their turn: It wasn't a deliberate choice for them to freeze. I believe there was another math problem that prevented the aliens from using hunker down. We haven't confirmed the math bugs are still there in the EW code, but it seems likely that's the case. When corrected, their AI runs properly, and the aliens will do something when suppressed and flanked, and will sometimes hunker down when the situation warrants.
  7. The current mod, absolutely not. When Amineri updates it, it should.
  8. If you are playing Long War, you need to make a hex change to the file XComStrategyGame.upk. That means getting a hex editor and doing a search and replace on the code below. TO DISABLE AUTO-UNEQUIP OF LIMITED ITEMS AFTER MISSIONS (usually in conjunction with the ini change eliminating the mandatory post-mission rest) XComStrategyGame.upk Change 1b bc 1e 00 00 00 00 00 00 00 44 28 00 00 16 to 0b 0b 0b 0b 0b 0b 0b 0b 0b 00 44 28 00 00 0b NOTE: This is Long War EU only, not for other mods or the vanilla game.
  9. That's a Long War question, not a downgrade to patch 4 question, but the answer is you really don't want that. Because you rarely take soldiers on two missions in a row, it's actually less of a hassle to re-equip every time; otherwise you'd be hunting in your list of tired soldiers to unequip that spare SCOPE and then re-equip it with your main soldier. We're hoping to have equipment templates in future versions, but for now, you've got to re-equip each time. On the Long War "modding Long War" subforum, I think I posted some hex changes to turn off that option, but it would really lead to more frustrations.
  10. All of Long War EU's code changes are posted in a miscellaneous file on the Long War page, although it's not well documented (and nothing we support). Amineri hasn't updated the mod yet for EW.
  11. I'd put this in spoiler tags but I don't know how. 167 is Stasis Tank 168 is Nav Computers 169 is Alien Surgery 170 is Power Supply 179 is Fusion Core 180 is Ethereal Device function DetermineShipSalvage(out TShip kShip) { kShip.arrSalvage.Add(226); switch(kShip.eType) { // End:0xDB case 4: kShip.arrSalvage[168] = 2; kShip.arrSalvage[162] = Alloys(class'XGTacticalGameCore'.default.UFOAlloys[0]); kShip.arrSalvage[170] = 1; // End:0x4DF break; // End:0x171 case 5: kShip.arrSalvage[168] = 4; kShip.arrSalvage[162] = Alloys(class'XGTacticalGameCore'.default.UFOAlloys[1]); kShip.arrSalvage[170] = 2; // End:0x4DF break; // End:0x24C case 6: kShip.arrSalvage[168] = 4; kShip.arrSalvage[162] = Alloys(class'XGTacticalGameCore'.default.UFOAlloys[2]); kShip.arrSalvage[170] = 2; kShip.arrSalvage[169] = 2; kShip.arrSalvage[167] = 6; // End:0x4DF break; // End:0x36B case 7: kShip.arrSalvage[168] = 4; kShip.arrSalvage[162] = Alloys(class'XGTacticalGameCore'.default.UFOAlloys[3]); kShip.arrSalvage[170] = 4; kShip.arrSalvage[169] = 2; kShip.arrSalvage[167] = 8; kShip.arrSalvage[166] = 10; kShip.arrSalvage[165] = 2; // End:0x4DF break; // End:0x424 case 8: kShip.arrSalvage[168] = 6; kShip.arrSalvage[162] = Alloys(class'XGTacticalGameCore'.default.UFOAlloys[4]); kShip.arrSalvage[170] = 4; kShip.arrSalvage[179] = 2; // End:0x4DF break; // End:0x4DC case 9: kShip.arrSalvage[168] = 4; kShip.arrSalvage[162] = Alloys(class'XGTacticalGameCore'.default.UFOAlloys[5]); kShip.arrSalvage[170] = 4; kShip.arrSalvage[180] = 1; // End:0x4DF break; // End:0xFFFF default: kShip.arrSalvage[161] = Elerium(kShip.arrSalvage[170]); //return; } }
  12. Check out XGItemTree >> DetermineShipSalvage 4 is Small Scout 5 is Large Scout 6 is Abductor 7 is Supply Barge 8 is Battleship 9 is Overseer
  13. XGStrategyAI --> AIAddNewObjectives should be your starting point. XGStrategyAI --> AddLateMission adds missions after the base assault.
  14. Hmm, think there's a way to control the rate of time passing on the geoscape with a couple of keybind commands? XGStrategyAI >> XGGeoscape has the functions IncreaseTimeScale and DecreaseTimeScale,
  15. Nice find ... I'm adapting this for Long War. I think "setoverheadcameraparameters 70 1256 -40" returns the settings to default.
  16. There are some upk changes necessary to get a lot of that working. Find Drak's old thread about abductions, I think. I'm planning to do a lot of those changes or LW-EW but haven't had time to derive the new hex yet.
  17. Bertilsson, when I speak of you, know that I say only good things.
  18. EW changed how supporting aliens work from EU, but here's how Long War 2.12 (EU) handles pod composition GetPossibleAliens works alien chances cumulatively, which saved a bunch of space at the cost of a little granularity month-to-month. function TPossibleAlienSquad GetPossibleAliens() { local int iMonth; local TPossibleAlienSquad kSquad; STAT_SetStat(1, Max(Game().GetDays(), Game().GetDays() + (STAT_GetStat(2)))); iMonth = (STAT_GetStat(1)) / 30; // End:0x90 if(m_bFirstMission) { iMonth += 1; } AddPossible(GetCommanderType(), 100, kSquad.arrPossibleCommanders); AddPossible(11, 255, kSquad.arrPossibleRoaming); // End:0x1A7 if(iMonth >= 0) { AddPossible(4, ((iMonth <= 2) ? 80 : 35), kSquad.arrPossibleSoldiers); AddPossible(17, ((iMonth <= 4) ? 25 : 10), kSquad.arrPossibleSoldiers); AddPossible(13, 150, kSquad.arrPossibleSecondaries); } // End:0x2B1 if(iMonth >= 1) { AddPossible(5, ((iMonth <= 5) ? 100 : 35), kSquad.arrPossibleSoldiers); AddPossible(5, ((iMonth <= 6) ? 50 : 10), kSquad.arrPossibleSecondaries); AddPossible(6, (((iMonth >= 2) && iMonth <= 8) ? 65 : 50), kSquad.arrPossibleSoldiers); AddPossible(6, 25, kSquad.arrPossibleSecondaries); } // End:0x2EC if(iMonth == 2) { AddPossible(7, 35, kSquad.arrPossibleSoldiers); } // End:0x378 if(iMonth >= 3) { AddPossible(7, (((iMonth >= 4) && iMonth <= 6) ? 100 : 65), kSquad.arrPossibleSoldiers); AddPossible(7, 25, kSquad.arrPossibleSecondaries); } // End:0x3B3 if(iMonth == 3) { AddPossible(8, 15, kSquad.arrPossibleSecondaries); } // End:0x42D if(iMonth >= 4) { AddPossible(8, ((iMonth <= 7) ? 35 : 50), kSquad.arrPossibleSoldiers); AddPossible(8, 50, kSquad.arrPossibleSecondaries); } // End:0x468 if(iMonth == 5) { AddPossible(15, 15, kSquad.arrPossibleSecondaries); } // End:0x4E2 if(iMonth >= 6) { AddPossible(15, ((iMonth <= 8) ? 100 : 50), kSquad.arrPossibleSoldiers); AddPossible(15, 50, kSquad.arrPossibleSecondaries); } // End:0x55C if(iMonth >= 7) { AddPossible(9, ((iMonth <= 9) ? 25 : 45), kSquad.arrPossibleSoldiers); AddPossible(9, 25, kSquad.arrPossibleSecondaries); } // End:0x5D6 if(iMonth >= 8) { AddPossible(10, ((iMonth <= 9) ? 100 : 75), kSquad.arrPossibleSoldiers); AddPossible(10, 50, kSquad.arrPossibleSecondaries); } // End:0x650 if(iMonth >= 9) { AddPossible(11, ((iMonth <= 11) ? 50 : 85), kSquad.arrPossibleSoldiers); AddPossible(11, 25, kSquad.arrPossibleSecondaries); } // End:0x6CA if(iMonth >= 10) { AddPossible(16, ((iMonth <= 11) ? 35 : 50), kSquad.arrPossibleSecondaries); AddPossible(12, 25, kSquad.arrPossibleSecondaries); } // End:0x705 if(iMonth >= 11) { AddPossible(12, 25, kSquad.arrPossibleSoldiers); } // End:0x740 if(iMonth >= 12) { AddPossible(16, 25, kSquad.arrPossibleSoldiers); } NormalizeValues(kSquad.arrPossibleCommanders); NormalizeValues(kSquad.arrPossibleSoldiers); NormalizeValues(kSquad.arrPossibleSecondaries); NormalizeValues(kSquad.arrPossibleRoaming); return kSquad; //return ReturnValue; } function XComGame.XGGameData.ECharacter GetSupportingAlien(XComGame.XGGameData.ECharacter eMainAlien) { switch(eMainAlien) { // End:0x18 case 8: // End:0x20 case 16: return 17; // End:0x25 case 12: // End:0x2D case 19: return 11; // End:0x35 case 15: return 7; // End:0x47 case 9: return (Rand(2) * 14) + 4; // End:0x4C case 6: // End:0x51 case 7: // End:0x56 case 10: // End:0x8F case 11: return #GetMoreSupportng(eMainAlien); // End:0xFFFF default: return eMainAlien; } function int #GetMoreSupportng(XComGame.XGGameData.ECharacter eAlien) { iMonth = GetMonth(); // End:0x48 if(eAlien == 7) { return ((Rand(3) <= ((iMonth <= 6) ? 0 : 1)) ? 7 : 5); } // End:0x7C if(eAlien == 10) { return ((Rand(3) <= ((iMonth <= 10) ? 0 : 1)) ? 10 : 5); } // End:0xA7 if(eAlien == 11) { return ((Rand(4) <= 1) ? 11 : (Rand(2) * 8) + 7); } // End:0xC8 if(eAlien == 6) { return ((Rand(3) <= 0) ? 4 : 6); } return 4; } #GetMoreSupporting was a repurposed XGStrategyAI function involved in reducing the art asset load for consoles. EW has annoyingly moved the supportingalien stuff to an XComGame.upk function.
  19. @ Immortal What you describe is what tends to happen when playing LW on Patch 5 and 6, so it's possible the downgrade didn't take. That's what happens when X-Com phones home and overwrites certain DefaultGameCore.ini settings.
  20. A few things worth testing: - For abductions and possibly terror & UFO maps, set "InitialChance" and "InitialGain" to all the same numbers, and set NewMap to "false." I --*suspect* this will cause the rotation to become balanced and not favor any particular maps from the expansion. (Note that "InitialChance" is 400 for the new maps and 20 for the old ones.) - Set three of the four crashed overseer maps to crashed large scout maps for more variety on those missions (as crashed overseers are, um, rare events) by changing ShipType=eShip_UFOEthereal to ShipType=eShip_UFOLargeScout. Not sure if you'll walk out with an ethereal device, though, which could be a bit unbalancing.
  21. I will chime in with a "brilliant!" and ask whether this or some related development would also somehow allow us to expand enumerated types?
  22. Read the first post of this thread.
×
×
  • Create New...