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 2025-02-15 00:00 and 2025-02-16 00:00
Avatar
ChillerDragon: Voldemort client dev played on your name and got banned lol
00:21
We do automated name bans
00:23
You're unbanned now. If you make an account only you can play on your name
00:27
sry for the inconvenience we'll change some stuff in the future
Avatar
Avatar
ws-client
<ChillerDragon> why does it advertise cheat clients instead?
That is a good Point i will Change that as soon as possible
Avatar
Avatar
ws-client
<ChillerDragon> @Daniel why does the error message not say that?
Which error message?
Avatar
Avatar
Daniel
Which error message?
The ban message xd
Avatar
Avatar
Teero
The ban message xd
Oh yea we could be more specific...
Avatar
chillerdragon BOT 2025-02-15 01:01
less*
01:01
If you ban for cheat then don’t name the client brand
Avatar
But thanks for your feedback @ChillerDragon this will help us to improve 🙂
Avatar
chillerdragon BOT 2025-02-15 01:02
Yea the automated name bans sound dangerous
Avatar
It's like dual linked... Every IP is connected to nickname and every nickname to IP and the second link is kinda dangerous as i see the last time that alot of people get banned for using the name '.'
Avatar
chillerdragon BOT 2025-02-15 01:06
Imo ip and name should have to match both
Avatar
david loves Jellycar Worlds 2025-02-15 01:23
agreed
Avatar
Avatar
chillerdragon
Imo ip and name should have to match both
so they should be able to change their name and log back in? lol
Avatar
GitHub BOT 2025-02-15 05:30
1cab4b0 M X-Cross, A Romantic, M Semang 3 - ddnet-maps
Avatar
chillerdragon BOT 2025-02-15 06:59
Yes better that than allowing every player to name ban whoever they want
Replying to @Tater so they should be able to change their name and log back in?
07:01
I mean ideally cheaters wouldn’t be banned at all.
07:01
If there are no bans then you do not have to worry about ban bypasses. Most of the ban bypass protections affect legit users negatively.
07:03
There should be automated anti cheat which kicks and does not ban. That does not exclude players from the server permanently that try cheats but force them to switch to a legit client.
Avatar
david loves Jellycar Worlds 2025-02-15 07:05
agreed
07:06
also where is the downloaded maps stored on linux
07:06
wait nvm i dont need to know acsualy i read my code wong
07:06
(for context im going to fuzz the map parser) (edited)
Avatar
chillerdragon BOT 2025-02-15 07:09
@david loves Jellycar Worlds: do you play the game?
Avatar
david loves Jellycar Worlds 2025-02-15 07:09
yes
07:10
some
07:10
why?
Avatar
chillerdragon BOT 2025-02-15 07:10
Just curious
Avatar
david loves Jellycar Worlds 2025-02-15 07:10
fair.
07:10
also how are you talking though a bot lol. oh wait probs slack or whatever the outer comunicatson methed was
Avatar
chillerdragon BOT 2025-02-15 07:11
Doing fuzz and not knowing the map downloads sounds like some casual who never played the game and does not intend to play the game. But instead is a security researcher who fuzzes all open source projects. I want to know if someone doesn’t care about the game and doesn’t intent to stay around.
07:11
I am on matrix right now and sometimes irc
07:12
Fuzzing the map parser has been done already btw in case you didn’t know
07:12
Not that it hurts to do it again it’s nice that you do it
07:13
Might be interesting for you if you don’t know it already https://mmmds.pl/fuzzing-map-parser-part-1-teeworlds/
07:14
Now that I think about it that blog might fit into the ddnet wiki blog collection
Avatar
david loves Jellycar Worlds 2025-02-15 07:15
yea i saw that from the docs about the code on the website
07:15
im also planning on fuzzing the server connects but in a difrent way from them
07:15
but yea i play the game some
07:16
though im quite bad at it lol
Avatar
chillerdragon BOT 2025-02-15 07:16
Make sure to sell me some 0days before you publish the results. I need to install permanent anti cheat software on the machines of my fng player base
Avatar
david loves Jellycar Worlds 2025-02-15 07:16
lol
07:17
its my first time fuzzing funny enough
07:17
so dont exspect much
Avatar
chillerdragon BOT 2025-02-15 07:17
If you are real gangster you get fuzzing integrated into the official GitHub CI
Avatar
david loves Jellycar Worlds 2025-02-15 07:18
nah i dont feel like lerning how GitHub CI works
07:18
mabey someday though
Avatar
chillerdragon BOT 2025-02-15 07:18
But tbh not sure if I actually want slower CI runtimes. Maybe some external project with scheduled CIs for ddnet would be nicer
Avatar
david loves Jellycar Worlds 2025-02-15 07:19
what does CI stand for here anyways
07:19
never used it
Avatar
chillerdragon BOT 2025-02-15 07:20
Chiller Intelligence
🤣 1
07:20
Apple stole my slogan
07:20
jk continuous integration
Avatar
david loves Jellycar Worlds 2025-02-15 07:20
makes sence
07:21
it does some checks when pushing right?
Avatar
chillerdragon BOT 2025-02-15 07:21
And CD is ChillerDragon
07:21
Yes
07:21
The syntax is easy to learn
07:21
It’s yaml engineering
Avatar
david loves Jellycar Worlds 2025-02-15 07:22
and yea im gonna copy a lot of https://mmmds.pl/fuzzing-map-parser-part-1-teeworlds/ 's code lol. at least for the map fuzzing
Avatar
chillerdragon BOT 2025-02-15 07:22
You just put a Linux command into a text file and it runs. If it exits non zero pipeline fails
Avatar
david loves Jellycar Worlds 2025-02-15 07:22
will likely make my own for the network fuzzing though as i have a difrent idea on how to do it
Avatar
ws-client BOT 2025-02-15 07:24
<ChillerDragon> okay i collected enough ideas for my antibot now i am finally starting the repo. Any suggestions for a badass project code name?
Avatar
david loves Jellycar Worlds 2025-02-15 07:28
hmm hacker-catcher
07:28
or hacker-catchers
Avatar
ws-client BOT 2025-02-15 07:28
<ChillerDragon> sry but thats not badass enough
07:29
<ChillerDragon> i think its time to use a LLM
Avatar
david loves Jellycar Worlds 2025-02-15 07:29
Here are some badass name ideas for an anti-cheat for DDNet: Teeguard – A mix of Tee (from Teeworlds) and Guard, simple and effective. IronTee – Like Ironclad protection for your game. TeeShield – A strong, straightforward name that conveys protection. SentinelTee – Inspired by vigilant guardians. GhostTrap – A reference to catching invisible cheaters. AegisTee – Aegis means divine shield, combined with Tee. TeeStrike – Because cheaters deserve a swift strike. PurgeTee – Cleansing the game of cheaters. OverwatchTee – Keeping a watchful eye on players. ShadowSentinel – A silent yet unstoppable force against cheaters. Let me know if you want something more unique or themed differently! 🚀
Avatar
ws-client BOT 2025-02-15 07:29
<ChillerDragon> thats the only thing they can do :D generate text
Avatar
david loves Jellycar Worlds 2025-02-15 07:29
i already did lol
Avatar
ws-client BOT 2025-02-15 07:29
<ChillerDragon> thanks
Avatar
david loves Jellycar Worlds 2025-02-15 07:29
yw
Avatar
Visualize Ownership and Lifetimes in Rust. Contribute to cordx56/rustowl development by creating an account on GitHub.
08:16
epyc
08:16
@Learath2
08:16
made by a weeb
08:16
08:17
🟩 green: variable's actual lifetime 🟦 blue: immutable borrowing 🟪 purple: mutable borrowing 🟧 orange: value moved / function call 🟥 red: lifetime error - diff of lifetime between actual and expected
Avatar
Oooh, that looks cool
Avatar
Jupstar ✪ 2025-02-15 09:40
Chiller: Teelted
Avatar
how can i change someone's skin by server? help me on gamecontext.cpp
09:49
i added player_name and player_clan, which changes player info by admin or server
09:49
but stuck at player_skin
09:52
bool CServer::SetClientSkinImpl(int ClientId, const char *pSkinRequest, bool Set) { dbg_assert(0 <= ClientId && ClientId < MAX_CLIENTS, "invalid client id"); if(m_aClients[ClientId].m_State < CClient::STATE_READY) return false; // trim the skin char aTrimmedSkin[MAX_SKIN_LENGTH]; str_copy(aTrimmedSkin, str_utf8_skip_whitespaces(pSkinRequest)); str_utf8_trim_right(aTrimmedSkin); bool Changed = str_comp(m_aClients[ClientId].m_aSkin, aTrimmedSkin) != 0; if(Set) { // set the client skin str_copy(m_aClients[ClientId].m_aSkin, aTrimmedSkin); } return Changed; } -# i connected this codeblock to gamecontext.cpp and call it, but when i enter player_skin command, nothing happens
Avatar
LL(k) and LALR(1) parser generator for Rust. Contribute to jsinger67/parol development by creating an account on GitHub.
Avatar
Avatar
david loves Jellycar Worlds
and yea im gonna copy a lot of https://mmmds.pl/fuzzing-map-parser-part-1-teeworlds/ 's code lol. at least for the map fuzzing
They also wrote a blog post on fuzzing the Teeworlds network: https://logicaltrust.net/blog/2020/07/socketfuzzer.html Fuzzing the map format isn't really worth it unless for learning, you should easily find crashes everywhere because the format is mostly unchecked at the moment (edited)
The idea behind Socket Injecting Fuzzer is simple - fuzz applications working in the client-server architecture by mutating real data packets that are exchanged by them in real usage scenarios. Implementation is also simple because it is based on hooking network-related functions on one side (or both) of a connection and modifying outgoing data....
Avatar
ws-client BOT 2025-02-15 10:12
<ChillerDragon> @zhn when russians say "soft" they mean cheat right? Is it short for software? I have seen sentences such as "ddnet is not software" which really confused me
👍 1
Avatar
MilkeeyCat 2025-02-15 10:27
Imagine using parser generators
Avatar
chillerdragon: yeah, they often refer to cheats and bots as soft, like a short of software
Avatar
Avatar
Ryozuki
🟩 green: variable's actual lifetime 🟦 blue: immutable borrowing 🟪 purple: mutable borrowing 🟧 orange: value moved / function call 🟥 red: lifetime error - diff of lifetime between actual and expected
@Anime.pdf worths a try for you? justatest
Avatar
chillerdragon BOT 2025-02-15 11:44
How is software not ambiguous? How do you call non cheat software then?
Avatar
GitHub BOT 2025-02-15 11:46
ae4e576 Anime.pdf stepped down, cleanup - murpii
Avatar
"cleanup" is crazy :( (edited)
Avatar
@Anime.pdf 🫃
Avatar
Avatar
ws-client
<ChillerDragon> @zhn when russians say "soft" they mean cheat right? Is it short for software? I have seen sentences such as "ddnet is not software" which really confused me
cyberfighter 2 2025-02-15 12:00
smartest russian player
Avatar
Avatar
chillerdragon
How is software not ambiguous? How do you call non cheat software then?
we don't call software "software" in regular life
Avatar
ws-client BOT 2025-02-15 12:45
<ChillerDragon> @zhn weird stuff ngl. how do you call software then? program?
12:50
<ChillerDragon> i am so fucking unhappy with test output
12:51
<ChillerDragon> its full of spam i spend half day scrolling to the failed tests and half of my debug logs just get swallowed wtf
12:51
<ChillerDragon> GTEST is the most useless shit writing a better test framework can be done in 10 lines
12:54
<ChillerDragon> ok the log swallow i take back that was me editing the wrong file but i still hate GTEST
12:55
<ChillerDragon> i should probably blacklist client/prediction from my file finder i keep editing client code when i search for server file names
Avatar
Avatar
ws-client
<ChillerDragon> @zhn weird stuff ngl. how do you call software then? program?
Yap
Avatar
1 warning and 20 errors generated ah i thought sdl3 and sdl2 were similar enough xd
13:18
seeing as its 1 to 1 enough to make a compat library
13:19
that might actually be a good way to do conversion
Avatar
GitHub BOT 2025-02-15 13:20
It bothers me that SetPosition does not actually set the position. I keep writing pChr->SetPosition(Pos);pChr->m_Pos = Pos like a crazy person. It is not needed right now because the values are synced on tick. But to me it just seems wrong to not set the position in a method literally called SetPosition. As a easter egg the diff between syncing the postion on call vs on tick unlocks some interesting new teleportation exploits. 🚀 🚀 🚀 🚀 🚀 🚀 :ro...
Avatar
wacky pr
Avatar
Jupstar ✪ 2025-02-15 13:22
chiller completely drunk again
Avatar
gah sdl3 has missing docs
Avatar
MilkeeyCat 2025-02-15 13:24
did chillerdragon click on one of those scam links and they stole his github account instead of steam 😬
Avatar
@ChillerDragon isnt there antibot for fng by n** already?
Avatar
ws-client BOT 2025-02-15 13:32
<ChillerDragon> @Daniel i do not have permission from onbgy to use it so i have to reinvent the wheel yay time spent wisely
13:34
<ChillerDragon> @Solly which docs missing? I found sdl3 docs pretty good last time i tried and that was before official release xd
Avatar
to do with joysticks
13:34
most of the changes are simple renames
Avatar
ws-client BOT 2025-02-15 13:34
<ChillerDragon> ew sticks
Avatar
yeah but it doesnt compile...
13:35
if i dont fix it
Avatar
ws-client BOT 2025-02-15 13:35
<ChillerDragon> git log -S is your best friend
Avatar
i want sdl3 so i can copy files to clipboard
Avatar
ws-client BOT 2025-02-15 13:35
<ChillerDragon> who needs docs of changes when u can do this
Avatar
Avatar
ws-client
<ChillerDragon> @Daniel i do not have permission from onbgy to use it so i have to reinvent the wheel yay time spent wisely
im working on a teehistorian antibot for gores currently in rust based on tee-hee by @Zwelf what is based in tw-game by @Patiga
Avatar
ws-client BOT 2025-02-15 13:35
<ChillerDragon> git clone https://github.com/libsdl-org/SDL;cd SDL;git log -S$FuncNameYouMissFromSDL2
Avatar
Avatar
ws-client
<ChillerDragon> git log -S is your best friend
y
13:36
ah
13:36
very cool
Avatar
ws-client BOT 2025-02-15 13:36
<ChillerDragon> so not real time but can be applied to teehistorian files @Daniel ?
Avatar
Avatar
ws-client
<ChillerDragon> so not real time but can be applied to teehistorian files @Daniel ?
yep. i think using antibot.cpp could be also interesting but with that you can improve the detection and rerun it on all runs again.
Avatar
twgame is from Zwelf! ^^
Avatar
ws-client BOT 2025-02-15 13:39
<ChillerDragon> yea ddrace can really be done after the fact
Avatar
yet again i am cucked by window being hidden from everywhere
Avatar
ws-client BOT 2025-02-15 13:39
<ChillerDragon> its more about removing ranks
Avatar
Avatar
Patiga
twgame is from Zwelf! ^^
did i messed up and switched the repos?
Avatar
ws-client BOT 2025-02-15 13:39
<ChillerDragon> in pvp modes you want real time otherwise enemys suffer
13:39
<ChillerDragon> but yes interesting approach maybe i should start recording teehistorian too never did that
Avatar
Avatar
ws-client
<ChillerDragon> in pvp modes you want real time otherwise enemys suffer
you only host block servers, correct?
Avatar
ws-client BOT 2025-02-15 13:40
<ChillerDragon> then you can have automated testes for antibot without having to test it in production
13:40
<ChillerDragon> @Daniel incorrect
13:40
<ChillerDragon> zillyhuhn incorporated conglomerate hosts an array of different gamemodes since decades
13:41
<ChillerDragon> this is what is running on my vps right now
Avatar
i dont do auto bans... the final approach is to write demos out of "sussy" gameplay and anonymize it to show it to legit players and trusted ones.. and they can get the demo or just a file with extra info and the demo itself to watch and say if they thing it a bot or not (kinda like in cs2/csgo the overwatch)
Avatar
ws-client BOT 2025-02-15 13:42
<ChillerDragon> yea sounds fun @Daniel
Avatar
isnt the antibot based on teehistorian interesting for ddrace server hosted by yourself?
Avatar
ws-client BOT 2025-02-15 13:42
<ChillerDragon> i have no cheaters in ddrace at least none i care about
Avatar
thankfully
Avatar
Avatar
Daniel
i dont do auto bans... the final approach is to write demos out of "sussy" gameplay and anonymize it to show it to legit players and trusted ones.. and they can get the demo or just a file with extra info and the demo itself to watch and say if they thing it a bot or not (kinda like in cs2/csgo the overwatch)
don't even need to deal with demo files necessarily, could have a server just replaying the events
Avatar
ws-client BOT 2025-02-15 13:43
<ChillerDragon> but i think it would be cool for fng too just to have something you can throw antibot against
Avatar
Avatar
risu
don't even need to deal with demo files necessarily, could have a server just replaying the events
you can host and provide like a website where they can do the overwatch and can vote... but this idea only work with active playerbase who support it
Avatar
ws-client BOT 2025-02-15 13:44
<ChillerDragon> i havent even started to write antibot not sure if i will ever do haha but i will start with live stuff and maybe one day ill look into teehistorian
13:44
<ChillerDragon> my fng playerbase is 99% botters
Avatar
Avatar
Daniel
you can host and provide like a website where they can do the overwatch and can vote... but this idea only work with active playerbase who support it
I'm just saying that manually dealing with demo files is more effort than connecting to special overwatch server
Avatar
i need sdl_window m_pWindow from backend_sdl everywhere, should i 1. weezel it thru some init like other places do 2. just expose it in IGraphics (its not like theres gonna be another backend any time soon) (edited)
Avatar
though it's obviously a lot fancier on the server end
Avatar
CS's Overwatch stopped working after this "area" was also botted :)
Avatar
ws-client BOT 2025-02-15 13:45
<ChillerDragon> @Daniel i would never trust players with saying who is bot or not
13:45
<ChillerDragon> people throw out cheating accusations way too much
Avatar
since teeworlds dont support dynamic tiles you cant trap like players for 1 tick to a freezebox to check they behauvior.. like every normal person shouldnt see big diff and just press "a" for example but every bot would trigger all there things to prevent to go into the freeze xD
Avatar
ws-client BOT 2025-02-15 13:45
<ChillerDragon> @Daniel interesting
Avatar
i thought u could do something with the map in real time
13:46
like how infclass does the seelction wheel
Avatar
like place freeze block under someone and if they insta jump and they do it multiple times you can say for sure they use avoid freez
Avatar
Avatar
Daniel
since teeworlds dont support dynamic tiles you cant trap like players for 1 tick to a freezebox to check they behauvior.. like every normal person shouldnt see big diff and just press "a" for example but every bot would trigger all there things to prevent to go into the freeze xD
also youll just get urself into a war if your detection methods are not stealthy
Avatar
MilkeeyCat 2025-02-15 13:47
@Ryozuki let program = Program { globals: vec![], functions: vec![Function { registers: vec![Register { name: "1".into(), ty: Ty::I8, }], name: "main".into(), blocks: vec![BasicBlock { name: "0".into(), instructions: vec![Instruction::Copy { operand: Operand::Const(ValueTree::Leaf(Const::I8(0x45))), place: Place::Register(0), }], terminator: Terminator::Return(Some(Operand::Place(Place::Register(0)))), }], params: vec![], ret_ty: Ty::I8, }], }; I can finally generate assembly for dis
Avatar
ws-client BOT 2025-02-15 13:47
<ChillerDragon> infclass selection wheel uses client exploit based on map file format and live patches the client to support custom protocol
Avatar
Avatar
Solly
also youll just get urself into a war if your detection methods are not stealthy
yep
Avatar
noice
Avatar
you have to do something heuristic probably
Avatar
but since i dont implement it in realtime i dont do it... hahahahha i waited and think about this like 1min and just say ahh dont care... you can improve and changed the logic all the time
Avatar
if you want to stop the spread of hacked clients maybe ban the voldermort client message /:
Avatar
its always a war between antibot and cheaters
Avatar
ws-client BOT 2025-02-15 13:48
<ChillerDragon> i censored it on my servers
Avatar
yea i will now hide my thoughs in silence
Avatar
ws-client BOT 2025-02-15 13:48
<ChillerDragon> new trend now is to kick players and the vote reason is a bot ad
👍 1
Avatar
Avatar
Daniel
its always a war between antibot and cheaters
fair, but if you are doing things where you are testing clients, youll start impacting normal players and not stop anyone for very long (a direction detection would be instantly fixed)
Avatar
even my ddos protection approach was public telled by me all the time.. nobody was interessted so i done it myself and it kinda work
Avatar
Avatar
ws-client
<ChillerDragon> new trend now is to kick players and the vote reason is a bot ad
never works tho
Avatar
ws-client BOT 2025-02-15 13:49
<ChillerDragon> the best protection against ddos is empty servers
🤣 1
Avatar
Avatar
ws-client
<ChillerDragon> the best protection against ddos is empty servers
5h into a playthrough, gets ddosed
13:49
damage is done
13:49
\; (edited)
Avatar
Avatar
Solly
fair, but if you are doing things where you are testing clients, youll start impacting normal players and not stop anyone for very long (a direction detection would be instantly fixed)
since you dont impact them since its based on some ticks and you teleport them back to the old state its okay... you can even trigger if they on plat or whatever...
Avatar
many servers with equal players works yeah, but rarely do multiple of the same map appear
13:50
except linear ):
Avatar
Avatar
Daniel
since you dont impact them since its based on some ticks and you teleport them back to the old state its okay... you can even trigger if they on plat or whatever...
itll flash peoples screens which is slightly annoying, although if you have some less good detection beforehand
13:50
will be lessso
13:50
try it and see how many complaints you get
Avatar
yea the ban messages will be changes today... but the kick instead of the ban will done in the next days
Avatar
if you get flashed only if you sus and only sometimes its okay. even if you standing on plat or whatever
13:52
okay time to play some geogeussr
Avatar
now i have, but not very useful
Avatar
if something is interesting with antibot i would appreciate a ping
Avatar
theres lots of functions which require the window object but previously didnt
13:52
and uhh
13:52
no one has the window object
13:53
modularity and all that, but everywhere is either implictly using the window or squirriling it through so i dont see the reason to keep it modular when its just a facade
13:53
^ cry about it
13:54
i mean i could dynamic_cast
13:54
might be considered witchcraft tho
Avatar
Avatar
Solly
theres lots of functions which require the window object but previously didnt
Which functions?
Avatar
settings mouse mode
Avatar
You could look at https://github.com/libsdl-org/sdl2-compat and see how that uses SDL3
Avatar
i assume it just keeps the most recent window
13:56
or first
13:56
whichever was the bheaviour in sdl2
Avatar
yeah, that's why I said to look at the code, then you don't have to assume anymore
Avatar
it doesnt make any difference, it has to store the window somewhere (because it has to call the equivilnat sdl3 func) (edited)
13:57
and ddnet only uses a single window
Avatar
GitHub BOT 2025-02-15 13:58
There is a thing in the teeworlds protocol which is called a m_PlayerFlag but ironically its not a flag for players but just for characters. Should be called CharacterFlag if you ask me. Anyways a real playerflag would be nice. To know what for example spectators are doing. Are they in the menu? scoreboard? chatting? This then allows to show the typing chat bubble for spectators on the cl...
Avatar
Avatar
Solly
settings mouse mode
Which function exactly? These don't take a window extern bool SDL_SetRelativeMouseMode(bool enabled); extern bool SDL_GetRelativeMouseMode(void);
Avatar
they do now?
14:00
bool SDL_SetWindowRelativeMouseMode(SDL_Window *window, bool enabled)
Avatar
Looks like it previously used the Window returned by SDL_GetKeyboardFocus()
Avatar
that still works, but it would be better to use just the window
Avatar
I guess the graphics backend just has to expose the window (as a void *) and then you cast back to SDL_Window * to avoid the dependency on SDL in the engine API
Avatar
ws-client BOT 2025-02-15 14:04
<ChillerDragon> @Daniel nice!
Avatar
Avatar
Robyt3
I guess the graphics backend just has to expose the window (as a void *) and then you cast back to SDL_Window * to avoid the dependency on SDL in the engine API
i was thinking to dynamic case the graphics backend
14:04
then error if its not sdl (which it wont be)
14:04
so if there is another backend it wont segfault
14:04
dynamic cast*
14:05
(and also doesnt require squiriling sdl_window thru a bunch of inits which is ... messy)
Avatar
dynamic_cast is usually wrong if you don't know what you are doing
Avatar
Avatar
Robyt3
dynamic_cast is usually wrong if you don't know what you are doing
all backends created will always be of sdl3, if its not then that should be an error
Avatar
Better not expose the window pointer at all, add a function to the graphics backend to call this SDL function
Avatar
rather than ssuming it is
14:06
thats fair
14:06
but there are so many sdl things called
Avatar
Same as Graphics()->SetWindowGrab which is probably similar
Avatar
that it would be ... massive
14:06
and id rather be it done in a seperate pr (edited)
14:07
(its kinda wack to just make the things which require window into graphics)
14:07
(instead of all sdl stuff)
14:07
(but then id avoid dynamic cast which u dont like)
14:08
(but there still alot of methods)
Avatar
yeah, changing to SDL3 would be a massive change anyway, it's not going to be done in a few hours. we also have a PR already: https://github.com/ddnet/ddnet/pull/9624
Work in progress, still doesnt compile, some stuff i dont know how it works like IME thats why im opening a draft pr if anyone wants to contribute further. https://github.com/libsdl-org/SDL/blob/ma...
Avatar
ive got that pulled
14:08
there are an innumerate amount of errors
14:08
which im slowly going through
Avatar
I'd rather have all SDL3 migration in one PR though, but separate commits
14:09
Ideally all the automatic changes with the renaming scripts from the migration guide would be separate commits
Avatar
how would i add to the pr anyway since i cant write to it
14:09
make a pr to the source branch?
Avatar
yeah, possible
Avatar
rememeber when ddnet changed ID to Id (edited)
14:12
sdl has done the opposite (edited)
Avatar
DDraceNetwork, a free cooperative platformer game. Contribute to ddnet/ddnet development by creating an account on GitHub.
14:28
uhh
14:28
almost
Avatar
Maybe a network timeout, you should be able to re-run the failed jobs:
Avatar
what a great day it is today owo
Avatar
Avatar
Robyt3
Maybe a network timeout, you should be able to re-run the failed jobs:
I am not
Avatar
ok, maybe only maintainers can do it, I restarted it
Avatar
merci ❤️
Avatar
it works
15:14
<ChillerDragon> omg yes its in the file name i see it now aaaaaaaaaaa
Avatar
The commit hash is in the crash dump filename
Avatar
ws-client BOT 2025-02-15 15:14
<ChillerDragon> ye but not inside the rtp right?
15:14
<ChillerDragon> i got trolled looking into the file
15:14
<ChillerDragon> the trace confuses me
Avatar
No, the author of Dr.Mingw was against adding a function for this I think
Avatar
ws-client BOT 2025-02-15 15:14
<ChillerDragon> troll ngl
15:14
DDraceNetwork, a free cooperative platformer game. Contribute to ddnet/ddnet development by creating an account on GitHub.
15:14
<ChillerDragon> how is line 19 reached without crashing in 16 17
15:15
<ChillerDragon> maybe 17 already died but UB moment did not let it crash yet?
Avatar
The lines don't seem to match exactly
15:16
It crashes in the str_copy call on line 17
Avatar
ws-client BOT 2025-02-15 15:16
<ChillerDragon> i see okay that makes sense
Avatar
ive fixed few hot reload crashes with https://github.com/ddnet/ddnet/pull/9160
Avatar
ws-client BOT 2025-02-15 15:31
<ChillerDragon> @kebs can you consitently reproduce the crashes you fixed? maybe you can reproduce the issue in the version he reported and if it was fixed we can close it
Avatar
yes it consistently crashed before my pr
15:33
dont know what that issue did so idk if its the same
15:34
crash 1: join team, join another team, hotreload = crash crash 2: dummy join team 1, main character join team 2, hotreload = crash
Avatar
@ChillerDragon how does team colors nameplate no worky
16:11
[it works?]
Avatar
chillerdragon BOT 2025-02-15 16:33
Which client is that?
Replying to @Solly ChillerDragon how does team colors nameplate no worky
16:34
I linked a chillerbot-ux bug not ddnet
Avatar
chillerdragon BOT 2025-02-15 16:55
Updating arch did not go so well
Avatar
MilkeeyCat 2025-02-15 16:57
Updating neovim plugins didn't go well
Avatar
GitHub BOT 2025-02-15 17:14
Randomly caught by UBSan in the CI: ``` /home/runner/work/ddnet/ddnet/src/game/client/components/camera.cpp:271:5: runtime error: load of value 190, which is not a valid value for type 'bool' 0 0x561f7a6063ab in CCamera::UpdateCamera() /home/runner/work/ddnet/ddnet/src/game/client/components/camera.cpp:271:5 1 0x561f7ae91b0f in CGameClient::OnRender() /home/runner/work/ddnet/ddnet/src/game/client/gameclient.cpp:801:11 2 0x561f7a154053 in CClient::Render() /home/runner/work/...
Avatar
@ChillerDragon was #9021 fixed? i cant reproduce
Avatar
This fixes the bug that moved spectators in game on hot_reload Checklist Tested the change ingame Provided screenshots if it is a visual change Tested in combination with possibly related confi...
Avatar
GitHub BOT 2025-02-15 17:51
8322e0f Fix uninitialized CCamera::m_IsSpectatingPlayer variable - Robyt3 809b0df Merge pull request #9681 from Robyt3/Client-Camera-UBSAN-Fix - Chairn
Avatar
GitHub BOT 2025-02-15 18:07
Fixes #9626

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
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/...
Avatar
ws-client BOT 2025-02-15 18:11
<ChillerDragon> it might have been fixed yes
18:12
<ChillerDragon> @kebs yes its fixed!
Avatar
i guess that hotreload pr, or resetting persistentdata in persistent whisper pr fixed it
Avatar
ws-client BOT 2025-02-15 18:29
<ChillerDragon> very nice kebs
18:30
<ChillerDragon> arch is unstable they say but i have to admit reading the arch wiki was super smooth but getting a kernel panic on debian is more scary
Avatar
ws-client BOT 2025-02-15 19:01
<ChillerDragon> ip grabber at? 134.122.64.174:8303
19:01
<ChillerDragon> impersnating Cup Of The Day server
19:01
<ChillerDragon> collecting ips for ddosing the tournament thats starting now i assume can we do some master banning?
19:01
<ChillerDragon> @deen @heinrich5991
Avatar
Why am I suddenly getting several valgrind and ubsan errors regarding uninitialized variables (ERROR SUMMARY: 4166 errors from 21 contexts (suppressed: 0 from 0)) from seemingly unrelated changes? pepeW Could changes in the overall memory layout cause this?
Avatar
maybe valgrind and ubsan can detect new things
Avatar
Looks like the new branches and old branches use the same versions of clang and valgrind though
19:21
Ohh, I added a CGameClient constructor. Maybe the default when no constructor is used defaults to zeroing the memory?
Avatar
GitHub BOT 2025-02-15 19:57
2ad6e9c Fix editor ctrl+right click selecting hidden layers/groups - KebsCS d9a0704 Merge pull request #9682 from KebsCS/pr-fix-ctrl-rightclick-hidden - Robyt3
Avatar
Ok, looks like a lot of variables are only initialized due to CGameClient's value initialization because there is no constructor
Avatar
chillerdragon BOT 2025-02-15 20:25
@kebs: epic fixes
Avatar
is #9512 ready to be merged btw?
Avatar
Summary As of: Feb. 8, 2025: Previously on Jan. 12, 2025 This PR focuses on making the automapping feature much more manageable and flexible for mappers and map designers. The features included/pla...
Avatar
cyberfighter 2 2025-02-15 20:53
does this add automap selection* (edited)
20:54
but someday i'll find a way to add it
Avatar
cyberfighter 2 2025-02-15 20:56
"pls decline pr, just make new layer and automap only the new stuff you made. smh average dev trying to bloat up ddnet!!!"
Avatar
where to report fake servers? 46.174.48.103:53010 fake clients
Avatar
46.174.48.103:53010[🇷🇺] is an official TeeFusion (Type: Block) server. TeeFusion is NOT affiliated with DDNet. Quick join: https://ddnet.org/connect-to/?addr=46.174.48.103:53010/
Avatar
Avatar
fokkonaut
where to report fake servers? 46.174.48.103:53010 fake clients
hm, it seems there is something wrong with it's register code rather than it faking players
Avatar
nah
21:45
why do you think so
21:45
?
Avatar
Avatar
Robyt3
They also wrote a blog post on fuzzing the Teeworlds network: https://logicaltrust.net/blog/2020/07/socketfuzzer.html Fuzzing the map format isn't really worth it unless for learning, you should easily find crashes everywhere because the format is mostly unchecked at the moment (edited)
david loves Jellycar Worlds 2025-02-15 21:56
yea i saw
Avatar
@Souly automapper update is getting merged rn
23:22
next nightly will go hard af
🥳 1
Avatar
GitHub BOT 2025-02-15 23:34
3946608 WIP on adding a reference layer to automapping - VoxelDoesCode b36a68e Add modulo function inside automap logic - VoxelDoesCode 425bbdc Big automap code touchups, several related bug fixes - VoxelDoesCode 658877e Merge pull request #9512 from VoxelDoesCode/better_automap - Robyt3
Exported 330 message(s)
Timezone: UTC+0