在线多人对战
官方介绍支持最多 16 名玩家同局竞技,围绕多人联机设计。
teeworlds · teeworlds/teeworlds
Teeworlds 是一款用 C++ 编写的免费在线多人射击游戏,采用复古 2D 画风,基于 OpenGL 与 SDL2,支持 Windows、Linux、macOS。官方介绍称单局最多 16 名玩家,提供团队死斗、夺旗等多种模式,并允许玩家自行设计地图。项目源码同时支持 C...
Teeworlds 是一款免费在线多人射击游戏,采用复古 2D 画风,可在主流操作系统上运行。官方描述中,单局最多支持 16 名玩家同场对战,提供包括团队死斗(Team Deathmatch)与夺旗(Capture The Flag)在内的多种游戏模式,玩家还可以自行设计地图。
项目最初由 Magnus Auvinen 编写,源码以「as-is」形式提供,不附带任何明示或暗示担保,完整许可与版权信息见仓库中的 license.txt。关于游戏的最新版本、自定义地图等动态信息,官方建议访问 https://www.teeworlds.com/ 获取。
从仓库定位看,这是一个已经具备完整客户端与服务端形态的多人游戏工程,而非示例或原型:构建产物中同时包含客户端 teeworlds 与服务端 teeworlds_srv,并额外提供 content、masterserver、tools 等构建目标。
官方介绍支持最多 16 名玩家同局竞技,围绕多人联机设计。
README 明确提到团队死斗与夺旗等模式。
玩家可以设计自己的地图,仓库构建目标中也包含 `content` 与 `tools` 相关内容。
README 给出了 Linux、macOS、Windows 三大平台的构建说明,覆盖 CMake、bam、Visual Studio、MinGW 等多种工具链。
同时支持 CMake 与 bam,两者均有完整的依赖安装与编译步骤文档。
可单独构建服务端目标,便于在无图形库的无头服务器上部署。
从 README 与仓库元信息可以确认的技术栈包括:
--recurse-submodules,已克隆的仓库需执行 git submodule update --init。-GNinja(更快的并行构建)、-DDEV=ON(调试模式、加快构建)、-DCLIENT=OFF(关闭客户端目标,适合无图形库的无头服务器)等开关;bam 侧支持 conf=release、arch=x86/arch=x86_64 以及 game、server、client、content、masterserver、tools 等目标。这些信息说明项目在工程层面同时照顾了开发者日常调试与服务器部署两类场景。
先安装依赖,README 按发行版给出了命令:
build-essential cmake git libfreetype6-dev libsdl2-dev libpnglite-dev libwavpack-dev python3@development-tools cmake gcc-c++ git freetype-devel pnglite-devel python3 SDL2-devel wavpack-develbase-devel cmake freetype2 git python sdl2 wavpack(仓库中没有 pnglite)brew install cmake freetype sdl2随后克隆仓库并编译:
git clone https://github.com/teeworlds/teeworlds --recurse-submodules
cd teeworlds
mkdir -p build && cd build
cmake ..
make
编译完成后,./teeworlds 启动客户端,./teeworlds_srv 启动服务端;后续增量构建只需重复 make。
依赖与 CMake 方式基本一致,只是把 cmake 换成 bam(Arch 上 pnglite 同样不在官方仓库)。克隆仓库后直接执行 bam,产物位于 build 的子目录中。若系统没有 bam,可从 https://github.com/teeworlds/bam 获取并执行 ./make_unix.sh 安装。
README 给出三条路径:
teeworlds.exe 作为启动项编译。x64 Native Tools Command Prompt 中先运行 make_win64_msvc.bat 构建 bam,再执行 bam conf=release 构建游戏。mingw32-make。server 目标,再对照客户端代码理解网络交互。
NBlood 是用 EDuke32 引擎技术与开发思路对 Build 引擎游戏所做的逆向工程移...
id Software 公开的初代 DOOM 源代码,限非盈利使用。README 说明:运行仍需...