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-09-11 00:00 and 2024-09-12 00:00
Avatar
ws-client BOT 2024-09-11 00:11
<ChillerDragon> nice patiga
Avatar
ws-client BOT 2024-09-11 00:18
<ChillerDragon> @Jupstar ✪ иди is not NAN not a number its idi and it means "go". In this case its followed by "нахуй" nahui which means dick. Its classic insult "go to dick"
00:21
<ChillerDragon> @MilkeeyCat which protocol? I hope you are implementing 0.7 I personally always start with the first message that is sent. And then make sure the server responds correctly and then respond to that.
00:21
<ChillerDragon> you can get pretty far without the int packer
Avatar
GitHub BOT 2024-09-11 00:34
For some reason, sometimes, when flags are returned, they are not counted. I noticed it during game when I wanted to find out who returned some of the flags because I was AFK for a bit. Then I watched the demo, and it seems that similar behaviour is demonstrated even when watching the demo. I can't tell if it's the exact same behaviour (e.g. if player 1's first flag return registered in game, but maybe not in the demo). This happens when watching the entire demo (meaning didn't skip any pa...
00:35
When a player (re)spawns, the camera teleports/jumps. It would be nice to make it smooth. Also, please allow it to also follow flags as if they're players :)
Avatar
Avatar
Cellegen
That won't work for my network, Cloudflare WARP redirects my connection in a way which is more stable, than using only DNS
theoretically, you could do cloudflare warp -> your cheap vps as vpn
04:03
my assimption being that cloudflare wrap does not give you a fixed ip address which could be whitelistef
04:03
assumption
04:03
whitelisted*
Avatar
MilkeeyCat 2024-09-11 05:02
chillerdragon: im already implementing packer xd
Avatar
chillerdragon BOT 2024-09-11 05:28
Doesn’t hurt having packer is good
Avatar
MilkeeyCat 2024-09-11 06:41
my implementing of packer started with fixing bugs in the compiler 😬
Avatar
how ddnet manages global bans? I peeked thru scripts and I don't get how they are not getting reapplied, bans.cfg that exec'd by every server contain ban ip duration reason, when, by who, and how expired bans will be removed, if bans contain only duration, but not any kind of timestamp
Avatar
Avatar
Tater
does ddnet want freeze stars back? tclient will have it next update. It's like 10 lines of code
We do but I have a feeling that it should be more than 10 lines. Which gives me the feeling that I won't like how you added them back. Which means I'll make a comment on the PR and fokkonaut will call me a seaslug
Avatar
what functionality do you need out of them that requires more than 10 lines
07:00
they need prediction?
Avatar
They still need to be timed like the old ones, do you have that covered?
Avatar
This looks about right, but I'll have to take a look at the original code
Avatar
the only issue is that because the client receives 25tps they are randomly out of sync by 1 tick half the time
07:03
but the previous ones might have also been idk
07:07
but they're not predicted so it's impossible to notice anyway
07:07
unless you have <10ms ping
Avatar
def not impossible
Avatar
Avatar
Tater
does ddnet want freeze stars back? tclient will have it next update. It's like 10 lines of code
Make a PR with an option please, I don't think it's a hill worth dying on, so we could add an option for it for the 0.1% of people who don't upgrade because of it.
Avatar
Avatar
deen
Make a PR with an option please, I don't think it's a hill worth dying on, so we could add an option for it for the 0.1% of people who don't upgrade because of it.
I already promised the star people I'd add it back as an option. I just didn't have the time for it :/
Avatar
I was rather shocked how easy it was relative to how much arguing occurred
07:17
the freezebar basically implemented everything required to have the stars clientside
Avatar
Avatar
Tater
I was rather shocked how easy it was relative to how much arguing occurred
It's not that it was hard. Any config option was a huge issue at that moment in time
07:22
I think it still is to heinrich, but something this small is very maintainable and doesn't need constant testing. So I'm sure he won't mind that much
Avatar
Avatar
Learath2
It's not that it was hard. Any config option was a huge issue at that moment in time
It would be nice if there was some clarification on this. It seems like tiny features with a single config option that are trivial to maintain get rejected very often.
07:32
I've managed to maintain like 60 such tiny features downstream without having to rewrite any of them due to upstream changes.
07:32
the upstream devs weren't even aware they exist
07:35
I think what heinrich actually wants is to avoid feature creep/bloat but he should simply say that instead instead of claiming "maintainability" is difficult
Avatar
Avatar
Tater
It would be nice if there was some clarification on this. It seems like tiny features with a single config option that are trivial to maintain get rejected very often.
Jupstar ✪ 2024-09-11 07:40
The problem here is simple: We add a second solution to a problem that is already solved. I think it's simply not nice to add two solutions for the same problem. Freeze stars are clearly a workaround because ddrace at the time didn't create a custom client. If people want to more clearly see if one second passed in the freeze bar, then it could get separators
Avatar
It's simply that some people prefer the teeish look and the fact the stars stick to the gameworld, not the tee
Avatar
Jupstar ✪ 2024-09-11 07:52
It's simply that some ppl make a religion out of everything
Avatar
Bad argument
Avatar
Jupstar ✪ 2024-09-11 07:52
If we'd have forced everyone to use the newest version this discussion wouldn't exist today
Avatar
It would make no difference
Avatar
Jupstar ✪ 2024-09-11 07:53
Old freeze stars were not even predicted
07:53
They logically make no sense
Avatar
And people still enjoyed them, just because they don't make sense to you or "logically" doesnt mean they are bad, useless or harmful
Avatar
Jupstar ✪ 2024-09-11 07:55
I'd say bloat is harmful
07:55
If there is a clear advantage in freeze stars we can still make the bar better
Avatar
And: The discussion whether we want to add them back is over already. We will, (Learath2 wanted to do that a long time ago and just didn't have the time. @Tater please make a PR)
Avatar
Avatar
Jupstar ✪
If there is a clear advantage in freeze stars we can still make the bar better
Its not about that
Avatar
Jupstar ✪ 2024-09-11 07:55
If someone thinks that you can solve the freeze bar thing by simply replacing a texture, that would be a good workaround (edited)
07:57
At this point why not add 0.5 support
Avatar
Whataboutism
Avatar
Jupstar ✪ 2024-09-11 07:57
no
Avatar
Ye
Avatar
Jupstar ✪ 2024-09-11 07:57
That is your POV
Avatar
This is objectively
Avatar
Avatar
Jupstar ✪
If there is a clear advantage in freeze stars we can still make the bar better
Jupstar ✪ 2024-09-11 07:57
^
07:57
This is objectively
Avatar
0.5 is not used, not wanted and not maintained
07:58
the stars are wanted, said to be implented by learath already, and by many people (if you remember, I made some votes)
Avatar
Avatar
Jupstar ✪
If there is a clear advantage in freeze stars we can still make the bar better
But it's simply not about that
07:58
Its not that the freeze bar is bad, or not good enough
Avatar
Jupstar ✪ 2024-09-11 07:58
They clearly said they want the "OLD" freeze stars back. Indicating they don't understand the problem with freeze stars
Avatar
Could you elaborate
07:59
What Problems?
07:59
Prediction?
Avatar
Jupstar ✪ 2024-09-11 07:59
For example lack of prediction
Avatar
How does it matter if they are rendered clientside just like the freezebar
Avatar
Jupstar ✪ 2024-09-11 07:59
Freeze stars were simply wrong
Avatar
Bad argument
Avatar
Jupstar ✪ 2024-09-11 07:59
Could aswell remove them visually completely
Avatar
Avatar
fokkonaut
Bad argument
Jupstar ✪ 2024-09-11 08:00
Nope
Avatar
Avatar
Jupstar ✪
For example lack of prediction
freeze bar also lacks prediction currently
Avatar
K
Avatar
Jupstar ✪ 2024-09-11 08:00
that is a logical argument
Avatar
You dont seem to have good arguments today
Avatar
Avatar
fokkonaut
You dont seem to have good arguments today
Jupstar ✪ 2024-09-11 08:00
You never even started to argument
08:00
Like always basically
Avatar
If you say so
Avatar
Avatar
Tater
freeze bar also lacks prediction currently
Jupstar ✪ 2024-09-11 08:01
Then that should be fixed too, because otherwise it's not a complete feature
Avatar
the lack of prediction is kind of a feature
Avatar
Avatar
Tater
the lack of prediction is kind of a feature
Exactly
08:02
And there is no point in predictig it
Avatar
that's not true
Avatar
True
08:02
But it's not really required
Avatar
Jupstar ✪ 2024-09-11 08:02
???
08:02
fokko bro
08:02
Everything should be predicted
08:02
Otherwise it's a bug..
Avatar
the issue is that when you have high ping it makes the position of other tees very inaccurate so they enter/leave freeze a lot. So you will see someone enter freeze, change skin, get freeze bar. Then the next tick they are not in freeze.
08:03
presumably someone decided to not predict freeze for that reason
08:03
visually
08:03
in the physics they are still frozen
Avatar
Avatar
Tater
the issue is that when you have high ping it makes the position of other tees very inaccurate so they enter/leave freeze a lot. So you will see someone enter freeze, change skin, get freeze bar. Then the next tick they are not in freeze.
Jupstar ✪ 2024-09-11 08:03
Sure but that is a different issue. You cannot foresee the future. The task of prediction is as the name suggest to predicts what happens
Avatar
I've tested it before it subjectively looks worse
Avatar
Avatar
Jupstar ✪
Otherwise it's a bug..
Not really
Avatar
Jupstar ✪ 2024-09-11 08:04
Also human input is not really fast, so in many cases prediction will be right
Avatar
it makes it impossible to tell if someone next to you in gores is actually frozen or just antiping frozen because their skin will show frozen 90% of the time
Avatar
Avatar
Tater
I've tested it before it subjectively looks worse
Jupstar ✪ 2024-09-11 08:04
I dunno, it's like the fast input discussion
08:04
Theoretically that is a bug
08:05
But the fewer input lag still feels good
Avatar
fast input has not even been discussed lol
Avatar
Jupstar ✪ 2024-09-11 08:05
Well we discussed it
Avatar
Avatar
Tater
it makes it impossible to tell if someone next to you in gores is actually frozen or just antiping frozen because their skin will show frozen 90% of the time
jupey, did you read that? :D
Avatar
the way that ddnet does it atm is industry standard. fast input is the weird way
08:05
but it's not bad
Avatar
Avatar
fokkonaut
jupey, did you read that? :D
Jupstar ✪ 2024-09-11 08:06
Fact is most ppl play with ping 20 and not 300. With ping 300 everything teleports around
08:06
So this is not as bad as you make it seem
Avatar
But thats the point where antiping is really required
Avatar
Avatar
Jupstar ✪
So this is not as bad as you make it seem
Imo you dont seem to have that full picture. Many people will complain
Avatar
Jupstar ✪ 2024-09-11 08:06
Antiping is in first step a way to make the game feel smooth for a local player
08:06
So your assumption is already wrong
Avatar
Avatar
Tater
it makes it impossible to tell if someone next to you in gores is actually frozen or just antiping frozen because their skin will show frozen 90% of the time
But it wont be smooth by that
08:07
LIL
08:07
LOL*
Avatar
Jupstar ✪ 2024-09-11 08:07
If you remove prediction completely it will look be unsmooth too
Avatar
Anyways you only try to push your opinion today without arguments. Have a good day
Avatar
Jupstar ✪ 2024-09-11 08:07
because you suddenly teleport around when hitting someone that isn't there
Avatar
Avatar
fokkonaut
Anyways you only try to push your opinion today without arguments. Have a good day
Jupstar ✪ 2024-09-11 08:08
No, you very clearly don't understand what antiping and prediction are
08:08
That's a simple fact
Avatar
Avatar
Tater
I've managed to maintain like 60 such tiny features downstream without having to rewrite any of them due to upstream changes.
Your entire job is to maintain the 60 tiny features for your client. We have to make sure the entire client is maintained
Avatar
Avatar
Jupstar ✪
That's a simple fact
Assuming things are a fact is a dangerous thing
Avatar
Jupstar ✪ 2024-09-11 08:08
If turning off prediction could fix anything, why shouldn't we do it?
Avatar
Avatar
fokkonaut
Assuming things are a fact is a dangerous thing
Jupstar ✪ 2024-09-11 08:08
That is the result of your non existing arguments
Avatar
No need to get personal
Avatar
Avatar
Learath2
Your entire job is to maintain the 60 tiny features for your client. We have to make sure the entire client is maintained
that's fair
Avatar
Mr. mad
Avatar
Avatar
fokkonaut
Mr. mad
Jupstar ✪ 2024-09-11 08:08
no need to get personal
Avatar
Ha-ha (edited)
Avatar
Avatar
Jupstar ✪
No, you very clearly don't understand what antiping and prediction are
And you clearly dont have the full picture, understanding people's needs are different from "what is logically and programatically ''''correct''''."
08:10
And thats a fact
Avatar
Avatar
fokkonaut
And thats a fact
Jupstar ✪ 2024-09-11 08:10
That is your fact
Avatar
Ah, based on your 'argumenrs'
Avatar
Jupstar ✪ 2024-09-11 08:10
If you dislike prediction, do cl_predict 0 good luck playing the game
Avatar
Whataboutism
Avatar
Avatar
Jupstar ✪
Then that should be fixed too, because otherwise it's not a complete feature
Actually this specific thing probably looks better without prediction except for the specific case of 2 local tees, dummy + yourself
Avatar
Avatar
Learath2
Actually this specific thing probably looks better without prediction except for the specific case of 2 local tees, dummy + yourself
Jupstar ✪ 2024-09-11 08:11
That is still not the point
08:12
Everything should be predicted
08:12
If you want to opt-out, good luck
Avatar
maybe start clarifying your point instead
Avatar
Jupstar ✪ 2024-09-11 08:12
If you predict half of the game and not the other, that is bad
08:12
inconsistent
Avatar
Avatar
Tater
it makes it impossible to tell if someone next to you in gores is actually frozen or just antiping frozen because their skin will show frozen 90% of the time
.
08:12
Tater made a good point here
08:12
which you didnt even say anything to yet :)
Avatar
Well if it feels better, why does consistency matter? Prediction is for UX, no?
Avatar
Jupstar ✪ 2024-09-11 08:12
You ignored all my points about high ping
08:13
Because they are arguments.
Avatar
@Jupstar ✪ something's very off with you today
Avatar
Avatar
fokkonaut
@Jupstar ✪ something's very off with you today
Jupstar ✪ 2024-09-11 08:13
Yeah
08:13
I am trolled by random ppl in the internet
Avatar
@Tater if you've implemented predicted freezebar can we take a look? I'm curious how it feels
Avatar
Avatar
Jupstar ✪
I am trolled by random ppl in the internet
Like me or Learath2?
Avatar
Avatar
Learath2
Well if it feels better, why does consistency matter? Prediction is for UX, no?
^
08:14
Maybe you should try not to be that triggered, lol. Just trying to clarify things, asking questions, but you seem to be mad (edited)
Avatar
Jupstar ✪ 2024-09-11 08:14
I played this game a lot in my life. The lack of prediction for lot of things was always a downer. I personally think that predicting everything, and other players should be the default, because that is the clostest to what probably happens ingame
08:15
(esp. if anti-ping is on)
Avatar
Avatar
Jupstar ✪
I played this game a lot in my life. The lack of prediction for lot of things was always a downer. I personally think that predicting everything, and other players should be the default, because that is the clostest to what probably happens ingame
I think you didn't even understand the issue Tater mentioned
Avatar
Avatar
fokkonaut
I think you didn't even understand the issue Tater mentioned
Jupstar ✪ 2024-09-11 08:15
I do
Avatar
Avatar
Learath2
@Tater if you've implemented predicted freezebar can we take a look? I'm curious how it feels
I didn't save the code but it wasn't that hard, probably worth having as a checkbox in tclient so I'll do it again.
Avatar
Jupstar ✪ 2024-09-11 08:15
i played gores on chile servers a lot
08:16
And i can ensure you, you don't concentrate on others anyway at that point anymore. They teleport like crazy
Avatar
it's not just predicted freeze bar but also predicted tee skin for other players which was the main thing imo
08:16
it's possible that just freeze bar could be predicted
08:16
idk how that would feel (edited)
Avatar
Avatar
Jupstar ✪
And i can ensure you, you don't concentrate on others anyway at that point anymore. They teleport like crazy
Maybe predict freezebars for only local tees?
Avatar
Avatar
Tater
it's not just predicted freeze bar but also predicted tee skin for other players which was the main thing imo
Jupstar ✪ 2024-09-11 08:17
Sure but not even your own freeze is predicted currently
08:17
I think at least this is very bad
08:17
No matter the other arguments
08:17
The moment u touch someone with ping 300, u are doomed anyway
08:17
Then not predicting it makes it no better
Avatar
Avatar
Jupstar ✪
The moment u touch someone with ping 300, u are doomed anyway
I have an unfinished new version of the antiping smoothing algorithm which might fix this
08:18
tclient has "ghosts" feature for other tees which makes it easy to avoid bumping them on high ping in gores
Avatar
Avatar
Learath2
Maybe predict freezebars for only local tees?
Jupstar ✪ 2024-09-11 08:18
The problem is always, e.g. in ddrace it can defs make sense to predict others.. Often they don't move, or you do a "normal" ddrace part
08:18
And in these cases prediction will be correct even with high ping
08:18
That is why I'd say there should be prediction
08:19
And if ppl in gores really, which i personally doubt, are annoyed by it. Then it could be opt-out
08:19
I am mostly talking about anti-ping here
Avatar
the issue with antiping is that past a certain point it's actually worse than no antiping. by extrapolating the tee position for >10 ticks you remove all the "signal" from their position which makes it impossible to figure out where they actually are.
08:20
antiping smoothing should account for this but it doesn't really do anything
Avatar
Avatar
Tater
the issue with antiping is that past a certain point it's actually worse than no antiping. by extrapolating the tee position for >10 ticks you remove all the "signal" from their position which makes it impossible to figure out where they actually are.
Jupstar ✪ 2024-09-11 08:20
Sure, but at that point the game is kinda unplayable anyway, IMHO. If u play with chile players you simply avoid other players. That is how you play it
08:20
At best you don't interact with them
Avatar
I don't think it's that unplayable
Avatar
Jupstar ✪ 2024-09-11 08:21
Well you do up and down saves only and stay 10 tiles away from them
08:21
to not touch them
Avatar
the reason it's unplayable is because antiping is hiding all the information the server is actually telling you
Avatar
Jupstar ✪ 2024-09-11 08:21
But the information of the server is 300ms old
Avatar
it basically teleports the tees to a random position and you have no chance to figure out where they are
08:22
300ms old is much better than random
Avatar
Jupstar ✪ 2024-09-11 08:22
If someone suddenly stopped and you run into him, you are 100% doomed xD
08:22
with or without antiping
08:22
but 300ms is a lot of time in a high action game like gores
Avatar
you simply have not tried the tclient features that fix it lol
08:23
hold on I'll make a video
08:29
ok I have an issue to fix the video is delayed slightly
Avatar
normal antiping
08:56
with unpredicted ghost
08:56
@Jupstar ✪
08:57
when playing you just ignore the antiping player unless you're dragging them
08:57
and I bump much less
08:57
your brain is also much better at predicting their next 300ms of movement than the prediction is
08:59
the bigger issue is actually not the real player bumping you but the predicted player bumping you when the bump never even happened
Avatar
Avatar
Tater
the bigger issue is actually not the real player bumping you but the predicted player bumping you when the bump never even happened
Jupstar ✪ 2024-09-11 09:05
Yes that is undoubtedly an issue. At these pings prediction ofc also misspredicts stronger. The non-prediction is still not what is actually happening in the game tho. So in this situation opt-out probably makes sense. Funnily enough the last freeze then was correctly predicted 😄 I'd still like to test freeze prediction with low ping (<40) to see how annoying it is there. That is still the normal experience for most players
Avatar
Avatar
Jupstar ✪
Yes that is undoubtedly an issue. At these pings prediction ofc also misspredicts stronger. The non-prediction is still not what is actually happening in the game tho. So in this situation opt-out probably makes sense. Funnily enough the last freeze then was correctly predicted 😄 I'd still like to test freeze prediction with low ping (<40) to see how annoying it is there. That is still the normal experience for most players
Funnily enough the last freeze then was correctly predicted 😄
2% overall accuracy 😄
09:06
this problem is fixable in antiping smoothing though
09:06
as you can see even with it enabled there is almost zero smoothing
Avatar
Jupstar ✪ 2024-09-11 09:08
What i wonder tho. let's assume only the freeze skin is predicted, not the position: Sure most of the time it would incorrectly change skin. But the last freeze you would probably see the player is about to die (bcs close to freeze), I wonder if a visual feedback like freeze skin could make you react faster, or if the fact that skin often changes wrongly is more important
Avatar
it makes it look like you're playing in a team of ninjas
09:08
xd
09:12
it's unfortunately a very complicated problem. because you are must convey 2 gamestates to the player on 1 monitor. and with 1 camera position
09:14
and then they will still have 300ms of latency on top of your 2 gamestates issue
Avatar
Ирисочка 2024-09-11 10:01
What programming language is better to learn if I want to make programs for myself, for example, a messenger with a friend
10:01
Or #developer only for ddnet?
Avatar
#developer for all developer is fine
Avatar
Avatar
Ирисочка
What programming language is better to learn if I want to make programs for myself, for example, a messenger with a friend
Is it your first programming language you are learning?
Avatar
Ирисочка 2024-09-11 10:03
Yes
Avatar
I would usually suggest C to any starter, but if your intention is to start making useful things quickly it's not a very quick process. Python is probably the easiest to get started with and start making useful stuff in
Avatar
MilkeeyCat 2024-09-11 10:06
I would choose C if I woke up one day and forgot everything I learned xd
Avatar
Avatar
MilkeeyCat
I would choose C if I woke up one day and forgot everything I learned xd
Ирисочка 2024-09-11 10:07
justatest
Avatar
C is very good for learning no matter what the new nerds say. It forces you to learn at least some computer science
10:07
You need a vector, hashmap, list? Tough tits, make your own
Avatar
MilkeeyCat 2024-09-11 10:07
I remember how hard to me was to understand how to use pointers
Avatar
Ирисочка 2024-09-11 10:08
C++ or c# Is there a difference?
Avatar
Avatar
Ирисочка
C++ or c# Is there a difference?
Very different languages
10:08
C# is closer to Java
Avatar
Ирисочка 2024-09-11 10:08
And which one to choose?
Avatar
Depends on what you want to do. If you want to write business software for small-medium businesses targetting windows C# is much better
Avatar
MilkeeyCat 2024-09-11 10:09
https://wheelofnames.com/ type languages here and spin
Enter names, spin wheel to pick a random winner. Customize look and feel, save and share wheels.
Avatar
If you want to contribute to ddnet, make your own game engine, do high performance computing C++ is the way to go
10:10
(Or Rust really, probably much easier to work with for a beginner)
Avatar
choose a language that fits what you want to achieve, or choose one of the known "beginner" languages, (eg scripting languages like Python) - it doesn't matter what you begin with, after learning one language it's much easier to adapt to others
Avatar
Ирисочка 2024-09-11 10:10
Do I understand that C and C++ are different languages?
Avatar
C/C++ are riddled with pitfalls. Very hard to learn properly and make useful production ready software in
Avatar
Avatar
Ирисочка
Do I understand that C and C++ are different languages?
Yes
10:11
Very different
10:11
C++ is C with many modern new features like object oriented programming support and advanced metaprogramming
Avatar
MilkeeyCat 2024-09-11 10:12
wat's meta programming justatest
Avatar
Avatar
MilkeeyCat
wat's meta programming justatest
templates and macros and stuff
Avatar
Ирисочка 2024-09-11 10:12
Woow im want macros hehekek
Avatar
Avatar
Ирисочка
Woow im want macros hehekek
Ирисочка 2024-09-11 10:13
Im know it not allowed in ddnet
Avatar
C has macros, but no template blackmagic
Avatar
MilkeeyCat 2024-09-11 10:13
I always thought of templates as ugly generics
Avatar
Avatar
GitHub
Click to see attachment 🖼️
Heinrich coming back in hot
10:15
I wonder what sorts of mean words I'll be called for agreeing with it this time, can't wait for a nice fruitful discussion
Avatar
Ирисочка 2024-09-11 10:15
If im want made client for ddnet me need know c++
Avatar
Yes, C++ is essential for anything ddnet related
Avatar
MilkeeyCat 2024-09-11 10:16
but if he wants to make his own client he can choose any language he wants
Avatar
dd-pg is rust based btw cat_hehe - but yes for regular ddnet you'd want c++ knowledge
Avatar
Avatar
MilkeeyCat
but if he wants to make his own client he can choose any language he wants
Well, technically yes, but I doubt someone learning their very first programming language can reimplement teeworlds/ddnet without being able to read C++
Avatar
Avatar
Learath2
Well, technically yes, but I doubt someone learning their very first programming language can reimplement teeworlds/ddnet without being able to read C++
Ирисочка 2024-09-11 10:26
How to download c++ and where better coding? In visual studio code?
Avatar
Avatar
Ирисочка
How to download c++ and where better coding? In visual studio code?
you're better of finding a video online on a develop environment for c++ using visual studio / visual studio code - when you've familiarized yourself with it look into the GitHub readme to see how to use visual studio/ visual studio code to build and run ddnet
Avatar
Yeah, it's really hard to guide someone through the initial setup
Avatar
Jupstar ✪ 2024-09-11 10:33
I'd suggest to start with GUI coding, because you have visual feedback directly. E.g. typescript. When you understand some basics of coding, I'd switch to c/c++ to get a proper understanding of what programming languages do under the hood. At last switch to rust and contribute to twgame & create a launcher (edited)
Avatar
got this book home from work
Avatar
Ирисочка 2024-09-11 10:48
how to make two while true
10:48
or im cant?
10:50
huh red cube
Avatar
Jupstar ✪ 2024-09-11 10:51
In python u have to be careful with idention
10:52
Your second while loop never executes, bcs it's not part of the first
10:52
But while True is usually bad
Avatar
Ирисочка 2024-09-11 10:52
oke
10:52
im founded c++
10:53
Avatar
Jupstar ✪ 2024-09-11 10:53
in c++ it is also bad to use while true. while true means "for ever"
10:53
for ever: print(r). It will never do anything than printing r
Avatar
Ирисочка 2024-09-11 11:04
11:04
this is c++
11:04
Avatar
While true True is always 1 So this while loop is an endless loop, a bad one to be exact because there is no way for you to escape this endless loop
11:05
Ah gg Internet
Avatar
Avatar
Ирисочка
Click to see attachment 🖼️
Download the visual studio build tools with c++ support and the windows sdk appropriate to your system
Avatar
Ирисочка 2024-09-11 11:07
Скачайте бесплатную среду разработки Visual Studio IDE для создания межплатформенных приложений для устройств с Linux, iOS, Android, IoT и Windows с использованием новейших, соответствующих стандартам версий C и C++.
Avatar
Looks good ye
Avatar
Ирисочка 2024-09-11 11:10
I didn't really understand how I need to work in visual studio code or visual studio 2022
11:10
catkiss
11:11
im try using youtube
11:11
lol
11:14
for visual studio you don't need to do anything, it's a full IDE that comes with a compiler, you can just install and use that too
Avatar
Let’s Go (VS) Code - Red Team style or the Microsoft signed and hosted Reverse Shell TL;DR; MS is offering a signed binary (code.exe), which will establish a Command&Control channel via an official Microsoft domain https://vscode.dev. The C2 communication itself is going to https://global.rel.tunnels.api.visualstudio.com over WebSockets. An atta...
Avatar
when client side chat filter?
Avatar
"get good with cheat"
12:26
pfff
12:27
might delete the screenshot
Avatar
Avatar
Simon
when client side chat filter?
don't post the name of bot clients publicly please, we don't filter chat because chiller would go crazy
Avatar
Avatar
meloƞ
don't post the name of bot clients publicly please, we don't filter chat because chiller would go crazy
Jupstar ✪ 2024-09-11 12:30
😂
Avatar
why would u not want a chat filter?
Avatar
Jupstar ✪ 2024-09-11 12:30
You can discuss the feature without such a screenshot
12:31
We all know how chat spam looks like
Avatar
it is the first time someone is actually spamming me since pepe died
Avatar
Jupstar ✪ 2024-09-11 12:32
🫠
Avatar
this one is the first in years to spamm 100+ messages in the chat
Avatar
Original message was deleted or could not be loaded.
Jupstar ✪ 2024-09-11 12:32
you still shouldn't break the rules by mentioning it 😄
12:32
see #7
Avatar
Avatar
Simon
this one is the first in years to spamm 100+ messages in the chat
Jupstar ✪ 2024-09-11 12:33
Yeah it sucks, I agree
Avatar
theres not even a rule channel?
Avatar
Avatar
Simon
theres not even a rule channel?
Jupstar ✪ 2024-09-11 12:33
Ah it's in #welcome i think
Avatar
Original message was deleted or could not be loaded.
Jupstar ✪ 2024-09-11 12:34
#✉-create-a-ticket
12:34
promoting cheats is not allowed in public chat
12:34
by mentioning it you promote it
Avatar
this is the developer channel not the public chat
Avatar
Jupstar ✪ 2024-09-11 12:34
This is the public developer channel
12:35
I don't want to discuss this. Simply don't do it, because if you do it (even in good faith) others will do so too in bad faith
Avatar
Original message was deleted or could not be loaded.
You can say whatever you want in reports, no bot client names in any channel that everyone can see
Avatar
Avatar
Simon
when client side chat filter?
Not the worst idea, some people just prefer not to see certain stuff. If we don't have an issue for it we can create one
Avatar
how is there not an issue for it when stepfunn already talked about a client side chat filter 2 years ago
Avatar
I don't know if it may happen, but if the game grows, and maybe someone streams it, you may not want to get people banned because racial slurs being seen in the chat by a troll.
12:37
Heh, you were the one that got it bumped last time too
12:37
I wonder why no one implemented it yet, it's a quick feature
Avatar
Jupstar ✪ 2024-09-11 12:38
and can be cleanly separated from rest of code
12:38
string in, string out
Avatar
and is I think already implemented for serverside so just a copy paste job
Avatar
how about u make a setting where ppl can add custom words to the filter for a solution to the 'creative wording'
Avatar
In conclusion, it is my professional opinion that this feature isn't implemented because of a severe lack of developer
Avatar
Avatar
Simon
how about u make a setting where ppl can add custom words to the filter for a solution to the 'creative wording'
I would definitely just ship a simple list and people can add whatever they want to it as an extra
👍 1
Avatar
i know some python, but not how to actually program
Avatar
We also have str_utf8_to_skeleton that we can use for it if we want to make it a little harder to get through with creative spelling (edited)
Avatar
Avatar
Learath2
and is I think already implemented for serverside so just a copy paste job
Serverside requires a server restart for the wordlist to apply (would be nice if we could change that)
Avatar
Avatar
murpi
Serverside requires a server restart for the wordlist to apply (would be nice if we could change that)
For the serverside too?
Avatar
Yee, I think I tested it a year ago or so
14:50
I had to shutdown the server first for the worldlist to apply
Avatar
No I mean do you think there is value in it getting updated for serverside too?
Avatar
Definitely
14:51
We'd be able to censor bad spam messages, without restarting the server // relying on the antibot (or heinrich) (edited)
Avatar
fwiw that serverside list is only used in china for now, and idk if it censors phrases or hides messages entirely
14:52
It might not be ideal for catching repetitive spam
Avatar
It replaces the bad words with asterisks
14:53
fwiw that serverside list is only used in china for now
And that's what I don't get at all, why only use it for china
Avatar
people are creative, ull find out why all this stuff doesn't work as it should kek
Avatar
The claim that people can bypass the issue by changing a few letters is a seriously weak argument overall. (edited)
14:55
I can't imagine that every single person who happens to be a uber racist, has a word list with every variation of the n word saved in a text document just for ddnet. It's just too silly.
Avatar
Avatar
murpi
We'd be able to censor bad spam messages, without restarting the server // relying on the antibot (or heinrich) (edited)
what about rcon command to reload censored words list?
14:55
as we have with language client side
Avatar
Avatar
murpi
I can't imagine that every single person who happens to be a uber racist, has a word list with every variation of the n word saved in a text document just for ddnet. It's just too silly.
ask rei
14:55
justatest
Avatar
Avatar
GitHub
Click to see attachment 🖼️
the epic comeback of 5991
Avatar
Avatar
murpi
fwiw that serverside list is only used in china for now
And that's what I don't get at all, why only use it for china
It was a legal requirement in china to not get us into big trouble with the big Xi
✅ 1
Avatar
can someone explain why we assign BindAddr.type after parsing the bindaddr config variable using net_host_lookup here? same thing with ec_bindaddr for econ here. as far as i understand it net_host_lookup is supposed to parse the value and set BindAddr.type either to NETTYPE_IPV4 or NETTYPE_IPV6 and this determines how the 16 bytes in BindAddr.ip are to be interpreted. but if BindAddr.type is afterwards set to NETTYPE_ALL like in the econ code, this causes subsequent code to interpret it as both ipv4 and ipv6. when ec_bindaddr is localhost (the default) then net_host_lookup returns ::1 and when the first 4 bytes are interpreted as ipv4 this results in 0.0.0.0. so by default econ is exposed publicly... at first i thought this was just a bug in the econ code, but the standard server startup code does the same pattern of first calling net_host_lookup and then overwriting BindAddr.type. am i missing something?
Avatar
@Chilleroni Makkaroni, you online?
15:52
what is that supposed to do, the 10hz part? on one hand you got every 2 seconds a keepalive and this is every1 second input sending?
15:52
@ChillerDragon
Avatar
Avatar
timakro
can someone explain why we assign BindAddr.type after parsing the bindaddr config variable using net_host_lookup here? same thing with ec_bindaddr for econ here. as far as i understand it net_host_lookup is supposed to parse the value and set BindAddr.type either to NETTYPE_IPV4 or NETTYPE_IPV6 and this determines how the 16 bytes in BindAddr.ip are to be interpreted. but if BindAddr.type is afterwards set to NETTYPE_ALL like in the econ code, this causes subsequent code to interpret it as both ipv4 and ipv6. when ec_bindaddr is localhost (the default) then net_host_lookup returns ::1 and when the first 4 bytes are interpreted as ipv4 this results in 0.0.0.0. so by default econ is exposed publicly... at first i thought this was just a bug in the econ code, but the standard server startup code does the same pattern of first calling net_host_lookup and then overwriting BindAddr.type. am i missing something?
Jupstar ✪ 2024-09-11 16:07
Looks weird, i'd create an issue on GH
16:09
I wonder how you bind an addr to NETTYPE_ALL tho
Avatar
i'm sending a PR
16:09
the code interprets the same 16 bytes as ipv6 and ipv4 (only first 4 bytes here) and binds to both
16:10
which is nonsense
Avatar
Jupstar ✪ 2024-09-11 16:10
And how will you bind NETTYPE_ALL in your PR?
Avatar
the fix is to not set NETTYPE_ALL
Avatar
Jupstar ✪ 2024-09-11 16:11
and how to bind ipv6 & 4 at the same time?
Avatar
you don't
16:11
at least not for econ, which is the only thing i'm touching
16:11
not sure how the server.cpp code works
Avatar
Jupstar ✪ 2024-09-11 16:11
mh k
16:14
"The value AF_UNSPEC indicates that getaddrinfo() should return socket addresses for any address family (either IPv4 or IPv6, for example)" This would then be lost
Avatar
it's not lost, you can specify either ipv4 or ipv6 but not both
Avatar
GitHub BOT 2024-09-11 16:24
Fixes a bug where econ was exposed publicly when ec_bindaddr was set to localhost. Also implements the original intention of 85f5e9c that is to disable econ if ec_binaddr is invalid. I've tested the following values and they behave as expected now: ec_bindaddr "localhost" # listens on ::1 on my system ec_bindaddr "127.0.0.1" ec_bindaddr "0.0.0.0" ec_bindaddr "[::1]" ec_bindaddr "[::]" ec_bindaddr "nonsense" # prints error and disables econ Explanation: The old code...
Avatar
Avatar
GitHub
Click to see attachment 🖼️
nice catch :o
Avatar
nice
Avatar
Avatar
timakro
it's not lost, you can specify either ipv4 or ipv6 but not both
Jupstar ✪ 2024-09-11 16:33
but then it's lost
16:34
it's not both at the same time xd
Avatar
ah but getaddrinfo() is still called on the value of ec_binaddr and parses the address
16:35
it tells us whether the address in ec_binaddr is an ipv4 or an ipv6 address
Avatar
Jupstar ✪ 2024-09-11 16:38
ah right you can still use/disable IPV6_V6ONLY to allow ipv4 connections
Avatar
that's totally separate but yeah
Avatar
Jupstar ✪ 2024-09-11 16:39
yes
16:39
i thought that is what we mean with ALL
16:39
xd
Avatar
my take is what i wrote in the PR:
In general having a NETADDR instance with the type field set to NETTYPE_ALL never makes sense. These 16 bytes are either an ipv4 address or an ipv6 address but not both.
16:40
hoping there is not some black magic in the code i'm not understanding ...
Avatar
Jupstar ✪ 2024-09-11 16:40
Yes, you are right. The black magic is that flag already
Avatar
Jupstar ✪ 2024-09-11 16:55
@timakro will you not fix it for the other sockets? Should at least create an issue ig
Avatar
i can open an issue
Avatar
Seems wrong to do it for UDP sockets, don't we currently support connecting to servers both with IPv4 and IPv6? 8930 makes it so econ only binds on either, whereas previously you could connect with both if you used ec_bindaddr "localhost".
Avatar
true, but i think it's unrelated to udp vs tcp
Avatar
Avatar
Robyt3
Seems wrong to do it for UDP sockets, don't we currently support connecting to servers both with IPv4 and IPv6? 8930 makes it so econ only binds on either, whereas previously you could connect with both if you used ec_bindaddr "localhost".
Jupstar ✪ 2024-09-11 17:00
But it's kinda weird to have a bindaddr that makes it bind to other formats
17:00
maybe our bindaddr should be an array
Avatar
i mean ip addresses are either ipv4 or ipv6 by definition. but you could make a case for a string like localhost to bind to both
Avatar
Avatar
timakro
i mean ip addresses are either ipv4 or ipv6 by definition. but you could make a case for a string like localhost to bind to both
servers can bind to two different interfaces with ipv4 and ipv6 though, which seems to be the default if you don't specify a bindaddr
Avatar
yeah we cannot lose that behavior, you're right
Avatar
Avatar
Jupstar ✪
maybe our bindaddr should be an array
yeah, or a separate bindaddr6 would be enough
Avatar
binding to everything, i.e. 0.0.0.0 and [::] is actually one of the few things that can be represented using a NETADDR with NETTYPE_ALL because both are just all zeros in binary representation
Avatar
Jupstar ✪ 2024-09-11 17:05
but that also looks hacky
17:05
we should give clear solutions
Avatar
separate bindaddr6 seems like a good solution
Avatar
Jupstar ✪ 2024-09-11 17:06
yeah
17:06
i guess that is the best xd
Avatar
you can create an issue if you want
Avatar
Jupstar ✪ 2024-09-11 17:07
xd
Avatar
GitHub BOT 2024-09-11 17:09
For domains it can make sense to have them both resolve to ipv4 & ipv6. But for ips, it's rather weird to use a ipv4 to bind to a ipv6 socket. To make this separation clear, the bindaddr should be specified for both individually
17:09
0ad1c08 Fixes a bug where econ was exposed publicly when ec_bindaddr was set to localhost - timakro af1b32d Merge pull request #8930 from timakro/pr-fix-econ-listening-publicly - def-
Avatar
GitHub BOT 2024-09-11 17:37
Avoid Vulkan crash if the backend is destroyed immediately after being created. Slightly decreases time of initial black screen before loading menu is rendered.

Checklist

  • [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 (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing...
Avatar
GitHub BOT 2024-09-11 18:26
128ffd2 Initialize client networking before graphics - Robyt3 d5e81ca Merge pull request #8932 from Robyt3/Client-Network-Before-Graphics - Jupeyy
Avatar
Cool, found a bug with the hot_reload xd
Avatar
Jupstar ✪ 2024-09-11 19:32
Cool
19:32
Or in tux's words: Ok cool
Avatar
is there a local server crashlog that I can use?
Avatar
Jupstar ✪ 2024-09-11 19:42
r u on windows?
Avatar
GitHub BOT 2024-09-11 19:44
Reduce duplicate and inconsistent code for rendering quick search for the demo browser, ingame vote list, player flag, skin, skin 0.7 and asset search. The quick search and exclude in the server browser are not refactored, as they have additional labels and different alignment, which would make a general function complicated.

Checklist

  • [X] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuratio...
Avatar
Avatar
Cellegen
Cool, found a bug with the hot_reload xd
use pest repellent to kill the bug
20:36
Avatar
Avatar
Jupstar ✪
r u on windows?
Yes but I don't see how a gameplay feature is being affected depending on OS xd
Avatar
So, what's the bug?
Replying to @Cellegen Cool, found a bug with the `hot_reload` xd
Avatar
Avatar
Cellegen
Yes but I don't see how a gameplay feature is being affected depending on OS xd
Jupstar ✪ 2024-09-11 20:41
yes but then there should be a crashdump
Avatar
Avatar
furo
So, what's the bug?
Somehow I managed to crash the server with the hot_reload feature by placing teleport to the tee's position in the editor and hot reloading upon save
20:42
I cannot replicate it and I thought maybe by using a crashlog, I can identify it
20:43
Upon further tests, in some cases it just doesn't teleport the player to the desired teleto position, but instead to the spawn position
Avatar
Avatar
Cellegen
I cannot replicate it and I thought maybe by using a crashlog, I can identify it
Jupstar ✪ 2024-09-11 20:46
%appdata%/ddnet/dumps
20:48
It seems to match with the crash I had
Avatar
Did you hot_reload while in super? This should already be fixed in nightly.
Replying to @Cellegen DDNet-Server_win64-steam_crash_log_2024-09-11_20-35-52_9324_bae736293a2b…
Avatar
Jupstar ✪ 2024-09-11 21:10
Wow Wow Today i worked on the graphics card dropdown in ddpg. I opened the game over the debugger and saw that only amdvlk was in the list. I thought: ok weird, where is radv and lavapipe, like in ddnet cpp. I assumed steam somehow modifies the env vars. I created a release build and started without debugger and there they were. That made me curious about a completely different problem I have since around one year. Whenever I debug the game with the sound backend on, it disconnects the debugger for an unknown reason 50% of the time. Graphic drivers have hdmi support, hdmi has audio support. my debugger only loads amdvlk. I uninstalled amdvlk. The fcking sound debugger disconnect problem is gone. Omg dude, I just cannot believe this randomness sometimes. Completely randomly suffered for 1 year with a random weird non-sense problem. I always said radv is better than amdvlk, but i never was hostile against amdvlk. that changed today lol lol lol lol
Avatar
Jupstar ✪ 2024-09-11 21:23
nice they apparently fixed it in the q3 update from 2 weeks ago. so if u have q2 directly purge. man i blamed pipewire, i blamed the rust lib. i blamed everything i had. the graphics driver was really the last thing i thought about 😄
Avatar
@Tater did u ever write smth on the tas algo you use ("search and refinement")?
Avatar
Avatar
furo
Did you hot_reload while in super? This should already be fixed in nightly.
nope
22:13
wanted to test out a ddrace map with a dummy, didn't use super during my lan host
22:14
dummy never touched the tp, only the real player did
Avatar
GitHub BOT 2024-09-11 22:14
d3f0c2a Extract CUi::DoEditBox_Search function for quick search - Robyt3 66fb5d5 Merge pull request #8933 from Robyt3/UI-EditText-Searchable - def-
Avatar
Avatar
Cellegen
dummy never touched the tp, only the real player did
there is also a switch, which deactivates a tee dragger, which the dummy needs to hit
22:16
22:17
switch is connected to the switch door and the tee dragger, both will disable if it's hit, now idk if that's the cause of it, I'll test it out on this map still (prob tomorrow) (edited)
Avatar
Avatar
Jupstar ✪
Wow Wow Today i worked on the graphics card dropdown in ddpg. I opened the game over the debugger and saw that only amdvlk was in the list. I thought: ok weird, where is radv and lavapipe, like in ddnet cpp. I assumed steam somehow modifies the env vars. I created a release build and started without debugger and there they were. That made me curious about a completely different problem I have since around one year. Whenever I debug the game with the sound backend on, it disconnects the debugger for an unknown reason 50% of the time. Graphic drivers have hdmi support, hdmi has audio support. my debugger only loads amdvlk. I uninstalled amdvlk. The fcking sound debugger disconnect problem is gone. Omg dude, I just cannot believe this randomness sometimes. Completely randomly suffered for 1 year with a random weird non-sense problem. I always said radv is better than amdvlk, but i never was hostile against amdvlk. that changed today lol lol lol lol
Jia Tan is backdooring ddnet.
22:20
._.
Avatar
Whenever I debug the game with the sound backend on, it disconnects the debugger for an unknown reason 50% of the time.
Exported 428 message(s)
Timezone: UTC+0