This (D2kA) is my mod for the OpenRA game with the goal to improve on Dune2k gameplay in multiple small steps. New content and inspirations from the Dune books take precedence over balance changes, initialy. (Development has ceased)

Post tutorial Report RSS Tools used to create this mod

Since my mod maps are now feature-complete and only small changes like bugfixes of upgrades to newer versions of OpenRA will be done for some time (and occassionaly a new map maybe ;) ), I would like to share...

Posted by on - Intermediate Starting a mod

Information about the tools I used to create this mod / useful sources


This is in no way a tutorial how to mod in OpenRA, but it will give you a brief idea on the process behind creating content like this. It took me a year to do all of this in my free time, starting with fairly good programming skills, a vision and no idea how things in OpenRA work. You only need programming skills if you want to write LUA code however, the rest is only editing. The tools are also listed in order of difficulty of the editing process.
Most of the software I used is freeware or open source, so you should be able to get those as well, for free.

A mod map consists of multiple elements which are all contained inside the maps .oramap file. You can unpack it like any other .zip file and edit the contents using the appropriate editor:

  • map.bin: contains how the map terrain layout looks. (binary file)
  • map.yaml: contains the actor locations on the map when it has finished loading. (text file)
  • other .yaml: files most likely define what (new) actor types can do. (text file)
  • .lua files: contains LUA code that can trigger special events like reinforcements showing up at 5 minutes. In my case also includes workarounds for actor behaviour the yaml files did not allow. (text file)
  • .shp files: contains how an actor looks. (special image file)
  • .wav files: sound file compatible with openRA. (sound file)

Tools and sources I used sorted by file type and difficulty (bottom is most difficult):

  • general:
    - OpenRA\mods\d2k\maps\: official singleplayer mission maps using LUA and yaml. Good for checking how-it-was-done.
  • map.bin:
    > Map-Editor: standard OpenRA "ingame" editor for creating maps.
    > openra.utility.exe: for converting old maps for use with OpenRA.
  • .yaml files:
    > OpenRA\mods\d2k\rules & \weapons & \sequences
    > wiki/Traits
    > Notepad++: This text editor was super useful because it automaticaly keeps open multiple files even after restarting the computer and has a very powerful search/find/replace function...

    P1 Tut

  • .wav files:
    > freesound.org: source for free sound effects.
    > Wave Editor: for cutting and basic editing of sound files.
  • .LUA files:
    > wiki/Lua-API
    > Notepad++: Also has syntax highlighting for LUA and auto-completion for any word allready written in a file.
  • .Shp editing:
    > openra.utility.exe: for extracting all the d2k image files.
    > Gimp: Because it is apparently the only image manipulation software out there which allows editing of .png with an indexed palette (all shp images must use an indexed palette and are immediately useless if they don't use one). And it has hotkeys for almost everything, making repetitive image editing tasks a lot faster.
    > OS SHP Builder: allows important colour remaps and combining images to a shp(ts) file.
    > XCC Utilities: allows to convert shp(ts) files into shp files. (navigate ppmsite.com to find XCC Utilities download in the sidebar)
  • .Shp creation:
    > Blender: Almost complete package for making, animation and postprocessing of 3D models. Also has hotkeys for everything. Sadly only one perspective can be rendered at a time, so...
    > ...windows shell + OpenOffice Calc: to batch-rename image files.
    > Nice Tutoials: On Blender hotkeys, On creating 3D models, On animating 3D models

    P2 Tut

Please note that this article is intended to get you started making maps and learn modding OpenRA yourself and I won't answer any questions here on why your own attempts (inevitably) fail at first. The OpenRA community offers great ways to communicate and get help with that.

Cheers,
SirCake

Post comment Comments
Milanium
Milanium - - 453 comments

I suggest to use Studio.zerobrane.com for the Lua scripting. See Github.com

Reply Good karma Bad karma+1 vote
SirCakealot Author
SirCakealot - - 30 comments

Thanks for the hint, everyone may use what suits them best!

Reply Good karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: