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-04-08 00:00:00Z and 2024-04-09 00:00:00Z
Avatar
chillerdragon BOT 2024-04-08 00:34:52Z
comment says: "you must edit it to solve it" xd
Replying to @MilkeeyCat Yoyo, if any of you likes doing crackmes, could you do this one https://…
Avatar
ws-client BOT 2024-04-08 01:01:08Z
<ChillerDragon> @heinrich5991 on ddnet Multeasymap there are ads for block servers by ip. Typing in the ip is quite tedious for users. If the redirect feature would allow redirecting to other ips there could be a portal to the other servers instead.
Avatar
Avatar
Patiga
@murpi could you please update twmap-tools to 0.3.2 for the ddnet discordbot? it adds compatibility to the bezier envelope points
done
heartw 1
01:22
rip sleep schedule
tear 1
Avatar
thanks ^^
01:41
7fcac2a Rename /flock to /team0mode - furo321 96fa194 Merge pull request #8190 from furo321/fix-conflock - def-
Avatar
is it weird that I think our manager having a 10 minute conversation with QA team guessing how Android handles permission popup after user has rejected is pointless and doesn't solve any actual problems? or is this just a normal conversation to have at work? because I think they could just spend that time writing a few lines of test code and just go from there.
04:37
am I just a complainer
04:37
oh shit I am, aren't I
04:37
justatest
Avatar
Sounds like larger-company culture
Avatar
chillerdragon: thanks 🫡
Avatar
Avatar
deen
Sounds like larger-company culture
what about the culture that just stop people from progressing
05:47
I don't feel like I fully understand that (edited)
07:01
kek
Avatar
download inkscape instead
✅ 1
Avatar
but honestly, I do love shape tool and pen tool in photoshop
07:12
got me through most task I would do
Avatar
Avatar
TsFreddie
download inkscape instead
Or use photopea ¯\_(ツ)_/¯ (edited)
Avatar
do you know discord channels where ppl can ask questions about compilers, linkers, how sections work and stuff feelsbadman
Avatar
Avatar
MilkeeyCat
do you know discord channels where ppl can ask questions about compilers, linkers, how sections work and stuff feelsbadman
This is a lost art, discord is the domain of zoomers and they haven’t heard what a linker is
Avatar
ah gg
07:47
im one step away from logging in on stack overflow and asking there
Avatar
What is your question? I do have some arcane knowledge
Avatar
Ok but i wanna apologize in advance if none of this mumbo jumbo will make sense justatest
07:53
@MilkeeyCat
Avatar
I have such a C program char bytes[10]; int main() { bytes[0] = 2; bytes[1] = 4; bytes[2] = 4; bytes[3] = 4; bytes[4] = 4; bytes[5] = 4; bytes[6] = 4; bytes[7] = 4; bytes[8] = 4; bytes[9] = 6; return 0; } Since bytes variable is not initialized it goes to .bss section(maybe) so when call cc main.c -c addresses which point to that memory will be 0x0. Like here: 4: c6 05 00 00 00 00 02 movb $0x2,0x0(%rip) # b <main+0xb> b: c6 05 00 00 00 00 04 movb $0x4,0x0(%rip) # 12 <main+0x12> I will be set after linking. And everything works and all gud. But why in .rela.text section(run readelf -a main.o) it goes from bytes - 5 to bytes + 4 why not from bytes to bytes + 9 Relocation section '.rela.text' at offset 0x1c8 contains 10 entries: Offset Info Type Sym. Value Sym. Name + Addend 000000000006 000300000002 R_X86_64_PC32 0000000000000000 bytes - 5 00000000000d 000300000002 R_X86_64_PC32 0000000000000000 bytes - 4 000000000014 000300000002 R_X86_64_PC32 0000000000000000 bytes - 3 00000000001b 000300000002 R_X86_64_PC32 0000000000000000 bytes - 2 000000000022 000300000002 R_X86_64_PC32 0000000000000000 bytes - 1 000000000029 000300000002 R_X86_64_PC32 0000000000000000 bytes + 0 000000000030 000300000002 R_X86_64_PC32 0000000000000000 bytes + 1 000000000037 000300000002 R_X86_64_PC32 0000000000000000 bytes + 2 00000000003e 000300000002 R_X86_64_PC32 0000000000000000 bytes + 3 000000000045 000300000002 R_X86_64_PC32 0000000000000000 bytes + 4 justatest
07:57
@Learath2
Avatar
Avatar
MilkeeyCat
do you know discord channels where ppl can ask questions about compilers, linkers, how sections work and stuff feelsbadman
what u need to know
08:02
ah i didnt scroll
Avatar
Avatar
MilkeeyCat
I have such a C program char bytes[10]; int main() { bytes[0] = 2; bytes[1] = 4; bytes[2] = 4; bytes[3] = 4; bytes[4] = 4; bytes[5] = 4; bytes[6] = 4; bytes[7] = 4; bytes[8] = 4; bytes[9] = 6; return 0; } Since bytes variable is not initialized it goes to .bss section(maybe) so when call cc main.c -c addresses which point to that memory will be 0x0. Like here: 4: c6 05 00 00 00 00 02 movb $0x2,0x0(%rip) # b <main+0xb> b: c6 05 00 00 00 00 04 movb $0x4,0x0(%rip) # 12 <main+0x12> I will be set after linking. And everything works and all gud. But why in .rela.text section(run readelf -a main.o) it goes from bytes - 5 to bytes + 4 why not from bytes to bytes + 9 Relocation section '.rela.text' at offset 0x1c8 contains 10 entries: Offset Info Type Sym. Value Sym. Name + Addend 000000000006 000300000002 R_X86_64_PC32 0000000000000000 bytes - 5 00000000000d 000300000002 R_X86_64_PC32 0000000000000000 bytes - 4 000000000014 000300000002 R_X86_64_PC32 0000000000000000 bytes - 3 00000000001b 000300000002 R_X86_64_PC32 0000000000000000 bytes - 2 000000000022 000300000002 R_X86_64_PC32 0000000000000000 bytes - 1 000000000029 000300000002 R_X86_64_PC32 0000000000000000 bytes + 0 000000000030 000300000002 R_X86_64_PC32 0000000000000000 bytes + 1 000000000037 000300000002 R_X86_64_PC32 0000000000000000 bytes + 2 00000000003e 000300000002 R_X86_64_PC32 0000000000000000 bytes + 3 000000000045 000300000002 R_X86_64_PC32 0000000000000000 bytes + 4 justatest
i think this is mostly a relocation algorithm detail
Avatar
chillerdragon BOT 2024-04-08 08:07:43Z
Average linux experience. Can confirm. Can recommend. Would do again.
Replying to @Teero 23WkPz4CNX.png
Avatar
Avatar
Learath2
This is a lost art, discord is the domain of zoomers and they haven’t heard what a linker is
i'm a zoomer apparently
Avatar
Avatar
meloƞ
@Teero kek
sometimes there are good memes in there.
Avatar
@MilkeeyCat i invite u to the llvm discord https://discord.com/invite/xS7Z362 here there is knowledgable people
Avatar
are there good memes?
Avatar
Avatar
MilkeeyCat
I have such a C program char bytes[10]; int main() { bytes[0] = 2; bytes[1] = 4; bytes[2] = 4; bytes[3] = 4; bytes[4] = 4; bytes[5] = 4; bytes[6] = 4; bytes[7] = 4; bytes[8] = 4; bytes[9] = 6; return 0; } Since bytes variable is not initialized it goes to .bss section(maybe) so when call cc main.c -c addresses which point to that memory will be 0x0. Like here: 4: c6 05 00 00 00 00 02 movb $0x2,0x0(%rip) # b <main+0xb> b: c6 05 00 00 00 00 04 movb $0x4,0x0(%rip) # 12 <main+0x12> I will be set after linking. And everything works and all gud. But why in .rela.text section(run readelf -a main.o) it goes from bytes - 5 to bytes + 4 why not from bytes to bytes + 9 Relocation section '.rela.text' at offset 0x1c8 contains 10 entries: Offset Info Type Sym. Value Sym. Name + Addend 000000000006 000300000002 R_X86_64_PC32 0000000000000000 bytes - 5 00000000000d 000300000002 R_X86_64_PC32 0000000000000000 bytes - 4 000000000014 000300000002 R_X86_64_PC32 0000000000000000 bytes - 3 00000000001b 000300000002 R_X86_64_PC32 0000000000000000 bytes - 2 000000000022 000300000002 R_X86_64_PC32 0000000000000000 bytes - 1 000000000029 000300000002 R_X86_64_PC32 0000000000000000 bytes + 0 000000000030 000300000002 R_X86_64_PC32 0000000000000000 bytes + 1 000000000037 000300000002 R_X86_64_PC32 0000000000000000 bytes + 2 00000000003e 000300000002 R_X86_64_PC32 0000000000000000 bytes + 3 000000000045 000300000002 R_X86_64_PC32 0000000000000000 bytes + 4 justatest
Global variables get zeroed, maybe it matters
08:15
I think they can get put in a different section which just says "give me N zero bytes" instead of actually stored
08:15
Maybe what I'm saying is bs though Quite likely
08:18
Nvm that's exactly what bss is
Avatar
0000000000000000 <main>: 0: f3 0f 1e fa endbr64 4: 55 push rbp 5: 48 89 e5 mov rbp,rsp 8: c6 05 00 00 00 00 02 mov BYTE PTR [rip+0x0],0x2 # f <main+0xf> f: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 16 <main+0x16> 16: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 1d <main+0x1d> 1d: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 24 <main+0x24> 24: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 2b <main+0x2b> 2b: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 32 <main+0x32> 32: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 39 <main+0x39> 39: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 40 <main+0x40> 40: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 47 <main+0x47> 47: c6 05 00 00 00 00 06 mov BYTE PTR [rip+0x0],0x6 # 4e <main+0x4e> 4e: b8 00 00 00 00 mov eax,0x0 53: 5d pop rbp 54: c3 ret
08:19
i prefer intel syntax
08:20
bss is for static unintialized variables
Avatar
Avatar
Ryozuki
0000000000000000 <main>: 0: f3 0f 1e fa endbr64 4: 55 push rbp 5: 48 89 e5 mov rbp,rsp 8: c6 05 00 00 00 00 02 mov BYTE PTR [rip+0x0],0x2 # f <main+0xf> f: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 16 <main+0x16> 16: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 1d <main+0x1d> 1d: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 24 <main+0x24> 24: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 2b <main+0x2b> 2b: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 32 <main+0x32> 32: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 39 <main+0x39> 39: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 40 <main+0x40> 40: c6 05 00 00 00 00 04 mov BYTE PTR [rip+0x0],0x4 # 47 <main+0x47> 47: c6 05 00 00 00 00 06 mov BYTE PTR [rip+0x0],0x6 # 4e <main+0x4e> 4e: b8 00 00 00 00 mov eax,0x0 53: 5d pop rbp 54: c3 ret
i feel zoom
Avatar
Avatar
Ryozuki
i prefer intel syntax
I'm preferring the att since it's what going to be in inline asm by default
Avatar
Mon Apr 8 09:57:01 2024 >>> www-client/firefox-124.0.2 merge time: 8 minutes and 40 seconds.
08:26
damn
08:26
this cpu do be fast
08:27
@Learath2
Avatar
how many angles exist in tw?
09:22
INT_MAX*4-2? (edited)
09:22
or less?
Avatar
you can get a value if u go in debug mode, it was like 4-6digits(?)
Avatar
Avatar
MilkeeyCat
I have such a C program char bytes[10]; int main() { bytes[0] = 2; bytes[1] = 4; bytes[2] = 4; bytes[3] = 4; bytes[4] = 4; bytes[5] = 4; bytes[6] = 4; bytes[7] = 4; bytes[8] = 4; bytes[9] = 6; return 0; } Since bytes variable is not initialized it goes to .bss section(maybe) so when call cc main.c -c addresses which point to that memory will be 0x0. Like here: 4: c6 05 00 00 00 00 02 movb $0x2,0x0(%rip) # b <main+0xb> b: c6 05 00 00 00 00 04 movb $0x4,0x0(%rip) # 12 <main+0x12> I will be set after linking. And everything works and all gud. But why in .rela.text section(run readelf -a main.o) it goes from bytes - 5 to bytes + 4 why not from bytes to bytes + 9 Relocation section '.rela.text' at offset 0x1c8 contains 10 entries: Offset Info Type Sym. Value Sym. Name + Addend 000000000006 000300000002 R_X86_64_PC32 0000000000000000 bytes - 5 00000000000d 000300000002 R_X86_64_PC32 0000000000000000 bytes - 4 000000000014 000300000002 R_X86_64_PC32 0000000000000000 bytes - 3 00000000001b 000300000002 R_X86_64_PC32 0000000000000000 bytes - 2 000000000022 000300000002 R_X86_64_PC32 0000000000000000 bytes - 1 000000000029 000300000002 R_X86_64_PC32 0000000000000000 bytes + 0 000000000030 000300000002 R_X86_64_PC32 0000000000000000 bytes + 1 000000000037 000300000002 R_X86_64_PC32 0000000000000000 bytes + 2 00000000003e 000300000002 R_X86_64_PC32 0000000000000000 bytes + 3 000000000045 000300000002 R_X86_64_PC32 0000000000000000 bytes + 4 justatest
HINT: Those movs are all RIP relative
09:36
HINT2: RIP points to the next instruction
Avatar
Avatar
Learath2
HINT: Those movs are all RIP relative
I knew that, it didn't mov me closer to the answer justatest
Avatar

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...
Avatar
Avatar
MilkeeyCat
I knew that, it didn't mov me closer to the answer justatest
RIP points to the next instruction, the position we are patching is 5 bytes before the start of the next instruction, 4 bytes for the address, 1 byte for the operand, so an addend of -5 fixes things
Avatar
Holy shit, that makes sense
Avatar
Id never find it out myself
10:42
Thx a lot!
Avatar
Avatar
MilkeeyCat
Id never find it out myself
Figuring some of these things out took me hours and hours a couple years back, this stuff is so badly documented you'd just perish
Avatar
I visited like 30 websites and couldn't find anything about it
Avatar
also these things are so specific that they differ a lot between targets
Avatar
It's time to go back to yavascript
Avatar
Avatar
Jupstar ✪
these fat asses
WHAT THE FUCK
10:53
average chinese server in a brutal map
Avatar
Avatar
Jupstar ✪
Click to see attachment 🖼️
the flag:
🥴 1
Avatar
Avatar
Ryozuki
bss is for static unintialized variables
static in a different sense than C static though btw
Avatar
Avatar
Ryozuki
Mon Apr 8 09:57:01 2024 >>> www-client/firefox-124.0.2 merge time: 8 minutes and 40 seconds.
This is insane wtf, I want one
Avatar
Wine 9.6 has just been issued as the newest bi-weekly development release for this open-source software to enjoy Windows games and applications under Linux.
11:27
pog for my cpu?
12:57
fd5d334 add console chain for ClBackgroundEntities - dobrykafe 8f58cba Merge pull request #8192 from dobrykafe/pr-conchain-bg-entities - def-
Avatar
why did #8190 get merged even tho i stated there was a typo angy
Avatar
The rebase of #7521 made the /flock command not be added. I've also changed any previous mentions of team 0 mode to flock mode and also added an explanation of what flock mode does. Checklist ...
Avatar
Do more servers on russia near turkey pls
thonk 2
Avatar
Avatar
Learath2
RIP points to the next instruction, the position we are patching is 5 bytes before the start of the next instruction, 4 bytes for the address, 1 byte for the operand, so an addend of -5 fixes things
ok, i actually didn't get it kek
Avatar
Maybe because you didn't state it? At least I don't see where you mentioned that.
Replying to @meloƞ why did #8190 get merged even tho i stated there was a typo
Avatar
should i have been more specific? This mode will make your team will behave like team 0. (edited)
Avatar
See the "pending" next to your name, silly!
14:41
why github so complicated
14:42
Pending for me means this review hasn't been handled yet >:( (edited)
Avatar

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-ad...
Avatar
Option to disable crosshair doesnt look good and is distracting on maps where u dont need a mouse like iwbtg slide spaceisky walljump upndown 1-3, more walljump maps etc... sv_cursor 0 disables crosshair cl_cursor 0 forces disabled crosshair cl_cursor 1 forces enabled crosshair (doesnt allow maps to disable hook) cl_cursor 2 (default) allows maps to disable ur crosshair Optional: some maps have or will have movie cinematic areas where u can watch a story so make it poss...
15:22
This PR updates the DDNet build instructions to properly describe basic build instructions for all IDEs, not just Visual Studio using MSVC, aswell as hand-holding when using visual studio code to get started.

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 n...
Avatar
@MilkeeyCat are you camping github just to do this to me ?
Avatar
Avatar
meloƞ
@MilkeeyCat are you camping github just to do this to me ?
To do wat
Avatar
i committed 1 MINUTE AGO
Avatar
Who's that based guy?
Avatar
@Learath2 i've been waiting for 25 years Oldge - when finish sentence
15:51
crythumbsup okay then
Avatar
R_X86_64_PC32 is a relocation type that has calculation S + A - P where S is the value in symtab, A is the addend we are discussing, P is the address of the storage unit being relocated.
  • Say our variable ended up being placed at .bss + 0x8, S ends up being .bss + 0x8, P is the address of .text since that's the "storage unit" being relocated.
  • We are currently modifying 4 bytes at .text + r_offset. There we want to insert the difference between .bss + 0x8 and %rip since we have rip relative addressing. So we want to calculate .bss + 0x8 - %rip
  • %rip is at the point we are modifying (by definition) pointing to the next instruction, which is 5 bytes ahead, 4 bytes we are replacing currently + 1 byte for the operand. (This is only for this case of a rip-relative mov instruction with an immediate operand). So %rip = .text + r_offset + 5
  • .bss + 0x8 - (.text + r_offset + 5) = S - (P + 5) = S - 5 + P thus we have that our A must be -5 for us to get to the correct address using the things we have
