Edgar
f3466e05ba
Show /spec tees with a dashed skin
2020-06-21 17:48:33 +02:00
Learath
ea3772ce2a
Don't send redundant commands. Remove /team on clientside.
2020-06-21 17:28:02 +03:00
Learath
35acd21933
Use the racetimer in 0.7
...
Clean up /timer while at it
2020-06-21 17:15:08 +03:00
bors[bot]
80f19b789a
Merge #2294
...
2294: Make the learn button fit (fixes #2293 ) r=edg-l a=def-
![screenshot_2020-06-20_14-57-03](https://user-images.githubusercontent.com/2335377/85202386-55454480-b306-11ea-99f5-e37ba6e616b5.png )
Co-authored-by: def <dennis@felsin9.de>
2020-06-21 09:31:51 +00:00
bors[bot]
715ef25328
Merge #2295
...
2295: Open links in background (fixes #2292 ) r=edg-l a=def-
Only tested on Linux
Co-authored-by: def <dennis@felsin9.de>
2020-06-21 09:25:28 +00:00
def
6cfc6adc83
Make ctrl-s/ctrl-l etc work everywhere in editor ( fixes #2302 )
...
instead of just in the layers view
2020-06-21 01:44:01 +02:00
def
c7908524cd
Add a slightly longer introduction text
...
Since we don't have a tutorial
2020-06-21 01:15:01 +02:00
def
c99d791f4b
Add warning in editor for image widths
2020-06-21 01:14:36 +02:00
def
ca094df46b
map_extract: Only access map info if it exists
...
Noticed on map Paranormal
2020-06-21 00:57:14 +02:00
def
66917c4b24
map_convert_07: Check image dimensions for divisibility by 16
2020-06-20 23:32:08 +02:00
bors[bot]
4dd72df777
Merge #2297
...
2297: Ingame time is in milliseconds on 0.7 r=def- a=Learath2
Co-authored-by: Learath <learath2@gmail.com>
2020-06-20 17:25:02 +00:00
Learath
28905c4659
Disable timeout for 0.7 clients
2020-06-20 19:52:23 +03:00
Learath
865afa613b
Ingame time is in milliseconds
2020-06-20 17:31:06 +03:00
def
70b8bf9497
Open links in background ( fixes #2292 )
...
Only tested on Linux
2020-06-20 14:59:36 +02:00
def
1610079020
Make the learn button fit ( fixes #2293 )
2020-06-20 14:57:52 +02:00
bors[bot]
17e77d73bb
Merge #2291
...
2291: Make PlayerResult messages an union variant r=def- a=Zwelf
and some small style and readability fixes in sql_score.
Co-authored-by: Zwelf <zwelf@strct.cc>
2020-06-20 12:44:59 +00:00
bors[bot]
a3ab572fdc
Merge #2290
...
2290: Restore old message behavior when using /load and /save r=def- a=Zwelf
Only notify the player initiating /load about the error and don't send
'Loading initiated by ...' and 'Saving initiated by ...' messages resulting
in two messages per /load and /save.
Not sure if the old behavior is better or if we want to keep the new with sending two messages per /save and /load.
Co-authored-by: Zwelf <zwelf@strct.cc>
2020-06-20 12:34:28 +00:00
bors[bot]
07f6e71376
Merge #2289
...
2289: Fix votes called from 0.7 r=def- a=Learath2
Never assume how structures are laid out
Co-authored-by: Learath <learath2@gmail.com>
2020-06-20 12:27:22 +00:00
Zwelf
1e4ccd7cc2
Small style and readability fixes in sql_score
2020-06-20 14:08:38 +02:00
Zwelf
67643e82b0
Make PlayerResult messages an union variant
...
as it is only used for DIRECT and ALL variants and for no other variants
2020-06-20 14:04:08 +02:00
bors[bot]
4edac3143a
Merge #2281
...
2281: Add Learn button which opens the ddnet wiki in the browser. r=heinrich5991 a=edg-l
![image](https://user-images.githubusercontent.com/15859336/85147350-05f00d00-b24f-11ea-8b6c-f79dbf605747.png )
## **I didn't test it on windows or mac.**
Co-authored-by: Edgar <git@edgarluque.com>
2020-06-20 12:00:45 +00:00
Edgar
07f0239e01
Add Learn button which opens the ddnet wiki in the browser.
2020-06-20 13:56:02 +02:00
Learath
8d422dfd70
Fix snapping for ninja
2020-06-20 14:24:38 +03:00
Learath
b032eddcb4
Fix votes called from 0.7
2020-06-20 14:22:46 +03:00
Zwelf
673f59d99f
Restore old message behavior when using /load and /save
...
Only notify the player initiating /load about the error and don't send
'Loading initiated by ...' and 'Saving initiated by ...' messages resulting
in two messages per /load and /save.
2020-06-20 13:03:25 +02:00
bors[bot]
4a810091b1
Merge #2284
...
2284: Remove sv_spectator_votes r=heinrich5991 a=def-
Co-authored-by: def <dennis@felsin9.de>
2020-06-20 10:46:03 +00:00
def
c53528b92f
Allow spectators to start votes
2020-06-20 11:20:54 +02:00
Learath
6db72b2388
Times are no longer negative in 0.7
2020-06-20 11:59:46 +03:00
Learath
91c44f1808
Sixup needs it's own maps
2020-06-20 01:00:45 +03:00
bors[bot]
5b4227fbba
Merge #2283
...
2283: teehistorian: Track whether clients join via the 0.7 protocol r=Learath2 a=heinrich5991
Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-06-19 20:31:40 +00:00
heinrich5991
e294da41ba
teehistorian: Track whether clients join via the 0.7 protocol
2020-06-19 22:06:39 +02:00
Learath
da68923ac3
Implement a switch for 0.7 compatibility
2020-06-19 22:08:41 +03:00
Learath
75e96aa5d3
Get rid of more magic constants, adapt to 0.7
2020-06-19 21:48:48 +03:00
Learath
d200ef0bb0
Remove ugly hack
2020-06-19 21:42:19 +03:00
Learath
623ba68c19
Fix an oversight on skin conversion and some UB
2020-06-19 20:28:55 +03:00
Learath
444bd93437
Fix recvmmsg again...
2020-06-19 20:28:55 +03:00
Learath
aeb7ea2971
Don't forget that the client is Sixup
2020-06-19 20:28:55 +03:00
Learath
70ecf785bb
Compatible version filter
2020-06-19 20:28:55 +03:00
Learath
ddaea93e60
Implement the new Chat Commands protocol
2020-06-19 20:28:55 +03:00
Learath
1d4ea6c41b
Drop clients properly
2020-06-19 20:28:55 +03:00
Learath
9a4b1f3615
Fix fake_server
2020-06-19 20:28:55 +03:00
Learath
d794520748
Remove forgotten debug messages
2020-06-19 20:28:55 +03:00
Learath
effa964f08
Translate playerflags
2020-06-19 20:28:55 +03:00
Learath
df42ce8b16
Send gameinfo correctly
2020-06-19 20:28:55 +03:00
Learath
32fb6718dd
Allow joining TEAM_SPECTATOR
2020-06-19 20:28:55 +03:00
Learath
9f71478099
Get Rcon working
2020-06-19 20:28:55 +03:00
Learath
2f760e3e40
Forgot to drop port
2020-06-19 20:28:55 +03:00
Learath
88ca573682
Serverinfo and Register support for 0.7
...
Co-authored-by: Tim Schumacher <tim@timakro.de>
2020-06-19 20:28:55 +03:00
Learath
4067e711ef
More template magic. Cleans up 'send-to-all-sixup'
2020-06-19 20:28:55 +03:00
Learath
9e2434c65d
Better skin colors. Better game message translation
2020-06-19 20:28:55 +03:00
Learath
1514a6df85
Fix NetObj translation, fix sounds
2020-06-19 20:28:55 +03:00
Learath
46a7b6de2c
Fix some oob access
2020-06-19 20:28:55 +03:00
Learath
9dc1a0357a
Get /spec working
2020-06-19 20:28:55 +03:00
Learath
e81c718180
Rework netobjs, fix chat
2020-06-19 20:28:55 +03:00
Learath
eff28c658a
Fix server messages
2020-06-19 20:28:55 +03:00
Learath
939b45a0aa
Actually remove duplicate message
2020-06-19 20:28:55 +03:00
Learath
465fd570e0
Implement whispers
2020-06-19 20:28:55 +03:00
Learath
25664da121
Remove duplicate message
2020-06-19 20:28:55 +03:00
Learath
40247f6b43
Fix chat
2020-06-19 20:28:55 +03:00
Learath
974b373ec2
Translate Damage Indicators
2020-06-19 20:28:54 +03:00
Learath
f9cc634683
Fix recvmmsg issue
2020-06-19 20:28:54 +03:00
Learath
03070d0567
Fix many issues
2020-06-19 20:28:52 +03:00
Learath
807c92f1a4
Generate the 0.7 protocol
2020-06-19 20:27:15 +03:00
Learath
f7e9df7abf
Move the rest of the translation to CServer
2020-06-19 20:27:15 +03:00
Learath
b0e5a37fa9
Do message translation differently
2020-06-19 20:27:15 +03:00
Learath
5000b248bb
Fix things
2020-06-19 20:27:15 +03:00
Tim Schumacher
442148a194
Begin work on 0.7 support
2020-06-19 20:27:15 +03:00
Learath
e9ba23b53a
Migrate to 0.6.5 flags
2020-06-19 20:27:15 +03:00
def
e36dc36b15
Fix demos header ( fixes #2278 )
...
Initially broken in 7aed6476dc
2020-06-19 10:42:19 +02:00
def
47e6c7cce2
Only forbid resizing when videorecorder is recording
2020-06-19 08:19:40 +02:00
bors[bot]
7d428676e2
Merge #2263
...
2263: Fix /spec + super bug r=Learath2 a=def-
Co-authored-by: def <dennis@felsin9.de>
2020-06-18 22:17:43 +00:00
def
e38cd6b6f2
Fix /spec + super crash ( fixes #2262 )
...
Thanks to Learath2 for finding a better solution.
2020-06-18 23:54:05 +02:00
def
79ef6c0e84
Use CSaveTee for rescue ( fixes #2241 )
2020-06-18 23:41:37 +02:00
def
2c7f4c71aa
Minor code style fixes in sql_score.cpp
2020-06-18 23:03:53 +02:00
bors[bot]
13237ee12e
Merge #2245 #2266
...
2245: Stop playing map sound when demo player is paused r=heinrich5991 a=def-
Noticed on Shooting Range map
2266: Reset hook & collision in prediction after kill r=heinrich5991 a=def-
Thanks to Pipou for reporting
Co-authored-by: def <dennis@felsin9.de>
2020-06-18 19:29:41 +00:00
bors[bot]
6f8f606e05
Merge #2276
...
2276: Fix segmentation fault when creating sql tables failed r=heinrich5991 a=Zwelf
`GameServer()->OnShutdown(true);` (which would wait on running threads to exit)
wasn't called if an error occured in the server init. Therefore `CServer` was
freed before the init-thread finished executing, causing a use after free from
`CSqlConnector::ms_ppSqlReadServers` pointing to `CServer->m_apSqlReadServers`.
Fixes #2271
Note that the server exits when creating tables failed. Since the tables are created by default, it has to be disabled explicitly (e.g. `add_sqlserver r teeworlds record teeworlds PASSWORD "localhost" 3306 0`) if the servers should start even when the database connection fails.
Co-authored-by: Zwelf <zwelf@strct.cc>
2020-06-18 19:23:00 +00:00
Zwelf
f5ac6eea56
Fix segmentation fault when creating sql tables failed
...
`GameServer()->OnShutdown(true);` (which would wait on running threads to exit)
wasn't called if an error occured in the server init. Therefore `CServer` was
freed before the init-thread finished executing, causing a use after free from
`CSqlConnector::ms_ppSqlReadServers` pointing to `CServer->m_apSqlReadServers`.
2020-06-18 21:11:36 +02:00
def
7aed6476dc
Allow larger map names
2020-06-18 18:29:27 +02:00
def
882185e299
Make SaveID DEFAULT NULL
2020-06-18 10:32:58 +02:00
def
6fcb8abbd0
Initialize m_SqlRandomMapResult ( fixes #2272 )
2020-06-18 08:18:33 +02:00
def
b3d22204c3
Update credits
2020-06-17 23:23:27 +02:00
bors[bot]
98b448ebcc
Merge #2247
...
2247: Thread safe SQL interaction r=def- a=Zwelf
This PR intends to make the database interaction thread safe and optimizes some SQL queries. This is still a WIP, but since it is a rather big PR I wanted to get feedback early on.
Benefits:
* remove race conditions leading to undefined behavior and potential crashes
* logging game related database results in teehistorian would be possible
Behavior change:
* /top5team prints ranks in reverse order when passing a negative number (like /top5, /top5points)
* Optimize SQL statements for /rank /teamrank /top5 /top5team /points /top5points
* /load without parameters doesn't pass the SQL error to the user (as most other functions)
* Simplify IScore interface
* Add UUID to /save table (update of database schema necessary):
```
ALTER TABLE record_saves ADD SaveID varchar(64);
```
* /save immediately kills team and loads it again if the database insert fails.
still TBD:
* [x] saving (team) score when finishing
* [x] loading team save
* [x] loading initial time and birthday check
* [x] /map and random map votes
* [x] RFC: generate a passphrase (2-3 word) if save-code exists or no save-code is given making /save failures much more rare and save-codes more secure
* [x] clean up code (removing now unused structs, ordering of functions in IScore)
Co-authored-by: Zwelf <zwelf@strct.cc>
2020-06-17 19:35:45 +00:00
bors[bot]
1ccce4a12d
Merge #2270
...
2270: Consider time_freq() r=def- a=Learath2
The timer ticks way faster on macOS leading to some insane pings :D
Co-authored-by: Learath <learath2@gmail.com>
2020-06-17 19:29:18 +00:00
Zwelf
f1b2ff086c
Clean up thread safe SQL refactor
2020-06-17 21:15:07 +02:00
Learath
88780cb495
Consider time_freq()
2020-06-17 20:56:29 +03:00
Learath
eed3e783e0
Mark unused tunes as such
2020-06-17 13:39:54 +03:00
bors[bot]
c4d71c7ef4
Merge #2264
...
2264: Add Entites off sign to front layer (fixes #2261 ) r=Learath2 a=def-
Co-authored-by: def <dennis@felsin9.de>
2020-06-16 19:31:25 +00:00
Zwelf
9f15acdbee
Thread safe random_unfinished_map and modified sql statement
2020-06-15 11:14:15 +02:00
Zwelf
afe96ed69c
Thread safe random_map
2020-06-15 11:14:15 +02:00
Zwelf
7f4dc2bb4e
Thread safe /map
2020-06-15 11:14:15 +02:00
Zwelf
ea31171873
Generate passphrase for save-code
...
* when none is given
* if the given save-code already exist
* if the database connection fails therefore it can't be checked if the save-code already exists
Using the short word list from eff:
https://www.eff.org/deeplinks/2016/07/new-wordlists-random-passphrases
2020-06-15 11:14:15 +02:00
Zwelf
528ca377ed
Thread safe saving of team score
2020-06-15 11:14:15 +02:00
Zwelf
13c80fdc56
Thread safe saving of score
2020-06-15 11:14:15 +02:00
Zwelf
5dcb6f3b0d
Thread save Init
2020-06-15 11:14:15 +02:00
Zwelf
62d56ca8e8
Make database init with create tables synchronous
...
Note: database init without creating tables behaves the same
2020-06-15 11:14:15 +02:00
Zwelf
c278d8dbc3
Read SaveID from database on /load
2020-06-15 11:14:15 +02:00
Zwelf
dbf6ac88f6
Thread save loading of player time and birthday
2020-06-15 11:14:15 +02:00
Zwelf
e9242f45f1
Thread safe /load
2020-06-15 11:14:15 +02:00
Zwelf
031ac52320
Thread safe /save
2020-06-15 11:14:15 +02:00
Zwelf
f5ebbf59b6
Thread safe /load without paramters
2020-06-15 11:14:15 +02:00
Zwelf
7514e93a8a
Optimize /top5points SQL query
2020-06-15 11:14:15 +02:00
Zwelf
fa8972deb6
Thread safe /top5points
2020-06-15 11:14:15 +02:00
Zwelf
62f3f40c00
Optimize /points database query
2020-06-15 11:14:15 +02:00
Zwelf
0f3f845a7f
Thread safe /points
2020-06-15 11:14:15 +02:00
Zwelf
e37cf5f3cb
Thread safe /times
2020-06-15 11:14:15 +02:00
Zwelf
8fc81e7eca
Reworked PlayerResult to signal finished with use_count == 1
...
Therefore if the sql thread crashes, the result is deleted automatically
2020-06-15 11:14:15 +02:00
Zwelf
1d7289c8f0
Thread safe /top5team and optimize database query
2020-06-15 11:14:15 +02:00
Zwelf
83fbee5f81
Optimize /teamrank database query
2020-06-15 11:14:15 +02:00
Zwelf
a92509a5df
Simplify /top5 SQL statement
2020-06-15 11:14:15 +02:00
Zwelf
9cf28354d7
Thread safe /top5 command
2020-06-15 11:14:15 +02:00
Zwelf
fd44b1dc5b
Reduce boilerplate code needed to start player info requesting thread
2020-06-15 11:14:15 +02:00
Zwelf
f18daa949c
Thread safe /teamrank
2020-06-15 11:14:15 +02:00
Zwelf
e311c39151
Remove unused parameters from IScore interface
2020-06-15 11:14:15 +02:00
Zwelf
68aa157c11
Simplify /rank sql request
2020-06-15 11:14:15 +02:00
Zwelf
eda0bab4bb
Thread safe /rank
2020-06-15 11:14:15 +02:00
Zwelf
91e286f54d
Fix parsing responses from player
2020-06-15 11:14:15 +02:00
Zwelf
76c227a542
Reimplement /mapinfo command
2020-06-15 11:14:15 +02:00
Zwelf
4152a1995e
Add missing dependeny to sql string helper
2020-06-15 11:14:15 +02:00
Zwelf
9add354367
Use Template for SqlResult
2020-06-15 11:14:15 +02:00
Zwelf
873f478a82
Rename Debut to Offset
2020-06-15 11:14:15 +02:00
Zwelf
4ee08dcc5c
Remove unused arguments from IScore
2020-06-15 11:14:15 +02:00
Zwelf
69cf72dae4
Adjust file based ShowRank, ShowTeamRank, ShowPoints consistent functions to sql
2020-06-15 11:14:15 +02:00
Zwelf
3d25953036
Ordered functions
2020-06-15 11:14:14 +02:00
Zwelf
a990acc512
Remove existing CRandomMapResult to simplify IScore interface
2020-06-15 11:12:57 +02:00
Zwelf
3af18f5f60
Create shared pointer on demand
2020-06-15 10:59:59 +02:00
Zwelf
0891a0fd51
Remove some unnecessary header includes
2020-06-15 10:59:59 +02:00
Zwelf
8a22cce031
Start of sql refractor
...
* Use atomic integer in thread count for thread safety
2020-06-15 10:59:46 +02:00
Zwelf
add4fab645
Disallow team join while save command is active
2020-06-15 10:59:46 +02:00
Zwelf
7146eb572b
Save error handling clean up
2020-06-15 10:59:46 +02:00
Zwelf
2d7886bf33
Small cleanup
2020-06-15 10:59:46 +02:00
def
0d9d873abf
Reset hook & collision in prediction after kill
...
Thanks to Pipou for reporting
2020-06-14 22:50:25 +02:00
12pm
01092a30c1
add sv_tele_others_auth_level
2020-06-14 19:21:12 +03:00
def
2d0340b1cd
Add Entites off sign to front layer ( fixes #2261 )
2020-06-14 16:01:32 +02:00
Learath
8d255921b8
Fix out of bounds read
2020-06-14 12:38:52 +03:00
bors[bot]
6ccfdd55f9
Merge #2258
...
2258: Don't miss dummy disconnects. Fix #2257 r=def- a=Learath2
Co-authored-by: Learath <learath2@gmail.com>
2020-06-11 10:40:17 +00:00
Learath
345798f9e1
Don't miss dummy disconnects. Fix #2257
2020-06-11 13:33:08 +03:00
def
5676e8842a
Improve quality default, persist video recorder settings when running other DDNet client
2020-06-06 00:04:42 +02:00
ZombieToad
f12d84c2c7
Update gameclient.cpp
...
so demo renders the right clan as green
2020-06-04 13:49:29 +01:00
bors[bot]
ef51f35840
Merge #2240
...
2240: Don't reset zoom when using timeline in demo r=heinrich5991 a=def-
Thanks to Lady Saavik for reporting
Co-authored-by: def <dennis@felsin9.de>
2020-06-02 17:25:02 +00:00
def
d06f1949c2
Stop playing map sound when demo player is paused
...
Noticed on Shooting Range map
2020-06-02 13:47:05 +02:00
def
690fb852df
Don't reset client on demo menu events
2020-06-02 13:22:00 +02:00
bors[bot]
3cd35de942
Merge #2236
...
2236: Fix team rejoin logic for sv_team 3 r=Learath2 a=def-
Co-authored-by: def <dennis@felsin9.de>
2020-06-02 10:27:13 +00:00
bors[bot]
f59441f1c2
Merge #2243
...
2243: Workaround for client crash on predicted explosion r=def- a=trml
I haven't been able to find the exact source of the problem yet, but at least this seems to get rid of the segfault. The crash only happened with with recent versions of gcc and -O3 for me.
Co-authored-by: trml <trml@users.noreply.github.com>
2020-06-01 20:31:06 +00:00
trml
e5d348975b
Avoid client crash on predicted explosion
2020-06-01 21:23:18 +02:00
d3fault
b9844ea6ec
Save active weapon with /rescue
2020-05-31 22:39:28 -07:00
def
4f59000bda
Version 13.2.2
2020-05-31 18:51:36 +02:00
bors[bot]
a15053d462
Merge #2231
...
2231: Don't clamp values that have no reasonable values r=Learath2 a=def-
Still affects many values in editor, for example colors in tiles and quads.
Thanks to Pipou for report.
Co-authored-by: def <dennis@felsin9.de>
2020-05-31 11:25:53 +00:00
d3fault
65906070b6
clarified /practice voting instructions
2020-05-30 20:58:01 -07:00
def
88b65b6def
Newly joined player should not immediately be subtracted from team 0
2020-05-31 00:34:29 +02:00
def
d3b6df97f8
Fix team rejoin logic for sv_team 3
2020-05-30 14:47:34 +02:00