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-03-05 00:00:00Z and 2024-03-06 00:00:00Z
Avatar
ws-client BOT 2024-03-05 01:30:58Z
<ChillerDragon> @Ryozuki i did not find your neovim config on github :C Do you have some lsp settings for ddnet? So it doesn't get confused with include paths
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
e588ebe M Morthal, M Multeasymap - ddnet-maps
Avatar
Avatar
ws-client
<ChillerDragon> @Ryozuki i did not find your neovim config on github :C Do you have some lsp settings for ddnet? So it doesn't get confused with include paths
using clangd You Just define the clangd path in your Compiler Flags for the LSP to be Happy
Avatar
Or just use Mason and everything just works gigachad
Avatar
Yuzu got discontinued
09:02
Rip
Avatar
i want my 7900x3d already
09:02
will make llvm dev easier
Avatar
Avatar
Ryozuki
i want my 7900x3d already
U still don't have it?
Avatar
i orderered the whole thing without gpu and m2 and have it built
09:05
ill get it by end of month
09:05
i was lazy and have money so
09:05
xd
09:06
09:06
here i am once again building llvm
Avatar
Avatar
Jupstar ✪
Yuzu got discontinued
I never really liked how they were semi-paywalled
Avatar
i dont like nintendo
09:06
or derivatives
Avatar
Probably why they folded so quick. Making money off of emulators is a no no
Avatar
the console has 0 appeal
09:07
ppl only use it cuz its a walled garden
Avatar
The appeal is the exclusives
Avatar
i laugh at 30 fps gamers
09:07
in 2024
Avatar
If nintendo released their games on other consoles too no one would prefer a switch
Avatar
and they laugh at their customers
09:08
with those graphics
09:08
did u see the pokemons
09:08
lmao
09:08
billions of $$ and that
Avatar
Avatar
Learath2
I never really liked how they were semi-paywalled
I never quite understood it too
09:08
They should have just used Patreon as a way to fund development
09:08
and not for early access to new stuff
Avatar
Avatar
Ryozuki
i laugh at 30 fps gamers
I honestly don't agree with this being an issue. For me if it looks fluid it's fine. Movies are 24fps and we don't complain about that either
Avatar
@Scrumplex btw im using prism, any modpack u recommend? preferably on modrinth since it seems free software
09:09
i thought of trying these
Avatar
Avatar
Scrumplex
and not for early access to new stuff
At least people were redistributing the early access code as it's GPLed (edited)
09:09
yuzu Early Access source code. Contribute to pineappleEA/pineapple-src development by creating an account on GitHub.
Avatar
Avatar
Learath2
I honestly don't agree with this being an issue. For me if it looks fluid it's fine. Movies are 24fps and we don't complain about that either
for me its a big issue, i need the smooth
Avatar
Avatar
Ryozuki
@Scrumplex btw im using prism, any modpack u recommend? preferably on modrinth since it seems free software
I usually make my own xD
Avatar
Avatar
Scrumplex
I usually make my own xD
i dont think i will make my own xd
Avatar
Avatar
Learath2
I honestly don't agree with this being an issue. For me if it looks fluid it's fine. Movies are 24fps and we don't complain about that either
But movies are not interactive
Avatar
i like the kitchen sink stuff
09:10
like sky factory 2
Avatar
I think it's more about input latency than FPS, but those two are correlated
Avatar
Avatar
Scrumplex
At least people were redistributing the early access code as it's GPLed (edited)
Should probably archive all these repos. Recently I've been noticing governments and companies can actually disappear stuff off the internet
Avatar
ill mirror that on my forgejo instance
Avatar
Nintendo could probably take this repo down
Avatar
Avatar
Ryozuki
for me its a big issue, i need the smooth
Do you feel movies aren't smooth? Input lag is indeed a far more annoying phenomenon
Avatar
@Scrumplex btw im hosting forgejo feel free to use it https://git.edgarluque.com/explore/repos
This is a Forgejo instance hosted by Edgar
Avatar
Avatar
Ryozuki
ill mirror that on my forgejo instance
Careful. Don't get nintendo'd
Avatar
IMO movies being 24fps is fine enough
Avatar
Avatar
Learath2
Careful. Don't get nintendo'd
ill make it private maybe
Avatar
YouTube videos being 30 FPS or 60 FPS is fine. I think fast paced stuff is better if it's 60 FPS, but it's not like I'll complain
Avatar
Avatar
Learath2
Should probably archive all these repos. Recently I've been noticing governments and companies can actually disappear stuff off the internet
doubt they can disappear something so popular
Avatar
But games have to be at least like 40-50 FPS for me
09:12
But I also think stable framerates are much more important than high framerates
09:13
like 150 FPS with 1% lows at 60 is much more annoying than a stable 60 FPS
Avatar
A couple weeks ago I played a bit of gta san andreas for a bit of nostalgia. The game is locked to 25fps. I did not even think about it until right now since we are talking about it
09:13
Because the game has exquisite frame pacing, it just feels good
Avatar
But GTA SA isn't really a fast paced game (edited)
Avatar
Avatar
Learath2
A couple weeks ago I played a bit of gta san andreas for a bit of nostalgia. The game is locked to 25fps. I did not even think about it until right now since we are talking about it
did u play with mta
Avatar
I'm sure it'd feel worse the faster paced the game is, but mario isn't exactly a twitch shooter
Avatar
yeah
Avatar
Avatar
Ryozuki
did u play with mta
Yep
Avatar
Though I did always notice how choppy Animal Crossing was on the Switch. Even though it's a very slow and cozy game
Avatar
Avatar
Ryozuki
i orderered the whole thing without gpu and m2 and have it built
What, that confuses me even more. U have ur CPU already?
Avatar
I think the low framerates are more annoying with games like Zelda
Avatar
I also played through hollow knight on my switch. The 30 fps didn't really bother me that much there either. Though the input does feel less responsive than on pc, I'd be lying if I said I did not get used to it almost instantly
Avatar
Avatar
Jupstar ✪
What, that confuses me even more. U have ur CPU already?
i dont? xD thats why isaid i wish i had it
Avatar
Again, not very fast paced, but because it has combat I think the low framerates might be annoying
Avatar
@Jupstar ✪ i ordered to have my pc built
09:16
i got new case and stuff
Avatar
I c
09:16
Unepyc moment
Avatar
Though I might have a higher tolerance to lag than the average person. I played games with 90 ping for most my life 😄
Avatar
but i ordered it without gpu or m2
Avatar
what are the specs? :O
Avatar
Avatar
Scrumplex
what are the specs? :O
sec
09:17
this + a nvidia 3080 and my m2 ssds
Avatar
Avatar
Learath2
Though I might have a higher tolerance to lag than the average person. I played games with 90 ping for most my life 😄
I'd argue it heavily depends on the game. Teeworlds/DDNet at 90 ms? HELL NO Minecraft at 90 ms? Fine enough
Avatar
i got the case big enough for a 4090
Avatar
Avatar
Ryozuki
i got the case big enough for a 4090
Ez
Avatar
Avatar
Ryozuki
this + a nvidia 3080 and my m2 ssds
i dont recognize the first three brands 👀
Avatar
Avatar
Ryozuki
i got the case big enough for a 4090
If I'm honest with u, it's a weird time to buy high end
Avatar
300€ mobo xd
Avatar
Avatar
Jupstar ✪
If I'm honest with u, it's a weird time to buy high end
smth happened and i got quite big spare cash
Avatar
Avatar
Scrumplex
I'd argue it heavily depends on the game. Teeworlds/DDNet at 90 ms? HELL NO Minecraft at 90 ms? Fine enough
I played tw with 90ms for a very long time. Until Turkey got good peerings with the EU. It is indeed annoying
Avatar
lets say smth like a extra pay xd
Avatar
And it was before antiping was a thing
Avatar
In q3 new gen comes
Avatar
then ill buy it
Avatar
Avatar
Learath2
I played tw with 90ms for a very long time. Until Turkey got good peerings with the EU. It is indeed annoying
I think if you have consistent 90ms with anti ping you should be fine for the most part
09:19
well ill wait until more revisions come
Avatar
Avatar
Ryozuki
then ill buy it
Epyc rich moment
Avatar
first batch always has issues
Avatar
Avatar
Ryozuki
first batch always has issues
Lmao
Avatar
Avatar
Scrumplex
I think if you have consistent 90ms with anti ping you should be fine for the most part
The hardest part was catching falling tees before antiping. I couldn't play for a while after the internet got better since I was leading my aim so much
Avatar
Apple already beta tested 3nm
Avatar
Avatar
Ryozuki
this + a nvidia 3080 and my m2 ssds
I don't agree with your choice of cooler. Arctic released their new Liquid Freezer 3 recently and it's the best cooler full stop. Like it's cheaper than most competitors AND performs the best regarding cooling as well as noise
Avatar
Avatar
Learath2
The hardest part was catching falling tees before antiping. I couldn't play for a while after the internet got better since I was leading my aim so much
I feel this. I don't use Anti Ping because I am trained for 20-30ms ping (edited)
Avatar
Avatar
Scrumplex
I don't agree with your choice of cooler. Arctic released their new Liquid Freezer 3 recently and it's the best cooler full stop. Like it's cheaper than most competitors AND performs the best regarding cooling as well as noise
oh lol its ok i didnt rly look into it much, as long as it cools
09:20
wanted to try a liquid cooling since it makes the pc look prettier
09:20
but i think its the same as air cooling
Avatar
Avatar
Scrumplex
I feel this. I don't use Anti Ping because I am trained for 20-30ms ping (edited)
Yep, I still don't use it exactly for that reason
Avatar
IMO a liquid cooler is nicer to work with, because if you ever need to reach your RAM or anything else that's close to the CPU a big air cooler is always in the way (edited)
09:21
and its close to the gpu sometimes
09:21
but i think this case allows vertical gpu or smth
Avatar
Avatar
Ryozuki
wanted to try a liquid cooling since it makes the pc look prettier
When I get some money and time on my hand, I'm definitely doing hard tubing liquid cooling. It looks so cool
Avatar
Sadly my water cooler's pipes hug the GPU so if I ever want to take out my GPU, I need to take out my CPU cooler
Avatar
Avatar
Scrumplex
Sadly my water cooler's pipes hug the GPU so if I ever want to take out my GPU, I need to take out my CPU cooler
Custom loop?
Avatar
front mounted the radiator with the pipes coming out at the bottom of the case (so the air bubbles get trapped in the radiator, far away from the pipes
Avatar
Avatar
Jupstar ✪
Custom loop?
nah
Avatar
the cool thing is, ill have a 2nd home pc!
09:22
with a ryzen 5800x kek
Avatar
Avatar
Scrumplex
IMO a liquid cooler is nicer to work with, because if you ever need to reach your RAM or anything else that's close to the CPU a big air cooler is always in the way (edited)
I have a noctua nh-d14. I can't do anything in my case without removing it. So annoying
Avatar
Avatar
MilkeeyCat
Or just use Mason and everything just works gigachad
Even when using Mason, clangd didnt find Std Headers for me when i used cmake feelsbadman
Avatar
Avatar
Ryozuki
the cool thing is, ill have a 2nd home pc!
Make a ddnet tournament, the winner gets the pc
Avatar
888ac2f Update traditional_chinese.txt - By622 ca9f5df Merge pull request #8064 from By622/patch-9 - def-
Avatar
Avatar
MilkeeyCat
Make a ddnet tournament, the winner gets the pc
lol no xd
09:23
i dont even play ddnet
Avatar
Too baf
09:23
Bad
Avatar
baf baf
Avatar
Bam mentioned
Avatar
this cat looks like me looking at C and python coders
Avatar
Avatar
Ryozuki
i dont even play ddnet
Wtf. I'm taking your dev role
Avatar
Avatar
Learath2
Wtf. I'm taking your dev role
lol no xd
09:24
i play like maybe to talk to ppl
09:24
once a week
Avatar
Ok good
Avatar
I play it almost every day
Avatar
also i got a pr merged a week ago!
09:24
im a active dev
Avatar
Best game
09:25
@Jupstar ✪ i know its the best game, but i feel i dont have like a partner to play with a lot
Avatar
Avatar
Jupstar ✪
I play it almost every day
When hostile 3 2p ? Im on at 16:00 UTC+2 gigachad (edited)
Avatar
Actually one reason I play it every day is, that it starts in one second
Avatar
Most games are horrible loading wise
Avatar
well it doesnt have much to load lets be real
Avatar
Avatar
Jupstar ✪
Actually one reason I play it every day is, that it starts in one second
Best reason 😬
Avatar
Avatar
Jupstar ✪
Most games are horrible loading wise
No man's Sky and destiny 2 silently hoping they dont get mentioned
Avatar
gta 5 online
09:26
kek
Avatar
Avatar
MilkeeyCat
Best reason 😬
Ikr. Performance is everything
Avatar
Avatar
Ryozuki
gta 5 online
kek
Avatar
Avatar
Ryozuki
gta 5 online
Lmao
09:26
I hate this shit so much
Avatar
I play while I'm in queue for league
Avatar
Avatar
Learath2
I play while I'm in queue for league
ban
Avatar
does league have long queues
09:26
the situation reversed
Avatar
Avatar
Jupstar ✪
Ikr. Performance is everything
Oh yea, u have seen my 5fps crap 😏
Avatar
i find fast in dota
Avatar
Avatar
Ryozuki
does league have long queues
When I play with my friends yes. Our ranks are too far apart
Avatar
do u have friends?
09:27
get out
Avatar
Avatar
MilkeeyCat
Oh yea, u have seen my 5fps crap 😏
U already quintupled it
09:27
Nice
Avatar
Avatar
Ryozuki
get out
sadge
Avatar
brb making coffee
Avatar
Avatar
Jupstar ✪
U already quintupled it
Rn i go over all tiles
Avatar
Avatar
Ryozuki
brb making coffee
Send Pics of fishies
09:27
I have to start working again in 3 Minutes
09:27
God Help me
Avatar
I think i can apply some mafs to loop only over elements in view
Avatar
@Learath2 do u drink coffee with milk or not
09:28
if so how much % of milk
Avatar
Avatar
Ryozuki
@Learath2 do u drink coffee with milk or not
Coffee -> #off-topic Tea -> #developer
🍵 3
Avatar
Avatar
Ryozuki
@Learath2 do u drink coffee with milk or not
I'll usually have it with no milk at home. But sometimes I enjoy a latte
Avatar
Avatar
Scrumplex
My PC
Hot
Avatar
Avatar
Scrumplex
My PC
I am honestly not quite happy with my liquid cooler mount
Avatar
Avatar
meloƞ
Send Pics of fishies
Avatar
The fans are blowing onto the radiator from the front of the case. Which means all the dust gets pushed into the radiator (edited)
Avatar
Avatar
Ryozuki
if so how much % of milk
I like my latte about 30-35% milk, but it's a subjective thing
Avatar
Avatar
Learath2
I like my latte about 30-35% milk, but it's a subjective thing
same more coffee than milk
Avatar
And it depends on the coffee. Darker roasts can tolerate more milk before you lose the flavors
Avatar
Avatar
Scrumplex
My PC
lols non gamer
09:31
looks*
Avatar
i disabled all the rgb
Avatar
Coffee addiction is the weirdest majority human thing
Avatar
btw im a gamer and i spilled coffee on my old 200€ keyboard
09:31
but i got a new one
09:31
corsair k70
Avatar
Avatar
Scrumplex
My PC
are those 2 dacs?
Avatar
Avatar
Scrumplex
My PC
tbh the liquid cooling doesnt look cool there
Avatar
Avatar
Jupstar ✪
Coffee addiction is the weirdest majority human thing
Why? It's a relatively harmless stimulant that's completely legal. It'd be more weird if a majority of people didn't use it
Avatar
and noctua being noctua with the color xd
Avatar
Avatar
Ryozuki
are those 2 dacs?
dac and amp
Avatar
Avatar
Ryozuki
and noctua being noctua with the color xd
it was a leftover from my previous case xD
09:33
owo
Avatar
Avatar
Ryozuki
tbh the liquid cooling doesnt look cool there
Yeah I think I'd have to flip it for it be okay. But then I might get dripping noises over time
09:33
09:33
unfiltered view of my desk
09:33
usually i would clean up a little before taking a picture xD
Avatar
my setup
09:34
i need a ferris plushie
Avatar
Why are your desks so clean wtf
Avatar
why is yours not lol
09:35
gotta e a refined gamer
Avatar
I'm unsure whether I should show you mine so you can judge me
Avatar
Avatar
Scrumplex
Click to see attachment 🖼️
Before anyone calls me out on it: that macbook on the right is from work 🤮
Avatar
The state of this desk is unmanageable
Avatar
Avatar
Scrumplex
Before anyone calls me out on it: that macbook on the right is from work 🤮
i also got a m1 from work
Avatar
same
09:36
but I want a Linux notebook :((
09:36
I hate macOS' window management
Avatar
how can u live with small keyboards
09:36
i cant
Avatar
and keyboard shortcuts
Avatar
i need 100%
09:36
or 110%
Avatar
Avatar
Scrumplex
but I want a Linux notebook :((
At least I got my framework hiding next to me in the shelf
Avatar
Avatar
Ryozuki
how can u live with small keyboards
The only problems I have with this is pressing F1-F12 and a number at once (edited)
09:37
like in Minecraft to do some debugging stuff (I can't do F3+3 for example)
Avatar
Also ~ is a bit annoying
09:38
I bound it to Fn+Esc
09:38
or rather Fn+Shift+Esc for ~ and Fn+Esc for `
09:38
also Home/End is a little annoying (Fn+PgUp/PgDown)
09:38
but besides that, I am quite happy with this (edited)
Avatar
do you really need a numpad though? :O
Avatar
i like it
09:39
i used it in blender
Avatar
Here judge me
Avatar
Avatar
Learath2
Why? It's a relatively harmless stimulant that's completely legal. It'd be more weird if a majority of people didn't use it
I dunno. It smells like shit. Coffee machines are expensive and often break. They get pretty uncomfortable without their coffee. Coffee itself only grows on very few places in the world. It's just weird that so many ppl like it ( for me)
Avatar
Avatar
Learath2
Here judge me
not bad
Avatar
Avatar
Learath2
Here judge me
nice lamp xd
Avatar
Avatar
Learath2
Here judge me
same mouse? also whats that keyboard
Avatar
Avatar
Learath2
Here judge me
Nice Rubik's cubes
Avatar
filthy anime user!
Avatar
looks okay to me
Avatar
Avatar
Jupstar ✪
I dunno. It smells like shit. Coffee machines are expensive and often break. They get pretty uncomfortable without their coffee. Coffee itself only grows on very few places in the world. It's just weird that so many ppl like it ( for me)
Smells like shit is the issue. Most people would disagree with you on that one
Avatar
i like coffee smell
Avatar
Avatar
Ryozuki
filthy anime user!
lmao
09:42
Coffee smell good (edited)
Avatar
Avatar
Ryozuki
same mouse? also whats that keyboard
It's a leopold fc660m. So nice to have arrows in a 60%
Avatar
Avatar
Learath2
Smells like shit is the issue. Most people would disagree with you on that one
And gives bad breath
Avatar
Tea yummier though
09:43
like if you want something that keeps you awake, black tea can also do the job (edited)
Avatar
I only drink herb tea. Without coffeine
brownbear 1
Avatar
Avatar
Jupstar ✪
Nice Rubik's cubes
I wonder if I can still solve them. It's been a while since I was interested in them
Avatar
The cup you can see on my desk is fennel tea
09:44
I am such a tea snob that I bought 1kg of fennel seeds that I grind myself and brew tea with
Avatar
But tbh I generally only drink tea in winter, if at all
09:44
Water is best
09:44
Water is just so amazing
Avatar
Tea is so good too. Especially some pu'er tea chefsKiss
Avatar
Avatar
Scrumplex
I am such a tea snob that I bought 1kg of fennel seeds that I grind myself and brew tea with
i have a coworker that cooks the coffee beans or smth i forgot word
Avatar
It's the best refresh
Avatar
Avatar
Ryozuki
i have a coworker that cooks the coffee beans or smth i forgot word
i assume roast? :o
09:44
xd
Avatar
Drinking 500ml water at once feels amazing
09:45
Like u clean your body
Avatar
I use one of these things to grind my fennel seeds: (edited)
09:45
I feel like someone who smokes weed
Avatar
sure to grind seeds bro
09:45
biggest_abuser_and_weed_user
kek 2
Avatar
Avatar
Jupstar ✪
But tbh I generally only drink tea in winter, if at all
My turkish genes compel me to always drink tea. Even if it's 40degC outside, I'll have atleast my breakfast tea and afternoon tea
Avatar
Avatar
Ryozuki
filthy anime user!
Lmao
Avatar
thats called a grinder
Avatar
Avatar
Learath2
My turkish genes compel me to always drink tea. Even if it's 40degC outside, I'll have atleast my breakfast tea and afternoon tea
Wow tea in summer is a skill ngl
09:46
I'd probably just die
Avatar
Avatar
Jupstar ✪
Wow tea in summer is a skill ngl
turkish (and arabic) tea hits hard ngl
Avatar
Avatar
Ryozuki
not bad
Also, the coins I hoarded are the biggest issue. I can't get rid of them because my bank branch doesnt have a coin machine pepeW
Avatar
i feel like i need a anime figure or smth now
09:48
i will buy a frieren one
09:48
and pray
09:48
Avatar
Avatar
Ryozuki
i feel like i need a anime figure or smth now
I used to avoid all anime things. Then I noticed I'm dying alone either way, might aswell enjoy my hobbies
Avatar
just hide it if someone comes kek
09:48
justatest
Avatar
No one comes. No one will come. So that's a non issue
Avatar
not like anyone comes sadSnail
09:50
llvm compiled finally
Avatar
Avatar
Ryozuki
llvm compiled finally
Celebrate
Avatar
❯ ./bin/llvm-lit tools/mlir/test/CAPI/ -- Testing: 10 tests, 10 workers -- PASS: MLIR :: CAPI/quant.c (1 of 10) PASS: MLIR :: CAPI/pdl.c (2 of 10) PASS: MLIR :: CAPI/transform_interpreter.c (3 of 10) PASS: MLIR :: CAPI/transform.c (4 of 10) PASS: MLIR :: CAPI/sparse_tensor.c (5 of 10) PASS: MLIR :: CAPI/llvm.c (6 of 10) PASS: MLIR :: CAPI/translation.c (7 of 10) PASS: MLIR :: CAPI/pass.c (8 of 10) PASS: MLIR :: CAPI/ir.c (9 of 10) PASS: MLIR :: CAPI/execution_engine.c (10 of 10) Testing Time: 0.26s Total Discovered Tests: 10 Passed: 10 (100.00%)
09:50
atleast they got nice testing tools
Avatar
llvm-lit
Avatar
its lit
Avatar
Avatar
Learath2
No one comes. No one will come. So that's a non issue
hey! I wanted to visit you one day
10:25
is it you who keeps sabotaging that? :p
Avatar
MlirAttribute compile_unit = mlirLLVMDICompileUnitAttrGet(ctx, id, 0x1C, file, foo, false, 0x1); // CHECK: #llvm.di_compile_unit<id = distinct[0]<"foo">, sourceLanguage = // DW_LANG_Rust, file = <"foo" in "bar">, producer = "foo", isOptimized = // false, emissionKind = Full> mlirAttributeDump(compile_unit); obviously the test i add to llvm would mention rust
Avatar
Avatar
heinrich5991
hey! I wanted to visit you one day
monkaS
Avatar
when i ever meet cyberFighter I'll ride to him with a horse
Avatar
Avatar
Learath2
No one comes. No one will come. So that's a non issue
have you tried paying ppl to come to you?
Avatar
Avatar
Jupstar ✪
have you tried paying ppl to come to you?
That's the lamest thing I've ever heard
Avatar
Avatar
Learath2
That's the lamest thing I've ever heard
still sounds more sane than getting depressions for being alone
Avatar
Then you'll be depressed for being lame. There is no out
Avatar
Avatar
Learath2
Then you'll be depressed for being lame. There is no out
xDD
Avatar
Avatar
Learath2
That's the lamest thing I've ever heard
u can pay them to play starkiller maps with you
Avatar
This PR adds the following to the mlir c api: The disctinct mlir builtin attribute. LLVM attributes (mostly debug related ones) While i almost have this working, there is an issue i encountered a...
Avatar
the legend strikes again, epyc
Avatar
Avatar
MilkeeyCat
I think i can apply some mafs to loop only over elements in view
and it's so much less laggy, holly
Avatar
Avatar
Learath2
Then you'll be depressed for being lame. There is no out
Just invite us all - im down owo
Avatar
Avatar
MilkeeyCat
and it's so much less laggy, holly
already got texture support?
Avatar
Avatar
Jupstar ✪
already got texture support?
no but it feels so good
11:45
to not render 300k tiles each time
Avatar
xd
Avatar
but it still laggy asf when zoom out feelsbadman
Avatar
that won't go away with your approach
Avatar
it's ok with 2-3k but higher is joe over
Avatar
Avatar
Jupstar ✪
that won't go away with your approach
how does ddnet render tiles? owo
Avatar
Avatar
MilkeeyCat
how does ddnet render tiles? owo
it buffers all tiles in GPU memory. so they are not built on fly additionally there is not 1 draw call for every tile, instead for a whole tile row
Avatar
i didnt even know that shaders have macros justatest
Avatar
yeah GLSL is c like
11:52
@MilkeeyCat you should try to make a renderer using geometry shaders and then do a mix out of ddnet's approach and patiga's approach. i really wonder how well a GPU can spawn vertices vs the CPU creating draw calls of existing vertices (but having to do it row by row)
11:52
so basically patigatus21's twgpu does everything on the GPU
11:53
but he does most stuff on the fragment shader
Avatar
this code is already patiga's twmap + ddnet graphics + my js glue to make it work
11:53
justatest
Avatar
xdd
Avatar
oh and libtw2
Avatar
❤️
Avatar
when libtw1 😬
11:56
teeworlds 1.0 release chiller's wet dream
Avatar
Avatar
Jupstar ✪
so basically patigatus21's twgpu does everything on the GPU
pls go back to "patiga" 😅
12:37
btw I revisted my tilemap renderer, and optimized it quite aggressively. iirc, it might be 5x faster than before. the fragment shader now does the discard thing, the math is a single matrix multiplication, and the memory footprint of the gpu-tilemap is 8x smaller owo (edited)
poggers 1
gigachad 1
Avatar
Avatar
Patiga
pls go back to "patiga" 😅
But it sounds like u a Knight xd
Avatar
heh, thats actually kinda accurate for how I got that name
12:39
I think I lost multiple gmail addresses when I was younger, so patiga, patiga21 and all that stuff was gone
12:39
and in german class we just had that you can make names sound old by adding "tus" or smth, so that was my next email address :d
Avatar
Avatar
Patiga
btw I revisted my tilemap renderer, and optimized it quite aggressively. iirc, it might be 5x faster than before. the fragment shader now does the discard thing, the math is a single matrix multiplication, and the memory footprint of the gpu-tilemap is 8x smaller owo (edited)
Oh that's very impressive
12:39
I should try it out
12:40
But discards are usually not faster, that surprises me
Avatar
on the new-approach branch
12:40
I think the discard did essentially nothing
Avatar
Maybe the compiler optimizes the shader based on it
Avatar
but I included it for testing
Avatar
Ah
Avatar
I didnt really see a different with or without
12:41
*difference
12:42
(and mipmaps are next, although my naive downscaling didn't work straight away)
Avatar
Avatar
Patiga
btw I revisted my tilemap renderer, and optimized it quite aggressively. iirc, it might be 5x faster than before. the fragment shader now does the discard thing, the math is a single matrix multiplication, and the memory footprint of the gpu-tilemap is 8x smaller owo (edited)
How did you measure the increase in performance? Did you find a nice tool?
Avatar
no time for that xd
12:43
just my good ol fps counter
Avatar
5x fps would be insane
12:44
Nice nice
Avatar
well if you can measure it too I'd be interested in your findings as well, I was also a bit sceptical
Avatar
Considering the fragment shader calculates for 3 million pixels it defs has high potential ^^
Avatar
hm I think on my laptop, the improvement wasn't as drastic
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-addresssan...
Avatar
ChillerDragon: how does -i'' help with macos?
14:24
that should be precisely equivalent to -i
Avatar
@Learath2 have you continued the message queue stuff?
Avatar
Avatar
heinrich5991
@Learath2 have you continued the message queue stuff?
I'm still brainstorming about it, the things I want from it make me think maybe something out of the box like qpid would be bettet than me implementing it from scratch
15:09
Better*
Avatar
I mean kog also has a solution, don't remember what that was
Avatar
They have some grpc stuff
Avatar
hmm. that sounds orthogonal to the stuff the queue should do
Avatar
I think I definitely want node discovery. Manually configuring the shape of the network down to the gameserver doesn't sound very appealing to me
Avatar
node discovery with a central server?
15:13
or more complicated?
Avatar
With a central server
Avatar
approves (edited)
Avatar
I think I also definitely want proxies. I don't want all gameservers directly talking to the central server
Avatar
yes, I agree
15:16
both of that seem pretty necessary
Avatar
One thing I'm having trouble with is how to name nodes in a unique way so messages can be addressed to them
Avatar
location+port?
Avatar
I was thinking something similar to that. Dot seperated, something like main.ger2.8303
Avatar
sounds good
Avatar
Or s/main/central/ whatever
15:22
Another thing that bugs me is how to handle caching and coherency. Say you issue a global ban from main.ger2.8303 that generates a message to main.banmaster. However our link to main is down. Now that ban could wait until it's back up, but that's not desirable. It should be in effect locally atleast
15:24
But if it is active locally, that message still needs to be delivered when the link is back up. Some node needs to be watching and keeping track of the link state and resynchronizing stuff when it's back up
15:24
Maybe I should just implement the backbone of the messaging infrastructure and think about these details later
Avatar
that seems like the thing you're using isn't aligned with how you want to model it
15:27
but I guess that also means conflict resolution once you no longer want to require the central server to be there
Avatar
Exactly why I'm hesitant to go ahead. Because maybe there is some protocol level way to achieve this without bolting on external synchronization
Avatar
i.e. maybe we'd need to look more for a p2p system that we coudl use centrally
Avatar
But bans are just one thing that we can use this system with. Should we really design it around them?
Avatar
what else do we want to use it for?
Avatar
I would ideally want to move everything onto that one link slowly one by one. Like broadcasts, executing rcon commands
Avatar
broadcasts would be the same as executing rcon commands, or do they need something special?
Avatar
Yeah they are the same, just thinking quickly
Avatar
what properties do we want for this?
Avatar
The hardware status python thing that we run would be nice to have over this aswell
Avatar
this is about ddnet infra internally right?
Avatar
it's executed at most once
Avatar
reading this again made me yet again remind me of elixir and that i should learn it more
Avatar
should it be executed later when the link comes online again?
Avatar
Another nice to have would be log/audit streams, so you could do something like tail-log main.ger10.8306 and get logs. I know we can bolt all of these things on with bash scripts and call it a day but I don't really like it
Avatar
or should it only be executed if the lnk is there when the command is issed?
Avatar
Another thing that might be nice is having records go over this link too, without the weird fallback databases we sync back up every night
Avatar
Avatar
Learath2
Another thing that bugs me is how to handle caching and coherency. Say you issue a global ban from main.ger2.8303 that generates a message to main.banmaster. However our link to main is down. Now that ban could wait until it's back up, but that's not desirable. It should be in effect locally atleast
this maybe is off topic, but u can even not define a main server, and let a consensus algorithm define it, something like https://raft.github.io/
Raft is a consensus algorithm that is designed to be easy to understand.
Avatar
Avatar
heinrich5991
or should it only be executed if the lnk is there when the command is issed?
I was thinking only when connected. So the link has to be up for you to issue a rcon command
Avatar
ok, that's trivial
15:36
any system will be able to support that
15:36
basically a broadcast
Avatar
Avatar
Learath2
Another nice to have would be log/audit streams, so you could do something like tail-log main.ger10.8306 and get logs. I know we can bolt all of these things on with bash scripts and call it a day but I don't really like it
Heck, I could probably bolt on bans better without any messaging infrastructure. Just run a db on every server and rely on the databases own sync mechanism
Avatar
the db thing doesn't look well-suited tbh (edited)
15:38
cause the server needs to handle the bans itself, it'd need to subscribe to updates
Avatar
Avatar
Ryozuki
this maybe is off topic, but u can even not define a main server, and let a consensus algorithm define it, something like https://raft.github.io/
What becomes annoying without a central server is the routing and addressing. Without a defined hierarchy you need to announce stuff around so everyone can get a network map
Avatar
erlang has a db thing in OTP
15:39
mnesia
15:39
Mnesia is a distributed, soft real-time database management system written in the Erlang programming language. It is distributed as part of the Open Telecom Platform.
Avatar
Avatar
heinrich5991
cause the server needs to handle the bans itself, it'd need to subscribe to updates
Easy enough to bolt on a query into the server so it can just query the db about it instead
Avatar
no, too slow
Avatar
Or db update hooks to execute fifo commands, even more jank
15:41
Anyway, implementing a whole new messaging protocol just to stream some bans over it sounds silly to me
Avatar
syncing rcon access is also interesting
15:42
also a list that would be synchronized
15:44
d94d020 fix practice mode not resetting after disconnect on solo servers - dobrykafe 44bf013 Merge pull request #8065 from dobrykafe/pr-solo-practice-bug - heinrich5991
Avatar
Both can be implemented as db insert/update/delete trigger now that I think about it
Avatar
needlesslygrim
Personally, I've given up on Gemini, as it seems to have been censored to the point of uselessness. I asked it yesterday [0] about C++ 20 Concepts, and it refused to give actual code because I'm under 18 (I'm 17, and AFAIK that's what the age on my Google account is set to). I just checked again, and it gave a similar answer [1]. When I tried Ch...
🤣 1
Avatar
@Learath2 perhaps something like redis would work? https://redis.io/docs/data-types/streams/
Introduction to Redis streams
16:06
the replication consistency looks a bit lackluster though: https://redis.io/docs/management/replication/
How Redis supports high availability and failover with replication
Avatar
Avatar
heinrich5991
@Learath2 perhaps something like redis would work? https://redis.io/docs/data-types/streams/
I doubt it would work any better than just postgres
Avatar
it has a stream, which would be useful for executing commands in order
16:08
does postgres have something like that?
Avatar
And working with redis on this is meh since it's technically a key value store. What would be the key of a ban even? It'll just be a ban id of sort
Avatar
Avatar
heinrich5991
does postgres have something like that?
Postgres has streaming replication too. Not sure if there is any order guarantee
Avatar
no, I mean it has "streams"
16:08
a thing where you can put a message
16:09
and other people receive it, and they can receive all messages they've missed, too
Avatar
Avatar
Learath2
And working with redis on this is meh since it's technically a key value store. What would be the key of a ban even? It'll just be a ban id of sort
I looked at the set datatype, which seemed appropriate for bans (if you can listen for changes, was trying to figure that otu)
Avatar
It's not enough, even 18 is too young You can't use C++20 until you can at least drink
Avatar
@Learath2 how to make a uint64_t literal
16:11
omg
16:12
i guess i cant take a reference to a literal like in rust
16:12
Cannot take the address of an rvalue of type 'int'clang(typecheck_invalid_lvalue_addrof
Avatar
Avatar
Ryozuki
@Learath2 how to make a uint64_t literal
UINT64_C
Avatar
uint64_t args[] = { 1 }; MlirAttribute expression_elem = mlirLLVMDIExpressionElemAttrGet(ctx, 1, 1, args);
16:13
i just went the long wae
Avatar
Is this C++ or C?
Avatar
pure C baby
16:13
im making the llvm C api for mlir
16:14
This PR adds the following to the mlir c api: The disctinct mlir builtin attribute. LLVM attributes (mostly debug related ones) While i almost have this working, there is an issue i encountered a...
Avatar
Okay you are about to witness my favourite C feature
Avatar
ah, another nice thing would be support for the redirect on map change stuff @Learath2
16:14
As discussed on irc @heinrich5991 suggested to move all players that voted yes on a map vote to a new server. This fixes the issue of players in the race being interrupted by map votes. And also so...
Avatar
Avatar
Ryozuki
uint64_t args[] = { 1 }; MlirAttribute expression_elem = mlirLLVMDIExpressionElemAttrGet(ctx, 1, 1, args);
MlirAttribute expression_elem = mlirLLVMDIExpressionElemAttrGet(ctx, 1, 1, (uint64_t){1});
Avatar
well its only test code
16:14
ohh
Avatar
should the cast go into the braces?
Avatar
Incompatible integer to pointer conversion passing 'uint64_t' (aka 'unsigned long') to parameter of type 'const uint64_t *' (aka 'const unsigned long *'); take the address with & (fix available)clang(-Wint-conversion) (edited)
Avatar
Take the address, it's fine
Avatar
MlirAttribute expression_elem = mlirLLVMDIExpressionElemAttrGet(ctx, 1, 1, &(uint64_t){1});
16:15
this worked
16:15
xd
Avatar
Avatar
heinrich5991
should the cast go into the braces?
Nope
Avatar
whats the feature called
Avatar
Compound Literals, C99:6.5.2.5
16:16
One day C++ people will stop discussing about it and add it to their language hopefully
Avatar
@Learath2 look at my pr
16:16
only the tests are pure C tho
Avatar
Avatar
Ryozuki
MlirAttribute expression_elem = mlirLLVMDIExpressionElemAttrGet(ctx, 1, 1, &(uint64_t){1});
Would 1UL not work?
Avatar
i tried
16:17
and u cant take a addr to it
Avatar
Avatar
Peter0x44
Would 1UL not work?
Literals are rvalues, they don't have addresses
Avatar
they do in rust
16:18
🤓
Avatar
Ah I didn't read enough
16:18
I just read "literal" when what is required is not really a literal
Avatar
Avatar
Ryozuki
they do in rust
I very much doubt Rust even has the concept of an rvalue, but I would also be surprised if they don't "materialize" the literal somehow before taking the reference
Avatar
they "materialize" it, if you want to call it that way
Avatar
Avatar
Learath2
I very much doubt Rust even has the concept of an rvalue, but I would also be surprised if they don't "materialize" the literal somehow before taking the reference
it does
Avatar
Avatar
Peter0x44
I just read "literal" when what is required is not really a literal
btw, technically the correct literal for a uint64_t is UINT64_C(1)
Avatar
because i know the rust middle IR
16:20
it mentions rvalue everywhere
16:21
but well being pedantic, its a rvalue in MIR not in rust itself xd
Avatar
idk any deep rust so can't say much 😛
Avatar
i copied this to make edlang
16:21
kek
Avatar
Avatar
Learath2
btw, technically the correct literal for a uint64_t is UINT64_C(1)
Wdym, is that a standard thing?
Avatar
Avatar
heinrich5991
@Learath2 perhaps something like redis would work? https://redis.io/docs/data-types/streams/
Interesting feature of redis that I did not know, if it replicates well maybe it can be used
Avatar
I know the "UL" is "unsigned long" which on every platform that matters is what uint64_t is going to be typedef'd to Actually maybe not on windows
16:23
So I guess ULL is the safer one
Avatar
Avatar
Peter0x44
Wdym, is that a standard thing?
Yes, C99:7.18.4.1
Avatar
I've never seen anyone use this syntax, I'll take a look
Avatar
It's a macro that expands to whatever is the correct literal type on that platform
16:25
17402cc Rename all variables for strict camel-casing of abbreviations - heinrich5991 f3de37d Merge pull request #8019 from heinrich5991/pr_ddnet_rename_variables - def-
Avatar
s/platform/implementation/
Avatar
In general I'm not a fan of putting the bit width in type names
Avatar
Avatar
Learath2
Yes, C99:7.18.4.1
and C++11:18.4.1p1
Avatar
I'm a fan of putting bit width in type names
Avatar
Avatar
Peter0x44
In general I'm not a fan of putting the bit width in type names
why aren't you?
Avatar
The amount of times I've done a typo for "23" instead of "32" is enough for me to dislike it
Avatar
Avatar
heinrich5991
the replication consistency looks a bit lackluster though: https://redis.io/docs/management/replication/
Why did you think replication looked lackluster?
Avatar
What is the significance of "isntall" command in npm? Looking into the code, in the file lib/npm.js, aliases{ } has isntall mapped to install I fathom this is done to go round the common ...
16:28
Synchronous replication of certain data can be requested by the clients using the WAIT command. However WAIT is only able to ensure there are the specified number of acknowledged copies in the other Redis instances, it does not turn a set of Redis instances into a CP system with strong consistency: acknowledged writes can still be lost during a failover, depending on the exact configuration of the Redis persistence. However with WAIT the probability of losing a write after a failure event is greatly reduced to certain hard to trigger failure modes.
16:28
this one
Avatar
Avatar
Peter0x44
The amount of times I've done a typo for "23" instead of "32" is enough for me to dislike it
Beyond bit field uses they are also pointless
Avatar
Avatar
Peter0x44
Beyond bit field uses they are also pointless
I think it's important to acknowledge which bit width you want
16:29
especially since you usually don't want to change it across systems
Avatar
Sure, typedef it to "size" or something and leave it at that
16:29
I think forcing it into your APIs is a bad idea though
Avatar
Avatar
Peter0x44
I think forcing it into your APIs is a bad idea though
why?
Avatar
Avatar
heinrich5991
why?
Why do it? It's a niche thing beyond bit fields
Avatar
Avatar
heinrich5991
especially since you usually don't want to change it across systems
Across modern systems, say you need 16bits of storage, but doing math with 32bit integers is faster on one of your target architectures. You don't want to strongarm the compiler into using 16bit ones
Avatar
Avatar
Peter0x44
The amount of times I've done a typo for "23" instead of "32" is enough for me to dislike it
i disagree with u on this
Avatar
Avatar
Ryozuki
i disagree with u on this
and that from the llvm dev that works with i6
16:31
lol
Avatar
i32 to me is way better
Avatar
Avatar
Peter0x44
Why do it? It's a niche thing beyond bit fields
because you usually internalize these bit width while coding. better have them in the code, too
Avatar
also llvm ir does it like i32
16:31
its not a rust invented thing btw
Avatar
I think the worst idea is having languages with the arbitrary bit widths though
Avatar
uint_fast16_t i; (edited)
Avatar
The typos alone can really screw you there and there is no way to diagnose them But I guess that's a separate debate
Avatar
Avatar
Learath2
uint_fast16_t i; (edited)
I still think that's a good type
16:32
I just dislike short, int, long, long long
16:32
and their unsigned variants
Avatar
Avatar
Learath2
uint_fast16_t i; (edited)
why not uint16_fast_t
Avatar
Avatar
heinrich5991
I just dislike short, int, long, long long
Hm, yeah those aren't amazing types ngl. Mostly because to know their limits you have to refer to the standard
Avatar
why not u16_fast
Avatar
just u16
16:33
and always fast
16:33
PadoruSpeed
Avatar
true
16:33
no_u16
Avatar
Avatar
Ryozuki
and always fast
no, sometimes you actually want 16 bits
Avatar
tbh idk what the fast does so
16:34
i was just memeing
Avatar
fast tells the compiler to pick the fastest integer type that can contain the range of interest as in fastest to operate on in the target architecture
Avatar
what does that mean in practice, in say gcc, clang or msvc?
Avatar
all except u8 are 64bit or not
16:35
u8fast
Avatar
Avatar
heinrich5991
what does that mean in practice, in say gcc, clang or msvc?
I doubt it changes anything on x86_64 in 2024
Avatar
I was wondering what their definitions are
Avatar
im such a clown
Avatar
is uint_fast16_t uint16_t or uint64_t?
16:36
on x86 etc.
Avatar
@Peter0x44 was your problem standard typdefs for uint32_t etc.?
16:37
or was it about custom types
Avatar
thought it was even about rust's integer types
Avatar
Actually it makes me question, with a 64 bit CPU, is there a big difference between a 32 vs 64 bits multiply?
Avatar
depends on the value
Avatar
It's not the case of just "this takes n cycles"?
16:39
There's no cost table Intel gives or something?
Avatar
Avatar
heinrich5991
is uint_fast16_t uint16_t or uint64_t?
I'd guess 64 on x86-64, no reason to use half a register
Avatar
My expectation is the 32 bits is still faster but idk
Avatar
Avatar
Peter0x44
There's no cost table Intel gives or something?
i guess u could find it somewhere
16:40
but in the real world it's not as ez as that
16:40
as the compiler can reorder some stuff etc.
16:41
apparently the larger the bit width, the faster the mul
16:41
for ice lake
Avatar
lol, I'm looking at the exact same table
Avatar
but 32bit and 64bit imul are the same
Avatar
for haswell it seems imul for r32,r32 is the same as r64,r64
Avatar
(register-register-multiplication)
16:43
but mul (register-constant-multiplication) is faster for 64 bit
16:44
imul for both 32 and 64 bit has a latency of 3 cycles and it takes 1 cycle
Avatar
Avatar
Jupstar ✪
as the compiler can reorder some stuff etc.
not only the compiler btw, the cpu will also reorder stuff, it's impossible to reason about cycle level performance anymore unless you are one of the few people that seem to be aliens
Avatar
the cpu has less UB to exploit though, so the observable effect (modulo speed, … ahhh, we're talking about speed
16:47
ah, but idiv is faster for 32-bit than for 64-bit
16:47
takes 6 vs 10 cycles (latency: 12, 15)
Avatar
Avatar
heinrich5991
but mul (register-constant-multiplication) is faster for 64 bit
Wdym by this?
16:50
Surely if it's constant the compiler would just be using shifts
16:51
(if it's pot or whatever other optimization rules exist)
Avatar
Ignore the compiler for a second
Avatar
I'm saying the 64-bit mul instruction is faster for 64 bit than for 32 bit
16:51
whether it's emitted by the compiler is a different qusetion
Avatar
This is at the level of the cpu, if you emit a mul with an immediate operand
Avatar
I just verified, x * 1234 does not compile down to shifts, but to a multiplication
Avatar
Also I think div is not pipelined but mul can be
Avatar
doesn't seem to be the case
16:54
in the table, I can see that the latency differs from the speed
16:54
for both division and multiplication
16:54
so something must be pipelined according to my understanding
Avatar
@heinrich5991 what does x / 113 compile to btw?
Avatar
I'd guess a multiplication
16:55
yes, multiplication plus shifts
Avatar
Yeah, I'd guess it's very hard to get a compiler to emit a division
Avatar
It's easy
16:56
Use -Os
Avatar
Is there even an immediate division in x86?
Avatar
Avatar
Peter0x44
Use -Os
I think gcc is way too aggressive on this point
16:56
It's obviously not worth the bytes it saves
16:58
Avatar
Avatar
Peter0x44
It's obviously not worth the bytes it saves
That's behavior I'd expect from "-Oz" instead But I think that option got copied from clang and does basically nothing
Avatar
I managed to not do anything productive today :/
Avatar
Avatar
Learath2
I managed to not do anything productive today :/
is your day now over or what
Avatar
Avatar
Learath2
I managed to not do anything productive today :/
i did a 500 line pr to llvm
17:11
and worked
Avatar
Avatar
Ryozuki
i did a 500 line pr to llvm
gamer
17:34
i gave a "lgtm" on gitlab today and also worked
Avatar
Avatar
Jupstar ✪
is your day now over or what
I don't operate well in the evenings anymore
Avatar
Avatar
Learath2
I don't operate well in the evenings anymore
then you are simply not motivated for your project
17:39
except it's really only today
17:39
everyone has bad days
Avatar
Avatar
Jupstar ✪
then you are simply not motivated for your project
I'm not motivated to be awake anyway
17:39
You forget that I'm an old man
Avatar
Avatar
Learath2
You forget that I'm an old man
12 is not the oldest age
17:41
compared to most animals... yes
Avatar
Avatar
Jupstar ✪
12 is not the oldest age
That's only one of my ages, I also identify as an 85 year old
Avatar
Avatar
Learath2
That's only one of my ages, I also identify as an 85 year old
wise as you are, you know how to trick your brain to also work in the evening
17:43
😏
Avatar
@Learath2 thinking about it. do we even need anything fancy?
18:12
since none of the solutions fit exactly, a simple http endpoint for current state plus a tcp connection for state updates should work, no?
Avatar
Avatar
heinrich5991
since none of the solutions fit exactly, a simple http endpoint for current state plus a tcp connection for state updates should work, no?
HEH, I was also pondering that. If we want to do just a solution for bans, I think that's the way
18:30
huh
18:32
It would have been nice to have all our infrastructure nicely connected, but shouldn't let perfect be the enemy of works better than the last band aid
Avatar
that'd connect our infrastructure, right?
Avatar
Avatar
heinrich5991
that'd connect our infrastructure, right?
It just expands the patchwork of solutions
Avatar
I guess you could replace the tcp connection with a simple message queue
Avatar
noo, I wouldn't even bother messing around with it just for bans
18:37
Not much of an advantage, you just get message queueing, our operation is fast enough that we don't even need to think about that
Avatar
we also get a segmentation protocol like that
18:37
plus subscriptions, I guess
Avatar
Eh, if we want one zeromqs pub/sub sockets aren't bad
18:39
and easy enough to proxy
Avatar
segmentation! ^^
Avatar
Why would a ban update ever be segmented anyway? Are we thinking of different kinds of segmentation?
Avatar
message segmentation
Avatar
Our messages in this case are tiny though, why would they get segmented?
Avatar
tcp doesn't give us a way do distinguish between messages
18:45
it only gives us a byte stream
Avatar
Ah, that's what you meant
Avatar
a message queue would give us messages, I'd assum
18:45
e
18:46
what kind of segmentation did you think about?
Avatar
I was considering just sending newlines 😄
Avatar
classic
Avatar
Avatar
heinrich5991
what kind of segmentation did you think about?
I was thinking packet segmentation
Avatar
if it's good enough for IRC…
18:46
but that'd mean no binary data
18:47
which kinda sucks
Avatar
Well for bans it's not too bad, but we could do length prefixed messages too I guess
Avatar
parsing text is harder than parsing binary data in C++, I think
18:50
I feel it's about the same
Avatar
you can just read data straight into a POD struct
18:50
harder to accurately parse text IMO
Avatar
Fix HTTP client effectively shutting down by entering the ERROR state when a request cannot be added. Now only the invalid request is aborted immediately. The ERROR state is now only entered when a curl function fails in a way where recovery is not possible. Fix occasional deadlock when HTTP client is shutting down after entering the ERROR state, by also immediately aborting new requests when the HTTP client is already in the ERROR state. Remove unused CHttp::EState::STOPPING....
Avatar
These crashes don't happen every time I finish a map, but I think they happen only when I improved my personal record in that particular map. I've seen for some time (not sure which version) but in DDNet 18.0.3 I finally was able to get it packaged with debug symbols and everything to report. Let me know if more information is needed. Environment: Arch Linux (x86_64), DDNet version 18.0.3 Logs files:
Avatar
is there any way to rotate a UIrect atm? (edited)
Avatar
as a clueless ddnet graphics enjoyer i can say.. no =]
Avatar
Avatar
MilkeeyCat
as a clueless ddnet graphics enjoyer i can say.. no =]
brownbear go implement it for me then pls ty
Avatar
Avatar
meloƞ
brownbear go implement it for me then pls ty
take coords from rect and slap em in DrawRectExt
Avatar
that seems way to complicated for me to try
Avatar
wat -.-
19:37
ure pro! (edited)
19:39
the more I look at CMapLayers the less i believe it's possible to write pepeW (edited)
Avatar
Avatar
MilkeeyCat
ure pro! (edited)
i just want a precoded function that i can use, idk something user friendly like rotateRect(CUIRect rect, angleInDegrees)
19:40
>:(
19:40
i pay you 1€
owo 1
19:40
paypal
Avatar
wait would the angle be a float or a double?
Avatar
in graphics_threaded it's float
Avatar
Avatar
meloƞ
is there any way to rotate a UIrect atm? (edited)
rotate by degrees?
Avatar
or rotate by 180° xd (edited)
Avatar
i'd like to rotate a UIRect by a defined amount (45° or smth idk)
Avatar
then no
Avatar
Avatar
meloƞ
i'd like to rotate a UIRect by a defined amount (45° or smth idk)
did u make helper function?
Avatar
i didnt even attempt it yet, im just brainstorming the possibility loudly rn XD
Avatar
We want to change the state of the job from STATE_QUEUED to STATE_RUNNING, but not from STATE_ABORTED. Previously, the code usedd exchange to change the state and compared non-atomically afterwards. This led to STATE_ABORTED being replaced by STATE_RUNNING in a race. With compare_exchange_strong, this can no longer happen. Fixes #8044.

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possi...
20:03
9323e18 Fix HTTP client shutdown and deadlock on request error - Robyt3 819270c Merge pull request #8066 from Robyt3/Http-Error-Fixes - heinrich5991
Avatar
the thing was apparently not news
20:12
i.e. the present tense of "bans" is incorrect
20:13
it's been in some EULA, but likely unenforcable anyway because RE for interoperability is legal
Avatar
what should i say xd my ideology goes against what nvidia is trying.
20:17
economy is build in a very weird way
20:18
EU probably does that bcs of competition reasons, i'd probably argue a bit different
Avatar
Avatar
Chairn
RE ?
reverse engineering
Avatar
ah and also i think they only doing this bcs these are american companies. if they'd be european their lobbyism would probably be completely different
20:42
xd
20:43
that's my take
Avatar
usually american companies are pretty good at lobbyism
Avatar
Avatar
Chairn
usually american companies are pretty good at lobbyism
This is how all US politics function
20:57
Close enough anyway
20:59
Buckley v Valejo effectively made bribery legal (edited)
Avatar
but i guess the nvidia workplaces for CUDA are all in murica
21:02
so EU doesn't care as much
21:02
better make the market nice for all competitors
21:03
and maybe EU also doesnt like to be too dependent on NVIDIA
21:03
since almost all the industry uses CUDA 😄
21:04
i dunno, is their reasoning public? was it even the EU or the european court
Avatar
There's probably software patent BS involved too
Avatar
i dont think that exists in europe
21:04
at least not as in murica
Avatar
It definitely does
21:05
I think it was "fraunhofer" that had patents on mp3
Avatar
Avatar
Peter0x44
It definitely does
source?
Avatar
Avatar
heinrich5991
source?
That there are software parents in Europe?
Avatar
yes
Avatar
The patentability of software, computer programs and computer-implemented inventions under the European Patent Convention (EPC) is the extent to which subject matter in these fields is patentable under the Convention on the Grant of European Patents of October 5, 1973. The subject also includes the question of whether European patents granted by...
Avatar
Under the EPC, and in particular its Article 52,[1] "programs for computers" are not regarded as inventions for the purpose of granting European patents,[2] but this exclusion from patentability only applies to the extent to which a European patent application or European patent relates to a computer program as such.[3]
Avatar
Avatar
Peter0x44
That there are software parents in Europe?
Definitely there were patents on mp3 that got enforced
Avatar
from your article
Avatar
I don't think that means what you think it does
Avatar
Avatar
Peter0x44
Definitely there were patents on mp3 that got enforced
can you give a source for that?
Avatar
Avatar
Peter0x44
I don't think that means what you think it does
what does it mean?
Avatar
🍿
🍿 1
21:09
😬
21:09
@Peter0x44 you know these stuff are very complicated
21:09
laws are bloatware
21:09
😬
Avatar
Avatar
Jupstar ✪
laws are bloatware
absolutely, agree
21:10
Lawyer is definitely in top 5 most dishonest professions
Avatar
BloodWork131: do you agree? xddd
21:10
chillerdragon: do you have that name as ping?
Avatar
Avatar
heinrich5991
can you give a source for that?
I've heard of lawsuits related to this happening before
Avatar
he means a real source
Avatar
But yeah it does seem the EU is less lenient with what counts as being "patentable" and such
21:14
I am searching now and I can't find an EU example of an actual lawsuit involving mp3 (edited)
21:15
https://en.wikipedia.org/wiki/MP3 This page states:
The basic MP3 decoding and encoding technology is patent-free in the European Union, all patents having expired there by 2012 at the latest.
If there were no patents there would be nothing to expire, so I guess it can be inferred from this they exist
MP3 (formally MPEG-1 Audio Layer III or MPEG-2 Audio Layer III) is a coding format for digital audio developed largely by the Fraunhofer Society in Germany under the lead of Karlheinz Brandenburg, with support from other digital scientists in other countries. Originally defined as the third audio format of the MPEG-1 standard, it was retained an...
21:18
https://fsfe.org/activities/swpat/swpat.en.html This page claims:
The European Patent Convention states that software is not patentable. But laws are always interpreted by courts, and in this case interpretations of the law differ. So the European Patents Office (EPO) grants software patents by declaring them as "computer implemented inventions".
So I have no idea by which technicality something which could be described as a "software patent" could exist Looks like there is far less of a craze regarding that Patent trolling as an industry is a more USA thing from what I can tell
Information about software patents - a problem for companies, developers and users.
Avatar
რილია 2024-03-05 21:28:04Z
hi all
Avatar
Avatar
Peter0x44
https://en.wikipedia.org/wiki/MP3 This page states:
The basic MP3 decoding and encoding technology is patent-free in the European Union, all patents having expired there by 2012 at the latest.
If there were no patents there would be nothing to expire, so I guess it can be inferred from this they exist
I find it hard to find information on this, but I'm trying 🙂
Avatar
რილია 2024-03-05 21:29:22Z
do i need to change this returned unsigned char into signed ? const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol); do i need to consider anything if im going to use unsigned char ?
21:30
and if i wanted, is this the right way to do so ? const char *username = reinterpret_cast<const char*>(sqlite3_column_text(pstmt, 0)); (edited)
Avatar
Avatar
რილია
do i need to change this returned unsigned char into signed ? const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol); do i need to consider anything if im going to use unsigned char ?
you can cast it to char *, I think
Avatar
Avatar
რილია
and if i wanted, is this the right way to do so ? const char *username = reinterpret_cast<const char*>(sqlite3_column_text(pstmt, 0)); (edited)
yes
Avatar
რილია 2024-03-05 21:31:33Z
is there anything to be considered if im going to use unsigned char ? why they made the returned value unsigned char in the first place ?
Avatar
unclear
21:32
unsigned char and char are pretty much interchangeable
Avatar
რილია 2024-03-05 21:33:19Z
so im gonna use it as is, for now to see what gonna happen 🙂
22:14
e7717f2 Fix race conditions in job state handling - heinrich5991 b6689bc Merge pull request #8068 from heinrich5991/pr_ddnet_job_atomics - def-
Exported 744 message(s)