Commit graph

15548 commits

Author SHA1 Message Date
Dennis Felsing dd82b1e25d
Merge pull request #9111 from timakro/pr-add-missing-practice-commands
Add practice commands /totele(cp), /(un)livefreeze, /(un)endless
2024-10-04 23:14:02 +00:00
Tim Schumacher 38d297f367 Add practice commands /totele(cp), /(un)livefreeze, /(un)endless 2024-10-05 00:47:53 +02:00
Dennis Felsing fa285811fa
Merge pull request #9110 from Robyt3/Datafile-Reader-Assertions
Add assertions to `CDataFileReader` checking if file open/closed
2024-10-04 22:34:28 +00:00
Dennis Felsing d51a726129
Merge pull request #9047 from timakro/pr-add-invincible-mode
Add invincible mode
2024-10-04 22:05:09 +00:00
Robert Müller e63d7386be Remove unused datafile reader variable in dummy_map tool 2024-10-04 21:12:54 +02:00
Robert Müller a3b2146a16 Add assertions to CDataFileReader checking if file open/closed
When the datafile is closed, only the `CDataFileReader::Open` and `CDataFileReader::Close` functions may be called. All other functions will now assert instead of returning some default-values if no file is open. The `CDataFileReader::Open` function will now assert if the file is already open instead of implicitly closing the previous one.
2024-10-04 21:12:21 +02:00
Tim Schumacher 5457e8fc3b Render sparkling trail for invincible players 2024-10-04 19:41:30 +02:00
Dennis Felsing a56e5324d8
Merge pull request #9106 from ChillerDragon/pr_break_peer
Break early in peer matching
2024-10-04 07:06:39 +00:00
ChillerDragon 11047d1b80 Break early in peer matching 2024-10-04 14:46:33 +08:00
dobrykafe 184f07a912 fix server settings command help text overwriting other tooltips 2024-10-03 21:55:07 +02:00
Dennis Felsing 29523e4972
Merge pull request #9102 from Jupeyy/pr_no_warning_fail
Don't emit a warning if no capable vulkan GPU was found
2024-10-03 11:37:39 +00:00
Jupeyy bbab3478f6
Don't emit a warning to the user if no capable vulkan GPU was found 2024-10-03 11:49:09 +02:00
heinrich5991 154b6d79f7
Merge pull request #9099 from infclass/ddnet-sound-channels
Use CHN_WORLD for MAPSOUNDWORLD and CHN_GLOBAL for MAPSOUNDGLOBAL
2024-10-03 09:22:52 +00:00
Jupeyy 47db90d8e9
Block AMD drivers from after 19.12.1 & before 22.4.1 2024-10-03 10:49:58 +02:00
Alexander Akulich 03a06a144d Use CHN_WORLD for MAPSOUNDWORLD and CHN_GLOBAL for MAPSOUNDGLOBAL
The whole idea behind custom sounds was to use them as replacement for
built-in sounds (depending on the gameplay). We have to use the same channels
instead of the MAP (aka 'ambient') channel to have the same volume for both
sets of messages.
Otherwise we have situation of players reporting 'no sound' because they have
`snd_ambient_volume 0` in the configs.

NETMSGTYPE_SV_MAPSOUNDGLOBAL is NETMSGTYPE_SV_SOUNDGLOBAL which uses map
assets as the sounds container. Use the same CSounds::CHN_GLOBAL to make
the sound messages equivalent.

NETEVENTTYPE_MAPSOUNDWORLD is NETEVENTTYPE_SOUNDWORLD which uses map assets
as the sounds container. Use the same CSounds::CHN_WORLD to make the sound
events equivalent.
2024-10-03 03:51:33 +03:00
Robert Müller f10d476964
Merge pull request #9091 from dobrykafe/pr-editor-ui-debug
Show UI debug info inside editor
2024-10-02 20:30:07 +00:00
dobrykafe 045738daf3 show ui debug info inside editor 2024-10-02 21:25:24 +02:00
KebsCS 21d378e4cb
Fix switch overlay text order 2024-10-02 17:25:14 +02:00
Robert Müller d3d4c187fb
Merge pull request #9059 from dobrykafe/pr-fix-drag-nav
Editor: fix click drag navigation selecting quads/sounds
2024-10-01 17:51:06 +00:00
ChillerDragon 547a9a0285 Explicitly set m_LastSetTeam to zero
It is compared to 0 in gamecontext.cpp but it is never explicitly set to 0.

```C++
if(pPlayer->GetTeam() == pMsg->m_Team || (g_Config.m_SvSpamprotection && pPlayer->m_LastSetTeam && pPlayer->m_LastSetTeam + Server()->TickSpeed() * g_Config.m_SvTeamChangeDelay > Server()->Tick()))
	return;
```
2024-10-01 15:25:17 +08:00
dobrykafe 7564a065c2 fix context menu showing up after canceling quad rotation 2024-09-30 23:56:59 +02:00
dobrykafe 2e77c4bd59 fix click drag navigation selecting quads/sounds 2024-09-30 22:46:56 +02:00
Robert Müller 65f118f840 Fix use of deprecated member variables in video recorder
Use the new `avcodec_get_supported_config` function instead of the deprecated `sample_fmts` and `supported_samplerates` members with libavcodec 61.13.100 and newer.

See 76eb3e5ff3/doc/APIchanges (L53-L56)

