Guild icon
Teeworlds
IRC / bridge
One-way IRC channel bridge. If you want to be able to send messages to IRC, contact @Dune or @heinrich5991. https://www.teeworlds.com/?page=docs&wiki=rules/irc_rules
Between 2020-03-26 00:00:00Z and 2020-03-27 00:00:00Z
Avatar
[quakenet] Learath2 BOT 2020-03-26 14:32:30Z
@LordSk 🦋 what do you need for #2503?
Avatar
Learath2: have you wrangled with openssl before?
14:34
do you know how to get the error message for a connection?
Avatar
[quakenet] Learath2 BOT 2020-03-26 14:34:12Z
very little
Avatar
on the network I see that the client says "Unknown CA", but I was unable to even get that message locally
14:34
I'm trying to find out why this application (writtten in python with twisted which uses pyopenssl) tells me that my certificate is invalid
14:35
but all I get is "invalid certificate"
14:35
(certificate works for nginx&firefox) (edited)
Avatar
[quakenet] Learath2 BOT 2020-03-26 14:35:22Z
SSL_get_error
Avatar
ty, will check
Avatar
[quakenet] Learath2 BOT 2020-03-26 14:36:02Z
call it after the call that fails
14:37
does the certificate include all the intermediaries?
Avatar
except root, I think so
14:37
can't get openssl verify to work on it, but I don't know if it's unrelated
14:37
(firefox accepts it behind an nginx)
Avatar
Learath2: there is a section #if 0'd out that needs fixing
14:38
Also testing old map formats
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:03:14Z
@LordSk 🦋 why are you using a sparse array?
Avatar
So IDs are not a pain to deal with
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:23:18Z
okay we can save maps now
Avatar
wow that was quick 😄
15:34
I'll look at both the PRs as soon as I can
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:34:19Z
Learath2 what do you think about sending the server list in msgpack format instead of json
15:36
HTTPS Teeworlds master server implemented in Go. Contribute to Ryozuki/teeworlds-master-server development by creating an account on GitHub.
15:36
wip
Avatar
I'd say: do json first and later add msgpack as an optimization if needed
15:37
json is ubiquitous, msgpack is not
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:37:47Z
well, i currently save the cached list on memcached with msgpack and i respont to http with json
15:38
but i like msgpack :p
Avatar
^^
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:41:43Z
I vote json too, it's verypopular :)
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:43:18Z
msgpack is more efficient tho
15:43
"It's like JSON but fast and small."
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:45:41Z
Yes, but do we need the efficiency and is it a worthwhile tradeoff (for other applications querying the masters json is easier to handle)
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:46:01Z
msgpack is widely adopted
15:46
nodejs has a lib for it
15:46
c has a lib for it
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:46:15Z
I thought you were all for the fancy newfangled userfriendly stuff
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:46:16Z
any major lang has it
15:46
im all for new stuff
15:46
if its userfriendly or not its another thing
15:46
but i dont think its that unfriendly
15:46
its just not visible in the plain eye
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:47:11Z
we already have one serialization library in the tw code and js clients wouldn't even need a library to read json
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:47:28Z
well its fine http responses will be in json
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:47:44Z
Well it's up to you, you are the one implementing it but I highly doubt anyone else would agree with the decision
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:47:53Z
ye thats why im not doing it
15:47
and why i ask here
15:48
altho i doubt it will be adopted even if its good
15:48
i still have little faith in tw progress
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:49:03Z
well we'd definitely adopt it for ddnet
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:49:18Z
:)
15:49
Learath2 can you explain me how the token stuff works
15:49
i currently only require the server to send a heartbeat
15:49
every x seconds
15:50
but i dont allow it to be send too early tho
15:50
to prevent spam
Avatar
there were already efforts for HTTP masters by heinrich5991, but he stopped working on that afaik
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:50:23Z
let me check how I implemented it
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:50:42Z
i want to know, why is a token needed
Avatar
token where? tw connect?
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:51:31Z
im talking about master server and server relationship
Avatar
ah
15:52
I can see two places for tokens: forward check and ipv4/v6 registration
15:52
ipv4 and ipv6 of a server should be associated with the same server entry
15:52
and the server could send a token to show that it's the same server
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:52:39Z
oh I never pushed that half of the code
Avatar
forward check: the master server tries to send a token to the game server
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:53:02Z
heinrich5991 why they need to show they are the same server tho?
15:53
clients still want the 2 entries
15:53
ipv4 and ipv6
Avatar
no, client wants one entry
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:53:20Z
learath told me another thing
Avatar
and connect to whichever is available
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:53:34Z
what if both are available
Avatar
then take any, probably preferring ipv6?
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:53:56Z
what if the client doesnt have ipv6 support
Avatar
you just said that both are availabel
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:54:12Z
One "serverlist entry" has an ipv4 and an ipv6 field
Avatar
the client chooses the one they can access (edited)
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:54:20Z
the client decides what to use
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:54:33Z
ok
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:54:44Z
I think the tokens I implemented with the fwcheck
15:55
The server registers without a token, waits for the fwcheck, the master provides the token while doing the fwcheck, after that you have to use the token on every packet
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:55:49Z
heinrich5991 why the master server should send anything to the server?
15:56
shouldnt the server be the one interested in a heartbeat
15:56
u can just timeout servers
15:56
after x time
Avatar
to check that port forwarding works correctly
15:56
to check that clients can connect
15:56
otherwise people will get serverlist entries where they can't connect
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:56:40Z
i see
15:57
the request is udp then i guess
15:57
to the game server
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:57:20Z
I don't remember what was my contingency plan if the fwcheck never gets there though
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:57:32Z
whats fwcheck?
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:57:45Z
it's the message the master sends to the server to check connectivity
Avatar
[quakenet] Ryozuki BOT 2020-03-26 15:57:51Z
ok
15:58
HTTPS Teeworlds master server implemented in Go. Contribute to Ryozuki/teeworlds-master-server development by creating an account on GitHub.
15:58
so this is the checklist i guess
15:58
anything else to add?
Avatar
[quakenet] Learath2 BOT 2020-03-26 15:59:42Z
clients shouldn't request which ip they want, clients should get both, just let them figure out what to do with it
Avatar
[quakenet] Ryozuki BOT 2020-03-26 16:00:25Z
ok
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:00:52Z
btw I love how everyone keeps starting this project again when I have a fully working prototype we could all try cleaning up :P
Avatar
tbf I already had a couple of prototypes 😛
Avatar
[quakenet] Ryozuki BOT 2020-03-26 16:02:07Z
i think golang is perfect for this
16:02
it has rly good concurrency support
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:02:16Z
well I guess none that you liked enough to share :)
Avatar
yes
16:02
@ Learath2
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:02:55Z
the only issue with go is that you are the only one that knows it
Avatar
my master was a flask app 😛
Avatar
[quakenet] Ryozuki BOT 2020-03-26 16:03:32Z
Learath2 reading someone else code is always a hasle :p
16:03
but you did it in python right?
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:03:44Z
mine was in flask too
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:04:16Z
eh, it's not much trouble to reimplement it in some other language if you suddenly disappear or stop contributing :P
Avatar
[quakenet] Ryozuki BOT 2020-03-26 16:04:24Z
what about the python GIL
16:04
u can never achieve real threading in python
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:06:02Z
Well depends on how long you hold the GIL, a long operation happening would definitely be trouble
Avatar
[quakenet] Ryozuki BOT 2020-03-26 16:06:34Z
Learath2 u should learn go :p its one of those langs thats its rly easy to pick up
Avatar
[quakenet] Learath2 BOT 2020-03-26 16:10:55Z
I think twisted also avoids the gil issue by holding the lock in very short intervals and doing it's processing while not holding it
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:22:26Z
okay, I think I have one more in me, anyone need anything fixed?
Avatar
@LordSk 🦋 :p
17:27
I guess you had enough with the UI Learath2 :D
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:27:28Z
Well better when I'm warmed up with the UI code then later :P
Avatar
I experience getting banned regularly when restarting the client for a setting to take effect. Would it be possible to make this condition more gentle?
17:29
I wanted to finish 2242 before 074 but it had bugs
17:30
(a simple version, # prefix means option is not votable, and displays different background and indent level)
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:45:01Z
huh, that seems quite trivial to implement
17:46
I mean the way you mentioned, you can ofc go veryoverboard with it
17:47
I don't quite like the way votes are implemented to begin with though, why are we sending the entire thing when the id of the vote would be enough?
Avatar
Yes those are simple issues, still need to be done ^^
17:48
What about this? Patch I applied in my mod, originally introduced in ddnet in 0.6
Avatar
What does it do?
Avatar
Fixes the stressing network thing
17:48
I mean, solves it in a better way
17:49
you can try it live on my server, just enter multiple times
Avatar
The issue is about a client side fix
17:49
But server side is nice too
Avatar
I wouldnt do a client fix, that can always be abused by modders
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:50:38Z
@Dune you care about backwards compatibility right?
Avatar
Just don't reenter servers too fast
17:50
Yes Learath2
Avatar
it happens often by accident @Dune
Avatar
But displaying a # for server titles is something people already do
17:51
@fokkonaut hence the client side fix
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:52:16Z
@Dune would you mind if I keep the old vote system in, code a new one and make the server translate the old messages to new ones if it receives it
17:52
we can drop the old message god knows when though
Avatar
That sounds overkill to me though
17:53
What would the benefits of this new system be?
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:53:06Z
It really bugs me that I can't clean this up :D
17:53
less data over the wire?
Avatar
I'm not sure, is that significant?
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:54:13Z
This mess of string comparisons is really easy to break tbh
Avatar
I try to be careful with refactors, should poke Oy about that separate issue
17:54
ensures unicity of votes by design too
Avatar
[quakenet] Learath2 BOT 2020-03-26 17:55:01Z
Yeah, I'll go ahead and do it with #s for now, there is no way I get Oy to accept a vote refactor that comes with a lot of compatibility code
Avatar
what point is there for vote uniqueness?
18:51
people formatted their votes in a certain way, with sections etc.
18:51
vanilla purposefully broke that, only leading to people working around it
18:51
(thankfully, I haven't seen any recent willful breakage)
Avatar
[quakenet] Learath2 BOT 2020-03-26 18:53:00Z
okay, I got it functional but I'm no ui magician
18:53
@Dune how would you like the subheaders to be rendered?
Avatar
The way you like it best :) Im not good at UI design
Avatar
[quakenet] Learath2 BOT 2020-03-26 18:57:40Z
Yeah that's what I was scared of :P
Avatar
[quakenet] Learath2 BOT 2020-03-26 19:06:48Z
eh, it kinda looks ugly on older clients
Avatar
some servers currently use that convention though? like
19:11
# Scorelimits
19:11
20
19:11
50
Avatar
[quakenet] Learath2 BOT 2020-03-26 19:14:40Z
You'll see what I mean when I create the pr
Avatar
[quakenet] Learath2 BOT 2020-03-26 20:32:09Z
@Dune do you think #2518 is a satisfactory fix or do you still clientside foolproofing aswell?
20:32
s/still/still want/
Avatar
I'll look in a while
Avatar
@learath2, i would also add the netlimit
Avatar
ChillerDragon 2020-03-26 21:47:53Z
when opening chat and pressing uparrow i really expect it to even repeate last chat commands :/
Avatar
[quakenet] Learath2 BOT 2020-03-26 22:01:59Z
@ChillerDragon I opened a PR for it
22:02
trying to fix a stupid SDL bug and I'm disassembling AppKit again, why must they obsecure everything?
Avatar
ChillerDragon 2020-03-26 22:07:36Z
ah awesome thanks Learath
Avatar
[quakenet] Learath2 BOT 2020-03-26 22:49:45Z
amazing, switching to fullscreen completely fails so SDL returns that it succeeded, because even though the transition to fullscreen never ends the application is convinced it's in fullscreen
22:50
if you slow it down enough through a debugger though it does work
22:51
completely breaks the mouse clicks though
Exported 187 message(s)