From 8a27726e6c10f29ce4ac93b65ed109dbbd0f6800 Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 10:51:36 +0000
Subject: [PATCH 1/8] Fix TR2Type mismatches
Resolves #605.
Regression from #547.
---
TRLevelControl/Model/TR2/Enums/TR2Type.cs | 26 +++++++++++------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/TRLevelControl/Model/TR2/Enums/TR2Type.cs b/TRLevelControl/Model/TR2/Enums/TR2Type.cs
index f11ef7412..11bd4f7f3 100644
--- a/TRLevelControl/Model/TR2/Enums/TR2Type.cs
+++ b/TRLevelControl/Model/TR2/Enums/TR2Type.cs
@@ -106,9 +106,9 @@ public enum TR2Type
UnderwaterPropeller = 94,
AirFan = 95,
SwingingBoxOrBall = 96,
- MeshSwap1 = 97,
- MeshSwap2 = 98,
- MeshSwap3 = 99,
+ CutsceneActor1 = 97,
+ CutsceneActor2 = 98,
+ CutsceneActor3 = 99,
UIFrame_H = 100,
RollingStorageDrums = 101,
ZiplineHandle = 102,
@@ -132,16 +132,16 @@ public enum TR2Type
JadeSecret_M_H = 120,
SilverSecret_M_H = 121,
LaraHomePhoto_M_H = 122,
- CutsceneActor1 = 123,
- CutsceneActor2 = 124,
- CutsceneActor3 = 125,
- CutsceneActor4 = 126,
- CutsceneActor5 = 127,
- CutsceneActor6 = 128,
- CutsceneActor7 = 129,
- CutsceneActor8 = 130,
- CutsceneActor9 = 131,
- CutsceneActor10 = 132,
+ CutsceneActor4 = 123,
+ CutsceneActor5 = 124,
+ CutsceneActor6 = 125,
+ CutsceneActor7 = 126,
+ CutsceneActor8 = 127,
+ CutsceneActor9 = 128,
+ CutsceneActor10 = 129,
+ CutsceneActor11 = 130,
+ Unknown1 = 131,
+ Unknown2 = 132,
PassportClosed_M_H = 133,
Map_M_U = 134,
Pistols_S_P = 135,
From 576a981aa9783a83f193cf05311af891ca6e37ab Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 10:52:33 +0000
Subject: [PATCH 2/8] Disallow skidoos in DA room 77
Resolves #604.
---
.../TR2/Restrictions/enemy_restrictions_default.json | 10 ----------
.../TR2/Restrictions/enemy_restrictions_technical.json | 7 +++++++
2 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_default.json b/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_default.json
index 166b1178b..a31b4205c 100644
--- a/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_default.json
+++ b/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_default.json
@@ -36,16 +36,6 @@
102
]
},
- "PLATFORM.TR2": {
- "52": [
- 17,
- 29,
- 31,
- 46,
- 65,
- 77
- ]
- },
"UNWATER.TR2": {
"52": [
20,
diff --git a/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_technical.json b/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_technical.json
index b89f6fb9b..c9369b88c 100644
--- a/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_technical.json
+++ b/TRRandomizerCore/Resources/TR2/Restrictions/enemy_restrictions_technical.json
@@ -31,6 +31,13 @@
"PLATFORM.TR2": {
"40": [
83
+ ],
+ "52": [
+ 17,
+ 29,
+ 31,
+ 46,
+ 65
]
},
"UNWATER.TR2": {
From 494d835fafaa188b718b217b41203038871dac0e Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 10:53:47 +0000
Subject: [PATCH 3/8] Mark secret as glitched
Resolves #608.
---
TRRandomizerCore/Resources/TR2/Locations/locations.json | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/TRRandomizerCore/Resources/TR2/Locations/locations.json b/TRRandomizerCore/Resources/TR2/Locations/locations.json
index c2ab8b396..bf69c00d9 100644
--- a/TRRandomizerCore/Resources/TR2/Locations/locations.json
+++ b/TRRandomizerCore/Resources/TR2/Locations/locations.json
@@ -6465,7 +6465,8 @@
"Y": -5632,
"Z": 69633,
"Room": 92,
- "Difficulty": "Hard"
+ "Difficulty": "Hard",
+ "RequiresGlitch": true
},
{
"X": 33718,
From ef13ab1ee29ed5647bf0f217aaab4eab09b668d8 Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 10:58:39 +0000
Subject: [PATCH 4/8] Fix item lighting
Resolves #607.
---
TRRandomizerCore/Randomizers/TR2/TR2ItemRandomizer.cs | 2 ++
1 file changed, 2 insertions(+)
diff --git a/TRRandomizerCore/Randomizers/TR2/TR2ItemRandomizer.cs b/TRRandomizerCore/Randomizers/TR2/TR2ItemRandomizer.cs
index cbba0da64..7f9aadb43 100644
--- a/TRRandomizerCore/Randomizers/TR2/TR2ItemRandomizer.cs
+++ b/TRRandomizerCore/Randomizers/TR2/TR2ItemRandomizer.cs
@@ -213,6 +213,7 @@ public void RandomizeItemLocations(TR2CombinedLevel level)
}
_picker.RandomizePickupLocation(entity);
+ entity.Intensity1 = entity.Intensity2 = -1;
}
}
@@ -245,6 +246,7 @@ private void RandomizeKeyItems(TR2CombinedLevel level)
_picker.RandomizeKeyItemLocation(
entity, LocationUtilities.HasPickupTriger(entity, i, level.Data, floorData),
level.Script.OriginalSequence, level.Data.Rooms[entity.Room].Info);
+ entity.Intensity1 = entity.Intensity2 = -1;
}
}
From e7ae9945a6ea9b466bd97a5c0d6d3607978d6cc9 Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 11:00:16 +0000
Subject: [PATCH 5/8] Remove Wreck forced damage location
Resolves #609.
---
.../Resources/TR2/Locations/invalid_item_locations.json | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/TRRandomizerCore/Resources/TR2/Locations/invalid_item_locations.json b/TRRandomizerCore/Resources/TR2/Locations/invalid_item_locations.json
index a81438390..edda11e7c 100644
--- a/TRRandomizerCore/Resources/TR2/Locations/invalid_item_locations.json
+++ b/TRRandomizerCore/Resources/TR2/Locations/invalid_item_locations.json
@@ -1715,6 +1715,12 @@
"Z": 91648,
"Room": 68
},
+ {
+ "X": 52736,
+ "Y": -4096,
+ "Z": 35328,
+ "Room": 21
+ },
{
"X": 67072,
"Y": 4352,
From b291e41920e06d306a115a7a632a4a7387ec14c8 Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 11:43:59 +0000
Subject: [PATCH 6/8] Fix awkward enemies
Resolves #606.
---
.../TR2/Environment/DECK.TR2-Environment.json | 21 ++++++++++
.../TR2/Environment/KEEL.TR2-Environment.json | 41 +++++++++++++++++++
.../Environment/PLATFORM.TR2-Environment.json | 28 +++++++++++++
.../TR2/Environment/RIG.TR2-Environment.json | 4 +-
4 files changed, 92 insertions(+), 2 deletions(-)
diff --git a/TRRandomizerCore/Resources/TR2/Environment/DECK.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/DECK.TR2-Environment.json
index 44e2148c1..f1b2ddd13 100644
--- a/TRRandomizerCore/Resources/TR2/Environment/DECK.TR2-Environment.json
+++ b/TRRandomizerCore/Resources/TR2/Environment/DECK.TR2-Environment.json
@@ -1056,6 +1056,27 @@
}
}
]
+ },
+ {
+ "Condition": {
+ "Comments": "If enemy 103's type has been randomized, move him outside for some breathing space.",
+ "ConditionType": 0,
+ "EntityIndex": 103,
+ "EntityType": 32
+ },
+ "OnFalse": [
+ {
+ "EMType": 44,
+ "EntityIndex": 103,
+ "TargetLocation": {
+ "X": 43520,
+ "Y": -10240,
+ "Z": 69120,
+ "Room": 114,
+ "Angle": 16384
+ }
+ }
+ ]
}
],
"ConditionalOneOf": [],
diff --git a/TRRandomizerCore/Resources/TR2/Environment/KEEL.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/KEEL.TR2-Environment.json
index dcf4a8e53..9d5c8bde9 100644
--- a/TRRandomizerCore/Resources/TR2/Environment/KEEL.TR2-Environment.json
+++ b/TRRandomizerCore/Resources/TR2/Environment/KEEL.TR2-Environment.json
@@ -1894,6 +1894,47 @@
"NewDoorType": 111
}
]
+ },
+ {
+ "Condition": {
+ "Comments": "If enemy 46 is a t-rex or chicken, drain the nearby pool and put him there.",
+ "ConditionType": 0,
+ "Or": [
+ {
+ "ConditionType": 0,
+ "EntityIndex": 46,
+ "EntityType": 46
+ }
+ ],
+ "EntityIndex": 46,
+ "EntityType": 214
+ },
+ "OnTrue": [
+ {
+ "EMType": 3,
+ "RoomNumbers": [
+ 85,
+ 94
+ ],
+ "WaterTextures": [
+ 1730,
+ 1764,
+ 1769,
+ 1770
+ ]
+ },
+ {
+ "EMType": 44,
+ "EntityIndex": 46,
+ "TargetLocation": {
+ "X": 58880,
+ "Y": 4480,
+ "Z": 33280,
+ "Room": 94,
+ "Angle": -16384
+ }
+ }
+ ]
}
],
"ConditionalOneOf": [],
diff --git a/TRRandomizerCore/Resources/TR2/Environment/PLATFORM.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/PLATFORM.TR2-Environment.json
index ab50110f0..fb3401204 100644
--- a/TRRandomizerCore/Resources/TR2/Environment/PLATFORM.TR2-Environment.json
+++ b/TRRandomizerCore/Resources/TR2/Environment/PLATFORM.TR2-Environment.json
@@ -2597,6 +2597,34 @@
}
}
]
+ },
+ {
+ "Condition": {
+ "Comments": "If enemy 59 is an eel, rotate it to avoid blocking puzzle slots.",
+ "ConditionType": 0,
+ "Or": [
+ {
+ "ConditionType": 0,
+ "EntityIndex": 59,
+ "EntityType": 26
+ }
+ ],
+ "EntityIndex": 59,
+ "EntityType": 27
+ },
+ "OnTrue": [
+ {
+ "EMType": 44,
+ "EntityIndex": 59,
+ "TargetLocation": {
+ "X": 59904,
+ "Y": -3584,
+ "Z": 75264,
+ "Room": 30,
+ "Angle": -32768
+ }
+ }
+ ]
}
],
"ConditionalOneOf": [],
diff --git a/TRRandomizerCore/Resources/TR2/Environment/RIG.TR2-Environment.json b/TRRandomizerCore/Resources/TR2/Environment/RIG.TR2-Environment.json
index a0ca40ed6..2a1eb596e 100644
--- a/TRRandomizerCore/Resources/TR2/Environment/RIG.TR2-Environment.json
+++ b/TRRandomizerCore/Resources/TR2/Environment/RIG.TR2-Environment.json
@@ -1494,13 +1494,13 @@
"Condition": {
"Comments": "If neither rooms 2 nor 96 contain a secret, drain the plane area.",
"ConditionType": 1,
- "RoomIndex": 2,
"Or": [
{
"ConditionType": 1,
"RoomIndex": 96
}
- ]
+ ],
+ "RoomIndex": 2
},
"OnFalse": {
"Leader": [
From 9323b5bd5620fbdc821872ba8b5064a15af85c27 Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 11:46:57 +0000
Subject: [PATCH 7/8] Add changelog entries
---
CHANGELOG.md | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b4adbbb1b..a54a83f12 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
## [Unreleased](https://github.com/LostArtefacts/TR-Rando/compare/V1.8.3...master) - xxxx-xx-xx
- fixed item locking logic so that secrets that rely on specific enemies will always be obtainable (#570)
+- fixed a crash at the end of Diving Area if a skidoo driver is replaced by a pickup (#604)
+- fixed the submarine in the Diving Area cutscene using Lara's meshes (#605)
+- fixed some awkwardly placed enemies in TR2, which could either block puzzle slots/keyholes or otherwise prove difficult to kill (#606)
+- fixed pickup item lighting in TR2 (#607)
+- fixed a secret in Temple of Xian that requires a glitch but was marked as glitchless (#608)
+- fixed an item location in Wreck of the Maria Doria that required forced flame damage (#609)
## [V1.8.3](https://github.com/LostArtefacts/TR-Rando/compare/V1.8.2...V1.8.3) - 2024-01-21
- fixed incorrect items sometimes being allocated as secret rewards in Thames Wharf (#597)
From 37279cc3ff5493943e304b690a2e1d175185a3dd Mon Sep 17 00:00:00 2001
From: lahm86 <33758420+lahm86@users.noreply.github.com>
Date: Mon, 12 Feb 2024 11:57:14 +0000
Subject: [PATCH 8/8] Release V1.8.4
Resolves #610.
---
CHANGELOG.md | 4 +++-
TRRandomizerView/TRRandomizerView.csproj | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a54a83f12..8d7256e1e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,6 @@
-## [Unreleased](https://github.com/LostArtefacts/TR-Rando/compare/V1.8.3...master) - xxxx-xx-xx
+## [Unreleased](https://github.com/LostArtefacts/TR-Rando/compare/V1.8.4...master) - xxxx-xx-xx
+
+## [V1.8.4](https://github.com/LostArtefacts/TR-Rando/compare/V1.8.3...V1.8.4) - 2024-02-12
- fixed item locking logic so that secrets that rely on specific enemies will always be obtainable (#570)
- fixed a crash at the end of Diving Area if a skidoo driver is replaced by a pickup (#604)
- fixed the submarine in the Diving Area cutscene using Lara's meshes (#605)
diff --git a/TRRandomizerView/TRRandomizerView.csproj b/TRRandomizerView/TRRandomizerView.csproj
index 134c4a844..14afae90e 100644
--- a/TRRandomizerView/TRRandomizerView.csproj
+++ b/TRRandomizerView/TRRandomizerView.csproj
@@ -20,7 +20,7 @@
false
Resources\rando.ico
- 1.8.3
+ 1.8.4
Tomb Raider Randomizer
Copyright © Tomb Raider Community 2023