Wiki

Clone wiki

xjdhdr-random-code / Plugin-Resources

Description

Provides a library of pre-created records for modders to use. This allows their mods to be mergeable into Wrye Bash's Bashed Patch, thus saving ESP slots for the end user.

Details

This mod provides a library of pre-created records for modders to use. This allows their mods to be mergeable into Wrye Bash's Bashed Patch, thus saving ESP slots for the end user.

Modders:

All you have to do is load your new mods into the Construction Set with Plugin Resources.esm loaded then ensure that every record needed by your mod is created from a modified version of a record provided by PluginResources.esm and this will allow your mod to be merged into the Bashed Patch.

What are the Rules?

  1. You can only use records from my ESM that have been assigned for your mod. The reason for this is so that you don't use a record that someone else is using in their mod, which would cause overwrites and conflicts if an end-user used the two mods together.

  2. Your finished mod must be mergable in Wrye Bash. If it isn't, you are simply making your mod dependent on another mod for no good reason.

  3. Each plugin you create must use separate records from each other. This is to prevent plugins from overwriting each others' records if a user installs two or more conflicting plugins simultaneously. The only exceptions are for plugins that users need to choose between and are not supposed to install more than one OR if overwriting a record is what you are trying to accomplish.

So how do I get a record assigned to my mod?

Each listed record below has a link to a wiki page on this wiki. The wiki page you visit will have a list of records present in the Plugin Resources ESM and whether or not they are available. To assign a record to your mod, simply edit the Wiki page so that the needed records are listed as being used by your mod. It would also be appreciated if you inform me that you are claiming records for your mod. Then you can and should change the Editor ID for the claimed records to something more appropriate for your mod. After that, simply modify the claimed records to suit your purposes

At the moment, you can use the following records in the ESM without any problems:

A - Co Cr - I K - R S - W
Activator Creature Key Script
AI Package Door Landscape Texture Sigil Stone
Alchemical Apparatus Effect Shader Leveled Creature Soul Gem
Ammunition Enchantment Leveled Item Sound
Animated Object Eyes Leveled Spell Spell
Armor Faction Light Static
Book Flora Load Screen Subspace
Class Furniture Misc. Item Tree
Climate Global Non-Player Character Water
Clothing Grass Potion Weapon
Combat Style Hair Quest Weather
Container Ingredient Race

The following are also provided, but there are some caveats:

Record type Caveat
Cell There are none available by default in the ESM. These have to be specifically requested. The reason is because after you create a new cell, you will have to place some objects in the cell. The problem with doing this is that each object placement is regarded by Wrye Bash as a new reference record and will refuse to merge it into the Bashed Patch. The solution then is to request a new cell and state how many objects you intend to place into the cell. I will then create a new cell with the required number of placeholder references which you then use the CS's Search and Replace function on.
Cell edits can only be merged into the Bashed Patch if CBash is enabled. Since this is still a beta and disabled by default, most end-users won't have it enabled.
Conversation Topic Conversation Topics can only be merged into the Bashed Patch if CBash is enabled. Since this is still a beta and disabled by default, most end-users won't have it enabled.
The Editor ID for Conversation Topics can only be changed using TES4Edit.
Dialog Topic Same as Conversation Topics.

The following are not provided and won't be provided until the conditions noted are met:

Record type Reason
Birthsign All blank birth signs created by my ESM will appear in the Birth signs menu when the player is creating their new character (specifically, in a game without an alternate start mod, it will be the point where Uriel Septim asks the player what sign marked their character's birth). I will not create blank Birthsign records unless there is a way to hide them.
Game Setting The game won't recognize any new settings created by my ESM unless someone hacks Oblivion in such a way that new settings can be recognized. Additionally, Game Setting changes can only be merged into the Bashed Patch if CBash is enabled.
Idle Animation This requires creating a record for every skeleton NIF that every modder using my mod will create and has the potential to create massive conflicts. I might be persuaded (however slim the probability) to create blank records on request but until that happens, I'm not inclined to create them.
Region Are attached to Worldspaces. Won't be added for the same reason Worldspaces won't be added.
Skill The game won't recognise any new skills created by my ESM unless someone hacks Oblivion in such a way that new skills can be recognised. It's probably possible but no one has made it happen.
Worldspace Worldspace edits are only mergable if CBash is enabled. Also, any new objects placed in the worldspace is a new reference, so I would have to custom create blank worldspaces with reference placeholders. That will require much more work to support than Cell records and I'm not confident the result will be mergable. Finally, if the intention is to add objects to one of the worldspaces in Oblivion (e.g. Tamriel), there is a bug in the game where the landscape vanishes if an ESM (i.e. my mod) makes any modifications to a worldspace added by another ESM (which I would need to do to add the blank records).

What if I'm trying to claim a record at the same time as someone else?

Whoever gets their edit in first wins (IE gets the record).

What if there aren't enough available records for my mod?

Simply send me a message requesting some more and I will release an updated ESM with more blank records.

History

1.001, 2019/02/16 * Reworked the blank Global Variables to provide a way for a mod to get Plugin Resource's version (XJPRaVersionVar will contain the version number as displayed in the documentation). * Added a function that can remove every single item from a container's inventory (zzzzXJPRRemoveAllItemsFromPlayerFunctionScript). * Added a container (XjPRTempSafeTransferContainer) that can be used for temporary item storage (particularly useful for preventing duplicated items: https://cs.elderscrolls.com/index.php?title=Common_Mistakes#Avoid_Using_DuplicateAllItems_on_a_Companion ) * Fixed the blank NPC records to no longer create a dirty edit in some circumstances. * Added 5 blank animated objects (XJPRAnimObject0001 - 05). * Added 5 blank classes (XJPRClass0001 - 05). * Added 10 blank quests (XJPRQuest0011 - 020) * Added 30 blank scripts (zzzXJPRScript0021 - 050)

1.000, 2011/03/21 * Initial release.

Incompatibility

None.

Known Issues or Bugs

None.

Credits

My thanks goes to:

  • God for creating us all.
  • Bethesda for creating Oblivion.
  • Nexus Mods for the a one-stop-shop resource for authors and players.
  • LHammonds for the Readme Generator this readme was based on.

Updated