Repository navigation
XML2 Fix v1.5.0
The engine half of Legends Classic 0.2.2 (the X-Men Legends I port): more of the first game's own rules - its skill ranks and level points, breakable parts, leaders, solo mode, its death threshold and pack amounts, the Xtraction services, the scan turrets - and an online agreement that no longer outgrows the game's messages. Drop in the new dinput.dll. For X-Men Legends II as it ships, three fixes reach everyone (exclusive fullscreen, Defaults keeping the pad layout, the mouse in cutscenes); every other addition is off until a mod's xml2-fix.ini asks for it.
For everyone
- Exclusive fullscreen. On some PCs (seen at 2560x1440 and 180 Hz) the game's own fullscreen device request failed, and the game then reset its resolution settings. The fix now asks only for a mode the adapter lists (a resolution it doesn't list falls back to the desktop's mode and refresh rate), the 8x anti-aliasing setting really asks for 8 samples (it used to fall back to less after a restart), every mode lowers a request to the highest level the adapter supports at the device's real format, and in the fix's own modes a failed device no longer wipes the display settings.
- Pads and Defaults. Defaults 1/2/3 in the controls menu used to erase player 1's pad bindings; the preset layouts now carry the pad layout too (#9). The game's own rule that one key never drives two players is kept.
- The mouse in cutscenes (
[Input] CutsceneMouse, on by default). The game stopped the mouse only in cutscenes that lock the controls; now no cutscene lets it outline characters or click to move.0keeps the game's rule.
New, when you ask for it (the port's builder sets all of these)
-
[Game] NpcPowerRule=xml1: Enemy AI (issue #101): enemies pay energy for powers, decide every 2 seconds, need at least half their energy, and use the first game's melee combos. Visibility uses the first game's geometry and query scheduling. Heroes still spend more time stunned than in the original; that part of #101 remains open. Details. -
[Game] RankCosts,LevelSkillPoints=xml1,LevelStatPoints=xml1: X-Men Legends I's skill economy - a talent rank costs its<level>'scost(2 for the ranks that open a new form of a power), and every fifth level gives 2 skill and 8 stat points instead of 1 and 4. A campaign saved before these keys were installed gets the fifth-level points its heroes already missed, once, on its first load; the next save records it in the header, so it never happens twice. When the build shipsData\lcsave\autogrowth-legacy.txt(its heroes' automatic stat growth classes changed), each hero's saved class bonus is re-based once the same way, comic rewards kept. docs/rank-costs.md. -
[Game] Xml1Multipart: X-Men Legends I's breakable parts. Every hit that isn't deflected goes to the current part; at zero it breaks on the first game's 1-in-3 roll, with its effects and skin change, and the attacks that need it are gone (Juggernaut's helmet, the Sentinels' arms). A script that hides a part breaks it too. docs/multipart.md. -
[Game] X1Leader: the stats entries a mod lists inData\x1leader.txtare X-Men Legends I leaders - they drop by the first game's rule, and its pain rule applies to their non-cold projectiles (four drops, one of them health, energy or an Xtreme pip). -
[Game] SoloMode: X-Men Legends I's solo mode.setSoloMode(actor, on)keeps the rest of the party behind at a gap or a bridge, and the party regroups by the first game's rule afterwards. docs/solo-mode.md. -
[Game] DeathRule=xml1: an entity dies on the hit that leaves it below 1 health, as in the first game, instead of fighting on at a fraction of a point with its death script and drops waiting. docs/death-threshold.md. -
[Game] PackAmount=xml1: health and energy packs restore a quarter of the maximum, as in the first game (XML2: a third). docs/pack-amount.md. -
[Game] PlacementCrush=xml1andDoubleHeal=0: objects being settled on the floor at a zone's load no longer crush each other (and play hit sounds from an empty room), and packs never heal double (XML2's darker "double" sound; the stats screen's help drops those lines). docs/placement-crush.md. -
The Xtraction services with
[Game] DangerRoomGateandRevivalCost=xml1: a mod's Xtraction points can offer Load, the Danger Room, the Healer and Forge where the first game did; a main-menu item stays greyed until Phoenix has joined the campaign; a fallen hero costs the first game's 200 x (the roster's highest level) squared. Online, Load and the campaign-gated choices are greyed with other players. docs/xtraction-shop.md. -
[Game] Xml1Turretswith a[Xml1Turrets]section: X-Men Legends I's scan turrets scan, track and fire again - missile salvos, bullet tripods and flame turrets with the first game's timing, aim spread, damage and effects - and can still be destroyed, staying destroyed in saves. docs/xml1-controllers.md. -
[Game] DeathSwitchClear: when the controlled hero dies, the hero handed the controller stands still until it is moved, instead of finishing the walk its AI had started (off a ledge, sometimes). docs/death-switch.md. -
[Limits] ScriptFunctions: the game's 320 script function names, filled up by a big mod and the fix's own functions, raised to 1024 (321 to 4096) without moving a stock one. docs/script-functions.md.
Online: the gameplay agreement, revision 3
Every key above is a rule of the shared gameplay agreement (IDs 5-16): both games compare the rules each one actually installed when a player joins, and refuse a mismatch with the reason on both PCs. The record is now a fixed 108-byte digest whatever the number of rules (protocol revision 3): with the full 1.5 rule list in the old format, the join messages passed the game's 300-byte message limit and crashed the host. A refusal now names the setting that differs (Incompatible gameplay settings: PackAmount). A 1.4.0 player and a 1.5.0 player refuse each other at join as another build, with the reason on both PCs: both players need 1.5.0. XML2 as it ships, without these keys, plays online exactly as before. docs/gameplay-agreement.md.
Going back to 1.4.0
A 1.4.0 DLL protects a save that 1.5.0 wrote: before replacing it, it keeps it as .lcsave.newer, and when a different .newer copy is already there (after going back and forth) it refuses to save over that file, the profile included. To go back, put back the copy of your save folder made before updating, then the 1.4.0 dinput.dll.
Known issues
- In co-op, Load Saved Campaign can stop at "Sending game information..." (1.4.0 too). Start a new campaign in co-op for now; a co-op pass is planned.
- Online play was tested with two copies of the game on one PC; play between two PCs, and across the internet, has not been validated with these keys yet.
Every patch checks the bytes it relies on against the retail XMen2.exe first; on any other build that feature stays off and xml2-fix.log says why (online play closes when a requested rule could not be installed). Every setting, with its default: README -> Settings.
Install: copy dinput.dll into the folder that contains XMen2.exe (replace the old one). The Ultimate Legends launcher does it for you. See the README.
Unofficial fan fix, not affiliated with or endorsed by Activision, Marvel, Disney, Raven Software or Beenox. No game files included: you need your own copy of the game.