Skip to content

Instantly share code, notes, and snippets.

@otoayana
Last active July 30, 2024 00:38
Show Gist options
  • Save otoayana/62f7fdf841e4ac31554a31183305ac6c to your computer and use it in GitHub Desktop.
Save otoayana/62f7fdf841e4ac31554a31183305ac6c to your computer and use it in GitHub Desktop.

Teeworlds on Windows XP

Teeworlds is an online multiplayer shooter platformer game. It's extremely lightweight and has a retro vibe. Unfortunately, despite the claims the Steam page makes, Teeworlds has stopped being compiled for Windows XP since around 2018. I've compiled a custom version of v0.7.5 (latest version as of writing this) that will work on XP.

Prebuilts

As of now only x86 builds are provided, as I couldn't get it compiling for x64. Here's a list of mirrors with the latest version.

If you're suspicious about the file, a VirusTotal scan is available.

If you want to mirror, let me know in the comments or by email at lux@nixgoat.me

Build

If you don't trust the prebuilt provided, you can build it yourself! Here's a quick summary on how to do so.

Dependencies

Download and install/extract all of these.

I recommend adding the bin folder in MinGW to PATH, as this will make running certain commands easier.

Download

Get the Teeworlds source code from teeworlds.com, then extract it wherever you want.

Generate

Create directory within the name "build". Open a cmd, enter the previously created directory, and run the following command. Make sure to replace the paths so they match to where you have your toolchain.

cmake -G "MinGW Makefiles" -D"CMAKE_MAKE_PROGRAM:PATH=C:\Documents and Settings\Lux\My Documents\mingw32\bin\mingw32-make.exe" -D"CMAKE_C_COMPILER:PATH=C:\Documents and Settings\Lux\My Documents\mingw32\bin\gcc.exe" -D"CMAKE_CXX_COMPILER:PATH=C:\Documents and Settings\Lux\My Documents\mingw32\bin\g++.exe" -D"CMAKE_C_FLAGS:STRING=-fstack-protector-strong" -D"CMAKE_CXX_FLAGS:STRING=-fstack-protector-strong" ..

Build

Run mingw32-make.exe on the build directory.

Distribute

For sharing your build, you'll need to modify the folder structure a little.

  1. Copy "data", "freetype.dll", "SDL2.dll", "teeworlds.exe" and "teeworlds_srv.exe" from the build directory into a new folder.
  2. Copy "libssp-0.dll" from the bin directory in mingw32 into that folder.
  3. Package as deemed necessary (zip file, 7z, whatever)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment