Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Improved AI (Navmesh Overhaul Mod) #370

Merged
merged 5 commits into from
Apr 4, 2024
Merged

Add Improved AI (Navmesh Overhaul Mod) #370

merged 5 commits into from
Apr 4, 2024

Conversation

jaens
Copy link
Contributor

@jaens jaens commented Dec 31, 2023

NavmeshOverhaul.esm should also be loaded before YUP, according to https://www.nexusmods.com/newvegas/mods/81003?tab=description but I see no way of specifying that?


NavmeshOverhaul.esm contains a check if "Uncut Wasteland" and "YUPNavMesh" is loaded at the same time, in which case it displays a warning.
Add the same warning and link to the workaround to LOOT as well.

@jaens jaens force-pushed the v0.21 branch 2 times, most recently from 4feb1ca to 4077234 Compare December 31, 2023 15:11
@jaens jaens changed the title Add NavmeshOverhaul.esm Add Improved AI (Navmesh Overhaul Mod) Dec 31, 2023
@jaens jaens force-pushed the v0.21 branch 4 times, most recently from 9904265 to a5b7e1f Compare December 31, 2023 15:42
@pStyl3
Copy link
Member

pStyl3 commented Feb 17, 2024

@jaens There are a number of issues with this PR, that need to be worked out before we can merge it.

First, we add trailing slashes at the end of url's, and also add a name to them. So instead of writing

  - name: 'NavmeshOverhaul.esm'
    url: [ 'https://www.nexusmods.com/newvegas/mods/81003' ]

we would write

  - name: 'NavmeshOverhaul.esm'
    url:
      - link: 'https://www.nexusmods.com/newvegas/mods/81003/'
        name: 'Improved AI (Navmesh Overhaul Mod)'

Also, if we add data for more than one plugin from the same mod page, we can make use of regular expressions (see this link for an explanation) to add an url to them:

  - name: '(NavmeshOverhaul|YUPNavmeshPatch)\.esm'
    url:
      - link: 'https://www.nexusmods.com/newvegas/mods/81003/'
        name: 'Improved AI (Navmesh Overhaul Mod)'

  - name: 'NavmeshOverhaul.esm'
    group: *fixesGroup

  - name: 'YUPNavmeshPatch.esm'
    group: *fixesGroup
    inc:
    ...

When it comes to incompatible inc entries, we usually use one of the following structures:

  - name: 'Test.esp'
    inc:
      - 'Example 1.esp'
      - 'Example 2.esp'

  - name: 'CosmeticVampireOverhaul.esp'
    inc:
      - name: 'BVFE.esp'
        display: 'Fangs and Eyes - A Vampire Appearance Mod'

  - name: 'Book Covers Skyrim Updated.esp'
    inc:
      - name: 'LegacyoftheDragonborn.esm'
        condition: 'not checksum("Book Covers Skyrim Updated.esp", 6D8408E1)'

  - name: 'Lux - Eli Breezehome patch.esp'
    inc:
      - name: 'Eli_Breezehome.esp'
        display: 'Eli''s Breezehome Optimization'
        condition: 'version("Eli_Breezehome.esp", "1.6.0", >=)'

So as you can see, a plugin name Example.esp get's added as an inc entry just like that. Or it can also be added incapsulated as a name, with either a display or condition key attached (or both).

The detail key is usually used for the cleaning messages:

  # Cleaning Data Anchors
    - &quickClean
      util: '[SSEEdit](https://www.nexusmods.com/skyrimspecialedition/mods/164)'
      detail: 'A guide to cleaning plugins using xEdit can be found [here](https://tes5edit.github.io/docs/7-mod-cleaning-and-error-checking.html#ThreeEasyStepstocleanMods).'

    - &reqManualFix
      util: '[SSEEdit](https://www.nexusmods.com/skyrimspecialedition/mods/164)'
      detail: 'It is strongly recommended not to use mods that contain **deleted navmeshes** as they''re known to cause crashes. **Deleted navmeshes** must be corrected manually (a complex process that should be done by the mod author). More information on **deleted navmeshes** is provided [here](https://www.creationkit.com/index.php?title=Fixing_Navmesh_Deletion_Tutorial).'

Last but not least, creating and using a message anchor (&checkScript) is done in a different way. While we could add custom messages directly to plugins (and do so within a couple of places), we nowadays make the effort to check, if we either can reuse existing message anchors (see the Prelude for that), or create new ones that can be translated and as such, be understood by more people.

@pStyl3
Copy link
Member

pStyl3 commented Feb 17, 2024

NavmeshOverhaul.esm should also be loaded before YUP, according to https://www.nexusmods.com/newvegas/mods/81003?tab=description but I see no way of specifying that?

That can be done by specifying that YUP must load after NavmeshOverhaul.esm. So it would probably be the best course of action to expand our following existing entry

  - name: 'YUP .*\.es[mp]'
    url:
      - link: 'https://www.nexusmods.com/newvegas/mods/51664/'
        name: 'Yukichigai Unofficial Patch - YUP'

by adding a load after to that. So:

  - name: 'YUP .*\.es[mp]'
    url:
      - link: 'https://www.nexusmods.com/newvegas/mods/51664/'
        name: 'Yukichigai Unofficial Patch - YUP'
    after: [ 'NavmeshOverhaul.esm' ]

masterlist.yaml Outdated Show resolved Hide resolved
masterlist.yaml Outdated Show resolved Hide resolved
jaens and others added 3 commits April 4, 2024 18:47
- Main file Version: 5.0
- Navmesh Overhaul YUP Patch v3.0
@MacSplody MacSplody merged commit 35d2bf1 into loot:v0.21 Apr 4, 2024
1 check passed
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.

3 participants