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-08-27 00:00 and 2024-08-28 00:00
Avatar
wasn't Issue 3994 resolved by #4383 ? (edited)
Avatar
Normal timeout codes don't work anymore, new ones don't support adding commands at the end with ; There was a discussion on Discord, multiple players asked me for this feature alrea...
Avatar
This feature only allows slash commands
Avatar
chillerdragon BOT 2024-08-27 00:17
You have a client? o.0 is it open source? Can it connect to ddnet servers?
Replying to @Cellegen about adding 0.7 support in my client xd
Avatar
Avatar
murpi
This feature only allows slash commands
That's unfortunate pepeW
Avatar
Avatar
chillerdragon
You have a client? o.0 is it open source? Can it connect to ddnet servers?
godot one i suppose
Avatar
GitHub BOT 2024-08-27 00:40
bbed430 Update SkinDB Crew: Souly in, clefairy' out (due to inactivity) - murpii
🍻 2
Avatar
GitHub BOT 2024-08-27 00:49
85bd958 Update tester team list - murpii
Avatar
@Souly soulin
Avatar
they see me soulin
Avatar
Avatar
GitHub
Click to see attachment 🖼️
@murpi typo <li><a href="/players/Knuski/">Kicker</a></li>
Avatar
Avatar
kebs
@murpi typo <li><a href="/players/Knuski/">Kicker</a></li>
Oops
Avatar
Avatar
Robyt3
That makes sense, SDL_OpenAudioDevice returns the specs that were actually applied but we ignore most of them
seems like SDL do give you the actual device sample rate. we stored it in FormatOut. And we do have a resampling algo that resamples from default 48k to FormatOut for CSamples. would it be possible that the resample code never runs on desktop (bcs modern audio driver does resampling themselves and allows application to provide 48k audio even if the device does not support it and mappers somehow figured only 48k audio does not sound bad so they just thought they have to use 48k audio) and the algo is just fucked up. cuz the resampling code looks very crude, forget about fft, it does not even interpolate (edited)
02:23
i'll repost this on github actually
Avatar
GitHub BOT 2024-08-27 04:30
fe69292 M run_hard_hundred - ddnet-maps
Avatar
Avatar
TsFreddie
seems like SDL do give you the actual device sample rate. we stored it in FormatOut. And we do have a resampling algo that resamples from default 48k to FormatOut for CSamples. would it be possible that the resample code never runs on desktop (bcs modern audio driver does resampling themselves and allows application to provide 48k audio even if the device does not support it and mappers somehow figured only 48k audio does not sound bad so they just thought they have to use 48k audio) and the algo is just fucked up. cuz the resampling code looks very crude, forget about fft, it does not even interpolate (edited)
Nice catch, that resampler doesn’t look very sane at all
Avatar
Avatar
Learath2
Nice catch, that resampler doesn’t look very sane at all
also changing to 44.1k works seems like a myth. it might sound ok because the resampler is skipped, but it is probably pitched / speed changed
06:28
cuz it looks like the resampler assumes all CSample is snd_rate
Avatar
Avatar
TsFreddie
also changing to 44.1k works seems like a myth. it might sound ok because the resampler is skipped, but it is probably pitched / speed changed
Changing to 44.1k where?
Avatar
Avatar
Learath2
Changing to 44.1k where?
snd_rate 44100
06:29
headbot said he changed the config and it fixed it on android
06:29
i didn't confirm any of that tho, i just looked at the code and assumed
Avatar
Ah, idk in what condition we resample, but if we ignore the original sample rate of the audio file that also sounds wrong
Avatar
Avatar
Learath2
Ah, idk in what condition we resample, but if we ignore the original sample rate of the audio file that also sounds wrong
if the playback device sample rate != snd_rate(which is 48000)
Avatar
Avatar
Learath2
Ah, idk in what condition we resample, but if we ignore the original sample rate of the audio file that also sounds wrong
yes, but i think headbot just didn't notice it was pitched
Avatar
Okay yeah your analysis sounds about right
Avatar
48000 playback at 44100 is probably not a crazy jump
06:32
a better resampler is definetly needed regardless, especially if we want to properly support map audio that uses different sample rate than 48000
Avatar
I wonder what the playback loop looks like though, if it were playing back at 44100 but the sample array has 48k spacing, it should create much weirder artifacts than just pitch
Avatar
Avatar
Learath2
I wonder what the playback loop looks like though, if it were playing back at 44100 but the sample array has 48k spacing, it should create much weirder artifacts than just pitch
the resampler resamples the whole PCM array in CSample. it was not a live resample
06:34
playback is probably just dump as much as it could from CSample.
Avatar
Yeah, but our audio files are 48k, if we load them, then set 41.1k snd_rate, how can they even be played properly?
Avatar
Avatar
Learath2
Yeah, but our audio files are 48k, if we load them, then set 41.1k snd_rate, how can they even be played properly?
the logic is kinda wrong. the resampler assumed every CSample is just snd_rate.
06:36
let me double check one sec
06:37
i was filling resignation forms lol
Avatar
Avatar
TsFreddie
the logic is kinda wrong. the resampler assumed every CSample is just snd_rate.
nope, i was wrong
Avatar
I should look at the code myself. I just checked the resampling loop and it's just decimating which is not ideal but not completely wrong
Avatar
oh wait
06:39
ye right
06:39
we resampled to snd_rate
06:39
not the actual sample rate provided by SDL
06:40
we never used FormatOut.freq
Avatar
Though we should do better than decimating because why not. We can atleast do linear interpolation like the comment suggests, or even cubic
Avatar
is audio resampling a solved problem. iirc i read somewhere if an audio does not have information below nyquist then resample is basically lossless. (edited)
06:43
or was it about dac
06:43
HUH
Avatar
It should be lossless, but I think you need sinc interpolation for it. Which isn't finite impulse response, so idk maybe not very realtime friendly
Avatar
isn't CSample resamples at load time anyway
06:45
👀
Avatar
Well I wouldn't want to implement sinc interpolation myself. We could just offload this to libswresample
06:46
It should even take care of high frequency components properly by filtering them out before resampling
Avatar
well, let's fix the audio device thing first.
06:46
i never heard a decimated audio resample, idk how crude it was
06:47
now. if only i know how to compile ddnet in 2024
06:48
oh wait i have a working directory for compiling ddnet on my work machine somehow.
Avatar
There is a way for decimation to be accurate. You first upsample so the new frequency is an integer multiple of the target frequency. Then you apply a lowpass filter to filter out anything that can't be properly sampled at the target frequency. Then you decimate
Avatar
huh?
Avatar
Did you clone ddnet-libs?
Avatar
i thought i did
06:51
i did
06:52
ah it was on a different commit
06:52
i never understood submodules fully
06:53
btw we already had libswresample
Avatar
Avatar
TsFreddie
btw we already had libswresample
What do we use it for?
Avatar
ffmpeg
Avatar
Ah it's part of ffmpeg
Avatar
So we probably only have it if we have the demo2mp4 thing
Avatar
ye
06:55
i honestly don't know why we need a render feature
06:55
but it is there i guess
Avatar
Avatar
TsFreddie
i honestly don't know why we need a render feature
Well theoretically we can do it muuuch muuch faster than just watching the entire demo
Avatar
theoretically
06:57
after i quit, i can take a look. it feels quite janky iirc
Avatar
Idk if we do rn tbf
Avatar
decimate sounds fine
07:01
i'm surprised
Avatar
GitHub BOT 2024-08-27 07:05
Fixes #8815
at least attempted to
Test needed from affected users. @headshot2017

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
  • [x] Changed no physics that affect existing maps
  • [ ] Tested the chan...
