To make it easier to integrate fixes and have a logical file system, here are a few guidelines.

Each item in the system needs to have a unique ID. This includes replacements of things in the system files. IDs are also limited in length, so just added a code to the end of the ID will not always work. A good system for fixes is to do one of these two things:
Add an "F" to the id between the type code and the name, and possibly remove the last character of the ID. At least 10 characters are possible for the ID, but that may be the limit. For example, a fix to the Hybrid Bard (id="clsBardHy") can be modified to clsFBardHy or clsFBardH to make it different from the one it's fixing. Then, at the end of the opening tag you will need to include the replaces="clsBardHy" (or the actual ID of the thing you are replacing) to tell the system that it should substitute the new thing in place of any part of the system that normally would look for clsBardHy.
When fixing or adding multiple things, such as changing a base armor from a single version into 6 items that are only distinguishable by their level, appending the level is a great way to distinguish the things. For example, when replacing "arClothArm" (cloth armor) with 3 versions, the basic version with a replaces tag was given the ID "arClothA1", then the last two versions were "arClothA16" and "arClothA26". I snipped the level 1 version down an extra character to make it match the high level ones to make it easier to read them in context.

When you make a temporary patch file, it should be named as specifically as possible. Start with the "Type" of things are fixed (Race, Class, Skill, Power, Feat, etc). Then be as specific as possible to avoid possible name collisions and make it easier to know what is inside. For example, if you have fixed every Bard weapon to make them act as "instrument" implements, the file with those items would be called Item.Instruments.user. Because "Instrument" is both vague enough but also specific to this issue, there is not likely to be a collision. If it's just the swords that can be instruments, you would call it Item.Swords.user, but that could be an issue because another issue might also apply to "swords" and would get a similar name, so you should append a clarifying tag to the name; Item.Swords.Instruments.user will be better.

Patches that span multiple types can be included in a single file. A fix to a class, a feat, and a power would ideally be separated into Class.{[fixedclass]}.user, Feat.{[fixedfeat]}.user, and a Power.{[fixedpower]}.user files, but this won't always happen. A fix for multiple types of things should have a tag of "Various" used in the name to denote that the items inside are not for just fixes for one of the files. The bard fix requires fixes in three types (Class, Item, and MagicWeapon), so ideally it would be 3 files, a Class.Bard.user, an Item.Instruments.user, and a MagicWeapon.Instruments.user. In one file it would get a name like Various.Instruments.user or better, Various.Bard.Instruments.user to make it more clear what's going on. Neither of those is as good as breaking them apart, because it's not clear what files are changed from the outside, but either is better than nothing.

Code for files that cannot be modified using .user files (such as .aug files) can be either uploaded by adding the required fix into the file directly and the patched file included or in a file with just the correction with comments stating where to put the patch in a file named {[NameOfTheFileToFix.Extension]}.{[Reason]}.fix -- that is to say, if a style file needs to be modified to add a power card title color, you would call it "styles_output.aug.PowerTitle.fix". Files with a .fix extension are not automatically loaded into the system, so the patch will need to be manually integrated, but if there are multiple issues that are fixed in the same file between updates two competing replacement files will not work.

Each .user or .fix file should include comments that state what it fixed, how it is fixed, and if it's not clear from the previous two items, why it is fixed.

Last edited Mar 3 at 6:23 PM by DracusMage, version 1