Browse Source

Move plugin and data paths load order over to YAML

* Plugins (and BSAs) are now also in YAML files which define their
  ordering.
* Data paths and their ordering is now governed by a YAML file that
  contains an array of mod names in the order intended for the data path
  load order.
* The seed script as it is in the repo is now used in the deploy;
  previously a duplicate templated copy had been used.
* The cfg generator function has been updated to support the new real
  ordering systems as well as some new lists.  Some code that was used
  twice is now a function (_get_data_paths).
* Added some new lists, for fun.
* Several lists have been updated, mod additions to come in the next
  commit following this.
* Added query managers for new lists.
* The 'mod' field on DataPathLoadOrder should be a ForeignKey after
  all..
* The sitemap now contains *every* page on the site, including list
  steps.
* Many text changes and additions to the CFG Generator HTML, and other
  templates.
* Test updates to go along with all of the above.
tags/3.16
parent
commit
81d1e81a30
Signed by: hristoast <me@hristos.triantafillou.us> GPG Key ID: 5FC7664AD47AA1C5
27 changed files with 1589 additions and 954 deletions
  1. +35
    -12
      bin/seed_db.py
  2. +111
    -44
      momw/momw/cfg.py
  3. +14
    -14
      momw/momw/data_seeds/mod_datapaths.py
  4. +26
    -12
      momw/momw/data_seeds/mod_lists.py
  5. +37
    -0
      momw/momw/data_seeds/mod_plugin_order.py
  6. +0
    -741
      momw/momw/data_seeds/mod_plugins.py
  7. +23
    -0
      momw/momw/data_seeds/yaml-data/android.yml
  8. +11
    -0
      momw/momw/data_seeds/yaml-data/bsa-order.yml
  9. +121
    -11
      momw/momw/data_seeds/yaml-data/data-path-order.yml
  10. +7
    -5
      momw/momw/data_seeds/yaml-data/expanded-vanilla.yml
  11. +20
    -0
      momw/momw/data_seeds/yaml-data/i-heart-vanilla-dc.yml
  12. +1
    -2
      momw/momw/data_seeds/yaml-data/i-heart-vanilla.yml
  13. +982
    -0
      momw/momw/data_seeds/yaml-data/plugin-order.yml
  14. +18
    -13
      momw/momw/data_seeds/yaml-data/total-overhaul.yml
  15. +14
    -0
      momw/momw/managers.py
  16. +26
    -0
      momw/momw/migrations/0023_auto_20200110_1353.py
  17. +11
    -3
      momw/momw/models.py
  18. +3
    -1
      momw/momw/settings.py
  19. +20
    -0
      momw/momw/sitemaps.py
  20. +17
    -16
      momw/momw/templates/cfg_generator.html
  21. +1
    -1
      momw/momw/templates/getting_started.html
  22. +2
    -2
      momw/momw/templates/latest_mods.html
  23. +16
    -20
      momw/momw/templates/mod_snippet.html
  24. +2
    -2
      momw/momw/templates/mods-nav.html
  25. +28
    -30
      momw/momw/tests.py
  26. +1
    -1
      momw/momw/urls.py
  27. +42
    -24
      momw/momw/views.py

+ 35
- 12
bin/seed_db.py View File

@@ -23,7 +23,7 @@ from momw.data_seeds.mod_categories import mod_cats
from momw.data_seeds.mod_datapaths import data_path_load_order
from momw.data_seeds.mod_data import mods
from momw.data_seeds.mod_lists import mod_lists
from momw.data_seeds.mod_plugins import mod_plugins
from momw.data_seeds.mod_plugin_order import plugins_load_order
from momw.data_seeds.mod_tags import mod_tags


@@ -32,19 +32,42 @@ User = get_user_model()


def site_factory():
try:
arg = sys.argv[1]
except IndexError:
arg = None

s1 = Site.objects.get(pk=1)
s1.domain = "0.0.0.0:8666"
s1.name = "Modding-OpenMW.com"
s1.save()

# For testing from my phone.
site2 = {"domain": "192.168.1.100:8666", "name": "Modding-OpenMW.com"}
s2 = Site(**site2)
s2.save()
if arg == "--beta":
s1.domain = "beta.modding-openmw.com"
s1.name = "Beta.Modding-OpenMW.com"

elif arg == "--staging":
s1.domain = "staging.modding-openmw.com"
s1.name = "Staging.Modding-OpenMW.com"

elif arg == "--production":
s1.domain = "modding-openmw.com"
s1.name = "Modding-OpenMW.com"

elif not arg:
s1.domain = "0.0.0.0:8666"
s1.name = "Modding-OpenMW.com"
s1.save()

site3 = {"domain": "localhost:8666", "name": "Modding-OpenMW.com"}
s3 = Site(**site3)
s3.save()
# For testing from my phone.
site2 = {"domain": "192.168.1.100:8666", "name": "Modding-OpenMW.com"}
s2 = Site(**site2)
s2.save()

site3 = {"domain": "localhost:8666", "name": "Modding-OpenMW.com"}
s3 = Site(**site3)
s3.save()

return

s1.save()


def user_factory():
@@ -86,8 +109,8 @@ def main():
run(mod_cats)
run(mod_tags)
run(mods)
run(mod_plugins)
run(mod_lists)
run(plugins_load_order)
run(data_path_load_order)
info("Finished {} db seed!".format(settings.PROJECT_NAME.upper()))



+ 111
- 44
momw/momw/cfg.py View File

@@ -1,9 +1,55 @@
from django.conf import settings
from itertools import chain
from .forms import CfgGeneratorPresetForm, CfgGeneratorSelectionForm
from .models import Mod, Tag
from .models import Mod


def generate_cfg(getdata, visitor_os):
def _get_data_paths(data_paths_list, mods_queryset):
if visitor_os == "linux":
data_paths_list.append('"/home/username/games/Morrowind/Data Files"\n')
elif visitor_os == "macos":
data_paths_list.append('"/Users/username/games/Morrowind/Data Files"\n')
else:
data_paths_list.append('"C:\\games\\Morrowind\\Data Files"\n')

try:
for m in mods_queryset:
if (
m.category.title not in settings.IGNORED_CATS
and m.name not in settings.IGNORED_MODS
):
if isinstance(m.get_moddir_linux, str):
if visitor_os == "linux":
data_paths_list.append(
'"' + m.get_moddir_linux + '"' + "\n"
)
elif visitor_os == "macos":
data_paths_list.append(
'"' + m.get_moddir_macos + '"' + "\n"
)
else:
data_paths_list.append(
'"' + m.get_moddir_windows + '"' + "\n"
)

if isinstance(m.get_moddir_linux, list):
if visitor_os == "linux":
for p in m.get_moddir_linux:
data_paths_list.append('"' + p + '"' + "\n")
elif visitor_os == "macos":
for p in m.get_moddir_macos:
data_paths_list.append('"' + p + '"' + "\n")
else:
for p in m.get_moddir_windows:
data_paths_list.append('"' + p + '"' + "\n")

return data_paths_list

except AttributeError:
# This is a regular GET with no extra data
pass

bsa_mods = []
data_paths = []
extra_cfg = []
@@ -14,34 +60,74 @@ def generate_cfg(getdata, visitor_os):
preset_form = CfgGeneratorPresetForm(getdata)
select_form = CfgGeneratorSelectionForm(getdata)

# A preset button was clicked.
if preset_form.is_valid():
# TODO: an 'all' preset for testing purposes
preset = preset_form.cleaned_data["preset"]
if preset == "expanded vanilla":

if preset == "android/switch":
bsa_mods = Mod.android_switch.exclude(has_bsa__exact={})
extra_cfg = Mod.android_switch.exclude(extra_cfg_raw__exact=None)
plugin_mods = Mod.android_switch.all()
# THANKS: https://stackoverflow.com/a/4412293
used_mods = (
(bsa_mods | plugin_mods)
.distinct()
.order_by("datapathloadorder__order_number")
)

elif preset == "expanded vanilla":
bsa_mods = Mod.expanded_vanilla.exclude(has_bsa__exact={})
extra_cfg = Mod.expanded_vanilla.exclude(extra_cfg_raw__exact=None)
plugin_mods = Mod.expanded_vanilla.all()
# THANKS: https://stackoverflow.com/a/4412293
used_mods = (bsa_mods | plugin_mods).distinct()
used_mods = (
(bsa_mods | plugin_mods)
.distinct()
.order_by("datapathloadorder__order_number")
)

elif preset == "i-heart-vanilla":
elif preset == "i heart vanilla":
bsa_mods = Mod.i_heart_vanilla.exclude(has_bsa__exact={})
extra_cfg = Mod.i_heart_vanilla.exclude(extra_cfg_raw__exact=None)
plugin_mods = Mod.i_heart_vanilla.all()
used_mods = (bsa_mods | plugin_mods).distinct()
used_mods = (
(bsa_mods | plugin_mods)
.distinct()
.order_by("datapathloadorder__order_number")
)

elif preset == "i heart vanilla dc":
bsa_mods = Mod.i_heart_vanilla_dc.exclude(has_bsa__exact={})
extra_cfg = Mod.i_heart_vanilla_dc.exclude(extra_cfg_raw__exact=None)
plugin_mods = Mod.i_heart_vanilla_dc.all()
used_mods = (
(bsa_mods | plugin_mods)
.distinct()
.order_by("datapathloadorder__order_number")
)

elif preset == "tes3mp-friendly":
bsa_mods = Mod.tes3mp_friendly.exclude(has_bsa__exact={})
extra_cfg = Mod.tes3mp_friendly.exclude(extra_cfg_raw__exact=None)
plugin_mods = Mod.tes3mp_friendly.all()
used_mods = (bsa_mods | plugin_mods).distinct()
used_mods = (
(bsa_mods | plugin_mods)
.distinct()
.order_by("datapathloadorder__order_number")
)

elif preset == "total overhaul":
bsa_mods = Mod.total_overhaul.exclude(has_bsa__exact={})
extra_cfg = Mod.total_overhaul.exclude(extra_cfg_raw__exact=None)
plugin_mods = Mod.total_overhaul.all()
used_mods = (bsa_mods | plugin_mods).distinct()
used_mods = (
(bsa_mods | plugin_mods)
.distinct()
.order_by("datapathloadorder__order_number")
)

# Mods were manually selected using the multiple select form.
if select_form.is_valid():
mod_select = select_form.cleaned_data["mod"]
if mod_select:
@@ -59,9 +145,18 @@ def generate_cfg(getdata, visitor_os):
skies_iv = Mod.objects.get(slug="skies-iv")
vurts_hd_skies = Mod.objects.get(slug="vurts-hi-res-skies-and-weathers")
if skies_iv in extra_cfg and vurts_hd_skies in extra_cfg:
# extra_cfg.remove(skies_iv)
extra_cfg = extra_cfg.exclude(pk=skies_iv.pk)

try:
# Special handling for extra cfgs: don't show the weapon sheathing config twice!
weapon_sheathing = Mod.objects.get(slug="weapon-sheathing")
weapon_sheathing_tr = Mod.objects.get(slug="weapon-sheathing-tamriel-rebuilt")
if weapon_sheathing and weapon_sheathing_tr in extra_cfg:
extra_cfg = extra_cfg.exclude(name=weapon_sheathing.name)
except Mod.DoesNotExist:
# Tests..
pass