Avatar
do we have a android build github action
07:09
apparently not
Avatar
i have no idea how to build for android
07:11
kek
Avatar
catxplosion
Avatar
Avatar
TsFreddie
i'm surprised
Well it's fine as long as there are no high frequency components getting clipped, those will end up getting aliased if I remember my signal theory lessons
Avatar
Avatar
Learath2
Well it's fine as long as there are no high frequency components getting clipped, those will end up getting aliased if I remember my signal theory lessons
based
07:13
honestly m_MixingRate became unused. probably would be better just used it for the playback rate.
Avatar
Try decimating down to 16k or sth
Avatar
i just tried 22100 it sounds ok
07:13
and i'm lazy now
Avatar
Avatar
Learath2
Try decimating down to 16k or sth
tried 5512
07:14
sounds okay still
Avatar
Now that's curious 😄
Avatar
i mean apart from the usual loss of frequency
Avatar
The clipped high frequency components should be audible in lower frequencies
07:16
perhaps there just aren't that many obvious high frequency components in the tw music
Avatar
i mean i can record
Avatar
It is possible I'm just a fool
Avatar
my work pc's headphone is like 2 dollars
07:18
@Learath2 do you know how to compile for android btw
Avatar
Avatar
TsFreddie
@Learath2 do you know how to compile for android btw
nope
Avatar
brilliant
Avatar
GitHub BOT 2024-08-27 07:21
8b27a6e Add hot_reload to reload map while preserving state - furo321 29f3323 Merge pull request #8813 from furo321/hot-reload-maps - def-
Avatar
oh no, deen approved too fast
07:23
catxplosion
Avatar
Avatar
Learath2
Well it's fine as long as there are no high frequency components getting clipped, those will end up getting aliased if I remember my signal theory lessons
would the crude resampling mess with upsampling?
07:28
like from 16k to 48k
Avatar
GitHub BOT 2024-08-27 07:34
7c62b45 speedup demo with mouse scroll only if menu is active - Anime-pdf b30b493 Merge pull request #8819 from Anime-pdf/master - def-
Avatar
snd_rate 5512 killed the render feature
Avatar
WaylayYarik 2024-08-27 07:45
Why does the tutorial not start
Avatar
Avatar
WaylayYarik
Why does the tutorial not start
overskilled
Avatar
Most popular google result for ddnet: https://forum.ddnet.org/viewtopic.php?t=7248
Avatar
wait. godot dev is ddnet player?
08:26
08:33
@deen thoughts on #7142 ?
Avatar
Do we want to use a web app for managing translations? It might make the barrier to entry a little bit lower since you don't have to interact with github to start translating. I'd have some...
Avatar
one of my projects i want to do is a ebuild package manager (a.k.a portage alternative) https://projects.gentoo.org/pms/8/pms.html in rust
09:12
justatest
09:18
8f6d5d4 Add support for directories with add_map_votes - furo321 4b8dcc3 Merge pull request #8811 from furo321/add-map-votes-directories - def-
Avatar
Avatar
Ryozuki
one of my projects i want to do is a ebuild package manager (a.k.a portage alternative) https://projects.gentoo.org/pms/8/pms.html in rust
eh, why would you?
09:20
I guess it would be cool but portage isn't exactly too slow
Avatar
Avatar
Learath2
I guess it would be cool but portage isn't exactly too slow
it feels criminally slow resolving dependencies
09:21
it should take less than a sec
09:21
its the only part i care tbh xd
Avatar
Avatar
Ryozuki
it should take less than a sec
Mh, are you sure? I'm pretty certain the problem it's solving is NP-Complete
Avatar
hmm yarn handles also thousand packages and feels faster
09:22
i wonder if it can be parallelized
09:23
im sure its single core rn
Avatar
Well yarn, npm, brew, they all share one thing, they just don't resolve dependencies
Avatar
They just download every version of it needed
Avatar
idk.. i just wonder if it can be made multithreaded if it isnt and faster
Avatar
Well I guess it's worth giving it a look over
Avatar
the document describes some algorithms, so maybe rust wins there simply by optimization of that
09:24
i want my portage with avx-512 kek
09:26
Algorithm 5.1: USE masking logic 1: let masked = false 2: for each profile in the inheritance tree, depth first do 3: if use.mask contains flag then 4: let masked = true 5: else if use.mask contains -flag then 6: let masked = false 7: end if 8: if stable keyword in use then 9: if use.stable.mask contains flag then 10: let masked = true 11: else if use.stable.mask contains -flag then 12: let masked = false 13: end if 14: end if 15: for each line in package.use.mask, in order, for which the spec matches package do 16: if line contains flag then 17: let masked = true 18: else if line contains -flag then 19: let masked = false 20: end if 21: end for 22: if stable keyword in use then 23: for each line in package.use.stable.mask, in order, for which the spec matches package do 24: if line contains flag then 25: let masked = true 26: else if line contains -flag then 27: let masked = false 28: end if 29: end for 30: end if 31: end for
09:26
oh it doesnt preserve tabs
09:26
meh
Avatar
Yeah ok, the problem is most definitely np complete, it reduces to 3SAT I think
09:30
So you'll basically be looking to code a sat solver
Avatar
Developers don’t usually divide numbers all the time, but hashmaps often need to compute remainders modulo a prime. Hashmaps are really common, so fast division is useful. For instance, rolling hashes might compute u128 % u64 with a fixed divisor. Compilers just drop the ball here: fn modulo(n: u128) -> u64 { (n % 0xffffffffffffffc5) as u64 } m...
09:33
interesting
Avatar
GitHub BOT 2024-08-27 09:38
5fb059a Adjust slider handle size - sjrc6 9d920b3 Merge pull request #8703 from sjrc6/pr_slider - def-
Avatar
GitHub BOT 2024-08-27 09:46
Fix some minor stuff 0.7 translations are a lot of effort for something most players will never see. They also have weird constracts like "'%s' %sjoined the game"

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 inde...
09:47
02b358a Update translations for 18.5, remove 0.7-only translations - def- b9c8bbe Version 18.5 - def-
Avatar
Avatar
MilkeeyCat 2024-08-27 10:06
@Learath2 are only 64bit registers allowed in effective adrrss?
10:07
You know that thing in [] whatever it's called
Avatar
Well what are you trying to do even?
10:10
How would a 32bit register address 64bit address space anyway?
Avatar
MilkeeyCat 2024-08-27 10:10
I'm making structs for working with instructions parameters
10:11
And there's a struct called EffectiveAddress and it uses structure for register which includes a size
10:12
But it's not necessary if it's possible to use only 64bit registers
Avatar
Ah, good question, in 64 bit mode, only 64bit full registers can be the base
10:15
I'm guessing you are not supporting 32 bit anyway, so only 64 bit base
Avatar
MilkeeyCat 2024-08-27 10:16
Even then, it's used in arch/amd64.rs, each architecture implements a display trait for those structs, so in 32bit arch i can use 32bit register instead of 64bit one (edited)
Avatar
cool cool cool
Avatar
Avatar
MilkeeyCat
Even then, it's used in arch/amd64.rs, each architecture implements a display trait for those structs, so in 32bit arch i can use 32bit register instead of 64bit one (edited)
Careful btw, ESP for 32bit and RSP for 64bit can't be used as Index
Avatar
"there's no one byte one, hmmmm" there is tho?
10:44
bpl?
Avatar
MilkeeyCat 2024-08-27 10:44
i was looking at some image and there was no name for it
10:44
xdd
Avatar
It's probably less used because it requires a REX.B prefix
Avatar
why do they have an approval process for resignation
Avatar
It seems to be harder for you to resign than for me to find a job wtf
Avatar
wouldn't it be weird if resignation is deniable
Avatar
Avatar
Learath2
It's probably less used because it requires a REX.B prefix
Though now that I think about it it shouldn't result in longer instructions, hm curious
Avatar
MilkeeyCat 2024-08-27 10:47
After 1k loc refactor i can finally use offset keyword for moving a pointer instead of using lea 😏
Avatar
What document are you referring to for as documentation?
Avatar
MilkeeyCat 2024-08-27 10:49
stackoverflow justatest
10:49
oh and i just look at what gcc spits out
Avatar
@Learath2 is it unholy to store info in the unused bits of a pointer address?
10:53
iirc addresses are only 48bit
Avatar
Avatar
Ryozuki
@Learath2 is it unholy to store info in the unused bits of a pointer address?
No, verysoon(tm) we'll even have official support for it so you no longer need to mask it out again. LAM for intel, UAI for amd, TBI for aarch64
10:56
For now sadly the kernel people just can't agree on how to expose the functionality properly to users
10:57
Well also the fault of the cpu people tbh, they ended up with 3 very different implementations
10:58
[ddnet/ddnet-web] New branch created: pr-18.5
10:59
7908ebe Update translation status - def-
Avatar
MilkeeyCat 2024-08-27 11:01
@Learath2 what do you think about () in if, for statements?
Avatar
Avatar
MilkeeyCat
@Learath2 what do you think about () in if, for statements?
Not needed, except probably easier to parse with parens 😄
Avatar
MilkeeyCat 2024-08-27 11:05
The only feature they give is that you can write an expression without {} but I never use it anyways (edited)
11:10
Currently if you connect to your local server through LAN tab. You will be connected through your local ip, and not 127.0.0.1 or ::1 which will make the editor auto reload feature not work. This change fixes that by making the editor auto reload on any local IP.

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...
Avatar
GitHub BOT 2024-08-27 11:28
Sadly our map loading code isn't the fastest. In bigger maps saving maps in the editor can now be a bit annoying, because of the hot reload feature. https://github.com/user-attachments/assets/624a8329-3612-49c1-baa7-61fa94db9c6f
Avatar
Avatar
Learath2
Not needed, except probably easier to parse with parens 😄
MilkeeyCat 2024-08-27 11:47
fn if_stmt(&mut self) -> Result<Stmt, ParserError> { self.expect(&Token::If)?; let condition = self.expr(Precedence::default())?; let consequence = self.compound_statement(None)?; let alternative = if self.cur_token_is(&Token::Else) { self.expect(&Token::Else)?; Some(self.compound_statement(None)?) } else { None }; Ok(Stmt::If(StmtIf { condition, consequence, alternative, })) } it wasn't that hard to parse xd
Avatar
GitHub BOT 2024-08-27 11:47
358cd20 Run editor auto-reload on any local address, and not just localhost - furo321 3a2cecb Merge pull request #8823 from furo321/auto-reload-local-ips - def-
Avatar
Avatar
MilkeeyCat
fn if_stmt(&mut self) -> Result<Stmt, ParserError> { self.expect(&Token::If)?; let condition = self.expr(Precedence::default())?; let consequence = self.compound_statement(None)?; let alternative = if self.cur_token_is(&Token::Else) { self.expect(&Token::Else)?; Some(self.compound_statement(None)?) } else { None }; Ok(Stmt::If(StmtIf { condition, consequence, alternative, })) } it wasn't that hard to parse xd
cool cool cool
Avatar
MilkeeyCat 2024-08-27 11:48
justatest
Avatar
Avatar
Learath2
Well also the fault of the cpu people tbh, they ended up with 3 very different implementations
as always xd
Avatar
Avatar
Learath2
No, verysoon(tm) we'll even have official support for it so you no longer need to mask it out again. LAM for intel, UAI for amd, TBI for aarch64
lam seems to be supported on linux since 6.4
Avatar
Yep, but I think only LAM48 for now, so no 5 level paging (edited)
Avatar
MilkeeyCat 2024-08-27 12:40
@Learath2 🎉
Avatar
Avatar
MilkeeyCat
@Learath2 🎉
Let's goooo \o/
Avatar
MilkeeyCat 2024-08-27 12:51
&& and || doesn't work tho
Avatar
Let's not gooooo /o\
Avatar
Avatar
Learath2
Let's not gooooo /o\
MilkeeyCat 2024-08-27 13:04
It has cool syntax highlighting tho
Avatar
Make logical and and logical or work rn or we riot
13:06
btw, in my language if you declare u8* a, b both of them will be of a pointer type
Avatar
Does anyone know a hoster other than hetzner that has desktop hardware?
Avatar
Avatar
Learath2
FrierenDies
MilkeeyCat 2024-08-27 13:37
Is that bad? justatest
Avatar
Avatar
MilkeeyCat
Is that bad? justatest
No, but I'm a C addict so it feels wrong to me
Avatar
Avatar
MilkeeyCat
btw, in my language if you declare u8* a, b both of them will be of a pointer type
Can you declare vars of different types that way aswell?
13:39
u8 *a, i32 *b
Avatar
Avatar
meloƞ
Can you declare vars of different types that way aswell?
MilkeeyCat 2024-08-27 13:39
Just put it on a new line
Avatar
Avatar
MilkeeyCat
Just put it on a new line
No way you can do that ???
13:39
poggers2
Avatar
MilkeeyCat 2024-08-27 13:40
u8* a; i32* b;
13:40
You're welcome
Avatar
a, b, c := 10, 20, 30 I Like this in Go for inner scopes of Things, helps keeping Things tidy
Avatar
Avatar
Learath2
No, but I'm a C addict so it feels wrong to me
MilkeeyCat 2024-08-27 13:41
Time to learn new things old man
Avatar
Avatar
MilkeeyCat
Time to learn new things old man
Nooooooo not new things AaAAAAAAAAAAAAAAA
Avatar
MilkeeyCat 2024-08-27 13:43
At first I thought it was a bug, but then I realized it's a feature
Avatar
There are a fair bit of go users here now. Would y'all like to start a go revolution and riot against the rusters?
Avatar
Avatar
Learath2
There are a fair bit of go users here now. Would y'all like to start a go revolution and riot against the rusters?
Both.. both is good
Avatar
Yes, let's make it even more complicated
Avatar
WE all drop Go AND Rust and Just Use Zig
13:44
i hate german Keyboards
Avatar
MilkeeyCat 2024-08-27 13:44
I like dereferencing nil maps (edited)
Avatar
Autocorrection capitalizes every word
Avatar
Avatar
Learath2
There are a fair bit of go users here now. Would y'all like to start a go revolution and riot against the rusters?
Don't let ryozuki hear this justatest
Avatar
Avatar
Learath2
There are a fair bit of go users here now. Would y'all like to start a go revolution and riot against the rusters?
I bought the rust book today I can't turn back I'm sorry (edited)
13:48
😔
Avatar
Avatar
Teero
I bought the rust book today I can't turn back I'm sorry (edited)
MilkeeyCat 2024-08-27 13:48
Which book? (edited)
Avatar
Rust language book thing part 2
13:49
uhm
13:49
Wait
13:49
The quintessential guide to programming in Rust. Thoroughly updated to Rust’s latest version, this edition is considered the language’s official documentation.
13:50
I need smth to read when I'm not on my pc (edited)
Avatar
cyberfighter 2 2024-08-27 13:56
where is heinrich map database
Avatar
GitHub BOT 2024-08-27 14:01
Closes #7386 Default config values (ascending by time): !image Date descending: !image Name ascending: !image

