Difference between revisions of "Tutorials/SCS Workshop Uploader/How to upload new mod?"

From SCS Modding Wiki
Jump to navigation Jump to search
(Supporting specify version of the game)
m (Fixed grammar, spelling and clarified some things.)
 
(24 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
=Introduction=
 
=Introduction=
In this tutorial we will show you how to prepare your mod for uploading it to the workshop step by step.
+
In this tutorial, we will show you how to prepare your mod for uploading it to the workshop step by step.
  
 
==Workshop mod files and directories layout==
 
==Workshop mod files and directories layout==
First of all - the layout of your mod will change a little bit. The standard mod is a single '''package''' with manifest.sii file inside, description and icon files and the mod data files. The Workshop mod can and should consist of many '''packages''' - this change gives you possibility to create mods that are supporting few game patches without need to activate different mod by your mod users. In the '''versions.sii''' file you specify which '''package''' game should use when using the specified game patch. But remember - this layout is only correct for Workshop mods. Standard mods are still using the one package approach.
+
First of all - the layout of your mod will change a little bit. To check the Steam Workshop mods structure click [[Documentation/Tools/SCS_Workshop_Uploader/Workshop_mod_structure|here]].
  
[[File:Mod_layout_explanation.jpg]]
+
==Preparing mod for uploading step by step==
 
 
==Prepearing mod for uploading step by step==
 
  
 
{| class="wikitable" width="100%"
 
{| class="wikitable" width="100%"
Line 23: Line 21:
 
|The universal directory (or archive) should contain all the standard mod package content so: manifest.sii file, description file, icon file and the mod content.
 
|The universal directory (or archive) should contain all the standard mod package content so: manifest.sii file, description file, icon file and the mod content.
  
'''Remember! In Workshop mods manifest.sii, description and icon files are required!'''
+
{{Note|Remember! In Workshop mods manifest.sii, description and icon files are required! [[Documentation/Engine/Mod_manager|Find more info here]]}}
 
|- style="vertical-align:top;"
 
|- style="vertical-align:top;"
 
| '''4'''
 
| '''4'''
Line 63: Line 61:
 
|}
 
|}
  
When you do those points and put your game content to package you and you don't want to support exact patches you can skip next points and go to [[#Uploading|Uploading]] part.
+
When you do those points and put your game content to package you and you don't want to support exact game updates you can skip next points and go to [[#Uploading|Uploading]] part.
  
 
==Supporting specify version of the game==
 
==Supporting specify version of the game==
Line 74: Line 72:
  
  
{{Tip|For better organization of the directories. We recommend to call this folder ''122_content'' - 122 stands for 1.22 version with removed dot (for example - for 1.23 it will be 123, for 1.6 it will be 16 etc.)}}
+
{{Tip|For better organization of the directories. We recommend to call this folder ''122_content'' - 122 stands for 1.22. For example - for 1.23 update it will be 123, for 1.6 it will be 16, etc.}}
 
|- style="vertical-align:top;"
 
|- style="vertical-align:top;"
 
| '''2'''
 
| '''2'''
 
|[[File:0009_add_new_unit_to_versions_sii_with_122_content_step_1.jpg|500px]]
 
|[[File:0009_add_new_unit_to_versions_sii_with_122_content_step_1.jpg|500px]]
|Open your text editor and do exatly the same steps as you did while adding definition for universal patch. (Besides different folder and unit name)
+
|Open your text editor and do exactly the same steps as you did while adding a definition for the universal version of your mod (besides using a different folder and unit name this time).
  
 
<pre>SiiNunit
 
<pre>SiiNunit
Line 95: Line 93:
 
| '''3'''
 
| '''3'''
 
|[[File:0010_add_new_unit_to_versions_sii_with_122_content_step_2.jpg|500px]]
 
|[[File:0010_add_new_unit_to_versions_sii_with_122_content_step_2.jpg|500px]]
|There is new thing. You need to set value of the compatible_versions attribute. This attribute is simply array containing strings that are masks of the game versions. As we want to have data for 1.22 patch simply write there "1.22.*". Values are similar to compatible_versions array in manifest.sii however for workshop mods we are using versions specified in versions.sii.
+
|Now there are some more steps you will need to go through: Set the value of the compatible_versions attribute. As we want to have data for 1.22 update write "1.22.*". Values are similar to compatible_versions array in manifest.sii.
 +
 
 +
If you want to use this package for version 1.23 only you need to write:
 +
<pre>compatible_versions: "1.23.*"</pre>
 +
 
 +
If you want to support only one version (not recommended) you will write:
 +
<pre>compatible_versions[]: "1.22.1"</pre>
 +
 
 +
The value of this attribute can contain numbers, dots "." (between numbers) and asterisk "*" (at the end). If you only write "1.35.1" your mod will only be compatible with this specific version. The use of "1.35.*" will make your mod compatible with all small updates for version 1.35 (recommended).
  
 
<pre>SiiNunit
 
<pre>SiiNunit
Line 114: Line 120:
 
|[[File:0011_create_multiversion_folder.jpg|500px]]
 
|[[File:0011_create_multiversion_folder.jpg|500px]]
 
|In case you want to support more than one exact version you need to setup folder for it.
 
|In case you want to support more than one exact version you need to setup folder for it.
 +
 +
 +
{{Tip|We recommend using similar syntax as for single version specify content, but for separating the versions use underscore "_". For example, if the content will be used by both 1.23 and 1.24 content package will be called: "123_124_content" in case you want the content package to be used for 1.24, 1.25.0 and 1.25.2 updates the content package will be called "124_1250_1252_content".}}
 
|- style="vertical-align:top;"
 
|- style="vertical-align:top;"
 
| '''5'''
 
| '''5'''
Line 140: Line 149:
 
| '''6'''
 
| '''6'''
 
|[[File:0013_add_first_version_attribute.jpg|500px]]
 
|[[File:0013_add_first_version_attribute.jpg|500px]]
|Add compatible_version value for one patch you support.
+
|Add compatible_version value for one update you support.
  
 
<pre>SiiNunit
 
<pre>SiiNunit
Line 164: Line 173:
 
| '''7'''
 
| '''7'''
 
|[[File:0014_add_second_version_attribute.jpg|500px]]
 
|[[File:0014_add_second_version_attribute.jpg|500px]]
|And add again compatible_version value for second patch you want to support.
+
|And add again compatible_version value for second update you want to support.
  
 
<pre>SiiNunit
 
<pre>SiiNunit
Line 190: Line 199:
 
=Uploading=
 
=Uploading=
  
{{UsefulLink|If you don't have SCS Workshop Uploader installed - check this tutorial - [[Tutorials/Workshop_Uploader/How_to_download?|How to download and install SCS Workshop Uploader?]]}}
+
{{UsefulLink|If you don't have SCS Workshop Uploader installed - check this tutorial - [[Tutorials/SCS_Workshop_Uploader/How_to_download_the_tool?|How to download and install SCS Workshop Uploader?]]}}
  
 
[[File:Scs_workshop_uploader_tutorial_preview.jpg]]
 
[[File:Scs_workshop_uploader_tutorial_preview.jpg]]
Line 196: Line 205:
 
*Run '''SCS Workshop Uploader''' tool from your steam client.
 
*Run '''SCS Workshop Uploader''' tool from your steam client.
 
#Select the '''game''' that is compatible with your mod.
 
#Select the '''game''' that is compatible with your mod.
#Select '''New''' item from the items combobox. It should be selected by default when you launch the tool.
+
#Select '''New''' from the dropdown. It should be selected by default when you launch the tool.
#In the '''Mod data''' section - browse for a '''mod data folder'''.
+
#In the '''Mod data''' section - browse for your '''mod data folder'''. This folder should include your packages and version.sii file.
 
#If you select folder, browse for '''mod preview image'''.
 
#If you select folder, browse for '''mod preview image'''.
 
#In next step fill '''mod name'''.
 
#In next step fill '''mod name'''.
Line 206: Line 215:
 
#You can select '''truck parts''' and '''brand''' tag if appropriate.
 
#You can select '''truck parts''' and '''brand''' tag if appropriate.
 
#You can now fill '''change note''' of your mod. If you need to have the edit box bigger simply resize the tool window. As it's initial upload step you will more likely write nothing here - or write something like ''"Initial upload."''.
 
#You can now fill '''change note''' of your mod. If you need to have the edit box bigger simply resize the tool window. As it's initial upload step you will more likely write nothing here - or write something like ''"Initial upload."''.
#If you did all the points simply click '''Upload''' button. Before the actual upload operation the tool will check if your mod contains correct data.
+
#If you did all the points simply click '''Upload''' button. Before the actual upload operation, the tool will check if your mod contains the correct data.
 +
 
 +
 
 +
{{Note|You may notice that when you are using non [https://en.wikipedia.org/wiki/ASCII ASCII characters] the counters are decreasing by more than one. It is because those characters have a bigger size than one byte. The counters are counting bytes space used by description and title - not the character count}}
  
 
==Validation==
 
==Validation==
Line 213: Line 225:
 
[[File:0025_in_case_of_error_you_will_get_this_dialog.jpg|500px]]
 
[[File:0025_in_case_of_error_you_will_get_this_dialog.jpg|500px]]
  
When you click '''OK''' you will see log dialog with all errors and warnings that occured during validation. In case if you have only warnings you can both continue or abort operation. In case of error you '''need to''' fix them before uploading.
+
When you click '''OK''' you will see log dialog with all errors and warnings that occurred during validation. In case if you have only warnings you can both continue or abort the operation. In case of errors, you will '''need to''' fix them before uploading.
  
{{UsefulLink|If you need help with solving your validation errors click '''[[Tools/Workshop_Uploader/Validation_errors_and_solutions_for_them|here]]'''}}
+
{{UsefulLink|If you need help with solving your validation errors click '''[[Documentation/Tools/SCS_Workshop_Uploader/Validation_errors_and_solutions_for_them|here]]'''}}
  
  
Line 223: Line 235:
 
#In this line you have the summary of the validation - the number of errors and warnings.
 
#In this line you have the summary of the validation - the number of errors and warnings.
 
#In this area you have log of the validation. All the log entires have the following form: '''''[TYPE] [CODE] (file): Message'''''
 
#In this area you have log of the validation. All the log entires have the following form: '''''[TYPE] [CODE] (file): Message'''''
#Bellow you have two checkboxes, you can hide warnigns or errors here.
+
#Bellow you have two checkboxes, you can hide warnings or errors here.
#In case there are only errors you are able to only click Abort. This button simply aborts the upload.
+
#In case there are is at least one error you are able to only click Abort. This button simply aborts the upload.
#In case there are only warnings you can click this button and continue uploading of your mod. If there are errors you are unable to continue - you have to fix the problems.
+
#In case validation did not report any error you can click this button and continue uploading your mod. If there are errors you are unable to continue - you have to fix the problems.
  
 
==Success==
 
==Success==
If there are no errors and the upload will continue on successfull upload you will see this dialog.
+
If there are no errors the upload will continue and if everything goes right you will see this dialog.
  
 
[[File:0026_upload_success.jpg]]
 
[[File:0026_upload_success.jpg]]
  
However it is possible that there was some failure while uploading - you will then notice dialog with the error message. If you have some problem with resolving the problem write on our forum '''[http://forum.url.put.here click todo moding section] (Create Steam Workshop section dedicated to it?)'''
+
However it is possible that there was some failure while uploading - you will then notice dialog with the error message. If you have some problem with resolving the problem write on '''[http://forum.scssoft.com/viewforum.php?f=24 our forum]'''
  
 
=Steam Workshop Terms Of Service=
 
=Steam Workshop Terms Of Service=
If it’s your first mod and you were not doing any mods for other game <!-- '''(or Valve updated Terms of Service?)'''-->  you will likely get error about not accepted Steam Workshop Terms Of Service - if so happends tool will show you appropriate message and the steam workshop terms of service will be opened in your default web browser - you have to login to your steam account read and accept the terms of service and if you do so simply go back to the tool and try again with uploading your mod.
+
If it’s your first mod and you were not doing any mods for other game <!-- '''(or Valve updated Terms of Service?)'''-->  you will likely get an error about not accepted Steam Workshop Terms Of Service - if so happens the tool will show you appropriate message and the steam workshop terms of service will be opened in your default web browser - you have to login to your Steam account read and accept the terms of service and if you do so simply go back to the tool and try again with uploading your mod. It is '''mandatory''' to agree to these terms.

Latest revision as of 23:47, 6 June 2020

Introduction

In this tutorial, we will show you how to prepare your mod for uploading it to the workshop step by step.

Workshop mod files and directories layout

First of all - the layout of your mod will change a little bit. To check the Steam Workshop mods structure click here.

Preparing mod for uploading step by step

1 0002 create folder.jpg First step of preparing your mod is creating of the folder. You will put there all the files and folders needed for your mod to be compatible with Steam Workshop.
2 0003 create latest folder.jpg After creating of the folder open it and create another folder inside called universal. (Instead of folder you can also create ZIP archives with game data)
3 Universal directory content.jpg The universal directory (or archive) should contain all the standard mod package content so: manifest.sii file, description file, icon file and the mod content.

Note: Remember! In Workshop mods manifest.sii, description and icon files are required! Find more info here

4 0004 open text editor and create versions sii.jpg Open your favorite text editor and create file called versions.sii - save it in the same folder where you created universal folder
5 0005 fill versions sii with magic and global sii scope.jpg Add sii file frame to your versions.sii file.
SiiNunit
{

}
6 0006 add package version info for latest version.jpg Add definition of universal version unit.
SiiNunit
{
package_version_info : .universal
{

}
}
7 0007 add folder attribute to latest info.jpg Set package_name to name of the folder or ZIP archive with the mod data.
SiiNunit
{
package_version_info : .universal
{
    package_name: "universal"
}
}

When you do those points and put your game content to package you and you don't want to support exact game updates you can skip next points and go to Uploading part.

Supporting specify version of the game

1 0008 create folder for 122 content.jpg In case you have data that supports one exact game version you need to create folder or archive where you will store the content.


TIP: For better organization of the directories. We recommend to call this folder 122_content - 122 stands for 1.22. For example - for 1.23 update it will be 123, for 1.6 it will be 16, etc.

2 0009 add new unit to versions sii with 122 content step 1.jpg Open your text editor and do exactly the same steps as you did while adding a definition for the universal version of your mod (besides using a different folder and unit name this time).
SiiNunit
{
package_version_info : .universal
{
    package_name: "universal"
}

package_version_info : .122_content
{
    package_name: "122_content"
}
}
3 0010 add new unit to versions sii with 122 content step 2.jpg Now there are some more steps you will need to go through: Set the value of the compatible_versions attribute. As we want to have data for 1.22 update write "1.22.*". Values are similar to compatible_versions array in manifest.sii.

If you want to use this package for version 1.23 only you need to write:

compatible_versions: "1.23.*"

If you want to support only one version (not recommended) you will write:

compatible_versions[]: "1.22.1"

The value of this attribute can contain numbers, dots "." (between numbers) and asterisk "*" (at the end). If you only write "1.35.1" your mod will only be compatible with this specific version. The use of "1.35.*" will make your mod compatible with all small updates for version 1.35 (recommended).

SiiNunit
{
package_version_info : .universal
{
    package_name: "universal"
}

package_version_info : .122_content
{
    package_name: "122_content"
    compatible_versions[]: "1.22.*"
}
}
4 0011 create multiversion folder.jpg In case you want to support more than one exact version you need to setup folder for it.


TIP: We recommend using similar syntax as for single version specify content, but for separating the versions use underscore "_". For example, if the content will be used by both 1.23 and 1.24 content package will be called: "123_124_content" in case you want the content package to be used for 1.24, 1.25.0 and 1.25.2 updates the content package will be called "124_1250_1252_content".

5 0012 add another unit to versions sii.jpg Add again the same definition for the unit.
SiiNunit
{
package_version_info : .universal
{
    package_name: "universal"
}

package_version_info : .122_content
{
    package_name: "122_content"
    compatible_versions[]: "1.22.*"
}

package_version_info : .120_121_content
{
    package_name: "120_121_content"
}
}
6 0013 add first version attribute.jpg Add compatible_version value for one update you support.
SiiNunit
{
package_version_info : .universal
{
    package_name: "universal"
}

package_version_info : .122_content
{
    package_name: "122_content"
    compatible_versions[]: "1.22.*"
}

package_version_info : .120_121_content
{
    package_name: "120_121_content"
    compatible_versions[]: "1.20.*"
}
}
7 0014 add second version attribute.jpg And add again compatible_version value for second update you want to support.
SiiNunit
{
package_version_info : .universal
{
    package_name: "universal"
}

package_version_info : .122_content
{
    package_name: "122_content"
    compatible_versions[]: "1.22.*"
}

package_version_info : .120_121_content
{
    package_name: "120_121_content"
    compatible_versions[]: "1.20.*"
    compatible_versions[]: "1.21.*"
}
}

Uploading

Scs workshop uploader tutorial preview.jpg

  • Run SCS Workshop Uploader tool from your steam client.
  1. Select the game that is compatible with your mod.
  2. Select New from the dropdown. It should be selected by default when you launch the tool.
  3. In the Mod data section - browse for your mod data folder. This folder should include your packages and version.sii file.
  4. If you select folder, browse for mod preview image.
  5. In next step fill mod name.
  6. Select mod visibility in steam workshop. If it's Private, Friends only or Public.
  7. Fill your mod description which will be shown in your item workshop page. (Minimum 50 characters)
  8. If you want to know formatting possibilities click on the question mark button.
  9. Now, you have to select type tag for your mod.
  10. You can select truck parts and brand tag if appropriate.
  11. You can now fill change note of your mod. If you need to have the edit box bigger simply resize the tool window. As it's initial upload step you will more likely write nothing here - or write something like "Initial upload.".
  12. If you did all the points simply click Upload button. Before the actual upload operation, the tool will check if your mod contains the correct data.


Note: You may notice that when you are using non ASCII characters the counters are decreasing by more than one. It is because those characters have a bigger size than one byte. The counters are counting bytes space used by description and title - not the character count

Validation

  • In case of any validation error you will notice this dialog.

0025 in case of error you will get this dialog.jpg

When you click OK you will see log dialog with all errors and warnings that occurred during validation. In case if you have only warnings you can both continue or abort the operation. In case of errors, you will need to fix them before uploading.


Validation result window.jpg


  1. In this line you have the summary of the validation - the number of errors and warnings.
  2. In this area you have log of the validation. All the log entires have the following form: [TYPE] [CODE] (file): Message
  3. Bellow you have two checkboxes, you can hide warnings or errors here.
  4. In case there are is at least one error you are able to only click Abort. This button simply aborts the upload.
  5. In case validation did not report any error you can click this button and continue uploading your mod. If there are errors you are unable to continue - you have to fix the problems.

Success

If there are no errors the upload will continue and if everything goes right you will see this dialog.

0026 upload success.jpg

However it is possible that there was some failure while uploading - you will then notice dialog with the error message. If you have some problem with resolving the problem write on our forum

Steam Workshop Terms Of Service

If it’s your first mod and you were not doing any mods for other game you will likely get an error about not accepted Steam Workshop Terms Of Service - if so happens the tool will show you appropriate message and the steam workshop terms of service will be opened in your default web browser - you have to login to your Steam account read and accept the terms of service and if you do so simply go back to the tool and try again with uploading your mod. It is mandatory to agree to these terms.