count = 0
for e in extra_cfg:
if count < extra_cfg.count():
@@ -69,42 +164,14 @@ def generate_cfg(getdata, visitor_os):
e.extra_cfg_raw += "\n"
count += 1

if visitor_os == "linux":
data_paths.append("/home/username/games/Morrowind/Data Files\n")
elif visitor_os == "macos":
data_paths.append("/Users/username/games/Morrowind/Data Files\n")
else:
data_paths.append("C:\\games\\Morrowind\\Data Files\n")
if not preset:
used_mods = Mod.objects.filter(name__in=used_mods).order_by(
"datapathloadorder__order_number"
)

try:
for m in used_mods:
if (
# TODO: Dehardcode this? Or do it better?
m.category.slug not in ("tools", "mod-managers", "collections")
and Tag.objects.get(slug="tes3mp-lua") not in m.tags.all()
or m.slug in ("omwllf")
):
if isinstance(m.get_moddir_linux, str):
if visitor_os == "linux":
data_paths.append(m.get_moddir_linux + "\n")
elif visitor_os == "macos":
data_paths.append(m.get_moddir_macos + "\n")
else:
data_paths.append(m.get_moddir_windows + "\n")
if isinstance(m.get_moddir_linux, list):
if visitor_os == "linux":
for p in m.get_moddir_linux:
data_paths.append(p + "\n")
elif visitor_os == "macos":
for p in m.get_moddir_macos:
data_paths.append(p + "\n")
else:
for p in m.get_moddir_windows:
data_paths.append(p + "\n")
except AttributeError:
# This is a regular GET with no extra data
pass
return bsa_mods, plugin_mods, used_mods, data_paths, extra_cfg
data_paths = _get_data_paths(data_paths, used_mods)

return bsa_mods, plugin_mods, used_mods, data_paths, extra_cfg, preset


def get_visitor_os(request) -> str:


+ 14
- 14
momw/momw/data_seeds/mod_datapaths.py View File

@@ -1,5 +1,5 @@
# from momw.helpers import read_yaml_data
# from momw.models import DataPathLoadOrder, Mod
from momw.helpers import read_yaml_data
from momw.models import DataPathLoadOrder, Mod


def data_path_load_order():
@@ -7,16 +7,16 @@ def data_path_load_order():
Read a YAML file for a list of mod names to assemble a global data path
load order based on DataPathLoadOrder objects.
"""
# order_data = read_yaml_data("data-path-order")
order_data = read_yaml_data("data-path-order")

# count = 1
# for d in order_data:
# try:
# mod = Mod.objects.get(name=d)
# dplo = DataPathLoadOrder({"mod": mod, "order_number": count})
# dplo.save()
# count += 1
# except Mod.DoesNotExist:
# print("ERROR: mod for data path doesn't exist:", d)
# # pass
print("TODO")
count = 1
for d in order_data:
try:
mod = Mod.objects.get(name=d)
dplo = DataPathLoadOrder(**{"mod": mod, "order_number": count})
dplo.save()
count += 1
except Mod.DoesNotExist:
print("ERROR: mod for data path doesn't exist:", d)

+ 26
- 12
momw/momw/data_seeds/mod_lists.py View File

@@ -75,6 +75,17 @@ def mod_lists():
"""
Create all mod lists.
"""
android_switch_obj = generate_mod_list_obj(
**{
"description": """<p>At the moment, you can't use multiple data paths with the Android version. This makes modding a bit trickier since you have to drop everything you want to use on top of the vanilla game data files. Another concern is when the same file exists with different cases; it may not load out the way one expects so it is usually a good idea to just lowercase everything.</p>

<p>This is a list that shouldn't be too difficult to set up in this way, while still adding quite a bit to the game. One more thing: I've not actually tried the Switch port (yet), but I suspect this list would be pretty good for it. If you have this version, please feel free to let me know.</p>""",
"short_description": "A nice list for the Android or Switch versions that's small enough to handle but adds enough spice to be worth it.",
"status": ModList.LIVE,
"title": "Android/Switch",
}
)

expanded_vanilla_obj = generate_mod_list_obj(
**{
"description": """<p>The Expanded Vanilla list tries to preserve the look and feel of the vanilla game while adding a decent amount of new content.</p>
@@ -97,6 +108,17 @@ def mod_lists():
}
)

i_heart_vanilla_dc_obj = generate_mod_list_obj(
**{
"description": """<p>This is an extension of the "I Heart Vanilla" list that includes Tamriel Rebuilt and related mods.</p>

<p>Vanilla, but with a little bit more! The sheer amount of content that's added with just a few extra mods is indeed staggering.</p>""",
"short_description": 'This is an extension of the "I Heart Vanilla" list that includes Tamriel Rebuilt and related mods.',
"status": ModList.LIVE,
"title": "I Heart Vanilla: Director's Cut",
}
)

tes3mp_friendly_obj = generate_mod_list_obj(
**{
"description": "<p>This is a list of client-side plugins which are known to work well with TES3MP.</p>",
@@ -117,24 +139,16 @@ def mod_lists():
}
)

android_switch_list = read_yaml_data("android")
i_heart_vanilla_list = read_yaml_data(i_heart_vanilla_obj.slug)
i_heart_vanilla_dc_list = read_yaml_data("i-heart-vanilla-dc")
expanded_vanilla_list = read_yaml_data(expanded_vanilla_obj.slug)
tes3mp_friendly_list = read_yaml_data(tes3mp_friendly_obj.slug)
total_overhaul_list = read_yaml_data(total_overhaul_obj.slug)

# print()

# ExpandedVanilla = generate_list(expanded_vanilla_list, expanded_vanilla_obj)
# IHeartVanilla = generate_list(i_heart_vanilla_list, i_heart_vanilla_obj)
# TES3MPFriendly = generate_list(tes3mp_friendly_list, tes3mp_friendly_obj)
# TotalOverhaul = generate_list(total_overhaul_list, total_overhaul_obj)

# print(ExpandedVanilla)
# print(IHeartVanilla)
# print(TES3MPFriendly)
# print(TotalOverhaul)

generate_list(android_switch_list, android_switch_obj)
generate_list(expanded_vanilla_list, expanded_vanilla_obj)
generate_list(i_heart_vanilla_list, i_heart_vanilla_obj)
generate_list(i_heart_vanilla_dc_list, i_heart_vanilla_dc_obj)
generate_list(tes3mp_friendly_list, tes3mp_friendly_obj)
generate_list(total_overhaul_list, total_overhaul_obj)

+ 37
- 0
momw/momw/data_seeds/mod_plugin_order.py View File

@@ -0,0 +1,37 @@
from momw.helpers import read_yaml_data, set_mod_plugin
from momw.models import Mod


def plugins_load_order(quiet=False):
"""
Read a YAML file for a list of mod names to assemble a global plugin
load order.

Plugins are assigned to their respective mod with an integer key that
represents their positioning in the global load order.
"""
order_data = read_yaml_data("plugin-order")
count = 1

for data in order_data:
try:
set_mod_plugin(Mod.objects.get(name=data["name"]), count, data["plugin"])
count += 1

except Mod.DoesNotExist:
if not quiet:
print("ERROR: mod for plugin doesn't exist:", data["name"])

bsa_data = read_yaml_data("bsa-order")
count = 1

for data in bsa_data:
try:
set_mod_plugin(
Mod.objects.get(name=data["name"]), count, data["plugin"], bsa=True
)
count += 1

except Mod.DoesNotExist:
if not quiet:
print("ERROR: mod for bsa doesn't exist:", data["name"])

+ 0
- 741
momw/momw/data_seeds/mod_plugins.py View File

@@ -1,741 +0,0 @@
from momw.helpers import set_mod_plugin


def mod_plugins():
# print("Populating Mod plugins ... ", end="")

