Commit graph

5017 commits

Author SHA1 Message Date
Learath 1f2e398819 Add ctrl-delete to chat. Closes #1032 2018-02-22 20:11:56 +01:00
bors[bot] b14370e6ad Merge #1035
1035: Fix #1031 r=heinrich5991 a=Learath2

Not sure if this is the best way to do this though :D
2018-02-14 13:08:15 +00:00
Learath2 ff872b39cd Forgot to add GameID to the col-list 2018-02-14 01:17:40 +01:00
Learath2 61f0461d46 Style 2018-02-13 17:15:16 +01:00
bors[bot] 6338a05fd3 Merge #1025
1025: Add Teehistorian UUIDs to every record r=heinrich5991 a=Learath2

For statistic collecting purposes, don't merge before updating the SQL Schema.

    ALTER TABLE record_race ADD COLUMN GameID VARCHAR(64) AFTER cp25;
    ALTER TABLE record_teamrace ADD COLUMN GameID VARCHAR(64) AFTER ID;
2018-02-13 16:01:20 +00:00
Learath2 8cfebaa0b2 Fix #1031 2018-02-13 03:45:43 +01:00
bors[bot] c0fa444f3a Merge #1034
1034: Try to find external GLEW, pnglite and Wavpack  r=Learath2 a=heinrich5991

Allow for newer versions of Wavpack, fixes #1023.

Fixes #1016.
2018-02-13 02:02:07 +00:00
heinrich5991 797581502a Remove spurious engine/server include in game 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
Learath bc11fc2a35 Add GameUuid to teamscore aswell
Also get GameUuid through an interface.
2018-02-07 16:43:36 +01:00
yangfl 1620fc9b0f Fix typo 2018-02-07 16:10:40 +08:00
Learath 94d98e833a Fix mistakes. Fix CREATE TABLE 2018-02-07 01:10:02 +01:00
Learath 0aeb912db2 Escape the UUID just in case 2018-02-07 00:44:03 +01:00
Learath 4a52bca55d Include the teehistorian uuid instead 2018-02-07 00:35:21 +01:00
Learath 4748d5f065 Add client version to the record 2018-02-06 20:07:42 +01:00
def a00d4112a7 Version 11.0.3 2018-02-03 21:47:09 +01:00
def c73e2a7ba8 New year is on January 1, not February 1 2018-02-01 20:22:18 +01:00
bors[bot] 4b84d7558f Merge #1007
1007: Record rcon authentication stuff into teehistorian r=Learath2 a=heinrich5991

This allows to check moderator actions after-the-fact.
2018-01-30 10:38:01 +00:00
heinrich5991 1c3dc8c316 Record rcon authentication stuff into teehistorian
This allows to check moderator actions after-the-fact.
2018-01-28 03:13:05 +01:00
heinrich5991 a744fe53a2 Remove CPlayer::m_Authed
This can't get out of sync now.
2018-01-27 23:13:17 +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 4377c5d707 comma 2018-01-27 10:54:24 +01:00
def 3672efb6fe Can't change GAME_VERSION after all 2018-01-26 22:12:12 +01:00
def 151da9af97 Remove Emojis 2018-01-25 20:03:18 +01:00
Ryozuki 214a8ba10a fix votes 2018-01-25 19:36:40 +01:00
Dennis Felsing cb0209d6e3 Reapply "Only make grenades explode once (fix by timakro)" 2018-01-25 02:32:34 +01:00
Dennis Felsing f3256f0b6c Revert "Only make grenades explode once (fix by timakro)"
This reverts commit b9a93a18fb.
2018-01-24 07:50:15 +01:00
def 39cb6ad8b7 Version 11.0.2 2018-01-22 20:55:24 +01:00
Dennis Felsing fac054275c
Merge pull request #992 from Jupeyy/master
RAM usage reduction for map buffering and foreground layer count fix
2018-01-22 20:44:56 +01:00
Dennis Felsing 8f2ce84f4e
Merge pull request #996 from Ryozuki/pr_cmd_vote_no
Add vote_no command
2018-01-22 20:36:20 +01:00
Dennis Felsing b9a93a18fb Only make grenades explode once (fix by timakro) 2018-01-22 14:15:53 +01:00
def 3033fbb466 Also pass negative numbers 2018-01-21 19:13:20 +01:00
def a731482152 /top5, /top5team, /top5points, /times also show worst results with negative numbers 2018-01-21 19:08:52 +01:00
Ryozuki 79fedff12d add /modhelp chat command 2018-01-21 01:32:55 +01:00
Ryozuki 0f328d6c52
wrong side.. 2018-01-18 18:41:37 +01:00
Ryozuki e039145628
fix pointer naming 2018-01-18 18:30:38 +01:00
Ryozuki e59387a304 revision changes 2018-01-18 16:17:23 +01:00
Ryozuki 6413cab702 forgot newline 2018-01-18 07:58:22 +01:00
Ryozuki 1e88ad92a0 add vote_no command and show auth rank in force vote 2018-01-18 07:56:07 +01:00
Ryozuki 6bf4a6e2ee fix style in ddracecommands.h 2018-01-18 01:25:45 +01:00
Jupeyy 15cc8e2dc8 use type that can hold any pointer size 2018-01-16 10:18:14 +01:00
Jupeyy 99bb1cc7db add parentheses 2018-01-16 09:41:06 +01:00
Jupeyy e9a2fc1d6e reduce RAM allocation for map buffering, and fix forground layer count 2018-01-16 09:35:28 +01:00
def c295ffbb6f Version 11.0.1 2018-01-15 20:19:23 +01:00
Dennis Felsing d174509f50
Merge pull request #990 from Ryozuki/pr_add_output_mutes_muteid
Add more output to mutes and muteid
2018-01-15 19:41:19 +01:00
Ryozuki 05ece01690 Add more output to mutes and muteid 2018-01-15 19:31:14 +01:00
def 949bb2d9fc Fix crash in emoji on map change, clear emojis 2018-01-15 19:08:51 +01:00
Dennis Felsing 31bbbaf512 case sensitivity 2018-01-15 09:10:20 +01:00
Dennis Felsing 272e14357c Fix SQL code for points/top5points 2018-01-15 09:08:51 +01:00
def 7ae5f33bdd fix cl_show_direction (thanks jupeyy) 2018-01-14 20:51:02 +01:00
def c8d4b605bf Improved cl_showfps, don't need average/current anymore 2018-01-14 17:21:50 +01:00
def 325371331d Version 11.0 2018-01-14 15:04:18 +01:00
def 2af80de4ea Teeworlds game version update 2018-01-14 13:57:57 +01:00
def 80cf5eff45 Update credits 2018-01-14 08:11:48 +01:00
def 9d5976a07d Fix version number... 2018-01-14 07:37:03 +01:00
def dee03a4f2e Version 11.0 2018-01-14 07:34:46 +01:00
def 4bc0d176d3 More reverts.. 2018-01-13 22:22:55 +01:00
def 3ee76bc5ff Revert voting change 2018-01-13 21:40:29 +01:00
def 16117f74d7 People don't like my vote changes 2018-01-13 16:46:31 +01:00
def 4dc118c752 Mutes work independent of port, don't announce IP in chat (fixes #908) 2018-01-13 10:50:31 +01:00
def 4682eaff56 Add option to turn off emojis (fixes #936) and add options in settings menu 2018-01-13 10:37:24 +01:00
def 484325f493 Fix nameplates with antiping (fixes #943) 2018-01-12 19:24:44 +01:00
heinrich5991 9d9bfee53f Move to ISO 8601-compliant timestamps
https://en.wikipedia.org/w/index.php?title=ISO_8601&oldid=819129098
2018-01-11 16:01:19 +01:00
heinrich5991 22080c840f Move teehistorian UUIDs into engine 2018-01-11 16:01:13 +01:00
heinrich5991 6c378b972b Add support for extra chunks in teehistorian
This allows to add rarely-used chunks without increasing the file format
version.
2018-01-11 15:59:53 +01:00
def 2ebc993379 Oops 2018-01-11 15:26:41 +01:00
def e29de3295f Vote faster when all press yes 2018-01-10 23:46:14 +01:00
def 37b7f058b2 Fix voting 2018-01-10 23:44:40 +01:00
def 0cc4763a43 Fix crash: Switch tiles with number 0 are handled like non-switch tiles
Thanks to 645654 and phacrum for report
2018-01-10 22:19:38 +01:00
Dennis Felsing d4f5b6ae69 Remove redundant code 2018-01-10 14:36:04 +01:00
Dennis Felsing ea85e0669a Keep vote running until everyone presses f3 or time runs out
Gives enough time for mods to react and for players to save
2018-01-10 14:33:03 +01:00
bors[bot] 94e43509cc Merge #977
977: Active moderator mode r=heinrich5991 a=Ryozuki

This PR adds a RCON command called "moderate", which enables a active moderator mode for the caller, so this will happen if a vote kick/spec is made:

- Vote will last atleast x seconds defined by CGameContext::m_VoteCloseTime (35 seconds on ddnet, according to @heinrich5991) even if there is majority.
- If a active moderator votes, it will be a force vote.
- If the active moderator doesn't vote, it will pass normally
- This is only for kick and spec votes.

I also added `access_level moderate 1` to autoexec_server.cfg

If there are any spelling errors on the code tell me.

Maybe needs to be tested more.
2018-01-09 09:14:17 +00:00
def 4813a4b857 Add cl_shownotifications (fixes #949) 2018-01-05 20:20:39 +01:00
def 77a999c0b1 Add cl_showemotes 2018-01-05 20:17:22 +01:00
def f1af7cff98 Still render chat input even when chat is disabled 2018-01-05 20:11:05 +01:00
def 3025ed35c9 Introduce cl_show_chat_system
Set to 0 to disable server messages
2018-01-05 20:10:39 +01:00
Ryozuki d6eb604718 add rcon moderate mode 2018-01-05 15:23:08 +01:00
Learath2 8353701789 Add sv_rcon_vote. Fix punctuation.
Add option to only allow authed clients to call votes.
2017-12-27 10:40:51 +03:00
def 627291c510 /pause <name> always switches to watching name
Old behaviour switched you out of pause if you were paused already
Thanks to fokkonaut for suggestion
2017-12-23 20:42:54 +01:00
Dennis Felsing be9a5fc8c8 Update save command description (by marcelherd) 2017-12-21 13:58:09 +01:00
bors[bot] 1d55bbda0e Merge #948
948: Remove deprecated multi commands r=Learath2 a=heinrich5991

You now have to use `/mc;` instead of `/` if you want to bind multiple
commands to one key.
2017-12-08 14:48:32 +00:00
Jupeyy 9228e632e9 remove spaces 2017-12-03 11:50:43 +01:00
Jupeyy e314802c9c Initialize m_LastLoad in Constructor and reset it when a new map is
loaded(%current% can be loaded directly)
2017-12-03 08:01:17 +01:00
ChillerDragon 3acb650a6f
removed unused comment 2017-12-02 18:26:53 +01:00
bors[bot] bad105c5e4 Merge #953
953: Overhauled job system r=Learath2 a=heinrich5991

The engine now takes `std::shared_ptr<IJob>`, this will ensure the
appropriate lifetime of the given parameters, it also allows for proper
destruction. Remove the now obsolete `IFetcher` interface and `CFetcher`
class.

Also adds some locks to `CUpdater`, previously it didn't have any locks
at all.
2017-11-27 23:34:54 +00:00
bors[bot] 41f6140179 Merge #945
945: Don't use nonstandard `#pragma pack` r=Learath2 a=heinrich5991

It's not needed in that place anyway.
2017-11-26 16:27:50 +00:00
bors[bot] f9e0b6b3fe Merge #931
931: Add Speedup tiles correctly at the border creation & remove tile layer extension restriction & fix the LastIndex buffer initlialization & setup non mipmap textures up correctly(texture completness) r=heinrich5991 a=Jupeyy

Allows speedups to be drawn on extended range(out of map range) too.
2017-11-26 13:32:05 +00:00
heinrich5991 94acac91a0 Overhauled job system
The engine now takes `std::shared_ptr<IJob>`, this will ensure the
appropriate lifetime of the given parameters, it also allows for proper
destruction. Remove the now obsolete `IFetcher` interface and `CFetcher`
class.

Also adds some locks to `CUpdater`, previously it didn't have any locks
at all.
2017-11-23 15:47:38 +01:00
heinrich5991 7fc4a21565 Remove deprecated multi commands
You now have to use `/mc;` instead of `/` if you want to bind multiple
commands to one key.
2017-11-18 16:36:34 +01:00
heinrich5991 be80ccb7d6 Don't use nonstandard #pragma pack
It's not needed in that place anyway.
2017-11-18 00:24:44 +01:00
heinrich5991 ef0c1b266f Fix 3 / 2 using integer division 2017-11-03 22:10:04 +01:00
bors[bot] 3fdc87047b Merge #935
935: removed dead function prototype r=heinrich5991 a=ChillerDragon
2017-11-01 14:15:56 +00:00
ChillerDragon a013a59aa6 removed dead function prototype 2017-11-01 14:57:34 +01:00
bors[bot] 5528cde5f6 Merge #869
869: Complete rework of the ghost and race recorder r=Learath2 a=Redix

This PR fixes a lot of issues with the ghost and race recorder, introduces a new ghost file format and implements some pretty useful features.

**A quick overview:**
 - When you cross the start line multiple times, both (ghost and recorder) will only restart if it is a non-solo server
 - If available, both will use the race timer to recognize the start instead of searching for the start line
 - Fastcap support for both
 - The recorder immediately starts when the Tee spawns, so the preparation steps (which are quite important for speedruns) will be included in the demo. If you do not cross the start-line within 20 seconds, it will stop the demo until you really start.
 - Better ghost menu (colors, reloading, deleting and saving ghosts)
 - The ghosts are more resistant against lags (old ones were sometimes completely useless due to small lags)
 - New ghosts files are significantly smaller
 - Cleanup, bugfixes..


**About the new ghost format (version 4/5):**
This format is used by Teerace for over a year now. The code for handling the binary files was moved to the engine. It includes an auto updater which creates a backup of all ghosts and converts them to the new format afterwards. The major differences from the format used by DDNet right now (version 2), are the ability to store multiple types of data, the usage of delta-encoding and a more portable header.

For whatever reason, the ghost stores values for every predicted tick, but without tick information, so lost snapshots can make them unusable. The new code uses the original values from the snapshots including ticks but it can also handle the old ones without. Since hardly any server uses the high bandwidth option this practically reduces the file size.

Like the demo recorder the ghost recorder directly stores the data to a file (every 50 snapshots) instead of writing the whole file at the end of the race. Indeed this can be changed with only a few lines if the old behavior is preferred.

The updater can handle version 2 (DDNet) and 3 (old teerace format, only slightly different from version 2) files. The updating already happens when the files are scanned for generating the list in the menu and not only when you activate them. The change from version 4 to 5 was only needed due to a bug in the implementation, the ghost loader can read both.

Some numbers about the file size: (map: hotrun, both about 30 seconds)

 - Old ghost: 30.4 kB (converted: 10.7 kB)
 - New ghost: 5.4 kB


**One thing about the race recorder:**
The old implementation compared the new file only with the first file it found for the particular map. The new one compares with all related demos and deletes them possibly, so that only the best demo is left. Since DDNet can also store the demos without name, this might also delete demos from other players, that you might have in your directory.
To prevent this I at least check whether the demo contains the player name if `cl_demo_name` is on. 
In my opinion the better solution would be to remove `cl_demo_name` and always use the player name.
2017-10-30 20:27:10 +00:00
Redix de1c0cf24d Fixed several issues with the ghost (thanks to Learath2) 2017-10-28 14:23:24 +02:00
def 04820b44f8 Simplify emoji 2017-10-28 09:08:17 +02:00
Michał ebe894faef Fix duplicate 2017-10-28 09:08:17 +02:00
Michał f7e64fe99e Quick fix 2017-10-28 09:08:17 +02:00
Michał 2e353beec2 Rendering fix, better offset calculation, optimizations 2017-10-28 09:08:17 +02:00
Michał 58b0ae5fc7 Possible emoji rendering fix 2017-10-28 09:08:17 +02:00
Michał 3c3c7abd3c Removed alias->utf replacer, added alias lookup instead, modified CEmojis class 2017-10-28 09:08:17 +02:00
Michał 07db85d806 Removed string.h, replaced some C functions with system.h ones, renamed variables 2017-10-28 09:08:17 +02:00
Michał bb419c43b7 Linux build fix + cleanup 2017-10-28 09:08:17 +02:00
Michał e85898a4b6 Fix includes + small clean 2017-10-28 09:08:17 +02:00
Michał 35fb1ddb41 Add emoji support 2017-10-28 09:08:17 +02:00
Jupeyy f15f41e654 remove extension limit for tile layers 2017-10-28 02:04:53 +02:00
Savander fa544dc0e6
Localize Date, Demo 2017-10-28 01:22:11 +02:00
Savander b2b82eb3dd
Localize friend message 2017-10-28 01:21:32 +02:00
Jupeyy 493d2dc9d8 add speedups correctly to the border tiles, to allow them beeing
displayed on extended range
2017-10-28 00:52:54 +02:00
Jupeyy 863385e208 fix the code layout 2017-10-25 15:42:06 +02:00
Jupeyy 3c8f937b79 Don't draw invalid tiles 2017-10-24 20:41:11 +02:00
def cb00a294b8 Enable gfx_opengl3 by default 2017-10-20 22:52:38 +02:00
def 02aeae416b Infinity = no limit 2017-10-20 22:47:59 +02:00
def 2b7809befd Switch cl_showfps 1/2 2017-10-20 22:27:53 +02:00
Redix 9289deb5c7 Stop ghost rendering when touching the start line again 2017-10-18 21:37:25 +02:00
Dennis Felsing d6999bb726 Merge "Pull Request using OpenGL 3.3" 2017-10-18 12:49:27 +02:00
Dennis Felsing cc9bcb5b9f Merge pull request #900 from Learath2/dd_pr_authname
Reset the username on disconnect
2017-10-18 12:43:08 +02:00
heinrich5991 dfc53b48cf Fix victim handling 2017-10-17 01:32:40 +02:00
Learath 9ae2c16235 Allow changing UsernameReq while connected 2017-10-16 20:08:39 +02:00
Learath 81135d17de Reset the username on disconnect 2017-10-16 20:01:33 +02:00
Jupeyy 5389dd9666 fix border amount for right and bottom border lines 2017-10-14 16:37:48 +02:00
heinrich5991 525b643e18 Fix a syntax error
Sorry. :/
2017-10-13 16:33:23 +02:00
heinrich5991 c439b04a2d teehistorian: Hide chat from teehistorian
There was a missing check that allowed chat messages to be written to
disk.
2017-10-13 16:25:26 +02:00
Learath2 4394933d6c Merge pull request #887 from heinrich5991/pr_ddnet_async
Add asynchronous output system and use it for teehistorian and `dbg_msg()`s
2017-10-13 15:30:24 +02:00
heinrich5991 e989ffad78 Rename async_* to aio_* and add test for nondivisible buffer lengths 2017-10-13 02:48:42 +02:00
heinrich5991 8e778cd9ab Address pull request comments 2017-10-13 02:29:18 +02:00
Jupeyy add339d210 not needed, because of restrictions before 2017-10-11 11:18:03 +02:00
Jupeyy 1814fa8d19 make OpenGL 3.3 experimental option, and don't initialize it as default 2017-10-10 15:35:20 +02:00
Jupeyy 4fc7187a14 adjust sprite texture coordinates to respect texel offset 2017-10-10 12:20:20 +02:00
Jupeyy 966b388b0e clamp speedup arrows images 2017-10-10 12:08:36 +02:00
heinrich5991 4d05a2379b Make teehistorian asynchronous 2017-10-10 04:11:14 +02:00
heinrich5991 be0b52eddc Fix teehistorian crash on startup 2017-10-10 02:39:29 +02:00
Learath2 d15dcd3c58 Merge pull request #871 from heinrich5991/ddnet_teehistorian
Teehistorian
2017-10-09 18:42:27 +02:00
Jupeyy 92edbf4d37 allow viewing average or current fps 2017-10-09 15:58:12 +02:00
Redix 134a79a225 Move RaceHelper to src/game/client 2017-10-06 22:13:35 +02:00
Redix 612fe15a32 Fix a possible issue with the ghost 2017-10-06 22:05:54 +02:00
Redix d4509111d5 Clean up ghost and race recorder 2017-10-06 22:01:33 +02:00
Redix 1638f39557 Use the same ghost path everywhere 2017-09-29 23:15:47 +02:00
Redix 245afcb4b2 Fix warnings 2017-09-28 19:27:15 +02:00
Redix 2586c001b7 Use demos/auto/race for the race recorder 2017-09-28 19:14:36 +02:00
Redix e9a0271c29 Improved ghost and race recorder file handling 2017-09-28 19:13:20 +02:00
Redix 66cc527af4 Do not restart ghost and race recorder when the race timer is turned on with /timer 2017-09-28 16:57:39 +02:00
Redix 0891ce2812 Use move instead of copy assignment operator for the ghost 2017-09-28 16:42:47 +02:00
Redix c832beca63 Remove 30 min limit from the ghost 2017-09-28 16:02:01 +02:00
Redix a3a82b6571 Move filename clearing function to base lib 2017-09-28 16:02:01 +02:00
Redix d37bb5e65a Fix ghost menu localization 2017-09-28 16:02:01 +02:00
Redix 0c6026c22e Hide ghost menu buttons if there are no ghosts 2017-09-28 16:02:00 +02:00
Redix 0b4d629dab Improved ghost memory management 2017-09-28 16:02:00 +02:00
Redix 216e5654e8 Added config variables for server controlled ghost and race recording 2017-09-28 16:02:00 +02:00
Redix 17f1978740 Use the race timer for the demo recorder as well 2017-09-28 16:02:00 +02:00
Redix 491cfdb93e A few fixes in ghost and race recorder code 2017-09-28 16:02:00 +02:00
Redix 1efa8023ea Use race timer for ghosts if available 2017-09-28 16:02:00 +02:00
Redix 4c8c546c35 Improved ghost start accuracy 2017-09-28 16:01:59 +02:00
Redix ac234ad3ee Write the correct player name into ghosts that are saved from menu 2017-09-28 16:01:59 +02:00
Redix ffaa077c72 Improved ghost skin handling a bit 2017-09-28 16:01:59 +02:00
Redix 456a67fe2d Start race recording immediately so we can also record the preparation steps 2017-09-28 16:01:59 +02:00
Redix 0721b895ae Make sure that we have a free ghost slot for new records 2017-09-28 16:01:58 +02:00
Redix 353190588b Disable ghost and race recorder during demo playback 2017-09-28 16:01:58 +02:00
Redix 1e845a4020 Added reload button in ghost menu 2017-09-28 16:01:58 +02:00
Redix 5b3e9e4bbf Improved ghost file management 2017-09-28 16:01:58 +02:00
Redix d09e825065 Use existing code for rendering the ghost 2017-09-28 16:01:58 +02:00
Redix 5cc0d16029 Reworked the race recorder 2017-09-28 16:01:57 +02:00
Redix 9e52957423 Only restart ghost and race demo on non-solo servers when crossing the start line again 2017-09-28 16:01:57 +02:00
Redix 1c377ed00f Added Fastcap support for ghost and race demo 2017-09-28 16:01:57 +02:00
Redix bd3e81d5e0 Use snapshot values instead of predicted ones for the ghost and also save the tick
This makes the ghosts more resistant against lags
2017-09-28 16:01:57 +02:00
Redix 3c8217b39c Mark own ghost with color 2017-09-28 16:01:56 +02:00
Redix 4f57b33524 Use static array for active ghosts
Improve ghost file handling
2017-09-28 16:01:56 +02:00
Redix c189678e44 Cleaned up the ghost component and made it use the ghost recorder and loader 2017-09-28 16:01:56 +02:00
heinrich5991 f16059c0b8 teehistorian: Add a couple of tests, fix uninitialized vars and asserts 2017-09-28 02:42:35 +02:00
heinrich5991 f43480aeed Add testing infrastructure for teehistorian 2017-09-28 02:03:30 +02:00
heinrich5991 1913106f15 teehistorian: Fix a bug with implicit ticks 2017-09-27 20:15:41 +02:00
heinrich5991 be79f14e38 teehistorian: Use m_pController->m_pGameType directly 2017-09-27 19:38:54 +02:00
Jupeyy baa69676ea fix warnings 2017-09-27 15:06:47 +02:00
Jupeyy 7aa547946b more warning fixes 2017-09-27 15:01:38 +02:00
Jupeyy 463944b143 fix code pattern mistakes and warnings 2017-09-27 14:52:06 +02:00
Jupeyy e820a36899 don't use average FPS 2017-09-27 12:21:29 +02:00
Jupeyy 6185c05be4 for tilelayers, go thorugh them layer by layer to reduce GPU overload by
only render visible areas
2017-09-27 12:20:23 +02:00
Jupeyy 9fd1290734 auto adjust font size for entity overlay 2017-09-27 12:19:39 +02:00
Dennis Felsing 5b05e558dc Fix grammar (thanks noby) 2017-09-25 09:07:12 +02:00
heinrich5991 9d5ba770e9 teehistorian: Only record non-default config vars 2017-09-24 21:11:04 +02:00
def b7f4ab4d80 Move comment 2017-09-23 22:49:01 +02:00
heinrich5991 3efa490cb7 teehistorian: Remove global buffer
This removes the possibility of the buffer filling up and discarding
data.
2017-09-20 02:23:28 +02:00
heinrich5991 9761e9606a Make most user input teehistoric
Exclude private stuff like chat messages and votes.
2017-09-20 02:23:28 +02:00
heinrich5991 6ef9c8dbcd First working version of teehistorian
teehistorian records all inputs from the players as well as the player
positions in each tick. It stores this info in a highly compressible
output format (I've achived 5x compression using xz or bz2).
2017-09-20 02:16:11 +02:00
def 03fa475b5e Implement /pause [name] and /spec [name] 2017-09-18 19:12:01 +02:00
Redix 43f246f174 Made int packing functions safe 2017-09-17 02:36:50 +02:00
heinrich5991 42934fe102 Remove statically detectable float divisions by zero
This should fix the warning in MSVS.
2017-09-16 18:34:26 +02:00
heinrich5991 9911759314 Revert "Don't divide by 0"
This reverts commit 03faa51e28.

Dividing floats by zero isn't undefined behavior and results in +inf or
-inf depending on the sign of the first operand.

	#include <math.h>
	#include <stdio.h>

	#define PRINT(x) printf("%s = %f\n", #x, x)

	int main()
	{
		PRINT(1.0 / 0.0);
		PRINT(-1.0 / 0.0);
		PRINT(atanf(1.0 / 0.0));
		PRINT(atanf(-1.0 / 0.0));
		return 0;
	}

prints

	1.0 / 0.0 = inf
	-1.0 / 0.0 = -inf
	atanf(1.0 / 0.0) = 1.570796
	atanf(-1.0 / 0.0) = -1.570796

The changed function was problematic for values like (0,1), (-1,0),
(0,-1) where it always returned an angle of 0°.
2017-09-16 18:33:10 +02:00
def 03faa51e28 Don't divide by 0 2017-09-16 12:06:07 +02:00
Dennis Felsing 43d0299a45 Merge branch 'master' into pr_ddnet_fix_msvs_warnings 2017-09-16 11:17:39 +02:00
Jupeyy fc706a820c only check gametiles for DDNet server type 2017-09-16 03:45:24 +02:00
Jupeyy 31844d3353 set max width for custom text texture upload and fixing alignments for
texture updates
2017-09-15 03:01:26 +02:00
Jupeyy 5c7c09d380 fixing most wrong code pattern 2017-09-13 20:33:58 +02:00
Jupeyy fd83d2834d dont draw layer if our view is out of the layers range 2017-09-12 23:16:01 +02:00
Jupeyy c437b5bb89 use 64 bit variable 2017-09-12 21:06:12 +02:00
Jupeyy 629bf2c5f9 Merge branch 'master' of https://github.com/ddnet/ddnet 2017-09-12 20:24:58 +02:00
Jupeyy 0caa70f0a1 support buffering of tile layers, draw them with the buffer objects and
some optimazations to border drawing
2017-09-12 20:22:18 +02:00
Jupeyy 9d2a625363 create overlay textures for entity overlays, instead of rendering glyphs 2017-09-12 20:15:37 +02:00
Jupeyy 6dc4d1e578 only allow a maximal zoom factor to make sure no bufferoverflow happens 2017-09-12 20:14:34 +02:00
Jupeyy 93138c1fba make background class inherited from maplayers and change some things in
maplayers instead, so the background class can profit from buffering
2017-09-12 20:13:53 +02:00
def 73d9ad7615 Really only download ddnet-info.json at correct time 2017-09-08 22:16:00 +02:00
def 715ac673ec Version 10.8.6 2017-09-08 22:01:51 +02:00
def c2c453bd45 Make sending name to info.ddnet.tw optional, show dialog at start and some minor fixes 2017-09-07 20:51:46 +02:00
heinrich5991 4d96090770 Fix MSVS warnings
```
warning C4291: no matching operator delete found; memory will not be freed if initialization throws an exception
warning C4305: truncation from 'double' to 'float'
warning C4805: unsafe mix of type 'bool' and type 'int' in operation
```
2017-09-06 10:54:29 +02:00
def 58d1294b3c oops 2017-09-03 23:50:27 +02:00
def d5fc3210fd Version 10.8.5 2017-09-03 23:46:58 +02:00
def 8b1470c31f Revert "Merge GAME_VERSION and GAME_RELEASE_VERSION"
This reverts commit 5cfd779c68.
2017-09-03 23:46:15 +02:00
def 4b39a39e10 Version 10.8.4 2017-09-03 19:30:29 +02:00
def 278c1ee198 Add Toggle ghost control (fixes #823) 2017-09-03 19:23:59 +02:00
def 5cfd779c68 Merge GAME_VERSION and GAME_RELEASE_VERSION 2017-09-03 18:54:43 +02:00
def caec69abc1 RequestDDNetInfo in ingame menu too 2017-09-03 18:17:21 +02:00
def 89ed22e8d8 Introduce ddnet-info.json
- Single json file containing all information for the client
- Fetched from https://info.ddnet.tw/info?name=deen
- Replaces versionsrv, news, ddnet-maps.json and ddnet-ranks.json
- Servers are sorted by most popular ones for respective player
- Always stays < 100 ms response time, compared to occasional 50 s for
  old ddnet-ranks.json
2017-09-03 17:42:04 +02:00
def f2a7f5f8dd User agent in http fetcher 2017-09-03 09:18:00 +02:00
def 0a09af4b33 str_format instead of sprintf 2017-09-03 09:01:25 +02:00
def 7b6317a5d6 buffer sizes 2017-09-03 08:53:54 +02:00
def 862e26dd08 Clean up time handling a bit 2017-09-03 08:48:21 +02:00
def e64e59a839 semaphore instead of busy waiting in CJobPool 2017-09-02 12:30:55 +02:00
Dennis Felsing f8b98c6366 Version 10.8.3 2017-09-01 08:01:45 +02:00
def f5edf53fd7 Version 10.8.2 2017-08-31 23:43:00 +02:00
def 9b214db85f Force version.ddnet.tw and update4.ddnet.tw 2017-08-31 23:28:10 +02:00
def e36d7ce9a1 Version 10.8.1 2017-08-31 22:07:43 +02:00
def 583421b42d Revert "fixed sprite rendering. Closes #834"
This reverts commit 43af1fdb5f.
2017-08-31 22:03:33 +02:00
def 97380494e6 Version 10.8 2017-08-31 19:24:17 +02:00
heinrich5991 659e1ff527 Merge pull request #853 from Redix/pr_ghost_time
Ghost and Race demo time extraction fix
2017-08-31 12:31:20 +02:00
Redix affa3faeec Only use integers for ghost and race demo handling
Ghosts still use floats internally
2017-08-31 03:22:08 +02:00
Redix cf09b6b08b Use -1 as invalid for time parsing functions 2017-08-31 01:13:26 +02:00
Redix a396e40c5e Move race helper functions to own cpp file
Fix some style issues
2017-08-31 00:17:16 +02:00
def 040fc9ca32 Implement right click and middle click on country and type filters
Right click: exclusively activate one
Middle click: reset (reenable all)
2017-08-30 22:36:39 +02:00
Redix b6a3a42aa6 Use the time parsing functions for race demo name parsing 2017-08-30 22:10:43 +02:00
Dennis Felsing eb2634ab0a Merge pull request #852 from heinrich5991/pr_ddnet_fix_extractname
Add testing; fix, rename and test the `CEditor::ExtractName` function
2017-08-30 22:09:17 +02:00
def a1d2ecb6de Empty when no rank 2017-08-30 21:50:09 +02:00
Redix f1f7e4e30b Fix ghost and race recorder time parsing 2017-08-30 21:44:27 +02:00
def 16f3ddc5a7 Show if user has rank on map in browser (+filter)
UI implementation by timakro
2017-08-30 21:34:04 +02:00
Dennis Felsing 25a5eff1f8 Merge pull request #847 from heinrich5991/pr_ddnet_uncompressed_datasize
Rename `GetUncompressedDataSize` to `GetDataSize`
2017-08-30 16:34:02 +02:00
oy 43af1fdb5f fixed sprite rendering. Closes #834 2017-08-30 16:32:39 +02:00
heinrich5991 22be1be389 Fix and rename the CEditor::ExtractName function
Fixes #846.
2017-08-30 13:59:42 +02:00
heinrich5991 2682480f8a Rename GetUncompressedDataSize to GetDataSize
Also rename the old `GetDataSize` to `GetFileDataSize`. `GetDataSize`
now returns the actual data size, not the data size before
decompression.
2017-08-30 08:36:17 +02:00
sctt 0849fa6024 fixing map_resave and adding map_replace_image
Update datafile.h

Update datafile.cpp

Update datafile.cpp

Update map_resave.cpp

Update datafile.h

Update map_resave.cpp

Update datafile.h

Update datafile.cpp

Update config_store.cpp

Update config_retrieve.cpp

Update io.cpp

Update gamecontext.cpp

Update config_store.cpp

Update CMakeLists.txt

Create map_replace_image.cpp

Update map_replace_image.cpp

fixing bug with height and witdth
2017-08-29 16:21:16 +02:00
def ac2943a49b utf8mb4 in database for real utf8 2017-08-26 09:00:33 +02:00
def fb252c4940 Fix compilation 2017-08-25 13:27:37 +02:00
heinrich5991 1ae004ba46 Make a copy of the input only after sanitizing it
This fixes a physics bug that allowed players to set their mouse
direction to (NaN, NaN), resulting in funny effects.
2017-08-25 13:20:10 +02:00
def 0e1cc205ef Fix formatting for server chat messages with time in already 2017-08-21 20:48:11 +02:00
def 98520bb407 other kind of fix 2017-08-19 09:36:13 +02:00
def d40dd4f362 Don't try next SQL server when /times returns empty 2017-08-19 09:32:14 +02:00
def 0b5dcdc478 Disable vsync by default and warn about possible delay 2017-08-08 19:53:16 +02:00
def 5d8a0ddc1e Add time in console 2017-08-04 22:38:22 +02:00
heinrich5991 33315452c3 Merge branch 'master' into leak_fix 2017-07-31 20:42:32 +02:00
def 0a28556481 A bit nicer birthday message 2017-07-31 18:24:16 +02:00
def d9aeeae3fc Fix sql_score.cpp formatters 2017-07-30 14:23:25 +02:00
def c12082c2ef Not too many messages 2017-07-30 14:15:45 +02:00
Learath2 4622ab4cb6 Merge pull request #814 from heinrich5991/pr_ddnet_fix_cmake_mac
Fix the CMake Mac build
2017-07-30 11:38:12 +02:00
def 7a3b7c6228 oops 2017-07-29 23:13:04 +02:00
def f3d4fcf012 Print message when team starts playing to team members 2017-07-29 23:11:33 +02:00
HMH d03e91153c removed unused Dest function for layers 2017-07-28 14:43:03 +02:00
heinrich5991 6247aa0c7f Enable -Wextra and -Wformat=2
Also annotate `dbg_msg`, `str_format` and `str_timestamp_ex` so that the
compiler can determine whether the format strings are correct.

Fix the compiler warnings generated by these extra warnings -- some of
them were security issues.
2017-07-27 20:38:17 +02:00
Marcel Herd d513af6a42 Removed default bind for home key (kill)
Kill is already bound to K by default, binding it on home as well doesn't really have any purpose. (?)
Furthermore, the home key is right next to page up which is bound to toggling entities.
It is very easy to accidentally hit home instead of page up, which is highly frustrating.. therefore I suggest removing this duplicate binding.
2017-07-26 20:43:26 +02:00
def adef38a574 Revert "We want the Timestamp of a team to stay min(Timestamp) to indicate the first time this team finished the map"
This reverts commit bf0e67a34a.
2017-07-26 18:12:41 +02:00
heinrich5991 fd8bccb0f4 Fix the CMake Mac build
Fixes #805.
2017-07-26 04:30:56 +02:00
def 379f060126 Version 10.7.1 2017-07-25 19:09:05 +02:00
def a9d3f45b25 Add ui_close_window_after_changing_setting 2017-07-25 19:08:16 +02:00
def 8d621dfc00 Add kitty skins (by Ravie + fuzzy ninja by patwo.*) 2017-07-25 00:11:37 +02:00
def a9498b15cb Fat skins 2017-07-25 00:11:37 +02:00
heinrich5991 1ebb4f89a6 Reopen: Add a flag for rcon login via username (#800)
This uses an extended protocol message to signal that rcon
authentication might require a username, allowing the client to enable
the username prompt.

Add a forgotten logout on key update
2017-07-24 21:43:55 +02:00
def cf08239e58 no plenk 2017-07-24 20:58:51 +02:00
def 147005ea42 ask before overwriting demo file when slicing (fixes #806) 2017-07-24 18:33:11 +02:00
def bcec0f1bb1 ctrl-f to search, ctrl-x to exclude, ctrl-r to reason 2017-07-24 18:05:19 +02:00
Dennis Felsing 402a71527a Merge pull request #810 from H-M-H/stat_csv
use str_append for appending strings
2017-07-24 16:01:06 +02:00
HMH f2ac4a02ce use str_append for appending strings
this fixes corrupted stat csvs as str_format does not work with same
source and destination
2017-07-24 15:27:30 +02:00
def 4c98c4bdd6 typo 2017-07-23 21:34:36 +02:00
def 79d29b1e31 Fix: Finish score should always show the fastest time 2017-07-23 21:33:55 +02:00
def bf0e67a34a We want the Timestamp of a team to stay min(Timestamp) to indicate the first time this team finished the map 2017-07-23 21:20:12 +02:00
def ec885f3e25 Fix layout 2017-07-22 22:43:20 +02:00
def af5b903944 Version 10.7 2017-07-22 22:32:35 +02:00
def f09a0f640f Fix mouse sensitivity setting dialog and introduce new one for ui mouse sens (#fixes 804) 2017-07-22 22:31:14 +02:00
def e37d895399 Version 10.6.9 2017-07-22 17:35:45 +02:00
def d50b39c530 Fix controls rectangle overlapping topbar and being clickable outside of scope 2017-07-22 17:35:30 +02:00
def fd732e43bd Version 10.6.8 2017-07-22 13:55:56 +02:00
def 2d68aed009 More settings in controls menu. use listbox (fixes #802) 2017-07-22 13:41:18 +02:00
def 7428dd0637 Editor: Don't show server settings when picker is active 2017-07-22 12:18:53 +02:00
HMH 476d57c5c5 Also cleanup CEditorMap on destruction 2017-07-21 20:02:46 +02:00
def b57ffa429e Use scancodes instead of keycodes for input (fixes #796, please test) 2017-07-21 19:53:49 +02:00
def 35befec54c Clean up key binding a bit 2017-07-21 19:32:32 +02:00
def f352daf00d Allow moving mouse while spectating and typing (fixes #798) 2017-07-21 19:24:18 +02:00
HMH 7b3aba8fdc fixed memoryleak in CCollision 2017-07-21 16:02:24 +02:00
def 5785267a39 Version 10.6.7 2017-07-16 23:54:22 +02:00
def 4a13d47637 Use update4.ddnet.tw... 2017-07-16 23:54:07 +02:00
def b05693e9cd Version 10.6.6 2017-07-16 12:00:37 +02:00
def 4a8f3b083d Use new update server that runs on Let's Encrypt 2017-07-16 11:46:38 +02:00
def e4364983ab Use https for map downloads by default 2017-07-16 11:29:10 +02:00
def f3a44995cf Don't stop movement after opening player list 2017-07-15 19:53:29 +02:00
def 440ee9397f Version 10.6.5 2017-07-15 19:01:17 +02:00
def 4b4f9992d4 Fix disappearing switches in editor 2017-07-15 18:11:01 +02:00
def 9a0706f8b1 Support ctrl-l to load map in editor 2017-07-15 18:08:34 +02:00
def fba3815ddc Only send password on connection when explicitly asked to (fixes #788) 2017-07-15 17:29:20 +02:00
def 9bf84fd4be Don't keep enabling input in menu all the time (fixes #706) 2017-07-15 15:37:05 +02:00
def a5bd671e55 Show X and Y coordinates in map editor 2017-07-12 20:25:48 +02:00
def 8b5ee98193 Handle input reset on chat correctly on DDNet servers and other servers 2017-07-10 22:24:40 +02:00
Dennis Felsing bcb30c860e Merge pull request #761 from Learath2/dd_pr_vanillapause
Can't spectate yourself when /pause'd
2017-07-09 23:15:57 +02:00
def 46cedf3a8c Compiler warnings 2017-07-09 10:27:58 +02:00
def 66f6f16e81 Windows DPI fixes #2 2017-07-09 09:44:07 +02:00