Move wiki pages to LOOT’s website.

Merge branch 'merged-wiki'/pull request #52 from loot/merged-wiki

https://github.com/loot/loot.github.io/pull/52
This commit is contained in:
Frederik “Freso” S. Olesen
2016-04-12 22:31:15 +02:00
21 changed files with 939 additions and 41 deletions
+6 -10
View File
@@ -3,8 +3,6 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>LOOT: {{ page.title }}</title>
<link rel="stylesheet" href="/css/style.css">
<link rel="stylesheet" href="/css/overrides.css">
<link rel="shortcut icon" type="image/ico" href="/images/icon.ico">
<script src="https://code.getmdl.io/1.1.2/material.min.js"></script>
@@ -12,6 +10,9 @@
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en">
<link rel="stylesheet" href="/css/style.css">
<link rel="stylesheet" href="/css/overrides.css">
<body>
<div class="mdl-layout mdl-js-layout mdl-layout--fixed-drawer mdl-layout--fixed-header">
<div class="mdl-layout__drawer">
@@ -36,21 +37,16 @@
<i class="material-icons">people</i>
<span>Credits</span>
</a>
<div class="subheader">On GitHub</div>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="https://github.com/loot">
<a class="mdl-navigation__link mdl-navigation__link--icon" href="https://github.com/loot" target="_blank">
<i class="material-icons">code</i>
<span>Code</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="https://github.com/loot/loot.github.io/wiki">
<i class="material-icons">subject</i>
<span>Wiki</span>
</a>
<div class="subheader">Support &amp; Discussion</div>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/latest-thread/">
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/latest-thread/" target="_blank">
<i class="material-icons">forum</i>
<span>Forum Thread</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="https://webchat.freenode.net/?channels=%23loot">
<a class="mdl-navigation__link mdl-navigation__link--icon" href="https://webchat.freenode.net/?channels=%23loot" target="_blank">
<i class="material-icons">announcement</i>
<span>IRC Channel</span>
</a>
+4
View File
@@ -17,3 +17,7 @@ div.mdl-layout__drawer {
.mdl-navigation__link > span {
color: rgba(0, 0, 0, 0.87);
}
/* Override link font weight. */
a {
font-weight: normal;
}
+49
View File
@@ -112,3 +112,52 @@ code.loot-search-result {
code.loot-search-result:first-of-type {
border-top: none;
}
/* Scale headings */
h3 {
font-size: 20px;
line-height: 30px;
margin: 30px 0 20px;
}
h4 {
font-size: 16px;
line-height: 24px;
margin: 24px 0 16px;
}
h5 {
font-size: 14px;
font-weight: 500;
line-height: 21px;
margin: 21px 0 14px;
}
/* Position readme version selector */
#versionSelect {
position: relative;
top: -2px;
left: 30px;
}
/* Improve code styling. */
pre {
border: 1px solid #e1e4e5;
background-color: white;
padding: 8px;
overflow: auto;
}
pre code:not(.loot-search-result) {
padding: 0;
color: black;
border: none;
}
code:not(.loot-search-result) {
background-color: white;
padding: 2px 5px;
color: #E74C3C;
border: 1px solid #e1e4e5;
}
/* Remove extra margin above the first heading of a page. */
h3:first-child {
margin-top: 0;
}
+74
View File
@@ -0,0 +1,74 @@
---
layout: page
title: Global Priorities
---
<p>Global priorities are used to sort plugins on a "global" scale. LOOT will normally only sort plugins that conflict with each other, but setting a global priority will allow some plugins to load earlier or later than others, even if they don't conflict. This can be useful to make sure that e.g. unofficial patch plugins are loaded earlier than all other non-official plugins. Details about how they work in practice can be seen in <a href="https://loot.github.io/docs/0.8.1/LOOT%20Metadata%20Syntax.html#structs-plugin">the Metadata Syntax document</a>: see the description for the "priority" field under "Plugin Data Structure".</p>
<p>Below are the global priorities as they are grouped for the games currently supported by LOOT.</p>
<h3>Skyrim</h3>
<pre><code>-1999999 = -999999 Update.esm
-1999000 = -999000 DLC, Unofficial Patches, SPO
-1960000 = -960000 Falskar, Wyrmstooth
-1950000 = -950000
-1940000 = -940000
-1930000 = -930000
-1920000 = -920000
-1910000 = -910000
-1900000 = -900000
-1890000 = -890000
0
1980000 = 980000 Skyrim Climate Overhaul
1910000 = 991000 TES5Edit Merge patch
1910000 = 991000 Bash Patch
1920000 = 992000 Post Bash Patch
1930000 = 993000 Dynamic Patches (Sky Proc)
1939999 = 993999 SUM.esp
1940000 = 994000 Qotsafan Compatibility Patches
1950000 = 995000
1960000 = 996000
1970000 = 997000 Deadly Combat PISE Patches
1980000 = 998000</code></pre>
<p>See <a href="https://github.com/loot/skyrim/issues/26">loot/skyrim#26</a> for details.</p>
<h3>Oblivion</h3>
<pre><code>-400999000 = -999000 Oblivion.esm
-400980000 = -980000 DLCShiveringIsles.esp
-400970000 = -970000 DLCHorseArmor.esp
-400960000 = -960000 DLCOrrery.esp
-400950000 = -950000 DLCVileLair.esp
-400940000 = -940000 DLCMehrunesRazor.esp
-400930000 = -930000 DLCSpellTomes.esp
-400920000 = -920000 DLCThievesDen.esp
-400910000 = -910000 DLCBattlehornCastle.esp
-400900000 = -900000 DLCFrostcrag.esp
-400890000 = -890000 Knights.esp
0
400910000 = 991000 Bash Patch
400920000 = 992000
400930000 = 993000
400940000 = 994000
400950000 = 995000
400960000 = 996000
400970000 = 997000
400980000 = 998000
400990000 = 999000</code></pre>
<p>See <a href="https://github.com/loot/oblivion/issues/7">loot/oblivion#7</a> for details.</p>
<h3>Fallout: New Vegas</h3>
<p><em>To be determined...</em></p>
<h3>Fallout 3</h3>
<pre><code>-400999000 = -999000 Official DLCs, Unofficial patch
-300990000 = -990000 Patches besides the unofficial patch
0
400991000 = 991000 Bashed Patch</code></pre>
<p><em>Based on current usage. Further details to be determined.</em></p>
+55
View File
@@ -0,0 +1,55 @@
---
layout: page
title: How To Contribute
---
<p>This page will guide anyone wishing to contribute to LOOT directly through the process of getting set up and making their first contribution. You don't need to be a project member to join in!</p>
<h3>Getting Set Up</h3>
<p>To get started, you'll need:</p>
<ul>
<li>A GitHub account</li>
<li>A Git client, e.g. <a href="http://desktop.github.com/">GitHub Desktop</a></li>
<li>A text editor, e.g. <a href="http://notepad-plus-plus.org/">Notepad++</a></li>
</ul>
<p>This guide will assume you're using GitHub Desktop.</p>
<h3>Forking a Repository</h3>
<p>To contribute changes, you will need to <a href="http://guides.github.com/overviews/forking/">fork</a> the repository that contains the file(s) you wish to edit. LOOT's repositories are listed <a href="https://github.com/loot">here</a>.</p>
<p>Forking lets you contribute to the project without worrying about making a mistake and breaking something, because your changes are checked by others before they get applied to the original repository.</p>
<p><em>Note</em>: A fork needs to be <a href="https://help.github.com/articles/syncing-a-fork">kept in sync</a> with its original repository. If you'd rather avoid the command line, you can delete your fork once your pull request has been accepted, then create a new fork when you next want to submit any changes.</p>
<h3>Making Changes</h3>
<p>Open the repository that contains the file(s) you want to edit in GitHub Desktop, then click the gear icon in the upper right corner of the window and select "Open in explorer" to view the repository contents.</p>
<p>Edit the file(s) you want to make changes to using your text editor or appropriate tool of choice, then once you're done, save the file and switch back to GitHub Desktop. There you can make a commit, sync and create a pull request as described in the forking guide linked to above.</p>
<p>If you're editing a masterlist, see the <a href="Masterlist-Editing.html">Masterlist Editing</a> page for more information.</p>
<h3 id="joining-the-team">Joining the Team</h3>
<p>Contributors can ask or be asked to join the LOOT team, which grants write access to the LOOT repositories, their issue trackers and wikis. Addition of new team members is done by the team admins, who base their decision on the quality of past contributions. If you would like to join the team, and feel comfortable with the workflow, contact a <a href="https://github.com/orgs/loot/people">team member</a>.</p>
<h3 id="contributing-as-a-team-member">Contributing as a Team Member</h3>
<p>Team members don't need to fork LOOT repositories, and can instead clone the original repositories and edit their files directly. This introduces a few additional points to ensure team members work well together:</p>
<ol>
<li>Make sure that your local repository is in sync with the online repository before and after you make any changes. This helps to avoid conflicts.</li>
<li>It's always best to make commits in a new branch, and merge them into the repository's default branch when you're done working. For one-off commits the advantage is not so clear, but if you are making a set of commits with a common theme, a branch will help keep things organised.</li>
<li>If you have committed changes to your local repository, and someone else synced their changes to the online repository after you last synced, then you may need to manually merge the changes. You'll know if you have to do this because GitHub Desktop will give you an error message when you try to sync, in which case see <a href="Resolving-Conflicts.html">Resolving Conflicts</a>.</li>
<li>You should also have a read of the <a href="/docs/team/Team-Policies.html">Team Policies</a> and <a href="/docs/team/Team-Member-Responsibilities.html">Team Member Responsibilities</a> pages to familiarise yourself with their contents.</li>
</ol>
<h3 id="getting-help">Getting Help</h3>
<p>If you have any problems or questions regarding anything relating to LOOT, feel free to ask <a href="https://github.com/orgs/loot/people">team members</a> questions.
<p>Questions are best asked of those who contribute to the relevant repository. For example, if you have a question that's specific to a game's masterlist, it's best to ask that masterlist's contributors. Repository contributors can be viewed by clicking on the contributor count in the bar near the top of the repository's page.</p>
+162
View File
@@ -0,0 +1,162 @@
---
layout: page
title: Masterlist Editing
---
<p>The purpose of this page is to give a bit of information to help with editing a masterlist.</p>
<h3>General Hints</h3>
<ul>
<li>Look in the masterlists for examples, and see the <a href="http://loot.github.io/docs/0.7.1/LOOT%20Metadata%20Syntax.html">Metadata Syntax</a> document for the details.</li>
<li>Only make edits/additions you're confident about - otherwise create an issue in the masterlist repository's issue tracker, or discuss in the BethSoft forum thread.</li>
<li>If you're using Notepad++, you can set it to use spaces instead of tabs when you press the tab key on your keyboard, avoiding YAML parsing errors. To do this, go to Settings &gt; Preferences &gt; Tab Settings &gt; Replace by space. A value of 4 is most common.</li>
<li>Make as many silent comments as you want within the masterlists - it doesn't hurt (within reason). However, make sure to put them <em>above</em> the line(s) that they refer to.</li>
<li>Use blank lines to separate mods that are grouped together or where it helps readability.</li>
<li>Where you put a plugin doesn't matter - you may want to see if there are any related plugins in the masterlist already and group them together, or you can just add the plugin to the end of the list.</li>
<li>Test your changes before uploading them, to make sure you didn't make any syntax mistakes. See <a href="Quickly-Testing-Your-Masterlist-Changes.html">Quickly Testing Your Masterlist Changes</a> for instructions.</li>
</ul>
<h3>Writing Style</h3>
<p>For consistency and to make it easier for people to understand what others have written, it's best to use the following style points when editing the masterlist.</p>
<ul>
<li>Child data nodes should be indented two spaces from their parents, for the best trade-off between compactness and readability.</li>
<li>Maps should be written in YAML's "block" style. Lists should also use the "block" style, unless they contain only one element, in which case the "flow" style can be used for compactness.</li>
<li>Arbitrary string values should be enclosed in single quotes. If the string contains any single quotes, they should be repeated. The string uses below are exempt from quotation, as they have a very limited range of possible values.
<ul>
<li>Message types</li>
<li>Bash Tag names</li>
<li>YAML map keys</li>
<li>Language codes</li>
</ul>
</li>
</ul>
<p>The above points are illustrated in the following example.</p>
<pre><code>name: 'Oscuro''s_Oblivion_Overhaul.esm'
req:
- name: 'example.esp'
display: '[Example Mod](http://www.example.com)'
condition: 'version("Oscuro''s_Oblivion_Overhaul.esm", "15.0", ==)'
tag:
- Actors.Spells
- Graphics
- Invent
- Relations
- Scripts
- Stats
- name: -Relations
condition: 'file("Mart''s Monster Mod for OOO.esm") or file("FCOM_Convergence.esm")'
msg:
- type: say
content: 'Do not clean. "Dirty" edits are intentional and required for the mod to function.'
lang: eng
url: [ 'http://oblivion.nexusmods.com/mods/15256' ]</code></pre>
<pre><code>{name: Oscuro's_Oblivion_Overhaul.esm, req: [{ name: example.esp, display: '[Example Mod](http://www.example.com)', condition: 'version("Oscuro''s_Oblivion_Overhaul.esm", "15.0", ==)' }], tag: [ Actors.Spells, Graphics, Invent, Relations, Scripts, Stats, { name: -Relations, condition: file("Mart's Monster Mod for OOO.esm") or file("FCOM_Convergence.esm") }], msg: [{ type: say, content: Do not clean. "Dirty" edits are intentional and required for the mod to function., lang: eng }], url: [ http://oblivion.nexusmods.com/mods/15256 ]}</code></pre>
<p>Although both are valid YAML, the first is using the correct style, and the second is not.</p>
<p><strong>Note:</strong> Much of the masterlists' content is machine-generated, and as such does not follow the writing style given above. This isn't an issue, and it's not worth spending time systematically changing all the generated entries, but if you're editing a generated entry, you might as well correct its style while you're at it.</p>
<h3>Adding New Entries</h3>
<p>Before you add a new entry for a plugin, make sure that there isn't already an existing entry for it. LOOT will attempt to merge entries if there are more than one for a plugin, but some metadata may be lost in the process, so it's always safer to only have one entry per plugin.</p>
<p><em>Don't</em> open the masterlist and to a <code>Ctrl-F</code> search for the plugin filename, or anything similar. Instead, use the online <a href="http://loot.github.io/search/">Masterlist Search</a> page to perform a search of the masterlist. This search utility has the following features:</p>
<ul>
<li>Accounts for syntax variation.</li>
<li>Finds matching regular expression entries.</li>
<li>Checks against the latest masterlist revision, so is always up-to-date.</li>
<li>Case-insensitive.</li>
</ul>
<p>You can even pass search parameters in the URL, using the syntax</p>
<pre><code>http://loot.github.io/search/?game=&lt;game&gt;&amp;search=&lt;search&gt;</code></pre>
<p>where <code>&lt;game&gt;</code> can be one of <code>oblivion</code>, <code>skyrim</code>, <code>fallout3</code>, <code>falloutnv</code> or <code>fallout4</code>. <code>&lt;search&gt;</code> is the string you want to search for.</p>
<h3>Common Metadata</h3>
<p>Often the same metadata is used for plugins throughout the masterlist, for example generic messages. Rather than having these messages copy/pasted, YAML's anchor/alias feature can be used to define (anchor) the metadata once somewhere, then reference (alias) it wherever else it needs to be used. This has the advantages of guaranteeing consistency, eliminating typos, cutting down the overall size of the masterlist, and improving readability.</p>
<p>In the masterlists, everything that gets anchored and aliased in this manner should go in the <code>common</code> node, which is a sibling of the <code>plugins</code> and <code>globals</code> nodes that are mentioned in the Metadata Syntax documentation. The <code>common</code> node is ignored by LOOT, but the YAML parser still reads it, and will therefore still substitute any aliases made. By putting all the anchors in one place, it makes it easy for other maintainers to take advantage of any existing anchors, and avoids any duplication of anchors.</p>
<p>An example demonstrating just how much of a difference anchors/aliases can make:</p>
<pre><code>common:
- &amp;useBP
type: say
content:
- str: 'Use Bashed Patch tweak instead.'
lang: eng
- str: 'Используйте вместо этого настройку башед патча.'
lang: rus
condition: 'regex("Bashed Patch.*\.esp")'
- &amp;dirtyDoNotClean
type: 'say'
content:
- str: 'Do not clean. "Dirty" edits are intentional and required for the mod to function.'
lang: eng
- str: 'Не очищать. "Грязные" правки оставлены специально и требуются для функционирования мода.'
lang: rus
- &amp;skse1.6.5
name: '..\skse_loader.exe'
display: 'Skyrim Script Extender v1.6.5+'
condition: 'version("..\skse_loader.exe", "0.1.6.5", &lt;)'
plugins:
- name: 'BBLuxurySuite.esm'
msg: [ *dirtyDoNotClean ]
- name: 'Convenient Horses.esp'
msg: [ *dirtyDoNotClean ]
- name: '72HoursRespawn.esp'
msg: [ *useBP ]
- name: 'Respawn\w{3,5}Days{0,1}\.esp'
msg: [ *useBP ]
- name: 'Skyrim 120 Day Respawn.esp'
msg: [ *useBP ]
- name: 'kuerteeDisableLightsFarFromActors.esp'
req: [ *skse1.6.5 ]
- name: 'CUYC_CleanUpYourCorpses.esp'
req: [ *skse1.6.5 ]</code></pre>
<p>Notice how in the example above, the <code>common</code> node has two different types of data structure in the same list (message and file structures). If this was done anywhere in the <code>globals</code> or <code>plugins</code> nodes LOOT would complain, because it expects a certain format, but because LOOT doesn't look at the <code>common</code> node, this is OK.</p>
<h3>Dirty Edit Metadata</h3>
<p>If a user posts dirty counts for a plugin that already has a dirty message for the same CRC, and the counts are different to what's in the masterlist, just replace the existing counts with what the user gave if they used the latest version of TES5Edit. If they didn't give the TES5Edit version number, only replace the existing counts if the new counts are higher (which generally indicates a newer version).</p>
<h4>Intentional ITMs</h4>
<p>A very tiny minority of dirty edits (and only ever ITMs) are intentional and should not be removed - this is for cases where a mod will not function correctly unless certain data have their vanilla values, so the mod includes a copy of the vanilla data to override anything that might change it.</p>
<p>Mod authors who don't have a good understanding of dirty edits will often claim that their edits are required - you must download the mod in question and see for yourself if any such claim is made.</p>
<h3>Adding Bash Tags</h3>
<p>Before adding a tag to a mod, it is recommended that you:</p>
<ol>
<li>Check the mod in TES4Edit or equivalent to see if it does actually require that tag.</li>
<li>Think about the nature of the mod, is it designed so that it is OK if things get overriden, or will it malfunction if that occurs?</li>
<li>Read the mod documentation and the mod description field in Wrye Bash to check whether the mod author has supplied any tags with it, or recommended any to be added.</li>
</ol>
<p>That should ensure you have the correct information, so you can start to add the necessary tags. Use the Wrye Bash/Flash/Flash NV readme as a reference.</p>
<h3>Translating Messages</h3>
<p>If you add a message, there are two ways to go about getting it translated into the other languages LOOT supports:</p>
<ul>
<li>If you are fluent in one of the other supported languages, feel free to translate it yourself. Don't just use a translator such as Google Translate though.</li>
<li>Chances are that you won't be able to translate it into all the languages LOOT supports, so create an issue in the issue tracker for the repository to which the masterlist you're editing belongs. If it's a message defined in the <code>common</code> section of the masterlist, say so. Otherwise, quote the plugin filename to which it is attached. Also quote the English text of message itself, and label the issue with the appropriate translate-language labels so that it can be easily seen by translators.</li>
</ul>
<h3>Message Substitutions</h3>
<p>LOOT has support for metadata message string substitutions, but does not retain the pre-substitution message string and substituted strings, so a metadata file written by LOOT will not retain <code>subs</code> keys, or any specifiers in message content strings. This information is provided in the unlikely event of LOOT writing to a metadata file that you have manually added substitutions to.</p>
@@ -0,0 +1,14 @@
---
layout: page
title: Masterlist Versioning
---
<p>As LOOT develops, it gains support for new metadata syntax features. However, using these new features in the masterlists may break functionality for LOOT users who have not updated to the latest version of LOOT, which isn't ideal. This is especially true when LOOT updates alter the load orders produced, as changing load order can affect game stability, and so users may be unable (rather than unwilling) to upgrade.</p>
<p>To allow the use of new features without breaking older versions of LOOT, the masterlists are also versioned. This is done by storing the versions as branches in the masterlists' Git repositories. Whenever a new version of LOOT that includes metadata syntax changes is released, a new branch for that version is created in each masterlist repository, and that branch is made the default for that version of LOOT.</p>
<p>For example, LOOT v0.7.1 uses the <code>v0.7</code> masterlist branches by default. The next release to include metadata syntax changes will be LOOT v0.8, which will use <code>v0.8</code> masterlist branches. If LOOT v0.9 includes no metadata syntax changes, then it will also use the <code>v0.8</code> masterlist branches.</p>
<p>In addition to the obvious version branches, each masterlist repository also has a <code>master</code> branch. This is the version branch for LOOT v0.5 and v0.6.x, and it is also the default branch for LOOT v0.7.0, as the masterlist versioning system was introduced in conjunction with the release of LOOT v0.7.1. Users of LOOT v0.7.0 can safely switch to using the <code>v0.7</code> branch, but the <code>master</code> branch cannot be renamed without breaking masterlist updates for LOOT v0.5 and v0.6.x users, which is why it keeps its ambiguous name.</p>
<p>Updates to the masterlists should be made to their most recent version branches. Back-porting of non-breaking updates to older version branches is left at the discretion of the contributor.</p>
@@ -0,0 +1,14 @@
---
layout: page
title: Quickly Testing Your Masterlist Changes
---
<p>You can easily test your masterlist changes <em>before</em> syncing them to the online repository, using the method detailed below, which makes LOOT use a local repository of your choosing than the online one.</p>
<ol>
<li>Run LOOT, and open its settings window.</li>
<li>In the Masterlist Repository URL setting's text box for the game you want to test, enter the path to your local repository. Eg. if you have the Skyrim masterlist repository at <code>C:\foo\bar\skyrim</code>, then put that in the box.</li>
<li>Apply the settings, then close and relaunch LOOT. LOOT will now update using your local repository instead of the online one.</li>
</ol>
<p>Note that LOOT won't keep your local repository synced with the online one, so you'll have to do that yourself.</p>
@@ -0,0 +1,69 @@
---
layout: page
title: Resolving Conflicts
---
<p>This is where GitHub Desktop falls short - to resolve conflicts, you're probably going to have to use the command line shell at some point. <a href="http://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project#Private-Small-Team">This page</a> discusses the issue well, but is aimed at people who don't use a GUI client at all. It's still worth a read to get an understanding of the issues, and its diagrams are very good.</p>
<p>Below is some guidance for resolving conflicts using GitHub Desktop and the shell where necessary.</p>
<h4>Merging Conflicts In The Same File</h4>
<p>If the online repository is ahead of your local repository when you try to sync, you'll get an error message ("failed to sync this branch due to unmerged files") and the option to open the shell. Select it, and a command line window will be displayed.</p>
<p>First of all, enter <code>git status</code>. This will show you the current status of your local repository. Since you're trying to fix the sync error, you'll see some info about how you're currently 'rebasing' the 'master' branch. The "unmerged paths" list will show you the file(s) that need to be merged manually.</p>
<p>Open the file(s) that need to be merged in your favorite text editor. You will see that it's a mix of your revision and the latest online revision, with lines starting with <code>&gt;&gt;&gt;&gt;&gt;&gt;&gt;</code>, <code>=======</code> and <code>&lt;&lt;&lt;&lt;&lt;&lt;&lt;</code> separating them. The example after the second paragraph <a href="http://git-scm.com/docs/git-merge#_how_conflicts_are_presented">here</a> may make their meaning clearer, but basically the <code>=======</code> separates the local and online versions of some text, the stuff between <code>=======</code> and <code>&gt;&gt;&gt;&gt;&gt;&gt;&gt;</code> is your version of some text, and the stuff between <code>=======</code> and <code>&lt;&lt;&lt;&lt;&lt;&lt;&lt;</code> is the online version of some text.</p>
<p>Edit the file, picking and choosing the bits that should stay (you may need to combine them or move them around if a lot of changes were made), and once you're done save your changes. There should now be no lines beginning <code>&gt;&gt;&gt;&gt;&gt;&gt;&gt;</code>, <code>=======</code> or <code>&lt;&lt;&lt;&lt;&lt;&lt;&lt;</code> left.</p>
<p>In the shell, enter <code>git add &lt;file&gt;</code> to mark the file you manually merged as resolved. Once all the unmerged paths have been resolved, enter <code>git rebase --continue</code> to finish the merge. You can now close the shell window.</p>
<p>Back in the GitHub Desktop window, click the "sync" button to update the online repository with your merged revision. You're done!</p>
<h5>An Example</h5>
<p>You sync your local repository to the online repository, and open a file containing the following:</p>
<pre><code>This file is to be used to demonstrate conflict resolution.
This is the last line of the file.</code></pre>
<p>You then edit it, so that it becomes:</p>
<pre><code>This file is to be used to demonstrate conflict resolution.
This line has been added by you.
This is the last line of the file.</code></pre>
<p>In the meantime, someone else also edits the same file, and syncs their changes with the online repository, so its copy of the file becomes:</p>
<pre><code>This file is to be used to demonstrate conflict resolution.
This line has been added by somebody else.
This is the last line of the file.</code></pre>
<p>When you open the file for manual merging, it will have changed to:</p>
<pre><code>This file is to be used to demonstrate conflict resolution.
&lt;&lt;&lt;&lt;&lt;&lt;&lt;
This line has been added by somebody else.
=======
This line has been added by you.
&gt;&gt;&gt;&gt;&gt;&gt;&gt;
This is the last line of the file.</code></pre>
<p>You could decide to keep both lines one after another, in which case you would edit the file so that it becomes:</p>
<pre><code>This file is to be used to demonstrate conflict resolution.
This line has been added by somebody else.
This line has been added by you.
This is the last line of the file.</code></pre>
<p>Now you are ready to do the <code>git add &lt;file&gt;</code> step.</p>
@@ -0,0 +1,28 @@
---
layout: page
title: Dirty Edits, Mod Cleaning &amp; CRCs
---
<p>Dirty edits are often a side-effect of mod creation, and are often due to bugs in the utilities Bethesda has provided to create mods, rather than bad practice by mod authors. Dirty edits can cause a wide range of issues, including incorrect game settings, missing content, broken quests and crashing to desktop. The more dirty edits there are in a mod, and the more mods with dirty edits you use, the more likely you are to experience issues.</p>
<p>Thankfully there is a way to remove dirty edits from mods relatively easily, a process known as <em>mod cleaning</em>, using TES4Edit, FO3Edit, FNVEdit or TES5Edit (for Oblivion, Fallout 3, Fallout: New Vegas and Skyrim respectively). Detailed instructions and information on mod cleaning are available for <a href="http://cs.elderscrolls.com/constwiki/index.php/TES4Edit_Cleaning_Guide">Oblivion</a> and <a href="http://www.creationkit.com/TES5Edit_Cleaning_Guide_-_TES5Edit">Skyrim</a>, with the process being largely the same for the others.</p>
<p>The problem of dirty edits is largely a problem of ignorance on the part of mod authors and users alike of the problems dirty mods can cause. As such, there are community efforts to raise awareness of dirty edits and cleaning. LOOT plays a key role in these efforts, as it holds the complete list of all known dirty mods (as does BOSS), and it uses this information to provide notification messages to users for any dirty mods they have installed.</p>
<p>LOOT identifies and describes unclean plugins using four key pieces of information. They are:</p>
<ul>
<li><em><abbr title="Cyclic Redundancy Check">CRC</abbr> value</em>: CRC values are a highly accurate way of identifying files based on their contents, as if the contents change, so does the CRC value. LOOT identifies an unclean plugin by comparing the installed plugin's CRC value against the CRC values for known unclean versions of that plugin. Although it's a lot faster than actually checking for dirty edits in the plugin, this identification method has a few limitations:</li>
<li>it can't detect unknown unclean plugins,</li>
<li>it can't detect plugins that have been edited but not cleaned,</li>
<li>it may report false positives for ITM records when a plugin is used with different versions (most commonly different localisations) of its dependencies than those it was created with.</li>
<li><em><abbr title="Identical To Master">ITM</abbr> Count</em>: ITM records are a type of dirty edit where a mod has overwritten something in the game without actually changing anything. If another mod higher up in the load order makes an intentional change to that thing, it will have its effect cancelled out by the ITM record, which can cause problems. The ITM count is the number of ITM records found and corrected in the mod plugin.</li>
<li><em>Deleted Reference Count</em>: Deleted references are a significant cause of crashes and game bugs. They can be fixed by undeleting and disabling the references, which has the same effect without causing issues. The deleted reference count is equivalent to the <abbr title="Undeleted and Disabled Reference">UDR</abbr> count, which is the number of deleted references that have been fixed, and the two terms are used interchangeably in many places.</li>
<li><em>Deleted Navmesh Count</em>: Like deleting records, deleting navmeshes can cause crashes. However, these cannot be automatically corrected, and require manual cleaning. Navmeshes don't exist in Oblivion, so this information doesn't apply.</li>
</ul>
<p>In addition to the above, there is another type of dirty edit known as a <em>wild edit</em>. These are any edit that is unrelated to the purpose of the mod, and so provide unnecessary opportunity for conflicts with other mods that do need to change the same thing. It can be difficult to tell if an edit is a wild edit, and so they cannot be automatically cleaned. LOOT can still notify users of wild edits and link to information on fixing them if the CRCs of plugins with wild edits are reported, along with details on what needs cleaning.</p>
<p>LOOT and the modding communities rely on user contribution of this information to progress. If you find that a mod contains dirty edits, you should also report this to the mod's author so that they can fix it.</p>
<p><strong>Note:</strong> TES4Edit et al. will include a variety of <em>junk records</em> in the ITM count for a plugin, such as new empty cells that are automatically generated and are almost impossible to remove. These junk records are non-harmful, and LOOT may inform users when a mod contains these and no true ITMs to avoid confusion.</p>
@@ -0,0 +1,58 @@
---
layout: page
title: How To Report Issues Helpfully
---
<h3>Identifying The Issue</h3>
<p>The first step is to identify what type of issue you're having, so that you can report it in the most appropriate place. Issues can be one of two basic types:</p>
<ol>
<li>A metadata issue. It's probably this type if LOOT displays incorrect information, such as incorrect messages and Bash Tag suggestions. It's also probably a metadata issue if LOOT sorts your mods incorrectly, as it's most likely because it's lacking some sorting metadata, or the sorting metadata it has is incorrect.</li>
<li>An application issue. It's probably this type if LOOT behaves incorrectly or unexpectedly, such as crashing or doing the wrong thing when you click on a button. Some sorting mistakes can also be due to application issues, but it's best to treat them as metadata issues unless you know otherwise.</li>
</ol>
<p>Metadata issues are also game-specific, so make a note of which game you're having the issue with.</p>
<h3>Reporting The Issue</h3>
<p>Once you know which type of issue yours is, it's time to report it. It's best to report issues on LOOT's issue trackers, where they can't get lost, overlooked or disorganised, but doing so requires a free GitHub account. The links below can be used to report your issue in the appropriate tracker.</p>
<ul>
<li><a href="https://github.com/loot/oblivion/issues/new">Oblivion metadata</a></li>
<li><a href="https://github.com/loot/skyrim/issues/new">Skyrim metadata</a></li>
<li><a href="https://github.com/loot/fallout3/issues/new">Fallout 3 metadata</a></li>
<li><a href="https://github.com/loot/falloutnv/issues/new">Fallout: New Vegas metadata</a></li>
<li><a href="https://github.com/loot/fallout4/issues/new">Fallout 4 metadata</a></li>
<li><a href="https://github.com/loot/loot/issues/new">LOOT application</a></li>
</ul>
<p>If you don't have a GitHub account and don't want to sign up for one, you can instead report the issue in LOOT's official forum thread.</p>
<h4>Supplying Debug Logs For Application Issues</h4>
<p>If you're experiencing an application issue, you should supply debug logs to help solve the issue. You can do this by following the instructions below.</p>
<ol>
<li>In LOOT's settings, toggle the Enable Debug Logging checkbox on.</li>
<li>Run LOOT again to replicate the issue.</li>
<li>Upload the <code>LOOTDebugLog.txt</code> and <code>CEFDebugLog.txt</code> files generated in the <code>%LOCALAPPDATA%\LOOT</code> folder.</li>
</ol>
<p>If you're reporting the issue in the LOOT application issue tracker, you can attach the log files to your report by dragging and dropping them into the report's text box.</p>
<p>Otherwise, <a href="http://pastebin.com/">Pastebin</a> can be used for logs smaller than 512 KB, or a service such as Dropbox, Google Drive, OneDrive, etc. can be used. Please don't use filesharing websites with countdown timers or captchas.</p>
<p>Note that LOOT wipes the log each time it starts, so if you encounter an issue, don't run LOOT again without first uploading or making a copy of the log.</p>
<h5>If you can't reach the settings dialog</h5>
<p>If LOOT is crashing on startup, or you can't get to its settings dialog for some other reason, its settings file can be manually edited to enable debug logging.</p>
<ol>
<li>Open <code>%LOCALAPPDATA%\LOOT\settings.yaml</code> in a text editor, eg. Notepad.</li>
<li>Replace the text <code>enableDebugLogging: false</code> with <code>enableDebugLogging: true</code>.</li>
<li>Save the file.</li>
</ol>
<p>Then run LOOT and upload your debug log as detailed above.</p>
@@ -0,0 +1,28 @@
---
layout: page
title: Introduction To Load Orders
---
<p>This page provides a general overview of load ordering in the games LOOT supports for those who are unfamiliar with the concept. For simplicity, "the game" will be used when the text refers to any of the games that LOOT supports.</p>
<p>Mod plugins for the game are files that end in <code>.esp</code> or <code>.esm</code>. These files are created by the game's official editing tools, or by third-party modders' tools. They contain various data <em>records</em>, which cover almost all aspects of what is in the game NPCs, items, races, interiors, worlds, quests, etc. and can either be new or changes to the records added by another plugin.</p>
<p>When the game is run, it loads each installed plugin one by one in a certain <em>load order</em>. The load order is important for two reasons:</p>
<ul>
<li>If one plugin changes a record added by another plugin, the former must load after the latter. If it doesn't, the game will crash on launch.</li>
<li>The game can only apply one version of a record, so if multiple plugins contain the same record, the last-loaded plugin's version overrides all others. This is known as the <em>rule of one</em>, and it holds true for almost all record types. Some overrides can cause problems in-game, and a good load order is one that arranges plugins to avoid such problems.</li>
</ul>
<p>There are a few hardcoded rules related to load order:</p>
<ul>
<li>Master plugins always load before non-master plugins. The difference between the two plugin types isn't really relevant, except that a plugin's type is decided by a setting inside it, and not by its file extension (even though <code>.esm</code> stands for Elder Scrolls Master).</li>
<li>There is a limit of 255 active plugins that can be loaded by the game. This isn't strictly a load <em>order</em> thing, but is worth mentioning.</li>
<li>In Skyrim, <code>Skyrim.esm</code> always loads before all other plugins.</li>
<li>In Skyrim, if <code>Update.esm</code> is present, it is always loaded. It loads after all other master plugins, unless it has another position explicitly set.</li>
</ul>
<p>A plugin's position in the load order is often displayed by mod managers as a hexadecimal number, from 00 to FE (0 to 254 in decimal). The plugin with position 00 loads first, and the plugin with position FE is loaded last. Hexadecimal numbers are used to display the load order positions of plugins because these numbers form the first two digits of the code that the game uses to reference the records that the plugin adds, so knowing the numbers allows modders and mod users to determine from which plugin a record is from.</p>
<p>In Oblivion, Fallout 3 and Fallout: New Vegas, load order is determined by plugin timestamps, and the plugins you have accessed are listed in <code>%LOCALAPPDATA%\&lt;game&gt;\plugins.txt</code>. As such, it's best to use a mod manager to create a backup of your load order. In Skyrim, the load order of active plugins is stored in <code>%LOCALAPPDATA%\&lt;game&gt;\plugins.txt</code>, and modding utilities generally use <code>%LOCALAPPDATA%\&lt;game&gt;\loadorder.txt</code> to store the load order of all plugins. This makes backing up your load order as easy as making copies of those two files.</p>
+146
View File
@@ -0,0 +1,146 @@
---
layout: page
title: FAQs
---
<h3>Contents</h3>
<h4>Moving From BOSS</h4>
<ol>
<li><a href="#boss-v3">What happened to BOSS v3?</a></li>
<li><a href="#boss-to-loot">Do I have to switch from BOSS to LOOT?</a></li>
<li><a href="#switching-to-loot">Is there anything I should bear in mind when switching to LOOT?</a></li>
<li><a href="#skyproc-patcher">I have a SkyProc patcher that runs BOSS. How do I get it to run LOOT instead?</a></li>
<li><a href="#unrecognised-plugins">How can LOOT not have unrecognised plugins?</a></li>
<li><a href="#sort-basis">Does LOOT sort based only on plugin content?</a></li>
<li><a href="#correct-load-order">How can the load order LOOT gives be right if BOSS gives a very different load order?</a></li>
</ol>
<h4>Using LOOT</h4>
<ol start="8">
<li><a href="#check-the-ordering">I'm suspicious that LOOT is ordering plugin X after plugin Y. How do I double-check the ordering?</a></li>
<li><a href="#different-load-order">OK, but I still have specific reasons to have in my game a different load order than the one LOOT proposes. What do I do?</a></li>
<li><a href="#obsolete-versions">I've run LOOT with obsolete versions of some plugins and LOOT didn't tell me to update them! How come?</a></li>
</ol>
<h4>Common Issues</h4>
<ol start="11">
<li><a href="#git-errors">I'm getting Git errors when LOOT tries to update its masterlist. How do I fix this?</a></li>
<li><a href="#blank-window">LOOT's window is blank when I'm starting it through Mod Organizer. What's up?</a></li>
<li><a href="#no-version-number">LOOT shows the wrong or no version number for some plugins. Why?</a></li>
<li><a href="#game-not-detected">A game is installed, but LOOT cannot detect it. How do I fix this?</a></li>
<li><a href="#line-breaks">When LOOT updates the load order, it removes line breaks from <code>plugins.txt</code> and <code>loadorder.txt</code>. Won't this break something?</a></li>
<li><a href="#proxy">I'm using a proxy to connect to the Internet. How do I configure LOOT's masterlist updater to use it?</a></li>
</ol>
<h4>Moving From BOSS</h4>
<h5 id="boss-v3">What happened to BOSS v3?</h5>
<p>LOOT started development as BOSS v3, but it became a separate utility to avoid confusion once it became clear how little in common it had with BOSS v2.</p>
<h5 id="boss-to-loot">Do I have to switch from BOSS to LOOT?</h5>
<p>No. However, BOSS is no longer maintained for games other than Oblivion, and LOOT generally provides superior functionality.</p>
<h5 id="switching-to-loot">Is there anything I should bear in mind when switching to LOOT?</h5>
<p>It's worth double-checking the load order LOOT gives you, in case it's gotten something wrong. Also, if you're not starting a new game, changing your load order may cause in-game issues. To avoid disaster, you can backup your load order as follows:</p>
<ol>
<li>Make a backup of your current <code>.ess</code> save file, and its accompanying <code>.skse</code> file (if you have SKSE installed). These are found in the <code>%USERPROFILE%\Documents\My Games\Skyrim\Saves</code> folder.</li>
<li>Make a backup of your load order files, <code>plugins.txt</code> and <code>loadorder.txt</code>, which are found in the <code>%LOCALAPPDATA%\Skyrim</code> folder.</li>
</ol>
<p>That way, if something does go wrong, you have backups to roll back to. If you don't overwrite or delete save files, you don't need to back them up, so long as you can remember which save was made before you made the changes that caused problems.</p>
<h5 id="skyproc-patcher">I have a SkyProc patcher that runs BOSS. How do I get it to run LOOT instead?</h5>
<p>LOOT support may be added to SkyProc patchers in time. Until then, you can do the following:</p>
<ol>
<li>Run LOOT.</li>
<li>Run your SkyProc patcher(s) with the <code>-NOBOSS</code> argument.</li>
<li>Have fun.</li>
</ol>
<h5 id="unrecognised-plugins">How can LOOT not have unrecognised plugins?</h5>
<p>To sort a plugin, BOSS needs it to be added to its masterlist, which is hand-ordered by its maintainers. LOOT instead reads the contents of each plugin to see which plugins conflict, etc. and uses that information to decide on the best ordering. This means that it can sort all plugins without needing them to become recognised first.</p>
<h5 id="sort-basis">Does LOOT sort based only on plugin content?</h5>
<p>No. While it can sort most plugins correctly, sometimes it gets things wrong, and LOOT's masterlist is used to provide metadata so that it can sort such plugins correctly. Unlike in BOSS, LOOT's masterlist doesn't give specific load order positions, which makes it more adaptable and easier to maintain.</p>
<h5 id="correct-load-order">How can the load order LOOT gives be right if BOSS gives a very different load order?</h5>
<p>There can be more than one correct load order for a given set of plugins. For example, some plugins may not conflict or depend on each other, so their relative orders wouldn't matter. The load order BOSS gives is hand-made to look 'neat' as well as work, so plugins from the same mod will usually get grouped together, but LOOT doesn't know which plugins belong to which mod, so it just puts them where it thinks they work.</p>
<h4>Using LOOT</h4>
<h5 id="check-the-ordering">I'm suspicious that LOOT is ordering plugin X after plugin Y. How do I double-check the ordering?</h5>
<p>The most thorough method is to look for conflicts in TES5Edit and decide for yourself if the load order LOOT gives resolves them to your liking.</p>
<h5 id="different-load-order">I have specific reasons to have in <em>my</em> game a different load order than the one LOOT proposes. What do I do?</h5>
<p>Users can supply metadata themselves to alter the order LOOT gives. There are two types of metadata that can be supplied to change load order:</p>
<ul>
<li>'Load After' entries can be used for pairs of specific plugins.</li>
<li>Priority values can be used when the plugin needs to load before or after many other plugins.</li>
</ul>
<p>Be sure to read LOOT's readme for more information on these.</p>
<h5 id="obsolete-versions">I've run LOOT with obsolete versions of some plugins and LOOT didn't tell me to update them! How come?</h5>
<p>LOOT isn't omniscient. It may provide warnings for outdated plugins through the masterlist, but this depends on user feedback. LOOT has no way of being able to tell by itself if a plugin is outdated or not.</p>
<h4>Common Issues</h4>
<h5 id="git-errors">I'm getting Git errors when LOOT tries to update its masterlist. How do I fix this?</h5>
<p>Try deleting the <code>.git</code> folder in <code>%LOCALAPPDATA%\LOOT\&lt;game folder&gt;\</code>. If that doesn't work, make sure any firewalls or security software you have installed aren't stopping LOOT from reaching the online masterlist.</p>
<p>Alternatively, your WinSock configuration may be corrupt: this can be fixed using the instructions <a href="https://support.microsoft.com/kb/817571">here</a> and <a href="https://support.microsoft.com/kb/318584">here</a>, or there's a fix-it utility <a href="http://h10025.www1.hp.com/ewfrf/wc/document?cc=uk&amp;lc=en&amp;docname=c01184567">here</a>.</p>
<p>If LOOT still can't update its masterlist, you can update manually by downloading <a href="https://raw.githubusercontent.com/loot/skyrim/master/masterlist.yaml">this file</a> and placing it in the <code>%LOCALAPPDATA%\LOOT\Skyrim</code> folder. Replace Skyrim with <code>oblivion</code>, <code>fallout3</code>, <code>falloutnv</code> or <code>fallout4</code> as necessary, in the URL and the folder path.</p>
<h5 id="blank-window">LOOT's window is blank when I'm starting it through Mod Organizer. What's up?</h5>
<p>Mod Organizer 1.2.10 has a bug preventing LOOT 0.7.0 from working properly. This has been fixed in Mod Organizer 1.2.11, and later versions.</p>
<p>Mod Organizer can also interfere with LOOT's startup, causing causes LOOT's window to be blank when started through Mod Organiser: this can be avoided by adding the <code>--single-process</code> argument to Mod Organiser's LOOT launching settings, though doing so may have negative side effects.</p>
<h5 id="no-version-number">LOOT shows the wrong or no version number for some plugins. Why?</h5>
<p>As version numbers are supplied by mod authors in a wide range of formats and LOOT has to detect as many as possible, it occasionally identifies parts of some descriptions as version numbers incorrectly. Authors can also forget to update their plugins' version numbers. When in doubt, check the version number given in a mod's readme.</p>
<h5 id="game-not-detected">A game is installed, but LOOT cannot detect it. How do I fix this?</h5>
<p>Steam removes the game's Registry entry when the game is updated or its cache is verified. Run the game's launcher to add the Registry entry back again. LOOT will then be able to detect the game.</p>
<p>Another cause may be that the game is installed in a location where you does not have read permissions, in which case LOOT cannot read your plugins, and so treats the game as undetected. Try checking the game path's permissions, and ensuring you have read access.</p>
<h5 id="line-breaks">When LOOT updates the load order, it removes line breaks from <code>plugins.txt</code> and <code>loadorder.txt</code>. Won't this break something?</h5>
<p>LOOT has just replaced the <code>CR LF</code> line breaks with <code>LF</code> line breaks. It doesn't make any difference to the game.</p>
<h5 id="proxy">I'm using a proxy to connect to the Internet. How do I configure LOOT's masterlist updater to use it?</h5>
<p>First of all, LOOT only supports unauthenticated proxies, so if your proxy requires some form of authentication, LOOT won't be able to use it directly.</p>
<p>If your proxy is unauthenticated, LOOT will use the <code>https_proxy</code> environmental variable. If your proxy configuration doesn't already set it, you can do so in Windows by:</p>
<ol>
<li>Opening the System item in the Control Panel.</li>
<li>Open the System Properties dialog by clicking the "Advanced system settings" item in the sidebar.</li>
<li>Open the Environmental Variables dialog by clicking the "Environmental Variables..." button in the "Advanced" tab.</li>
<li>In the User variables section, click the "New..." button.</li>
<li>Put https_proxy as the variable name, and the proxy URL as the variable value in the New User Variable dialog.</li>
<li>Click "OK", then "OK" in the Environmental Variables dialog.</li>
<li>Relaunch LOOT.</li>
</ol>
@@ -0,0 +1,23 @@
---
layout: page
title: Setting Windows' File Permissions
---
<p>If you are running Windows Vista or a later version of Windows, LOOT (and other modding programs) may be prevented from working correctly by the UAC security feature. There are four common workarounds to this problem:</p>
<ol>
<li>Install the game outside the <code>Program Files</code> (or <code>Program Files (x86)</code> if on 64-bit Windows). UAC prevents unauthorised edits to these folders, so by installing the game outside of them, you remove it from UAC's reach, allowing you to use mods more easily.</li>
<li>Deactivate UAC. This can be done from the Control Panel, and will turn UAC off across the whole of your computer. It is up to you whether you feel that you have adequate security measures in place to do this without risk.</li>
<li>Give yourself "Full Control" permissions over your game install folder. This will allow you to make any edits you desire while keeping UAC active and on guard for any edits made by programs you do not run, and also means that you do not need to reinstall your game to a new location.</li>
<li>Run LOOT as an Administrator. Right-click the LOOT executable, or the shortcut if launching from a shortcut, and select "Run as administrator".</li>
</ol>
<p>For those that wish to take the third option and give themselves "Full Control" permissions, here is a guide:</p>
<ol>
<li>Right-click the folder you wish to change the permissions for, and select "Properties".</li>
<li>In "Properties", select the "Security" tab, and click the "Edit..." button. A UAC prompt may appear, simply allow yourself to continue.</li>
<li>In the "Group or user names" box, select the "Users" option.</li>
<li>In the lower box, check the box opposite "Full Control" in the "Allow" column. Press OK to exit. If a UAC prompt appears, allow the change.</li>
<li>In the "Properties" window, select OK to exit. You should now have Full Control permissions over your chosen folder.</li>
</ol>
@@ -0,0 +1,16 @@
---
layout: page
title: Using Noto Fonts for Chinese and Korean in LOOT
---
<p>In order to provide a more pleasant reading experience, LOOT supports the use of Google's Noto fonts for its Simplified Chinese and Korean translations. However, due to their size, they are not included with LOOT.</p>
<p>To use the Noto fonts with LOOT:</p>
<ol>
<li>Download the <a href="http://www.google.com/get/noto/#/family/noto-sans-hans">Simplified Chinese</a> and/or <a href="http://www.google.com/get/noto/#/family/noto-sans-kore">Korean</a> fonts from Google.</li>
<li>Extract the downloaded archives and place the <code>*.otf</code> files they contain into your <code>%LOOT%/resources/report/fonts/</code> folder, where <code>%LOOT%</code> is LOOT's installation directory.</li>
<li>If you have LOOT open, close and re-launch it. It will detect and load the Noto fonts.</li>
</ol>
<p>You can also install the fonts by right-clicking them and choosing the "Install" option, or double-clicking them and clicking the "Install" button in the window that is opened, but LOOT may be unable to load fonts installed in this manner.</p>
+45 -30
View File
@@ -4,40 +4,55 @@ title: Documentation
permalink: /docs/
---
<p>Each release of LOOT has its documentation listed below.</p>
<h3>
Readme Files
<select id="versionSelect">
<option value="0.8.1" selected>v0.8.1</option>
<option value="0.8.0">v0.8.0</option>
<option value="0.7.1">v0.7.1</option>
<option value="0.7.0">v0.7.0</option>
<option value="0.6.1">v0.6.1</option>
<option value="0.6.0">v0.6.0</option>
<option value="0.5.0">v0.5.0</option>
</select>
</h3>
<ul>
<li><a id="readmeLink" href="0.8.1/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a id="syntaxLink" href="0.8.1/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
</ul>
<h6>v0.8.1</h6>
<h3>Help</h3>
<ul>
<li><a href="0.8.1/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.8.1/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
<li><a href="help/LOOT-FAQs.html">FAQs</a></li>
<li><a href="help/How-To-Report-Issues-Helpfully.html">How To Report Issues Helpfully</a></li>
<li><a href="help/Introduction-To-Load-Orders.html">Introduction To Load Orders</a></li>
<li><a href="help/Dirty-Edits,-Mod-Cleaning-&amp;-CRCs.html">Dirty Edits, Mod Cleaning &amp; CRCs</a></li>
<li><a href="help/Setting-Windows'-File-Permissions.html">Setting Windows' File Permissions</a></li>
<li><a href="help/Using-Noto-fonts-for-Chinese-and-Korean-in-LOOT.html">Using Noto fonts for Chinese and Korean in LOOT</a></li>
</ul>
<h6>v0.8.0</h6>
<h3>Contributing</h3>
<ul>
<li><a href="0.8.0/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.8.0/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
<li><a href="contributing/How-To-Contribute.html">How To Contribute</a></li>
<li><a href="contributing/Masterlist-Editing.html">Masterlist Editing</a></li>
<li><a href="contributing/Quickly-Testing-Your-Masterlist-Changes.html">Quickly Testing Your Masterlist Changes</a></li>
<li><a href="contributing/Masterlist-Versioning.html">Masterlist Versioning</a></li>
<li><a href="contributing/Global-Priorities.html">Global Priorities</a></li>
<li><a href="contributing/Resolving-Conflicts.html">Resolving Conflicts</a></li>
</ul>
<h6>v0.7.1</h6>
<h3>Team</h3>
<ul>
<li><a href="0.7.1/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.7.1/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
</ul>
<h6>v0.7.0</h6>
<ul>
<li><a href="0.7.0/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.7.0/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
</ul>
<h6>v0.6.1</h6>
<ul>
<li><a href="0.6.1/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.6.1/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
</ul>
<h6>v0.6.0</h6>
<ul>
<li><a href="0.6.0/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.6.0/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
</ul>
<h6>v0.5.0</h6>
<ul>
<li><a href="0.5.0/LOOT%20Readme.html">LOOT Readme</a></li>
<li><a href="0.5.0/LOOT%20Metadata%20Syntax.html">LOOT Metadata Syntax</a></li>
<li><a href="team/Team-Member-Responsibilities.html">Team Member Responsibilities</a></li>
<li><a href="team/Making-A-Release.html">Making A Release</a></li>
<li><a href="team/Thread-Management.html">Thread Management</a></li>
<li><a href="team/Team-Policies.html">Team Policies</a></li>
</ul>
<script>
var select = document.getElementById('versionSelect');
select.addEventListener('input', function(evt) {
document.getElementById('readmeLink').href = evt.target.value + '/LOOT%20Readme.html';
document.getElementById('syntaxLink').href = evt.target.value + '/LOOT%20Metadata%20Syntax.html';
});
</script>
+42
View File
@@ -0,0 +1,42 @@
---
layout: page
title: Making A Release
---
<p>This page describes what needs to be done when releasing a new version of LOOT.</p>
<h3>Preparation</h3>
<ol>
<li>Make sure that the release date and version history have been updated in the readme and <code>src/api/api.h</code>.</li>
<li>Update the version numbers in <code>src/api/api.h</code>, <code>src/backend/globals.cpp.in</code>, <code>src/resource.rc</code> and <code>scripts/installer.iss</code>.</li>
<li>Compile the .mo translation files from the .po files in the <code>loot</code> repository.</li>
<li>Generate a new LaTeX copy of the API documentation, and from that generate a PDF.</li>
</ol>
<h3>Masterlists</h3>
<p>Update the "update released" message version check in each masterlist's default branch. If the new release makes metadata syntax changes:</p>
<ol>
<li>For each masterlist, create a new version branch for that release.</li>
<li>For each masterlist, set the default repository branch on GitHub to the new branch.</li>
<li>Update the default masterlist branch settings for each game, in <code>src/backend/game/game_settings.cpp</code> and <code>src/gui/loot_state.cpp</code>.</li>
</ol>
<h3>Packaging</h3>
<ol>
<li>Build an x86 LOOT executable.</li>
<li>Build an x86 LOOT API DLL.</li>
<li>Run the installer script.</li>
<li>Run the archiver script.</li>
</ol>
<h3>Release!</h3>
<ol>
<li>Create a release in GitHub's loot/loot repository and add installer and both archives (application and API) to it.</li>
<li>Commit the release's documentation to an appropriate subfolder in the <code>docs</code> directory of LOOT's website repository, and update <code>docs/index.html</code> to list it.</li>
<li>Post an announcement in the official forum thread.</li>
</ol>
@@ -0,0 +1,33 @@
---
layout: page
title: Team Member Responsibilities
---
<h3>Introduction</h3>
<p>These aren't absolute rules, and nobody is going to get into trouble for not managing to do everything that is expected of their position: we're all here because we want to help out when we can, it's not serious business.</p>
<h3>Masterlist Maintenance</h3>
<p>Masterlist maintenance involves:</p>
<ul>
<li>Considering and making any changes suggested on the forum thread or by PM (discuss the changes first if you think it is warranted).</li>
<li>Merging any pull requests which make changes you think are appropriate. If a pull request makes any inappropriate changes, discuss them with the author in the pull request's message thread.</li>
<li>Create a new forum thread whenever the current one reaches its 200 post limit.
</ul>
<h3>Thread Management</h3>
<p>LOOT's forum thread has a 200 post limit, and a new thread must be created each time that limit is reached. See <a href="Thread-Management.html">Thread Management</a> for more information.</li>
<h3>Membership Management</h3>
<p>Team members who are admins on GitHub are responsible for adding new members. GitHub's excellent Forking feature allows people to contribute to repositories that they don't have write access to, and you should take full advantage of that:</p>
<ul>
<li>If someone who hasn't contributed on GitHub asks for addition to the team, politely refer them to the <a href="/docs/contributing/How-To-Contribute.html">How To Contribute</a> wiki page, saying that they can contribute without being a team member.</li>
<li>If someone who has contributed on GitHub asks for addition to the team, take a look at their contributions (on their user page, in the "Repositories contributed to" list) and see if their contributions have been accepted or not to decide whether or not to grant them access. If their most recent pull requests have been rejected, it may be better to reply with a polite "not until we're happy with your contributions" message.</li>
</ul>
<p>To add a GitHub user to the team, go to the LOOT organisation's <a href="https://github.com/orgs/loot/people">People page</a> and click the big green "Invite member" button, then enter their username in the search box displayed and select the correct match. If they accept the invitation, ask them to <a href="https://help.github.com/articles/publicizing-or-hiding-organization-membership/">publicize their membership</a>: they don't have to, but it helps people outside the team find members.</p>
+20
View File
@@ -0,0 +1,20 @@
---
layout: page
title: Team Policies
---
<p>As time goes by, we sometimes find it's good to have rules written down for things relating to how we operate. This is where we write these rules. Please don't change them without prior discussion.</p>
<h4>Plugin Addition</h4>
<p>It's pretty simple: if a plugin is, or will shortly be (eg. author giving heads-up about imminent release), publicly available for download, it is eligible for addition to the appropriate masterlist.</p>
<p>Plugins that are not available to the public are not suitable for inclusion in the masterlist - if someone reports such a plugin, tell them that it is more appropriate for them to add any necessary metadata using a userlist rule. Such cases include private beta plugins, or more generally plugins distributed amongst a select group of people, or plugins for which you have to pay to access (which is against Bethesda's rules, but has undoubtedly happened before).</p>
<h4>Link Requesting</h4>
<p>Sometimes it is necessary for a maintainer to download a plugin to investigate it, eg. to double-check information provided by a user. In such cases, we generally ask the user to provide a link to the plugin in question. However, because most submitting activity occurs on Bethesda's official forums, we have to abide by their rules. These rules include not linking to nude mods, for instance, and not discussing certain mods that break their rules (eg. Morroblivion).</p>
<p>If a user submits a plugin that falls into such a catagory and they provide a link, ask them to remove it, stating why. It's best not to draw negative moderator attention to the threads, because we need them to stay open. (Moderators are highly unlikely to lock the thread or get on to us about such cases, but better safe than sorry, plus you educate users that may have been unaware of the rules.)</p>
<p>If a user submits a plugin that falls into such a catagory and they don't provide a link, ask them to PM you a link to the plugin.</p>
+52
View File
@@ -0,0 +1,52 @@
---
layout: page
title: Thread Management
---
<h3>Introduction</h3>
<p>This wiki page is aimed at anyone who finds themselves in the position of being the only person active when a thread reaches its 200 post limit.</p>
<p>When a thread nears 200 posts, a new thread should be opened with the title <code>[REL] LOOT - Thread #&lt;num&gt;</code>, where <code>&lt;num&gt;</code> is the number of the current thread + 1. The content of the opening post is given below.</p>
<p>Once the new thread has been created, it should be linked to in the current thread. The link on the LOOT website should also be updated, by editing the two links at the top of the website's <a href="https://github.com/loot/loot.github.io/blob/master/latest-thread.html">latest-thread.html file</a>.</p>
<h3>The Opening Post</h3>
<p>The contents of the box below can be copy/pasted when creating a new thread. Make sure to add the last thread to the bottom of the thread list whenever a new thread is created.</p>
<pre><code>[size=8]LOOT[/size]
A plugin load order optimiser for TES IV: Oblivion, TES V: Skyrim, Fallout 3 and Fallout: New Vegas.
[size=5]Introduction[/size]
Setting the right load order for your mods is a crucial step to enjoying a stable modded game. The Load Order Optimisation Tool (LOOT) can help with that, by providing automated load order sorting that's simple to use and fully customisable.
While sorting, LOOT checks for load order errors such as incompatibilities and missing requirements, and notifies you of any issues that it detects. It also provides thousands of plugin-specific messages such as usage notes and bug warnings, to help keep your game healthy.
[size=5]Downloads[/size]
LOOT can be downloaded from its [url=http://loot.github.io]website[/url]. Unstable snapshot builds may also be available [url=https://www.dropbox.com/sh/scuvwwc6ovzagmd/AAD1TodBAwGQTuV1-4Z2d0sCa?dl=0]here[/url].
[i]See the [url=http://loot.github.io/docs/0.8.1/LOOT%20Readme.html]readme[/url] for more information.[/i]
Previous threads:
[spoiler]
[topic=1498392]Thread #7[/topic]
[topic=1499946]Thread #8[/topic]
[topic=1501586]Thread #9[/topic]
[topic=1503686]Thread #10[/topic]
[topic=1504835]Thread #11[/topic]
[topic=1506584]Thread #12[/topic]
[topic=1507988]Thread #13[/topic]
[topic=1509883]Thread #14[/topic]
[topic=1511411]Thread #15[/topic]
[topic=1512502]Thread #16[/topic]
[topic=1513925]Thread #17[/topic]
[topic=1516193]Thread #18[/topic]
[topic=1519842]Thread #19[/topic]
[topic=1531778]Thread #20[/topic]
[topic=1557786]Thread #21[/topic]
[topic=1588424]Thread #22[/topic]
[/spoiler]</code></pre>

Some files were not shown because too many files have changed in this diff Show More