Closes #9085.
2024-09-30 21:59:47 +02:00
Robert Müller 7abeaf5600
Merge pull request #9078 from ChillerDragon/pr_browser_arrow_left_right
Arrow left and right in browser (internet/lan/favorites)
2024-09-30 13:23:46 +00:00
ChillerDragon 2b0fb83140 Arrow left and right in browser (internet/lan/favorites)
Closed #9038
2024-09-30 20:45:57 +08:00
ChillerDragon baeab0eaa9 Fix tabs being used in ascii art browser comment
Spaces are more portable if alignment matters
2024-09-30 14:07:17 +08:00
Dennis Felsing 5a893c8e52 Update credits 2024-09-29 13:42:17 +02:00
Dennis Felsing b32e7bea0a Version 18.7 (new scheme: nightly should have higher version than released)
Things that land in main now won't be part of 18.6 anymore
2024-09-29 11:41:55 +02:00
tobi 56f09e9d92 Add actually setting m_LastRescue variable 2024-09-28 23:25:05 +02:00
Robert Müller c573427609
Merge pull request #9054 from KebsCS/pr-rightclick-layer
Add right-click to solo editor layer
2024-09-28 18:04:10 +00:00
KebsCS cc2ce6ea9b
Add right-click to solo editor layer 2024-09-28 19:43:46 +02:00
Dennis Felsing 27e29a1ba7
Merge pull request #9045 from KebsCS/pr-smooth-spectating
Add smooth spectating
2024-09-28 11:55:01 +00:00
KebsCS 486de46f9d
Add custom editor entities 2024-09-27 22:07:57 +02:00
KebsCS e70aaf2fe8
Add smooth spectating 2024-09-27 14:19:52 +02:00
Dennis Felsing 2a64dac091
Merge pull request #9050 from ChillerDragon/pr_sql_convention
Cleanup sql worker request/result naming convention
2024-09-27 11:19:09 +00:00
Dennis Felsing 0628f74e64
Merge pull request #9049 from ChillerDragon/pr_rm_unused_sql_clientid
Remove unused m_ClientId from score worker
2024-09-27 11:11:42 +00:00
Dennis Felsing 205a7084a5
Merge pull request #9048 from KebsCS/pr-fix-spectate-closest
Fix SpectateClosest switching to random player
2024-09-27 11:11:00 +00:00
ChillerDragon 82af705542 Cleanup sql worker request/result naming convention
There are two interfaces for score worker data:

There is ``ISqlResult`` and every class inheriting from it should have
the suffix ``Result``

Then there is ``ISqlData`` and every class inheriting from it should
have the suffix ``Data`` if it is data that should be written in an
INSERT statement. Or ``Request`` if it is used to perform a read
operation and will be used in a SELECT statament.

The convention was mostly established alreay. In this commit the last
three classes that broke this convention got fixed.
2024-09-27 06:51:35 -04:00
ChillerDragon f2ec87d4e0 Remove unused m_ClientId from score worker 2024-09-27 06:51:15 -04:00
KebsCS 2646de0a7a Fix SpectateClosest switching to random player 2024-09-27 06:50:50 -04:00
Robert Müller 1021fdf7ae Consistently order I/O functions declarations and definitions 2024-09-27 11:17:41 +02:00
Robert Müller b18073a5cd Minor improvement of I/O functions documentation 2024-09-27 11:17:41 +02:00
Tim Schumacher c91be7b19f Add practice command /invincible to toggle invincible mode 2024-09-26 19:18:58 +02:00
Tim Schumacher b564110675 Make invincible players immune to freeze, death and teleport tiles and give them unlimited jumps
Specifically:
* Ignore freeze, deep freeze, deep unfreeze, live freeze, and live unfreeze tiles
* Ignore also the switched variants of those tiles
* Allow movement when deep and live frozen
* Ignore death tiles
* Ignore red tele, blue tele, red checkpoint tele, and blue checkpoint tele tiles
* Unlimited jumps
* Disable /rescue

Switches, doors, draggers, etc. are not disabled for invincible players in this patch
2024-09-26 19:18:52 +02:00
Tim Schumacher f51664e5ce Add rcon command "invincible" which does nothing yet
This commit adds the rcon command "invincible" which toggles the new m_Invincible variable on CCharacterCore. The feature is supposed to be an alterantive to super that is safe for /practice mode. The state of m_Invincible is synchronized to the client via the DDNetCharacter net object. Future commits will change checks for m_Super to check for m_Invincible as well in places where this is safe such as e.g. preventing freezing of the player. The ability to interact with players that are in other teams will remain exclusive to super.
2024-09-26 19:05:03 +02:00
Tim Schumacher a3e19fc39a Make CCharacter::SetSuper() idempotent
Specifically, SetSuper(false) followed by SetSuper(false) should not change teams. The following commit relies on this, but it is generally a good idea to remove this footgun.
2024-09-26 18:57:23 +02:00
Dennis Felsing 89474ae2b0
Merge pull request #9041 from bencie/tee-hover-tooltip
Show skin name as tooltip in friendlist and serverinfo
2024-09-26 01:42:00 +00:00
Dennis Felsing 525803a62b
Merge pull request #9043 from furo321/dont-reset-zoom
Don't reset zoom on team switch
2024-09-26 01:39:14 +00:00
furo 2dcbd5ecbb Don't reset zoom on team switch 2024-09-26 00:09:41 +02:00
bencie 36c3656883 Make cl_show_direction change alpha with cl_show_others_alpha 2024-09-25 18:19:45 +02:00