Modding Tutorials/Recommended software

From RimWorld Wiki
Revision as of 05:39, 30 November 2018 by Lilwhitemouse (talk | contribs) (→‎IDE's: Linux!)
Jump to navigation Jump to search

Modding Tutorials

This page was originally created by Alistaire.

What you'll learn

This tutorial lists a few programs you could use to edit XML and C# code.

XML Code Editors

Basic Editors

Just about any text editor can write XML code, but as a modder you will want to at the very least see when you forgot closing brackets, a closing tag and other syntax errors.

Notepad doesn't do this, so if you're even somewhat serious about modding, the following software will help you immensely:

Software OS Description
[NotepadQQ] Linux Notepadqq is a Notepad++-like editor for the Linux desktop so has the exact same UI and functions as Notepad++
Notepad++ Windows Has well implemented auto-completion and a very customizable user interface. Can be used to write both XML and C# code, although C# software usually has its own text editor
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 here and a full course here
Programmer's Notepad Windows More lightweight with a less cluttered interface than Notepad++, also capable of editing both XML and C# code
XML Notepad Windows XML-oriented editor with a lot of features you will most likely never use in Rimworld modding
Geany Linux/Windows/Mac Extremely lightweight text editor with syntax highlighting and some other basic features oriented towards XML and code editing.


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:

Software OS Description
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
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
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 that)



IDE's

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:

Software OS Description
Visual Studio Windows Very extensive IDE with paid, trial and free versions. Any of these versions will probably work, so you might as well take Visual Studio Community 2015 which is free for individuals and small teams
SharpDevelop Windows Free IDE specifically made for C#
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
Xamarin Mac It's free but you need to register to download it. Probably your best option on a mac.

For Linux users: See also this thread about working with C# on ArchLinux - it may be useful.

Whichever IDE you choose, make sure it's capable of compiling for .NET Framework 3.5. If you for whatever reason don't have this framework installed, you can download it here.

Additional C# Software

Besides your IDE it's strongly recommended to install the following software for decompiling:

Software OS Description
dnSpy Windows Software which is capable of decompiling source code, which is very useful in Rimworld modding (some authors have had better luck with dnSpy than ILSpy?)
ILSpy Windows Software which is capable of decompiling source code, which is very useful in Rimworld modding
MonoDevelop Linux/Windows/Mac The Linux version of the software has an integrated decompiler for .DLLs



Graphics Software

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:

Software OS Description
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 Photofiltre
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
Photoshop Windows/Mac Paid software with a trial version. Rimworld's original graphics are made in Photoshop (they're .PSD files)
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 tutorials on the official sites
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.



Audio Software

Recording your own audio for mods might be too much to ask, but editing audio is always possible. This can be done with the following software or your own alternative:

Software OS Description
Audacity Linux/Windows/Mac Audio editing software with many tutorials online, lots of useful functionality and a relatively readable interface



Next up

  1. XML File Structure starts you off with the XML side of modding.
  2. Setting up starts you off with the C# side of modding. Knowledge of the XML part can and will be very useful.