Editing Modding Tutorials/Recommended software

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
{{DISPLAYTITLE:Recommended Software}}
+
{{BackToTutorials}}
 +
<br/>
 +
 
 +
=What you'll learn=
  
{{BackToTutorials}}
+
This tutorial lists a few programs you could use to edit XML and C# code.<br/><br/>
  
This is a short list of programs that are useful for making mods. Most of the options listed here are free, but if you have development experience and have a favorite IDE, then by all means use what you're familiar and/or comfortable with!
+
=XML Code Editors=
  
=XML Editors=
+
===Basic Editors===
  
While XML files are simple text files, basic Windows Notepad lacks any kind of syntax highlighting and rich text editors such as WordPad will insert invisible characters that are not recommended for machine-readable data files. The following are basic code editors that are recommended for writing or editing XML files:
+
Just about any text editor can write XML code, but some are better suited than others. Rich text editors (WordPad, anything part of any Office suite) should be avoided. Windows' simple notepad will work, but you'll want something which offers things like "Find in Files" functionality and syntax highlighting. If you're even somewhat serious about modding, the following software will help you immensely:<br/>
  
 
{| class="wikitable"
 
{| class="wikitable"
 
! Software !! OS !! Description
 
! Software !! OS !! Description
 
|-
 
|-
| [http://notepad-plus-plus.org/download/ Notepad++] || Windows || Light-weight editor with extension support. Adding the "XML Tools" plugin is recommended for editing XML files, as it adds additional validation and error-checking.
+
| [https://notepadqq.com/s/ NotepadQQ] || Linux || Notepadqq is a Notepad++-like editor for the Linux desktop so has the exact same UI and functions as Notepad++
 
|-
 
|-
| [https://code.visualstudio.com/ Visual Studio Code] || Linux/Windows/Mac || A text editor with emphasis on productivity and extension support. Also has an excellent XML plugin.
+
| [http://notepad-plus-plus.org/download/ Notepad++] || Windows || Light-weight editor with extension support.
 
|-
 
|-
 
| [http://www.sublimetext.com/ Sublime Text] || Linux/Windows/Mac || Natively supports many programming languages and markup languages, and its functionality can be extended by users with plugins - A brief overview of its functionality can be found [http://webdesign.tutsplus.com/tutorials/useful-shortcuts-for-a-faster-workflow-in-sublime-text-3--cms-22185 here] and a full course [http://code.tutsplus.com/courses/perfect-workflow-in-sublime-text-2 here]
 
| [http://www.sublimetext.com/ Sublime Text] || Linux/Windows/Mac || Natively supports many programming languages and markup languages, and its functionality can be extended by users with plugins - A brief overview of its functionality can be found [http://webdesign.tutsplus.com/tutorials/useful-shortcuts-for-a-faster-workflow-in-sublime-text-3--cms-22185 here] and a full course [http://code.tutsplus.com/courses/perfect-workflow-in-sublime-text-2 here]
 +
|-
 +
| [https://atom.io/ Atom] || Linux/Windows/Mac || A hackable electron-based text editor with emphasis on extensions and GitHub collaboration.
 +
|-
 +
| [https://code.visualstudio.com/ Visual Studio Code] || Linux/Windows/Mac || A text editor with emphasis on productivity and extension support.
 
|-
 
|-
 
| [http://xmlnotepad.codeplex.com/releases/ XML Notepad] || Windows || XML-oriented editor with a lot of features you will most likely never use in Rimworld modding
 
| [http://xmlnotepad.codeplex.com/releases/ XML Notepad] || Windows || XML-oriented editor with a lot of features you will most likely never use in Rimworld modding
Line 22: Line 29:
 
| [http://www.geany.org/ Geany] || Linux/Windows/Mac || Extremely lightweight text editor with syntax highlighting and some other basic features oriented towards XML and code editing.
 
| [http://www.geany.org/ Geany] || Linux/Windows/Mac || Extremely lightweight text editor with syntax highlighting and some other basic features oriented towards XML and code editing.
 
|}<br/>
 
|}<br/>
 +
 +
===Advanced Editors===
 +
 +
There's many editors out there specifically made for XML code. Because Rimworld uses XML in a very simple way, advanced code editors are rarely needed. In case you're ever in need of one, however, the following ones might help:<br/>
 +
 +
{| class="wikitable"
 +
! Software !! OS !! Description
 +
|-
 +
| [http://sourceforge.net/projects/xpontus/files/ XPontus] || Windows || Has a tree view and is capable of checking XML for errors, fixing tabs and creating schema's detailing every tag's data types
 +
|-
 +
| [http://xmlgrid.net/ XMLGrid] || - || Capable of validating XML and turning it into Excel Spreadsheets, XSD Charts and an online table detailing each tag of a certain type and its contents
 +
|-
 +
| [http://codebeautify.org/xmlviewer Codebeautify's xmlviewer] || - || Can display as a tree view, automatically format/indent your code and can validate and show errors too. Also have a function share code (like [http://codebeautify.org/xmlviewer/b39586 that])
 +
|}<br/>
 +
An alternative to "Advanced editors" are plugins/extensions. Good extensions can highlight syntax (if not already standard), format XML, find xpath, auto-close XML tags, supports renaming tags, and more.
 +
<br/>
  
 
=IDEs=
 
=IDEs=
  
Writing C# code for custom assemblies requires not only code editing capability but also the ability to compile raw code into executable code. This is generally best done in an Integrated Development Environment that has a compiler built-in.
+
C# code is best edited in an IDE (Integrated Development Environment) to make the process of editing code, managing a solution's content and compiling its projects both easier and faster. Any IDE for C# will probably work just fine, so here's a list of suggested editors:<br/><br/>
  
 
{| class="wikitable"
 
{| class="wikitable"
 
! Software !! OS !! Description
 
! Software !! OS !! Description
 
|-
 
|-
| [http://www.visualstudio.com/ Visual Studio] || Windows/Mac || Microsoft's flagship IDE and strongly recommended if you are running Windows. The [https://www.visualstudio.com/products/visual-studio-community-vs Community Edition] is free for individuals and small teams, and does everything you need to make a RimWorld mod assembly out of the box.
+
| [http://www.visualstudio.com/ Visual Studio] || Windows/Mac || Very extensive IDE with paid, trial and free versions. Any of these versions will probably work, so you might as well take [https://www.visualstudio.com/products/visual-studio-community-vs Visual Studio Community] which is free for individuals and small teams. Always the most up-to-date
 
|-
 
|-
| [https://code.visualstudio.com/ Visual Studio Code] || Linux/Windows/Mac || VS Code can technically be used for C# as well, but you will need to do a little more legwork to get it to actually build the assembly as it's not a true IDE. VS Code is generally recommended if you are using Linux, since there is no Visual Studio for Linux.
+
| [http://www.icsharpcode.net/OpenSource/SD/Download/ SharpDevelop] || Windows || Free IDE specifically made for C#
 
|-
 
|-
| [http://www.icsharpcode.net/OpenSource/SD/Download/ SharpDevelop] || Windows || Free IDE specifically made for C#
+
| [http://www.monodevelop.com/download/ MonoDevelop] || Linux/Windows/Mac || Free, cross-platform IDE with customizable user interface. Has support for C# as well as some other languages you won't need for Rimworld
 
|-
 
|-
 
| [https://www.jetbrains.com/rider/ Rider] || Windows/Mac/Linux|| Unless you're a student it costs, but offers a lot of tools across all platforms.
 
| [https://www.jetbrains.com/rider/ Rider] || Windows/Mac/Linux|| Unless you're a student it costs, but offers a lot of tools across all platforms.
 
|}
 
|}
  
Whichever IDE you choose, make sure it's capable of compiling for .NET Framework 4.7.2. If you for whatever reason don't have this framework installed, you can download it [https://dotnet.microsoft.com/download/dotnet-framework/net472 here].
+
Whichever IDE you choose, make sure it's capable of compiling for .NET Framework 4.7.2. If you for whatever reason don't have this framework installed, you can download it [https://dotnet.microsoft.com/download/dotnet-framework/net472 here].<br/><br/>
 
 
=C# Decompilers=
 
 
 
''See [[Modding_Tutorials/Decompiling_source_code|Decompiling source code]]''
 
 
 
=Graphics Software=
 
 
 
For making textures, you will need a graphics program. The following are simply popular options, any software that can export transparent PNGs will work for RimWorld though.
 
  
==Raster Graphics==
+
=Additional C# Software=
  
Raster graphics are graphics that are made of pixels. They can lose detail when resized, but may be more comfortable to use for those with traditional art experience.
+
Besides your IDE it's strongly recommended to install the following software for decompiling:<br/>
  
 
{| class="wikitable"
 
{| class="wikitable"
 
! Software !! OS !! Description
 
! Software !! OS !! Description
 
|-
 
|-
| [http://www.photoshop.com/products Adobe Photoshop] || Windows/Mac || RimWorld's original graphics are made in Photoshop and the official Art Source generally contains PSD files. Photoshop is the gold standard for graphics software, but also very expensive. There are a lot of free alternatives.
+
| [https://github.com/0xd4d/dnSpy dnSpy] || Windows || Software which is capable of [[Modding Tutorials/Decompiling source code|decompiling source code]], which is very useful in Rimworld modding (some authors have had better luck with dnSpy than ILSpy?)
|-
 
| [http://www.gimp.org/ GIMP] || Linux/Windows/Mac || A free, open-source alternative to Photoshop that's been around since 1998. GIMP has a large user community, with great list of [http://www.gimp.org/tutorials/ tutorials] on the official sites
 
 
|-
 
|-
| [https://krita.org/en/ Krita] || Linux/Windows/Mac || A free digital painting software. Better suited than GIMP for freehand painting and should feel like home pretty quick for Photoshop users.
+
| [http://ilspy.net/ ILSpy] || Windows/Linux/Mac || Software which is capable of [[Modding Tutorials/Decompiling source code|decompiling source code]], which is very useful in Rimworld modding
 
|-
 
|-
| [https://www.getpaint.net/ Paint.net] || Windows || A free photo editing program preferred by some modders. It is Windows-only.
+
| [http://www.monodevelop.com/download/ MonoDevelop] || Linux/Windows/Mac || The Linux version of the software has an integrated decompiler for .DLLs
|}
+
|}<br/><br/>
  
==Vector Graphics==
+
=Graphics Software=
  
Vector graphics are created using mathematical formulae for lines and shading. They may be easier to work with if you do not have an art tablet or prior art experience, and RimWorld's simplistic art style is easily emulated with vector graphics. Note however that as noted above, RimWorld's art source is in Photoshop files and not vectors as many people believe.
+
For making textures you will need graphics software. Any image editing program should work, and if you have an alternative to the following links that's probably okay:<br/>
  
 
{| class="wikitable"
 
{| class="wikitable"
 
! Software !! OS !! Description
 
! Software !! OS !! Description
 
|-
 
|-
| [https://www.adobe.com/products/illustrator.html Adobe Illustrator] || Windows/Mac || Adobe's primary vector drawing software package. Also the gold standard for vector graphics, but just like Photoshop is expensive. A few free options also exist.
+
| [http://www.photofiltre-studio.com/download-en.htm Photofiltre Studio] || Windows || Functional software with very little user interface clutter for its applications. Doesn't support pen tablet, and has a 100% free (non-trial) version called [http://photofiltre.free.fr/download_en.htm Photofiltre]
 +
|-
 +
| [http://inkscape.org/en/download/ Inkscape] || Linux/Windows/Mac || Free vector graphic program with a steeper learning curve due to the vector based image editing. Vector graphics can look better than bitmap graphics in Rimworld
 +
|-
 +
| [http://www.photoshop.com/products Photoshop] || Windows/Mac || Paid software with a trial version. Rimworld's original graphics are made in Photoshop (they're .PSD files)
 +
|-
 +
| [http://www.gimp.org/ GIMP] || Linux/Windows/Mac || A free, open-source alternative to Photoshop that's been around since 1998. GIMP has a large user community, with great list of [http://www.gimp.org/tutorials/ tutorials] on the official sites
 
|-
 
|-
| [http://inkscape.org/en/download/ Inkscape] || Linux/Windows/Mac || Free vector graphic program with a steeper learning curve due to the vector based image editing.
+
| [https://krita.org/en/homepage/ Krita] || Linux/Windows/Mac || A free digital painting software. Better suited than GIMP for painting and should feel like home pretty quick for Photoshop users.
|}
+
|}<br/><br/>
  
 
=Audio Software=
 
=Audio Software=
Line 85: Line 104:
 
|-
 
|-
 
| [http://sourceforge.net/projects/audacity/ Audacity] || Linux/Windows/Mac || Audio editing software with many tutorials online, lots of useful functionality and a relatively readable interface
 
| [http://sourceforge.net/projects/audacity/ Audacity] || Linux/Windows/Mac || Audio editing software with many tutorials online, lots of useful functionality and a relatively readable interface
|}
+
|}<br/><br/>
 +
 
 +
=Next up=
  
=Additional Links=
+
# [[Modding Tutorials/XML file structure|XML File Structure]] starts you off with the XML side of modding.
 +
# [[Modding_Tutorials/Setting up a solution|Setting up]] starts you off with the C# side of modding. Knowledge of the XML part can and will be very useful.<br/>
  
* [[Modding_Tutorials/Mod_Folder_Structure|Mod Folder Structure]] - How to set up a mod folder.
 
* [[Modding_Tutorials/Setting up a solution|Setting up a solution]] - How to set up a C# solution and project for building a RimWorld mod assembly.
 
  
 
[[Category:Modding tutorials]]
 
[[Category:Modding tutorials]]

Please note that all contributions to RimWorld Wiki are considered to be released under the CC BY-SA 3.0 (see RimWorld Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)

Template used on this page: