Commit graph

8662 commits

Author SHA1 Message Date
def 57e2905e24 Clean up econ stuff, don't need it 2020-09-10 20:13:01 +02:00
def 0f051def21 Fix cbSize for Windows 2020-09-10 20:13:01 +02:00
def 0aef743d7a Move News/Website/Wiki/Discord to bottom left 2020-09-10 20:13:01 +02:00
def 83d297a370 Server -> Econ (in preparation of the real change) 2020-09-10 20:13:01 +02:00
def 2ca613d982 Back -> Menu 2020-09-10 20:13:01 +02:00
def 90f3199d98 Implement opening server on Windows (reading autoexec_server.log not working yet) 2020-09-10 20:13:01 +02:00
def 33eefa449b Only run server when pressing R 2020-09-10 20:13:01 +02:00
def b2cfdc57eb Clean up top menus, add back button 2020-09-10 20:13:01 +02:00
def 4ca4449ee4 Use Storage for opening autoexec_server.log 2020-09-10 20:13:01 +02:00
def b522bbbb96 Localize the Learn link 2020-09-10 20:13:01 +02:00
def 9a5ee2cdbf Auto-bind F7 to show server console if it's free 2020-09-10 20:13:01 +02:00
def 2cdc7d0faf Adapt 0.7 start menu
- Working Local Server button (needs fixing for Windows)
- Highlight buttons if server is running, new news is out and editor has
  unsaved changes
2020-09-10 20:13:01 +02:00
bors[bot] d1aa014357
Merge #2793
2793: Add some more space for Countries & Types r=Learath2 a=def-

Since DDNet has too many locations now. A scroll wheel would be even better for the future if someone wants to implement that.