# Names of mods with a BSA and/or plugin.
a_strange_plant = "A Strange Plant"
abandoned_flatv2 = "Abandoned Flat V2"
adventurers_backpacks = "Adventurer's Backpacks"
almalexia_voice = "Almalexia Voice"
apels_asura_coast_and_sheogorath_region_retexture = (
"Apel's Asura Coast and Sheogorath Region Retexture"
)
at_home_alchemy = "At Home Alchemy"
auto_ammo_equip_for_openmw = "Auto Ammo Equip for OpenMW"
balmora_underworld = "Balmora Underworld"
better_balanced_combat = "Better Balanced Combat"
better_bodies = "Better Bodies"
better_chargen = "Better Chargen"
better_clothes11 = "Better Clothes v1.1"
better_fatigue_usage = "Better Fatigue Usage"
better_regen = "Better Regen"
better_skulls = "Better Skulls"
better_sounds_patch = "Better Sounds 1.1 Patch 2"
birthsigns_are_more_fun_bamf = "Birthsigns Are More Fun BAMF"
blighted_animals_retextured = "Blighted Animals Retextured"
book_rotate = "Book Rotate v5.3"
book_rotate_tr = "Book Rotate - Tamriel Rebuilt Patch"
building_up_uviriths_legacy = "Building Up Uvirith's Legacy"
caldera_apparatus = "Caldera Apparatus"
caldera_mine_expanded = "Caldera Mine Expanded"
carry_on = "CarryOn"
chargen_revamped_expanded_lands = "Chargen Revamped - Expanded Lands"
city_of_balmora_hlaalu_expansion = "City of Balmora - Hlaalu Expansion"
classed_effects = "Classed Effects"
clear_your_name = "Clear Your Name"
comfy_pillow_for_a_restful_sleep = "Comfy Pillow for a restful sleep"
corgi_companion = "Corgi Companion"
creeper_mudcrab_no_trade = "Creeper and Mudcrab No Trade"
daedric_lord_armor_mw_edition = "Daedric Lord Armor Morrowind Edition"
dagoth_ur_voice_addon = "Dagoth Ur Voice addon v10"
dagoth_ur_welcomes_you = "Dagoth Ur Welcomes You"
dark_brotherhood_armor_replacer_expanded = (
"Dark Brotherhood Armor Replacer Expanded"
)
dave_humphreys_furniture_store = "Dave Humphrey's Furniture Store v2.01"
delayed_db_attack_v2 = "Delayed DB Attack V2"
divine_vivec = "Divine Vivec"
dramatic_vivec = "Dramatic Vivec"
dwemer_and_ebony_service_refusal = "Dwemer and Ebony Service Refusal"
epic_aldruhn = "Epic Ald Ruhn"
epic_balmora = "Epic Balmora"
epic_dagon_fel = "Epic Dagon Fel"
epic_sadrith_mora = "Epic Sadrith Mora"
face_of_the_hortator = "Face of the Hortator"
faction_service_beds = "Faction Service - Beds"
fargoths_mountain_hut = "Fargoth's Mountain Hut"
fm_unique_items_compilation = "FM - Unique Items Compilation"
galsiah_character_dev = "Galsiah's Character Development"
gedna_no_longer_immortal = "Gedna No Longer Immortal"
glow_in_the_dahrk = "Glow in the Dahrk"
glowing_flames = "Glowing Flames"
golden_saint_variety = "Golden Saint Variety"
gondoliers_license = "Gondolier's License"
graphic_herbalism_mwse_and_openmw_edition = (
"Graphic Herbalism - MWSE and OpenMW Edition"
)
graphic_herbalism = "Graphic Herbalism"
graphic_herbalism_extra_mining = "Graphic Herbalism Extra (Mining)"
graphic_herbalism_no_glow = "Graphic Herbalism ADD_ON (No Glow)"
graphic_herbalism_tr = "Graphic Herbalism Tamriel Rebuilt Add-on"
graphic_herbalism_tr_extra = (
"Graphic Herbalism Tamriel Rebuilt Add-on Extra (minerals and egg clusters)"
)
house_dagoth_difficulty = "House Dagoth Difficulty Mod"
illegal_items = "Illegal Items"
illuminated_palace_of_vivec = "Illuminated Palace of Vivec"
illys_solsteim_rumour_fix = "Illy's Solsteim Rumour Fix v1.0"
immersive_madness = "Immersive Madness"
imperial_dwemer_society = "The Imperial Dwemer Society"
imperial_forts_retexture = "Imperial Forts Retexture"
improved_better_skulls = "Improved Better Skulls"
improved_shrine_journal_entries = "Improved Shrine Journal entries"
kilcundas_balmora = "Kilcunda's Balmora"
linoras_leveling_mod = "Linoras Leveling Mod"
lower_1st_person_sneak = "Lower First Person Sneak Mode"
lyithdonea_the_azurian_isles = "Lyithdonea - The Azurian Isles"
madd_leveler = "Madd Leveler"
magic_diversity = "Magic Diversity -COMPLETE-"
magical_missions = "Magical Missions"
magicka_based_skill_progression_ncgd = (
"Magicka Based Skill Progression - ncgdMW Compatility Version"
)
magicka_based_skill_progression_bettersounds_ncgd = (
"Magicka Based Skill Progression - Better Sounds/ncgdMW Compatible"
)
main_quest_enhancers = "Main Quest Enhancers"
main_quest_enhancers_patch = "Main Quest Enhancers Patch"
marksman_overhaul = "Marksman Overhaul"
mines_and_caverns = "Mines and Caverns"
mountainous_red_mountain = "Mountainous Red Mountain"
more_better_clothes = "More Better Clothes Vol I - Vanilla"
morrowind_comes_alive = "Morrowind Comes Alive (MCA)"
morrowind_constructor = "Morrowind Constructor(OpenMW Only)"
morrowind_optimization_patch = "Morrowind Optimization Patch"
mournhold_overhaul = "Mournhold Overhaul v21"
multiple_teleport_marking_openmw_af = (
"Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)"
)
multiple_teleport_marking_openmw_and_tr = (
"Multiple Teleport Marking For Abandoned Flat"
)
mw_containers_animated = "Morrowind Containers Animated"
mw_go_to_jail = "Morrowind Go To Jail"
mw_go_to_jail_expansions = "Morrowind Go To Jail Mournhold and Solstheim"
nastier_camonna_tong = "Nastier Camonna Tong"
ncgd = "Natural Character Growth and Decay - MW"
new_beast_bodies = "New Beast Bodies - Clean Version"
new_boots_of_blinding_speed = "New Boots of Blinding Speed"
new_fists_of_randagulf = "New Fists of Randagulf"
new_lords_mail = "New Lord's Mail"
nil_ruhn = "Nil-Ruhn Velothi-Style house"
no_resting_outdoors = "No Resting Outdoors"
nx9_guards_complete = "NX9 guards complete"
official_plugins_bethesda = "Bethesda's Official Plugins"
official_plugins_fixes_v11 = "Official Plugins Fixes v1.1"
omwllf = "OMWLLF"
on_the_move = "On the move - the Ashlander Tent Deluxe remod"
on_the_rocks_for_openmw = "Taddeus On the Rocks with normal maps for OpenMW"
openmw_containers_animated = "OpenMW Containers Animated"
ozzys_grass_merged = "Ozzy's Grass Merged (OpenMW compatible)"
patch_for_purists = "Patch for Purists"
pearls_and_pirates = "Pearls and Pirates"
personal_effects = "Personal Effects"
played_time = "Played Time for OpenMW"
ports_of_vvardenfell = "Ports Of Vvardenfell"
price_balance = "Price Balance"
projectile_overhaul = "Projectile Overhaul - Modular"
province_cyrodiil = "Province Cyrodiil"
quill_of_feyfolken20fixed = "Quill of Feyfolken - Scroll Enchanting"
races_are_more_fun_ramf = "Races Are More Fun RAMF"
races_redone = "Races Redone"
redoran_council_hall_improvement = "Redoran Council Hall Improvement"
regen_and_stamina_overhaul = "Regen And Stamina Overhaul"
remiros_ascadian_isles_trees_2 = "Remiros' Ascadian Isles Trees 2"
rise_of_house_telvanni = "Rise of House Telvanni"
romance_english = "Romance English Version"
rr_better_telvanni_cephalopod_armor = (
"RR Mod Series - Better Telvanni Cephalopod Armor"
)
rr_holamayan = "RR Mod Series - Holamayan Monastery Replacer"
rr_telvanni_lighthouse_tel_branora = (
"RR Mod Series - Telvanni Lighthouse Tel Branora"
)
rr_telvanni_lighthouse_tel_vos = "RR Mod Series - Telvanni Lighthouse Tel Vos"
rr_vivec_statues = "RR Mod Series - Morrowind Statues Replacer"
sadrith_mora_expanded = "Sadrith Mora Expanded"
scamp_replacer = "Scamp Replacer"
septim_gold_and_dwemer_dumacs = "Septim Gold and Dwemer Dumacs"
signposts_retextured = "Signposts Retextured"
skyrim_home_of_the_nords = "Skyrim: Home Of The Nords"
sobitur_facility = "Sobitur Facility"
solstheim_rumor_fix_fixed = "Solstheim Rumor Fix - Fixed"
sotha_sil_expanded = "Sotha Sil Expanded"
speechcraft_rebalance = "Speechcraft Rebalance"
starfires_npcs = "Starfire's NPCs"
stavs_boxes_gnisis_market = "Stav's Boxes - Gnisis Minaret"
talrivians_state_based_hp_mod = "Talrivian's State-Based HP Mod"
tamriel_data = "Tamriel Data"
tamriel_rebuilt = "Tamriel Rebuilt"
tavern_of_broken_dreams = "Tavern of Broken Dreams"
tel_fyr_amulet_fix = "Tel Fyr Amulet Fix"
the_forgotten_shields = "The Forgotten Shields - Artifacts"
the_key_mod = "The Key Mod"
the_rise_of_the_tribe_unmourned_revised = "The Rise of the Tribe Unmourned Revised"
timescale_change = "TimeScale Change - OpenMW"
to_save_a_falling_wizard = "To Save a Falling Wizard"
tougher_sixth_house = "Tougher Sixth House"
tower_of_vos = "Tower of Vos"
tribunal_delayed = "Tribunal Delayed"
true_lights_and_darkness = "True Lights and Darkness"
trueflame_script_fix = "True Flame Script Fix"
uc_armory = "Unification Compilation: Armory"
uc_nature = "Unification Compilation: Nature"
umbra_blademaster = "Umbra - Blademaster"
unique_finery_replacer = "Unique Finery Replacer UFR"
unofficial_morrowind_official_plugins_patched = (
"Unofficial Morrowind Official Plugins Patched"
)
uviriths_legacy35 = "Uvirith's Legacy"
uviriths_legacy35_tr = "Uvirith's Legacy 3.5 TR add-on 1807"
vanilla_birthsigns_for_openmw = "Vanilla Birthsigns for OpenMW by Klorax"
vivec_guild_of_mages_expansion = "Vivec Guild of Mages Expansion"
vivec_voice_addon_tribunal_version = "Vivec Voice Addon Tribunal Version"
vurts_bc_trees_ii = "Vurts Bitter Coast Trees II"
vurts_grazeland_trees_ii = "Vurts Grazeland Trees II"
vurts_groundcover_for_openmw = "Vurt's Groundcover for OpenMW"
vvardenfell_druglord = "Vvardenfell Druglord"
wealth_within_measure = "Wealth Within Measure"
welcome_to_the_arena_openmw = "Welcome to the Arena - OpenMW Patch"
windows_glow22 = "Windows Glow v. 2.2"
windows_glow_bm = "Windows Glow - Bloodmoon (now with Raven Rock)"
windows_glow_expansion = "Windows Glow Expansion"
windows_glow_tribunal = "Windows Glow - Tribunal"
wolverine_hall_interior_expanded = "Wolverine Hall Interior Expansion"
wyrmhaven = "Wyrmhaven"