Checklist

  • [x] Tested the change ingame
  • [x] Provided screenshots if it is a visual change
  • [ ] Tes...
Avatar
cyberfighter 2 2024-08-27 14:02
nevermind
Avatar
Avatar
cyberfighter 2
where is heinrich map database
Avatar
cyberfighter 2 2024-08-27 14:05
does someone know how to open these maps?
14:05
they have some kind of unsupported version
Avatar
you could try opening them with older clients
Avatar
cyberfighter 2 2024-08-27 14:06
older ddnet client or vanilla?
Avatar
vanilla I suppose, the first map is older than ddnet
Avatar
cyberfighter 2 2024-08-27 14:08
0.6.5 doesnt work
Avatar
Avatar
cyberfighter 2
0.6.5 doesnt work
try vanilla 0.5
Avatar
cyberfighter 2 2024-08-27 14:09
neither does even 0.5.2
14:09
it just crashed
Avatar
try 0.4 troll
Avatar
cyberfighter 2 2024-08-27 14:09
really
Avatar
send map download link
Avatar
oh god
14:09
it might be a simple fix
14:10
gimme a sec
Avatar
Avatar
zhn
try 0.4 troll
cyberfighter 2 2024-08-27 14:10
doesnt work
Avatar
Avatar
Patiga
it might be a simple fix
cyberfighter 2 2024-08-27 14:11
im just assuming its some weird client mod
14:11
then
Avatar
GitHub BOT 2024-08-27 14:12
Previously, when you voted a random unfinished map, but you already finished every map in that category, only the voter would be informed in chat: "You have no more unfinished maps on this server!" This may lead to confusion for other players on the server, so with this change, it'll show everyone the reason the map wasn't changed after a successful vote. !image

