Modding Tutorials/Recommended software
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 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:
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 | Light-weight editor with extension support. |
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 |
Atom | Linux/Windows/Mac | A hackable electron-based text editor with emphasis on extensions and GitHub collaboration. |
Visual Studio Code | Linux/Windows/Mac | A text editor with emphasis on productivity and extension support. |
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) |
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.
IDEs
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/Mac | 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 which is free for individuals and small teams. Always the most up-to-date |
SharpDevelop | Windows | Free IDE specifically made for C# |
Xamarin | Windows/Mac | It's free but you need to register to download it. Xamarin is an open-source platform for building modern and performant applications for iOS, Android, and Windows with .NET. Avaliable as an extension to Visual studio 2022 and 2019 |
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 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/Linux/Mac | 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 |
dotPeek | Windows | A C# decompiler for .DLLs it slow to open but has great functionality |
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
- XML File Structure starts you off with the XML side of modding.
- Setting up starts you off with the C# side of modding. Knowledge of the XML part can and will be very useful.