Commit graph

10075 commits

Author SHA1 Message Date
heinrich5991 a7042f7139 Fix the double-free of the antibot
I could not find an easy way to ensure that `AntibotDestroy` is only
being called once for each `AntibotInit` but still happening after all
the `CPlayer` destructors.
2020-03-24 15:15:40 +01:00
heinrich5991 d50547ea42 Revert "Fix AntibotDestroy being called twice"
This reverts commit efb3106b71.
2020-03-24 15:07:01 +01:00
bors[bot] 6e78deb0c4
Merge #2069 #2076 #2095
2069: Move global configuration out of client interface r=heinrich5991 a=ChillerDragon



2076: Allow editing multiple tile layer props r=heinrich5991 a=Learath2

Requested by Ravie on discord

2095: Fix `AntibotDestroy` being called twice r=def- a=heinrich5991

The resource deallocation needs to happen in symmetry with the
allocation, otherwise we get unmatched dealloctions leading to crashes.

Allocations happened in `CAntibot::Init`, but it was not guaranteed that
this was called before the destructor.

Co-authored-by: ChillerDragon <ChillerDragon@gmail.com>
Co-authored-by: Learath <learath2@gmail.com>
Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-03-23 17:04:15 +00:00
bors[bot] 048ca9fe0a
Merge #2070
2070: Fix demo recording with broken maps r=heinrich5991 a=Learath2

Apparently there are maps out there with broken headers advertising the wrong map size. This allows demos to be recorded on those.

Example of such a map is `ctf4_old_d668e9fa_2f472051b26b6bffaa4af8990cf882cafd6364e00e1333b77762cb9911e49464.map`
Hosted on `Allround Network`

Reported by teini94 on discord

Co-authored-by: Learath <learath2@gmail.com>
2020-03-23 16:58:01 +00:00
bors[bot] bf821fe391
Merge #2071
2071: Add an option to only start a new demo when connect while automatically record demos r=def- a=sirius1242

Origin auto demo recording of ddnet will generate lots of demo files especially when playing in mods which have shorter rounds, such as infclass. I added a new option to open a new demo file only when connect to server (include map changing), this is disabled by default, and can use `cl_auto_demo_on_connect 1` to open. It works only when `cl_auto_demo_record` open.

Co-authored-by: sirius <sirius.ustc@gmail.com>
2020-03-23 16:38:17 +00:00
Learath 6919ed3041 Use updated stub, switch around versions 2020-03-23 15:46:57 +01:00
Learath 060d60f2ea Output library versions 2020-03-23 15:46:57 +01:00
heinrich5991 efb3106b71 Fix AntibotDestroy being called twice
The resource deallocation needs to happen in symmetry with the
allocation, otherwise we get unmatched dealloctions leading to crashes.

Allocations happened in `CAntibot::Init`, but it was not guaranteed that
this was called before the destructor.
2020-03-23 15:35:16 +01:00
bors[bot] 2bc3f52f99
Merge #2090
2090: added base-devel alphabetically to dependency list r=heinrich5991 a=Patiga

required for building ddnet on a fresh arch linux installation
(noticed while trying to build ddnet on the arch linux docker image)

Co-authored-by: patiga <patigatus21@gmail.com>
2020-03-21 19:28:57 +00:00
patiga c64e6d5053 added base-devel alphabetically to dependency list 2020-03-21 19:24:39 +01:00
fokkonaut 69a6e94833 Fix two bugs 2020-03-17 13:55:30 +01:00
bors[bot] 477b8ff987
Merge #2088
2088: Fix antibot crash r=Learath2 a=heinrich5991

`m_Core.m_HookedPlayer` can be -1 if you get teleported the moment you'd
normally attach the hook.

Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-03-16 13:19:57 +00:00
heinrich5991 ed76cd7b12 Fix antibot crash
`m_Core.m_HookedPlayer` can be -1 if you get teleported the moment you'd
normally attach the hook.
2020-03-16 14:16:04 +01:00
fokkonaut d22a1a8f06 Remove setting ammo for freeze to 0 2020-03-16 11:52:53 +01:00
bors[bot] b6d6c8eed7
Merge #2084
2084: Fix antibot crash after map change r=def- a=heinrich5991



Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-03-14 20:01:57 +00:00
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 2574c060e4 Fix antibot crash after map change 2020-03-14 01:44:57 +01:00
bors[bot] fdf7e4e918
Merge #2081
2081: Add support for dynamically loading an antibot module r=Learath2 a=heinrich5991