Checklist

  • [X] Tested the change in...
Avatar
cyberfighter 2 2024-08-27 14:12
asking since this server seems to have the same map as those 2 (edited)
14:12
and it also cant be loaded
Avatar
Avatar
Patiga
it might be a simple fix
wasn't too simple, but did this only with editing hex :D @cyberfighter 2
Avatar
cyberfighter 2 2024-08-27 14:30
sick
14:30
what was wrong with it btw
Avatar
they edited some values to prevent people from opening it with the editor
Avatar
cyberfighter 2 2024-08-27 14:32
gonna see if i can try joining that server now
Avatar
Avatar
Patiga
they edited some values to prevent people from opening it with the editor
cyberfighter 2 2024-08-27 14:33
also thats weird, why would they do that xd
Avatar
Заткни ебло 2024-08-27 14:34
Hello guys, are there any people here from Russia?
Avatar
not sure tbh
Avatar
Avatar
Заткни ебло
Hello guys, are there any people here from Russia?
yes, there are plenty russian players in here, if you want to write in russian, you can go over to #off-topic
Avatar
cyberfighter 2 2024-08-27 14:35
weird
Avatar
dunno what that error is
Avatar
Заткни ебло 2024-08-27 14:44
Sorry for the possibly stupid question, I was told that DDNT can be installed on a phone, is this true?
14:48
since it's basically a "beta" version expect bugs! (and feel free to report them) - best place to do so would be here: https://discord.com/channels/252358080522747904/1277345584080097320 (edited)
14:49
also - reminder: there are no stupid questions, only stupid answers
Avatar
2^5 * 9^2 = 2592
Avatar
Jupstar ✪ 2024-08-27 15:39
chillerdragon:
15:39
pls install discord
15:39
we need you
Avatar
GitHub BOT 2024-08-27 15:44
c4ff37d Send result of random_unfinished_map to all clients - bencie 7c8f9b4 Merge pull request #8826 from bencie/announce-unfinishedmap-voter - def-
Avatar
help please
15:48
when I try to record a demo, I see a black screen when I record this demo via OBS
Avatar
you dont need to record your demo - you can render it right in the client as an .mp4
Avatar
how&
15:49
?
Avatar
You should trim the part of the demo you want to upload, using these buttons within the demo
Avatar
click on this button on your demo replay - you can choose a name and a few options, when its done you can open up the folder with your rendered video by clicking on "Video directory"
15:51
also what Skeith says, you can cut it
Avatar
It'll add red markers to the start and end points that you'll trim
Avatar
MilkeeyCat 2024-08-27 15:55
generating code for logical operators seems not as easy as I thought pepeW
Avatar
Thank you very much
Avatar
GitHub BOT 2024-08-27 16:10
Client crashes relatively consistently when disconnecting the Logitech G432 headset for LePinpin on Discord with version 18.4. Works correctly for me with Logitech G930.
Avatar
New 18.5 features look great owo
Avatar
I would have called it 19.0 if I had realized there are that many big features before starting to build it 😄
😅 2
Avatar
Кто поможет с ошибкой в дднет?
Avatar
Jupstar ✪ 2024-08-27 17:00
what?
Avatar
what?
17:01
error ddnet
Avatar
Jupstar ✪ 2024-08-27 17:01
i cant read russian
Avatar
ошибка assertion error из за текстур
Avatar
Avatar
Straus
Кто поможет с ошибкой в дднет?
I will translate, he asks for help with the error
Avatar
Jupstar ✪ 2024-08-27 17:02
this chat is devloper chat
Avatar
Avatar
Straus
ошибка assertion error из за текстур
error due to textures
Avatar
Jupstar ✪ 2024-08-27 17:02
what kind of textures
17:02
does the error not tell what the problem is?
Avatar
i am not speak english
Avatar
send error into #bugs please
Avatar
then you can end the conversation in this chat 🙂
17:04
especially the chat by the developer
Avatar
GitHub BOT 2024-08-27 17:13
906f75c Add ghost list sorting - KebsCS 14f1b36 Merge pull request #8825 from KebsCS/pr-ghost-sorting - Robyt3
Avatar
GitHub BOT 2024-08-27 17:50
See #8750 !saveskin !saveskin

