A single-player total conversion of Cube2-Sauerbraten with focus on adding rpg/adventure elements. The goal is to make gamebuilding as fun as playing a game, with intuitive menus and guides to help anyone make their own open-source rpg/adventure game, without prior knowledge of programming or 3D-modeling.

Forum Thread
  Posts  
Modding notes (Games : Cube 2: Sauerbraten : Mods : SabiCube : Forum : Support : Modding notes) Locked
Thread Options
Sep 6 2013 Anchor

SabiCube is build exclusively using open-source tools, most of them available with a few clicks on most linux-distros, atm. I use KUbuntu 64-bit with kx-studio repositories enabled (for my music-production).

As for the engine, I did some digging and found that the existing engines either lacked certain components, or was to complex for my entry-level. Cube2 collect-edition was the one that came closest to what I wanted, and then I just started reading the code, trying to figure it out as I hacked away. I've made a lot of small Py-GTK programs, and in my early days I did some Pascal, so I did have some minor knowledge of programming when I started.

There are several layers to modding, each requiring it's own skill-set, and we can't all do everything equally good, I certainly can't, but I try anyway :-)

Here are some of the tips that I could have used when I started:

Coding (making changes to the source-code and scripting):

All programming is done in KDevelop or Kate, but any basic text-editor will do, as long as you have dependencies and compiler-tools installed.

install dependencies and compiler-tools on a Debian system:
sudo apt-get install autoconf libtool libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev build-essentials

To compile SabiCube, cd into the source-dir (src), and run the make command, followed by make install:
make && make install
this might take a while (2-5 min.), depending on your specifications.

There are a lot of benefits to using the terminal. and by executing SabiCube with:
./sabicube_unix
you'll be able to see if there are any problems with your scripts/settings.

Find and Remove backup-files:
find -name "*.BAK" -exec rm -rf {} \;

Search for a text string recursively with -r option:
grep -r "barrel" ./*

If you want to make your own scripts, take a look at the packages/base folder.
Every map have a .cfg and a .ogz file (some also have a .jpg for preview).
the mapname.cfg can contain links to other scripts, textures and models.
A more detailed explanation of scripting, can be found here: Github.com

Modeling, animation, textures and such:

To get MD5-export working, I downloaded Blender 2.63 and der-ton's MD5-exporter from katsbits.com.
MisfitModel3D is a great tool for obj and md3/md2 format, and I use Gimp for 2D-stuff like textures.

MD5 export from Blender: in objectmode, select action, select mesh then armature.

InsaneBump is a great tool for textures Registry.gimp.org
On Linux you just download the file, rename the extension to .py, make it executable and place it in your gimp-plugins folder

make list of all jpg's in current folder:
ls *.jpg > package.cfg

convert folder with bmp into jpg. (add " && rm *.bmp" to remove source):
mogrify -format jpg *.bmp

When writing/creating your own mapname.cfg, use the folowing guideline for textures:
texture 0 "path_to_texture" x y z q (x=rotate y=offset? z=offset? q=size)

EDIT: I have added a tools-folder to sabicube 1.1 with a md5-export-csript, playerhands.blend and other gamebuilding related stuff

Edited by: sandsound

Reply to thread
click to sign in and post

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.