Difference between revisions of "User:Sirryan2002/WikiGuide"

From Paradise Station Wiki
Jump to navigation Jump to search
(→‎Tables: added table section)
m (64px is heavily preferred. this is confusing ppl into uploading 32px.)
 
(61 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{wip|assign=Sirryan2002}}
Many people want to edit the Paradise wiki but have absolutely no idea how or where to start learning. This guide serves as the easiest way to pick up on basic-intermediate wiki code and provide a stepping stone for others to improve their wiki knowledge.
 
If you're a beginner, it is important that you read this wiki top to bottom as the syntax explained builds on what is explained above it. The only way you will get better is by looking at other people's work and playing around on your User page which can be access by clicking on the Username in the top right.
 
Also don't forget that by editing the wiki, you're doing a good deed for the server and its players. Yes, your work will likely go unnoticed but you will help people become better and enjoy the game more. That by far is the greatest pleasure I have gotten from contributing any amount of time I have given to this wiki.
 
 
 
 
<u>'''Note:'''This is not a set of rules for the wiki, for that, you should go <b>[[Guide to Editing the Wiki|Here]]</b>.</u>
 
__TOC__
 
==Tags==
 
In order to edit a wiki article you will need to go to the page or a subsection on that page and click the '''Edit''' button. If you are logged in you should be able to be edit the code of all but a [[#Protected Pages|Few]] wiki pages.
 
Writing a wiki page is much like editing a word document or google doc with additional code to format it nicely. You can write a paragraph in plain text and if you wanted to add style to anything you would utilize '''Tags'''.
 
Anything between those tags will receive the attributes given by that tag. For example, if I wanted to underscore a certain word in a sentence I would be able to do: <nowiki>Dogs are super <u>cool</u>!</nowiki> This would output as:Dogs are super <u>cool</u>!
 
Each tag starts with an opening angle bracket ''' '<' ''' and ends with a closing angle bracket ''' '>' ''' and the tag we are using is defined between those. For the underscore tag we used earlier '''u''' is the name of the tag hence why we used '''<nowiki><u></nowiki>'''. In order to declare that we are no longer using that tag we will have to use the tag again but with a forward slash ''' '/' ''' in front of it. Like this '''<nowiki></u></nowiki>'''. As a general rule of thumb, you should always have an opening tag and a closing tag.


==Wiki Editing Tutorial==
Once you're finished editing something, you click save changes and describe a summary(more on this below) and your edit will be saved to the wiki!
Many people want to edit the Paradise wiki but have absolutely no idea how or where to start learning. This guide serves as the easiest way to pick up on basic-intermediate wiki code and provide a stepping stone for others to improve their wiki knowledge.


This is not a set of rules for the wiki, for that, you should go <b>[[Guide to Editing the Wiki|Here]]</b>.
{{TOC|limit=3}}
==Making Edits==
==Making Edits==
Wikis are such a fabulous tool for games because they can be constantly edited and updated <b>by the playerbase</b> much like our wiki is. Whenever you make a change/edit to any page it is documented in the view history tab at the top of the page. In there you can see who made the edit, when they made it, and what they said they edited. In addition, you can compare edits to see the changes between them.
Wikis are such a fabulous tool for servers because they can be constantly edited and updated <b>by the playerbase</b>. Whenever you make a change/edit to any page it is documented in the view history tab at the top of the page. In there you can see who made the edit, when they made it, and what they said they edited. In addition, you can compare edits to see the changes between them and undo them.


Whenever you make an edit, you are required to do <u>two</u> things.
Whenever you make an edit, you are required to do <u>two</u> things.
Line 19: Line 37:


===Comments===
===Comments===
You are able to add commented out text inside the pages wikicode. This is great for letting other editors what to do/not do.
You are able to [[#Comment|Comment]] out text inside the pages wikicode. This is great for letting other editors what to do/not do.


Comments should be avoided unless they're:
Comments should be used for:
* Explaining Template Code
* Explaining Template Code
* Warning users not to delete certain code
* Warning users not to delete certain code
Line 34: Line 52:


==Text Formatting==
==Text Formatting==
Text by itself is extremely <i>boring</i> and often <u>hard to read</u>, so you can use text formatting to make your words really POP!
Text by itself is extremely ''boring'' and often <u>hard to read</u>, so you can use text formatting to make your words really POP!
{|class ="wikitable mw-collapseable" width: "80%";"
{|class ="wikitable mw-collapseable" width: "80%";"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
Line 42: Line 60:
|-
|-
! Bold
! Bold
| Use this to bring attention to important text <pre><b>This text is bold!</b></pre> or <pre>'''This text is bold'''</pre>
| Use this to bring attention to important text <pre>'''This text is bold'''</pre>
| <b>This text is bold!</b>
| '''This text is bold!'''
|-
|-
! Underline
! Underline
Line 50: Line 68:
|-
|-
! Italic
! Italic
| Use this to enounciate certain words <pre><i>This text is italicized!</i></pre> or <pre>''This text is italicized!''</pre>
| Use this to enounciate certain words <pre>''This text is italicized!''</pre>
| <i>This text is italicized!</i>
| ''This text is italicized!''
|-
|-
! Headings
! Headings
Line 75: Line 93:


======Level 6 ======
======Level 6 ======
|-
! Paragraphs
| You can designate sections of text as paragraphs which will for a linebreak before and after that section, you can also apply some more advanced formatting through [[#Style|Styles]] with it. <pre><p> This is a paragraph of text! </p></pre>
| <p> This is a paragraph of text! </p>
|-
|-
!Bullet Lists
!Bullet Lists
Line 116: Line 138:
| <pre>This text is preformatted to be the default font and style, <b>Things aren't bolded</b> or <i>Italicized</i>!!!</pre>
| <pre>This text is preformatted to be the default font and style, <b>Things aren't bolded</b> or <i>Italicized</i>!!!</pre>
|-
|-
! Comments
! Comments {{Anchor|Comment}}
| Use this to leave important notes/messages to people editing the page. Comments do not show up when you view the wiki page and are only visible in the page editor.  
| Use this to leave important notes/messages to people editing the page. Comments do not show up when you view the wiki page and are only visible in the page editor.  
<pre> <!--This is a comment, to whoever is reading this -->
<pre> <!--This is a comment, to whoever is reading this -->
Line 128: Line 150:
this is a burger: [[File:Burger.png]]</nowiki>
this is a burger: [[File:Burger.png]]</nowiki>
|}
|}
===Font Usage===


=Images=
==Images==
Images are extremely important for our wiki, without them people wouldn't know what icons/mobs would look like or get a visual representation of what they're supposed to do. Trying to include pictures in your articles can seem daunting at first, but it's super easy once you get a handle on it.
Images are extremely important for our wiki, without them people wouldn't know what icons/mobs would look like or get a visual representation of what they're supposed to do. Trying to include pictures in your articles can seem daunting at first, but it's super easy once you get a handle on it.
==Usage and Formatting==
===Usage and Formatting===


In order to use an image you must utilize the <nowiki>[[File:]]</nowiki> synax.
In order to use an image you must utilize the <nowiki>[[File:]]</nowiki> synax.
Line 171: Line 192:
|}
|}


==Uploading==
===Uploading===
In order to upload an image, you must click on [[Special:Upload|<b>upload file</b>]] in the left taskbar. Here you can upload lots of files(if they're supported) to the wiki.
In order to upload an image, you must click on [[Special:Upload|<b>upload file</b>]] in the left taskbar. Here you can upload lots of files(if they're supported) to the wiki.


Line 177: Line 198:
* Check to make sure your image doesn't already exist on the wiki
* Check to make sure your image doesn't already exist on the wiki
* If your image already exists but you want a better resolution, upload a new version to that file
* If your image already exists but you want a better resolution, upload a new version to that file
* Try and upload sprites with the size 32px or 64px
* Try and upload sprites with the size 64px. You can resize sprites by using an editing software, like Photoshop and scaling by Nearest Neighbour.
* Once you upload an image, it cannot be removed except by an admin
* Once you upload an image, it cannot be removed except by an admin
* Give your images proper names
* Give your images proper names
Line 197: Line 218:
As a general note, you should always add spaces after references as it will include any characters that are next to it. So if you write <nowiki>[[Space Law]]textextext</nowiki> It will output as [[Space Law]]textextext.
As a general note, you should always add spaces after references as it will include any characters that are next to it. So if you write <nowiki>[[Space Law]]textextext</nowiki> It will output as [[Space Law]]textextext.


If you wanted to do something like [[SMES]]<nowiki />'s then you would have to add the <nowiki><nowiki /></nowiki> tag to it --> <nowiki>[[SMES]]<nowiki />'s</nowiki>
If you wanted to do something like [[SMES]]<nowiki />'s where you have characters directly next to the link then you would have to add the <nowiki><nowiki /></nowiki> tag to it --> <nowiki>[[SMES]]<nowiki />'s</nowiki>


If you want to link to an image rather than embedding it you will need to add a ':' colon before the name. For example, I can reference [[:File:Burger.png]] without the image embedding itself by doing: <pre>[[:File:Burger.png]]</pre>
If you want to link to an image rather than embedding it you will need to add a ':' colon before the name. For example, I can reference [[:File:Burger.png]] without the image embedding itself by doing: <pre>[[:File:Burger.png]]</pre>


If you want to link to something outside of the Main: Namespace (if you're not sure what a namespace is, go here, but for now all you need to know is that all wikipages general users will be reading are in the Main Namespace) you will have to specify which namespace the article is in before you link it.
If you want to link to something outside of the Main: Namespace (if you're not sure what a namespace is, go [[#Namespaces|here]], but for now all you need to know is that all general users will be reading are in the Main Namespace) you will have to specify which namespace the article is in before you link it.


For example if I wanted to link to my user page:[[User:Sirryan2002]] I cannot just use <nowiki>[[Sirryan2002]] because it will automatically default to the main namespace -> [[Main:Sirryan2002]]</nowiki> which does not exist. I will have to instead specify which name space I'm searching in. For the user's name space I will specify User(for a full list of Namespace, look here) <pre>[[User:Sirryan2002]]</pre>
For example if I wanted to link to my user page:[[User:Sirryan2002]] I cannot just use <nowiki>[[Sirryan2002]] because it will automatically default to the main namespace -> [[Main:Sirryan2002]]</nowiki> which does not exist. I will have to instead specify which name space I'm searching in. For the user's name space I will specify User <pre>[[User:Sirryan2002]]</pre>


===Referencing Subsections===
===Referencing Subsections===
Sometimes you don't want to just link to an article, you want to link to a specific point in that article.
Sometimes you don't want to just link to an article, you want to link to a specific point in that article.


By adding a hashtag '#' to the end of a page name in your link you can specify where you want to go in that article. You can do this for any <b>subsection</b> in an article. However, if you want to say, link to a specific sentence or table item you have to provide an anchor for it. This is explained in the Anchors section.
By adding a hashtag '#' to the end of a page name in your link you can specify where you want to go in that article. You can do this for any <b>subsection</b> in an article.


Say I wanted to link [[Space law#Crime Codes Quick Reference|this]] to Crime Codes References on the Space Law page. All I would have to do is specify it like so <pre> [[Space Law#Crime Codes Quick Reference]]</pre>
If I wanted to link [[Space Law#Crime Codes Quick Reference|this]] to Crime Codes References on the Space Law page. All I would have to do is specify it like so: <pre> [[Space Law#Crime Codes Quick Reference]]</pre>


If the area you're referencing is in the article where the link is you can shorten the syntax. For example if I was on the Space Law page and I wanted to link a certain word to a subsection/anchor all I would have to do is use a '#' and write the subsection name: <pre>[[#Crime Codes Quick Reference]]</pre>
If the area you're referencing is in the article where the link is you can shorten the syntax. For example if I was on the Space Law page and I wanted to link a certain word to a subsection/anchor all I would have to do is use a '#' and write the subsection name: <pre>[[#Crime Codes Quick Reference]]</pre>


====Anchors====
====Anchors====
All headings always have anchors automatically attached to them. On our wiki we have [[Template:Anchor]] which allows us to create anchors extremely easily.
An Anchor is a defined place within in a page that you can link people to. They work much like headings where you can link people to them: <pre>[[Page Name#Anchor Name]].</pre> Infact, all headings have anchors attached to them!


What you will need to do is find the area you want someone to be taken to and place the anchor directly next to it via <pre>{{Anchor|Anchor_Name}}</pre>
On our wiki we have [[Template:Anchor]] which allows us to create anchors extremely easily. What you will need to do is find the area you want someone to be taken to and place the anchor directly next to it via <pre>{{Anchor|Anchor_Name}}</pre>


If I wanted to create an anchor right -> here{{Anchor|AnchorExampleSpot}} <- all I would have to do is this: <pre>If I wanted to create an anchor right -> here{{Anchor|AnchorExampleSpot}} <-</pre>
If I wanted to create an anchor right -> here{{Anchor|AnchorExampleSpot}} <- all I would have to do is this: <pre>If I wanted to create an anchor right -> here{{Anchor|AnchorExampleSpot}} <-</pre>


now if you click on [[#AnchorExampleSpot|this]] it should take you directly to the anchor.
now if you click on [[#AnchorExampleSpot]] it should take you directly to the anchor.
 
===External References===
 
Occasionally you will need to reference a link outside of the Wiki. This is often seen in articles that are guides to spritiing/code stuff or in our rule pages. Bottom line, you will rarely ever have to use an external reference and it should be avoided. If you ever do need to add an external link, it is a lot like referencing an internal article.
 
You will needs to use one opening square bracket <nowiki>'''['''</nowiki> and one closing square bracket <nowiki>''']'''</nowiki>  Inbetween you will need to put the link, add a space after the link and define the text for the link
 
<pre> [https://www.paradisestation.org/ Paradise] </pre>
This outputs: [https://www.paradisestation.org/ Paradise]


==Tables==
==Tables==
Line 227: Line 257:
This is where wikicode starts getting a little more difficult and confusing.
This is where wikicode starts getting a little more difficult and confusing.


A wikitable always has to be wrapped by curly brackets
A wikitable always has to be wrapped by curly brackets and a pipe bracket
<pre>{|
<pre>{|
All the content goes here
All the content goes here
Line 235: Line 265:


{|class ="wikitable" style="float:left"
{|class ="wikitable" style="float:left"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
|-  
! style="center;"            | Syntax
! style="center;"            | Syntax
! style="center;"            | What it does
! style="center;"            | What it does
Line 258: Line 288:
|}
|}
{|class="wikitable" style="float:left; margin:10pt;"
{|class="wikitable" style="float:left; margin:10pt;"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
|-  
! Header Cell
! Header Cell
! Header Cell
! Header Cell
Line 288: Line 318:
|}
|}
<pre>
<pre>
{|class="wikitable" style="float:left; margin:10pt;"
{|class="wikitable"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
|-  
! Header Cell
! Header Cell
! Header Cell
! Header Cell
Line 301: Line 331:


===Table Classes===
===Table Classes===
On the Paradise wiki, we never go with the default table setup because it has no border or lines to break up cells. In order to give our tables fancy UI we have to declare what class it is.
You should never go with the default table setup because it has no border or lines to break up cells. In order to give our tables fancy UI we have to declare what class it is.


We always do this at the beginning directly after the table start syntax <pre>{|class="wikitable"
We always do this at the beginning directly after the table start syntax  
The '''wikitable''' class gives our tables borders/outlines with grey backgrounds for header cells
{|class="wikitable"  style="float:right;"
|-
! Header Cell
! Header Cell
! Header Cell
|-
! Header Cell
| Cell
| Cell
|}
<pre>{|class="wikitable"
|-
|-
! Header Cell
! Header Cell
Line 314: Line 356:
|}</pre>
|}</pre>


The wikitable class gives our tables borders/outlines
 
{|class="wikitable"
The '''mw-collapsible''' class makes it so you can collapse the table(have to include wikitable class)
{|class="wikitable mw-collapsible"  style="float:right;"
|-
|-
! Header Cell
! Header Cell
Line 325: Line 368:
| Cell
| Cell
|}
|}
The mw-collapsible class makes it so you can collapse the table(have to include wikitable class)
<pre>{|class="wikitable mw-collapsible"
<pre>{|class="wikitable mw-collapsible"
|-
|-
Line 336: Line 378:
| Cell
| Cell
|}</pre>
|}</pre>
{|class="wikitable mw-collapsible"  
 
The '''mw-collapsed''' starts a table with a mw-collapsible class in the collapsed state.
{|class="wikitable mw-collapsible mw-collapsed"  style="float:right;"
|-
|-
! Header Cell
! Header Cell
Line 346: Line 390:
| Cell
| Cell
|}
|}
The mw-collapsed starts a table with a mw-collapsible class in the collapsed state.
<pre>{|class="wikitable mw-collapsible mw-collapsed"
<pre>{|class="wikitable mw-collapsible mw-collapsed"
|-
|-
Line 357: Line 400:
| Cell
| Cell
|}</pre>
|}</pre>
{|class="wikitable mw-collapsible mw-collapsed"  
 
The '''Sortable''' class allows you to make your columns sortable alphabetically, numerically, or by date. Additionally, by defining a row with <nowiki>class="unsortable"</nowiki> you can make it so that row isn't sortable.
{| class="wikitable sortable" style="float:right;"
|-
! Alphabetic
! Numeric
! Date
! class="unsortable" | Unsortable
|-
| d || 20 || 2008-11-24 || This
|-
| b || 8 || 2004-03-01 || column
|-
| a || 6 || 1979-07-23 || cannot
|-
| c || 4.2 || 1492-12-08 || be
|-
| e || 0 || 1601-08-13 || sorted.
|}
<pre>
{| class="wikitable sortable"
|-
! Alphabetic
! Numeric
! Date
! class="unsortable" | Unsortable
|-
| d || 20 || 2008-11-24 || This
|-
| b || 8 || 2004-03-01 || column
|-
| a || 6 || 1979-07-23 || cannot
|-
| c || 4.2 || 1492-12-08 || be
|-
| e || 0 || 1601-08-13 || sorted.
|}</pre>
 
===Cell Size Formatting===
 
You can define the '''size of a cell''' by using colspan and rowspan.
{| class="wikitable" style="float: right;"
!col1
!col2
!col3
!col4
|-
!row1
| colspan="2" | A
|C
|-
!row2
|AA
|BB
|CC
|-
!row3
|AAA
| rowspan="2" | BBB
|CCC
|-
!row4
|AAAA
|CCCC
|}
<pre>{| class="wikitable" style="text-align: center;"
!col1
!col2
!col3
!col4
|-
!row1
| colspan="2" | A
|C
|-
!row2
|AA
|BB
|CC
|-
!row3
|AAA
| rowspan="2" | BBB
|CCC
|-
!row4
|AAAA
|CCCC
|}</pre>
 
===Table Style===
Without defining the style of your table, it will look rather barebones. Most pages on this wiki have a color theme to them so it's important to know how to do this.
 
Whenever you're defining the style (aka how it looks) of a table you will need to declare it using the <nowiki>style=""</nowiki> syntax.
 
However, '''what do you put inbetween those quotations marks?''' Well the answer isn't the same for all the style options you have with HTML. For example, if you want to make background color of the table CadetBlue you would have to do this:
<pre>
{|class="wikitable" style="background-color:CadetBlue;"
|-
| Cell
| Cell
| Cell
|-
|-
! Header Cell
! Header Cell
| Cell
| Cell
|}</pre>
Notice how the there is a semi-colon ';' after it. You must use semicolons to separate each attribute you use and to end the string.
For more information on what attributes there are for styling go [[#Style|Here]]<nowiki />.
Depending on what you're trying to do, you can style different parts of a table. '''To style the entire table''', your style will have to go directly after where you define the class of the table:
<pre>
{|class="wikitable" style="text-align:justify;"
|-
| Cell
| Cell
| Cell
|-
! Header Cell
! Header Cell
| Cell
| Cell
|}</pre>
To Style '''Individual Cells''' you will need to define the style of the cell and then use the '|' character after which you can then write the content that would go into the cell. Additionally, you can do this to header cells "!" in the sameway.
<pre>{|class="wikitable"
|-
! style="color:blue; text-weight:bold;" | This Header Cell is Styled!
| Cell
| Cell
|-
! Header Cell
! Header Cell
| Cell
| style="text-align:left" | This Cell is also Styled!
|}</pre>
To Style '''Rows''' you will need to define the style after you declare the row with 'the |-' character
<pre>{|class="wikitable"
|-
|-
! Header Cell
| Cell
| Cell
| Cell
| Cell
| Cell
|- style="text-weight:bold;"
! Bold Header Cell
| Bold Cell
| bold Cell
|}</pre>
==Div==
You may notice that we have certain UI elements on our wiki. Most if not all of those are created by using the <nowiki><div></div></nowiki> tags. Anything into between those tags will be placed inside a box element. You can change the style of divs just like a table.
<pre><div style="background-color:black;color:white;"> Hello Everyone! <br> This is a really cool UI element!</div></pre>
<div style="background-color:black;color:white;"> Hello Everyone! <br> This is a really cool UI element!</div>
You can place multiple divs within each other and also place tables, templates, and images inside them too! The best examples of these being used is the headers/sidebars used in most of our articles.
==Common Style Attributes==
{{Anchor|Style}}
'''''Color''''' means any HTML Color name or hex value in this format -> #FFFFFF
Style can actually be applied to any tags (even <nowiki><b>, <pre>, and <p></nowiki>) however some attributes may not apply to that token. Any combination of these tags can be used to create the exact look you want so don't be afraid to mix and match.
{|class ="wikitable mw-collapsible" width: "80%";"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
! style="center;"            | Format Type
! style="left;"              | Usage/Parameters
! style="center;"            | Output
|-
! background-color:''Color'';
| Use this to set the background color <pre><div style="background-color:#CCFFCC;">Example Text 1 <br> Example Text 2</div></pre>
| <div style="background-color:#CCFFCC;">Example Text 1 <br> Example Text 2</div>
|-
! color:''Color'';
| Use this to set text color <pre><div style="color:darkred;">Example Text 1 <br> Example Text 2 </div></pre>
| <div style="color:darkred;">Example Text 1 <br> Example Text 2 </div>
|-
! border: #px linetype ''Color'';
| Use this to set the style of borders <pre><div style="border: 1px solid blue;">Example Text 1 <br> Example Text 2</div></pre>
| <div style="border: 1px solid blue;">Example Text 1 <br> Example Text 2</div>
|-
! margin-{side}: #px; <br> or <br> margin: #px #px #px #px
| Use this to set the margins for all four sides. It can be top, bottom, right, or left (in that order) <pre><div style="background-color:grey;margin-top:64px>Example Text 1 <br> Example Text 2</div>
or
<div style="background-color:grey;margin:12px 12px 15px 15px>Example Text 1 <br> Example Text 2</div></pre>
| <div style="background-color:grey;margin-top:64px>Example Text 1 <br> Example Text 2</div>
or
<div style="background-color:grey;margin:12px 12px 15px 15px>Example Text 1 <br> Example Text 2</div>
|-
! padding-{side}: #px; <br> or <br> padding: #px #px #px #px
| Use this to set the spacing between the border and its contents. It can be top, bottom, right, or left (in that order) <pre><div style="background-color:grey;padding-top:64px>Example Text 1 <br> Example Text 2</div>
or
<div style="background-color:grey;padding:12px 12px 15px 15px>Example Text 1 <br> Example Text 2</div></pre>
| <div style="background-color:grey;padding-top:64px>Example Text 1 <br> Example Text 2</div>
or
<div style="background-color:grey;padding:12px 12px 15px 15px>Example Text 1 <br> Example Text 2</div>
|-
! font-size:#%;
| This sets the font size by percentage <pre><div style="font-size:%200;">Example Text 1 <br> Example Text 2</div></pre>
|<div style="font-size:%200;">Example Text 1 <br> Example Text 2</div>
|-
! text-align:{direction};
| This aligns the text to a certain direction. The options are left, right, center, and justified. <pre><div style="text-align:right;">Example Text 1 <br> Example Text 2</div></pre>
| <div style="text-align:right;">Example Text 1 <br> Example Text 2</div>
|-
! font-family:font
| This sets the font family, although you '''''REALLY''''' shouldn't use this on our wiki <pre><div style="font-family:impact;">Example Text 1 <br> Example Text 2</div></pre>
| <div style="font-family:impact;">Example Text 1 <br> Example Text 2</div>
|}
|}
===Table Style===


=Span=
==Templates==
 
There are many recursive UI elements we use in our wiki. For example, [[Template:Wip]] and [[Template:JobLaw]] are UI elements we use on multiple wiki pages. As a result of this we have to create something called a '''Template'''. It is premade code that you can enter parameters into to populate any element you want into an article simply by calling it. If you're familiar with coding, it's just like making a function with parameters and calling it when you need it.
 
===Calling Templates===
'''''Disclaimer:''''' It is important that you read the Template Documentation so you know what parameters it takes!
<br>
 
In order to call a template you must utilize double curly brackets: '''<nowiki>{{</nowiki>''' and '''<nowiki>}}</nowiki>'''
Inbetween those brackets you will need to put the name of the template.
 
For example, if I wanted to place a Work in Progress Template(see [[Template:Wip]]) over an article I'm working on I would call the template by its name in curly brackets. Additionally I've checked and seen that it takes one variable called '''assign'''. What I will need to now do is not only call the template but also give it parameter values. By using the ''''|''''character to seperate the template name and parameters you can assign values to those variables. <pre>{{Wip|assign=Sirryan2002}}</pre>
{{Wip|assign=Sirryan2002|NoCategory=True}}
 
While it would be easy to copy over the code from [[Template:Wip]], this is a much faster, easier, and shorter method of doing that.
 
When you use the curly brackets it automatically defaults to the [[#Name Spaces|Template Namespace]]. You can actually use anything as a template, even other wiki pages. All you have to do is specify which Namespace and article name. As an example, I've copied over my user talk page [[User talk:Sirryan2002]] into this collapsible block below only by using <nowiki>{{User talk:Sirryan2002}}</nowiki>
{|class="wikitable mw-collapsible mw-collapsed"
! Example Article
|-
| {{User talk:Sirryan2002}}
|}
 
===Making Templates===
 
Making a template is extremely easy and the difficulty only scales up with how fancy you want your template to be code-wise. All you need to do is create a page under the template namespace by typing in '''Template:INSERT NAME HERE''' into the search bar and clicking create page. After that, you can just write the code for it and call it later.
 
For example, if there was a large update to the codebase I may want to have a disclaimer over wiki pages that had just become outdated from such updates. I would first type '''Template:CodeDisclaimer''' into the search bar and create the page. I would put in my code:
<pre> <div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates!</div></pre>
 
And then I could call it by using the syntax: '''<nowiki>{{CodeDisclaimer}}</nowiki>''' in another article
<div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates!</div>
 
===Variables===
Variables are an integral part of customizable templates. If you do not know what a variable is, google it. In a bite-sized definition, it is a thing that you can store values in and recall later.
<pre> For example
I could say that X = 10
X is a variable with a stored value of 10
</pre>
On the wiki, we can define variables by using <u>3</u> curly brackets: '''<nowiki>{{{VARIABLE}}}</nowiki>'''
Look at this example Template:MyDog to better understand how to use this
<pre>My {{{DogColor}}} dog is cute and fluffy!</pre>
In this template we've defined a variable '''DogColor''' and we can now call this template and give that variable a value to work with and see what happens.
<pre>{{MyDog|DogColor=Yellow}}</pre>
My Yellow dog is cute and fluffy!
<hr>
 
If we go back to the practice template we just looked at we can use a variable to make it more customizable. I want my '''Template:CodeDisclaimer''' to have a date attached to it telling users when the code was updated. However, not all the wiki pages had code updated on the same day so I can't just write the date into the template. I can instead specify a variable that can be entered for that date like so:
<pre> <div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of {{{UpdateDate}}}!</div></pre>
I can once again call this template and specify the date now '''<nowiki>{{CodeDisclaimer|UpdateDate=5/25/2020}}</nowiki>'''
<div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of 5/25/2020!</div>
<br>
<br>
<br>
One other nifty thing we can do is add default values for our variables. Say someone used our CodeDisclaimer Template but didn't give it any variables, it would look something like this
 
<div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of <nowiki>{{{UpdateDate}}}</nowiki></div>
 
We don't want that, so we can utilize the '|' character again to add a default value to our variable like so:
<pre> <div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of {{{UpdateDate|(No Date Available)}}}!</div></pre>
Now if someone called '''<nowiki>{{CodeDisclaimer}}</nowiki>''' it would default to this.
<div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of (No Date Available)!</div>
 
===Exclusion Tags and Documentation===
 
Some of the templates on the wiki can get very complicated and have a lot of parameters. Take [[Template:JobPageHeader]] as an example. It's important that each of these templates have a description of what values you need to put into it. However, due to the nature of templates, we don't want that description to also be ported over with it.
 
Take this example Template:Birthday  <pre><div width="100%" style="border:3px solid cadetblue;text-align:center;font-weight:bold;">Happy birthday to [[{{{BirthdayUser|someone}}}]] they are {{{YearsOld|some years}}} years old today!</div>
 
How to to use this template:
 
Place template where you want the birthday message to show up.
 
Parameters:
* BirthdayUser takes peoples wiki Usernames as values
* YearsOld is a numerical value describing how old that user is
</pre>
 
I don't want the "How to use this template:" section going into every article I use the template in. Instead I can use a <nowiki><noinclude></noinclude></nowiki> tag set to describe things I don't want to be included in the transclusion of this template to another page.
 
<pre><div width="100%" style="border:3px solid cadetblue;text-align:center;font-weight:bold;">Happy birthday to [[{{{BirthdayUser|someone}}}]] they are {{{YearsOld|some years}}} years old today!</div>
<noinclude>
How to use this template:
 
Place template where you want the birthday message to show up.
 
Parameters:
* BirthdayUser takes peoples wiki Usernames as values
* YearsOld is a numerical value describing how old that user is
</noinclude>
</pre>
'''<nowiki>{{Birthday|BirthdayUser=Sirryan2002|Yearsold=18}}</nowiki>'''
<div width="100%" style="border:3px solid cadetblue;text-align:center;font-weight:bold;">Happy birthday to Sirryan2002 they are 18 years old today!</div>
 
{|class ="wikitable mw-collapseable" width: "80%";"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
! style="center;"            | Syntax
! style="left;"              | Usage
|-
! Noinclude
| Use this to prevent a certain section of the template page from being transcluded over wherever the template is called. This is useful for documentation and notes for explaining how a template work. <pre> This is my {{{Adjective|Cool}}} template! <noinclude> This text is not included when I call {{ExampleTemplate}}</noinclude></pre>
|-
! Includeonly
| Use this to make it so part of a template only appears when called/transcluded and doesn't show up on the template page itself. This is useful for a template that will automatically put articles in categories but doesn't want the template page itself to be included in that category. <pre> This is my {{{Adjective|Cool}}} template! <includeonly>This text doesn't show up on the template page but will show up on the page where I call {{ExampleTemplate}}!</noinclude></pre>
|-
! Onlyinclude
| Use this to mark a section of a template as the only section that will be transcluded. Anything outside these tags will not be included when the template is called. <pre> Are you a lover of oceans? Do you enjoy refreshing saltwater and the sound of the waves. Well, then you would really like the Pacific Ocean. <onlyinclude>The Pacific Ocean is the largest ocean in the world, its water is saltwater and takes up a large portion of the Earth's surface.</onlyinclude> The ocean borders North and South America, Asia, Oceania, and many many islands. </pre> If you called Template:PacificOcean the only text that would show up is: <pre>The Pacific Ocean is the largest ocean in the world, its water is saltwater and takes up a large portion of the Earth's surface.</pre>
|}
 
==Categories==
In order to assign a wikipage to a category, all you need to do is add this to the bottom of the page:
<pre> [[Category:Category name]] </pre>
 
For example, I've assigned this article to Category:Guides by adding this to my page code: <pre>
[[Category:Guides]]</pre>
 
You can create a category by typing this into the search bar and creating "create page" which should be highlighted in red
<pre> [[Category:Insert name here]]</pre>
 
==Protected Pages==
Some pages like Paradise's [[Main Page]] are what we call a '''Protected Page'''.
 
This means that only users with a certain level of user rights can edit that page. This is usually reserved for Game Admin, Headmins, maintainers etc.
 
The kind of pages that are protected tend to be SOP pages like [[Command SOP]], [[Space Law]], and templates that are used on protected pages like [[Template:LawModifiers]].
 
==Advanced Topics==
===Redirects===
Occasionally you will have an article like [[Ragin' Mages]] that is hard to spell or a keyword like [[Metal]] that people will look for in the search bar. Unfortunately, MediaWiki requires you to be specific in order what you type in the search bar to take you directly to where you want to go. So if you mispell a word or don't capitalize correctly you get taken to the article search page. We can create iterations of different spelling/capitalization to make it easier to access articles. By adding a redirect to a page, it will automatically take you from that page to where you're being redirected
 
This is done by simply using this syntaxt on a page: <pre>
#REDIRECT [[PAGENAME]]
</pre>
 
Realistically, there should not be anything else on that page except for the redirect, however if the page is being preserved for its historical purposes like [https://www.paradisestation.org/wiki/index.php?title=Contraband&redirect=no Contraband] then all code should go UNDER the redirect. This includes templates like WIP and Obsolete
 
'''Example'''
<pre>
Home Page: Space Law {Page Code}
Redirect Page1: Crimes {#REDIRECT [[Space Law]]}
Redirect Page2: space law {#REDIRECT [[Space Law]]}
Redirect Page3: spesslaw {#REDIRECT [[Space Law]]} </pre>
 
===Article Locations===
====Name Spaces====
When you walk into a library, every book is filed into its own section. Fiction goes in the fiction section, non-fiction goes in the non-fiction section, and so on. Much like you would file books into different sections of a library, all of our articles are also filed under their own sections. Our wiki calls those sections '''''Namespaces'''''.
 
If you've read everything before this section you will have at some point heard of a namespace. Most commonly we refer to the Main: namespace or the User: namespace. There are actually '''18''' namespaces all with specific purposes. There are 8 content namespaces, 8 talk namespaces, and 2 unique namespaces.
 
 
{|class ="wikitable mw-collapsible" width: "80%";"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
! style="center;"          | Namespace
! style="left;"            | Description
! style="center;"          | Talk
! style="left;"            | Description
|-
! Main
| This is where are of our content articles go like [[Space Law]] and [[SMES]]
! Talk
| The talk/discussion page for the main article it's attached to
|-
! User
| This is where all users pages are stored
! User Talk
| The talk/discussion page for the User/User's Page. '''If you write something on someone else's talk page they will get a large notification on the top of their interface.'''
|-
! Project
| Informational pages/articles go here. This is often where TOS and about pages will go. The namespace name for this namespace is different on all wikis. It will always show up as ParadiseStation Wiki instead of "Project"
! Project Talk
| The talk/discussion page for Project Articles
|-
! Mediawiki
| Site interface customization '''This is where skins for the wiki and a bunch of CSS stuff happens'''
! Mediawiki Talk
| The talk/discussion page for Mediawiki Namespace pages
|-
! Template
| Where all template pages go
! Template Talk
| Discussion/Talk page for that template.
|-
! Help
| Pages that are a manual/help page for a concept/page/template
! Help Talk
| Discussion/Talk page for help page
|-
! Category
| Where all Category pages go. Pages in this namespace are automatically populated with an index of everything in that category.
! Category Talk
| Discussion/Talk page for Category pages
|-
! colspan="4"|
|-
! Special
| This namespace holds special pages on the wiki such as the log in page and the recent changes page. '''You can't create a page in the special namespace''' you would do conventionally in other namespaces.
! colspan="2" rowspan="2" |
|-
! Media
| Alias for directly linking to media(files) pages. You can't create a page in this namespace without using the special page upload file.
|}
 
====SubPages====
Subpages are pages that are children of a main page. For example this page is a subpage of my user page [[User:Sirryan2002]]. Subpages are often used a folder/sorting method for very similar articles that are related. You can reference them just like any other page and the only thing unique about them is that they will have a breadcrumb link at the top of the page redirecting back to the parent page.
 
In order to create a subpage you just need to the '/' character
<pre>Namespace:MainPage/Subpage
Namespace:MainPage/Subpage/Sub-Subpage
Namespace:MainPage/Subpage/Sub-Subpage/Sub-Sub-Subpage
 
</pre>
 
'''When Should I use a Subpage?'''
* Archiving old talk page discussion
* Documentation for a template
* Organizing Similar pages like Recursive Food/Chem template together
 
===Magic Words===
====Table of Contents====
 
You can actually affect how and where a table of contents appears on your article. a TOC only appears after 3 headers have been defined so you can force it earlier. Additionally, you can forgo a TOC completely. If you want to align a TOC you would have to place it inside a table and align the table.
 
{|class ="wikitable mw-collapseable" width: "80%";"
|- style="font-weight:bold;background-color:Gray;text-align:center;"
! style="center;"            | Syntax
! style="left;"              | Usage
|-
! <nowiki>__TOC__</nowiki>
| Places a table of contents at the word's current position (overriding <nowiki>__NOTOC__</nowiki>). If this is used multiple times, the table of contents will appear at the first word's position <pre>__TOC__</pre>
|-
! <nowiki>__FORCETOC__</nowiki>
|  Forces the table of contents to appear at its normal position (before the first header, overriding <nowiki>__NOTOC__</nowiki>). <pre>__FORCETOC__</pre>
|-
! <nowiki>__NOTOC__</nowiki>
| Hides the table of contents (TOC). <pre>__NOTOC__</pre>
|}
 
====Parser Functions====
This topic is too extensive to warrant a section on this guide
Please see the following pages for assistance
* [https://www.mediawiki.org/wiki/Help:Magic_words#Parser_functions Parser Functions]
* [https://www.mediawiki.org/wiki/Help:Extension:ParserFunctions Extension:ParserFunctions]
 
=====Please Note=====
String Parser Functions have been disabled on this wiki by headmins, there are ways to still accomplish the functionality of the syntax offered by string functions by utilizing other parser functions(you will have to figure that out yourself though, try looking at wikipedias existing templates that replace <nowiki>.{{#sub:}}</nowiki>.
 
==Extensions==
Much like you can add a library to a codebase, you can add an extension to the wiki. This expands what syntax we can use. For example there are extensions that add the ability to use new UI elements and other extensions that allow us to use API in conjunction with GitHub.


=Templates=
Extensions, while often written by MediaWiki authors, are not bug-fixed or maintained as thoroughly as the vanilla MediaWiki code. As a result extension code can be '''buggy''' and can easily break. Known bugs will be listed under each extension
==Calling Templates==
==Making Templates==


=Categories=
For a list of all extensions installed on this wiki see [[Special:Version]]
=Protected Pages=
=Special Pages=


=Advanced Topics=
===Tabs===
The tabs extension allows you to insert a UI element much like a div but you can switch between different pages in that UI element. For example you can do this
<tabs>
<tab name="Tab 1">
This is tab1! </tab>
<tab name="Tab 2">
This is tab2! </tab>
<tab name="Tab 3">
This is tab3! </tab>
</tabs>
You can put anything inside it. You can define a tab element by using '''<nowiki><tabs>  </tabs></nowiki>'''
Next you will have define the tabs inside of it via '''<nowiki><tab>  </tab></nowiki>'''
In order to give a tab a name, you would have to give the name parameter a value '''<nowiki><tab name="tab 1">  </tab></nowiki>'''
<pre><tabs>
<tab name="Tab 1">
This is tab1! </tab>
<tab name="Tab 2">
This is tab2! </tab>
<tab name="Tab 3">
This is tab3! </tab>
</tabs></pre>


==Magic Words==
'''Know Bugs'''
==Parser Functions==
* You '''''CANNOT''''' use variables inside tabs. It just simply won't work(trust me I've tried)
* Putting tabs inside templates should be avoided because it just breaks shit
* The UI for tabs will break if you do something funky within them, undo what you did and make an edit to reload the page so it fixes itself


=Definitions=
==Definitions==

Latest revision as of 22:05, 29 October 2023

Many people want to edit the Paradise wiki but have absolutely no idea how or where to start learning. This guide serves as the easiest way to pick up on basic-intermediate wiki code and provide a stepping stone for others to improve their wiki knowledge.

If you're a beginner, it is important that you read this wiki top to bottom as the syntax explained builds on what is explained above it. The only way you will get better is by looking at other people's work and playing around on your User page which can be access by clicking on the Username in the top right.

Also don't forget that by editing the wiki, you're doing a good deed for the server and its players. Yes, your work will likely go unnoticed but you will help people become better and enjoy the game more. That by far is the greatest pleasure I have gotten from contributing any amount of time I have given to this wiki.



Note:This is not a set of rules for the wiki, for that, you should go Here.

Tags

In order to edit a wiki article you will need to go to the page or a subsection on that page and click the Edit button. If you are logged in you should be able to be edit the code of all but a Few wiki pages.

Writing a wiki page is much like editing a word document or google doc with additional code to format it nicely. You can write a paragraph in plain text and if you wanted to add style to anything you would utilize Tags.

Anything between those tags will receive the attributes given by that tag. For example, if I wanted to underscore a certain word in a sentence I would be able to do: Dogs are super <u>cool</u>! This would output as:Dogs are super cool!

Each tag starts with an opening angle bracket '<' and ends with a closing angle bracket '>' and the tag we are using is defined between those. For the underscore tag we used earlier u is the name of the tag hence why we used <u>. In order to declare that we are no longer using that tag we will have to use the tag again but with a forward slash '/' in front of it. Like this </u>. As a general rule of thumb, you should always have an opening tag and a closing tag.

Once you're finished editing something, you click save changes and describe a summary(more on this below) and your edit will be saved to the wiki!

Making Edits

Wikis are such a fabulous tool for servers because they can be constantly edited and updated by the playerbase. Whenever you make a change/edit to any page it is documented in the view history tab at the top of the page. In there you can see who made the edit, when they made it, and what they said they edited. In addition, you can compare edits to see the changes between them and undo them.

Whenever you make an edit, you are required to do two things.

  1. Summarize your edit
  2. Declare the type of edit you're making


When summarizing your edit, keep it concise(in 1 sentence) and describe vaguely what you did. For example, if you add a bunch of items to a table, you can just specify "Added additional items to the (insert name here) table."

If your edit is purely to correct a small(within 50 characters) grammatical/phrasing/spelling issue then you should declare your edit as a Minor Edit "grammar fix" or "spellcheck" will suffice as a summary for these types of edits.

Comments

You are able to Comment out text inside the pages wikicode. This is great for letting other editors what to do/not do.

Comments should be used for:

  • Explaining Template Code
  • Warning users not to delete certain code
  • Explaining weird/uncommon syntax
  • Warning users not to add something because previous content of that type has been repeatedly reverted
  • Used to section areas of the code off when it gets messy

Comments should not be used to:

  • Leave funny/friendly messages or jokes
  • Temporarily remove sections to be re-added later (this is what user and draft pages are for)
  • Explain changes made

Text Formatting

Text by itself is extremely boring and often hard to read, so you can use text formatting to make your words really POP!

Format Type Usage Output
Bold Use this to bring attention to important text
'''This text is bold'''
This text is bold!
Underline Use this to underscore important information or warnings
<u>This text is underlined!</u>
This text is underlined!
Italic Use this to enounciate certain words
''This text is italicized!''
This text is italicized!
Headings Use this to declare a section of your article and organize it
  • Level 1 Headings should not be used because it conflicts with the wiki page's HTML file
  • 4 or more headings causes the page to have a Table of Contents(TOC)
  • Headings must be at the start of a line and not border other text
===Level 3===

====Level 4====

=====Level 5=====

======Level 6 ======

Level 3

Level 4

Level 5
Level 6
Paragraphs You can designate sections of text as paragraphs which will for a linebreak before and after that section, you can also apply some more advanced formatting through Styles with it.
<p> This is a paragraph of text! </p>

This is a paragraph of text!

Bullet Lists This is how you create bullet lists
*Item 1
* Item 2
** Item 2.1
** Item 2.2
* Item 3
** Item 3.1
*:- Definition 
  • Item 2
    • Item 2.1
    • Item 2.2
  • Item 3
    • Item 3.1
    - Definition
Numbered Lists This is how you create numbered lists
#Item 1
# Item 2
## Item 2.1
## Item 2.2
# Item 3
## Item 3.1
  1. Item 1
  2. Item 2
    1. Item 2.1
    2. Item 2.2
  3. Item 3
    1. Item 3.1
Preformatted Text Use this to preformat text with a certain, this will alos allow you to write anything within the pre blocks without the wiki recognizing it as text formatting.
<pre>This text is preformatted to be the default font and style, <b>Things aren't bolded</b> or <i>Italicized</i>!!!</pre>
This text is preformatted to be the default font and style, <b>Things aren't bolded</b> or <i>Italicized</i>!!!
Comments Use this to leave important notes/messages to people editing the page. Comments do not show up when you view the wiki page and are only visible in the page editor.
 <!--This is a comment, to whoever is reading this -->
The Fitness Gram Pacer Test is a multi-stage aerobic exercise...

The Fitness Gram Pacer Test is a multi-stage aerobic exercise...

Nowiki The nowiki block makes it so that any formatting within the block is ignore and is instead displayed as regular text.
<nowiki><b>This is bold!<b> this is a burger: [[File:Burger.png]]</nowiki>
<b>This is bold!<b> this is a burger: [[File:Burger.png]]

Images

Images are extremely important for our wiki, without them people wouldn't know what icons/mobs would look like or get a visual representation of what they're supposed to do. Trying to include pictures in your articles can seem daunting at first, but it's super easy once you get a handle on it.

Usage and Formatting

In order to use an image you must utilize the [[File:]] synax.

For example, if you want to use Burger.png: Burger.png then you must specify [[File:Burger.png]]. This will make Burger.png appear wherever you declare this.

However, in order to make images useful to us, we need to format that in a way that is easy to understand and see. We can add parameters to our image by utilizing the '|' character. If you want your image to a certain size and make it link to another page you can specify it as [[File:Burger.png|64px|link=Space Law]]. There's a ton of parameters you can use but the most important ones are listed below.

Format Type Usage Output
Pixel Size You can declare how large you want your image to be in pixels. Generally, you want to stick with either the original size of the file, 64px, or 32px. Or else you may have lossy resizing.
[[File:Burger.png|128px]]
Burger.png
Image Alignment You can align an image like you align text. You have four options: left, right, center, and justified
[[File:Burger.png|right]]
Burger.png
Framing You can put an image in a bordered frame. However, this will not allow you to resize the image.
[[File:Burger.png|frame]]
Burger.png
Thumbnail You can put an object in a thumbnail which allows the image to be clicked and expanded. This allows you to resize an image while still having it be in a frame
[[File:Burger.png|thumb]]
Burger.png
Links You can make an image link to a page when it is clicked. You only need to include the page name/subsection and not the full link.
[[File:Burger.png|link=Space Law]]
Burger.png
Captions You can add a caption to a framed image or have a tooltip appear with that caption with non framed images.
[[File:Burger.png|Hello! this is my caption!]] and also [[File:Burger.png|Hello! this is my second caption!|frame]]
Hello! this is my caption!
Hello! this is my second caption!

Uploading

In order to upload an image, you must click on upload file in the left taskbar. Here you can upload lots of files(if they're supported) to the wiki.

General Rules about uploading:

  • Check to make sure your image doesn't already exist on the wiki
  • If your image already exists but you want a better resolution, upload a new version to that file
  • Try and upload sprites with the size 64px. You can resize sprites by using an editing software, like Photoshop and scaling by Nearest Neighbour.
  • Once you upload an image, it cannot be removed except by an admin
  • Give your images proper names
  • Make your images have a transparent background if applicable
  • Try to only use these formats: .png and .gif
  • Larger images such as File:General Destruction.png don't have to follow sizing guidelines because they're supposed to be large and high resolution

References

It is very important the articles link to each other so we have a web of information. In order to do this, we can reference articles and link keywords to those articles.

The most obvious way to do this is by typing [[Article Name]]

For example, you could link to Space Law by typing

[[Space Law]]

You can also link the article and change the link text. If you wanted to still link to space law but instead have the link be Legal Suggestions then you would have to use the syntax below. The two parameters for images is the Page Name and the Link Text --> [[Page Name|Link Text]]

[[Space Law|Legal Suggestions]]

Referencing Nuances

As a general note, you should always add spaces after references as it will include any characters that are next to it. So if you write [[Space Law]]textextext It will output as Space Lawtextextext.

If you wanted to do something like SMES's where you have characters directly next to the link then you would have to add the <nowiki /> tag to it --> [[SMES]]<nowiki />'s

If you want to link to an image rather than embedding it you will need to add a ':' colon before the name. For example, I can reference File:Burger.png without the image embedding itself by doing:

[[:File:Burger.png]]

If you want to link to something outside of the Main: Namespace (if you're not sure what a namespace is, go here, but for now all you need to know is that all general users will be reading are in the Main Namespace) you will have to specify which namespace the article is in before you link it.

For example if I wanted to link to my user page:User:Sirryan2002 I cannot just use [[Sirryan2002]] because it will automatically default to the main namespace -> [[Main:Sirryan2002]] which does not exist. I will have to instead specify which name space I'm searching in. For the user's name space I will specify User

[[User:Sirryan2002]]

Referencing Subsections

Sometimes you don't want to just link to an article, you want to link to a specific point in that article.

By adding a hashtag '#' to the end of a page name in your link you can specify where you want to go in that article. You can do this for any subsection in an article.

If I wanted to link this to Crime Codes References on the Space Law page. All I would have to do is specify it like so:

 [[Space Law#Crime Codes Quick Reference]]

If the area you're referencing is in the article where the link is you can shorten the syntax. For example if I was on the Space Law page and I wanted to link a certain word to a subsection/anchor all I would have to do is use a '#' and write the subsection name:

[[#Crime Codes Quick Reference]]

Anchors

An Anchor is a defined place within in a page that you can link people to. They work much like headings where you can link people to them:

[[Page Name#Anchor Name]].

Infact, all headings have anchors attached to them! On our wiki we have Template:Anchor which allows us to create anchors extremely easily. What you will need to do is find the area you want someone to be taken to and place the anchor directly next to it via

{{Anchor|Anchor_Name}}

If I wanted to create an anchor right -> here <- all I would have to do is this:

If I wanted to create an anchor right -> here{{Anchor|AnchorExampleSpot}} <-

now if you click on #AnchorExampleSpot it should take you directly to the anchor.

External References

Occasionally you will need to reference a link outside of the Wiki. This is often seen in articles that are guides to spritiing/code stuff or in our rule pages. Bottom line, you will rarely ever have to use an external reference and it should be avoided. If you ever do need to add an external link, it is a lot like referencing an internal article.

You will needs to use one opening square bracket '''[''' and one closing square bracket ''']''' Inbetween you will need to put the link, add a space after the link and define the text for the link

 [https://www.paradisestation.org/ Paradise] 

This outputs: Paradise

Tables

This is where wikicode starts getting a little more difficult and confusing.

A wikitable always has to be wrapped by curly brackets and a pipe bracket

{|
All the content goes here
|}

Below from left to right is Table Syntax, an example table in final form, and example code for a table.

Syntax What it does
{| Start a table - required
|} End a table - required
|+ Add a definition/title to the table
|- Starts a new row
! Creates a Header Cell
| creates a new cell
Header Cell Header Cell Header Cell
Header Cell Cell Cell
Header Cell Cell Cell
Header Cell Cell Cell
Header Cell Cell Cell
Header Cell Cell Cell
Header Cell Cell Cell
{|class="wikitable"
|- 
! Header Cell
! Header Cell
! Header Cell
|-
! Header Cell
| Cell
| Cell
|}

Table Classes

You should never go with the default table setup because it has no border or lines to break up cells. In order to give our tables fancy UI we have to declare what class it is.

We always do this at the beginning directly after the table start syntax The wikitable class gives our tables borders/outlines with grey backgrounds for header cells

Header Cell Header Cell Header Cell
Header Cell Cell Cell
{|class="wikitable"
|-
! Header Cell
! Header Cell
! Header Cell
|-
! Header Cell
| Cell
| Cell
|}


The mw-collapsible class makes it so you can collapse the table(have to include wikitable class)

Header Cell Header Cell Header Cell
Header Cell Cell Cell
{|class="wikitable mw-collapsible"
|-
! Header Cell
! Header Cell
! Header Cell
|-
! Header Cell
| Cell
| Cell
|}

The mw-collapsed starts a table with a mw-collapsible class in the collapsed state.

Header Cell Header Cell Header Cell
Header Cell Cell Cell
{|class="wikitable mw-collapsible mw-collapsed"
|-
! Header Cell
! Header Cell
! Header Cell
|-
! Header Cell
| Cell
| Cell
|}

The Sortable class allows you to make your columns sortable alphabetically, numerically, or by date. Additionally, by defining a row with class="unsortable" you can make it so that row isn't sortable.

Alphabetic Numeric Date Unsortable
d 20 2008-11-24 This
b 8 2004-03-01 column
a 6 1979-07-23 cannot
c 4.2 1492-12-08 be
e 0 1601-08-13 sorted.
{| class="wikitable sortable"
|-
! Alphabetic
! Numeric
! Date
! class="unsortable" | Unsortable
|-
| d || 20 || 2008-11-24 || This
|-
| b || 8 || 2004-03-01 || column
|-
| a || 6 || 1979-07-23 || cannot
|-
| c || 4.2 || 1492-12-08 || be
|-
| e || 0 || 1601-08-13 || sorted.
|}

Cell Size Formatting

You can define the size of a cell by using colspan and rowspan.

col1 col2 col3 col4
row1 A C
row2 AA BB CC
row3 AAA BBB CCC
row4 AAAA CCCC
{| class="wikitable" style="text-align: center;"
!col1
!col2
!col3
!col4
|-
!row1
| colspan="2" | A
|C
|-
!row2
|AA
|BB
|CC
|-
!row3
|AAA
| rowspan="2" | BBB
|CCC
|-
!row4
|AAAA
|CCCC
|}

Table Style

Without defining the style of your table, it will look rather barebones. Most pages on this wiki have a color theme to them so it's important to know how to do this.

Whenever you're defining the style (aka how it looks) of a table you will need to declare it using the style="" syntax.

However, what do you put inbetween those quotations marks? Well the answer isn't the same for all the style options you have with HTML. For example, if you want to make background color of the table CadetBlue you would have to do this:

{|class="wikitable" style="background-color:CadetBlue;" 
|- 
| Cell
| Cell
| Cell
|-
! Header Cell
| Cell
| Cell
|}

Notice how the there is a semi-colon ';' after it. You must use semicolons to separate each attribute you use and to end the string.

For more information on what attributes there are for styling go Here.

Depending on what you're trying to do, you can style different parts of a table. To style the entire table, your style will have to go directly after where you define the class of the table:

{|class="wikitable" style="text-align:justify;"
|-
| Cell
| Cell
| Cell
|-
! Header Cell
| Cell
| Cell
|}

To Style Individual Cells you will need to define the style of the cell and then use the '|' character after which you can then write the content that would go into the cell. Additionally, you can do this to header cells "!" in the sameway.

{|class="wikitable"
|-
! style="color:blue; text-weight:bold;" | This Header Cell is Styled!
| Cell
| Cell
|-
! Header Cell
| Cell
| style="text-align:left" | This Cell is also Styled!
|}

To Style Rows you will need to define the style after you declare the row with 'the |-' character

{|class="wikitable"
|-
| Cell
| Cell
| Cell
|- style="text-weight:bold;"
! Bold Header Cell
| Bold Cell
| bold Cell
|}

Div

You may notice that we have certain UI elements on our wiki. Most if not all of those are created by using the <div></div> tags. Anything into between those tags will be placed inside a box element. You can change the style of divs just like a table.

<div style="background-color:black;color:white;"> Hello Everyone! <br> This is a really cool UI element!</div>
Hello Everyone!
This is a really cool UI element!

You can place multiple divs within each other and also place tables, templates, and images inside them too! The best examples of these being used is the headers/sidebars used in most of our articles.

Common Style Attributes

Color means any HTML Color name or hex value in this format -> #FFFFFF

Style can actually be applied to any tags (even <b>, <pre>, and <p>) however some attributes may not apply to that token. Any combination of these tags can be used to create the exact look you want so don't be afraid to mix and match.

Format Type Usage/Parameters Output
background-color:Color; Use this to set the background color
<div style="background-color:#CCFFCC;">Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2
color:Color; Use this to set text color
<div style="color:darkred;">Example Text 1 <br> Example Text 2 </div>
Example Text 1
Example Text 2
border: #px linetype Color; Use this to set the style of borders
<div style="border: 1px solid blue;">Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2
margin-{side}: #px;
or
margin: #px #px #px #px
Use this to set the margins for all four sides. It can be top, bottom, right, or left (in that order)
<div style="background-color:grey;margin-top:64px>Example Text 1 <br> Example Text 2</div>
or
<div style="background-color:grey;margin:12px 12px 15px 15px>Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2

or

Example Text 1
Example Text 2
padding-{side}: #px;
or
padding: #px #px #px #px
Use this to set the spacing between the border and its contents. It can be top, bottom, right, or left (in that order)
<div style="background-color:grey;padding-top:64px>Example Text 1 <br> Example Text 2</div>
or
<div style="background-color:grey;padding:12px 12px 15px 15px>Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2

or

Example Text 1
Example Text 2
font-size:#%; This sets the font size by percentage
<div style="font-size:%200;">Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2
text-align:{direction}; This aligns the text to a certain direction. The options are left, right, center, and justified.
<div style="text-align:right;">Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2
font-family:font This sets the font family, although you REALLY shouldn't use this on our wiki
<div style="font-family:impact;">Example Text 1 <br> Example Text 2</div>
Example Text 1
Example Text 2

Templates

There are many recursive UI elements we use in our wiki. For example, Template:Wip and Template:JobLaw are UI elements we use on multiple wiki pages. As a result of this we have to create something called a Template. It is premade code that you can enter parameters into to populate any element you want into an article simply by calling it. If you're familiar with coding, it's just like making a function with parameters and calling it when you need it.

Calling Templates

Disclaimer: It is important that you read the Template Documentation so you know what parameters it takes!

In order to call a template you must utilize double curly brackets: {{ and }} Inbetween those brackets you will need to put the name of the template.

For example, if I wanted to place a Work in Progress Template(see Template:Wip) over an article I'm working on I would call the template by its name in curly brackets. Additionally I've checked and seen that it takes one variable called assign. What I will need to now do is not only call the template but also give it parameter values. By using the '|'character to seperate the template name and parameters you can assign values to those variables.

{{Wip|assign=Sirryan2002}}
Sloth construction.png
Sloth construction.png
This article or section is a Work in Progress.
Assigned to:
Sirryan2002
Please discuss changes with assigned users. If no one is assigned, or if the user is inactive, feel free to edit.

While it would be easy to copy over the code from Template:Wip, this is a much faster, easier, and shorter method of doing that.

When you use the curly brackets it automatically defaults to the Template Namespace. You can actually use anything as a template, even other wiki pages. All you have to do is specify which Namespace and article name. As an example, I've copied over my user talk page User talk:Sirryan2002 into this collapsible block below only by using {{User talk:Sirryan2002}}

Example Article
Sirryan's Sick User Discussion Page

Every day we stray further from God

Who I am

User Id:Sirryan2002
I am an admin
IGN: Edgar Cook

Ia consultant.png

  • Internal Affairs Extrodinaire
  • The Wiki Caretaker
  • I Like Pizza and Hot Wings
To-Do
  • Add support for HotCat
  • Obtain the wiki admin privilege
  • Write a dark mode theme/skin for the wiki
  • Finish adding all Delta Location images
  • Add Meta Location Images
  • Add variable locations templates for Meta/Delta
  • Make the locations templates better
  • Make all template themes better
  • develop an extension for advanced location image interactions
  • Beret navy.png
  • Beret black.png
  • Beret red.png
  • MMI empty.png
  • Poison.png
  feel free to say anything you want  under here, I like when people leave me fun stuff to read


Like one sentence? - Cergosum 2021
Can I steal your template? Its very nice. - The Yeetster
Yes go ahead :) --Sirryan2002 (talk) 11:09, 12 April 2021 (EDT)








Major Crimes

All of these crimes are punishable by a sentence of 10 to 15 minutes at the discretion of Security.

Making Templates

Making a template is extremely easy and the difficulty only scales up with how fancy you want your template to be code-wise. All you need to do is create a page under the template namespace by typing in Template:INSERT NAME HERE into the search bar and clicking create page. After that, you can just write the code for it and call it later.

For example, if there was a large update to the codebase I may want to have a disclaimer over wiki pages that had just become outdated from such updates. I would first type Template:CodeDisclaimer into the search bar and create the page. I would put in my code:

 <div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates!</div>

And then I could call it by using the syntax: {{CodeDisclaimer}} in another article

Warning this article is out of date due to code updates!

Variables

Variables are an integral part of customizable templates. If you do not know what a variable is, google it. In a bite-sized definition, it is a thing that you can store values in and recall later.

 For example
I could say that X = 10
X is a variable with a stored value of 10

On the wiki, we can define variables by using 3 curly brackets: {{{VARIABLE}}} Look at this example Template:MyDog to better understand how to use this

My {{{DogColor}}} dog is cute and fluffy!

In this template we've defined a variable DogColor and we can now call this template and give that variable a value to work with and see what happens.

{{MyDog|DogColor=Yellow}}

My Yellow dog is cute and fluffy!


If we go back to the practice template we just looked at we can use a variable to make it more customizable. I want my Template:CodeDisclaimer to have a date attached to it telling users when the code was updated. However, not all the wiki pages had code updated on the same day so I can't just write the date into the template. I can instead specify a variable that can be entered for that date like so:

 <div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of {{{UpdateDate}}}!</div>

I can once again call this template and specify the date now {{CodeDisclaimer|UpdateDate=5/25/2020}}

Warning this article is out of date due to code updates as of 5/25/2020!




One other nifty thing we can do is add default values for our variables. Say someone used our CodeDisclaimer Template but didn't give it any variables, it would look something like this

Warning this article is out of date due to code updates as of {{{UpdateDate}}}

We don't want that, so we can utilize the '|' character again to add a default value to our variable like so:

 <div style="background-color:lightblue;text-weight:bold;width=500px;text-align:center;font-size:200%;border:4px solid black;"> Warning this article is out of date due to code updates as of {{{UpdateDate|(No Date Available)}}}!</div>

Now if someone called {{CodeDisclaimer}} it would default to this.

Warning this article is out of date due to code updates as of (No Date Available)!

Exclusion Tags and Documentation

Some of the templates on the wiki can get very complicated and have a lot of parameters. Take Template:JobPageHeader as an example. It's important that each of these templates have a description of what values you need to put into it. However, due to the nature of templates, we don't want that description to also be ported over with it.

Take this example Template:Birthday

<div width="100%" style="border:3px solid cadetblue;text-align:center;font-weight:bold;">Happy birthday to [[{{{BirthdayUser|someone}}}]] they are {{{YearsOld|some years}}} years old today!</div>

How to to use this template:

Place template where you want the birthday message to show up.

Parameters:
* BirthdayUser takes peoples wiki Usernames as values
* YearsOld is a numerical value describing how old that user is

I don't want the "How to use this template:" section going into every article I use the template in. Instead I can use a <noinclude></noinclude> tag set to describe things I don't want to be included in the transclusion of this template to another page.

<div width="100%" style="border:3px solid cadetblue;text-align:center;font-weight:bold;">Happy birthday to [[{{{BirthdayUser|someone}}}]] they are {{{YearsOld|some years}}} years old today!</div>
<noinclude>
How to use this template:

Place template where you want the birthday message to show up.

Parameters:
* BirthdayUser takes peoples wiki Usernames as values
* YearsOld is a numerical value describing how old that user is
</noinclude>

{{Birthday|BirthdayUser=Sirryan2002|Yearsold=18}}

Happy birthday to Sirryan2002 they are 18 years old today!
Syntax Usage
Noinclude Use this to prevent a certain section of the template page from being transcluded over wherever the template is called. This is useful for documentation and notes for explaining how a template work.
 This is my {{{Adjective|Cool}}} template! <noinclude> This text is not included when I call {{ExampleTemplate}}</noinclude>
Includeonly Use this to make it so part of a template only appears when called/transcluded and doesn't show up on the template page itself. This is useful for a template that will automatically put articles in categories but doesn't want the template page itself to be included in that category.
 This is my {{{Adjective|Cool}}} template! <includeonly>This text doesn't show up on the template page but will show up on the page where I call {{ExampleTemplate}}!</noinclude>
Onlyinclude Use this to mark a section of a template as the only section that will be transcluded. Anything outside these tags will not be included when the template is called.
 Are you a lover of oceans? Do you enjoy refreshing saltwater and the sound of the waves. Well, then you would really like the Pacific Ocean. <onlyinclude>The Pacific Ocean is the largest ocean in the world, its water is saltwater and takes up a large portion of the Earth's surface.</onlyinclude> The ocean borders North and South America, Asia, Oceania, and many many islands. 
If you called Template:PacificOcean the only text that would show up is:
The Pacific Ocean is the largest ocean in the world, its water is saltwater and takes up a large portion of the Earth's surface.

Categories

In order to assign a wikipage to a category, all you need to do is add this to the bottom of the page:

 [[Category:Category name]] 

For example, I've assigned this article to Category:Guides by adding this to my page code:

[[Category:Guides]]

You can create a category by typing this into the search bar and creating "create page" which should be highlighted in red

 [[Category:Insert name here]]

Protected Pages

Some pages like Paradise's Main Page are what we call a Protected Page.

This means that only users with a certain level of user rights can edit that page. This is usually reserved for Game Admin, Headmins, maintainers etc.

The kind of pages that are protected tend to be SOP pages like Command SOP, Space Law, and templates that are used on protected pages like Template:LawModifiers.

Advanced Topics

Redirects

Occasionally you will have an article like Ragin' Mages that is hard to spell or a keyword like Metal that people will look for in the search bar. Unfortunately, MediaWiki requires you to be specific in order what you type in the search bar to take you directly to where you want to go. So if you mispell a word or don't capitalize correctly you get taken to the article search page. We can create iterations of different spelling/capitalization to make it easier to access articles. By adding a redirect to a page, it will automatically take you from that page to where you're being redirected

This is done by simply using this syntaxt on a page:

#REDIRECT [[PAGENAME]]

Realistically, there should not be anything else on that page except for the redirect, however if the page is being preserved for its historical purposes like Contraband then all code should go UNDER the redirect. This includes templates like WIP and Obsolete

Example

Home Page: Space Law {Page Code}
Redirect Page1: Crimes {#REDIRECT [[Space Law]]}
Redirect Page2: space law {#REDIRECT [[Space Law]]}
Redirect Page3: spesslaw {#REDIRECT [[Space Law]]} 

Article Locations

Name Spaces

When you walk into a library, every book is filed into its own section. Fiction goes in the fiction section, non-fiction goes in the non-fiction section, and so on. Much like you would file books into different sections of a library, all of our articles are also filed under their own sections. Our wiki calls those sections Namespaces.

If you've read everything before this section you will have at some point heard of a namespace. Most commonly we refer to the Main: namespace or the User: namespace. There are actually 18 namespaces all with specific purposes. There are 8 content namespaces, 8 talk namespaces, and 2 unique namespaces.


Namespace Description Talk Description
Main This is where are of our content articles go like Space Law and SMES Talk The talk/discussion page for the main article it's attached to
User This is where all users pages are stored User Talk The talk/discussion page for the User/User's Page. If you write something on someone else's talk page they will get a large notification on the top of their interface.
Project Informational pages/articles go here. This is often where TOS and about pages will go. The namespace name for this namespace is different on all wikis. It will always show up as ParadiseStation Wiki instead of "Project" Project Talk The talk/discussion page for Project Articles
Mediawiki Site interface customization This is where skins for the wiki and a bunch of CSS stuff happens Mediawiki Talk The talk/discussion page for Mediawiki Namespace pages
Template Where all template pages go Template Talk Discussion/Talk page for that template.
Help Pages that are a manual/help page for a concept/page/template Help Talk Discussion/Talk page for help page
Category Where all Category pages go. Pages in this namespace are automatically populated with an index of everything in that category. Category Talk Discussion/Talk page for Category pages
Special This namespace holds special pages on the wiki such as the log in page and the recent changes page. You can't create a page in the special namespace you would do conventionally in other namespaces.
Media Alias for directly linking to media(files) pages. You can't create a page in this namespace without using the special page upload file.

SubPages

Subpages are pages that are children of a main page. For example this page is a subpage of my user page User:Sirryan2002. Subpages are often used a folder/sorting method for very similar articles that are related. You can reference them just like any other page and the only thing unique about them is that they will have a breadcrumb link at the top of the page redirecting back to the parent page.

In order to create a subpage you just need to the '/' character

Namespace:MainPage/Subpage 
Namespace:MainPage/Subpage/Sub-Subpage 
Namespace:MainPage/Subpage/Sub-Subpage/Sub-Sub-Subpage 

When Should I use a Subpage?

  • Archiving old talk page discussion
  • Documentation for a template
  • Organizing Similar pages like Recursive Food/Chem template together

Magic Words

Table of Contents

You can actually affect how and where a table of contents appears on your article. a TOC only appears after 3 headers have been defined so you can force it earlier. Additionally, you can forgo a TOC completely. If you want to align a TOC you would have to place it inside a table and align the table.

Syntax Usage
__TOC__ Places a table of contents at the word's current position (overriding __NOTOC__). If this is used multiple times, the table of contents will appear at the first word's position
__TOC__
__FORCETOC__ Forces the table of contents to appear at its normal position (before the first header, overriding __NOTOC__).
__FORCETOC__
__NOTOC__ Hides the table of contents (TOC).
__NOTOC__

Parser Functions

This topic is too extensive to warrant a section on this guide Please see the following pages for assistance

Please Note

String Parser Functions have been disabled on this wiki by headmins, there are ways to still accomplish the functionality of the syntax offered by string functions by utilizing other parser functions(you will have to figure that out yourself though, try looking at wikipedias existing templates that replace .{{#sub:}}.

Extensions

Much like you can add a library to a codebase, you can add an extension to the wiki. This expands what syntax we can use. For example there are extensions that add the ability to use new UI elements and other extensions that allow us to use API in conjunction with GitHub.

Extensions, while often written by MediaWiki authors, are not bug-fixed or maintained as thoroughly as the vanilla MediaWiki code. As a result extension code can be buggy and can easily break. Known bugs will be listed under each extension

For a list of all extensions installed on this wiki see Special:Version

Tabs

The tabs extension allows you to insert a UI element much like a div but you can switch between different pages in that UI element. For example you can do this

This is tab1!
This is tab2!
This is tab3!

You can put anything inside it. You can define a tab element by using <tabs> </tabs> Next you will have define the tabs inside of it via <tab> </tab> In order to give a tab a name, you would have to give the name parameter a value <tab name="tab 1"> </tab>

<tabs>
<tab name="Tab 1">
This is tab1! </tab>
<tab name="Tab 2">
This is tab2! </tab>
<tab name="Tab 3">
This is tab3! </tab>
</tabs>

Know Bugs

  • You CANNOT use variables inside tabs. It just simply won't work(trust me I've tried)
  • Putting tabs inside templates should be avoided because it just breaks shit
  • The UI for tabs will break if you do something funky within them, undo what you did and make an edit to reload the page so it fixes itself

Definitions