![screenshot-20200910@175801](https://user-images.githubusercontent.com/2335377/92758709-4ca55d00-f38f-11ea-924d-f13b998403f7.png)

Co-authored-by: def <dennis@felsin9.de>
2020-09-10 16:52:55 +00:00
def cddfd6836b Add some more space for Countries & Types
Since DDNet has too many locations now
2020-09-10 17:59:40 +02:00
Learath 1f261198a7 Don't search the sorted array linearly 2020-09-09 21:10:40 +03:00
def 279deffa86 Refresh server browser immediately when updated ddnet info arrived
At the moment it only happens the next time you press refresh.

Before we had it so that it always reloaded once the ddnet info arrived,
causing a quick flickering and lots of packets having to be resent every
time someone pressed refresh, even if nothing changed.

The new approach combines the advantages of both without the
disadvantages. An even nicer way would be to compare the json objects,
so that news and version updates don't matter, but our json library
doesn't seem to support that.
2020-09-09 17:51:32 +02:00
def 7bea697114 Add some keyboard shortcuts for demos 2020-09-08 11:42:52 +02:00
def 757998e7d0 Fix some 5:4 rendering in demo menu & recorder menu 2020-09-08 11:37:37 +02:00
def 7abe20175a Version 14.7.1, fix Mac build 2020-09-08 07:48:25 +02:00
def 9bbd7f6259 Improve performance of /points
No need to do the rank() calculation at all

by heinrich5991
2020-09-07 23:11:24 +02:00
def 9ef407fa13 Version 14.7 2020-09-07 18:04:46 +02:00
def 28cd437684 Document which commands only work in initial config (fixes #2773) 2020-09-07 12:31:00 +02:00
def a2b5d639a0 Fix duplicate teamranks (fixes #2405)
by ordering names in binary collation, consistent with C++ std::sort

Required since the official DDNet DB uses utf8mb4_general_ci default collation
2020-09-07 12:12:55 +02:00
def d492d6d270 Fix duplicate teamranks (fixes #2405)
by ordering names in binary collation, consistent with C++ std::sort

Required since the official DDNet DB uses utf8mb4_general_ci default collation
2020-09-07 12:10:23 +02:00
def 45457b6185 Bundle FFmpeg for everything
so that we can enable videorecorder by default

Works as expected.
2020-09-07 07:04:29 +02:00
bors[bot] cbc272fd5d
Merge #2758 #2769 #2772
2758: Remove the rudimentary fuzzing since no one uses it anyway r=heinrich5991 a=def-



2769: Update front.png by Soreu r=heinrich5991 a=def-



2772: Dont predict camera position on spectator changed r=heinrich5991 a=BannZay

No reason to predict camera position in case when we just changed spectator.
But tbh I have not found a big reason to predict it at all.

Co-authored-by: def <dennis@felsin9.de>
Co-authored-by: Andrii <bannzay3@gmail.com>
2020-09-06 23:25:16 +00:00
bors[bot] acea5bd955
Merge #2747
2747: Fix proof circle position in editor r=heinrich5991 a=def-

As reported by Ravie on Discord. Tee is not drawn exactly in center.

Co-authored-by: def <dennis@felsin9.de>
2020-09-06 23:19:01 +00:00
bors[bot] e3cfb23f28
Merge #2742 #2745
2742: Add str_utf8_copy that trim broken utf8 sequence at the end. r=heinrich5991 a=TsFreddie

Currently this replaces `str_copy` text input and clipboard paste in chat. Many places may need the same treatments, like steam names.

![image](https://user-images.githubusercontent.com/3797859/92263741-08b8e080-eed5-11ea-84a5-b7f070ded260.png)

Test string:
abcd今天是个好日子心想的事儿都能成今天是个好日子打开了家门咱迎春风今天是个好日子心想的事儿都能成今天是个好日子打开了家门咱迎春风今天是个好日子心想的事儿都能成今天是个好日子打

2745: Update mapres by mind r=heinrich5991 a=def-

Adapted from 0.7 for new renderer. Not sure if this makes sense :D

Co-authored-by: TsFreddie <tsfreddiewang@gmail.com>
Co-authored-by: def <dennis@felsin9.de>
2020-09-06 23:12:04 +00:00
bors[bot] 742ee9094c
Merge #2744
2744: Allow different timeouts for different downloads r=heinrich5991 a=def-



Co-authored-by: def <dennis@felsin9.de>
2020-09-06 23:05:57 +00:00
TsFreddie 05c199e2aa I can't count 2020-09-07 00:03:40 +01:00
Andrii 7069d26b5a dont predict camera position on spectator changed 2020-09-07 02:02:17 +03:00
TsFreddie e48596dc6c Add test cases 2020-09-06 23:57:21 +01:00
bors[bot] 85f8095295
Merge #2767
2767: Don't lock SQL writes r=Zwelf a=def-

The slow query logs are full of this:

    # Time: 200906 21:03:43
    # User@Host: teeworlds[teeworlds] @ ger6.ddnet.tw [89.163.212.120]
    # Thread_id: 101540  Schema: teeworlds  QC_hit: No
    # Query_time: 11.012166  Lock_time: 0.000000  Rows_sent: 0  Rows_examined: 0
    # Rows_affected: 0  Bytes_sent: 67
    SET timestamp=1599419023;
    LOCK TABLES record_teamrace WRITE, record_teamrace AS r WRITE;

Do we really need these lock? See also
https://dev.mysql.com/doc/refman/5.7/en/table-locking.html

> InnoDB tables use row-level locking so that multiple sessions and
> applications can read from and write to the same table simultaneously,
> without making each other wait or producing inconsistent results. For
> this storage engine, avoid using the LOCK TABLES statement, because it
> does not offer any extra protection, but instead reduces concurrency.

Co-authored-by: def <dennis@felsin9.de>
2020-09-06 22:49:26 +00:00
bors[bot] 297f2764f7
Merge #2764
2764: Prevent NULL pointer in mem_copy (fixes #2753) r=heinrich5991 a=Jupeyy



Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-09-06 22:42:29 +00:00
def f89766034c Don't lock SQL writes for teamrace
The slow query logs are full of this:

  # Time: 200906 21:03:43
  # User@Host: teeworlds[teeworlds] @ ger6.ddnet.tw [89.163.212.120]
  # Thread_id: 101540  Schema: teeworlds  QC_hit: No
  # Query_time: 11.012166  Lock_time: 0.000000  Rows_sent: 0  Rows_examined: 0
  # Rows_affected: 0  Bytes_sent: 67
  SET timestamp=1599419023;
  LOCK TABLES record_teamrace WRITE, record_teamrace AS r WRITE;

Do we really need these lock? See also
https://dev.mysql.com/doc/refman/5.7/en/table-locking.html

> InnoDB tables use row-level locking so that multiple sessions and
> applications can read from and write to the same table simultaneously,
> without making each other wait or producing inconsistent results. For
> this storage engine, avoid using the LOCK TABLES statement, because it
> does not offer any extra protection, but instead reduces concurrency.
2020-09-07 00:34:01 +02:00
bors[bot] d6a353f618
Merge #2763 #2768
2763: Allow joining and inviting others via Steam friend list r=def- a=heinrich5991

Fixes #2642.

2768: Clamp kill border count r=def- a=Jupeyy

fixes #2766

Appearently the center of the camera can even go outside of the kill border(like even left from it)

I also notice that sometimes when zooming out, and then in again the zoom level gets negative(since the new smooth zoom)(atleast i see everything upside down for few frames)

These numerical unstableness makes me sweat a bit xd

Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-09-06 22:23:19 +00:00
Jupeyy bfd24d7dd8 Clamp camera zoom 2020-09-07 00:19:38 +02:00
Jupeyy ebe5b51230 Clamp kill border count 2020-09-06 23:58:54 +02:00
TsFreddie 6b053936c7 str_utf8_copy using str_utf8_truncate 2020-09-06 20:58:26 +01:00
TsFreddie badc49cac7 Revert "Revert & use "str_utf8_truncate" instead"
This reverts commit b045a3d6ee.
2020-09-06 20:54:57 +01:00
def 1fd5c3ebc3 Try out higher mysql timeouts 2020-09-06 21:51:31 +02:00
Jupeyy aed4293040 Prevent NULL pointer in mem_copy (fixes #2753) 2020-09-06 18:32:56 +02:00
heinrich5991 435137d79e Allow joining and inviting others via Steam friend list while ingame
Fixes #2642.
2020-09-06 17:08:38 +02:00
heinrich5991 7162ded266 Fix formatting in CClient::Update 2020-09-06 15:43:02 +02:00
heinrich5991 89eb210297 Mark players on the same server as playing together in Steam 2020-09-06 13:38:03 +02:00
heinrich5991 f682a79d5f Make it possible to join via the Steam friend list 2020-09-06 13:37:48 +02:00
def b7da058b76 Remove the rudimentary fuzzing since no one uses it anyway 2020-09-05 23:50:31 +02:00
def 4c74efd93f Version 14.6.2 2020-09-05 19:25:15 +02:00
bors[bot] 7fd43163b7
Merge #2751 #2752 #2756
2751: More aggressive analysis & check 2.0 gl Functions that were used r=def- a=Jupeyy

If even that fails, I'm out of ideas

Checks all texture shaders, checks all functions used.

2752: Can't detect if paused on KoG, so don't show button r=def- a=def-

Since they're running an old version of DDNet server

2756: Don't deactivate menu when a popup is active r=def- a=Learath2

Deactivating menu while a popup is active causes the menu to never open again.

Reported by Anxton on discord.

Co-authored-by: Jupeyy <jupjopjap@gmail.com>
Co-authored-by: def <dennis@felsin9.de>
Co-authored-by: Learath <learath2@gmail.com>
2020-09-05 17:10:35 +00:00
def e162045026 Can't detect if paused on KoG, so don't show button
Since they're running an old version of DDNet server
2020-09-05 19:06:12 +02:00
Learath 9e35752d1c Don't deactivate menu when a popup is active 2020-09-05 18:13:32 +03:00
Jupeyy 89a6251ad7 Add message popup again 2020-09-05 16:54:20 +02:00
Jupeyy 7ca716fb3f Do more aggressive analysis and check all gl Functions that were used and added in 2.0 2020-09-05 13:07:25 +02:00
TsFreddie b045a3d6ee Revert & use "str_utf8_truncate" instead 2020-09-05 00:51:39 +01:00
def a496583a93 Fix proof circle position in editor
As reported by Ravie on Discord. Tee is not drawn exactly in center.
2020-09-04 23:57:21 +02:00
plsplsplslol 4326d00df9 fix style and reomved repeated code 2020-09-04 13:49:14 -07:00
def b7c3a6dfd8 Allow different timeouts for different downloads 2020-09-04 19:58:32 +02:00
bors[bot] b95ad532ee
Merge #2743
2743: Save cl_overlay_entities r=def- a=Jupeyy

Is there a reason not todo it?
The players, that want this enable it anyway

Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-09-04 17:33:44 +00:00
Jupeyy 145d3244db Save cl_overlay_entities 2020-09-04 19:16:28 +02:00
TsFreddie 44c699b812 Fix unicode pasting in DoEditBox 2020-09-04 18:03:08 +01:00
TsFreddie a3a363f665 C90 2020-09-04 17:48:18 +01:00
TsFreddie 92d08d07de add str_utf8_copy 2020-09-04 17:34:27 +01:00
def 2e29005549 Version 14.6.1 2020-09-04 18:23:43 +02:00
def 35a8aa5146 Revert "Don't time out on info2.ddnet.tw"
This reverts commit e936a86b5b.
2020-09-04 18:23:43 +02:00
Jupeyy 9299a2a1e4 Initialize variables from base class for the gl 3.3 class 2020-09-04 18:08:00 +02:00
Dennis Felsing dde40779fe
Merge pull request #2737 from def-/pr-ignore
INSERT OR IGNORE on sqlite
2020-09-04 16:27:20 +02:00
Dennis Felsing 27f8402755
Merge pull request #2735 from def-/pr-timeout
Don't time out on info2.ddnet.tw
2020-09-04 16:26:03 +02:00
bors[bot] e3b879f616
Merge #2736
2736: Let 0.7 clients fastdownload too r=def- a=Learath2

Easier than expected, I wonder why I didn't do this at the start.

Co-authored-by: Learath <learath2@gmail.com>
2020-09-04 14:17:32 +00:00
def c3f9dc7c9f INSERT OR IGNORE on sqlite 2020-09-04 16:12:12 +02:00
Learath b8242689c6 Let 0.7 clients fastdownload too 2020-09-04 16:45:49 +03:00
def e936a86b5b Don't time out on info2.ddnet.tw 2020-09-04 15:36:00 +02:00
def 80df6ca3b1 Remove temporary files after failure 2020-09-04 15:32:35 +02:00
Dennis Felsing 0d3489e0ef
Merge pull request #2732 from def-/pr-14-6
Version 14.6
2020-09-04 14:41:55 +02:00
bors[bot] 62e52b829e
Merge #2720
2720: Add buttons for Kill and Pause r=Learath2 a=def-

Seems more useful than Spectate and Connect Dummy, both of which are often mistaken by newcomers.
![screenshot-20200903@120548](https://user-images.githubusercontent.com/2335377/92101991-37a05b00-edde-11ea-8505-f1aaa275e18d.png)

Co-authored-by: def <dennis@felsin9.de>
2020-09-04 12:33:26 +00:00
def 69e6a8fa41 Add buttons for Kill and Pause
Seems more useful than Spectate and Connect Dummy, both of which are
often mistaken by newcomers.

Make button sizes more consistent

Hide buttons that make no sense
2020-09-04 12:39:53 +02:00
def 92766b796c Update cl_nameplates_friendmark documentation 2020-09-04 12:16:28 +02:00
bors[bot] f48ba92161
Merge #2718
2718: Fix texture destroy r=heinrich5991 a=Jupeyy

Might already help with #2717

Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-09-04 10:14:34 +00:00
def 3a730cc30d Version 14.6 2020-09-04 12:03:45 +02:00
bors[bot] 8704c1f1a3
Merge #2728
2728: Allow loading from any server r=Zwelf a=def-

Since we are switching to a single write sql server for sake of simplicity

Co-authored-by: def <dennis@felsin9.de>
2020-09-04 09:00:51 +00:00
TsFreddie f71c36285f Textrender: count glyphs and chars separately 2020-09-03 23:53:26 +01:00
def e613f7df7f Allow loading from any server
Since we are switching to a single write sql server for sake of
simplicity
2020-09-03 22:56:22 +02:00
bors[bot] 9edb3706dd
Merge #2721
2721: Don't update news when something was only removed r=heinrich5991 a=def-



Co-authored-by: def <dennis@felsin9.de>
2020-09-03 18:49:22 +00:00
def 0ba18cd891 Inform client about failure to join because of invalid utf8 2020-09-03 20:34:05 +02:00
bors[bot] e40e1866e2
Merge #2726
2726: Only send valid UTF-8 over the network r=def- a=heinrich5991



Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-09-03 17:13:10 +00:00
heinrich5991 5b669bcb32 Only send valid UTF-8 over the network 2020-09-03 18:50:23 +02:00
bors[bot] 53e03192dd
Merge #2722
2722: Increase default font texture size r=heinrich5991 a=Jupeyy

Now that we have fallback fonts this makes sense.

Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2020-09-03 15:38:45 +00:00
Jupeyy b0bd0a8c62 Increase default font texture size 2020-09-03 14:18:44 +02:00
def d6f74eb654 Don't update news when something was only removed 2020-09-03 12:32:13 +02:00
Jupeyy 6b3ad82786 Add shutdown command again 2020-09-03 11:49:47 +02:00
Jupeyy 49d2e36e26 Fix texture destroy 2020-09-03 10:46:15 +02:00
d3fault b5861f2857 add #ifdef check around GLEW_VERSION_4_6
This fixes compilation on Debian Stretch
2020-09-02 23:44:24 -07:00
bors[bot] 7a1d2c0f4e
Merge #2715
2715: Fix server responses handling in game browser r=heinrich5991 a=BannZay

Fixes all problems for #2620

Explanations of existed problems:
Lan has non expected servers because we were creating browser entry regardless token check
DDNet tab has ping 0 for servers as we weren`t rejecting previous refresh responses

Co-authored-by: Andrii <bannzay3@gmail.com>
2020-09-03 01:37:37 +00:00
Andrii 701bbab0bd refresh on max ping filter changed 2020-09-03 04:08:34 +03:00
bors[bot] dac3c782d3
Merge #2713
2713: allow empty max ping filter r=heinrich5991 a=BannZay

The inconvenieces I discovered so far:
1. You got to write 999 to "disable" this filter
2. If you try to clear this field and then type 75 then the field will contain 750 because the last zero is bugged at this point
Those are fixed

What I would like to be fixed as well (not sure if I gona do this soon):
1. Update browser servers live without refreshing. You press refresh - you receives all the servers and then you should be able (but currently not) to filter them out without pressing on "Refresh" button again but just by changing the max ping value

Co-authored-by: Andrii <bannzay3@gmail.com>
2020-09-03 00:37:47 +00:00
Andrii 840d8cb1a7 reset token seed on browser refresh 2020-09-03 03:03:22 +03:00
Andrii 836c56aeb5 create serverbrowser entry only after broadcast token check 2020-09-03 02:51:33 +03:00
Andrii b1d5538a96
fix style
Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2020-09-03 00:08:33 +03:00
Andrii a215e375db allow empty max ping filter 2020-09-02 19:26:26 +03:00
bors[bot] 197fe955e1
Merge #2674
2674: Add nameplates friend marks r=heinrich5991 a=BannZay

Problem: when I play with a friend in team 0, and there are many players nearby, I cannot distinguish him due to nameplates overlapping. It's getting worse when they are in freeze.

Solution: Mark your teammate as "Friend" and setup "cl_nameplates_friendmark"

Result:
![v2](https://user-images.githubusercontent.com/17499770/91647684-08988b00-ea66-11ea-9407-336437391b4f.png)


Co-authored-by: Andrii <bannzay3@gmail.com>
2020-09-02 16:12:15 +00:00
Andrii 271f0d8049 remove cl_nameplates_friendMark 2 2020-09-02 19:10:48 +03:00