Checklist

  • [x] Tested the change ingame
  • [x] 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 po...
Avatar
Avatar
GitHub
Click to see attachment 🖼️
wheres 0.6 skin save button troll
Avatar
-- Configuring incomplete, errors occurred! MSBuild version 17.10.4+10fbfbf2e for .NET Framework MSBUILD : error MSB1009: Project file does not exist. Switch: everything.vcxproj Error: Process completed with exit code 1.
18:14
pls help
Avatar
DDraceNetwork, a free cooperative platformer game. Contribute to ddnet/ddnet development by creating an account on GitHub.
Avatar
thanks u
Avatar
Avatar
zhn
wheres 0.6 skin save button troll
would be cool tho i think some custom clients have something like that
Avatar
Avatar
Souly
would be cool tho i think some custom clients have something like that
tater's "profile" has that
18:17
see this @Tater ??? i'm a pro in your client now!
18:17
im got error in workflow in my fork
18:17
on github
Avatar
happens - what are you trying to do? send link!
18:20
second
18:23
u wanna steal my code ik
18:24
My most useful features won't be in the hands of a melon
18:24
🇬 🇳 🇮 🇦
Avatar
pepe_ew92 i have access to so many clients - i'm just interested >:c
Avatar
GitHub BOT 2024-08-27 18:42
g_Config.m_SvMap will contain the path to the map while GetMapName() strips that off.

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 cha...
18:45

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/#using-ad...
18:46
Slight oversight when copy pasting ;D

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:/...
Avatar
Avatar
meloƞ
pepe_ew92 i have access to so many clients - i'm just interested >:c
MilkeeyCat 2024-08-27 18:49
Who gave the access to a fruit?
19:04
can i actually pay someone here $100 to upload ddnet to ios?
Avatar
Avatar
GitHub
Click to see attachment 🖼️
kek
Avatar
Avatar
louis
can i actually pay someone here $100 to upload ddnet to ios?
you can install it without uploading to app store, why?
Avatar
Avatar
zhn
you can install it without uploading to app store, why?
on ios?
Avatar
ah wait
19:07
you are us citizen justatest
Avatar
migrate to europe
19:08
should cost u less than $100
Avatar
aw, man! 18.5, yet no new strings for ukrainian.txt
Avatar
Jupstar ✪ 2024-08-27 19:09
how so
Avatar
Avatar
EGYT
aw, man! 18.5, yet no new strings for ukrainian.txt
i can add some comment lines for you to translate
Avatar
#8821 is not merged yet
Avatar
Fix some minor stuff 0.7 translations are a lot of effort for something most players will never see. They also have weird constracts like &quot;&#39;%s&#39; %sjoined the game&quot; ...
Avatar
please, update this at least last update: 2020-06-27 (!)
Avatar
almost 17 lines to translate! how queer
Avatar
Avatar
EGYT
please, update this at least last update: 2020-06-27 (!)
The date is probably when this page was created, but confusing indeed
Avatar
well, still outdated, because it shows Ukrainian at 97% while it is clearly at 100% (edited)
KEKW 1
Avatar
Jupstar ✪ 2024-08-27 19:23
heelo guis is tune_zone 0 unused? like, does the ddnet server ignore that. i dont ask if that is a valid config, i just wonder if you have to use tune for the "global" tuning. i read this https://discord.com/channels/252358080522747904/757720336274948198/1273613887232802868 if it is unused -> it can be dropped if it is somehow actually used -> i am doomed (edited)
Avatar
Avatar
Jupstar ✪
heelo guis is tune_zone 0 unused? like, does the ddnet server ignore that. i dont ask if that is a valid config, i just wonder if you have to use tune for the "global" tuning. i read this https://discord.com/channels/252358080522747904/757720336274948198/1273613887232802868 if it is unused -> it can be dropped if it is somehow actually used -> i am doomed (edited)
I thought about this code as some point. The server and client code for tune zones could be made a lot cleaner if tune_zone 0 would be considered identical to the global tune zone with tune but I was never sure enough if this was actually the case everywhere.
Avatar
Jupstar ✪ 2024-08-27 19:27
yeah i think that makes sense 😄
Avatar
GitHub BOT 2024-08-27 19:27
Define shortcuts to launch the client with either Vulkan or OpenGL graphics backend, which can be accessed by long-pressing the app icon on the home screen. This feature is available for Android 7.1 and newer. !Screenshot

