Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.tw/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories β€” IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2021-05-27 00:00:00Z and 2021-05-28 00:00:00Z
Avatar
Oh 15.5
01:04
I haven't got time but I wanted to fix the interpolation on predicted pickups. It is really jittery in mods like monsters with predicted weapon on.
Avatar
@fokkonaut he talks about that because we already talked a lot with @heinrich5991 and some other people about some other way to secure the connection instead of what it is actually (tcp as connection was an example, then udp for ingame data)
Avatar
There are some texts that haven't been translated into Simplified Chinese.

Checklist

  • [y] Tested the change ingame
  • [n] Provided screenshots if it is a visual change
  • [y] Tested in combination with possibly related configuration options
04:40
04:40
do server needs to be updated for pings?
04:42
it does take about 2-3 seconds to fetch the serverlist here which is a bit upsetting.
05:05
ok it's not that slow i guess
07:01
c1aefd5 Update simplified_chinese.txt - MollySophia a9679a3 Update simplified_chinese.txt - MollySophia 6fc640d Merge pull request #3847 from MollySophia/patch-1 - def-
07:05

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test if it works standalone, system.c especially
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--u...
Avatar
@TsFreddie the file is downloaded over cloudflare, i guess it doesn't work that great from china?
07:15
cloudflare isn't very fast nor stable here
Avatar
Uploading the file every 5 seconds to a chinese server might help, but then we have lots of continuous bandwidth
07:16
similar to the map downloader
Avatar
is the master just heinrich's rust browser
07:19
the master json file*
Avatar
it's in libtw2 i think, yes
Avatar
then we already have it setup
Avatar
so you want to run another scanner?
07:21
ok, adding master2.ddnet.tw might be an alternative
07:21
@heinrich5991 would that work well? ^
Avatar
i pretty much "stole" it day1 for the html browser thingjustatest
Avatar
@TsFreddie btw, how fast was the normal/old server info?
07:36
for me 2 seconds would still be much faster than the old one
Avatar
Avatar
TsFreddie
I haven't got time but I wanted to fix the interpolation on predicted pickups. It is really jittery in mods like monsters with predicted weapon on.
thanks!! make it a gameinfoex flag
Avatar
for ddnet tab is pretty much instant tho.
Avatar
Avatar
TsFreddie
Click to see attachment πŸ–ΌοΈ
same
Avatar
maybe you just have fast internet
Avatar
maybe
07:38
also for the old serverlist, chn servers is usually ponged first, so it is pretty fast visually even though the entire list isn't finished yet.
Avatar
Avatar
fokkonaut
same
got this everytime I tried to run my self compiled 15.5
Avatar
Avatar
fokkonaut
got this everytime I tried to run my self compiled 15.5
i run it a few time and that was gone for some reason.
Avatar
weird
07:40
it led me to serverinfo.cpp
07:42
this was the line where it said it crashed
Avatar
PrevPredictedWorld is copied more frequently than snapshots so the position of pickups isn't interpolated unless it is moved by movers which happens in predictedworld. So, fallback to the normal path if mover is not present would fix jittery motions of pickups in mods like monster.
  • [x] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test if it works standalone, sys...