Support for this feature is turned off by default. This feature allows
to integrate with noby's anticheat feature.

Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-03-13 17:08:34 +00: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
heinrich5991 3c64bed767 .gitignore shared libraries 2020-03-10 21:35:44 +01:00
def 6efcc473c9 Fix cl_showrecord with dummy (fixes #2077)
Shows best time of either dummy or main player depending on which is
selected
2020-03-01 12:55:01 +01:00
Learath d2498f257c Stateful editing 2020-02-28 18:25:27 +03:00
Learath f2103881c8 Add shift by, fix id overlap 2020-02-28 15:33:32 +03:00
def 2319151fb4 Disable currently broken sv_vanilla_antispoof 2020-02-27 22:53:56 +01:00
Learath a50e59d4f6 Allow editing colors, add warning 2020-02-27 18:02:36 +03:00
Learath ce8987cd43 Missing include 2020-02-27 16:56:40 +03:00
Learath f679fbfbc5 Allow editing multiple tile layer props 2020-02-27 16:53:12 +03:00
bors[bot] 43316d0c0b
Merge #2075
2075: Add option to pause video rendering when demo playing pause r=def- a=sirius1242

This option default is open, which means video rendering will pause when demo playing pause, we can use this to:
- change player spec to
- check demo playing speed
- check playing progress

I think this is better.
There is a modification which make tee not transparent when playing demo from server with commit 5dab6e2e1, but if you don't like it, you can undo this modification.

Co-authored-by: sirius <sirius.ustc@gmail.com>
2020-02-27 13:47:59 +00:00
sirius 72fd0f9a21 forget to check CONF_VIDEORECORDER defined or not for video rendering pause 2020-02-27 20:32:42 +08:00
sirius 5dab6e2e1f make tee not transparent when playing demo from server 2020-02-27 20:13:16 +08:00
sirius b5c931279f add option to pause video rendering when demo playing pause 2020-02-27 18:50:18 +08:00
Dennis Felsing b704ef299c
Merge pull request #2072 from def-/pr-ddnet-libs
Update ddnet-libs (curl 7.67.0 -> 7.68.0)
2020-02-26 09:47:34 +01:00
Dennis Felsing 373b17b03b Update ddnet-libs (curl 7.67.0 -> 7.68.0) 2020-02-25 10:55:58 +01:00
def de7a67baa7 Version 12.9.2 2020-02-22 09:56:13 +01:00
def 127372b03d Fix timeout protection (fixes #2067)
CNetMsg_Cl_Say should not be a system message
2020-02-22 09:55:17 +01:00
sirius 50b980ea16 add an option to only start a new demo when connect while automatically record demos 2020-02-21 17:01:31 +08:00
Learath c52bbb6c02 Fix demo recording with broken maps 2020-02-19 15:38:58 +03:00
ChillerDragon 9e0f6d2ce0 Move global configuration out of client interface 2020-02-19 11:24:58 +01:00
bors[bot] 7691227f24
Merge #2066
2066: Implement dry saves r=def- a=Learath2

I'm not sure how much I like this but it should be helpful

Co-authored-by: Learath2 <learath2@gmail.com>
2020-02-14 08:02:06 +00:00
Learath2 06e948e944 Cleanup 2020-02-14 00:03:49 +01:00
def d89877603b Version 12.9.1 2020-02-13 22:55:48 +01:00
def 964279a699 Reset quad rotation/color in damageind (fixes #2062)
Removed in 7ae4b39574
2020-02-13 22:55:32 +01:00
Learath2 ec42ce88f6 Change command name, refactor error handling 2020-02-13 17:04:58 +01:00
Learath2 27d9ac54b0 Implement dry saves 2020-02-13 16:16:35 +01:00
bors[bot] f343b3871c
Merge #2065
2065: Fix build error for Fedora Rawhide r=def- a=ElXreno

This PR fixes build error while building DDNet for Fedora Rawhide.
Build error seems like this:
```
FAILED: CMakeFiles/DDNet.dir/src/game/client/components/background.cpp.o
/usr/bin/c++  -DCONF_OPENSSL -DCONF_WAVPACK_OPEN_FILE_INPUT_EX -DGLEW_STATIC -D_FORTIFY_SOURCE=2 -I/usr/include/freetype2 -I/usr/include/ogg -I/usr/include/opus -I/usr/include/SDL2 -I/usr/include/wavpack -Isrc -I../src -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -flto -O2 -g -DNDEBUG   -fdiagnostics-color=always -fstack-protector-all -Wall -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wformat=2 -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wrestrict -std=gnu++11 -MD -MT CMakeFiles/DDNet.dir/src/game/client/components/background.cpp.o -MF CMakeFiles/DDNet.dir/src/game/client/components/background.cpp.o.d -o CMakeFiles/DDNet.dir/src/game/client/components/background.cpp.o -c ../src/game/client/components/background.cpp
In file included from ../src/game/client/components/background.cpp:8:
../src/game/client/components/maplayers.h:15:9: error: 'uintptr_t' does not name a type; did you mean 'uint64_t'?
   15 | typedef uintptr_t offset_ptr;
      |         ^~~~~~~~~
      |         uint64_t
../src/game/client/components/maplayers.h:61:4: error: 'offset_ptr' does not name a type; did you mean 'offset_ptr32'?
   61 |    offset_ptr IndexBufferByteOffset()
      |    ^~~~~~~~~~
      |    offset_ptr32
In file included from ../src/game/client/components/background.cpp:8:
../src/game/client/components/maplayers.h:105:4: error: 'offset_ptr' does not name a type; did you mean 'offset_ptr32'?
  105 |    offset_ptr m_IndexBufferByteOffset;
      |    ^~~~~~~~~~
      |    offset_ptr32
../src/game/client/components/maplayers.h: In constructor 'CMapLayers::SQuadLayerVisuals::SQuadVisual::SQuadVisual()':
../src/game/client/components/maplayers.h:103:20: error: class 'CMapLayers::SQuadLayerVisuals::SQuadVisual' does not have any field named 'm_IndexBufferByteOffset'
  103 |    SQuadVisual() : m_IndexBufferByteOffset(0) {}
      |                    ^~~~~~~~~~~~~~~~~~~~~~~
```

Full build log you can find here (available for 14 days after build): https://download.copr.fedorainfracloud.org/results/elxreno/ddnet/fedora-rawhide-x86_64/01238446-ddnet/build.log.gz

Co-authored-by: ElXreno <elxreno@gmail.com>
2020-02-13 14:34:04 +00:00
ElXreno 1799edc049
Fix build error
./src/game/client/components/maplayers.h:15:9: error: 'uintptr_t' does not name a type; did you mean 'uint64_t'?
   15 | typedef uintptr_t offset_ptr;
      |         ^~~~~~~~~
      |         uint64_t
../src/game/client/components/maplayers.h:61:4: error: 'offset_ptr' does not name a type; did you mean 'offset_ptr32'?
   61 |    offset_ptr IndexBufferByteOffset()
      |    ^~~~~~~~~~
      |    offset_ptr32
In file included from ../src/game/client/components/background.cpp:8:
../src/game/client/components/maplayers.h:105:4: error: 'offset_ptr' does not name a type; did you mean 'offset_ptr32'?
  105 |    offset_ptr m_IndexBufferByteOffset;
      |    ^~~~~~~~~~
      |    offset_ptr32
../src/game/client/components/maplayers.h: In constructor 'CMapLayers::SQuadLayerVisuals::SQuadVisual::SQuadVisual()':
../src/game/client/components/maplayers.h:103:20: error: class 'CMapLayers::SQuadLayerVisuals::SQuadVisual' does not have any field named 'm_IndexBufferByteOffset'
  103 |    SQuadVisual() : m_IndexBufferByteOffset(0) {}
      |                    ^~~~~~~~~~~~~~~~~~~~~~~
2020-02-13 17:27:39 +03:00
Dennis Felsing 8d5762787e
Merge pull request #2064 from heinrich5991/pr_ddnet_unbundlecurl_openssl
Don't look for libcrypto if bundling libcurl
2020-02-13 10:46:56 +01:00
heinrich5991 e912cc4510 Don't look for libcrypto if bundling libcurl
This prevents accidental dependence on one specific version of
libcrypto.
2020-02-13 10:43:16 +01:00
Dennis Felsing cd44d6dba7 Version 12.9 2020-02-13 09:20:00 +01:00
bors[bot] 43ecec1f2f
Merge #2061
2061: use pid in file names of temporary files r=heinrich5991 a=def-

to prevent race conditions with multiple clients running when saving maps, config on quit, during upgrade


Co-authored-by: def <dennis@felsin9.de>
2020-02-13 00:03:23 +00:00