mods_and_plugins = [
(starfires_npcs, "Starfires NPC Additions ver-1.11.esp",),
(morrowind_comes_alive, "MCA.esm"),
(morrowind_comes_alive, "MCA - TR Addon.esp"),
(book_rotate, "Book Rotate.esm"),
(trueflame_script_fix, "TrueFlameScript_Fix.esp"),
(patch_for_purists, "Patch for Purists.esm"),
(patch_for_purists, "Patch for Purists - Book Typos.ESP"),
(patch_for_purists, "Patch for Purists - Decimal Errors.ESP"),
(
graphic_herbalism_mwse_and_openmw_edition,
"# NOTE: For Graphic Herbalism MWSE/OpenMW",
),
(
graphic_herbalism_mwse_and_openmw_edition,
"# NOTE: only use one of the below plugins!",
),
(
graphic_herbalism_mwse_and_openmw_edition,
"# correctUV Ore Replacer_fixed.esp",
),
(
graphic_herbalism_mwse_and_openmw_edition,
"correctUV Ore Replacer_respawning.esp",
),
(official_plugins_bethesda, "LeFemmArmor.esp"),
(official_plugins_bethesda, "EBQ_Artifact.esp"),
(official_plugins_bethesda, "Siege at Firemoth.esp"),
(official_plugins_bethesda, "master_index.esp"),
(official_plugins_bethesda, "AreaEffectArrows.esp"),
(official_plugins_bethesda, "adamantiumarmor.esp"),
(official_plugins_bethesda, "bcsounds.esp"),
(official_plugins_bethesda, "entertainers.esp"),
(official_plugins_fixes_v11, "LeFemmArmor.esp"),
(official_plugins_fixes_v11, "EBQ_Artifact.esp"),
(official_plugins_fixes_v11, "Siege at Firemoth.esp"),
(official_plugins_fixes_v11, "master_index.esp"),
(
unofficial_morrowind_official_plugins_patched,
"# NOTE: FOR UMOPP, use the merged plugin",
),
(
unofficial_morrowind_official_plugins_patched,
"# NOTE: OR the individuals. Not both!",
),
(unofficial_morrowind_official_plugins_patched, "# LeFemmArmor.esp"),
(unofficial_morrowind_official_plugins_patched, "# EBQ_Artifact.esp"),
(unofficial_morrowind_official_plugins_patched, "# Siege at Firemoth.esp"),
(unofficial_morrowind_official_plugins_patched, "# master_index.esp"),
(unofficial_morrowind_official_plugins_patched, "# AreaEffectArrows.esp"),
(unofficial_morrowind_official_plugins_patched, "# adamantiumarmor.esp"),
(unofficial_morrowind_official_plugins_patched, "# bcsounds.esp"),
(unofficial_morrowind_official_plugins_patched, "# entertainers.esp"),
(
unofficial_morrowind_official_plugins_patched,
"Unofficial Morrowind Official Plugins Patched.ESP",
),
(wyrmhaven, "Wyrmhaven.esm"),
(to_save_a_falling_wizard, "LPFR_TSAFW.esp"),
(rise_of_house_telvanni, "Rise of House Telvanni.esm"),
(lyithdonea_the_azurian_isles, "MD_Azurian Isles.esm"), # NEEDS CLEANING
(uc_nature, "UCNature.esm"), # NEEDS CLEANING
(on_the_move, "On the Move.esp"), # NEEDS CLEANING
(on_the_move, "OTM_TR.ESP"), # NEEDS CLEANING ????
(nx9_guards_complete, "NX9_Guards_Complete.ESP"), # NEEDS CLEANING
(magic_diversity, "# NOTE: Use only one of the below two"),
(magic_diversity, "# NOTE: plugins for Magic Diversity"),
(magic_diversity, "# Magic Diversity 1.0.ESP"),
(magic_diversity, "Magic Diversity NO SOUND.ESP"),
(better_sounds_patch, "Better_Sounds_1.1_Patch_2.omwaddon"),
(nil_ruhn, "Nil-Ruhn.ESP"),
(wolverine_hall_interior_expanded, "Wolverine Hall Interior Expanded.ESP"),
(vivec_guild_of_mages_expansion, "Vivec_Mages_Guild_Expanded.ESP"),
(nastier_camonna_tong, "Nasty Camonna Tong.esp"),
(dagoth_ur_voice_addon, "Dagoth Ur Voice Addon.esp"),
(almalexia_voice, "Almalexia_Voicev1.esp"), # NEEDS CLEANING
(new_beast_bodies, "New Argonian Bodies - Clean.esp"),
(new_beast_bodies, "New Khajiit Bodies - Clean.esp"),
(races_redone, "Argonian Redone.esp"),
(better_bodies, "Better Bodies.esp"),
(races_redone, "Khajiit Redone.esp"),
(mournhold_overhaul, "# NOTE: For Mournhold Overhaul,"), # NEEDS CLEANING
(mournhold_overhaul, "# NOTE: the plugins are optional!"), # NEEDS CLEANING
(
mournhold_overhaul,
"# Mournhold Overhaul v.2.0 - WG + NPC's.esp",
), # NEEDS CLEANING
(
mournhold_overhaul,
"# Mournhold Overhaul v2.0 - NPC's.esp",
), # NEEDS CLEANING ????
(windows_glow22, "Windows Glow.esp"), # NEEDS CLEANING
(redoran_council_hall_improvement, "Redoran Council Hall improvement.esp"),
(mw_containers_animated, "MW Containers Animated.esp"), # NEEDS CLEANING
(openmw_containers_animated, "Containers Animated.esp"), # NO CLEANING NEEDED
(illuminated_palace_of_vivec, "Illuminated Palace of Vivec.esp"),
(dagoth_ur_welcomes_you, "1.2dagothspartyCLEANED.esp"),
(book_rotate, "Book Rotate - Tribunal v5.3.esp"),
(better_skulls, "Better Skulls.ESP"),
(improved_better_skulls, "Better Skulls.ESP"), # NO CLEANING NEEDED
(book_rotate, "Book Rotate - Bloodmoon v5.3.esp"),
(windows_glow_tribunal, "Windows Glow - Tribunal Eng.esp"), # NEEDS CLEANING
(windows_glow_bm, "Windows Glow - Bloodmoon Eng.esp"), # NEEDS CLEANING
(windows_glow_bm, "Windows Glow - Raven Rock Eng.esp"), # NEEDS CLEANING
(windows_glow_expansion, "abotWindowsGlow.esp"),
(blighted_animals_retextured, "BlightedAnimalsRetextured.esp"),
(gondoliers_license, "gondoliers_license.esp"),
(tavern_of_broken_dreams, "tavern_of_broken_dreams.esp"),
(
comfy_pillow_for_a_restful_sleep,
"ComfyPillowForARestfulSleep.ESP",
), # NO CLEANING NEEDED
(tamriel_data, "Tamriel_Data.esm"),
(tamriel_rebuilt, "TR_Mainland.esm"),
(book_rotate_tr, "Book Rotate - Tamriel Rebuilt Patch.ESP"),
(windows_glow_expansion, "abotWindowsGlowTR1709.esp"),
(morrowind_comes_alive, "MCA - TR Addon.esp"),
(uviriths_legacy35, "Uvirith's Legacy_3.53.esp"),
(building_up_uviriths_legacy, "# NOTE: The Fast Eddie Fix plugin is"),
(building_up_uviriths_legacy, "# NOTE: incompatible with Uvirith's Legacy!"),
(
building_up_uviriths_legacy,
"Building Up Uvirith's Legacy1.1.ESP",
), # NEEDS CLEANING
(building_up_uviriths_legacy, "# Fast Eddie Fix v .0001.esp"),
(
multiple_teleport_marking_openmw_and_tr,
"# NOTE: For Multiple Teleport Marking",
),
(
multiple_teleport_marking_openmw_and_tr,
"# NOTE: be sure to consult the README",
),
(
multiple_teleport_marking_openmw_and_tr,
"# NOTE: for information on which plugins",
),
(
multiple_teleport_marking_openmw_and_tr,
"# NOTE: you should use. The below loadout",
),
(
multiple_teleport_marking_openmw_and_tr,
"# NOTE: Assumes you're using *all* the TR,",
),
(
multiple_teleport_marking_openmw_and_tr,
"# NOTE: Stirk, and Skyrim land addons.",
),
(
multiple_teleport_marking_openmw_and_tr,
"MultiMarkOMW-1.3-TR1807.esp",
), # NO CLEANING NEEDED
(
multiple_teleport_marking_openmw_and_tr,
"# MultiMarkOMW-CompanionTeleportationPatch.esp",
), # NO CLEANING NEEDED
(
multiple_teleport_marking_openmw_and_tr,
"MultiMarkOMW-MysticismBalance-1.1.esp",
), # NO CLEANING NEEDED
(
multiple_teleport_marking_openmw_and_tr,
"MultiMarkOMW_StirkPlugin_2018-08.ESP",
), # NO CLEANING NEEDED
(
multiple_teleport_marking_openmw_and_tr,
"MultiMarkOMW_UL3.51Plugin.ESP",
), # NO CLEANING NEEDED
(
multiple_teleport_marking_openmw_af,
"MultiMarkOMW_AbandonedFlat_Plugin.omwaddon",
), # NO CLEANING NEEDED
(imperial_dwemer_society, "The Imperial Dwemer Society.ESP"),
(caldera_mine_expanded, "DD_Caldera_Expansion.esp"), # NEEDS CLEANING
(speechcraft_rebalance, "SpeechcraftBalance.ESP"),
(
mw_go_to_jail_expansions,
"Go To Jail (Mournhold + Solshteim).ESP",
), # NEEDS CLEANING
(mw_go_to_jail, "Go To Jail.esp"), # NEEDS CLEANING
(marksman_overhaul, "Xenn's Marksman Overhaul.ESP"), # NEEDS CLEANING
(
projectile_overhaul,
"# Projectile Overhaul - Faster Magic Missiles.esp",
), # NO CLEANING NEEDED
(
projectile_overhaul,
"# Projectile Overhaul - Faster Projectiles.esp",
), # NO CLEANING NEEDED
(
projectile_overhaul,
"# Projectile Overhaul - Recovery Chance.esp",
), # NO CLEANING NEEDED
(
projectile_overhaul,
"# Projectile Overhaul - Skyrim Style Weapons.esp",
), # NO CLEANING NEEDED
(
projectile_overhaul,
"Projectile Overhaul - All Modules.esp",
), # NO CLEANING NEEDED
(lower_1st_person_sneak, "LowerFirstPersonSneak.ESP"),
(house_dagoth_difficulty, "HouseDagoth.ESP"),
(tougher_sixth_house, "SG-toughersixth.esp"), # NEEDS CLEANING
(illys_solsteim_rumour_fix, "Illy's Solsteim Rumour Fix.esp"),
(solstheim_rumor_fix_fixed, "Solstheim Rumor Fix - Fixed.esp"),
(graphic_herbalism, "Graphic Herbalism.esp"), # NEEDS CLEANING
(
graphic_herbalism_no_glow,
"Graphic Herbalism - No Glow.esp",
), # NEEDS CLEANING
(gedna_no_longer_immortal, "GednaNoLongerImmortal.ESP"),
(illegal_items, "Kindi's Illegal Items.esp"), # NO CLEANING NEEDED
(
dwemer_and_ebony_service_refusal,
"Dwemer and Ebony Service Refusal.ESP",
), # NEEDS CLEANING
(
dark_brotherhood_armor_replacer_expanded,
"# NOTE: Choose only one of the below two plugins for Dark Brotherhood Armor Replacer Expanded!",
),
(dark_brotherhood_armor_replacer_expanded, "# DM_DB Armor Replacer-Exp.esp"),
(dark_brotherhood_armor_replacer_expanded, "DM_DB Armor Replacer-ExpDDBA.esp"),
(delayed_db_attack_v2, "DB_Attack_Mod.esp"),
(tribunal_delayed, "TribunalDelay.ESP"),
(price_balance, "Price Balance.ESP"),
(clear_your_name, "Clear Your Name.esp"),
(
better_balanced_combat,
"# NOTE: For Better Balanced Combat - only use the plugins for the",
),
(
better_balanced_combat,
"# NOTE: individual modules or the complete ones. Not both!",
),
(better_balanced_combat, "# Better Balanced Combat Base Module.esp"),
(better_balanced_combat, "# Better Balanced Combat Effects Module.esp"),
(better_balanced_combat, "# Better Balanced Combat Weapon Stats Module.esp"),
(better_balanced_combat, "# Better Balanced Combat Extras Module.esp"),
(
better_balanced_combat,
"# Better Balanced Combat - TR Patch Base Module.esp",
),
(
better_balanced_combat,
"# Better Balanced Combat - TR Patch Effects Module.esp",
),
(
better_balanced_combat,
"# Better Balanced Combat - TR Patch Weapon Stats Module.esp",
),
(better_balanced_combat, "Better Balanced Combat.esp"),
(
better_balanced_combat,
"Better Balanced Combat - Siege at Firemoth Patch.esp",
),
(better_balanced_combat, "Better Balanced Combat - Tamriel Rebuilt Patch.esp"),
(caldera_apparatus, "PB_CalderaApperatus.esp"),
(a_strange_plant, "PB_AStrangePlant.esp"),
(better_fatigue_usage, "BetterFatigueUsage.ESP"),
(at_home_alchemy, "Syc_AtHomeAlchemy.esp"),
(adventurers_backpacks, "Adventurer's backback.ESP"),
(better_chargen, "hw_BetterChargen.ESP"),
(main_quest_enhancers, "# NOTE: It is recommended to use the plugin"),
(main_quest_enhancers, "# NOTE: from the Main Quest Enhancers Patch."),
(main_quest_enhancers, "# MQE_BlightedBeasties.ESP"),
(main_quest_enhancers, "# MQE_CrowdControl.ESP"),
(main_quest_enhancers, "# MQE_GarrisonedGhostgate.ESP"),
(main_quest_enhancers, "# MQE_ImperialIntolerance.ESP"),
(main_quest_enhancers, "# MQE_SixthHouseShrines.ESP"),
(main_quest_enhancers, "# MQE_MainQuestEnhancers.ESP"),
(main_quest_enhancers_patch, "MQE_MainQuestEnhancers.esp"),
(
the_rise_of_the_tribe_unmourned_revised,
"The Rise of the Tribe Unmourned.esp",
),
(the_forgotten_shields, "# NOTE: For Forgotten Shields:"),
(the_forgotten_shields, "# NOTE: Only use one of the below plugins!"),
(the_forgotten_shields, "# TheForgottenShields - Artifacts_VN.esp"),
(the_forgotten_shields, "TheForgottenShields - Artifacts_NG.esp"),
(pearls_and_pirates, "Pearls and Pirates.ESP"),
(magical_missions, "Magical Missions.ESP"), # NEEDS CLEANING
(improved_shrine_journal_entries, "shrinetext.esp"),
(face_of_the_hortator, "Face of the Hortator.esp"),
(sobitur_facility, "DA_Sobitur_Facility_Clean.ESP"), # NEEDS CLEANING
(sobitur_facility, "DA_Sobitur_Quest_Part_1 Clean.esp"), # NEEDS CLEANING
(sobitur_facility, "DA_Sobitur_Quest_Part_2 Clean.esp"), # NEEDS CLEANING ????
(sobitur_facility, "DA_Sobitur_Repurposed_1.ESP"), # NEEDS CLEANING
(sobitur_facility, "DA_Sobitur_TRIngred_Compat.ESP"), # NEEDS CLEANING ????
(skyrim_home_of_the_nords, "Sky_Main.esm"), # NEEDS CLEANING ????
(
multiple_teleport_marking_openmw_and_tr,
"MultiMarkOMW_SkyPlugin2019_03_21.ESP",
), # NO CLEANING NEEDED
(province_cyrodiil, "Cyrodiil_Main.esm"), # NEEDS CLEANING
(tamriel_rebuilt, "TR_Factions.esp"),
(
graphic_herbalism_tr_extra,
"Graphic Herbalism TR Extra.ESP",
), # NEEDS CLEANING ????
(
graphic_herbalism_tr,
"Graphic Herbalism Tamriel_Data.esp",
), # NEEDS CLEANING ????
(morrowind_optimization_patch, "Lake Fjalding Anti-Suck.ESP"),
(glow_in_the_dahrk, "GITD_Telvanni_Dormers.ESP"),
(glow_in_the_dahrk, "GITD_Telvanni_Dormers_Exterior.ESP"),
(glow_in_the_dahrk, "GITD_Telvanni_Dormers_Interiors.ESP"),
(glow_in_the_dahrk, "GITD_WL_RR_Interiors.esp"),
(tamriel_rebuilt, "# NOTE: The following two plugins are optional and may"),
(tamriel_rebuilt, "# NOTE: cause your save to be incompatible with updates."),
(tamriel_rebuilt, "# NOTE: They are disabled by default."),
(tamriel_rebuilt, "# TR_Preview.esp"),
(tamriel_rebuilt, "# TR_Travels.esp"),
(abandoned_flatv2, "Abandoned_Flatv2_0.esp"), # NEEDS CLEANING
(fargoths_mountain_hut, "fargoths_mountain_hut.esp"), # NO CLEANING NEEDED
(uviriths_legacy35_tr, "UL_3.5_TR_18.07_Add-on.esp"),
(immersive_madness, "CultSheog-1.02.ESP"), # NEEDS CLEANING
(immersive_madness, "CultSheog-TR1807.esp"), # NEEDS CLEANING ????
(tower_of_vos, "Tower Vos.ESP"),
(sadrith_mora_expanded, "SadrithMoraExpandedTR.esp"), # NEEDS CLEANING
(epic_balmora, "BIG_BALMORA.ESP"),
(epic_dagon_fel, "Epic Dagon Fel.esp"),
(epic_aldruhn, "# NOTE: For Epic Ald Ruhn: the plugin with the lowercase 'a'"),
(epic_aldruhn, "# NOTE: in Aldruhn is the one with MRM compatibility!"),
(epic_aldruhn, "# Epic_aldruhn.esp"),
(epic_aldruhn, "Epic_Aldruhn.esp"),
(epic_sadrith_mora, "Epic_SadrithMora.esp"),
(imperial_forts_retexture, "Detailed_Imperial_forts.esp"),
(
rr_telvanni_lighthouse_tel_branora,
"RR_Telvanni_Lighthouse_Tel Branora_Eng.ESP",
),
(rr_telvanni_lighthouse_tel_vos, "RR_Telvanni_Lighthouse_Tel Vos_Eng.ESP"),
(rr_vivec_statues, "RR_Vivec_Statues_Eng.esp"),
(rr_holamayan, "RR_Holamayan_Eng.ESP"), # NEEDS CLEANING ????
(dramatic_vivec, "Dramatic Vivec.esp"),
(stavs_boxes_gnisis_market, "Stav_gnisis_minaret.ESP"),
(vurts_grazeland_trees_ii, "Vurt's Grazelands Unique Trees.ESP"),
(vurts_bc_trees_ii, "Vurt's BC Tree Replacer II.ESP"), # NEEDS CLEANING
(
remiros_ascadian_isles_trees_2,
"# NOTE: For Remiros' Ascadian Isles Trees 2",
),
(
remiros_ascadian_isles_trees_2,
"# NOTE: the mod author does not recommend using the lush",
),
(
remiros_ascadian_isles_trees_2,
"# NOTE: version, which is what provides this plugin.",
),
(
remiros_ascadian_isles_trees_2,
"Remiros' Ascadian Isles Trees 2 - Unique Trees.ESP",
),
(
apels_asura_coast_and_sheogorath_region_retexture,
"Apel's_Asura_Coast_Fix.esp",
), # NEEDS CLEANING
(ports_of_vvardenfell, "Ports Of Vvardenfell V1.6.ESP"), # NEEDS CLEANING
(kilcundas_balmora, "Kilcunda's Balmora.ESP"), # NEEDS CLEANING
(balmora_underworld, "FLG - Balmora's Underworld V1.1.esp",), # NEEDS CLEANING
(on_the_rocks_for_openmw, "OTR_Coast_Variety.esp"), # NEEDS CLEANING
(scamp_replacer, "CreeperReplacer.esp"),
(creeper_mudcrab_no_trade, "PB_CreeperMudcrab.esp"),
(rr_better_telvanni_cephalopod_armor, "RR_Danke's_Cephalopod_Armor_Eng.esp"),
(daedric_lord_armor_mw_edition, "DaedricArmor.esp"),
(uc_armory, "UCArmoryUnique.ESP"),
(the_key_mod, "The Key Mod.esp"),
(new_lords_mail, "New Lord's Mail.ESP"),
(new_fists_of_randagulf, "New Randagulf's Fists.ESP"),
(new_boots_of_blinding_speed, "New Boots of Blinding Speed.ESP"),
(unique_finery_replacer, "UFR_v3dot2_noRobe.esp"), # NEEDS CLEANING
(
fm_unique_items_compilation,
"FM - Unique Items v1.0.ESP",
), # NO CLEANING NEEDED
(better_clothes11, "Better Clothes_v1.1.esp"), # NEEDS CLEANING
(vivec_voice_addon_tribunal_version, "Vivec_Voice_addon TRIBUNAL.esp"),
(umbra_blademaster, "Umbra, Blademaster.ESP"),
(divine_vivec, "Floating Vivec.ESP"), # NO CLEANING NEEDED
(golden_saint_variety, "Golden Saint Variety.ESP"), # NO CLEANING NEEDED
(more_better_clothes, "More Better Clothes.ESP"),
(
graphic_herbalism_extra_mining,
"Graphic Herbalism Extra.esp",
), # NEEDS CLEANING
(
septim_gold_and_dwemer_dumacs,
"# NOTE: The following *seven* plugins for Septim Gold",
),
(
septim_gold_and_dwemer_dumacs,
"# NOTE: and Dwemer Dumacs are optional. Only use one",
),
(septim_gold_and_dwemer_dumacs, "# NOTE: of the naming plugins at a time."),
(septim_gold_and_dwemer_dumacs, "# Septim_Gold_v7.0.esp"),
(septim_gold_and_dwemer_dumacs, "# SN_Gold_v.3 (Drake Dumac)001.esp"),
(septim_gold_and_dwemer_dumacs, "# SN_Gold_v.3 (Drakes Dumacs).esp"),
(septim_gold_and_dwemer_dumacs, "# SN_Gold_v.3 (Septim Dumac).esp"),
(septim_gold_and_dwemer_dumacs, "# SN_Gold_v.3 (Septim).esp"),
(septim_gold_and_dwemer_dumacs, "# SN_Gold_v.3 (Septims Dumacs).esp"),
(septim_gold_and_dwemer_dumacs, "# SN_Gold_v.3 (Septims).esp"),
(
quill_of_feyfolken20fixed,
"Quill of Feyfolken 2.0 [fixed].esp",
), # NEEDS CLEANING
(welcome_to_the_arena_openmw, "Welcome to the Arena! v6.6.esp"),
(chargen_revamped_expanded_lands, "CREL_Complete_v3.1.esp"),
(personal_effects, "Personal Effects.ESP"),
(classed_effects, "Classed Effects.omwaddon"),
(city_of_balmora_hlaalu_expansion, "City of Balmora.ESP"),
(mines_and_caverns, "# NOTE: Clean_BlindCaveFish.esp is optional"),
(mines_and_caverns, "Clean_BlindCaveFish.esp"),
(mines_and_caverns, "Clean_Mines & Caverns.esp"),
(talrivians_state_based_hp_mod, "Talrivian's State-Based HP Mod v.2.2.esp"),
(wealth_within_measure, "# NOTE: Only use one of the following two"),
(wealth_within_measure, "# NOTE: plugins for Wealth Within Measure"),
(wealth_within_measure, "# WealthWithinMeasure_v1.25.esp"),
(wealth_within_measure, "WealthWithinMeasure_TR_v1.25.esp"),
(uviriths_legacy35, "UL_3.5_RoHT_1.52_Add-on.esp"),
(uviriths_legacy35, "UL_3.5_TR_16.12_Add-on.esp"),
(sotha_sil_expanded, "# NOTE: For Sotha Sil Expanded:"),
(sotha_sil_expanded, "# NOTE: use the plugin from the 2.2 patch archive"),
(sotha_sil_expanded, "Sotha Sil Expanded.ESP"),
(romance_english, "# NOTE: For Romance: The prostitution plugin is not"),
(romance_english, "# NOTE: compatible with the bisexual plugin."),
(romance_english, "# NOTE: Only enable one at a time."),
(romance_english, "Romance_v37EV.esp"),
(romance_english, "Romance_Follow_v10EV.esp"),
(romance_english, "Bisexual_v10EV.esp"),
(romance_english, "# Prostitution_v12EV.esp"),
(vvardenfell_druglord, "Vvardenfell Druglord.esp"),
(vvardenfell_druglord, "Skooma Anonymous.esp"),
(corgi_companion, "md_corgi_companion.esp"),
(signposts_retextured, "PB_SignpostsRetextured.esp"),
(signposts_retextured, "PB_SignpostsRetexturedTR.esp"),
(
true_lights_and_darkness,
"True_Lights_And_Darkness_1.1.esp",
), # NEEDS CLEANING
(
glowing_flames,
"Glowing Flames - NoMoreLightlessFlames v1.1.ESP",
), # NO CLEANING NEEDED
(
glowing_flames,
"Glowing Flames - TrueLightsAndDarkness Tweaks.ESP",
), # NO CLEANING NEEDED
(vurts_groundcover_for_openmw, "Vurt's Groundcover - BC, AI, WG, GL.esp"),
(vurts_groundcover_for_openmw, "Vurt's Groundcover - Reeds.esp"),
(vurts_groundcover_for_openmw, "Vurt's Groundcover - Solstheim.esp"),
(vurts_groundcover_for_openmw, "Vurt's Groundcover - The Ashlands.esp"),
(dave_humphreys_furniture_store, "dh_furn.esp"),
(dave_humphreys_furniture_store, "dh_furn_stores.esp"),
(dave_humphreys_furniture_store, "dh_thriftshop.esp"),
(morrowind_constructor, "builder - OMW.esp"),
(ozzys_grass_merged, "Ozzy's Grass - Merged.esp"),
(tel_fyr_amulet_fix, "AmuletTelFyrFix.omwaddon"),
(carry_on, "CarryOn.omwaddon"),
(faction_service_beds, "# NOTE: For Faction Service - Beds, use either"),
(faction_service_beds, "# NOTE: the Charge Version or the Lite Version."),
(faction_service_beds, "# NOTE: Not both!"),
(faction_service_beds, "Charge Version - Faction Bed Service v1.3.omwaddon"),
(faction_service_beds, "# Lite Version- Faction Bed Service v1.1.omwaddon"),
(
no_resting_outdoors,
"# NOTE: For No Resting Outdoors: The plugin name will vary",
),
(no_resting_outdoors, "# NOTE: depending on the version you choose."),
(no_resting_outdoors, "Cot Version - NoRestingOutdoors!.omwaddon"),
(mountainous_red_mountain, "MRM.esm"),
(played_time, "PlayedTime.omwaddon"),
(auto_ammo_equip_for_openmw, "Auto Ammò Equip for OpenMW.omwaddon"),
(timescale_change, "TimescaleChange.omwaddon"),
(madd_leveler, "# NOTE: Madd Leveler optional extra plugins"),
(madd_leveler, "# NOTE: can be loaded after the base esp."),
(madd_leveler, "Madd Leveler - Base.esp"),
(linoras_leveling_mod, "# NOTE: For Linora's Leveling Mod: Only choose"),
(linoras_leveling_mod, "# NOTE: one of the following three plugins:"),
(linoras_leveling_mod, "# llm-easy.esp"),
(linoras_leveling_mod, "# llm-medium.esp"),
(linoras_leveling_mod, "llm-hard.esp"),
(galsiah_character_dev, "# NOTE: GCD comes with several optional"),
(galsiah_character_dev, "# NOTE: plugins (listed below) that are"),
(galsiah_character_dev, "# NOTE: not designed for use without GCD."),
(galsiah_character_dev, "# NOTE: Consult the GCD readmes for more info."),
(galsiah_character_dev, "Galsiahs Character Development.esp"),
(galsiah_character_dev, "# GCD Restore Potions Fix.esp"),
(galsiah_character_dev, "# GCD better balanced birthsigns.esp"),
(galsiah_character_dev, "# GCD StartScript for Trib or Bloodmoon.esp"),
(ncgd, "ncgdMW-3.2.omwaddon"),
(magicka_based_skill_progression_ncgd, "MBSP ncgdMW edit.omwaddon"),
(
magicka_based_skill_progression_bettersounds_ncgd,
"MBSP-BetterSounds+ncgdMW.omwaddon",
),
(
regen_and_stamina_overhaul,
"# NOTE: Only activate one of the following two plugins:",
),
(regen_and_stamina_overhaul, "# Regen and Stamina-no GMST.omwaddon"),
(regen_and_stamina_overhaul, "Regen and Stamina.omwaddon"),
(better_regen, "BetterRegen.omwaddon"),
(vanilla_birthsigns_for_openmw, "klorax.vanilla_birthsigns.omwaddon"),
(birthsigns_are_more_fun_bamf, "BirthsignsAMFun_BM.esp"),
(races_are_more_fun_ramf, "RAMF.esp"),
(omwllf, "# NOTE: Your OMWLLF plugin may be named differently"),
(omwllf, "OMWLLFMod.omwaddon"),
]

