Skip to content

Releases: X2CommunityCore/X2WOTCCommunityHighlander

v1.22.1

04 Jul 14:06
Compare
Choose a tag to compare
v1.22.1 Pre-release
Pre-release
  • Issue #1031 - temporarily disable 'OverrideAbilityIconColor' (#400) and 'OverrideAbilityIconColorImproved' (#749) events to prevent a hard hang when using moving melee.

This change breaks backwards compatibility.

v1.22.0

02 Jul 15:07
Compare
Choose a tag to compare
v1.22.0 Pre-release
Pre-release

https://github.com/X2CommunityCore/X2WOTCCommunityHighlander/milestone/8

New features:

  • Introduced Alien Hunters DLC component.
  • Pop-up message about incompatible mods or missing required mods has been translated to all supported languages.
  • New DLC Hook "OnLoadedSavedGameWithDLCExisting" that runs only when a save game loaded with this mod already being active previously. I.e. this hook does not run on the first save game load after the mod was added, only one the second and onwards.
  • New DLC Hook "ModifyGeneratedUnitAppearance" that runs whenever a unit's appearance is generated.
  • New DLC Hook "OverrideItemImage_Improved" works identical to "OverrideItemImage", but also passes item's Item State.
  • DLC Run Order and mod dependency checking systems now work for mods without a X2DownloadableContentInfo. Added error reporting.
  • Non-weapon items can now have upgrade slots and install upgrades.
  • Soldier attitudes added with Tactical Legacy Pack will now use slightly different voicelines depending on the attitude, same as vanilla attitudes. (WOTC+TLP) TLP Attitude Voice Fix is no longer necessary.
  • New inventory slots: eInvSlot_MZAux, eInvSlot_TemplateMaster, eInvSlot_TacticalGadget, eInvSlot_AModMedical, eInvSlot_ArmorMod
  • Deprivated/deconsted many functions and variables across multiple classes.
  • Name of the ability activated by clicking the evac button in the upper right corner or pressing R3 on the controller can now be controlled via config variable "PlaceEvacZoneAbilityName".
  • Added new members to WillEventRoll_StatType enum and new logic to make use of them so that mods can better control Will Loss events.
  • Added a config var "BLEEDING_IGNORES_SHIELDS" to control whether bleed damage bypasses ablative shielding.
  • Mods can now use custom ability target style and ability multi target style in ability templates.
  • "OverrideHasHeavyWeapon" event will now pass a Check Game State when available. "AbilityUnlocksHeavyWeapon" config array will now respect item-granted abilities and abilities granted by character template.
  • CHEventListenerTemplate now has a "RegisterInCampaignStart" variable in addition to existing RegisterInTactical and RegisterInStrategy ones. This is needed for events like "OverrideAllowStartingRegionLink" that trigger too early for RegisterInStrategy.
  • "CameraRotationAngle" config variable can now be used to override the default rotation angle of 90 degrees.
  • "bTemporarilyBlockActivation" variable added to XComGameState_DarkEvent to allow to temporarily "freeze" Dark Events.
  • "ClassesAllowPsiPCS" config array can now be used to specify which classes can use Psi Offense PCS.
  • Inline documentation has been added to multiple previous additions.
  • Highlander mod project will now be compiled using X2ModBuildCommon and no longer requires using the .bat file to cook.

Fixed bugs:

  • Laser Sight and Stock will now be correctly affected by Empowered Upgrades. Insider Knowledge Fix is no longer necessary.
  • Fixed a "memory leak" bug caused by firing projectiles. This should massively improve performance when playing long missions with increased squad size and pod sizes, as well as when using Idle Suppression.
  • TypicalAbility_BuildVisualization will now get the appropriate Ability State and Source Weapon States, preventing potential issues when mods make hot changes to an ability or a weapon used for an ability after the ability has been activated.
  • Smoke and Poison grenades will now correctly highlight tiles and units they will affect.
  • Added a lot of "none" checks to reduce the "accessed none" log spam caused by base game bugs.
  • Fixed a Highlander bug that hid the weapon pattern customization screen.
  • When squad select or mission launch are cancelled, the last selected map item isn't overridden by the Avenger location.
  • The psi operative promotion screen should no longer be able to display the same ability twice.
  • Weapon models will once again rotate on the weapon upgrade screen - this feature was broken by WOTC.
  • Position of the weapon model on the weapon upgrade screen can now be adjusted through config. [WOTC] Weapon Upgrade UI Adjustment Tool is no longer necessary.
  • Fixed visual bugs associated with using a controller to access staff slots.
  • The game will no longer crash when applying facility upgrades before facility maps are loaded.
  • If a unit is carrying loot and killed via means that destroy that loot (e.g. explosives), then zombies raised from their corpse will no longer drop loot either.
  • Fixed a Highlander bug caused by using the "CovertActionRisk_AlterChanceModifier" event to modify the chance of risks on a Covert Action would not update the risks' UI panel.
  • Soldiers who were stunned at the end of a mission will no longer remain stunned at the beginning of their next mission.

