gitextract_e20lamu3/ ├── .gitignore ├── .gitmodules ├── bam.lua ├── configure.lua ├── data/ │ ├── audio/ │ │ ├── foley_body_impact-01.wv │ │ ├── foley_body_impact-02.wv │ │ ├── foley_body_impact-03.wv │ │ ├── foley_body_splat-01.wv │ │ ├── foley_body_splat-02.wv │ │ ├── foley_body_splat-03.wv │ │ ├── foley_body_splat-04.wv │ │ ├── foley_dbljump-01.wv │ │ ├── foley_dbljump-02.wv │ │ ├── foley_dbljump-03.wv │ │ ├── foley_foot_left-01.wv │ │ ├── foley_foot_left-02.wv │ │ ├── foley_foot_left-03.wv │ │ ├── foley_foot_left-04.wv │ │ ├── foley_foot_right-01.wv │ │ ├── foley_foot_right-02.wv │ │ ├── foley_foot_right-03.wv │ │ ├── foley_foot_right-04.wv │ │ ├── foley_land-01.wv │ │ ├── foley_land-02.wv │ │ ├── foley_land-03.wv │ │ ├── foley_land-04.wv │ │ ├── hook_attach-01.wv │ │ ├── hook_attach-02.wv │ │ ├── hook_attach-03.wv │ │ ├── hook_loop-01.wv │ │ ├── hook_loop-02.wv │ │ ├── hook_noattach-01.wv │ │ ├── hook_noattach-02.wv │ │ ├── hook_noattach-03.wv │ │ ├── music_menu.wv │ │ ├── sfx_ctf_cap_pl.wv │ │ ├── sfx_ctf_drop.wv │ │ ├── sfx_ctf_grab_en.wv │ │ ├── sfx_ctf_grab_pl.wv │ │ ├── sfx_ctf_rtn.wv │ │ ├── sfx_hit_strong-01.wv │ │ ├── sfx_hit_strong-02.wv │ │ ├── sfx_hit_weak-01.wv │ │ ├── sfx_hit_weak-02.wv │ │ ├── sfx_hit_weak-03.wv │ │ ├── sfx_msg-client.wv │ │ ├── sfx_msg-highlight.wv │ │ ├── sfx_msg-server.wv │ │ ├── sfx_pickup_arm-01.wv │ │ ├── sfx_pickup_arm-02.wv │ │ ├── sfx_pickup_arm-03.wv │ │ ├── sfx_pickup_arm-04.wv │ │ ├── sfx_pickup_gun.wv │ │ ├── sfx_pickup_hrt-01.wv │ │ ├── sfx_pickup_hrt-02.wv │ │ ├── sfx_pickup_launcher.wv │ │ ├── sfx_pickup_ninja.wv │ │ ├── sfx_pickup_sg.wv │ │ ├── sfx_skid-01.wv │ │ ├── sfx_skid-02.wv │ │ ├── sfx_skid-03.wv │ │ ├── sfx_skid-04.wv │ │ ├── sfx_spawn_wpn-01.wv │ │ ├── sfx_spawn_wpn-02.wv │ │ ├── sfx_spawn_wpn-03.wv │ │ ├── vo_teefault_cry-01.wv │ │ ├── vo_teefault_cry-02.wv │ │ ├── vo_teefault_ninja-01.wv │ │ ├── vo_teefault_ninja-02.wv │ │ ├── vo_teefault_ninja-03.wv │ │ ├── vo_teefault_ninja-04.wv │ │ ├── vo_teefault_pain_long-01.wv │ │ ├── vo_teefault_pain_long-02.wv │ │ ├── vo_teefault_pain_short-01.wv │ │ ├── vo_teefault_pain_short-02.wv │ │ ├── vo_teefault_pain_short-03.wv │ │ ├── vo_teefault_pain_short-04.wv │ │ ├── vo_teefault_pain_short-05.wv │ │ ├── vo_teefault_pain_short-06.wv │ │ ├── vo_teefault_pain_short-07.wv │ │ ├── vo_teefault_pain_short-08.wv │ │ ├── vo_teefault_pain_short-09.wv │ │ ├── vo_teefault_pain_short-10.wv │ │ ├── vo_teefault_pain_short-11.wv │ │ ├── vo_teefault_pain_short-12.wv │ │ ├── vo_teefault_sledge-01.wv │ │ ├── vo_teefault_sledge-02.wv │ │ ├── vo_teefault_sledge-03.wv │ │ ├── vo_teefault_spawn-01.wv │ │ ├── vo_teefault_spawn-02.wv │ │ ├── vo_teefault_spawn-03.wv │ │ ├── vo_teefault_spawn-04.wv │ │ ├── vo_teefault_spawn-05.wv │ │ ├── vo_teefault_spawn-06.wv │ │ ├── vo_teefault_spawn-07.wv │ │ ├── wp_flump_explo-01.wv │ │ ├── wp_flump_explo-02.wv │ │ ├── wp_flump_explo-03.wv │ │ ├── wp_flump_launch-01.wv │ │ ├── wp_flump_launch-02.wv │ │ ├── wp_flump_launch-03.wv │ │ ├── wp_gun_fire-01.wv │ │ ├── wp_gun_fire-02.wv │ │ ├── wp_gun_fire-03.wv │ │ ├── wp_hammer_hit-01.wv │ │ ├── wp_hammer_hit-02.wv │ │ ├── wp_hammer_hit-03.wv │ │ ├── wp_hammer_swing-01.wv │ │ ├── wp_hammer_swing-02.wv │ │ ├── wp_hammer_swing-03.wv │ │ ├── wp_laser_bnce-01.wv │ │ ├── wp_laser_bnce-02.wv │ │ ├── wp_laser_bnce-03.wv │ │ ├── wp_laser_fire-01.wv │ │ ├── wp_laser_fire-02.wv │ │ ├── wp_laser_fire-03.wv │ │ ├── wp_ninja_attack-01.wv │ │ ├── wp_ninja_attack-02.wv │ │ ├── wp_ninja_attack-03.wv │ │ ├── wp_ninja_attack-04.wv │ │ ├── wp_ninja_hit-01.wv │ │ ├── wp_ninja_hit-02.wv │ │ ├── wp_ninja_hit-03.wv │ │ ├── wp_ninja_hit-04.wv │ │ ├── wp_noammo-01.wv │ │ ├── wp_noammo-02.wv │ │ ├── wp_noammo-03.wv │ │ ├── wp_noammo-04.wv │ │ ├── wp_noammo-05.wv │ │ ├── wp_shotty_fire-01.wv │ │ ├── wp_shotty_fire-02.wv │ │ ├── wp_shotty_fire-03.wv │ │ ├── wp_switch-01.wv │ │ ├── wp_switch-02.wv │ │ └── wp_switch-03.wv │ ├── countryflags/ │ │ └── index.json │ ├── editor/ │ │ ├── automap/ │ │ │ ├── grass_doodads.json │ │ │ └── grass_main.json │ │ ├── desert_main.rules │ │ ├── grass_main.rules │ │ ├── jungle_main.rules │ │ └── winter_main.rules │ ├── fonts/ │ │ ├── LICENSE │ │ └── VERSION │ └── skins/ │ ├── bluekitty.json │ ├── bluestripe.json │ ├── brownbear.json │ ├── cammo.json │ ├── cammostripes.json │ ├── coala.json │ ├── default.json │ ├── limekitty.json │ ├── pinky.json │ ├── redbopp.json │ ├── redstripe.json │ ├── saddo.json │ ├── toptri.json │ ├── twinbop.json │ ├── twintri.json │ ├── warpaint.json │ └── x_ninja.json ├── datasrc/ │ ├── compile.py │ ├── content.py │ ├── datatypes.py │ └── network.py ├── license.txt ├── other/ │ ├── config_directory.bat │ ├── freetype/ │ │ ├── VERSION │ │ ├── freetype.lua │ │ ├── include/ │ │ │ ├── freetype/ │ │ │ │ ├── config/ │ │ │ │ │ ├── ftconfig.h │ │ │ │ │ ├── ftheader.h │ │ │ │ │ ├── ftmodule.h │ │ │ │ │ ├── ftoption.h │ │ │ │ │ └── ftstdlib.h │ │ │ │ ├── freetype.h │ │ │ │ ├── ftadvanc.h │ │ │ │ ├── ftbbox.h │ │ │ │ ├── ftbdf.h │ │ │ │ ├── ftbitmap.h │ │ │ │ ├── ftbzip2.h │ │ │ │ ├── ftcache.h │ │ │ │ ├── ftchapters.h │ │ │ │ ├── ftcid.h │ │ │ │ ├── fterrdef.h │ │ │ │ ├── fterrors.h │ │ │ │ ├── ftgasp.h │ │ │ │ ├── ftglyph.h │ │ │ │ ├── ftgxval.h │ │ │ │ ├── ftgzip.h │ │ │ │ ├── ftimage.h │ │ │ │ ├── ftincrem.h │ │ │ │ ├── ftlcdfil.h │ │ │ │ ├── ftlist.h │ │ │ │ ├── ftlzw.h │ │ │ │ ├── ftmac.h │ │ │ │ ├── ftmm.h │ │ │ │ ├── ftmodapi.h │ │ │ │ ├── ftmoderr.h │ │ │ │ ├── ftotval.h │ │ │ │ ├── ftoutln.h │ │ │ │ ├── ftpfr.h │ │ │ │ ├── ftrender.h │ │ │ │ ├── ftsizes.h │ │ │ │ ├── ftsnames.h │ │ │ │ ├── ftstroke.h │ │ │ │ ├── ftsynth.h │ │ │ │ ├── ftsystem.h │ │ │ │ ├── fttrigon.h │ │ │ │ ├── fttypes.h │ │ │ │ ├── ftwinfnt.h │ │ │ │ ├── ftxf86.h │ │ │ │ ├── internal/ │ │ │ │ │ ├── autohint.h │ │ │ │ │ ├── ftcalc.h │ │ │ │ │ ├── ftdebug.h │ │ │ │ │ ├── ftdriver.h │ │ │ │ │ ├── ftgloadr.h │ │ │ │ │ ├── ftmemory.h │ │ │ │ │ ├── ftobjs.h │ │ │ │ │ ├── ftpic.h │ │ │ │ │ ├── ftrfork.h │ │ │ │ │ ├── ftserv.h │ │ │ │ │ ├── ftstream.h │ │ │ │ │ ├── fttrace.h │ │ │ │ │ ├── ftvalid.h │ │ │ │ │ ├── internal.h │ │ │ │ │ ├── psaux.h │ │ │ │ │ ├── pshints.h │ │ │ │ │ ├── services/ │ │ │ │ │ │ ├── svbdf.h │ │ │ │ │ │ ├── svcid.h │ │ │ │ │ │ ├── svgldict.h │ │ │ │ │ │ ├── svgxval.h │ │ │ │ │ │ ├── svkern.h │ │ │ │ │ │ ├── svmm.h │ │ │ │ │ │ ├── svotval.h │ │ │ │ │ │ ├── svpfr.h │ │ │ │ │ │ ├── svpostnm.h │ │ │ │ │ │ ├── svpscmap.h │ │ │ │ │ │ ├── svpsinfo.h │ │ │ │ │ │ ├── svsfnt.h │ │ │ │ │ │ ├── svttcmap.h │ │ │ │ │ │ ├── svtteng.h │ │ │ │ │ │ ├── svttglyf.h │ │ │ │ │ │ ├── svwinfnt.h │ │ │ │ │ │ └── svxf86nm.h │ │ │ │ │ ├── sfnt.h │ │ │ │ │ ├── t1types.h │ │ │ │ │ └── tttypes.h │ │ │ │ ├── t1tables.h │ │ │ │ ├── ttnameid.h │ │ │ │ ├── tttables.h │ │ │ │ ├── tttags.h │ │ │ │ └── ttunpat.h │ │ │ └── ft2build.h │ │ ├── lib32/ │ │ │ └── freetype.lib │ │ └── lib64/ │ │ └── freetype.lib │ ├── icons/ │ │ ├── Teeworlds.icns │ │ ├── Teeworlds_srv.icns │ │ ├── teeworlds_cl.rc │ │ ├── teeworlds_gcc.rc │ │ ├── teeworlds_srv_cl.rc │ │ └── teeworlds_srv_gcc.rc │ └── sdl/ │ ├── include/ │ │ ├── SDL.h │ │ ├── SDL_active.h │ │ ├── SDL_audio.h │ │ ├── SDL_byteorder.h │ │ ├── SDL_cdrom.h │ │ ├── SDL_config.h │ │ ├── SDL_config.h.default │ │ ├── SDL_config.h.in │ │ ├── SDL_config_amiga.h │ │ ├── SDL_config_dreamcast.h │ │ ├── SDL_config_macos.h │ │ ├── SDL_config_macosx.h │ │ ├── SDL_config_minimal.h │ │ ├── SDL_config_nds.h │ │ ├── SDL_config_os2.h │ │ ├── SDL_config_symbian.h │ │ ├── SDL_config_win32.h │ │ ├── SDL_copying.h │ │ ├── SDL_cpuinfo.h │ │ ├── SDL_endian.h │ │ ├── SDL_error.h │ │ ├── SDL_events.h │ │ ├── SDL_getenv.h │ │ ├── SDL_joystick.h │ │ ├── SDL_keyboard.h │ │ ├── SDL_keysym.h │ │ ├── SDL_loadso.h │ │ ├── SDL_main.h │ │ ├── SDL_mouse.h │ │ ├── SDL_mutex.h │ │ ├── SDL_name.h │ │ ├── SDL_opengl.h │ │ ├── SDL_platform.h │ │ ├── SDL_quit.h │ │ ├── SDL_rwops.h │ │ ├── SDL_stdinc.h │ │ ├── SDL_syswm.h │ │ ├── SDL_thread.h │ │ ├── SDL_timer.h │ │ ├── SDL_types.h │ │ ├── SDL_version.h │ │ ├── SDL_video.h │ │ ├── begin_code.h │ │ └── close_code.h │ ├── lib32/ │ │ ├── SDL.lib │ │ └── SDLmain.lib │ ├── lib64/ │ │ ├── SDL.lib │ │ └── SDLmain.lib │ ├── sdl.lua │ └── sdlnotes.txt ├── readme.txt ├── scripts/ │ ├── SDL_keysym.h │ ├── build.py │ ├── check_header_guards.py │ ├── cmd5.py │ ├── compiler.py │ ├── copyright.py │ ├── count_source.sh │ ├── dat2c.py │ ├── font_converter.py │ ├── font_installer.sh │ ├── gen_keys.py │ ├── linecount.sh │ ├── make_docs.sh │ ├── make_release.py │ ├── make_src.py │ ├── mass_server.py │ ├── netobj.py │ ├── nicks.txt │ ├── png.py │ ├── process_blame.py │ ├── refactor_count.py │ ├── tw_api.py │ ├── twlib.py │ └── update_localization.py ├── src/ │ ├── base/ │ │ ├── detect.h │ │ ├── math.h │ │ ├── system.c │ │ ├── system.h │ │ ├── tl/ │ │ │ ├── algorithm.h │ │ │ ├── allocator.h │ │ │ ├── array.h │ │ │ ├── base.h │ │ │ ├── range.h │ │ │ ├── sorted_array.h │ │ │ ├── string.h │ │ │ └── threading.h │ │ └── vmath.h │ ├── engine/ │ │ ├── client/ │ │ │ ├── backend_sdl.cpp │ │ │ ├── backend_sdl.h │ │ │ ├── client.cpp │ │ │ ├── client.h │ │ │ ├── friends.cpp │ │ │ ├── friends.h │ │ │ ├── graphics_threaded.cpp │ │ │ ├── graphics_threaded.h │ │ │ ├── input.cpp │ │ │ ├── input.h │ │ │ ├── keynames.h │ │ │ ├── serverbrowser.cpp │ │ │ ├── serverbrowser.h │ │ │ ├── sound.cpp │ │ │ ├── sound.h │ │ │ └── text.cpp │ │ ├── client.h │ │ ├── config.h │ │ ├── console.h │ │ ├── demo.h │ │ ├── docs/ │ │ │ ├── client_time.txt │ │ │ ├── prediction.txt │ │ │ ├── server_op.txt │ │ │ └── snapshots.txt │ │ ├── editor.h │ │ ├── engine.h │ │ ├── external/ │ │ │ ├── important.txt │ │ │ ├── json-parser/ │ │ │ │ ├── json.c │ │ │ │ └── json.h │ │ │ ├── pnglite/ │ │ │ │ ├── VERSION │ │ │ │ ├── pnglite.c │ │ │ │ └── pnglite.h │ │ │ ├── wavpack/ │ │ │ │ ├── VERSION │ │ │ │ ├── arm.S │ │ │ │ ├── arml.S │ │ │ │ ├── bits.c │ │ │ │ ├── coldfire.S │ │ │ │ ├── float.c │ │ │ │ ├── license.txt │ │ │ │ ├── metadata.c │ │ │ │ ├── readme.txt │ │ │ │ ├── unpack.c │ │ │ │ ├── wavpack.h │ │ │ │ ├── words.c │ │ │ │ ├── wputils.c │ │ │ │ └── wvfilter.c.no_compile │ │ │ └── zlib/ │ │ │ ├── VERSION │ │ │ ├── adler32.c │ │ │ ├── compress.c │ │ │ ├── crc32.c │ │ │ ├── crc32.h │ │ │ ├── deflate.c │ │ │ ├── deflate.h │ │ │ ├── infback.c │ │ │ ├── inffast.c │ │ │ ├── inffast.h │ │ │ ├── inffixed.h │ │ │ ├── inflate.c │ │ │ ├── inflate.h │ │ │ ├── inftrees.c │ │ │ ├── inftrees.h │ │ │ ├── trees.c │ │ │ ├── trees.h │ │ │ ├── uncompr.c │ │ │ ├── zconf.h │ │ │ ├── zlib.h │ │ │ ├── zutil.c │ │ │ └── zutil.h │ │ ├── friends.h │ │ ├── graphics.h │ │ ├── input.h │ │ ├── kernel.h │ │ ├── keys.h │ │ ├── map.h │ │ ├── masterserver.h │ │ ├── message.h │ │ ├── server/ │ │ │ ├── register.cpp │ │ │ ├── register.h │ │ │ ├── server.cpp │ │ │ └── server.h │ │ ├── server.h │ │ ├── serverbrowser.h │ │ ├── shared/ │ │ │ ├── compression.cpp │ │ │ ├── compression.h │ │ │ ├── config.cpp │ │ │ ├── config.h │ │ │ ├── config_variables.h │ │ │ ├── console.cpp │ │ │ ├── console.h │ │ │ ├── datafile.cpp │ │ │ ├── datafile.h │ │ │ ├── demo.cpp │ │ │ ├── demo.h │ │ │ ├── econ.cpp │ │ │ ├── econ.h │ │ │ ├── engine.cpp │ │ │ ├── filecollection.cpp │ │ │ ├── filecollection.h │ │ │ ├── huffman.cpp │ │ │ ├── huffman.h │ │ │ ├── jobs.cpp │ │ │ ├── jobs.h │ │ │ ├── kernel.cpp │ │ │ ├── linereader.cpp │ │ │ ├── linereader.h │ │ │ ├── map.cpp │ │ │ ├── mapchecker.cpp │ │ │ ├── mapchecker.h │ │ │ ├── masterserver.cpp │ │ │ ├── memheap.cpp │ │ │ ├── memheap.h │ │ │ ├── message.h │ │ │ ├── netban.cpp │ │ │ ├── netban.h │ │ │ ├── network.cpp │ │ │ ├── network.h │ │ │ ├── network_client.cpp │ │ │ ├── network_conn.cpp │ │ │ ├── network_console.cpp │ │ │ ├── network_console_conn.cpp │ │ │ ├── network_server.cpp │ │ │ ├── packer.cpp │ │ │ ├── packer.h │ │ │ ├── protocol.h │ │ │ ├── ringbuffer.cpp │ │ │ ├── ringbuffer.h │ │ │ ├── snapshot.cpp │ │ │ ├── snapshot.h │ │ │ └── storage.cpp │ │ ├── sound.h │ │ ├── storage.h │ │ └── textrender.h │ ├── game/ │ │ ├── client/ │ │ │ ├── animstate.cpp │ │ │ ├── animstate.h │ │ │ ├── component.h │ │ │ ├── components/ │ │ │ │ ├── binds.cpp │ │ │ │ ├── binds.h │ │ │ │ ├── broadcast.cpp │ │ │ │ ├── broadcast.h │ │ │ │ ├── camera.cpp │ │ │ │ ├── camera.h │ │ │ │ ├── chat.cpp │ │ │ │ ├── chat.h │ │ │ │ ├── console.cpp │ │ │ │ ├── console.h │ │ │ │ ├── controls.cpp │ │ │ │ ├── controls.h │ │ │ │ ├── countryflags.cpp │ │ │ │ ├── countryflags.h │ │ │ │ ├── damageind.cpp │ │ │ │ ├── damageind.h │ │ │ │ ├── debughud.cpp │ │ │ │ ├── debughud.h │ │ │ │ ├── effects.cpp │ │ │ │ ├── effects.h │ │ │ │ ├── emoticon.cpp │ │ │ │ ├── emoticon.h │ │ │ │ ├── flow.cpp │ │ │ │ ├── flow.h │ │ │ │ ├── hud.cpp │ │ │ │ ├── hud.h │ │ │ │ ├── items.cpp │ │ │ │ ├── items.h │ │ │ │ ├── killmessages.cpp │ │ │ │ ├── killmessages.h │ │ │ │ ├── mapimages.cpp │ │ │ │ ├── mapimages.h │ │ │ │ ├── maplayers.cpp │ │ │ │ ├── maplayers.h │ │ │ │ ├── menus.cpp │ │ │ │ ├── menus.h │ │ │ │ ├── menus_browser.cpp │ │ │ │ ├── menus_callback.cpp │ │ │ │ ├── menus_demo.cpp │ │ │ │ ├── menus_ingame.cpp │ │ │ │ ├── menus_popups.cpp │ │ │ │ ├── menus_settings.cpp │ │ │ │ ├── menus_start.cpp │ │ │ │ ├── motd.cpp │ │ │ │ ├── motd.h │ │ │ │ ├── nameplates.cpp │ │ │ │ ├── nameplates.h │ │ │ │ ├── particles.cpp │ │ │ │ ├── particles.h │ │ │ │ ├── players.cpp │ │ │ │ ├── players.h │ │ │ │ ├── scoreboard.cpp │ │ │ │ ├── scoreboard.h │ │ │ │ ├── skins.cpp │ │ │ │ ├── skins.h │ │ │ │ ├── sounds.cpp │ │ │ │ ├── sounds.h │ │ │ │ ├── spectator.cpp │ │ │ │ ├── spectator.h │ │ │ │ ├── voting.cpp │ │ │ │ └── voting.h │ │ │ ├── gameclient.cpp │ │ │ ├── gameclient.h │ │ │ ├── lineinput.cpp │ │ │ ├── lineinput.h │ │ │ ├── localization.cpp │ │ │ ├── localization.h │ │ │ ├── render.cpp │ │ │ ├── render.h │ │ │ ├── render_map.cpp │ │ │ ├── ui.cpp │ │ │ └── ui.h │ │ ├── collision.cpp │ │ ├── collision.h │ │ ├── editor/ │ │ │ ├── auto_map.cpp │ │ │ ├── auto_map.h │ │ │ ├── editor.cpp │ │ │ ├── editor.h │ │ │ ├── io.cpp │ │ │ ├── layer_game.cpp │ │ │ ├── layer_quads.cpp │ │ │ ├── layer_tiles.cpp │ │ │ └── popups.cpp │ │ ├── gamecore.cpp │ │ ├── gamecore.h │ │ ├── layers.cpp │ │ ├── layers.h │ │ ├── mapitems.h │ │ ├── server/ │ │ │ ├── alloc.h │ │ │ ├── entities/ │ │ │ │ ├── character.cpp │ │ │ │ ├── character.h │ │ │ │ ├── flag.cpp │ │ │ │ ├── flag.h │ │ │ │ ├── laser.cpp │ │ │ │ ├── laser.h │ │ │ │ ├── pickup.cpp │ │ │ │ ├── pickup.h │ │ │ │ ├── projectile.cpp │ │ │ │ └── projectile.h │ │ │ ├── entity.cpp │ │ │ ├── entity.h │ │ │ ├── eventhandler.cpp │ │ │ ├── eventhandler.h │ │ │ ├── gamecontext.cpp │ │ │ ├── gamecontext.h │ │ │ ├── gamecontroller.cpp │ │ │ ├── gamecontroller.h │ │ │ ├── gamemodes/ │ │ │ │ ├── ctf.cpp │ │ │ │ ├── ctf.h │ │ │ │ ├── dm.cpp │ │ │ │ ├── dm.h │ │ │ │ ├── lms.cpp │ │ │ │ ├── lms.h │ │ │ │ ├── mod.cpp │ │ │ │ ├── mod.h │ │ │ │ ├── sur.cpp │ │ │ │ ├── sur.h │ │ │ │ ├── tdm.cpp │ │ │ │ └── tdm.h │ │ │ ├── gameworld.cpp │ │ │ ├── gameworld.h │ │ │ ├── player.cpp │ │ │ └── player.h │ │ ├── tuning.h │ │ ├── variables.h │ │ ├── version.h │ │ └── voting.h │ ├── mastersrv/ │ │ ├── mastersrv.cpp │ │ └── mastersrv.h │ ├── osxlaunch/ │ │ ├── client.h │ │ ├── client.m │ │ └── server.m │ ├── tools/ │ │ ├── crapnet.cpp │ │ ├── dilate.cpp │ │ ├── fake_server.cpp │ │ ├── map_resave.cpp │ │ ├── map_version.cpp │ │ ├── packetgen.cpp │ │ └── tileset_borderop.cpp │ └── versionsrv/ │ ├── mapversions.h │ ├── versionsrv.cpp │ └── versionsrv.h └── storage.cfg