plugin_num = 1
for m, p in mods_and_plugins:
# print("Adding plugin '{p}' for mod: {m}".format(m=m, p=p))
set_mod_plugin(m, plugin_num, p)
plugin_num += 1

mods_and_bsas = [
(windows_glow_tribunal, "Windows Glow TR.bsa"),
(windows_glow_bm, "Windows Glow BM.bsa"),
(tamriel_data, "TR_Data.bsa"),
(tamriel_data, "PT_Data.bsa"),
]

bsa_num = 1
for m, p in mods_and_bsas:
# print("Adding BSA '{p}' for mod: {m}".format(m=m, p=p))
set_mod_plugin(m, bsa_num, p, bsa=True)
bsa_num += 1

# print("Done!")

+ 23
- 0
momw/momw/data_seeds/yaml-data/android.yml View File

@@ -0,0 +1,23 @@
- Patch for Purists
- Unofficial Morrowind Official Plugins Patched
- Morrowind Optimization Patch
- Glow in the Dahrk
- Graphic Herbalism - MWSE and OpenMW Edition
- Project Atlas
- 'Graphic Herbalism - MWSE and OpenMW Edition: Project Atlas Patches'
- OpenMW Containers Animated
- Tamriel Data
- Tamriel Rebuilt
- Province Cyrodiil
- "Skyrim: Home Of The Nords"
- Better Regen
- Natural Character Growth and Decay - MW
- Magicka Based Skill Progression - ncgdMW Compatility Version
- CarryOn
- Gedna No Longer Immortal
- Weapon Sheathing
- Weapon Sheathing - Tamriel Rebuilt
- Auto Ammo Equip for OpenMW
- TimeScale Change - OpenMW
- TrueType fonts for OpenMW
- OMWLLF