Added events:

  • "OverrideReactionFireSlomo" to override X2ReactionFireSequencer::IsReactionFire
  • "AllowNoSquadSizeUpgradeAchievement" to override whether to grant the achievement for winning without extra squadsize
  • "OverrideNumUpgradeSlots" to override number of upgrade slots.
  • "ItemUpgraded" triggers when an item is upgraded.
  • "OverrideAbilityIconColorImproved" to override ability icon color.
  • "ShouldCivilianRun" to override whether a civilian unit should run from another approaching unit.
  • "HeadquartersUnitFired" triggers when a unit is dismissed forever on the Avenger.
  • "WillRecoveryTimeModifier" to modify the rate at which XCOM units recover their Will while resting on Avenger.
  • "UIStrategyPolicy_PreRefreshAllDecks", "UIStrategyPolicy_PostRealizeColumn", "UIStrategyPolicy_PreSelect", "UIStrategyPolicy_PreClearSelection", "UIStrategyPolicy_DraggingStarted", "UIStrategyPolicy_DraggingEnded" - triggered from the UI screen where the player selects new resistance orders at the start of a month.
  • "KismetGameStateMatinee" allows mods to insert their own visualization logic whenever a matinee is triggered by mission kismet.
  • "AllowOnCovertActionCompleteAnalytics" to override whether completing the Covert Action counts towards campaign stats.
  • "OverrideAllowStartingRegionLink" to override whether a region is connected to the region where the player starts their campaign.
  • "OverrideKillXp", "OverrideTotalNumKills", "OnDistributeTacticalGameEndXp" to control how soldier XP is gained and distributed.
  • "OverrideWeaponScale" to overide the scale of a weapon model.
  • "PostInventoryLoadoutApplied", "PostSquaddieLoadoutApplied" triggered after a unit has been equipped with a loadout after the unit was created / after they were promoted to squaddie. Note that these events do not run for rookies.
  • "ItemAddedToSlot" and "ItemRemovedFromSlot" trigger when an item is added or removed to a unit's inventory slot.
  • "OverrideDamageRemovesReserveActionPoints" to override whether taking damage removes unit's reserved action points (i.e. whether taking damage removes unit's Overwatch).
  • "UISquadSelect_NavHelpUpdate" allows mods to modify nav help on the vanilla Squad Select screen (e.g. add new buttons like "Unequip Squad"). Note that robojumper's Squad Select already triggers the same event.
  • "StrategyMap_NavHelpUpdated" allows mods to modify nav help on the Geoscape.
  • "OverrideCameraRotationAngle" to override the default camera rotation angle of 90 degrees.
  • "AfterActionModifyRecoveredLoot" triggered after the cache items were unpacked but before any loot is shown in the UI during the post-mission sequence.
  • "OverrideCanTakeFacilityMission" to override whether the player can go on the Sabotage Avatar Project Facility mission.
  • "WorldRegionGetStaticMesh" and "WorldRegionGetMeshScale" allow to replace and rescale world region models (e.g. radio towers).
  • "OverrideHasHeightAdvantageOver" to override whether a unit has height advantage over another unit.
  • "CovertAction_OverrideRiskStrings" to override textual descriptions of how likely a certain covert action risk is likely to occur.

v1.21.1

v1.21.1rc

12 Jun 11:32
Compare
Choose a tag to compare
v1.21.1rc Pre-release
Pre-release
  • Fixes bug where no items are shown for ammo and grenade pocket
  • Deprivatizes various variables
  • Fixes uninitialized compile warning in TriggerOverrideProjectileInstance

NOTE: This release may cause a compiler issue when trying to build a mod depending on the Highlander. See #913 for details.

v1.21.0rc

01 Jun 15:01
Compare
Choose a tag to compare
v1.21.0rc Pre-release
Pre-release

https://github.com/X2CommunityCore/X2WOTCCommunityHighlander/milestone/7?closed=1

NOTE: This release may cause a compiler issue when trying to build a mod depending on the Highlander. See #913 for details.

v1.20.0

13 Apr 19:00
43c4582
Compare
Choose a tag to compare

https://github.com/X2CommunityCore/X2WOTCCommunityHighlander/milestone/5

NOTE: This release may cause a compiler issue when trying to build a mod depending on the Highlander. See #913 for details.

v1.20.0rc

09 Jan 01:03
Compare
Choose a tag to compare
v1.20.0rc Pre-release
Pre-release
Bump version to 1.20.0 RC1

v1.19.1

v1.19.0

17 Oct 13:04
Compare
Choose a tag to compare

General

Ini settings

Mod compatibility

