You are not logged in.

#1 2016-09-04 13:18:01

Registered: 2015-09-07
Posts: 33



To build Goat Attack, usually three steps have to be done:

  1. configure your build, tell what you want to build

  2. compile sources

  3. install

Before you can configure your build, you have to run autoreconf. This step will create the configure script:

$ autoreconf -i

Now you can run the newly created configure script. You can add parameters to the configure to select build options. Example:

$ ./configure --enable-dedicated-server
Which one?

Goat Attack can be compiled as a dedicated server or as a game client. A dedicated server does not link against graphical libraries like SDL or OpenGL. Furthermore a map editor cannot be compiled in a dedicated environment. However, the normal game needs to link against graphical libraries. Here you can compile the map editor as well.

Configure your build

Normal configuration:

$ ./configure

If you want to compile the map editor as well, append the option --enable-map-editor:

$ ./configure --enable-map-editor

To compile a dedicated server, configure your package that way:

$ ./configure --enable-dedicated-server

There are more options, if you want to show all options of the configure script, call it with the --help option:

$ ./configure --help

For more information, read this.


Now compile you configured package. To parallelize compiling, you can add a nice parameter -j6. Change the 6 to the number of your CPU cores:

$ make -j6

This takes a while. After completing, the base.pak will be generated too. For more information about packaging, have a look here.


You are one step away from starting your game. You have to install your package:

$ sudo make install

Or, if debug symbols should be thrown away, do that:

$ sudo make install-strip

If you get rid of Goat Attack, you can do an uninstall to remove it from your system:

$ sudo make uninstall
Updating your game

Assume, that you have downloaded a newer source package, or you want to recompile your package with other options, we recommend to uninstall Goat Attack first, then reconfigure, compile and reinstall it again.

What the hell is the master server?

Maybe you might have encountered, that a master server can be compiled too. Simply put, the master server just tells clients which servers are available to play games on. Or more detailed, the master server runs on a linux server, which receives constant heartbeats from dedicated servers. If you want to play a game online, the master server knows about all running dedicated servers all over the net and sends a list of all available dedicated servers to your game client. You don't need to compile the master server, unless you want to create another Goat Attack network beside the official Goat Attack network.


Board footer

Powered by FluxBB