+ 11
- 0
momw/momw/data_seeds/yaml-data/bsa-order.yml View File

@@ -0,0 +1,11 @@
- name: Windows Glow - Tribunal
plugin: Windows Glow TR.bsa

- name: Windows Glow - Bloodmoon (now with Raven Rock)
plugin: Windows Glow BM.bsa

- name: Tamriel Data
plugin: TR_Data.bsa

- name: Tamriel Data
plugin: PT_Data.bsa

+ 121
- 11
momw/momw/data_seeds/yaml-data/data-path-order.yml View File

@@ -1,25 +1,63 @@
- Illy's Solsteim Rumour Fix v1.0
- Solstheim Rumor Fix - Fixed
- Mesh Fix v1.2
- Correct Meshes
- Correct UV Mudcrabs
- Correct UV Rocks
- Patch for Purists
- "Bethesda's Official Plugins"
- Official Plugins Fixes v1.1
- Unofficial Morrowind Official Plugins Patched
- Morrowind VanillaPlus textures
- Morrowind Enhanced Textures
- Container Ownership (From Half11's Misc Mods)
- Tamriel Data
- Tamriel Rebuilt
- Province Cyrodiil
- "Skyrim: Home Of The Nords"
- Properly Smoothed Meshes
- Ingredients Mesh Replacer
- Morrowind Optimization Patch
- Windows Glow v. 2.2
- Fixed tavern mesh for Windows Glow 2.2
- Windows Glow - Tribunal
- Windows Glow - Bloodmoon (now with Raven Rock)
- Windows Glow Expansion
- Glow in the Dahrk
- Graphic Herbalism - MWSE and OpenMW Edition
- Project Atlas
- 'Graphic Herbalism - MWSE and OpenMW Edition: Project Atlas Patches'
- Improved Imperial Fort UVs
- Morrowind VanillaPlus textures
- Vanilla Remastered
- MWGigapixel
- Morrowind Enhanced Textures
- Correct UV Trees
- Mesh Improvements 1.7.1
- Mesh Improvements Optimized
- Pixelwind V2
- Morrowind Watercolored v2
- Darknut's World Textures
- Landscape Retexture
- Lougian's Landscape Retexture Normal Mapped
- Intelligent Textures
- Tyddy's Landscape Retexture
- Daedric Ruins - Arkitektora of Vvardenfell
- Redoran Bump mapped
- Redoran - Arkitektora Vol.2
- Hlaalu Normal Mapped for OpenMW
- Hlaalu - Arkitektora Vol.2
- Vivec and Velothi Retexture
- Vivec Normal Mapped for OpenMW
- Vivec and Velothi - Arkitektora Vol.2
- Telvanni Bump Maps
- Telvanni Retexture
- Improved Telvanni Architecture
- Telvanni - Arkitektora of Vvardenfell
- Necrom - Arkitektora of Morrowind
- Normal Maps for Morrowind
- Dunmer Lanterns Replacer
- AOF Containers
- Detailed Tapestries
- Papill6n various graphics things
- AST Beds Remastered
- Better Kegstands
- Wood Furniture
@@ -31,6 +69,7 @@
- Long Live The Limeware - Retexture
- Long Live The Glassware - Retexture
- Long Live The Plates - Retexture
- Better Skulls
- Improved Better Skulls
- Apel's Various Things - Signs
- R-Zero's Random Retextures (and Replacers)
@@ -45,60 +84,80 @@
- Dagoth Ur Welcomes You
- Dwemer Puzzle Box Replacer
- Illuminated Palace of Vivec
- Morrowind Containers Animated
- OpenMW Containers Animated
- Apel's Various Things - Sacks
- Redoran Council Hall Improvement
- Realistically Stacked Septims and Gold Bags # Used to come after the next, but it's now included
- Septim Gold and Dwemer Dumacs
- Soulgem Replacer
- Telvanni Fireplace Replacer
- Apel's Lighthouse Retexture
- Imperial Forts Retexture
- Imperial Towns Normal Mapped for OpenMW by Lysol
- Imperial Forts Normal Mapped for OpenMW
- Imperial Houses and Forts Retexture - Ordo Arkitektora
- Apel's Lighthouse Retexture
- Shacks Docks and Ships - Arkitektora of Vvardenfell
- Vivec Normal Mapped for OpenMW
- Sewers - Arkitektora of Vvardenfell
- Hlaalu Normal Mapped for OpenMW
- HD Architecture Meshes
- Stronghold Retexture
- Mournhold Overhaul v21
- Hires Town Road Markers
- Road Marker Retextured
- Signposts Retextured
- High-res Skaal Retex
- Better Bodies
- Races Redone
- Races Redone Purple Imperial Fix
- Races Redone - Hair Fix
- TR heads replacer (MacKom's heads)
- New Beast Bodies - Clean Version
- Animation Compilation
- Better Almalexia
- NX9 guards complete
- Compatibility patch for NX9's Guards and RR_Better_Telvanni_Cephlapod_Armor
- Vivec Concept Art Style texture replacer
- Concept Art Vivec Face Replacement
- Divine Vivec
- Golden Saint Variety
- Dagoth Ur Voice addon v10
- Almalexia Voice
- Dirnae's Beast Animations
- Almalexia's Cast for Beasts (OpenMW Exclusive)
- Divine Dagoth Ur
- Divine Dagoths
- Starfire's NPCs
- Morrowind Comes Alive (MCA)
- Nastier Camonna Tong
- Umbra - Blademaster
- Vivec Voice Addon Tribunal Version
- High Poly Candles (fixed)
- Better Clothes v1.1
- Better Clothes "Who's There?" Fix
- More Better Clothes Vol I - Vanilla
- Hirez Better Clothes
- Better Robes
- Robe Overhaul
- Pluginless NoGlow
- 'Unification Compilation: Armory'
- New Gondolier Helm
- Ice Blade of the Monarch PBR
- Unique Finery Replacer UFR
- The Key Mod
- FM - Unique Items Compilation
- Mehrunes' Razor PBR
- Correct Iron Warhammer
- Chrysamere PBR
- True Flame Script Fix
- True Trueflame
- The Tools of Kagrenac
- Oriental Mesh Improvements
- HiRez Armors- Native Styles
- Armors Retexture - Outlander Styles
- Colovian helm and heavy leather boots retexture
- Daedric Lord Armor Morrowind Edition
- Orcish Retexture v1.2
- Better Morrowind Armor
- Ebony Mail Replacer
- MC's Normal Mapped Her Hands Armour Texture Pack for OpenMW
- MC's Normal Mapped Indoril Armour Texture Pack for OpenMW
@@ -112,6 +171,7 @@
- Luminous Atronachs
- Netch Bump Mapped
- Kwama Forager Bump Mapped
- Silt Strider Bump mapped
- Vurts Silt Strider Retexture
- Cliffracer Replacer
- Nix-Hound Replacer
@@ -120,9 +180,12 @@
- Better Spriggans
- Scamp Replacer
- Clannfear Replacer
- 'Unification Compilation: Nature'
- Caverns Bump Mapped
- Balmora Underworld
- Kilcunda's Balmora
- Ports Of Vvardenfell
- Taddeus On the Rocks with normal maps for OpenMW
- Apel's Asura Coast and Sheogorath Region Retexture
- Balmora Road Normal Maps
- Vurts Bitter Coast Trees II
@@ -132,33 +195,43 @@
- Remiros' Ascadian Isles Trees 2
- Vurts Solstheim Tree Replacer II
- Apel's Fire Retexture
- Dramatic Vivec
- RR Mod Series - Holamayan Monastery Replacer
- RR Mod Series - Morrowind Statues Replacer
- RR Mod Series - Telvanni Lighthouse Tel Branora
- RR Mod Series - Telvanni Lighthouse Tel Vos
- Skar Mega Textures
- Epic Sadrith Mora
- Sadrith Mora Expanded
- Epic Ald Ruhn
- Epic Balmora
- City of Balmora - Hlaalu Expansion
- Epic Dagon Fel
- Tower of Vos
- Stav's Boxes - Gnisis Minaret
- Underwater Static Replacer v1.0
- Water Life
- Vurt's Lava and Smoke
- Vurts Hi-res Skies and Weathers
- Skies .IV
- New Starfields
- Dying Worlds - moons retexture
- Skyrim UI Overhaul for Morrowind
- Arukinns Better UI
- Chocolate UI
- Monochrome User Interface
- Animated Main Menu for Morrowind
- HD Intro Cinematic - English
- Title Screen and Logo Video Intro Reworked
- Widescreen Alaisiagae Splash Screens
- Morrowind Loading Screens Extended - v2.1
- HD Concept-art splash screen and main menu
- Nil-Ruhn Velothi-Style house
- Fargoth's Mountain Hut
- Abandoned Flat V2
- Gondolier's License
- Tavern of Broken Dreams
- Comfy Pillow for a restful sleep
- Tamriel Data
- Tamriel Rebuilt
- Necrom - Arkitektora of Morrowind
- Province Cyrodiil
- "Skyrim: Home Of The Nords"
- Lyithdonea - The Azurian Isles
- Sobitur Facility
- More Realistic Dwemer Armor
@@ -171,51 +244,80 @@
- The Forgotten Shields - Artifacts
- Improved Shrine Journal entries
- Pete's Journal 2018
- Magical Missions
- Pearls and Pirates
- Rise of House Telvanni
- The Rise of the Tribe Unmourned Revised
- Main Quest Enhancers
- Main Quest Enhancers Patch
- Wyrmhaven
- To Save a Falling Wizard
- Better Chargen
- Mountainous Red Mountain
- Adventurer's Backpacks
- At Home Alchemy
- Regen And Stamina Overhaul
- Better Fatigue Usage
- Better Regen
- Better Sounds
- Better Sounds 1.1 Patch 2
- Galsiah's Character Development
- Madd Leveler
- Linoras Leveling Mod
- Natural Character Growth and Decay - MW
- Magicka Based Skill Progression - ncgdMW Compatility Version
- Magicka Based Skill Progression - Better Sounds/ncgdMW Compatible
- CarryOn
- Better Balanced Combat
- Caldera Apparatus
- Creeper and Mudcrab No Trade
- Price Balance
- Clear Your Name
- Delayed DB Attack V2
- Dark Brotherhood Armor Replacer Expanded
- Tribunal Delayed
- Illegal Items
- Dwemer and Ebony Service Refusal
- Faction Service - Beds
- Gedna No Longer Immortal
- Graphic Herbalism
- Graphic Herbalism Extra (Mining)
- Graphic Herbalism Tamriel Rebuilt Add-on
- Graphic Herbalism Tamriel Rebuilt Add-on Extra (minerals and egg clusters)
- Graphic Herbalism ADD_ON (No Glow)
- Better Flora
- Epic Plants
- Mushroom Tree Replacer
- Hackle-lo Fixed
- Comberry Bush and Ingredient Replacer
- Pherim's Fire Fern - Plant and Ingredient
- Vurt's Groundcover for OpenMW
- Ozzy's Grass Merged (OpenMW compatible)
- Graphic Herbalism - MWSE and OpenMW Edition
- House Dagoth Difficulty Mod
- Tougher Sixth House
- Lower First Person Sneak Mode
- Marksman Overhaul
- Projectile Overhaul - Modular
- Morrowind Go To Jail
- Morrowind Go To Jail Mournhold and Solstheim
- No Resting Outdoors
- On the move - the Ashlander Tent Deluxe remod
- Played Time for OpenMW
- Weapon Sheathing
- Weapon Sheathing - Tamriel Rebuilt
- Auto Ammo Equip for OpenMW
- TimeScale Change - OpenMW
- Speechcraft Rebalance
- Talrivian's State-Based HP Mod
- Tel Fyr Amulet Fix
- Sotha Sil Expanded
- Quill of Feyfolken - Scroll Enchanting
- Welcome to the Arena
- Welcome to the Arena - OpenMW Patch
- Chargen Revamped - Expanded Lands
- Personal Effects
- Classed Effects
- Romance English Version
- Mines and Caverns
- A Strange Plant
- Wealth Within Measure
@@ -229,8 +331,16 @@
- Building Up Uvirith's Legacy
- Vivec Guild of Mages Expansion
- Wolverine Hall Interior Expansion
- Vvardenfell Druglord
- Corgi Companion
- Vanilla Birthsigns for OpenMW by Klorax
- Birthsigns Are More Fun BAMF
- Races Are More Fun RAMF
- Dave Humphrey's Furniture Store v2.01
- Morrowind Constructor(OpenMW Only)
- Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
- Multiple Teleport Marking For Abandoned Flat
- FIMs Better Spell Effects
- Magic Diversity -COMPLETE-
- Resdayn Suite
- TrueType fonts for OpenMW


+ 7
- 5
momw/momw/data_seeds/yaml-data/expanded-vanilla.yml View File

@@ -2,13 +2,20 @@
- Correct UV Rocks
- Patch for Purists
- Unofficial Morrowind Official Plugins Patched
- Container Ownership (From Half11's Misc Mods)
- Tamriel Data
- Tamriel Rebuilt
- Province Cyrodiil
- "Skyrim: Home Of The Nords"
- Morrowind VanillaPlus textures
- Morrowind Enhanced Textures
- MWGigapixel
- Properly Smoothed Meshes
- Morrowind Optimization Patch
- Glow in the Dahrk
- Graphic Herbalism - MWSE and OpenMW Edition
- Project Atlas
- 'Graphic Herbalism - MWSE and OpenMW Edition: Project Atlas Patches'
- Improved Imperial Fort UVs
- Dunmer Lanterns Replacer
- Improved Better Skulls
@@ -49,10 +56,6 @@
- Gondolier's License
- Tavern of Broken Dreams
- Comfy Pillow for a restful sleep
- Tamriel Data
- Tamriel Rebuilt
- Province Cyrodiil
- "Skyrim: Home Of The Nords"
- Lyithdonea - The Azurian Isles
- Sobitur Facility
- Dwemer Mesh Improvement
@@ -84,7 +87,6 @@
- Dwemer and Ebony Service Refusal
- Faction Service - Beds
- Gedna No Longer Immortal
- Graphic Herbalism - MWSE and OpenMW Edition
- House Dagoth Difficulty Mod
- Tougher Sixth House
- Lower First Person Sneak Mode


+ 20
- 0
momw/momw/data_seeds/yaml-data/i-heart-vanilla-dc.yml View File

@@ -0,0 +1,20 @@
- Patch for Purists
- Unofficial Morrowind Official Plugins Patched
- Morrowind Optimization Patch
- Glow in the Dahrk
- Graphic Herbalism - MWSE and OpenMW Edition
- Project Atlas
- 'Graphic Herbalism - MWSE and OpenMW Edition: Project Atlas Patches'
- OpenMW Containers Animated
- Tamriel Data
- Tamriel Rebuilt
- Province Cyrodiil
- "Skyrim: Home Of The Nords"
- Gedna No Longer Immortal
- Weapon Sheathing
- Weapon Sheathing - Tamriel Rebuilt
- Auto Ammo Equip for OpenMW
- TimeScale Change - OpenMW
- TrueType fonts for OpenMW
- OMWLLF
- tes3cmd

+ 1
- 2
momw/momw/data_seeds/yaml-data/i-heart-vanilla.yml View File

@@ -1,12 +1,11 @@
- Patch for Purists
- Unofficial Morrowind Official Plugins Patched
- Morrowind Enhanced Textures
- Morrowind Optimization Patch
- Glow in the Dahrk
- Graphic Herbalism - MWSE and OpenMW Edition
- Project Atlas
- 'Graphic Herbalism - MWSE and OpenMW Edition: Project Atlas Patches'
- OpenMW Containers Animated
- Skies .IV
- Gedna No Longer Immortal
- Weapon Sheathing
- Auto Ammo Equip for OpenMW


+ 982
- 0
momw/momw/data_seeds/yaml-data/plugin-order.yml View File

@@ -0,0 +1,982 @@
- name: Morrowind Comes Alive (MCA)
plugin: MCA.esm

- name: Book Rotate v5.3
plugin: Book Rotate.esm

- name: Tel Fyr Amulet Fix
plugin: AmuletTelFyrFix.omwaddon

- name: Patch for Purists
plugin: Patch for Purists.esm

- name: Wyrmhaven
plugin: Wyrmhaven.esm

- name: Rise of House Telvanni
plugin: Rise of House Telvanni.esm

- name: Lyithdonea - The Azurian Isles
plugin: MD_Azurian Isles.esm

- name: 'Unification Compilation: Nature'
plugin: UCNature.esm

- name: Tamriel Data
plugin: Tamriel_Data.esm

- name: Tamriel Rebuilt
plugin: TR_Mainland.esm

- name: 'Skyrim: Home Of The Nords'
plugin: Sky_Main.esm

- name: Province Cyrodiil
plugin: Cyrodiil_Main.esm

- name: Mountainous Red Mountain
plugin: MRM.esm

- name: Starfire's NPCs
plugin: Starfires NPC Additions ver-1.11.esp

- name: Morrowind Comes Alive (MCA)
plugin: MCA - TR Addon.esp

- name: True Flame Script Fix
plugin: TrueFlameScript_Fix.esp

- name: Patch for Purists
plugin: Patch for Purists - Book Typos.ESP

- name: Patch for Purists
plugin: Patch for Purists - Decimal Errors.ESP

- name: Graphic Herbalism - MWSE and OpenMW Edition
plugin: "# NOTE: For Graphic Herbalism MWSE/OpenMW"

- name: Graphic Herbalism - MWSE and OpenMW Edition
plugin: "# NOTE: only use one of the below plugins!"

- name: Graphic Herbalism - MWSE and OpenMW Edition
plugin: "# correctUV Ore Replacer_fixed.esp"
- name: Graphic Herbalism - MWSE and OpenMW Edition
plugin: correctUV Ore Replacer_respawning.esp
- name: Bethesda's Official Plugins
plugin: LeFemmArmor.esp

- name: Bethesda's Official Plugins
plugin: EBQ_Artifact.esp

- name: Bethesda's Official Plugins
plugin: Siege at Firemoth.esp

- name: Bethesda's Official Plugins
plugin: master_index.esp

- name: Bethesda's Official Plugins
plugin: AreaEffectArrows.esp

- name: Bethesda's Official Plugins
plugin: adamantiumarmor.esp

- name: Bethesda's Official Plugins
plugin: bcsounds.esp

- name: Bethesda's Official Plugins
plugin: entertainers.esp

- name: Unofficial Morrowind Official Plugins Patched
plugin: "# NOTE: FOR UMOPP, use the merged plugin"

- name: Unofficial Morrowind Official Plugins Patched
plugin: "# NOTE: OR the individuals. Not both!"

- name: Unofficial Morrowind Official Plugins Patched
plugin: Unofficial Morrowind Official Plugins Patched.ESP

- name: Container Ownership (From Half11's Misc Mods)
plugin: Container Ownership.ESP

- name: To Save a Falling Wizard
plugin: LPFR_TSAFW.esp

- name: On the move - the Ashlander Tent Deluxe remod
plugin: On the Move.esp

- name: On the move - the Ashlander Tent Deluxe remod
plugin: OTM_TR.ESP

# TODO: Special handling is needed for when both of these are loaded
- name: NX9 guards complete
plugin: NX9_Guards_Complete.ESP

# TODO: Special handling is needed for when both of these are loaded
- name: Compatibility patch for NX9's Guards and RR_Better_Telvanni_Cephlapod_Armor
plugin: NX9_Guards_Complete.ESP
- name: Better Sounds 1.1 Patch 2
plugin: Better_Sounds_1.1_Patch_2.omwaddon

- name: Nastier Camonna Tong
plugin: Nasty Camonna Tong.esp

- name: Dagoth Ur Voice addon v10
plugin: Dagoth Ur Voice Addon.esp

- name: Almalexia Voice
plugin: Almalexia_Voicev1.esp

- name: New Beast Bodies - Clean Version
plugin: New Argonian Bodies - Clean.esp

- name: New Beast Bodies - Clean Version
plugin: New Khajiit Bodies - Clean.esp

- name: Races Redone
plugin: Argonian Redone.esp

- name: Mournhold Overhaul v21
plugin: "# NOTE: For Mournhold Overhaul, the plugins are"
- name: Mournhold Overhaul v21
plugin: "# NOTE: optional and generally not recommended!"
- name: Mournhold Overhaul v21
plugin: "# Mournhold Overhaul v.2.0 - WG + NPC's.esp"
- name: Mournhold Overhaul v21
plugin: "# Mournhold Overhaul v2.0 - NPC's.esp"
- name: Windows Glow v. 2.2
plugin: Windows Glow.esp

- name: Redoran Council Hall Improvement
plugin: Redoran Council Hall improvement.esp

- name: Morrowind Containers Animated
plugin: MW Containers Animated.esp

- name: OpenMW Containers Animated
plugin: Containers Animated.esp

- name: Illuminated Palace of Vivec
plugin: Illuminated Palace of Vivec.esp

- name: Dagoth Ur Welcomes You
plugin: 1.2dagothspartyCLEANED.esp

- name: Book Rotate v5.3
plugin: Book Rotate - Tribunal v5.3.esp

- name: Better Skulls
plugin: Better Skulls.ESP

- name: Improved Better Skulls
plugin: Better Skulls.ESP

- name: Book Rotate v5.3
plugin: Book Rotate - Bloodmoon v5.3.esp

- name: Windows Glow - Tribunal
plugin: Windows Glow - Tribunal Eng.esp

- name: Windows Glow - Bloodmoon (now with Raven Rock)
plugin: Windows Glow - Bloodmoon Eng.esp

- name: Windows Glow - Bloodmoon (now with Raven Rock)
plugin: Windows Glow - Raven Rock Eng.esp

- name: Windows Glow Expansion
plugin: abotWindowsGlow.esp

- name: Blighted Animals Retextured
plugin: BlightedAnimalsRetextured.esp

- name: Gondolier's License
plugin: gondoliers_license.esp

- name: Tavern of Broken Dreams
plugin: tavern_of_broken_dreams.esp

- name: Comfy Pillow for a restful sleep
plugin: ComfyPillowForARestfulSleep.ESP

- name: Book Rotate - Tamriel Rebuilt Patch
plugin: Book Rotate - Tamriel Rebuilt Patch.ESP

- name: Windows Glow Expansion
plugin: abotWindowsGlowTR1709.esp

- name: Uvirith's Legacy
plugin: Uvirith's Legacy_3.53.esp

- name: Building Up Uvirith's Legacy
plugin: "# NOTE: The Fast Eddie Fix plugin is"

- name: Building Up Uvirith's Legacy
plugin: "# NOTE: incompatible with Uvirith's Legacy!"

- name: Building Up Uvirith's Legacy
plugin: "# Fast Eddie Fix v .0001.esp"

- name: Building Up Uvirith's Legacy
plugin: Building Up Uvirith's Legacy1.1.ESP

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: "# NOTE: For Multiple Teleport Marking be sure to"

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: "# NOTE: consult the README for information on which"

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: "# NOTE: plugins you should use. The below loadout"

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: "# NOTE: Assumes you're using *all* the TR, Stirk,"

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: "# NOTE: and Skyrim land addons."

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: MultiMarkOMW-1.3-TR1807.esp

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: MultiMarkOMW-MysticismBalance-1.1.esp

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: MultiMarkOMW_StirkPlugin_2018-08.ESP

- name: Multiple Teleport Marking (OpenMW and Tamriel Rebuilt)
plugin: MultiMarkOMW_UL3.51Plugin.ESP

- name: Multiple Teleport Marking For Abandoned Flat
plugin: MultiMarkOMW_AbandonedFlat_Plugin.omwaddon

- name: The Imperial Dwemer Society
plugin: The Imperial Dwemer Society.ESP

- name: Caldera Mine Expanded
plugin: DD_Caldera_Expansion.esp

- name: Speechcraft Rebalance
plugin: SpeechcraftBalance.ESP

- name: Morrowind Go To Jail Mournhold and Solstheim
plugin: Go To Jail (Mournhold + Solshteim).ESP

- name: Morrowind Go To Jail
plugin: Go To Jail.esp

- name: Marksman Overhaul
plugin: Xenn's Marksman Overhaul.ESP

- name: Projectile Overhaul - Modular
plugin: Projectile Overhaul - All Modules.esp

- name: Lower First Person Sneak Mode
plugin: LowerFirstPersonSneak.ESP

- name: House Dagoth Difficulty Mod
plugin: HouseDagoth.ESP

- name: Tougher Sixth House
plugin: SG-toughersixth.esp

- name: Illy's Solsteim Rumour Fix v1.0
plugin: Illy's Solsteim Rumour Fix.esp

- name: Solstheim Rumor Fix - Fixed
plugin: Solstheim Rumor Fix - Fixed.esp

- name: Better Bodies
plugin: Better Bodies.esp

- name: Races Redone
plugin: Khajiit Redone.esp

- name: Graphic Herbalism
plugin: Graphic Herbalism.esp

- name: Graphic Herbalism ADD_ON (No Glow)
plugin: Graphic Herbalism - No Glow.esp

- name: Gedna No Longer Immortal
plugin: GednaNoLongerImmortal.ESP

- name: Illegal Items
plugin: Kindi's Illegal Items.esp

- name: Dwemer and Ebony Service Refusal
plugin: Dwemer and Ebony Service Refusal.ESP

- name: Magic Diversity -COMPLETE-
plugin: "# NOTE: Use only one of the below two"

- name: Magic Diversity -COMPLETE-
plugin: "# NOTE: plugins for Magic Diversity"

- name: Magic Diversity -COMPLETE-
plugin: "# Magic Diversity 1.0.ESP"

- name: Magic Diversity -COMPLETE-
plugin: Magic Diversity NO SOUND.ESP

- name: Nil-Ruhn Velothi-Style house
plugin: Nil-Ruhn.ESP

- name: Wolverine Hall Interior Expansion
plugin: Wolverine Hall Interior Expanded.ESP

- name: Vivec Guild of Mages Expansion
plugin: Vivec_Mages_Guild_Expanded.ESP

- name: Dark Brotherhood Armor Replacer Expanded
plugin: "# NOTE: Choose only one of the below two plugins for"

- name: Dark Brotherhood Armor Replacer Expanded
plugin: "# NOTE: Dark Brotherhood Armor Replacer Expanded!"

- name: Dark Brotherhood Armor Replacer Expanded
plugin: "# DM_DB Armor Replacer-Exp.esp"

- name: Dark Brotherhood Armor Replacer Expanded
plugin: DM_DB Armor Replacer-ExpDDBA.esp

- name: Delayed DB Attack V2
plugin: DB_Attack_Mod.esp

- name: Tribunal Delayed
plugin: TribunalDelay.ESP

- name: Price Balance
plugin: Price Balance.ESP

- name: Clear Your Name
plugin: Clear Your Name.esp

- name: Better Balanced Combat
plugin: "# NOTE: For Better Balanced Combat - only use the plugins for the"

- name: Better Balanced Combat
plugin: "# NOTE: individual modules or the complete ones. Not both!"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat Base Module.esp"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat Effects Module.esp"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat Weapon Stats Module.esp"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat Extras Module.esp"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat - TR Patch Base Module.esp"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat - TR Patch Effects Module.esp"

- name: Better Balanced Combat
plugin: "# Better Balanced Combat - TR Patch Weapon Stats Module.esp"

- name: Better Balanced Combat
plugin: Better Balanced Combat.esp

- name: Better Balanced Combat
plugin: Better Balanced Combat - Siege at Firemoth Patch.esp

- name: Better Balanced Combat
plugin: Better Balanced Combat - Tamriel Rebuilt Patch.esp

- name: Caldera Apparatus
plugin: PB_CalderaApperatus.esp

- name: A Strange Plant
plugin: PB_AStrangePlant.esp

- name: Better Fatigue Usage
plugin: BetterFatigueUsage.ESP

- name: At Home Alchemy
plugin: Syc_AtHomeAlchemy.esp

- name: Adventurer's Backpacks
plugin: Adventurer's backback.ESP