Modding:Mod compatibility/entry: Difference between revisions
Appearance
imported>Pathoschild m fix links |
imported>Pathoschild remove soon-official status, add abandoned status |
||
| Line 8: | Line 8: | ||
! source | ! source | ||
! </noinclude> | ! </noinclude> | ||
|- id="{{{name}}}" {{#if:{{{nexus id|}}}|nexus-id="{{{nexus id|}}}"}} {{#if:{{{chucklefish id|}}}|chucklefish-id="{{{chucklefish id|}}}"}} data-status="{{{status|ok}}}" {{#if:{{{github|{{{source|}}}}}}|data-has-source}} style="line-height: 1em; {{#switch:{{{status|ok}}} |ok|optional=background: #9F9; |workaround=background: #CF9; |broken | |- id="{{{name}}}" {{#if:{{{nexus id|}}}|nexus-id="{{{nexus id|}}}"}} {{#if:{{{chucklefish id|}}}|chucklefish-id="{{{chucklefish id|}}}"}} data-status="{{{status|ok}}}" {{#if:{{{github|{{{source|}}}}}}|data-has-source}} style="line-height: 1em; {{#switch:{{{status|ok}}} |ok|optional=background: #9F9; |workaround=background: #CF9; |broken=background: #F99; |obsolete|abandoned=background: #999}}" | ||
| {{#if:{{{nexus id|}}}|[{{nexus mod|{{{nexus id}}} {{{name|}}}]}}|{{#if:{{{chucklefish id|}}}|[https://community.playstarbound.com/resources/{{urlencode:{{{chucklefish id}}}}} {{{name}}}]|{{#if:{{{url|}}}|[{{{url}}} {{{name}}}]|{{{name}}}}}}}}}{{#if:{{{name2|}}}|<br /><small style="font-size:0.75em;">(aka {{{name2}}})</small>}} | | {{#if:{{{nexus id|}}}|[{{nexus mod|{{{nexus id}}} {{{name|}}}]}}|{{#if:{{{chucklefish id|}}}|[https://community.playstarbound.com/resources/{{urlencode:{{{chucklefish id}}}}} {{{name}}}]|{{#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}}} |ok|optional=✓ |workaround=⚠ | | {{#switch:{{{status|ok}}} |ok|optional=✓ |workaround=⚠ |broken={{#if:{{{#github|{{{source|}}}}}}|↻|✖}}|obsolete|abandoned=✖}} {{#switch:{{{status|ok}}} | ||
|ok = {{#if:{{{summary|}}}|{{{summary}}}|use latest version.}} | |ok = {{#if:{{{summary|}}}|{{{summary}}}|use latest version.}} | ||
|optional = {{#if:{{{summary|}}}|{{{summary}}}|use optional download<ref name="optional-update" />.}} | |optional = {{#if:{{{summary|}}}|{{{summary}}}|use optional download<ref name="optional-update" />.}} | ||
|obsolete = {{#if:{{{summary|}}}|{{{summary}}}|obsolete.}} | |obsolete = {{#if:{{{summary|}}}|{{{summary}}}|obsolete.}} | ||
|#default = broken{{#if:{{{summary|}}}|, {{{summary}}}|{{#switch:{{{status|ok}}}|broken={{#if:{{{github|{{{source|}}}}}}|, not updated yet|, not open-source}} | |abandoned = {{#if:{{{summary|}}}|{{{summary}}}|no longer maintained.}} | ||
|#default = broken{{#if:{{{summary|}}}|, {{{summary}}}|{{#switch:{{{status|ok}}}|broken={{#if:{{{github|{{{source|}}}}}}|, not updated yet|, not open-source}}}}.}} | |||
}} | }} | ||
| <small>{{{broke in|}}}</small> | | <small>{{{broke in|}}}</small> | ||
| Line 69: | Line 70: | ||
| The mod isn't compatible, but the player can fix it or there's a good alternative. | | The mod isn't compatible, but the player can fix it or there's a good alternative. | ||
| | | | ||
|- | |- | ||
| <code>broken</code> | | <code>broken</code> | ||
| The mod isn't compatible. The message depends on whether the <code>source</code> link is set. | | The mod isn't compatible. The message depends on whether the <code>source</code> link is set. | ||
| ''broken, not updated yet.''<br />''broken, not open-source.'' | | ''broken, not updated yet.''<br />''broken, not open-source.'' | ||
|- | |||
| <code>abandoned</code> | |||
| The mod is no longer maintained. | |||
| ''no longer maintained.'' | |||
|- | |- | ||
| <code>obsolete</code> | | <code>obsolete</code> | ||
Revision as of 17:50, 18 May 2018
| mod name | author | compatibility | broke in | source | |
|---|---|---|---|---|---|
| {{{name}}} | {{{author}}} | ✓ use latest version. | closed source |
Usage
For a compatible mod:
{{/entry
|name = Lookup Anything
|author = Pathoschild
|nexus id = 541
|github = Pathoschild/StardewMods
}}
For a mod with a non-OK status:
{{/entry
|name = Lookup Anything
|author = Pathoschild
|nexus id = 541
|github = Pathoschild/StardewMods
|status = broken
|summary =
|broke in = Stardew Valley 1.2
|links = <!-- any comma-separated URLs to pull requests, discussions, etc -->
}}
Alternative options:
- can replace nexus id with chucklefish id or url;
- can replace github with source url.
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. |
optional
|
The mod is compatible, if you use an optional download on the mod page. | use optional download.[1] |
workaround
|
The mod isn't compatible, but the player can fix it or there's a good alternative. | |
broken
|
The mod isn't compatible. The message depends on whether the source link is set.
|
broken, not updated yet. broken, not open-source. |
abandoned
|
The mod is no longer maintained. | no longer maintained. |
obsolete
|
The mod is no longer needed and should be removed. |
Other fields:
|name2=nameand|author2=nameadd 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=URLsadds 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 =
}}
`;