In XComGame.ini mods can specify an array of incompatible and/or required mods. This will be used to show an warning popup if they are present. (#524)

[ModSafeName CHModDependency]
+IncompatibleMods=OtherModSafeName
+IgnoreIncompatibleMods=OtherModSafeName
+RequiredMods=OtherModSafeName
+IgnoreRequiredMods=OtherModSafeName
DisplayName="Fancy Mod"

DLC Run Order

In XComGame.ini mods can define an array of other mods which dlc hooks should run before and/or after the mods dlc hook.
LoadPriority can be RUN_STANDARD, RUN_FIRST or RUN_LAST. RunBefore and RunAfter only work within the defined LoadPriority group. Only change load priority if you really sure that its needed for you mod (#511)

[ModSafeName CHDLCRunOrder]
+RunBefore=OtherModSafeName
+RunAfter=OtherModSafeName
RunPriorityGroup=RUN_STANDARD

Strategy

  • Triggers the event OverrideCurrentDoom to allow mods to override doom amount for doom updates (#550)
  • Triggers the event PsiProjectCompleted to notify mods when a soldier has finished training in the psi labs (#534)
  • Triggers the event OverrideNoCaEventMinMonths to allow mods to force the UI to display no CA nag during first month
  • Triggers the event CustomizeStatusStringsSeparate in XomGameState_Unit::GetStatusStringsSeparate (#322)
  • Triggers the event OverridePersonnelStatus in UIUtilities_Strategy::GetPersonnelStatusStringParts. This allows listeners the opportunity to override the status, its time remaining and its colour. (#322)
  • Triggers the event OverridePersonnelStatusTime in a number of places to allow listeners to change the way unit status times (like how long is left on a covert action) are displayed. For example, a listener could display a time in hours rather than days, perhaps based on how many hours are left. (#322)
  • Triggers the event OverrideMissionSiteIconImage to allow mods to override the image shown for mission site icons (#537)
  • Triggers the event StrategyMapMissionSiteSelected to allow mods to provide mission launch screens for missions that have custom mission sources (#537)
  • Triggers the event OverrideMissionSiteTooltip to allow mods to override the tooltip displayed for a mission site icon (#537)
  • Triggers the event OverrideScanSiteTooltip to allow mods to override the tooltip displayed for a
    scan site icon (#537)
  • Triggers the event MissionIconSetMissionSite to allow mods to customize a mission site's icon in
    other ways than just the tooltip and image (#537)
  • Triggers the event MissionIconSetScanSite to allow mods to customize a scan site's icon in other
    ways than just the tooltip and image (#537)

Modding Exposures

  • Remove private from X2AIBTBehaviorTree.Behaviors so that mods can change the behavior trees without
    overwriting all the necessary entries (#410)

Configuration

  • bSkipCampaignIntroMovies skips the intro movies on campaign start (#543)

Improvements

  • Customization localizations now picked up for Torso/Legs/Arms. If the TemplateName already
    contains the parttype name (ie Torso/Legs/Arms), then the object name in the localization file
    matches as for other parts (in particular this means Anarchy's Children localizations which already exist in the files
    are picked up automatically). Otherwise, "_Torso"/"_Legs"/"_Arms" is appended to the template name
    to create the unique object name. (#328)

Fixes

  • Fix a pathing issue in base game with "flying" pod leaders where non-flat tiles on their
    paths prevent them from patrolling (#503)

Tactical

  • AllowInteractHack allows mods to prevent units from being able to hack InteractiveObjects (#564)
  • OverrideEncounterZoneAnchorPoint allows mods to override the anchor point used by XCOM 2
    in determining patrol zones for pods (#500)
  • 'OverridePatrolBehavior' allows mods to disable the base game pod patrol logic if they
    want to handle it themselves (#507)
  • 'DrawDebugLabels' allows mods to draw their own debug information on the canvas used by
    XComTacticalController.DrawDebugLabels() (#490)
  • OverrideAbilityIconColor provides a tuple with the same ID as the
    event and data of the form [bool IsObjective, string Color] that allows
    mods to override the color of soldier abilities in the tactical HUD (#400)

Configuration

  • Allow X2AbilityToHitCalc_StatCheck to check for hit chance modifiers (#467)

Fixes

  • Fixed XCGS_Unit::GetStatModifiers() as XCGS_Unit::GetStatModifiersFixed(),
    X2AbilityToHitCalc_StandardAim, the only vanilla user of this method, changed to match(#313)
  • Allow soldiers to be carried out from multiple missions in a campaign (#557)
  • Fix patrol logic when corners of a patrol zone lie outside of the map edges and
    a pod tries to patrol to any of them (#508)
  • Make disorient reapply to disoriented units so that things like flashbangs can
    still remove overwatch from disoriented units (#475)

Miscellaneous

Mod/DLC Hooks

  • AbilityTagExpandHandler_CH expands vanilla AbilityTagExpandHandler to allow reflection

Event Hooks

  • Uprivate XComTacticalMissionManager::CacheMissionManagerCards to allow mods to use manager's decks (#528)

Improvements

  • "Arms" no longer always hide forearm decos, but obey the archetype flag as the left/right arms do. (#350)
  • Arms and left/right arm customization dropdowns remain selectable even if they only have one entry
    iff both arms and seperate left/right arms are available. (#350)
  • Appearances now update correctly when a part change differs only by material override (#354)
  • All relevant body parts are now correctly validated when the torso is changed. (#350)

See milestone 1.19.0 for details.

v1.19.0rc

08 Jul 06:12
Compare
Choose a tag to compare
v1.19.0rc Pre-release
Pre-release

See milestone 1.19.0 for details.