Difference between revisions of "Modding:Mod compatibility/entry"
Jump to navigation
Jump to search
Pathoschild (talk | contribs) (fix summary for workaround status) |
Pathoschild (talk | contribs) (simplify format for compatible mods, rm dated references to SMAPI 2.0) |
||
Line 6: | Line 6: | ||
! compatibility | ! compatibility | ||
! </noinclude> | ! </noinclude> | ||
− | |- id="{{{name}}}" data-status="{{{status}}}" {{#if:{{{source|}}}|data-has-source}} style="line-height: 1em; {{#switch:{{{status}}} |ok=background: #9F9; |workaround=background: #CF9; |broken|soon|soon-official=background: #F99; |obsolete=background: #999}}" | + | |- id="{{{name}}}" data-status="{{{status|ok}}}" {{#if:{{{source|}}}|data-has-source}} style="line-height: 1em; {{#switch:{{{status|ok}}} |ok=background: #9F9; |workaround=background: #CF9; |broken|soon|soon-official=background: #F99; |obsolete=background: #999}}" |
| {{#if:{{{url|}}}|[{{{url}}} {{{name}}}]|{{{name}}}}}{{#if:{{{name2|}}}|<br /><small style="font-size:0.75em;">(aka {{{name2}}})</small>}} | | {{#if:{{{url|}}}|[{{{url}}} {{{name}}}]|{{{name}}}}}{{#if:{{{name2|}}}|<br /><small style="font-size:0.75em;">(aka {{{name2}}})</small>}} | ||
| {{{author}}}{{#if:{{{author2|}}}|<br /><small style="font-size:0.75em;">(aka {{{author2}}})</small>}} | | {{{author}}}{{#if:{{{author2|}}}|<br /><small style="font-size:0.75em;">(aka {{{author2}}})</small>}} | ||
− | | {{#switch:{{{status}}} |ok=✓ |workaround=⚠ |soon|soon-official=↻ |broken|obsolete=✖}} {{#switch:{{{status}}} | + | | {{#switch:{{{status|ok}}} |ok=✓ |workaround=⚠ |soon|soon-official=↻ |broken|obsolete=✖}} {{#switch:{{{status|ok}}} |
|ok = {{#if:{{{summary|}}}|{{{summary}}}|use latest version.}} | |ok = {{#if:{{{summary|}}}|{{{summary}}}|use latest version.}} | ||
− | |#default = broke{{#if:{{{broke in|}}}| in {{{broke in}}}|n}}{{#if:{{{summary|}}}|, {{{summary}}}|{{#switch:{{{status}}}|broken={{#if:{{{source|}}}|, needs update from the author|, not open-source}}|soon=update coming soon|soon-official=author will update it soon}}.}} | + | |#default = broke{{#if:{{{broke in|}}}| in {{{broke in}}}|n}}{{#if:{{{summary|}}}|, {{{summary}}}|{{#switch:{{{status|ok}}}|broken={{#if:{{{source|}}}|, needs update from the author|, not open-source}}|soon=update coming soon|soon-official=author will update it soon}}.}} |
}} | }} | ||
| {{#if:{{{source|}}}|[{{{source}}} source]}}{{#if:{{{hide-url|}}}| [{{{hide-url}}} <sup>o</sup>]}}{{#if:{{{links|}}}| {{#arraydefine:linkArray|{{{links}}}}}{{#arrayprint:linkArray| |@@@@|<sup>[@@@@ {{#expr:{{#arraysearch:linkArray|@@@@}} + 1}}]</sup>}}}}<noinclude> | | {{#if:{{{source|}}}|[{{{source}}} source]}}{{#if:{{{hide-url|}}}| [{{{hide-url}}} <sup>o</sup>]}}{{#if:{{{links|}}}| {{#arraydefine:linkArray|{{{links}}}}}{{#arrayprint:linkArray| |@@@@|<sup>[@@@@ {{#expr:{{#arraysearch:linkArray|@@@@}} + 1}}]</sup>}}}}<noinclude> | ||
Line 17: | Line 17: | ||
==Usage== | ==Usage== | ||
− | + | For a compatible mod: | |
<pre> | <pre> | ||
{{/entry | {{/entry | ||
Line 23: | Line 23: | ||
|author = Pathoschild | |author = Pathoschild | ||
|url = http://www.nexusmods.com/stardewvalley/mods/541 | |url = http://www.nexusmods.com/stardewvalley/mods/541 | ||
+ | |source = https://github.com/Pathoschild/StardewMods | ||
+ | }} | ||
+ | </pre> | ||
+ | |||
+ | For a mod with a non-OK status: | ||
+ | <pre> | ||
+ | {{/entry | ||
+ | |name = Lookup Anything | ||
+ | |author = Pathoschild | ||
+ | |url = http://www.nexusmods.com/stardewvalley/mods/541 | ||
+ | |source = https://github.com/Pathoschild/StardewMods | ||
|status = broken | |status = broken | ||
|summary = | |summary = | ||
− | |||
|broke in = Stardew Valley 1.2 | |broke in = Stardew Valley 1.2 | ||
+ | |links = <!-- any comma-separated URLs to pull requests, discussions, etc --> | ||
}} | }} | ||
</pre> | </pre> | ||
Line 38: | Line 49: | ||
|- | |- | ||
| <code>ok</code> | | <code>ok</code> | ||
− | | The mod is compatible | + | | The mod is compatible. This is the default and doesn't need to be specified. |
| ''use latest version.'' | | ''use latest version.'' | ||
|- | |- | ||
| <code>workaround</code> | | <code>workaround</code> | ||
− | | The mod isn't compatible | + | | The mod isn't compatible, but the player can fix it or there's a good alternative. |
| | | | ||
|- | |- | ||
| <code>soon</code> | | <code>soon</code> | ||
− | | The mod isn't compatible | + | | The mod isn't compatible, but it's open-source so an unofficial update will be prepared soon (if the author doesn't update it first). |
| ''update coming soon.'' | | ''update coming soon.'' | ||
|- | |- | ||
| <code>soon-official</code> | | <code>soon-official</code> | ||
− | | The mod isn't compatible | + | | The mod isn't compatible, but the author has said they'll update it. |
| ''author will update it soon.'' | | ''author will update it soon.'' | ||
|- | |- | ||
| <code>broken</code> | | <code>broken</code> | ||
− | | The mod isn't compatible | + | | The mod isn't compatible, isn't open-source (or requires significant refactoring from the author), and there's no indication that the author will update it yet. |
| ''broken, not open-source.''<br />''broken, needs update from the author.'' | | ''broken, not open-source.''<br />''broken, needs update from the author.'' | ||
|- | |- |
Revision as of 03:07, 26 December 2017
mod name | author | compatibility | |
---|---|---|---|
{{{name}}} | {{{author}}} | ✓ use latest version. |
Usage
For a compatible mod:
{{/entry |name = Lookup Anything |author = Pathoschild |url = http://www.nexusmods.com/stardewvalley/mods/541 |source = https://github.com/Pathoschild/StardewMods }}
For a mod with a non-OK status:
{{/entry |name = Lookup Anything |author = Pathoschild |url = http://www.nexusmods.com/stardewvalley/mods/541 |source = https://github.com/Pathoschild/StardewMods |status = broken |summary = |broke in = Stardew Valley 1.2 |links = <!-- any comma-separated URLs to pull requests, discussions, etc --> }}
Valid statuses:
status | meaning | default summary |
---|---|---|
ok
|
The mod is compatible. This is the default and doesn't need to be specified. | use latest version. |
workaround
|
The mod isn't compatible, but the player can fix it or there's a good alternative. | |
soon
|
The mod isn't compatible, but it's open-source so an unofficial update will be prepared soon (if the author doesn't update it first). | update coming soon. |
soon-official
|
The mod isn't compatible, but the author has said they'll update it. | author will update it soon. |
broken
|
The mod isn't compatible, isn't open-source (or requires significant refactoring from the author), and there's no indication that the author will update it yet. | broken, not open-source. broken, needs update from the author. |
obsolete
|
The mod is no longer needed and should be removed. |
Other fields:
|name2=name
and|author2=name
add also-known-as lines for the mod name & author respectively.|hide-url=URL
(replacing|url=
) moves the URL into a superscript link. Mainly useful for broken mods with a workaround, so players don't automatically click through to the old mod.|links=URLs
adds superscript links (comma-separated). Mainly useful for linking to pull requests.
Script
This script generates the template call when run from a Nexus or Chucklefish mod page.
switch(location.host)
{
case "www.nexusmods.com":
var url = location.origin + location.pathname.replace(/\/*$/, '');
var name = $(".header-name").text();
var author = $(".uploader a").text();
var author2 = $(".header-author strong").text();
break;
case "community.playstarbound.com":
var url = location.origin + location.pathname.replace(/\/*$/, '');
var name = $.trim($("h1:first").contents().first().text());
var author = $(".primaryContent[data-author]:first").attr("data-author");
break;
default:
throw `Unknown domain: ${location.host}`;
}
var template = `
{{/entry
|name = ${name}
|author = ${author}`;
if(author2 && author2 != author)
template += '\n' + ` |author2 = ${author2}`;
template += `
|url = ${url}
|status = ok
|summary =
|source =
}}
`;