Skip to content

TR3 Texture Fixes and Enemy Randomization#263

Merged
DanzaG merged 5 commits intoLostArtefacts:masterfrom
lahm86:master
Nov 19, 2021
Merged

TR3 Texture Fixes and Enemy Randomization#263
DanzaG merged 5 commits intoLostArtefacts:masterfrom
lahm86:master

Conversation

@lahm86
Copy link
Copy Markdown
Collaborator

@lahm86 lahm86 commented Nov 19, 2021

#257 Texture Fixes

Although we don't carry out deduplication in TR3 for textures, dependencies are still needed to avoid texture issues when replacing models. This was causing issues with outfit randomization because of the likes of gun animations sharing textures with the gun models themselves. All model dependencies have now been calculated and JSON files generated so that the model transport knows what can and cannot be removed based on what's being imported. TextureExport has been updated with a function to run this generating tool (it takes around an hour for TR3).

#240 Enemy Randomization

Standard and cross-level enemy randomization has been implemented. This is largely documented in ENEMIES.MD in this PR (see ENEMIES.MD post-merge).

The UI has been updated slightly to make the "docile bird monster" option more generic as the option now applies to TR2 bird monsters and TR3 WillardBoss. Similarly, "protect monks" is now "protect allies" to cover both games. In TR3, prisoners, mercenaries and flamethrowers (outside of Meteorite Cavern sequence) are friendly, so this option ensures they aren't assigned pickups.

Still to do is to implement ammo allocation based on enemy difficulty for unarmed levels, but this will be done once the unarmed pistols item is randomized as part of ItemRandomizer.

Most of the enemy utilities for TR2 have been replicated for TR3, but these static classes remain separate. @Anopob's enemy difficulty option is available for TR3, but because there aren't many restrictions to begin with, changing the option doesn't have too drastic an effect. It will at the moment allow for additional Willards to appear.

lahm86 and others added 5 commits November 19, 2021 18:07
Dependencies have been built for all TR3 models across all levels, which eliminates the issues with Lara's hands and inventory weapons after outfit randomization. Deduplication is still not performed because it's not necessary because of raised limits in TR3, so the unnecessary complication this involves is avoided.
Amended model transport for building dependencies and created a utility function in TextureExport for running this. These dependencies are held in JSON because the tool takes about an hour to run.
Initial implementation of TR3 enemy randomization, including cross-level and standard. See the comments in ENEMIES.MD for full details.
@DanzaG DanzaG self-requested a review November 19, 2021 20:36
@DanzaG DanzaG merged commit 20f0603 into LostArtefacts:master Nov 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants