Teeworlds

A retro multiplayer shooter

Github星跟踪图

Teeworlds GitHub Actions

A retro multiplayer shooter

Teeworlds is a free online multiplayer game, available for all major
operating systems. Battle with up to 16 players in a variety of game
modes, including Team Deathmatch and Capture The Flag. You can even
design your own maps!

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software. See license.txt for full license
text including copyright information.

Please visit https://www.teeworlds.com/ for up-to-date information about
the game, including new versions, custom maps and much more.

Originally written by Magnus Auvinen.

Building on Linux or macOS

Installing dependencies

# Debian/Ubuntu
sudo apt install build-essential cmake git libfreetype6-dev libsdl2-dev libpnglite-dev libwavpack-dev python3

# Fedora
sudo dnf install @development-tools cmake gcc-c++ git freetype-devel pnglite-devel python3 SDL2-devel wavpack-devel

# Arch Linux (doesn't have pnglite in its repositories)
sudo pacman -S --needed base-devel cmake freetype2 git python sdl2 wavpack

# macOS
brew install cmake freetype sdl2

Downloading repository

git clone https://github.com/teeworlds/teeworlds --recurse-submodules
cd teeworlds

# If you already cloned the repository before, use:
# git submodule update --init

Building

mkdir -p build
cd build
cmake ..
make

On subsequent builds, you only have to repeat the make step.

You can then run the client with ./teeworlds and the server with
./teeworlds_srv.

Build options

The following options can be passed to the cmake .. command line (between the
cmake and ..) in the "Building" step above.

-GNinja: Use the Ninja build system instead of Make. This automatically
parallizes the build and is generally faster. (Needs sudo apt install ninja-build on Debian, sudo dnf install ninja-build on Fedora, and sudo pacman -S --needed ninja on Arch Linux.)

-DDEV=ON: Enable debug mode and disable some release mechanics. This leads to
faster builds.

-DCLIENT=OFF: Disable generation of the client target. Can be useful on
headless servers which don't have graphics libraries like SDL2 installed.

Building on Windows with Visual Studio

Download and install some version of Microsoft Visual
Studio
(as of writing, MSVS Community 2017)
with the following components:

  • Desktop development with C++ (on the main page)
  • Python development (on the main page)
  • Git for Windows (in Individual Components → Code tools)

Run Visual Studio. Open the Team Explorer (View → Team Explorer, Ctrl+^,
Ctrl+M). Click Clone (in the Team Explorer, Connect → Local Git Repositories).
Enter https://github.com/teeworlds/teeworlds into the first input box. Wait
for the download to complete (terminals might pop up).

Wait until the CMake configuration is done (watch the Output windows at the
bottom).

Select teeworlds.exe in the Select Startup Item… combobox next to the green
arrow. Wait for the compilation to finish.

For subsequent builds you only have to click the button with the green arrow
again.

Building on Windows with MinGW

Download and install MinGW with at least the following components:

  • mingw-developer-toolkit-bin
  • mingw32-base-bin
  • mingw32-gcc-g++-bin
  • msys-base-bin

Also install Git (for downloading the source
code), Python and
CMake.

Open CMake ("CMake (cmake-gui)" in the start menu). Click "Browse Source"
(first line) and select the directory with the Teeworlds source code. Next,
click "Browse Build" and create a subdirectory for the build (e.g. called
"build"). Then click "Configure". Select "MinGW Makefiles" as the generator and
click "Finish". Wait a bit (until the progress bar is full). Then click
"Generate".

You can now build Teeworlds by executing mingw32-make in the build directory.

Building with bam, guides for all operating systems

You can also compile Teeworlds with bam, a custom build system. Instructions
for that can be found at https://www.teeworlds.com/?page=docs&wiki=hacking.

主要指标

概览
名称与所有者teeworlds/teeworlds
主编程语言C++
编程语言Lua (语言数: 9)
平台
许可证Other
所有者活动
创建于2010-06-02 12:17:21
推送于2025-07-12 18:34:36
最后一次提交2025-07-02 22:21:03
发布数22
最新版本名称0.7.5 (发布于 )
第一版名称0.5-endofline (发布于 2011-03-31 23:39:41)
用户参与
星数2.5k
关注者数82
派生数644
提交数6.6k
已启用问题?
问题数1807
打开的问题数295
拉请求数902
打开的拉请求数36
关闭的拉请求数522
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?