heinrich5991
bda3adabcc
Use relative rpath, force relative rpath for older CMake versions
...
This allows you to copy around the built binaries together with the
binaries.
2020-03-14 01:48:45 +01:00
heinrich5991
a3163c5b9c
Add support for dynamically loading an antibot module
...
Support for this feature is turned off by default. This feature allows
to integrate with noby's anticheat feature.
2020-03-11 01:58:50 +01:00
Dennis Felsing
50d848ec43
Merge pull request #1928 from sirius1242/demo_render2
...
Demo to video converter function.
2020-01-25 21:01:08 +01:00
ChillerDragon
01f42089f3
Add set_src to be more teeworlds compatible
...
thanks to @heinrich5991
2020-01-19 20:38:11 +01:00
heinrich5991
2fa80d0a67
Properly display hdiutil status in CMake
...
(cherry picked from commit cc2be456d4
)
2020-01-05 17:51:19 +01:00
def
df807a7486
-DVIDEORECORDER=ON instead of -DFFMPEG=ON, fix README
...
remove unused files
2020-01-01 16:56:54 +01:00
sirius
7710b88670
Merge branch 'master' of https://github.com/ddnet/ddnet into demo_render2
2020-01-01 18:36:49 +08:00
Dennis Felsing
45ad7be57c
Merge pull request #2021 from ElXreno/appdata
...
Add AppData manifest
2019-12-31 10:38:10 +01:00
ElXreno
44adf1878d
Added AppData manifest
2019-12-31 10:06:44 +03:00
Dennis Felsing
070d215ae0
Fix Travis Mac OSX build
...
ABI check failed, CMAKE_SIZEOF_VOID_P was thus not set and we look for
libs in wrong directory. Something seems to be wrong with the C/C++
compilers Travis is using. Not sure how to figure out more closely.
2019-12-30 13:19:33 +01:00
def
fbbf7b3929
Fix MinGW build by temporarily disabling FORTIFY_SOURCE ( fixes #2001 )
2019-12-17 22:04:21 +01:00
def
28aabc5b91
Add map_convert_07 tool
...
Fixes https://github.com/ddnet/ddnet7/issues/20
2019-12-08 22:44:25 +01:00
ElXreno
f6478067ae
Fixed installation on other than Ubuntu GNU/Linux distributions
2019-12-06 14:20:32 +03:00
sirius
1090953b7d
update CMakeLists to make no ffmpeg need when ffmpeg off
2019-10-03 19:01:25 +08:00
sirius
d9d1e8b309
add if defined to newly added lines
2019-09-30 20:54:19 +08:00
sirius
1375fbb95d
add a button to render whole demo
2019-09-30 20:52:24 +08:00
HMH
461da64021
Basic cmake support for videorecorder
2019-09-30 20:49:35 +08:00
Dennis Felsing
0d9952b32a
Merge pull request #1748 from archimede67/pr_replays
...
Replay system (demo after-the-fact)
2019-06-11 18:13:26 +02:00
Corantin H
2e27a22927
typo + added an optional argument to save_replay + changed max replay length and fixed cl_notification_time values
2019-06-02 15:34:01 +02:00
Corantin H
761e73a131
should be thread safe now + moved demoedit to a new file
2019-05-31 20:42:28 +02:00
Ryozuki
bd1f6be080
add .desktop and ico installation
2019-05-26 18:11:48 +02:00
Ryozuki
ed5b96c6b9
fix modern cmake version warnings
2019-05-11 12:00:21 +02:00
Learath
5e5def314f
Add tests
2019-04-24 23:53:38 +03:00
bors[bot]
526af034dd
Merge #1620
...
1620: Rewrite of prediction code, with additional prediction (updated) r=def- a=trml
This is a reworked attempt at a rewrite of the prediction code (#464 ), to allow for more client side prediction. It doesn't fix the duplication of server code, but the client code should otherwise be cleaner. This includes separating prediction code out of gamecore/gameclient, and a refactor of the rendering of predicted characters.
There is also prediction for some new things, and some other changes:
- prediction of laser, shotgun, ninja, fng hammer, pickups and ddrace tiles (freeze/unfreeze tiles with cl_predict_freeze)
- laser and bullets are rendered when you fire them and bullets don't go through walls (when both cl_antiping_grenade and cl_antiping_weapons are enabled)
- antiping for flags
- prediction of dummy input
- an additional smoothing option that attempts to make antiping less jumpy (cl_antiping_smooth)
Co-authored-by: trml <trml@users.noreply.github.com>
Co-authored-by: trml <trml@noreply.github.com>
2019-04-23 17:11:21 +00:00
Dmitry Marakasov
e404d6fd63
Fix platform-specific client libraries for Linux
...
Do not hardcode library names, detect and depend on them properly instead.
2019-04-23 18:15:30 +03:00
trml
0b3f3b03b5
Rewrite of prediction code, with additional prediction
2019-04-21 16:12:20 +02:00
Dennis Felsing
3ac2e0a06a
Merge pull request #1617 from def-/pr-ninja-compiler-color
...
Add compiler colors when using ninja
2019-04-14 22:00:53 +02:00
bors[bot]
826a7781ae
Merge #1621
...
1621: Actually enable -Wuseless-cast r=heinrich5991 a=def-
It's not supported in C and we only checked using a C compiler.
Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2019-04-12 00:08:19 +00:00
Learath
b342048dad
Actually add crypto includes to the target
2019-04-11 22:00:33 +02:00
Dennis Felsing
cde07b420b
Implement changes suggested by -Wuseless-cast
...
But don't enable it yet because I'm not sure what the best way is.
2019-04-11 19:54:43 +02:00
def
1d09dfa004
Add compiler colors when using ninja
2019-04-11 08:12:40 +02:00
Dennis Felsing
ed34dcfec5
Merge pull request #1602 from def-/pr-explain-tiles
...
Explain game tiles and entities in editor (fixes #1600 )
2019-04-10 17:38:22 +02:00
def
fe432b8ae4
Enable a few more GCC warnings
2019-04-09 22:05:21 +02:00
def
eda16acbca
Explain game tiles and entities in editor ( fixes #1600 )
...
- Explanations by Lady Saavik taken from https://ddnet.tw/explain/
- CCW/CW were mixed up in enum names, fixed
- Make sure that the texts fits, otherwise reduce font size
- Still need explanations for Portal tiles
2019-04-08 19:39:56 +02:00
heinrich5991
e44b1ca986
Use OpenSSL md5 if it is available
...
Fixes #1582 .
2019-04-06 02:56:29 +02:00
def
985c0153c7
cmake: Warn on unknown CMAKE_BUILD_TYPE ( fixes #1334 )
2019-03-19 22:14:58 +01:00
heinrich5991
632e91da3a
Add a notification when files are not sorted in CMake
...
Would've solved the problem in teeworlds/teeworlds#2039 faster.
(cherry picked from commit fbdc6d69be
)
2019-03-07 12:23:54 +01:00
def
bc91659aa8
Get GAME_RELEASE_VERSION back, fix compatibility filter in server browser
2019-03-06 21:02:06 +01:00
def
deb2494692
Don't suggest to downgrade, clean up versioning ( fixes #1440 )
2019-03-03 20:31:23 +01:00
def
faa3cc195d
UTF8 nocase compare & use for chat TAB completion
...
- As suggested by Arseniy Zarche
- Also updated confusables to Unicode 12
2019-01-09 08:31:03 +01:00
yangfl
754e6befb3
CMakeLists.txt: Add TESTRUNNER_ARGS
...
Make it easy to disable certain tests if they can't be run.
2019-01-06 14:17:06 +08:00
yangfl
b704fd95e1
CMakeLists.txt: Let compiler tell its arch
2018-12-24 20:47:31 +08:00
def
77c086d617
Another CMake fix
2018-12-23 23:18:56 +01:00
def
280ed3fc3d
CMake: Move -lpthread to the very end to fix Linux linking
2018-12-23 23:13:41 +01:00
Dennis Felsing
5c18d6c481
Remove /modhelp ( fixes #1401 )
2018-12-12 10:05:44 +01:00
heinrich5991
9ef200cd4a
Revert "CMakeLists.txt: Replace PythonInterp with Python"
...
This reverts commit c1523d9fc3
.
Fixes #1352 .
2018-10-20 14:37:12 +02:00
yangfl
c1523d9fc3
CMakeLists.txt: Replace PythonInterp with Python
...
FindPythonInterp is deprecated since CMake version 3.12. Use Python to
automatically detect Python 3 or 2.
2018-10-11 08:57:56 +08:00
heinrich5991
4660e0a680
Add support for extra map items in datafiles
...
This works by utilizing the good old UUIDs – this way we can make sure
that we don't clash with other people extending the map format.
2018-10-08 23:05:56 +02:00
Dennis Felsing
e8bd8459a6
Fix #1325
2018-10-04 09:25:41 +02:00
Dennis Felsing
a95032b633
Apply heinrich5991's fix for #1324
2018-10-04 08:39:43 +02:00
Dennis Felsing
b0759830b7
Merge pull request #1300 from Learath2/dd_pr_autoupdateflag
...
CMake option to disable autoupdater. Closes #1292
2018-10-02 08:04:12 +02:00
heinrich5991
81408cac4e
Debug mode should only be default if DEV is set, release otherwise
...
Fixes #1308 .
2018-09-30 19:01:43 +02:00
Learath
2696ac134c
Handle the platform differences in CMake.
2018-09-20 14:06:18 +02:00
Learath
3852f0e720
CMake option to disable autoupdater. Closes #1292
2018-09-20 03:01:31 +02:00
Dennis Felsing
c7941db9d4
Static linking only when PREFER_BUNDLED_LIBS ( closes #1295 )
2018-09-19 07:58:17 +02:00
heinrich5991
cb09161dec
Add a proper make install
command
...
It will install data into `share/ddnet`, client and server binaries into
`bin` and tools into `lib/ddnet`.
Fixes #1269 .
2018-08-26 21:44:31 +02:00
heinrich5991
f7afd76292
(Re-?)add proper install target
...
This puts binaries in `bin` and the data dir into `share/ddnet`.
2018-08-21 21:53:08 +02:00
heinrich5991
8d04e7e5e1
Share libcurl resources across requests
...
Use the libcurl-share interface to share DNS cache and connections
between different requests.
If compiled with OpenSSL, libcurl can only be safely used from multiple
threads for OpenSSL >= 1.1.0, but this problem is not newly introduced
by this commit: According to libcurl-thread(3):
>OpenSSL <= 1.0.2 the user must set callbacks.
>
>https://www.openssl.org/docs/man1.0.2/crypto/threads.html#DESCRIPTION
>
>https://curl.haxx.se/libcurl/c/opensslthreadlock.html
2018-07-11 20:17:21 +02:00
yangfl
81a39c229b
Fix typo
2018-07-10 17:29:02 +08:00
heinrich5991
67a3042051
Fix Mac linking for cross-compilation
...
The `Security` framework is now needed on all targets because we link
libcurl everywhere.
2018-06-27 12:35:01 +02:00
Dennis Felsing
6c1e50bba5
Revert "No Crypto on Mac OSX"
...
This reverts commit fd1cdbfa74
.
2018-06-27 10:02:29 +02:00
Dennis Felsing
fd1cdbfa74
No Crypto on Mac OSX
2018-06-27 09:47:53 +02:00
heinrich5991
ca8fcc823c
Use more secure hash function for map downloads
...
SHA256 was chosen because it is reasonably standard, the file names
don't explode in length (this rules out SHA512) and it is supported by
basically all versions of OpenSSL (this rules out SHA512/256 and SHA3).
The protocol is changed in a backward compatible way: The supporting
server sends the SHA256 corresponding to the map in the `MAP_DETAILS`
message prior to sending the `MAP_CHANGE` message. The client saves the
SHA256 obtained from the `MAP_DETAILS` message until the next
`MAP_CHANGE` message.
For servers not supporting this protocol, the client falls back to
simply opening maps like in the previous scheme.
Remove the `map_version` tool, it is not being used and would have been
a little bit effort to update.
Use the OpenSSL implementation of SHA256 if it is supported, otherwise
fall back to a public domain one.
Fix #1127 .
2018-06-24 17:04:50 +02:00
heinrich5991
36694d3852
Add a way to call for external moderator help
...
This is done by HTTP POSTing to a location specified by
`sv_modhelp_url`. We also provide a `src/modhelp/server.py` which can
use theses POSTs to forward them to Discord servers.
The POST contains a JSON object payload, with the keys `"port"` which
contains the server port, `"player_id"` which contains the calling
player's client ID, `"player_name"` which contains the calling player's
nick and `"message"` which is the user-specified message.
Make JSON-escaping function public, add tests and fix bugs uncovered by
these tests.
Supersedes #1129 .
2018-06-19 23:27:35 +02:00
def
9c29d83d32
Try statically linking libgcc and libstdc++ on Linux too
2018-05-22 19:42:48 +02:00
def
f19f4530d3
Revert "Try removing manifest"
...
This reverts commit 6df2ad55ed
.
2018-05-09 22:06:52 +02:00
def
6df2ad55ed
Try removing manifest
...
Causes bug with Intel driver using OpenGL2:
https://stackoverflow.com/questions/34676697/embedding-manifest-into-the-application-binary-breaks-opengl-2
2018-05-07 20:57:06 +02:00
heinrich5991
81aeb30654
Also add a console command to enable map compatibility mode
2018-05-01 12:38:33 +02:00
heinrich5991
4576dae6aa
Add infrastructure for special-casing maps
2018-03-24 14:00:41 +01:00
heinrich5991
11304661db
Put name ban stuff into a separate file
...
Fix a bug when overlong names could be used to circumvent name bans. Add
tests for name bans.
2018-03-14 02:35:31 +01:00
heinrich5991
a71cc2a55b
Execute git_revision.py
in the source directory
...
Previously, if using an out-of-source build directory, git would report
an error and no revision string would be added to the final executable.
2018-03-10 00:58:10 +01:00
heinrich5991
31a3e8d4c0
Add possibility to ban players by name
...
This uses the Unicode confusable data together with judging how close
two strings are by using the Levenshtein distance.
Adds the commands `name_ban`, `name_unban` and `name_bans`. Kicks
players who join using a banned name and doesn't allow ingame players to
change their names to the banned ones.
2018-03-09 20:30:27 +01:00
heinrich5991
d118fbd5e0
Fix build with -DCLIENT=OFF
on macOS
2018-03-06 19:25:59 +01:00
heinrich5991
458804c059
Make game dependency on generated protocol.h
explicit
2018-03-02 03:42:35 +01:00
heinrich5991
1387ee9a3a
Regenerate version file on git changes
...
Previously, this file had to be manually deleted if you wanted to have a
new version compiled in.
2018-03-01 16:50:29 +01:00
heinrich5991
1578e272a3
Ignore old generated files if still present
...
Our build system used to put generated files into `src/game/generated`,
now it's using `${PROJECT_BUILD_DIR}/src/game/generated`. Prefer the
ones in `${PROJECT_BUILD_DIR}/src/game/generated`.
2018-02-20 17:11:18 +01:00
heinrich5991
ac7e92df5e
Rerun wavpack version detection when the library changes
2018-02-20 17:10:52 +01:00
def
491ccc85e1
Revert "Fix system wavpack ( fixes #1041 )"
...
This reverts commit 295b8a663a
.
2018-02-18 15:35:20 +01:00
def
295b8a663a
Fix system wavpack ( fixes #1041 )
2018-02-18 09:36:35 +01:00
heinrich5991
73c03544b4
Support older wavpack versions
2018-02-17 01:35:07 +01:00
heinrich5991
99fe1d7bcf
Revert "Fix bundled wavpack when system wavpack is available"
...
This reverts commit 0d9265b1fa
.
2018-02-17 01:31:40 +01:00
def
0d9265b1fa
Fix bundled wavpack when system wavpack is available
2018-02-15 19:30:40 +01:00
heinrich5991
38b96791f6
Try to find libwebsockets
on the host system
2018-02-14 12:55:37 +01:00
heinrich5991
94818ec1f0
Try to find external GLEW, pnglite and Wavpack
...
Allow for newer versions of Wavpack, fixes #1023 .
Fixes #1016 .
2018-02-12 23:29:45 +01:00
heinrich5991
22164d5c45
Squelch warnings in bundled ZLIB dependency
2018-02-12 23:29:45 +01:00
heinrich5991
9e9b57ec62
Move generated files to the CMake build directory
2018-02-12 23:29:45 +01:00
Learath2
050a34295f
Remove make_release, scrub references to lua files
2018-01-29 13:37:26 +01:00
Learath2
b26eeb235d
Scrub more references to bam
2018-01-28 22:47:03 +01:00
bors[bot]
f48a2a395b
Merge #947
...
947: Add support for extra chunks in teehistorian r=Learath2 a=heinrich5991
This allows to add rarely-used chunks without increasing the file format
version.
2018-01-27 21:09:43 +00:00
def
151da9af97
Remove Emojis
2018-01-25 20:03:18 +01:00
heinrich5991
9712a4494b
CMAKE_CXX_FLAGS
is space-separated, not semicolon-separated
2018-01-22 19:48:17 +01:00
heinrich5991
ccad91a11d
Check for -std=gnu++11
in the C++, not C, compiler
2018-01-22 19:32:30 +01:00
heinrich5991
6b7921677c
CMakeLists.txt: Check for each of the flags before adding them
2018-01-22 19:10:57 +01:00
def
45412a9a05
-ffloat-store to fix win32 server floats ( fixes #989 )
2018-01-15 19:34:54 +01:00
def
b3ad3f2d27
Forgot .exe ending for Windows
2018-01-14 16:11:09 +01:00
def
4aeb0f9a8e
Strip binaries, even in package_*
2018-01-14 15:57:02 +01:00
def
636fdeba70
cpack should get shorter version name as well
2018-01-14 15:31:31 +01:00
def
325371331d
Version 11.0
2018-01-14 15:04:18 +01:00
def
7726540de1
Not sure why c++11 is not respected when compiling for mac
2018-01-14 14:36:25 +01:00
def
44ffaffb36
Tell cpack to strip files
2018-01-14 08:42:15 +01:00