16:10
@MilkeeyCat Hopefully this kinda helps, I'm not very good at explaining
16:12
The -5 is in essence correcting for the fact that rip is 5 ahead of the variables we have access to
Avatar
yeah, i was like feeling that it's right and make sense and then i decided to calculate these numbers myself
16:16
after 1 hour trying to calculate 3 numbers i realized. im brainless, all this time I was trying to do S + 5 - P but i had to S - 5 - P because FIVE IS NEGATIVE bluestripe
16:16
and now everything works 😄
16:16
thx a lot again =]
Avatar
Avatar
meloƞ
@Learath2 i've been waiting for 25 years Oldge - when finish sentence
i mean that was a banger of an answer
Avatar
@MilkeeyCat what are you doing even? 😄
Avatar
Avatar
Learath2
@MilkeeyCat what are you doing even? 😄
it's a goofy answer but... a compiler justatest
16:21
077d7c5 Fix typo in /team0mode description - furo321 67dfd7b Merge pull request #8193 from furo321/fix-typo - def-
Avatar
Avatar
Jupstar ✪
i mean that was a banger of an answer
fr tho
Avatar
Oh another way to think about it, we want to get to absolute address S in total, our instruction accesses absolute address %rip + <value we control>. We need to craft our value such that it's S - %rip so the rip dependence goes away. We know rip at link time because we know where we place our instruction. %rip will be 5 + .text + r_offset as discussed earlier. Now it should be obvious why addend needs to be negative there
Avatar
Avatar
meloƞ
fr tho
I'm here all day if you need lost knowledge that is relevant to no modern programmer
Avatar
Avatar
MilkeeyCat
it's a goofy answer but... a compiler justatest
EEEH, for what language?
Avatar
Avatar
Learath2
EEEH, for what language?
subset of C
Avatar
What are you compiling to? I hope not directly emiting machine code 😄
Avatar
i dont have anything yet xD
16:35
im just learning stuff id need
Avatar
Have you done crafting interpreters yet?
16:36
It's a really fun guided experience in compilers
Avatar
ill definitely have to read some books about it
16:37
so far ive read only about how to make an interpreter https://interpreterbook.com/
Avatar
compiler theory is extremely dense, very very theoretical, I'd recommend craftinginterpreters
Avatar
i added it to list, thanks 😄
Avatar
Oh btw, rip relative addressing is efficient, that's why we use it, but it's not mandatory, you could still have absolute relocations and use absolute addressing too
16:41
tbf all of Eli's blog is a great read
Avatar
Avatar
Learath2
I'm here all day if you need lost knowledge that is relevant to no modern programmer
its relevabt to some
Avatar
Avatar
Ryozuki
its relevabt to some
to 10 people, I should have mastered python instead
Avatar
@meloƞ imagine breaking integration test with markdown file update
17:13
How bad
Avatar
Avatar
Learath2
to 10 people, I should have mastered python instead
are you ill
Avatar
Avatar
Jupstar ✪
are you ill
ill in what way?
17:13
I certainly have a couple mental illnesses, enough to make a nice twitter bio dare I say
Avatar
pysorn is evil
Avatar
Avatar
Jupstar ✪
pysorn is evil
but it's what cool relevant computer people learn
Avatar
Avatar
Learath2
What are you compiling to? I hope not directly emiting machine code 😄
is this a bad idea? justatest
17:17
i feel like it will be definitely fun debugging experience
Avatar
Avatar
Learath2
but it's what cool relevant computer people learn
what's bad about being uncool and irrelevant 😏
Avatar
Avatar
MilkeeyCat
is this a bad idea? justatest
It’s a lot of reading ISAs, for each target you want to compile to
17:19
I would probably generate LLVM IR and let LLVM handle that last part
Avatar
Avatar
MilkeeyCat
@meloƞ imagine breaking integration test with markdown file update
sucks to be me
Avatar
Avatar
Jupstar ✪
what's bad about being uncool and irrelevant 😏
Low salary and social status
Avatar
Avatar
Learath2
Low salary and social status
but also no pydon
Avatar
@Jupstar ✪ I able to handle 112 client for now but when I connect 1 more tee screen freeze with active scoreboard and game continue when I disconnect one of tee (edited)
Avatar
mh so the scoreboard struggles with those amounts of dummies i see
17:58
yeah makes sense 😄
Avatar
no it's not it's come up on it's own like when warmup get end or something 😄
Avatar
Avatar
Jupstar ✪
yeah makes sense 😄
and there is some bugs like when you are near to crowd you can't hearing gun fire sound or sometimes attached hook get invisible (edited)
Avatar
Avatar
Peakies
@Jupstar ✪ I able to handle 112 client for now but when I connect 1 more tee screen freeze with active scoreboard and game continue when I disconnect one of tee (edited)
that is what happens on my unfinished scoreboard implementation
18:02
lol
18:02
i mean i can actually read it
18:02
it's just hard, bcs of the bad font color + very small
Avatar
Avatar
Jupstar ✪
it's just hard, bcs of the bad font color + very small
best solution is have single column with scroll or page navigation to have better readable name and info
Avatar
scroll is evil
18:04
i'd say with better contrast it might even work like that
Avatar
scroll or maybe w or s key bind to switch between players tab
Avatar
also finding someone in a list of 300 entries is hard anyway xD
Avatar
Avatar
Jupstar ✪
also finding someone in a list of 300 entries is hard anyway xD
search input ?!
Avatar
i guess if u really want to find someone u just use the player list
18:05
in menu
18:05
but yeah, there should be a search input
Avatar
I was thinking about having scoreboard with clickable function on players to show clicked player informations like playtime + finished map and etc
Avatar
Avatar
Jupstar ✪
i guess if u really want to find someone u just use the player list
Yeah I agree with you on that case
Avatar
@MilkeeyCat funny enough, this is the SECOND time im getting bullied by a check that shouldnt fail #7886 for example
Avatar
closes #7881 edit: the ubuntu 20.04 check is failing - i cant exactly tell why, i assume its because of: CMake Error at CMakeLists.txt:642 (message): You must install MySQL to compile the DDNet ser...
Avatar
Avatar
meloƞ
@MilkeeyCat funny enough, this is the SECOND time im getting bullied by a check that shouldnt fail #7886 for example
when git gut and dont break stuff?
Avatar
hayo, hope its okay to use this channel for this: Could someone help me with econ? It works on my local machine, but now that i'm trying to deploy my project to a remote ubuntu server i cant make the ddnet server open the econ connection :I This is the config im using, which worked on my local setup: ec_bindaddr "localhost" ec_port 16321 ec_password "test" ec_bantime 0 ec_auth_timeout 120 ec_output_level 1 I tried: 127.0.0.1 instead of localhost, checked if port is used, tried different ports, starting server using root, disabling firewall (temporarily) ... I always get this error/warning on server startup: 2024-04-08 21:47:26 I http: libcurl version 7.81.0 (compiled = 8.0.1) 2024-04-08 21:47:26 I host_lookup: host='localhost' port=0 3 2024-04-08 21:47:26 I net: failed to bind socket with domain 10 and type 1 (99 'Cannot assign requested address') 2024-04-08 21:47:26 I econ: couldn't open socket. port might already be in use Any ideas? Could i be missing dependencies? (edited)
Avatar
Avatar
Jupstar ✪
that is what happens on my unfinished scoreboard implementation
can u give all of them ai and force them to play ctf 200v200
f3 1
Avatar
Avatar
iMilchshake
hayo, hope its okay to use this channel for this: Could someone help me with econ? It works on my local machine, but now that i'm trying to deploy my project to a remote ubuntu server i cant make the ddnet server open the econ connection :I This is the config im using, which worked on my local setup: ec_bindaddr "localhost" ec_port 16321 ec_password "test" ec_bantime 0 ec_auth_timeout 120 ec_output_level 1 I tried: 127.0.0.1 instead of localhost, checked if port is used, tried different ports, starting server using root, disabling firewall (temporarily) ... I always get this error/warning on server startup: 2024-04-08 21:47:26 I http: libcurl version 7.81.0 (compiled = 8.0.1) 2024-04-08 21:47:26 I host_lookup: host='localhost' port=0 3 2024-04-08 21:47:26 I net: failed to bind socket with domain 10 and type 1 (99 'Cannot assign requested address') 2024-04-08 21:47:26 I econ: couldn't open socket. port might already be in use Any ideas? Could i be missing dependencies? (edited)
it fails on one of them. it can't be a hoster issue right? normal server works? (edited)
Avatar
Avatar
Teero
it fails on one of them. it can't be a hoster issue right? normal server works? (edited)
ah sorry forgot to mention: yes, the gameserver itself runs as it should (edited)
20:21
are these dependencies just required for development? https://github.com/ddnet/ddnet?tab=readme-ov-file#dependencies-on-linux--macos
DDraceNetwork, a free cooperative platformer game. Contribute to ddnet/ddnet development by creating an account on GitHub.
20:25
you can try but that shouldn't be the issue i think
Avatar
@Teero XDDDDDDDDD
21:04
optimized it to O(1)
what 1
wtf 1
21:05
it can now handle 1k tees
21:05
21:05
that's so funny lmao
21:05
i think it works even without breaking physics
Avatar
Avatar
Jupstar ✪
Click to see attachment 🖼️
@Zwelf we should test that with your physics 😄
👀 1
21:06
@Teero now it's defs a different bottleneck.. my PC is heating much more xD
21:07
the fans are spinning
21:07
WTF
21:07
meanwhile i struggle to write a good fitness function
Avatar
i now want to play stronghold final with 700 tees, so i can just boat through the entire map
Avatar
omg the respawn of all tees is so insanely unoptimized xDDD
21:08
huge lags
21:09
it only works under one assumption: tees don't stack
21:09
that's the only bad thing about it
21:09
if they all on one spot it's game over
Avatar
so no shotgun bug?
Avatar
i guess that kinda makes sense, would be a worst case in basically all physics engines
Avatar
Avatar
Teero
so no shotgun bug?
well at least not if the whole server stacks together xD
21:10
so in worst case it's O(n) i think
21:11
in average case (non stacking) it should be O(1) but tbf it's not comlpetely O(1) it's just hard to say what exactly it is O(n.min(16))
21:11
xDD
21:11
but O(16) would be called O(1) even if in reality it's ofc not the same
Avatar
n is amount of tees?
Avatar
in this case yes
21:17
2k is maximum, then my pc explodes and in minimized 800x600 it runs a bit better
21:17
so i guess it's mostly a bottleneck in rendering
21:20
playing 2000p splitscreen
21:20
im in
Avatar
modern pc are really fast
21:21
i mean it iterates over so much shit ~2000 times every frame
21:21
it checks if the input changed for all these tees
21:21
bcs they are real players xd
21:21
creates the render calls for all
21:21
bcs i have no frustum culling yet
21:21
prediction code every frame
Avatar
Avatar
Jupstar ✪
@Teero now it's defs a different bottleneck.. my PC is heating much more xD
how are u doing this
21:29
looks awesome
Avatar
Avatar
Ewan
how are u doing this
custom client + server
Avatar
Avatar
Ewan
Send
soon™️ xdd it's sadly still far from finished :/
21:36
unless it deletes my entire disk idgaf
Avatar
yeah it's virus
21:37
average custom client moment
Avatar
@Jupstar ✪ make Sure to Tag me when you Release a pre-release kek
Avatar
hi all, I'm trying to run the ddnet client but it's failing with "unable to create window: Installed Vulkan doesn't implement the VK_KHR_surface extension". apparently this means vulkan drivers can't be found, I'll look into this later but for now is there a way to disable vulkan at runtime?
22:08
is there some sort of environment variable or command line argument I can use?
Avatar
Avatar
jtbx
is there some sort of environment variable or command line argument I can use?
cmake .. -DVULKAN=OFF (edited)
Avatar
yeah I'm doing that now thanks
Avatar
You don’t need to compile it out. You can switch to opengl at runtime too. Just do ./DDNet “gfx_backend opengl”
Avatar
oh that's awesome, thank you
Avatar
Avatar
Jupstar ✪
2k is maximum, then my pc explodes and in minimized 800x600 it runs a bit better
Give all of them random inputs xd
22:18
Chaos will ensue
22:18
I don't think your PC will be able to handle it xd
Avatar
ws-client BOT 2024-04-08 23:25:06Z
<ChillerDragon> robsti still wakey?
23:25
<ChillerDragon> watafaka is 0x80808000
23:25
<ChillerDragon> error: narrowing conversion of ‘2155905024’ from ‘unsigned int’ to ‘int’ [-Wnarrowing]
23:25
<ChillerDragon> int aInts[2] = {0, 0x80808000};
Exported 245 message(s)