Checklist

  • [X] Tested the change ingame
  • [X] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Writte...
Avatar
Jupstar ✪ 2024-08-27 19:27
twgame uses tune zone 0 as global tune
19:28
so i actually think it can be done
Avatar
Avatar
GitHub
Click to see attachment 🖼️
will it be available soon?
19:34
Or did I misunderstand
Avatar
Original message was deleted or could not be loaded.
Jupstar ✪ 2024-08-27 19:34
this isn't #questions , please use the correct channel
Avatar
Avatar
FNG
will it be available soon?
In a few weeks probably, I don't have much time next week
Avatar
GitHub BOT 2024-08-27 19:48
Set m_VoteCreator when using force_vote. Set m_VoteCreator when calling random_unfinished_map. This allows random_unfinished_map to be called from rcon and when called with force_vote, previously it would use the previous voters id.

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 integrati...
Avatar
Avatar
Robyt3
In a few weeks probably, I don't have much time next week
I will be looking forward to it (edited)
Avatar
MilkeeyCat 2024-08-27 19:56
@Learath2 that's the unholiest thing I've written so far
19:57
i don't even understand what it does, i just yoinked it from other person's c compiler 😬
Avatar
Avatar
MilkeeyCat
i don't even understand what it does, i just yoinked it from other person's c compiler 😬
ChatGPT will tell you what it does
Avatar
Avatar
SPYRES
ChatGPT will tell you what it does
MilkeeyCat 2024-08-27 20:00
no it won't, it will just pretend like it knows and actually will just spit out mumbo jumbo nonsense
Avatar
Avatar
MilkeeyCat
no it won't, it will just pretend like it knows and actually will just spit out mumbo jumbo nonsense
Sounds good to me
Avatar
MilkeeyCat 2024-08-27 20:01
I'll just leave a comment to never touch this piece of code and call it a day
Avatar
If you Ctrl + A and then delete, you won't ever see it again. Why never touch when you don't have to see it.
20:02
gigachad
Avatar
{Localizable("Deep Fly (Fixed)"), "bind mouse1 "+fire; +toggle cl_dummy_hammer 1 0";cl_message_client_color green; echo Deep Fly ON; bind x "bind mouse1 +fire; cl_dummy_hammer 0; cl_message_client_color red; echo Deep Fly OFF; exec deepfly.cfg"", 0, 0} for this does someone know a solution to fix it, the command only enable and idk what to do
Avatar
you want to.. hardcode the deep fly command? on a fixed key? why :D
Avatar
i try to edit client
Avatar
also you ofc need 2 .cfg files, one for toggle on and one for toggle off
Avatar
Avatar
meloƞ
also you ofc need 2 .cfg files, one for toggle on and one for toggle off
but in cfg same thing it only turn on it didnt turn off
20:24
bc in cfg it dont take the key i want
Avatar
@murpi bot down? :(
Avatar
Avatar
LePinpin
bc in cfg it dont take the key i want
huh - you can change the .cfg to fit your key
Avatar
i dont want that
20:25
in settings/commands
20:26
i want to set a button
Avatar
Avatar
MilkeeyCat
i don't even understand what it does, i just yoinked it from other person's c compiler 😬
I can try to explain if you tell me what you dont understand
Avatar
Avatar
Learath2
I can try to explain if you tell me what you dont understand
MilkeeyCat 2024-08-27 20:26
did you understand how it works? justatest
Avatar
Avatar
meloƞ
huh - you can change the .cfg to fit your key
i want when in commands i change the key the commands change the keys with the KeyId
Avatar
i'm fairly sure you're escaping the command wrong if you want to do it like this
20:29
did you use the template from the wiki?
Avatar
yes
20:30
DDNet client has a multitude of commands and settings that can be bound to nearly any key or mouse button. You can enter commands into the console, which by default is accessed by pressing F1.
Avatar
Avatar
MilkeeyCat
did you understand how it works? justatest
Sort of, I think
Avatar
at this point just ship a config file with your repo that executes this in a .cfg file
20:31
{Localizable("Move left"), "exec deepfly.cfg", 0, 0}
Avatar
so it will active and desactive ?
Avatar
if you do it like that - yes, it'll behave the same way as if you'd use a regular .cfg file
20:32
but if you want to distribute your client in any way shape or form, you need to do a workaround ig
20:33
since you can't just ship .cfg files in your repo, because the client looks for them in your local directory IIRC
20:33
^ dangerous half-knowledge btw
Avatar
Avatar
Learath2
Sort of, I think
MilkeeyCat 2024-08-27 20:35
After trying to use my noodle I think I understood how it works :DD
Avatar
It is very suboptimal assembly tbf
20:39
But it is implementing shortcircuiting behaviour
Avatar
MilkeeyCat 2024-08-27 20:40
I spent a few hours thinking I have to implement something like gcc, no way I can do that xddd
20:40
if it works, it works
Avatar
The weird jumping is to prevent the later expressions from even getting evaluated if one is zero
Avatar
Avatar
MilkeeyCat
I spent a few hours thinking I have to implement something like gcc, no way I can do that xddd
Wym something like gcc?
Avatar
MilkeeyCat 2024-08-27 20:41
it generates readable stuff xd
20:41
and it looks hard
Avatar
Even at O0?
20:42
I can't type on godbolt on a phone, can you show me what that snippet looks like in gcc?
20:42
ill paste mine now justatest
Avatar
Avatar
meloƞ
if you do it like that - yes, it'll behave the same way as if you'd use a regular .cfg file
no it activate and instant desactivate
Avatar
Avatar
LePinpin
no it activate and instant desactivate
send me the .cfg file in my dms really quick
Avatar
This actually looks better, idk how hard it'd be to generate tho
Avatar
(dont wanna flood developer chat)
Avatar
np
Avatar
Avatar
MilkeeyCat
Click to see attachment 🖼️
MilkeeyCat 2024-08-27 20:44
Pfff, that's what real men use .section .text .global main main: push rbp mov rbp, rsp sub rsp, 16 mov dword ptr [rbp - 4], 5 mov dword ptr [rbp - 8], 10 mov dword ptr [rbp - 12], 1 lea r15, [rbp - 4] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L2 lea r15, [rbp - 8] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L2 mov byte ptr [rbp - 13], 1 jmp .L3 .L2: mov byte ptr [rbp - 13], 0 .L3: cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L0 lea r15, [rbp - 12] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] jne .L4 lea r15, [rbp - 4] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] jne .L4 mov byte ptr [rbp - 13], 0 jmp .L5 .L4: mov byte ptr [rbp - 13], 1 .L5: cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L0 mov byte ptr [rbp - 13], 1 jmp .L1 .L0: mov byte ptr [rbp - 13], 0 .L1: main_ret: add rsp, 16 leave ret (edited)
20:44
wall of text justatest
Avatar
Actually what gcc generates looks easy enough to generate, what did you have trouble with?
Avatar
MilkeeyCat 2024-08-27 20:50
it just doesn't compute in my head how it has to work
20:50
classic skill issues
Avatar
Avatar
MilkeeyCat
Pfff, that's what real men use .section .text .global main main: push rbp mov rbp, rsp sub rsp, 16 mov dword ptr [rbp - 4], 5 mov dword ptr [rbp - 8], 10 mov dword ptr [rbp - 12], 1 lea r15, [rbp - 4] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L2 lea r15, [rbp - 8] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L2 mov byte ptr [rbp - 13], 1 jmp .L3 .L2: mov byte ptr [rbp - 13], 0 .L3: cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L0 lea r15, [rbp - 12] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] jne .L4 lea r15, [rbp - 4] mov r14d, dword ptr [r15] mov dword ptr [rbp - 13], r14d cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] jne .L4 mov byte ptr [rbp - 13], 0 jmp .L5 .L4: mov byte ptr [rbp - 13], 1 .L5: cmp byte ptr [rbp - 13], 0 sete byte ptr [rbp - 13] je .L0 mov byte ptr [rbp - 13], 1 jmp .L1 .L0: mov byte ptr [rbp - 13], 0 .L1: main_ret: add rsp, 16 leave ret (edited)
my knowledge of assembly beeing tested rn
20:52
is this an if else statement?
Avatar
MilkeeyCat 2024-08-27 20:53
u8 main() { u32 a = 5; u32 b = 10; u32 c = 1; bool foo = a && b && (c || a); }
Avatar
basically an if else statement...
Avatar
Two escape labels, one for true result, one for false result. Always compare with false. For && if you compare equal jump to the false escape (je). For || if you compare unequal jump to the true escape (jne).
Avatar
does anyone have some sort of script that checks when a file is modified and then echos reload into ddnet fifo?
Avatar
Avatar
Learath2
Two escape labels, one for true result, one for false result. Always compare with false. For && if you compare equal jump to the false escape (je). For || if you compare unequal jump to the true escape (jne).
MilkeeyCat 2024-08-27 21:02
Ig the most problematic part for me is to understand how to generate labels for example like .L2 (edited)
Avatar
where do i put .fifo file?
21:16
to pass rcon to a running ddnet server
Avatar
You specify a path with sv_input_fifo, and it will automatically create the file.
Replying to @louis where do i put .fifo file?
Avatar
GitHub BOT 2024-08-27 21:34
cb57aa8 add console chain for 0.7 tee - dobrykafe 0e016f9 Use GetMapName() when getting the map name - furo321 76c44cf Merge pull request #8829 from furo321/use-getmapname - def- 8b7e5de Merge pull request #8830 from dobrykafe/pr-conchain-07-tee - def-
21:35
Closes #8594 Integer in console : !image Float with multiple arguments: !image /tpxy 3.2 4 - works with ints /tpxy 3.2 -32 - works with negative numbers Color validation: !image Old validation checks preserved: ![image](https://...
Avatar
GitHub BOT 2024-08-27 21:42
9a7bc70 Fix double free or corruption crash with hot_reload - furo321 3d6820a Merge pull request #8831 from furo321/fix-crash-hotreload - def-
21:43
dc0d4b3 Add Android shortcuts for launching with Vulkan/OpenGL - Robyt3 d78032e Merge pull request #8832 from Robyt3/Android-Shortcuts-Graphics-Backends - def-
Avatar
GitHub BOT 2024-08-27 21:52
9fbbf5c Fix using random_unfinished_map from rcon - furo321 f407adc Set m_VoteCreator when using force_vote - furo321 7df1b24 Merge pull request #8833 from furo321/vote-creator - def-
Avatar
GitHub BOT 2024-08-27 22:10
31ee6ab implement 0.7 skin save button - dobrykafe 5a66dc0 Merge pull request #8828 from dobrykafe/pr-save-07-skins - def-
Avatar
Avatar
meloƞ
@murpi bot down? :(
Which one?
22:48
Ah discord is having API issues
Avatar
how can i make so my votes dont instantly pass on local server?
Avatar
You would need someone else connected with a different IP. You could open up another client, but connect it through IPv6 instead, e.g. connect [::1].
Replying to @kebs how can i make so my votes dont instantly pass on local server?
Avatar
Avatar
furo
You would need someone else connected with a different IP. You could open up another client, but connect it through IPv6 instead, e.g. connect [::1].
ty
Avatar
Avatar
murpi
Which one?
yeah sans told me - sry for the annoying ping :P
Avatar
chillerdragon: why the hell is teeworlds so damn verbose (edited)
Exported 480 message(s)
Timezone: UTC+0