Avatar
@TsFreddie what about weapon predicting? Or should I do so?
Avatar
like weapon behavior or pickup weapons
Avatar
weapon predicting, the shots
08:04
give me a second
08:04
I would want that before 15.5 too
Avatar
the infinite laser thing?
Avatar
For example
08:07
I think best would be with individual PREDICT_RIFLE gameinfoex flags
08:07
or, ddnetcharacter flags
08:07
one of these, but i think it fits more to the gameinfo
08:19
769970b Only predict pickup if affected by movers - TsFreddie 5ef6544 Merge #3849 - bors[bot]
Avatar
@TsFreddie @heinrich5991 I'm wondering if we should use a new server for CHN master2 or an existing gameserver one
Avatar
@deen when finishing its still minute:second format in chat
Avatar
Yes, and we can't change that since client uses that for race demo recording
Avatar
Our existing libtw2 scanner is running in a hk server btw.
10:27
hongkong*
Avatar
#gentoo took the nuclear option, kicked everyone out of their channel so freenode can't just take it over and pretend it's still the official channel
Avatar
what happened to freenode
Avatar
Libera Chat, stylized Libera.Chat, is an IRC network for free and open source software projects. It was founded on 19 May 2021 by former Freenode staff members, after Freenode was taken over by Andrew Lee, founder of Private Internet Access.
Avatar
Opinions? Someone on Discord just had the issue that a gameplay on FNG wasn't recorded. I think keeping the last 10 demos around isn't too expensive disk-wise.

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test if it works standalone, system.c especially
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed n...
Avatar
@deen yes, adding a master2.ddnet.tw for china seems like a good idea
13:34
if you choose an existing game server, it'll go down when it's DoSed
13:34
but it should fallback to the cloudflare one if you click 'refresh'
13:34
so it might be acceptable
13:35
as for running another scanner, I'd prefer to upload the server list from master1.ddnet.tw to china
13:35
that's less continuous traffic for all game servers in tw 0.6 & 0.7
13:36
@deen @TsFreddie I can try setting it up on a chn server, which one should I use?
Avatar
we have a hongkong server for api and stuff
13:38
which is also behind a chinese cdn
13:39
how often would you upload the list tho. if it is like 30 seconds, we can just setup a cache on our cdn
Avatar
every second
Avatar
let me check which server has more left over bandwidth (the data one, not the concurrent one)
Avatar
ye, maybe just chn1. the smaller ones has about 200gb per month data cap leftover. 70kb compressed every second is cutting it pretty close.
13:53
or the hongkong one which we are running it for teeworlds.cn/browser anyway.
13:54
πŸ˜… or just not, that's an option too, if it gets complicated.
Avatar
Use vector.data() instead of &vector[0] to get access to the underlying array. Fixes #3850.

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test if it works standalone, system.c especially
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the ch...
Avatar
@TsFreddie it's just a couple of kilobytes per second, since the data is very redundant after the first send
13:58
definitely <10KB
13:58
@TsFreddie but inbound data traffic usually isn't counted, is it?
13:59
or are you talking about delivering it to players?
Avatar
i think the cheaper server does count inbound. let me double check
14:01
ok it is weird. but you are mostly right, the 200gb is for outbound, for inbound there is a separate cap that is not visible in the control panel hmm
14:01
but i think it means usually fine then.
14:02
we can hook up a cdn for delivery, but the bandwidth between the instance and cdn is still counted, so basically the same without one.
Avatar
I don't know how the cdn works
14:03
does the cdn contact you? or do you need to provide updates to the cdn?
14:03
cloudflare contacts the origin server, e.g.
14:03
cloudflare is instructed to cache for up to a second
Avatar
the cdn contact the server.
14:05
let's forget about the cdn actually πŸ˜… . it might not even work, since they the server and cdn are from two competing providers.
14:09
let just say where you want it, hongkong or mainland.
Avatar
tell me what's best
14:09
you reported a problem accessing the current master
14:10
which of these options would best resolve that issue?
Avatar
then mainland probably.
14:12
but i am curious how fast japan and korea can fetch the current master
Avatar
jap2.ddnet.tw can fetch the serverlist in 1.5s
14:14
quite slow
Avatar
so maybe hongkong would be better off for the entire asia region
Avatar
does hongkong work for mainland china as well?
Avatar
ye, i bought it from tencent. it won't be blocked unless we are running proxy or something
14:16
it might not be instant, but i can fetch our current scanner in 0.5s
Avatar
I'm seeing ~600ms responses for jap2.ddnet.tw
14:21
if I point the dns record master2.ddnet.tw at this IP address, can you host the servers.json in /ddnet/15/servers.json?
Avatar
i can
Avatar
is that api.teeworlds.cn a game server? or some other non-ddnet-hosted server?
14:22
if it's the latter, I'd wait for deen's confirmation
Avatar
it's an api server for teeworlds.cn stuff and our kaiheila bot
14:23
so not a game server
Avatar
@deen is it fine if I point master2.ddnet.tw to that api.teeworlds.cn server?
Avatar
cache.sqlite3 instead of ddnet-cache.sqlite3 and serverlist_urls.cfg. I remember fixing this, so I should take a look where the commit got lost.
Avatar
btw api.teeworlds.cn is behind a cdn already.
Avatar
i think i'm gonna have to take a rest today. DM me if you need anything from my part.
Avatar
@heinrich5991 sure
Avatar
@heinrich5991 added it myself now. @TsFreddie https://master2.ddnet.tw/ddnet/15/servers.json is showing a security warning
Avatar
@heinrich5991 does 124ms sound about right?
Avatar
"Warning: Potential Security Risk Ahead"
15:37
nasa hackermans
15:37
monkalaugh
Avatar
@TsFreddie should probably create a CSR for master2 we can get signed with let's encrypt on ddnet.tw
Avatar
039f2c6 Fix (harmless) array OOB access when no pings were cached - heinrich5991 dbf1624 Merge #3852 - bors[bot]
Avatar
@Learath2 @TsFreddie you should be able to install certbot on your server and obtian a certificate yourselves
16:04
@Learath2 124ms sounds about right, cloudflare had some non-optimal performance
Avatar
hm, I guess the acme challange does work like that
Avatar
@heinrich5991 if cloudflare is not so great, we could also add a master3 without cloudflare. I don't know if cloudflare adds much security for non-browser usage anyway
Avatar
I think the performance is good enough to not justify the extra complexity for a master3 for now
Avatar
done ir
16:15
it*
Avatar
I need a csv file for location tho don't i
Avatar
So in china it should now automatically choose your server? I get: [2021-05-27 18:16:23][serverbrowse_http]: determined best master, url='https://master1.ddnet.tw/ddnet/15/servers.json' time=41ms
16:17
Your server is a bit slower πŸ˜„ [2021-05-27 18:16:23][serverbrowse_http]: found master, url='https://master2.ddnet.tw/ddnet/15/servers.json' time=1593ms
Avatar
I'll try tomorrow. I'm in bed with my Mac currently.
Avatar
Oh, and I hope you don't pay much for bandwidth, everyone will now download this file all the time
Avatar
If it doesn't use over 700gb per month then it is fine
Avatar
should be fine
Avatar
if you have compression enabled on your web server
Avatar
oh right I should.
Avatar
ddnet.tw is using ~2 TB / month but I don't know how much of that is the master info
Avatar
caddy seems to only have zstd and gzip compression. I've enabled both of them.
Avatar
Works: Transferred: 58.30 KB (398.88 KB size)
Avatar
nice
16:27
@heinrich5991 where can I get a csv geoip data for stats_browser
Avatar
@TsFreddie I put it here temporarily: https://master1.ddnet.tw/locations.csv
Avatar
grabbed
Avatar
@TsFreddie if it eats too much data, you can simply remove the file and stop the stats_browser (but don't leave a stale file there, that confuses clients)
Avatar
@heinrich5991 engine/shared/serverinfo.cpp:L143 couldn't you use an std::tie here to make this prettier?
Avatar
looks like it, I didn't know std::tie
Avatar
c++ std lib is endless
Avatar
@heinrich5991 you used std::min in 2 places, doesnt compile on windows, you should use minimum
Avatar
This all works surprisingly well btw, but I can already see people crying about not having the ping
Avatar
see #general
16:51
I messed up with rebasing though
16:51
I forgot to push after doing some fixes
Avatar
oh its c++ way of unpacking
Avatar
now I need to find the differences between the merged version and my newest one
Avatar
very beutiful
Avatar
@fokkonaut I see no reason to use minimum over std::min. it seems to compile on windows in the CI. can you share the compile error? am I missing an #include?
Avatar
Probably missing an include for MSVS (edited)
16:52
probably stdio
Avatar
We should probably use std min everywhere
Avatar
Avatar
heinrich5991
@fokkonaut I see no reason to use minimum over std::min. it seems to compile on windows in the CI. can you share the compile error? am I missing an #include?
Codestyle in ddnet
Avatar
Avatar
Learath2
We should probably use std min everywhere
and I see no reason for THAT
Avatar
Because clang is smarter than us?
Avatar
also see no reason why min and max got renamed to the long versikn
Avatar
fokkonaut is better than the engineers who made std::min
Avatar
because they conflicted with the standard library
Avatar
Avatar
fokkonaut
also see no reason why min and max got renamed to the long versikn
That one is easy, not the std lib it was conflicting with winapi
Avatar
@Ryozuki structured bindings are the more modern way to unpack
Avatar
Winapi has a weird macro definition somewhere from windows 95 days conflicting with min
Avatar
ima look that up
Avatar
but why doesn't it conflict with std's min?
Avatar
namespace
Avatar
Because only god knows how msvc handles that mess
Avatar
macros don't have namespaces
Avatar
Ah true
Avatar
Avatar
deen
@Ryozuki structured bindings are the more modern way to unpack
can u avoid using auto for this?
Avatar
everything in rust is auto @Ryozuki πŸ˜‰
Avatar
u can explicitly give a type
Avatar
Avatar
deen
@Ryozuki structured bindings are the more modern way to unpack
if only we could go up to C++17 πŸ˜„
Avatar
i wonder if clangd is as good as rust-analyzer in type inference
Avatar
I always used it with auto, but yeah, types are annoying to infer
Avatar
Avatar
Learath2
if only we could go up to C++17 πŸ˜„
whats stopping us
16:58
some debian 6 machine?
16:58
or was it centos
Avatar
probably my official linux builds
Avatar
I think it was a "fairly new" ubuntu stopping us
Avatar
i dont think it was that
Avatar
I kind of hate the idea but maybe we should start doing flatpaks for linux
Avatar
i think its cuz deen needs to build on old machines for max compat
Avatar
There should be a github issue about it
Avatar
we have 334 issues
17:01
maybe we can do a cleanup
Avatar
My email with subject "Test" gets flagged as spam, "β€œRed Soda” burns 3 LBs every 5 days..!" Doesn't .......
Avatar
@deen maybe you should write the security whys on #announcements so we can refer ppl to that
17:09
instead of repeating ourselves 30 times
17:09
monkaS
Avatar
Avatar
Learath2
I think it was a "fairly new" ubuntu stopping us
standard support for ubuntu 16 ended a few weeks ago, so lets go xd
Avatar
Fixes alignment issues for CVoteOptionServer. I used a default parameter so everything should be (wastefully) aligned at the very least. Maybe in the long term we can look to get rid of usages of memheap. Should be careful to not replace it with just malloc though since in many uses of the memheap we have it would cause a lot of fragmentation leading to (ithink) cache misses and wouldn't play along well with prefetch.

Checklist

  • [x] Tested the change ingame
  • [ ] Provided scre...
Avatar
7e95911 Fix alignment for CVoteOptionServer - Learath2 25f0154 Merge #3854 - bors[bot]
Avatar
[freenode] Zwelf[m] BOT 2021-05-27 19:17:19Z
@Learath2: I would activate the matrix<->discord bridge from the matrix side. are you there to reponse to it on discord?
19:17
btw I am now also on discord: Zwelf#8146
Avatar
@Learath2 ^
Avatar
matrix-appservice-discord-t2bot BOT 2021-05-27 19:31:48Z
@zwelf:matrix.org on matrix would like to bridge this channel. Someone with permission to manage webhooks please reply with !matrix approve or !matrix deny in the next 5 minutes.
Avatar
@Learath2 this is the message to reply πŸ™‚
Avatar
!matrix approve
Avatar
matrix-appservice-discord-t2bot BOT 2021-05-27 19:32:52Z
Thanks for your response! The matrix bridge has been approved.
Avatar
so are we matrix-enabled now? πŸ˜„
Avatar
There seems to be a delay to matrix.org (other homeservers are working fast), might be related to the downtime today (status.t2bot.io)
Avatar
Test message from matrix (does it relay to irc)?
Avatar
[quakenet] heinrich5991 BOT 2021-05-27 19:36:21Z
yes, does
Avatar
nice πŸ™‚ (<@749222324980416602_=5bquakenet=5d=20heinrich5991>)
Avatar
that looks a bit weird
Avatar
lol mentions are funny
Avatar
Avatar
zwelf
nice πŸ™‚ (<@749222324980416602_=5bquakenet=5d=20heinrich5991>)
how does this look
Avatar
okay xD I see
Avatar
in the other direction the reply is missing :(
19:38
The room is #ddnet:matrix.org
Avatar
hm, can there be an indication that the message is from matrix?
19:39
like e.g. putting [m] in front of the name?
Avatar
Change filename serverlist_urls.cfg β†’ ddnet-serverlist-urls.cfg, change filename cache.sqlite3 β†’ ddnet-cache.sqlite3, add const to a variable and change pings to just before multiples of 100. Fixes #3853. Also remove unused parts of the new serverinfo.

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test if it works standalone,...
Avatar
Doesn't seem to be supported by this bridge, sorry
Avatar
make sure u cant @everyone again
Avatar
@​everyone does this ping everyone?
troll 1
Avatar
what a brave way to test it lol
21:06
bfef7c9 Add forgotten commit data from #3772 - heinrich5991 f5e91ba Remove unused parts of the new serverinfo - heinrich5991 1674a95 Merge #3855 - bors[bot]
Avatar
QUIC: A UDP-Based Multiplexed and Secure Transport (RFC )
23:03
QUIC is now an RFC
Exported 250 message(s)