Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.org/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 2024-07-04 00:00 and 2024-07-05 00:00
Avatar
ws-client BOT 2024-07-04 00:00
<ChillerDragon> @jxsl13 all good now right?
00:00
<ChillerDragon> then ill go find some coffee
Avatar
no magic today
Avatar
ws-client BOT 2024-07-04 00:01
<ChillerDragon> arent u tired jxsl?
00:01
<ChillerDragon> what time is it? 1 am?
Avatar
ws-client BOT 2024-07-04 00:02
<ChillerDragon> woah
Avatar
importing works just fine
Avatar
what are you making teeworlds-go for? just the lulz?
Avatar
saw chiller doing it, wanted to help a little bit
00:26
found it cool
Avatar
ws-client BOT 2024-07-04 00:36
<ChillerDragon> @Learath2 im on some mission to spread teeworlds to as many languages as i can before i rq coding
00:36
<ChillerDragon> so ppl can build tw projects in their fav language
Avatar
Noble quest
Avatar
ws-client BOT 2024-07-04 00:37
<ChillerDragon> do i see that correctly? is the client really storing empty snapshots? xd
00:39
<ChillerDragon> maybe after the 100 robsti refactors ddnet isnt im using tw 0.7
Avatar
who wants to play some teeworlds of any kind
00:40
bored rn
00:40
#developer lfg
Avatar
ws-client BOT 2024-07-04 00:40
<ChillerDragon> but from my dbg prints it looks like it uses the m_aSnapshotIncomingData buffer as payload for snap empty and stores it xd
00:42
<ChillerDragon> i wonder if the server creates deltas against empty snapshots
00:43
<ChillerDragon> i somehow do not want to store empty snapshots with some old payload xd
00:44
<ChillerDragon> also is it weird that the hexdump kinda makes sense to me xd i stared so long at debug prints i can read most (non huffman compressed) tw traffic as hex xd
Avatar
ws-client BOT 2024-07-04 01:03
<ChillerDragon> Nvm it doesnt use old data. That was a bug in the teeworlds engine xd. It uses the empty snapshot as incoming delta and then does store basically the old snapshot.
01:04
<ChillerDragon> so its wasting a bit of storage imo but at least its not doing anything weird
02:15
<ChillerDragon> is that a bug?
Avatar
chillerdragon BOT 2024-07-04 04:19
i am hitting this assert in my custom fork quite often and its pretty annoying https://github.com/ddnet/ddnet/blob/610381d29e560ec64f2f42f6be9fdddc7f6df0f9/src/engine/shared/http.cpp#L421 am i doing something wrong? its either me having network hiccups or the backend dieing. Either way i dont want my client to crash.
DDraceNetwork, a free cooperative platformer game. Contribute to ddnet/ddnet development by creating an account on GitHub.
04:19
chillerbot-ux UserExperience based on DDraceNetwork, a mod of Teeworlds - chillerbot/chillerbot-ux
Avatar
ws-client BOT 2024-07-04 04:41
<ChillerDragon> so much chat.zillyhuhn.com downtime these days yikes. Im bakk!
Avatar
Avatar
zhn
@fokkonaut hey did you find the way around targetx/y zoom problem?
Wdym?
Avatar
Avatar
fokkonaut
Wdym?
TargetXY scales with the zoom nowadays which is very odd since you can hit less angles when zoomed in due to the scaling of integers. So when you zoom in/out your aim changes
Avatar
Ah, yea that thing
05:33
No, I haven't looked into that since heinrich seems unbothered.
Avatar
ws-client BOT 2024-07-04 06:20
<ChillerDragon> @Teero holy shit that sounds bad
06:20
<ChillerDragon> so if i aim lock some nasty edge and then do a quick zooz i might fail the hook?
Avatar
ddnet fps on my setup sucks so bad
07:08
400-500 fps but feels very choppy
Avatar
Avatar
ws-client
<ChillerDragon> @Teero holy shit that sounds bad
There's an issue already
Avatar
theoretically vsync is disabled and the game is running in real full-screen mode but it doesn't feel that way (edited)
Avatar
Precision has been changed due to this. We should revert this change where the mouse position gets sent in a zoomed state. A fix would be to keep the normal mouse pos for everything physics related...
Avatar
MilkeeyCat 2024-07-04 07:39
i dunno how but i made this by shooting once in tp thingy for grenade justatest
Avatar
Avatar
MilkeeyCat
i dunno how but i made this by shooting once in tp thingy for grenade justatest
Duplicating entities?
07:41
you only shot once?
Avatar
MilkeeyCat 2024-07-04 07:41
yes
Avatar
weird
Avatar
MilkeeyCat 2024-07-04 07:42
but it stops when i look away from tp thingy
07:42
even though i didn't hold shoot
07:42
thonk
07:45
Avatar
Avatar
MilkeeyCat
but it stops when i look away from tp thingy
antiping? probably the client trying to predict which teleporter next
Avatar
Avatar
fokkonaut
antiping? probably the client trying to predict which teleporter next
MilkeeyCat 2024-07-04 08:35
same happens without antiping
Avatar
chillerdragon BOT 2024-07-04 08:49
Classic duplication glitch. Back in 2018 we used to do that with carpets … oh wait wrong game
Avatar
heinrich5991 2024-07-04 08:55
chillerdragon: you can simply keep an empty init function
08:55
so that there's no breaking change
Avatar
Avatar
MilkeeyCat
Click to see attachment 🖼️
MilkeeyCat 2024-07-04 09:05
I just held shoot button before pressing spec and it was shooting when I was in spec pepeW
Avatar
Does other player see the same thing
09:49
would be pretty crazy if we really have a duplication glitch which seems pretty unlikely
Avatar
why did anyone want to scale it with zoom as multiplier
Avatar
heinrich5991 2024-07-04 10:29
having it as an unscaled world position is nice for some things
10:30
the server knows where the client points to
Avatar
Failed to bridge media: attachment too large (48141924 > 20000000) Yum.
Replying to @MilkeeyCat Failed to bridge media: attachment too large (48141924 > 20000000)
Avatar
GitHub BOT 2024-07-04 10:32
Cherry-picked from https://github.com/teeworlds/teeworlds/pull/2076/commits/d25869626a8cfbdd320929ba93ce73abed1402ce Thanks to Charly Reux for notifying us.

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 (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • ...
10:33
f429ede Version 18.3 - def- e694df6 Update credits - def- bbe8722 Fix wrong context value being used for translation lookup - Robyt3 a570243 Update Ukrainian l10n (18.3) - EGYT5453 da5e551 Update russian.txt - ByFox213 b101311 Update russian.txt - ByFox213 9783d8c Update russian.txt - ByFox213 46cdd6d Update russian.txt - ByFox213 6b495a8 Update Swedish translations for 18.3 - furo321 e669803 new french translation - Emilcha 5ff306a merge into translation file + credits - Emilcha 30171b8 Changement - Emilcha bf636dc Consistance - Emilcha 401d9a5 Update Turkish translations - GokturkTalha 8f70908 Update Azerbaijanese translation - GokturkTalha 76feb50 Fix percentage not being used for console command progress spinner - Robyt3 7301fff update czech translations for 18.3 - dobrykafe df95321 update slovak translations for 18.3 - dobrykafe 619cc64 Update simplified_chinese.txt - By622 2900550 Update traditional_chinese.txt - By622 74972ab Fix demo seekbar tooltip not showing correct hovered time - Robyt3 23fa51f Update brazilian_portuguese.txt - rffontenelle 97d9384 Fix tiles being handled in same tick for dead tees in some cases - Robyt3 46efd96 Fix integer overflow when computing tilemap size - def- 7b0f30f Version 18.3.1 - def-
10:33
Avatar
Hmmm
Avatar
GitHub BOT 2024-07-04 10:36
c1f8ead Fix integer overflow when computing tilemap size - def- d947280 Version 18.3.1 - def-
Avatar
Do I have something to do now?
Avatar
Not even updating the translation? (edited)
Avatar
no, it's just a bug fix release
10:41
no translation changes
Avatar
Okaay
10:42
was thought to be fixed 5 years ago. but it wasn't ^^
Avatar
Avatar
heinrich5991
the server knows where the client points to
is there any chance to revert this change btw?
Avatar
heinrich5991 2024-07-04 10:44
there's a chance to fix the bug
10:44
but I think it's good that the server knows where the client points to
Avatar
which one?
Avatar
heinrich5991 2024-07-04 10:44
that your angle depends on the zoom level
Avatar
Avatar
heinrich5991
but I think it's good that the server knows where the client points to
couldn't we just add zoom multiplier as extended attribute in the past xd
Avatar
heinrich5991 2024-07-04 10:45
why should the server do the calculation there?
10:46
it seems much more well-defined for the client to tell the server where exactly it is pointing
Avatar
why would you need clients sending two different type of targetxy?
Avatar
heinrich5991 2024-07-04 10:46
up-to-date clients only send one type of targetxy, no?
Avatar
yeah but what about other clients huh
Avatar
heinrich5991 2024-07-04 10:47
you can recognize them based on the version number, if you need to
Avatar
anyway its strange to change players input behaviour that old servers can rely on
Avatar
heinrich5991 2024-07-04 10:48
is there a server that relied on that?
Avatar
i bet there was
10:49
at least fokkonaut was mad when this came out
Avatar
heinrich5991 2024-07-04 10:49
I'd think the situation improved with this change
10:49
no longer needing to rely on brittle hacks to determine the actual cursor position
Avatar
when will 0.7 support be dropped
Avatar
heinrich5991 2024-07-04 10:50
no plans. why do you ask? @ReiTW
Avatar
cuz there's no reason to still support a dead game
Avatar
Avatar
heinrich5991
no longer needing to rely on brittle hacks to determine the actual cursor position
so m_Pos + m_Target is hacky?
Avatar
Avatar
ReiTW
cuz there's no reason to still support a dead game
heinrich5991 2024-07-04 10:50
please take your flamebait elsewhere
Avatar
and m_Zoom multiplier would do the trick, ddnet wouldn't accept "player input changes" if it would break (ddnet) servers behaviour but this one just got through #7512 (edited)
Avatar
ig there might be features that anyone would love to be implemented that requires breaking the compat with 0.7 ?
Avatar
Avatar
ReiTW
ig there might be features that anyone would love to be implemented that requires breaking the compat with 0.7 ?
heinrich5991 2024-07-04 10:51
let's talk about it once we get that hypothetical feature idea
Avatar
Avatar
heinrich5991
please take your flamebait elsewhere
not really flamebaits but facts, anyone knows how dead 0.7 is sadly
Avatar
heinrich5991 2024-07-04 10:51
this discussion isn't interesting, we've had it too many times
Avatar
Avatar
ReiTW
not really flamebaits but facts, anyone knows how dead 0.7 is sadly
vanilla players try to revive it though
10:52
by playing only on aeon servers and refusing to enter bridge ones xd
Avatar
Avatar
zhn
vanilla players try to revive it though
there's prob less than 100 or even 50 players
Avatar
heinrich5991 2024-07-04 10:52
please take this discussion to #off-topic if you want to continue it
10:53
(unless you have new information, which I doubt)
Avatar
Avatar
heinrich5991
(unless you have new information, which I doubt)
I don't plan to continue, but once there was mentioned stuff like a skeleton for people who wants to use ddnet base for custom mods. without 0.7 ddnet could have easily worked on smth to have server-side content (idk like custom guns, etc..) allowing more cool mods to be developed by the community. or even when you've all talked about the networking improvement part (to allow more efficient protections to be developed around). even if Davide has a workaround the most annoying thing that makes it more difficult to improve is the support to legacy clients
Avatar
heinrich5991 2024-07-04 11:02
ddnet could have easily worked on smth to have server-side content (idk like custom guns, etc..) allowing more cool mods to be developed by the community.
sounds cool, let's do that
even if Davide has a workaround the most annoying thing that makes it more difficult to improve is the support to legacy clients
I don't even know if Davide has a workaround for 0.7 clients or not. but if not, that'd be fine
11:03
I'm not sure what you're talking about. I don't think we had a feature declined because it couldn't work with 0.7
Avatar
recently you've talked about having tcp first for conn handling
Avatar
heinrich5991 2024-07-04 11:03
we can drop 0.7 support if it stands in the way of improvement
11:03
yes, let's do that
Avatar
Is there really any benefit to that. Maybe it'll help with some firewall implementations. Do we even know if any of our hosters do it?
Avatar
GitHub BOT 2024-07-04 11:10
4297772 Fix integer overflow when computing tilemap size - def- 447b44d Merge pull request #8558 from def-/pr-int-overflow - heinrich5991
Avatar
Avatar
Learath2
Is there really any benefit to that. Maybe it'll help with some firewall implementations. Do we even know if any of our hosters do it?
heinrich5991 2024-07-04 11:11
davide said it'd help him tremendously
Avatar
So we just accept tcp connections then close them? Or do we need it alive?
Avatar
heinrich5991 2024-07-04 11:27
just open a tcp connection and that's it. we can close it immediately
Avatar
Oh doesn't have to be the exact port?
Avatar
heinrich5991 2024-07-04 11:28
no, just somewhere
11:28
I'd just fire and forget a https request
Avatar
heinrich5991 2024-07-04 11:28
I think we even have an issue for it (edited)
Avatar
Perhaps we can also make this more generic? Allow servers to advertise a verify link
Avatar
This issue says on the same port
Avatar
GitHub BOT 2024-07-04 11:33
0d7c0b8 No more config_directory.sh - def-
Avatar
Avatar
Learath2
This issue says on the same port
heinrich5991 2024-07-04 11:33
@Davide does the TCP handshake need to be on the same port number as the UDP port number?
Avatar
I don't think so, TCP and UDP ports are not related in any way, you can just have each server announce it's tcp-handshake-ip-port-combo
Avatar
heinrich5991 2024-07-04 11:36
I would also not think so, but I'd also not have guessed that a TCP handshake would help at all
Avatar
When I first heard it I assumed it's some bizarre firewall behaviour
Avatar
Avatar
heinrich5991
@Davide does the TCP handshake need to be on the same port number as the UDP port number?
No
Avatar
Avatar
Learath2
This issue says on the same port
heinrich5991 2024-07-04 11:45
fixed it
Avatar
chillerdragon BOT 2024-07-04 12:06
You talkin go Huffman? Well the api changed from an unitialized raw go struct to the weird go styled fake constructor new function. Since I have no users I don’t mind to do breaking changes anyways xd
Replying to @heinrich5991 chillerdragon: you can simply keep an empty init function
Avatar
heinrich5991 2024-07-04 12:11
chillerdragon: the rules also apply to you. go to #off-topic for flamebait topics
Avatar
chillerdragon BOT 2024-07-04 12:14
Yo btw when bridge off-topic?
Avatar
I thought it already was bridged
Avatar
heinrich5991 2024-07-04 12:14
only to matrix
12:14
he's requesting IRC
Avatar
ah, probably never to irc
Avatar
chillerdragon BOT 2024-07-04 12:14
Matrix cring
Avatar
heinrich5991 2024-07-04 12:14
not on my priority list right now
12:14
although I agree that having an IRC bridge is kinda cool
Avatar
chillerdragon BOT 2024-07-04 12:15
When leak priority list
Avatar
the bridges are literally only being used by 1 or 2 people for legitimate purposes and is only a tool to dodge moderation on discord
Avatar
why
Replying to chillerdragon Matrix cring
Avatar
chillerdragon BOT 2024-07-04 12:16
Yes 50% of those 1 or 2 ppl is me and I am a big supporter of no moderation @Learath2
Avatar
its really cool
Avatar
chillerdragon BOT 2024-07-04 12:16
Bugged and bloated. IRC is just so much smoother
Replying to Souly why
Avatar
irc is the very best
Avatar
dont tell me you hate matrix bots
Avatar
Avatar
Learath2
the bridges are literally only being used by 1 or 2 people for legitimate purposes and is only a tool to dodge moderation on discord
heinrich5991 2024-07-04 12:16
good point. but I like having at least one non-proprietrary method to access our chat. I guess matrix is good enough for that
Avatar
thats the best part
Avatar
chillerdragon BOT 2024-07-04 12:17
When non proprietary map submissions
12:18
Matrix.org instance is basically proprietary xd
Avatar
Avatar
ReiTW
cuz there's no reason to still support a dead game
why support a redefined and at the same time, slightly abandoned engine? (edited)
Avatar
chillerdragon BOT 2024-07-04 12:18
I would setup a selfhosted matrix instance but I just don’t like it enough
Avatar
heinrich5991 2024-07-04 12:18
chillerdragon: ddnet matrix isn't hosted on matrix.org
Avatar
chillerdragon BOT 2024-07-04 12:19
Well I am using matrix.org xd
Avatar
heinrich5991 2024-07-04 12:19
that's on you
Avatar
chillerdragon BOT 2024-07-04 12:19
Sent from element on iOS
12:19
Yes on me
12:20
@Cellegen: wat engine xd
Avatar
0.7
Avatar
chillerdragon BOT 2024-07-04 12:20
Yea it’s frustrating Oy is so inactive lately
Avatar
heinrich5991 2024-07-04 12:21
so inactive "lately"
Avatar
"lately" 💀
Avatar
heinrich5991 2024-07-04 12:21
this isn't a change
Avatar
lately
Avatar
chillerdragon BOT 2024-07-04 12:21
He used to be more active imo
Avatar
brother I havent seen him since 0.7.4
Avatar
bro went missing for over a year
12:22
"recently" "not too long ago"
Avatar
chillerdragon BOT 2024-07-04 12:22
Yea I don’t recall ever waiting this long for oy return
Avatar
XDDD
Avatar
chillerdragon BOT 2024-07-04 12:22
4 years ago is still not too long ago right?
Avatar
Then another question, why wait for Oy?
12:22
we have deen right here owo
12:22
and heinrich
Avatar
heinrich5991 2024-07-04 12:22
because no one can be bothered to maintain teeworlds, including oy
12:23
or chillerdragon
Avatar
chillerdragon BOT 2024-07-04 12:23
deen and Heinrich don’t merge my 0.7 pr
Avatar
or chiller ye
Avatar
what 0.7 pr
Avatar
vote chiller for next engine creator 2k24
Avatar
you mean 0.7 features in ddnet?
Avatar
chillerdragon BOT 2024-07-04 12:23
0.7 support for ddnet client
Avatar
Avatar
chillerdragon
He used to be more active imo
He had a sudden burst of activity there for a sec
Avatar
chillerdragon BOT 2024-07-04 12:23
Which sec?
12:24
You mean last time when he looked at 30% of the prs?
Avatar
I don't remember exact dates but I put in some work into editor2 and added the chat command menu thing
Avatar
oh cool, how would it work? (nvm) (edited)
Avatar
heinrich5991 2024-07-04 12:24
for something to change, you need an active maintainer
Avatar
chillerdragon BOT 2024-07-04 12:24
Bru that was like 2016
Avatar
heinrich5991 2024-07-04 12:24
if there's no one, there's no point in debating this
12:25
do you volunteer to maintain teeworlds? chillerdragon?
Avatar
chillerdragon BOT 2024-07-04 12:25
Oy could assign some
Avatar
heinrich5991 2024-07-04 12:25
we would need a person first
Avatar
chillerdragon BOT 2024-07-04 12:25
No
Replying to @heinrich5991 do you volunteer to maintain teeworlds? chillerdragon?
Avatar
heinrich5991 2024-07-04 12:25
find a volunteer and if I think they're even half-qualified I'll help you bring teeworlds back alive
Avatar
You guys need someone who knows the engine inside out and is willing to change certain ways the engine could function
Avatar
chillerdragon BOT 2024-07-04 12:27
robsti
Avatar
Obv the 2 creators have different ideas in mind, they would rather just redo the engine from scratch
Avatar
Avatar
chillerdragon
robsti
heinrich5991 2024-07-04 12:27
have you asked whether he wants to maintain teeworlds, chillerdragon?
12:27
this needs to be a volunteer
12:27
not someone you assign
Avatar
chillerdragon BOT 2024-07-04 12:27
I don’t recall I think we had that discussion before so I guess we don’t have anyone
Avatar
well thats fucked
Avatar
heinrich5991 2024-07-04 12:28
see. there's the problem. try to fix that
Avatar
chillerdragon BOT 2024-07-04 12:28
No need for new teeworlds stuff anyways imo
Avatar
how so? to improve the way the engine could work, it needs to be done
Avatar
chillerdragon BOT 2024-07-04 12:29
The game works well
Avatar
heinrich5991 2024-07-04 12:29
chillerdragon: if you mention porting ddnet to 0.7 without any new content one more time, I'm going to ban you for flamebiat
Avatar
Yes it does work, however it doesn't support things which can make it out of this era (0.6)
12:30
0.7 ain't some revolutionary aspect, where we can freely mod things or get more gamemodes without limitations
12:30
The engine is no exception for this and modders or server devs have a harder time developing their own ideas without reinventing the wheel
Avatar
chillerdragon BOT 2024-07-04 12:30
0.7 isn’t about revolution or features it’s just keeping up with compatibility
Avatar
I swear to god, if I waited 6 years for a not revolutionary client,
12:31
then it deserves not to be called a newer "teeworlds"
Avatar
chillerdragon BOT 2024-07-04 12:31
Are you actively waiting?
12:31
Yea the version breaking changes are a bit unfortunate
Avatar
Still, yes, but not from ddnet developers naturally
Avatar
heinrich5991 2024-07-04 12:32
porting ddnet to 0.7 in the current state of 0.7 is never going to happen
12:32
I can guarantee you that. no current maintainer wants that
12:32
it has been discussed with no ends
Avatar
chillerdragon BOT 2024-07-04 12:32
Im seriously interested in a approximate priority list of yours @heinrich5991
Avatar
I plan to make a new map editor, another is making a 2d to 3d render on their own engine using server data, one still tries to make a fully functional rust compatibility (edited)
Avatar
chillerdragon BOT 2024-07-04 12:33
Where can I vote? Xd
Avatar
heinrich5991 2024-07-04 12:33
chillerdragon: I'm currently extracting the compatibility code of ddnet
Avatar
look at this PR I just made at work, negative line count, still adds an entire feature
Avatar
heinrich5991 2024-07-04 12:33
even though my number one priority should be implementing QUIC
12:33
and then accounts
Avatar
chillerdragon BOT 2024-07-04 12:34
I’d like to give libtw2 snaps, ddnet proxy, ddnet ip redirects, #7777 some priority votes hehe
Avatar
Avatar
heinrich5991
chillerdragon: I'm currently extracting the compatibility code of ddnet
this is honestly not worth your time imo, the other two are far more important, we worked around the compatibility code for a decade now, we can handle a couple more years 😄
Avatar
chillerdragon BOT 2024-07-04 12:34
I told you to proxy support instead -.-
Replying to @heinrich5991 chillerdragon: I'm currently extracting the compatibility code of ddnet
Avatar
Avatar
Learath2
this is honestly not worth your time imo, the other two are far more important, we worked around the compatibility code for a decade now, we can handle a couple more years 😄
heinrich5991 2024-07-04 12:35
I know, but we're currently getting more compat code which I don't like. on two fronts, even
Avatar
add another decade to the list boys
Avatar
heinrich5991 2024-07-04 12:35
also, this could be reused should we want to integrate it into Jupstar's ddnet
Avatar
chillerdragon BOT 2024-07-04 12:35
10x developer
Replying to @Learath2 look at this PR I just made at work, negative line count, still adds an …
Avatar
heinrich5991 2024-07-04 12:35
chillerdragon: I'm accepting 20€/h to temporarily change my priority list
Avatar
btw, how are you planning on doing it? 0.7 and 128p support all require pretty intimate knowledge of the gamestate, will you be hooking in for that or will you be trying to recreate the state on a separate module?
Avatar
chillerdragon BOT 2024-07-04 12:36
Xd
12:36
Im broke
Avatar
Avatar
Learath2
btw, how are you planning on doing it? 0.7 and 128p support all require pretty intimate knowledge of the gamestate, will you be hooking in for that or will you be trying to recreate the state on a separate module?
heinrich5991 2024-07-04 12:36
separate module
Avatar
chillerdragon BOT 2024-07-04 12:36
But nice
Avatar
wouldn't that in theory kinda double the work? That's why I avoided it, packing stuff up into packets, then unpacking and trying to figure out what state led to that packet sounded like such a waste of our cpu 😄
Avatar
Avatar
Learath2
wouldn't that in theory kinda double the work? That's why I avoided it, packing stuff up into packets, then unpacking and trying to figure out what state led to that packet sounded like such a waste of our cpu 😄
heinrich5991 2024-07-04 12:37
yes, it'll double the work (edited)
12:38
but it's the only clean solution I see without introducing lots of work on maintenance
Avatar
Have you considered more precise hooks where the module can directly read into the gamestate?
Avatar
heinrich5991 2024-07-04 12:38
optimizations can be done later. I'd prefer to start from a clean slate at first
Avatar
but I feel most of the work you'll be doing can be avoided if we can cleanly use the real state instead of trying to recreate it
Avatar
heinrich5991 2024-07-04 12:39
I feel like this way my work can more easily be reused
Avatar
I mean it's your project, feel free to go about it however you like. I just attempted this before and it really annoyed me 😄
Avatar
heinrich5991 2024-07-04 12:40
because it's just like 5 hooks or so, all straightforward
Avatar
Avatar
heinrich5991
optimizations can be done later. I'd prefer to start from a clean slate at first
Avolicious 2024-07-04 12:40
Sounds like rust it is, no? 😄
Avatar
heinrich5991 2024-07-04 12:41
it's indeed rust
Avatar
Avolicious 2024-07-04 12:41
poggers2
Avatar
Avolicious 2024-07-04 12:42
Never used tho
12:42
But I thought aswell of rewriting some of our gRPC/protobuf stuff into rust in ddnet source itself
12:42
Currently its cpp
Avatar
heinrich5991 2024-07-04 12:42
it's already integrated into ddnet
12:42
that made it easy to start
Avatar
Avolicious 2024-07-04 12:42
Yeah I've seen that
Avatar
chillerdragon BOT 2024-07-04 12:43
Yea it really is easy to use
Avatar
Avolicious 2024-07-04 12:43
But I havent had time to do so, still working on other stuff like new website & dnsbl
12:43
I will aswell open source the dnsbl server & api on KoG Github
12:43
Maybe someone with rust experience wants to contribute then
Avatar
chillerdragon BOT 2024-07-04 12:43
Kog GitHub wot
12:44
URL or didn’t happen
Avatar
I have one thing I would contribute to your dnsbl implementation 😄
Avatar
Avatar
Learath2
I have one thing I would contribute to your dnsbl implementation 😄
Avolicious 2024-07-04 12:44
👀 In the DNS answer itself?
Avatar
Yes, technically you are supposed to be returning an NXDOMAIN, you aren't 😄
Avatar
Avolicious 2024-07-04 12:45
I can change that if you need
Avatar
It's not important, it's just something I noticed
Avatar
Avatar
Learath2
It's not important, it's just something I noticed
Avolicious 2024-07-04 12:46
But we are not handling it, no?
12:47
DDNet Source only checks if there is an A record set
12:47
or empty
Avatar
I added a small transparent proxy that allows us to whitelist some ips. While implementing that I assumed you would be sending an NXDOMAIN, took me a couple minutes to figure out what was going on
Avatar
Avolicious 2024-07-04 12:48
Oh
12:48
Now I am returning NXDOMAIN
Avatar
Avatar
Avolicious
Now I am returning NXDOMAIN
hopefully I handled that properly 😄
Avatar
heinrich5991 2024-07-04 12:49
hi @Pimble
Avatar
Avatar
Learath2
hopefully I handled that properly 😄
Avolicious 2024-07-04 12:50
Tbh I wanted to contribute to DDNet dnsbl for a long time
12:50
But had no time to writeup my changes & why
12:50
The server-side implementation
Avatar
You could also create an issue for it and maybe one of us would pick it up
12:51
What are we lacking?
Avatar
Avolicious 2024-07-04 12:51
Adding a more fine-grained control for dnsbl returns
12:52
Big DNSBL provideers like Spamhaus, they add specific 127.xxx.xxx.xxx return codes in A records to give more control in mailserver setups for example
Avatar
I think they also have TXT records right?
Avatar
Avolicious 2024-07-04 12:54
So currently I only return the reversed ip, which is in fact compliant. But instead I want to return specific A addresses, so you can say Okay I want to block only cloud providers, but universities I want to allow
Avatar
Avatar
Learath2
I think they also have TXT records right?
Avolicious 2024-07-04 12:54
You can add status messages to TXT, but A is used for ips 😄
Avatar
I mean to add something like a reason. I remember it being part of "standard"
Avatar
Avolicious 2024-07-04 12:55
Mhmmm, ad hoc I cant remember any standard for TXT status reasons
12:55
But I can add a reason if needed
12:55
But there aswell, where do I get the reasons from? 😄
Avatar
Well idk, it is for if you want to include more information than you can convey in an ip address. The A Record is pretty much allowed to point to any ip so you can use that as a reason/category too
Avatar
Avatar
Learath2
Well idk, it is for if you want to include more information than you can convey in an ip address. The A Record is pretty much allowed to point to any ip so you can use that as a reason/category too
Avolicious 2024-07-04 12:58
Back in the days, the standard was to use 127.0.0.0/8
Avatar
Avatar
Avolicious
Mhmmm, ad hoc I cant remember any standard for TXT status reasons
RFC5782 2.1 paragraph 2 btw. It's technically a SHOULD even 😄
Avatar
Avolicious 2024-07-04 12:59
This RFC was published on the Internet Research Task Force (IRTF) stream. This RFC is not endorsed by the IETF and has no formal standing in the IETF standards process.
12:59
😄
13:00
But yeah, I can add TXT aswell
13:00
We already support IPv6, but its not used yet
13:01
If we support TXT records, shall we output it to the console?
13:01
But this could get spammy, no?
Avatar
Richard Stallman is mad at us
Replying to chillerdragon When non proprietary map submissions
Avatar
Hm, it might be fine depending on the amount of blacklisted ips we encounter
Avatar
Avolicious 2024-07-04 13:04
its a few millions a month 😄
Avatar
Guess what I am using
Replying to @heinrich5991 that's on you
Avatar
it feels good when u fix a segfault
13:23
(yes i get segfaults with rust, but cuz doing unsafe stuff with llvm compiled programs)
Avatar
Avatar
Ryozuki
it feels good when u fix a segfault
MilkeeyCat 2024-07-04 13:23
you should write C then
Avatar
well i would better say, its the compiled program that triggers a segfault not rust
13:23
so i fixed a compiler bug
Avatar
Avatar
MilkeeyCat
you should write C then
nein
Avatar
Avatar
Ryozuki
nein
🥔
Avatar
MilkeeyCat 2024-07-04 13:25
my language will be advertised to you as C sprinkled with some convenient shit
Avatar
Avatar
MilkeeyCat
my language will be advertised to you as C sprinkled with some convenient shit
does it use llvm as backend
Avatar
Avatar
zhn
does it use llvm as backend
MilkeeyCat 2024-07-04 13:32
n..no
Avatar
gg ryo will not use it
13:33
wait why did you choose to make it translating into nasm and then compiling (edited)
Avatar
Avatar
zhn
wait why did you choose to make it translating into nasm and then compiling (edited)
MilkeeyCat 2024-07-04 13:33
how did I have to do it?
Avatar
using llvm as backend and something like bison as lexer and so on xd
13:35
llvm would give you a lot of out of the box optimizations and you could concentrate yourself into design of language
Avatar
MilkeeyCat 2024-07-04 13:35
i wanted to make all the stuff myself
Avatar
using nasm is not doing all urself
13:36
but its good tho xd
Avatar
MilkeeyCat 2024-07-04 13:37
i can make generator which will be spiting out zeroes and ones
Avatar
@MilkeeyCat nasm is not made to be used as a library but
13:38
i have a suggestion that is
13:38
The Ultimate Assembler
13:38
it looks rly good
13:38
and it can be used as a library
13:38
The following sample code presents how to compile 32-bit assembly instructions of X86 in C language.
Avatar
Avatar
Ryozuki
@MilkeeyCat nasm is not made to be used as a library but
MilkeeyCat 2024-07-04 13:39
i can use it however i want 😏
Avatar
Avatar
Ryozuki
using nasm is not doing all urself
Generating machine code by hand is just a little too much unnecessary work 😄
Avatar
was just saying
Avatar
Avatar
Learath2
Generating machine code by hand is just a little too much unnecessary work 😄
yeah but he probs uses nasm in a hacky way
13:40
like making the file etc
13:40
i think keystone is made more to fit what he wants
13:40
/* test1.c */ #include <stdio.h> #include <keystone/keystone.h> // separate assembly instructions by ; or \n #define CODE "INC ecx; DEC edx" int main(int argc, char **argv) { ks_engine *ks; ks_err err; size_t count; unsigned char *encode; size_t size; err = ks_open(KS_ARCH_X86, KS_MODE_32, &ks); if (err != KS_ERR_OK) { printf("ERROR: failed on ks_open(), quit\n"); return -1; } if (ks_asm(ks, CODE, 0, &encode, &size, &count) != KS_ERR_OK) { printf("ERROR: ks_asm() failed & count = %lu, error = %u\n", count, ks_errno(ks)); } else { size_t i; printf("%s = ", CODE); for (i = 0; i < size; i++) { printf("%02x ", encode[i]); } printf("\n"); printf("Compiled: %lu bytes, statements: %lu\n", size, count); } // NOTE: free encode after usage to avoid leaking memory ks_free(encode); // close Keystone instance when done ks_close(ks); return 0; }
Avatar
Avatar
heinrich5991
no longer needing to rely on brittle hacks to determine the actual cursor position
yeah but now i can't map players cursor to their screen surface xd
Avatar
heinrich5991 2024-07-04 14:03
what's the use case for that?
Avatar
ingame interface using motd/broadcasts
Avatar
heinrich5991 2024-07-04 14:04
ah 😦
Avatar
ye that's why i was yapping xd
Avatar
@zhn so no interface for blockworlds™️ ? :(
14:05
couldnt follow chat, was working
Avatar
in case of broadcasts i can use m_Direction but m_Target is necessary for working motd ui
Avatar
heinrich5991 2024-07-04 14:05
what kind of interface are you building?
14:06
a selection, like a list box? (edited)
Avatar
heinrich5991 2024-07-04 14:07
perhaps you could add a proper UI to ddnet instead?
14:07
i.e. have the server send a list box, let the client display the UI
Avatar
wanted to support both 0.6 and 0.7 but yeah i think its a proper way of implementing an actual interface
Avatar
heinrich5991 2024-07-04 14:08
you can still hack your way around the 0.7 client like you planned to
Avatar
correct
14:08
i'll drop it anyway xddd
14:08
if ddnet will do so
Avatar
Avatar
heinrich5991
I can guarantee you that. no current maintainer wants that
makes sense
Avatar
Avatar
heinrich5991
chillerdragon: I'm currently extracting the compatibility code of ddnet
chillerdragon wanting 0.7 port while heinrich making 0.7 compatibility code more maintainable. That's more or less the closest one can get to having 0.7 support.
15:03
👍
Avatar
Took me back to 2012
Trollouaa 2
Avatar
probably from 2012 actually
15:45
kek
Avatar
Avatar
zhn
ingame interface using motd/broadcasts
I'd support work on #2875 but should probably be discussed first which use cases we want to support
Avatar
Problem: complex mods like infClass have a steep learning curve and a new player have a hard time to get game mechanics and even the basics. Currently most of players leave because they don't g...
Avatar
Avatar
Robyt3
I'd support work on #2875 but should probably be discussed first which use cases we want to support
yeah its actually mind blowing amount of cases you can think of
15:56
currently im adding server side quad render request and textbox render request with ids so client can send net message with id and action
15:56
small poc
Avatar
Avatar
zhn
yeah its actually mind blowing amount of cases you can think of
yeah, using any of our basic UI elements could be possible (text input, checkbox, scrollbar, number input, color input etc.)
Avatar
You'll need to figure out a wireformat to describe a ui aswell, it's a very annoying and tough problem
Avatar
oh yeah
Avatar
probably would have to differentiate between messages that are places on the map or non-interactive, and interactive UI forms, since you can only have one active form/popup at a time (edited)
Avatar
about ingame quads: what do you think of map-patch net object which is actually map with deltas to change "overlaying" server-side managed map
15:59
that will allow us to reuse map render and it will have less impact on number of netex messages
16:00
so ui net code will come as completely another part
Avatar
I actually can't imagine anything simple that would allow laying out ui over the wire. Maybe a small bytecode that is intentionally not turing complete with commands like vsplit hsplit dotextbox docheckbox
justatest 1
Avatar
Do you really need to layout UI manually? I would think a linear layout of rows of UI elements would be enough
Avatar
ye sounds better than exploiting netexes xd
Avatar
Avatar
Robyt3
Do you really need to layout UI manually? I would think a linear layout of rows of UI elements would be enough
manual ui will allow server modders make all kind of things and so its better imo
Avatar
chillerdragon BOT 2024-07-04 16:03
You block traffic from millions of ips a month based on some list of known bad IPs? Are you sure there are no false positives? What kind of traffic is that even? Actual players with a real client?
Replying to @Avolicious its a few millions a month 😄
Avatar
Using json to describe more complex UI layout seems possible justatest Would the maximum packet size be a concern then?
Avatar
vsplit 2 4 dotext "Login" center end hsplit 1 3 1 end vsplit 1 1 1 1 1 hsplit 1 2 dotext "Username:" left end dotextbox <username> end end hsplit 1 2 dotext "Password:" left end dotextbox <password> end end end dobutton "Login" end end end end end (edited)
Avatar
Avatar
Robyt3
Using json to describe more complex UI layout seems possible justatest Would the maximum packet size be a concern then?
not if server/client will translate it to bytecode :P
16:14
does ddnet have some doxygen docs instance available online?
Avatar
Avatar
zhn
does ddnet have some doxygen docs instance available online?
🍻 1
16:16
It's not very documented though
Avatar
archimede67 2024-07-04 16:16
anyone aware of an issue related to loading points/ranks ?
16:17
because right now it seems like we can't do /points nor check the ranks
Avatar
hm the db server looks fine this time
Avatar
rank won't even be displayed when joining a new empty server with a map you finished before
Avatar
archimede67 2024-07-04 16:20
yeah it seems like nothing loads
Avatar
also indicating finish in browser doesnt work
Avatar
OH, the db server is not fine
16:24
Jul 04 18:14:16 ddnetdb2 systemd[1]: mariadb.service: Main process exited, code=killed, status=9/KILL Jul 04 18:14:16 ddnetdb2 systemd[1]: mariadb.service: Failed with result 'oom-kill'.
Avatar
were you connected via ssh by chance on accident?!
Avatar
archimede67 2024-07-04 16:24
Kek
Avatar
@deen perhaps you were a tad too generous with innodb_buffer_pool_size
16:32
Also why didn't systemd in it's infinite wisdom restart this service?
Avatar
systemd can be setup to do so Restart=on-failure
Avatar
Why do I need to set that up? It never refrained for making decisions for me before
Avatar
https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html Restart= Configures whether the service shall be restarted when the service process exits, is killed, or a timeout is reached. The service process may be the main service process, but it may also be one of the processes specified with ExecStartPre=, ExecStartPost=, ExecStop=, ExecStopPost=, or ExecReload=. When the death of the process is a result of systemd operation (e.g. service stop or restart), the service will not be restarted. Timeouts include missing the watchdog "keep-alive ping" deadline and a service start, reload, and stop operation timeouts. Takes one of no, on-success, on-failure, on-abnormal, on-watchdog, on-abort, or always. If set to no (the default), the service will not be restarted. If set to on-failure, the service will be restarted when the process exits with a non-zero exit code, is terminated by a signal (including on core dump, but excluding the aforementioned four signals), when an operation (such as service reload) times out, and when the configured watchdog timeout is triggered. If set to on-abnormal, the service will be restarted when the process is terminated by a signal (including on core dump, excluding the aforementioned four signals), when an operation times out, or when the watchdog timeout is triggered. If set to on-abort, the service will be restarted only if the service process exits due to an uncaught signal not specified as a clean exit status. If set to on-watchdog, the service will be restarted only if the watchdog timeout for the service expires. If set to always, the service will be restarted regardless of whether it exited cleanly or not, got terminated abnormally by a signal, or hit a timeout. Note that Type=oneshot services will never be restarted on a clean exit status, i.e. always and on-success are rejected for them. (edited)
16:38
i guess its just that restart is off by default, thats why you have to explicitly tell it to
Avatar
Avatar
Learath2
@deen perhaps you were a tad too generous with innodb_buffer_pool_size
ok, reducing
Avatar
@ChillerDragon, any thought on adding two repos: varint and/or econ ? would like to split up twapi if you are fine with having those in your org?
Avatar
question, is the distance between the map border (white border which you are limited to build in) and the endless death tiles exactly 200 tiles?
Avatar
bool CEntity::GameLayerClipped(vec2 CheckPos) { return round_to_int(CheckPos.x) / 32 < -200 || round_to_int(CheckPos.x) / 32 > GameServer()->Collision()->GetWidth() + 200 || round_to_int(CheckPos.y) / 32 < -200 || round_to_int(CheckPos.y) / 32 > GameServer()->Collision()->GetHeight() + 200; }
17:33
yep
Avatar
ty for confirming owo
Avatar
[MOD] real RCON - with gnuTLS security (Page 1) — Fan Art and Other — Teeworlds Forum — Everything Teeworlds!
Avatar
Avatar
Learath2
Jul 04 18:14:16 ddnetdb2 systemd[1]: mariadb.service: Main process exited, code=killed, status=9/KILL Jul 04 18:14:16 ddnetdb2 systemd[1]: mariadb.service: Failed with result 'oom-kill'.
LOL
Avatar
Avatar
meloƞ
were you connected via ssh by chance on accident?!
systemctl status
Avatar
Avatar
Learath2
Why do I need to set that up? It never refrained for making decisions for me before
systemd has some restart options in ur unit .service file, some things would rather be restarted by their own means (like the transmission daemon prefers to be restarted with a specific signal) instead of just killing & spinning the same process up again
19:42
also sorry for double ping if I did that
19:42
didn't mean it
Avatar
Avatar
Ewan
systemctl status
pepeangryping systemctl poweroff
Avatar
I really need to add decorations to my ssh'd windows before I cause an incident. I almost did rm -rf /boot/* on ddnet.org
pepe_holy 1
Avatar
Avatar
Learath2
I really need to add decorations to my ssh'd windows before I cause an incident. I almost did rm -rf /boot/* on ddnet.org
°-°
19:50
use a terminal emulator just for ddnet's ssh sessions
Avatar
Idk wym, I use a terminal emulator for all my terminals. Who even has physical terminals in 2024? 😄
19:52
Avatar
ah i wasnt specific enough, my bad :D i meant like, dont use your default emu for ddnet
19:53
(e.g default -> alacritty, ddnet -> gnome's term) or smth xD
Avatar
I'll try to change the background color when I ssh
19:53
I cba to maintain two different configs
Avatar
fair
Avatar
excellent idea
Avatar
Avatar
Robyt3
Do you really need to layout UI manually? I would think a linear layout of rows of UI elements would be enough
heinrich5991 2024-07-04 20:37
even that sounds more complicated than what I would go for. a simple dialog with a number of buttons would be my start
Avatar
Avatar
heinrich5991
even that sounds more complicated than what I would go for. a simple dialog with a number of buttons would be my start
My only issue with that would be that every half measure we introduce has to be supported forever
f3 1
Avatar
heinrich5991 2024-07-04 20:56
I think sending the client a list of options and the client selecting one (or escaping from the dialog) is straightforward enough that there's no problem in supporting it forever… I think
Avatar
GitHub BOT 2024-07-04 21:25
By default server has it's set sv_map variable and so newbie player enters the server thinking "oh, sure, I have never played this map, I guess i should try it" in scenario when all empty servers have 3-10 different maps for same region. Mocking empty servers with "Random" map would be a better option because newbie will not know that servers and maps are not tied. On first player join on empty server, server will behave like someone called random_map.
21:28
Imagine group of newbies who don't know how to properly change maps. Server should start a "Random map" vote after all of them finish initial map, kind of soft map rotation
Avatar
Avatar
Learath2
My only issue with that would be that every half measure we introduce has to be supported forever
heinrich5991 2024-07-04 21:35
a bad "full" measure might be even more annoying to support in the long term
Avatar
ws-client BOT 2024-07-04 23:06
<ChillerDragon> @jxsl13 the import paths for teeworlds-go look cool huh? xd I invited you to https://github.com/teeworlds-go/econ
Contribute to teeworlds-go/econ development by creating an account on GitHub.
Avatar
awesome 😄 indeed they do
Avatar
ws-client BOT 2024-07-04 23:07
<ChillerDragon> its your repo go nuts! push to master or heck rename to main. Use snake_case and import third party libraries xd
Avatar
ws-client BOT 2024-07-04 23:07
<ChillerDragon> idk what one would use varint for
Avatar
might be interesting outside Go. like the one in the standard library that's used for protobuffers.
23:08
was my first thought
23:09
is fine
Avatar
ws-client BOT 2024-07-04 23:09
<ChillerDragon> outside tw you mean?
23:10
anyway. gotta sleep
Avatar
ws-client BOT 2024-07-04 23:10
<ChillerDragon> ok sure i can create you the repo too but i cant promise i will use it in protocol or something like that
23:10
<ChillerDragon> you want it to be called "varint" ?
Avatar
yeah
Avatar
ws-client BOT 2024-07-04 23:11
<ChillerDragon> the main thing was a joke btw xd
23:11
<ChillerDragon> pls use master -.- i did a little trap for you
23:11
I will keep it consistent
Avatar
ws-client BOT 2024-07-04 23:12
<ChillerDragon> the setup instructions in varint say master https://github.com/teeworlds-go/varint
Contribute to teeworlds-go/varint development by creating an account on GitHub.
Avatar
I prefer consistency over imaginary people's feelings
Avatar
ws-client BOT 2024-07-04 23:12
<ChillerDragon> the one in econ say main justatest
23:12
<ChillerDragon> so be careful
23:12
thought you were chillerdragon
23:13
that doesn't look chill to me D:
Avatar
ws-client BOT 2024-07-04 23:13
<ChillerDragon> ?xd
Avatar
stay calm, keep cool, chill
Avatar
ws-client BOT 2024-07-04 23:13
<ChillerDragon> e sure
Avatar
we can do that
23:14
worst case, in the second try
23:14
on
Avatar
ws-client BOT 2024-07-04 23:14
<ChillerDragon> or 4th
23:14
<ChillerDragon> like 2.0.0 release
23:14
<ChillerDragon> or was it 5?
Avatar
I did not count
Avatar
ws-client BOT 2024-07-04 23:15
<ChillerDragon> did you get emails for every rls?
Avatar
cuz I stayed cool
23:15
my github account is linked to my spam mail account which i don't read
23:16
so
23:16
dunno
23:17
mainly use the fasthub android app
23:17
for checking for updates on followed projects
Avatar
chillerdragon BOT 2024-07-04 23:17
Xd
Avatar
chillerdragon BOT 2024-07-04 23:19
Gn8
Avatar
Avatar
jxsl13
cuz I stayed cool
was a trap
Exported 498 message(s)
Timezone: UTC+0