Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.tw/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 2023-05-09 00:00:00Z and 2023-05-10 00:00:00Z
Avatar
ChillerDragon BOT 2023-05-09 05:45:13Z
i can recommend https://grep.app/ for searching github
Search across a half million git repos. Search by regular expression.
Avatar
Avatar
Chairn
damn, gotta ask @deen then
I don't manage dbs either. I break them
Avatar
the D in deen means "destruction"
Avatar
ChillerDragon BOT 2023-05-09 07:59:30Z
when downloading a 0.7 map and summing up the size it exceeds the size sent by map change and yet my downloaded mapfile has the correct sha256 sum is that weird? or a known tw protocol bug?
08:00
dont know if its my reimplementation of the protocol
08:01
A retro multiplayer shooter. Contribute to teeworlds/teeworlds development by creating an account on GitHub.
08:01
even if it gets too much it just clamps it down right to the expected and carrys on as if everything is fine
08:01
i really do not understand how my code works xd
08:06
08:06
apparently not much better than github
Avatar
self host
Avatar
I don't know any such bug
08:10
perhaps you're counting wrong?
Avatar
ChillerDragon BOT 2023-05-09 08:15:05Z
yea perhaps
08:15
your map downloader is 0.6 only right?
08:15
map dl changed a bit in 0.7
08:15
@Ryozuki i do not trust my self with ensuring the data does not get lost
Avatar
correct, my map downloader is 0.6 only
Avatar
ChillerDragon BOT 2023-05-09 08:21:37Z
yea whatever everything works i do not understand why. i will create a mental note in case i run into issues when bridging the map dl code
08:26
pog
Avatar
nice πŸ™‚
Avatar
@Learath2 i know o2 is recommended for system wide flag options but it doesnt enable -ftree-vectorize
08:57
is it safe to enable -ftree-vectorize ?
08:58
-march= is an ISA selection option; it tells the compiler that it may use the instructions from the ISA. On an Intel/AMD64 platform with -march=native -O2 or lower optimization level, the code will likely end up with AVX instructions used but using shorter SSE XMM registers. To take full advantage of AVX YMM registers, the -ftree-vectorize, -O3 or -Ofast options should be used as well[1].
>
-ftree-vectorize is an optimization option (default at -O3 and -Ofast), which attempts to vectorize loops using the selected ISA if possible. The reason it previously wasn't enabled at -O2 is that it doesn't always improve code, it can make code slower as well, and usually makes the code larger; it really depends on the loop etc. As of GCC 12, it is enabled by default with a low cost model (-fvect-cost-model=very-cheap) to strike a balance between code size and speed benefits. The cost model can be specified with -fvect-cost-model.
08:59
oh maybe its enabled now on o2
08:59
since gcc 12
Avatar
Jupstar βœͺ 2023-05-09 09:13:26Z
Doesn't clang enable some at O2 already
Avatar
Avatar
Ryozuki
const eql = std.mem.eql; const ArrayList = std.ArrayList; const test_allocator = std.testing.allocator; test "arraylist" { var list = ArrayList(u8).init(test_allocator); defer list.deinit(); try list.append('H'); try list.append('e'); try list.append('l'); try list.append('l'); try list.append('o'); try list.appendSlice(" World!"); try expect(eql(u8, list.items, "Hello World!")); }
Fwiw this contrived example looks shit in about any language I can think of, minus the allocator thing in most other languages but that's just 2 lines
Avatar
Jupstar βœͺ 2023-05-09 09:13:46Z
O3 should be safe tbh xd
Avatar
Avatar
Learath2
Fwiw this contrived example looks shit in about any language I can think of, minus the allocator thing in most other languages but that's just 2 lines
it looks good in rust
09:16
gigachad
Avatar
Jupstar βœͺ 2023-05-09 09:16:08Z
Xd
Avatar
but u can see the syntax
Avatar
Avatar
Jupstar βœͺ
O3 should be safe tbh xd
It is mostly working, there are a couple people running a full O3 system, but you never know what ancient piece of software broke strict aliasing
Avatar
and try on every push
09:16
i wonder if try is like a except
09:16
fail on every allocation
Avatar
Avatar
Ryozuki
it looks good in rust
Doubt(tm), it will be about the same minus the allocator lines and the tries, and you'll need to go from vec to str to do the final comparison
Avatar
@Jupstar βœͺ o3 is safe to use in rust but in gcc it may trigger ub cuz c coders cant be perfect
Avatar
Avatar
Ryozuki
@Jupstar βœͺ o3 is safe to use in rust but in gcc it may trigger ub cuz c coders cant be perfect
Jupstar βœͺ 2023-05-09 09:18:27Z
Just use.
Avatar
@Learath2 u dont need to go from vec to str
09:18
the str has a method to get it as a slice of u8 thats zero allocs
09:19
as_ is usually cheap
Avatar
Jupstar βœͺ 2023-05-09 09:19:48Z
@Ryozuki can u show segfault in zig without unsafe?
09:19
Didn't find anything
Avatar
I guess you can use a u8 vec yeah, I was thinking a char vec
Avatar
Avatar
Jupstar βœͺ
@Ryozuki can u show segfault in zig without unsafe?
yes
09:21
iirc
09:21
zig has no concept of borrow checker iirc
Avatar
So ChatGPT seems convinced that in Zig there is something called shorthand syntax for single-expression functions and it works like this: fn add(x: i32, y: i32) i32 => x + y; But when I try to ...
Avatar
Avatar
Ryozuki
zig has no concept of borrow checker iirc
Jupstar βœͺ 2023-05-09 09:22:25Z
I just wonder wtf that language is good for then. Any code example?
Avatar
Avatar
Jupstar βœͺ
I just wonder wtf that language is good for then. Any code example?
its good for the allocator thing iirc
09:22
it goes to lengths to let u control and know every alloc
09:23
and i guess comptime stuff
09:23
literally u gotta save the allocator in ur data types
09:23
like the array example
Avatar
zig is like a step above C in safety but couple steps below Rust
Avatar
Jupstar βœͺ 2023-05-09 09:24:22Z
"It's a missing compile error: https://github.com/ziglang/zig/issues/2130 "
test "sample" { var x: []u8 = &[_]u8{'h', 'i'}; x[0] = 0; } Segfaults at runtime. Expected behavior is compile error. Address of constant data should be a const pointe...
09:24
So sounds like they fixed it
Avatar
Trying to build a Huffman Code using zig but getting Segmentation fault at address 0x7ff700000002. I am printing two values: Expected: tree: huffman.Node{ .freq = 15, .value = null, .left = huffman...
09:25
zig doesnt protect u from invalid pointers and eyc
09:25
etc
Avatar
You can have cool things like setting compile time constraints yourself and the compiler won't let it pass until it's satisfied. Rusts borrow checker basically creates a set of basic constraints for everything
Avatar
Avatar
Learath2
zig is like a step above C in safety but couple steps below Rust
Jupstar βœͺ 2023-05-09 09:25:22Z
And are the zig compilers much less complex? Or what would u describe as better in zig than rust?
09:25
If we don't talk about syntax
Avatar
zig has null i see
09:25
bad
Avatar
Avatar
Learath2
You can have cool things like setting compile time constraints yourself and the compiler won't let it pass until it's satisfied. Rusts borrow checker basically creates a set of basic constraints for everything
Jupstar βœͺ 2023-05-09 09:26:02Z
Mh sounds interesting, but can't imagine
Avatar
Avatar
Ryozuki
zig has null i see
Jupstar βœͺ 2023-05-09 09:26:51Z
As data type/value directly?
09:27
I mean a rust option also has none.. just that u have to handle it xd
Avatar
null ptr i guess
Avatar
Jupstar βœͺ 2023-05-09 09:28:25Z
K
Avatar
rust doesnt have nullable types
Avatar
Avatar
Jupstar βœͺ
And are the zig compilers much less complex? Or what would u describe as better in zig than rust?
Honestly nothing much. I sort of prefer it letting you do your thing without the compiler getting in the way, but that comes at a cost of safety. There is pretty much no reason to recommend zig
Avatar
none is a enum variant
09:29
to represent a null pointer im safe u would do option<box<t>>
09:29
mobile sucks
Avatar
The extremely easy cross compiling, defer and undefined are great though
Avatar
mojo on the other hand seems interesting
09:30
its basically a mlir frontend
09:30
sad its python like
Avatar
Learn how to use low-level primitives to define your own boolean type in Mojo.
09:31
mojo allows low level ir
09:31
so u can do all u can in mlir
09:33
u can make a i17 type for example
09:33
or i256
Avatar
Also zig will probably be the last language that gives you a decent amount of footguns so it's the last chance to have fun before we are all condemned to eternal combining of safe blocks and being the compilers slave
πŸ˜ƒ 1
09:34
Every new language seems to be interested in nothing but the most extreme levels of compile time memory management
09:35
inho its good
09:35
better than gc
09:35
we just need to get more and more close to the limit before we cant prove its safe
09:35
right now its limited
Avatar
the general thing is the halting problem, unfortunately
09:36
so we'll be stuck at limited
Avatar
yeah i know
09:37
but we can be less limited
09:37
than now i think
Avatar
Worry not gc is making a comeback too. I've seen new experimental languages that use rusts idea of managing memory at compile time, but relaxes the requirements and inserts gc sweeps
Avatar
polonius ftw (edited)
Avatar
Avatar
Learath2
Also zig will probably be the last language that gives you a decent amount of footguns so it's the last chance to have fun before we are all condemned to eternal combining of safe blocks and being the compilers slave
Jupstar βœͺ 2023-05-09 09:40:19Z
Hard life. I couldn't tell which is better tho. In one u have to be more careful but might end up doing something greater. On the other u can code more "fearless" but sometimes have to choose a weirder design or more overhead. Considering that modern software is bloated af and nobody understands 99% of wtf they doing. Maybe the latter ^^
Avatar
Avatar
Jupstar βœͺ
Hard life. I couldn't tell which is better tho. In one u have to be more careful but might end up doing something greater. On the other u can code more "fearless" but sometimes have to choose a weirder design or more overhead. Considering that modern software is bloated af and nobody understands 99% of wtf they doing. Maybe the latter ^^
Latter is better for the user, former is more enjoyable for me
Avatar
Jupstar βœͺ 2023-05-09 09:41:03Z
Understandable tbh
Avatar
Idk coding in garbage collected or managed languages feel more like I'm a labourer than a coder πŸ˜„
Avatar
Jupstar βœͺ 2023-05-09 09:41:28Z
XD
Avatar
what gc'ed language do you program in?
Avatar
But I also do appreciate the much more powerful standard libraries and features offered by new languages. So a middle ground like zig is pretty attractive to me
09:42
Java and a teeny tiny bit of nim sometimes
09:43
Though I pretty much replaced nim in my workflow. I usually reach for python or rust
Avatar
@Learath2 tbh i can see the appeal of c simplicity and there was a phase where i only used c too
09:44
but rust is simply greater
Avatar
Jupstar βœͺ 2023-05-09 09:45:06Z
Who needs bash if u have rust Who needs python if u have rust
Avatar
Avatar
Learath2
Idk coding in garbage collected or managed languages feel more like I'm a labourer than a coder πŸ˜„
java
09:45
SlaveFactoryBuilder
Avatar
Avatar
Jupstar βœͺ
Who needs bash if u have rust Who needs python if u have rust
I'm getting ready to replace bash and python with perl. Just haven't had the time to learn it
Avatar
bash is a managed gc lang
Avatar
I'd rather program with punchcards than write python ngl
Avatar
Jupstar βœͺ 2023-05-09 09:47:34Z
@Ryozuki rust has great parsing speed doesn't it? I wonder if there is no way to have a rust interpreter xd Would improve dev speed a lot for some stuff where u don't modify memory
Avatar
Avatar
Learath2
I'm getting ready to replace bash and python with perl. Just haven't had the time to learn it
Jupstar βœͺ 2023-05-09 09:48:30Z
I never touched perl. Is it that good?
Avatar
Avatar
Jupstar βœͺ
Who needs bash if u have rust Who needs python if u have rust
as an API language, perhaps. I used z3 to solve a sudoku, was pretty painless in python
09:49
also, @Patiga's twmap has a python api, too (edited)
Avatar
Avatar
Jupstar βœͺ
I never touched perl. Is it that good?
It's easily better than bash because types, libraries and saner quoting. It's better than python because it's not python
Avatar
Avatar
heinrich5991
as an API language, perhaps. I used z3 to solve a sudoku, was pretty painless in python
Jupstar βœͺ 2023-05-09 09:49:34Z
Write bash to rust macro ^^
Avatar
Pythons only value to me is indeed as glue because everyone and their mothers have a python binding
Avatar
Avatar
Learath2
It's easily better than bash because types, libraries and saner quoting. It's better than python because it's not python
Jupstar βœͺ 2023-05-09 09:50:30Z
Ah. Well bash defs sucks if u do logic in it xD. I really mostly use it for simple stuff and calling programs
Avatar
Avatar
Jupstar βœͺ
Ah. Well bash defs sucks if u do logic in it xD. I really mostly use it for simple stuff and calling programs
Yeah bash is for simple sequencing of stuff for me
Avatar
make is kinda a good bash interface for commands
Avatar
ah, and what do you use for writing GUIs?
Avatar
i rarely write guis lately
09:57
but i would use egui
Avatar
Jupstar βœͺ 2023-05-09 09:58:54Z
Dioxus
Avatar
Avatar
heinrich5991
ah, and what do you use for writing GUIs?
I haven't written a gui in quite some time. No one wants gui applications and for my own use I prefer a tui or a cli
Avatar
Jupstar βœͺ 2023-05-09 09:59:11Z
Once it's finished in two million years
Avatar
If I had to write a gui application I'd probably look at qt
10:00
look at iced
Avatar
this very chat client is a UI πŸ˜‰
10:00
re no one wanting UI
Avatar
well we forced to use discord
Avatar
Or maybe gtk, though gtk applications always feel sluggish to me. Idk if it's the people that program them or gtk itself though
Avatar
to interact with normal people
10:01
i wanna a weechat that shows pfp
Avatar
Avatar
heinrich5991
re no one wanting UI
This is a glorified web browser. If those count, yeah some people still do want them
Avatar
anime pfp in cli chat kek
Avatar
Jupstar βœͺ 2023-05-09 10:01:19Z
First of all we need to remove all bloat that isn't Vulkan. So that u can embedd your gui cleanly while still having the ability to render to your instance yourself. That's already where all gui engine fail. Egui makes it easy. But egui isn't very stable. Rip I'll wait another 100 years
Avatar
egui works anywhere u give it a surface
10:01
iirc
Avatar
Jupstar βœͺ 2023-05-09 10:02:03Z
U can easily embed it yeah
10:02
But egui isn't very beautiful and immediate and still rather buggy
Avatar
ur bugged
10:03
jupstsr make a language that is focused on vulkan rendering
Avatar
I love immediate guis but retained just has much better performance characteristics, what do?
Avatar
Jupstar βœͺ 2023-05-09 10:03:20Z
If there would be a html css renderer u can easily embed that would be powerful. I don't know any. Despite that css is probs also bloated xd
Avatar
e.g the vulkan api is a builtin of the lang
Avatar
Jupstar βœͺ 2023-05-09 10:03:35Z
And no i don't mean add javascript support
10:03
That's what makes everything slow
Avatar
Avatar
Jupstar βœͺ
If there would be a html css renderer u can easily embed that would be powerful. I don't know any. Despite that css is probs also bloated xd
DOM and CSS are soooooooooooooo complicated. If I ever did something like that I'd want an extreme subset of it
Avatar
Avatar
Ryozuki
e.g the vulkan api is a builtin of the lang
Jupstar βœͺ 2023-05-09 10:03:59Z
Yep
10:04
I should, because I think I have some ideas for ur
Avatar
Some allowable selectors are insanely hard to implement in a performant way
Avatar
Jupstar βœͺ 2023-05-09 10:04:15Z
It
Avatar
it should maybe have easy interop with rust
GIGACHAD 2
10:04
so u can plug the lang for rendering
Avatar
Avatar
Learath2
DOM and CSS are soooooooooooooo complicated. If I ever did something like that I'd want an extreme subset of it
Jupstar βœͺ 2023-05-09 10:04:48Z
I dunno. But u could easily use a framework and it's ez af and looks good
10:05
But yes they can be complicated
Avatar
(notice how i didnt say c, cuz c old and bad)
10:05
justatest
Avatar
Jupstar βœͺ 2023-05-09 10:05:17Z
Didn't notice
Avatar
Avatar
Jupstar βœͺ
I dunno. But u could easily use a framework and it's ez af and looks good
Hm, the subset of html and css I'm thinking of probably wouldn't be enough to run any web framework
10:06
Those kinda need the entire spec
Avatar
Jupstar βœͺ 2023-05-09 10:06:26Z
10:06
I see c
Avatar
Avatar
Jupstar βœͺ
I see c
Ryozuki in shambles
Avatar
ChillerDragon BOT 2023-05-09 10:07:41Z
bash is awesome even for logic
10:07
also good for web dev
Avatar
Jupstar βœͺ 2023-05-09 10:07:54Z
I awaited u
Avatar
ChillerDragon BOT 2023-05-09 10:08:19Z
Bash on Balls. Contribute to jneen/balls development by creating an account on GitHub.
10:08
nice web framework written in bash
10:09
i can finish the task faster in bash than you in rust eventho my program is 200 times slower just because development and compiling is much faster
Avatar
im back
10:10
was opening my m1 mac at work
10:10
kek
Avatar
ChillerDragon BOT 2023-05-09 10:10:48Z
also bash quoting is ez
Avatar
im a filthy mac user now
Avatar
ChillerDragon BOT 2023-05-09 10:11:15Z
  • sent from my macbook pro
10:11
i hope ur m1 mac runs free linux
Avatar
❯ uname -a Darwin xxxx-MacBook-Pro.local 22.4.0 Darwin Kernel Version 22.4.0: Mon Mar 6 20:59:28 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T6000 arm64
Avatar
ChillerDragon BOT 2023-05-09 10:12:04Z
ewwwwwwwww
Avatar
Avatar
Ryozuki
was opening my m1 mac at work
Are you running linux on it?
Avatar
ChillerDragon BOT 2023-05-09 10:12:06Z
darwin
Avatar
Avatar
Learath2
Are you running linux on it?
nah
Avatar
ChillerDragon BOT 2023-05-09 10:12:15Z
cring
Avatar
You are an evil corpo now
Avatar
i do suc ha drastic change on a laptop that its company owned
10:12
xd
10:12
wont
10:12
*
Avatar
Jupstar βœͺ 2023-05-09 10:12:53Z
Borrow Mac pls. I want to find work around for VK backend
Avatar
ChillerDragon BOT 2023-05-09 10:13:03Z
ok come to munich
10:13
and pick it up
Avatar
Avatar
Jupstar βœͺ
Borrow Mac pls. I want to find work around for VK backend
ddnet is bugged on this mac
10:13
any simple minimal resize
10:13
makes it freeze
Avatar
ChillerDragon BOT 2023-05-09 10:13:26Z
which wm u use?
Avatar
default
Avatar
ChillerDragon BOT 2023-05-09 10:13:33Z
cring
Avatar
Jupstar βœͺ 2023-05-09 10:13:41Z
Chiller u also have M1?
Avatar
ChillerDragon BOT 2023-05-09 10:13:48Z
no bro i broke af
Avatar
Avatar
Ryozuki
ddnet is bugged on this mac
Jupstar βœͺ 2023-05-09 10:14:02Z
U mean Mac is bugged on our awesome ddnet
10:14
Xd
Avatar
Avatar
Ryozuki
any simple minimal resize
I think I know exactly where it freezes
Avatar
ChillerDragon BOT 2023-05-09 10:14:13Z
my mac is older than time it self
Avatar
Jupstar βœͺ 2023-05-09 10:14:18Z
I need M1 sry
Avatar
They made that stupid dispatch sync again I bet
Avatar
ChillerDragon BOT 2023-05-09 10:14:35Z
!jup go to apple store
Avatar
chillerbot BOT 2023-05-09 10:14:35Z
@Jupstar βœͺ
Avatar
ChillerDragon BOT 2023-05-09 10:14:37Z
ez
10:14
u can test on all devices
Avatar
Try the SDL version released right after they added my PR
Avatar
ChillerDragon BOT 2023-05-09 10:14:51Z
you can easily installe compilers etc in the apple store
10:14
nobody looks at you weird if u game dev in there
10:15
trust me i tried
Avatar
Jupstar βœͺ 2023-05-09 10:15:09Z
20$ for one week borrow
Avatar
ChillerDragon BOT 2023-05-09 10:15:14Z
its free
Avatar
Avatar
ChillerDragon
you can easily installe compilers etc in the apple store
Jupstar βœͺ 2023-05-09 10:15:27Z
Ah nice idea
10:15
Chiller
Avatar
ChillerDragon BOT 2023-05-09 10:15:36Z
ik
Avatar
Jupstar βœͺ 2023-05-09 10:15:39Z
If they have wifi
Avatar
ChillerDragon BOT 2023-05-09 10:15:44Z
ofc
10:15
you can do all
Avatar
Jupstar βœͺ 2023-05-09 10:15:59Z
Ez
Avatar
ChillerDragon BOT 2023-05-09 10:16:09Z
only downside is it might not be your ideal dev environment as in they usually lack chairs etc
10:16
also bringing drinks and food is weird xd
Avatar
this is the bt
Avatar
Avatar
ChillerDragon
only downside is it might not be your ideal dev environment as in they usually lack chairs etc
It's good to work while standing
Avatar
i had to pkill it
Avatar
ChillerDragon BOT 2023-05-09 10:16:50Z
ofc someone would say that
10:16
i cant stand longer than 2min or i die
10:17
i just collapse due to lack of muscles
Avatar
Avatar
Ryozuki
this is the bt
Yeah exactly where I think it is
Avatar
what sdl
10:17
==> sdl2: stable 2.26.5 (bottled), HEAD Low-level access to audio, keyboard, mouse, joystick, and graphics https://www.libsdl.org/ /opt/homebrew/Cellar/sdl2/2.26.5 (93 files, 6.4MB) * Poured from bottle using the formulae.brew.sh API on 2023-04-12 at 120252 From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/sdl2.rb
Avatar
We do swap on gfx thread, causes a sync dispatch, sync dispatch waits on the main thread, main thread waits on gfx thread, game dead
Avatar
lol that emoji
10:18
xd
Avatar
Avatar
Learath2
We do swap on gfx thread, causes a sync dispatch, sync dispatch waits on the main thread, main thread waits on gfx thread, game dead
Jupstar βœͺ 2023-05-09 10:20:05Z
Didn't we fix that especially for m1
10:20
Ah no we just wait
10:20
True
10:20
MacOS bs os no joke
Avatar
Avatar
Jupstar βœͺ
Didn't we fix that especially for m1
SDL fixed it, so we removed our fix. But I bet they unfixed it because they just have to keep messing with it without telling anyone
Avatar
Avatar
Learath2
SDL fixed it, so we removed our fix. But I bet they unfixed it because they just have to keep messing with it without telling anyone
Jupstar βœͺ 2023-05-09 10:21:02Z
True xdd
Avatar
@Ryozuki can you try SDL_HINT_MAC_OPENGL_SYNC_DISPATCH=1?
Avatar
how to set env in lldb
Avatar
Jupstar βœͺ 2023-05-09 10:21:50Z
Use Zink for opengl to Vulkan to metal over molten vk
10:22
env SDL_HINT_MAC_OPENGL_SYNC_DISPATCH=1
Avatar
Avatar
Ryozuki
how to set env in lldb
Don't remember
10:22
Oh that's easy enough
10:23
10:23
the thing im doing is setting the default windowed borderless to fullscreen
Avatar
Jupstar βœͺ 2023-05-09 10:23:34Z
Install moltenvk and use Vulkan
Avatar
it freezes there
Avatar
Oh wait they changed the name of the env too
10:23
May allah give me strength, just stop changing stuff...
Avatar
Jupstar βœͺ 2023-05-09 10:24:09Z
@Learath2 u sure it even does anything at all
Avatar
It's SDL_MAC_OPENGL_ASYNC_DISPATCH=1
Avatar
Jupstar βœͺ 2023-05-09 10:24:23Z
M1 has no native ogl driver
10:24
It's wrapped to metal
Avatar
Avatar
Jupstar βœͺ
M1 has no native ogl driver
It's sdl causing the deadlock directly, this never makes it into the ogl driver even in old intel macs
Avatar
Jupstar βœͺ 2023-05-09 10:25:15Z
Mh ok
10:25
it works
10:25
life savour
10:25
saviour
10:26
SDL_MAC_OPENGL_ASYNC_DISPATCH=1 fixes it
Avatar
Yeah idk why they want to do a sync dispatch there so much
Avatar
now i can develop ddnet at work too
Avatar
Jupstar βœͺ 2023-05-09 10:27:12Z
It's especially weird BCS i though MacOS give a shit about backward compability and simply drops whatever software relied on the sync dispatch
Avatar
Avatar
Learath2
Yeah idk why they want to do a sync dispatch there so much
can u add it to the readme
10:27
will be def useful
10:27
ill add it to wiki
Avatar
no, should be fixed on our side
10:27
not tell users to fix something on their side
Avatar
can this be fixed tho
Avatar
it's a computer
Avatar
isnt it a sdl issue
Avatar
it can do stuff for you
Avatar
i mean on our side
Avatar
we could set the env variable
10:28
e.g.
Avatar
Mh can we even control the env of sdl unless launched by a specific way?
Avatar
its weird no one complained yet
10:28
am i the only m1 user here
Avatar
deen also is
Avatar
ChillerDragon BOT 2023-05-09 10:29:01Z
but deen doesnt launch ddnet :D
Avatar
We could monkeypatch SDL, I actually made a prototype of that when I was about to go insane trying to debug that issue
Avatar
@Learath2 setenv is the name of the function
Avatar
ah yeah sdl has a function for hints
Avatar
Avatar
heinrich5991
ah, and what do you use for writing GUIs?
if the ui should only sort of wrap one kind of task, similar to a cli, you could try out https://github.com/MichalGniadek/klask
Avatar
Avatar
heinrich5991
@Learath2 setenv is the name of the function
But doesn't happen before dylib load and sdl decides how to dispatch at init iirc
Avatar
at SDL_init?
10:29
we can set it before that
Avatar
it wraps clap 3.x to create a simple ui, apparently with file pickers
Avatar
u can apply hints before init
Avatar
Oh wait, they do react dynamically to it somehow
10:30
So yeah we can hint before we init
10:30
It's not only M1 btw, so we should set that for all macs
Avatar
  • \brief A variable controlling whether dispatching OpenGL context updates should block the dispatching thread until the main thread finishes processing
      • This variable can be set to the following values:
    • "0" - Dispatching OpenGL context updates will block the dispatching thread until the main thread finishes processing (default).
    • "1" - Dispatching OpenGL context updates will allow the dispatching thread to continue execution.
      • Generally you want the default, but if you have OpenGL code in a background thread on a Mac, and the main thread
    • hangs because it's waiting for that background thread, but that background thread is also hanging because it's
    • waiting for the main thread to do an update, this might fix your issue.
      • This hint only applies to macOS.
      • This hint is available since SDL 2.24.0.
Avatar
maybe only set it if the env var isn't set already
Avatar
Avatar
Ryozuki
its weird no one complained yet
Jupstar βœͺ 2023-05-09 10:31:04Z
Does it even affect our shipped sdl
Avatar
Avatar
Jupstar βœͺ
Does it even affect our shipped sdl
There is a possibility that we ship an sdl right after my patch before people started to mess around with it
Avatar
Jupstar βœͺ 2023-05-09 10:31:57Z
I see
10:32
Else set the env before calling SDL init viseo
10:32
Video
Avatar
let me make the pr
10:35
been ages xd
Avatar
Jupstar βœͺ 2023-05-09 10:35:23Z
Next step install moltenvk and use VK backend
Avatar
Idk how best to do it. Do we check for the sdl version?
Avatar
i installed molten vk
10:35
but vulkan doesnt appear
Avatar
Avatar
Ryozuki
i installed molten vk
Jupstar βœͺ 2023-05-09 10:35:49Z
Try and see why moltenvk caps fps so weirdly
10:35
At least for deen it does
Avatar
There was a version inbetween where the hint was briefly called the first thing I sent, tho idk if that was released at all
Avatar
Avatar
Ryozuki
but vulkan doesnt appear
Jupstar βœͺ 2023-05-09 10:36:16Z
-DVulkan=ON
10:36
In cmake
Avatar
And then there are versions that dont need a hint at all but do async dispatch
Avatar
Avatar
Jupstar βœͺ
-DVulkan=ON
Jupstar βœͺ 2023-05-09 10:36:50Z
In caps all
Avatar
Then there is a minimum version below which maybe we should just disable resizing
Avatar
Jupstar βœͺ 2023-05-09 10:37:32Z
Maybe we should simply do everything single threaded on MacOS xD
10:37
All problems solved
Avatar
[cmake] -- Checking for module 'vulkan' [cmake] -- No package 'vulkan' found
10:38
[cmake] -- Building vulkan shaders [cmake] /Users/edgar/Documents/misc/ddnet/data/shader/vulkan/quad.vert [cmake] -- Finished building vulkan shaders
10:38
xd
10:38
[cmake] -- * Zlib found [cmake] -- * Vulkan found
Avatar
Jupstar βœͺ 2023-05-09 10:38:14Z
Then moltenvk not found xd
Avatar
Jupstar βœͺ 2023-05-09 10:38:22Z
Lol
10:38
I said nothing
Avatar
freeze
10:39
with SDL_MAC_OPENGL_ASYNC_DISPATCH=0
10:39
oh wait
10:39
i didnt change to vulkan
10:39
xd
10:40
@Jupstar βœͺ it works!
Celebrate 1
10:40
with vulkan
10:40
no freeze
Avatar
Jupstar βœͺ 2023-05-09 10:40:38Z
Yeah
Avatar
[mvk-info] Created 3 swapchain images with initial size (3024, 1890) and contents scale 2.0 for screen Built-in Retina Display. [mvk-info] Created 3 swapchain images with initial size (3024, 1890) and contents scale 2.0 for screen Built-in Retina Display.
Avatar
Jupstar βœͺ 2023-05-09 10:40:46Z
But deen has limited fps
Avatar
How limited? Directly to refresh rate?
Avatar
Jupstar βœͺ 2023-05-09 10:41:02Z
Go server and check fps xd
Avatar
Jupstar βœͺ 2023-05-09 10:41:07Z
No
Avatar
Avatar
Learath2
How limited? Directly to refresh rate?
Jupstar βœͺ 2023-05-09 10:41:14Z
Weirdly limited
10:41
As if it tries to save energy
10:41
1400 fps or smth
Avatar
Mh, always with the bizarre bugs on macOS
Avatar
Jupstar βœͺ 2023-05-09 10:41:40Z
But it peaks to 6k xd
Avatar
1400 is atleast good enough if it's stable, if not stable ew
Avatar
Jupstar βœͺ 2023-05-09 10:42:26Z
Yeah but with ogl he gets like 3k
10:42
That hurts my feelings
Avatar
Avatar
Jupstar βœͺ
But it peaks to 6k xd
Could it be an issue with how we calculate it?
Avatar
Jupstar βœͺ 2023-05-09 10:42:56Z
I doubt
10:44
https://github.com/KhronosGroup/MoltenVK/issues/1407 This issue discussion mentioned similar bug we had
I completed both tutorials for https://vulkan-tutorial.com/ and https://vkguide.dev/ and their code makes my render loop twice as fast as the monitor refresh rate. If I'm at 60hz I get 120fps, ...
10:44
But it's closed now
Avatar
its fluid af
10:44
1500 fps i think
Avatar
Avatar
Ryozuki
its fluid af
Jupstar βœͺ 2023-05-09 10:44:26Z
Fps
10:44
That's no fluid
10:44
On m1
Avatar
it looks smooth to me
Avatar
Jupstar βœͺ 2023-05-09 10:44:56Z
Yes but that processor should be on desktop PC perf
Avatar
hidpi is rly nice
Avatar
Jupstar βœͺ 2023-05-09 10:45:06Z
Anything below 4k fps is a bug xd
Avatar
oh wait
10:45
didnt build on release with vulkan
10:45
built without it xd
Avatar
Jupstar βœͺ 2023-05-09 10:45:51Z
@Ryozuki is there smth like energy saving options? XD
10:46
Make everything max perf xD
Avatar
ChillerDragon BOT 2023-05-09 10:46:14Z
bbbbut the environment!
Avatar
Jupstar βœͺ 2023-05-09 10:46:14Z
And don't use battery
Avatar
i have low poer mode off
10:48
vulkan fullscreen is 500
10:48
and feels slow
Avatar
Jupstar βœͺ 2023-05-09 10:50:10Z
Hurts to hear
Avatar
holy shit
11:34
github sucks so much
11:34
it simply doesnt work
Avatar
Jupstar βœͺ 2023-05-09 11:35:17Z
Rip
Avatar
Avatar
Ryozuki
it simply doesnt work
wdym?
Avatar
doesnt load
11:36
Welcome to GitHub's home for real-time and historical data on system performance.
Avatar
Idk why python is such a bad oop language
11:42
Why tf can u rename attributes, delete etc..
Avatar
github fixing issues is going surprisingly quick
Avatar
Avatar
ReiTW
Idk why python is such a bad oop language
oop
giga_chad 1
Avatar
did the servers get updated recently ?
11:47
ahh i see there is already my old crash topic back again in #bugs =P
Avatar
The biggest issue I have with github is their "smart" code search that misses stuff
11:54
Fwiw I hate all the new search algorithms that try to be smart. Google was better a decade ago
11:54
ElasticSearch is a curse
Avatar
Jupstar βœͺ 2023-05-09 11:56:27Z
For code search i simply want a search like vs code uses
12:07
guess i wont do much work for now
12:07
thats what u get for depending on github
12:07
12:08
12:11
well my repos are here too https://git.edgarluque.com/
Avatar
Hope they do an incident report blog thing so we can learn what happened
Avatar
Jupstar βœͺ 2023-05-09 12:25:44Z
I bet some worker accidentally deleted the whole database
12:26
Maybe the same as on gitlab
Avatar
did that happen on gitlab?
Avatar
ChillerDragon BOT 2023-05-09 12:28:34Z
does that mean stuff like homebrew is down too? xd
12:28
ryo do brew update
Avatar
well github works 50% of the time
12:29
seems better now
Avatar
Avatar
Ryozuki
did that happen on gitlab?
Jupstar βœͺ 2023-05-09 12:30:37Z
Well was a while ago I think
12:30
They just 6h of data
Avatar
https://www.githubstatus.com/history lists 72 incidents since January
GitHub's Incident and Scheduled Maintenance History
Avatar
Avatar
Ryozuki
https://www.githubstatus.com/history lists 72 incidents since January
Jupstar βœͺ 2023-05-09 12:34:16Z
Every second day xd
Avatar
#if defined(CONF_PLATFORM_MACOS) && defined(SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH) // Hints will not be set if there is an existing override hint or environment variable that takes precedence. // So this respects cli environment overrides. SDL_SetHint(SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH, "1"); #endif
12:43
@heinrich5991 will this do?
12:43
sethint uses normal priority unlike sethintwithpriority
12:43
so the env rules
12:43
checking that SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH is a nice hack to check we are on a modern version i think xd
Avatar
sounds good
12:44
is SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH a preprocessor constant?
12:44
  • This hint is available since SDL 2.24.0.
    • */
#define SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH "SDL_MAC_OPENGL_ASYNC_DISPATCH"
Avatar
ah
12:44
why not do the string instead then?
12:44
can be without #ifdefs, probably
Avatar
but the hint may not exist in sdl older
12:45
the preprocesor is nice here, it allows me to set the hint only in sdl versions that matter right?
Avatar
that's probably just ignored
Avatar
hmm ok
Avatar
Fixes a issue where ddnet freezes on resize on macos

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 me...
Avatar
the macos ifdef is superfluous as well, I guess, but it doesn't matter
Avatar
this is a lot better than telling users on a random web page that they need to fix their environment πŸ™‚
Avatar
3104e66 set SDL_MAC_OPENGL_ASYNC_DISPATCH sdl hint to fix macos resizing - edg-l e95fb14 Merge #6573 - bors[bot]
Avatar
"i am a beacon of knowledge blazing out across a black sea of ignorance"
  • invoker, karl, dota 2
(edited)
14:55
is invoker a rust dev?
14:55
gigachad justatest
Avatar
4632 updoots
Avatar
Avatar
gerdoe
4632 updoots
idk but the reddit joke is not funny
15:17
atleast to me xd
15:17
like its pretty cringe
Avatar
its literally irony xd
Avatar
the expression of one's meaning by using language that normally signifies the opposite, typically for humorous or emphatic effect.
15:17
no it isnt
Avatar
i mean you behave like you are typical redditor and rust dev at the same time
Avatar
how so? explain
15:19
what is a typical redditor
Avatar
you are xd
Avatar
explain further please
15:19
ur literally only copying voxel cringe joke
15:20
i dont even post on reddit, btw
15:20
which makes this even more hilarious
Avatar
i call you a redditor because you unironically post shit like this
Avatar
ctrl+f from: Ryozuki#2188 rust
Avatar
talking about rust and making fun of it is being a redditor (??)
15:21
im rly out of the zoomer landscape
Avatar
no i mean you behave like rust pope or somewhat
15:21
unironically
Avatar
i do it ironically actually
Avatar
Jupstar βœͺ 2023-05-09 15:21:59Z
ryozuki is the prophet, its his destiny and some day when he dies, he silently says "i wish i learned c"
Avatar
Avatar
Ryozuki
i do it ironically actually
the point of no return xd
Avatar
i embraced the rust persona on this discord
15:22
but this has nothing to do with reddit
15:22
and saying updoot or stuff is pretty cringe
Avatar
Avatar
Ryozuki
i do it ironically actually
oh
15:22
¯\_(ツ)_/¯
Avatar
@Voxel yeah, sometimes i think i need to make it clear for you, i couldnt care less what lang u program in, if u want to use js you go and have fun
Avatar
still, linux/rust memes in general give off such a vibe
Avatar
i think its only u who get them as that
Avatar
Avatar
Ryozuki
and saying updoot or stuff is pretty cringe
i don't make fun of you btw but your representation as rust pope
Avatar
i am this discord rust pope indeed, but its as a joke
Avatar
yeah idk where gerdoe is coming from
Avatar
okey seems i need to sleep a bit more than 1 hour a day xd
Avatar
Avatar
Jupstar βœͺ
ryozuki is the prophet, its his destiny and some day when he dies, he silently says "i wish i learned c"
i wont say that, cuz i know c already
kek 1
Avatar
i slept for 3 last night
Avatar
Avatar
gerdoe
okey seems i need to sleep a bit more than 1 hour a day xd
i recommend going to sleep at 23
15:25
i go at 23 and wake at 7:40
15:25
and im perfectly awake
Avatar
my organism wants to sleep around 10 hours
15:25
everyday
Avatar
Avatar
Ryozuki
@Voxel yeah, sometimes i think i need to make it clear for you, i couldnt care less what lang u program in, if u want to use js you go and have fun
i struggle with interpreting text πŸ”₯
Avatar
Avatar
Ryozuki
i wont say that, cuz i know c already
Jupstar βœͺ 2023-05-09 15:26:10Z
you want to tell me c is an easy to learn language? Thought it's impossible bcs of UB ^^
☝️ 1
Avatar
but going to sleep at 21 didn't help either
Avatar
on the other hand tone indicators are mehhhhbbbb
Avatar
Avatar
Jupstar βœͺ
you want to tell me c is an easy to learn language? Thought it's impossible bcs of UB ^^
ok yeah, i know C to a point, i dont know its intrincascies regarding ub, and tbh i dont wanna learn them unless i rly need to someday
Avatar
Jupstar βœͺ 2023-05-09 15:26:57Z
πŸ˜„
Avatar
This message is a test!
justatest 1
Avatar
This message is a justatest !
Avatar
Jupstar βœͺ 2023-05-09 15:27:47Z
some times i wish there would be 100000 learaths and 100000 ryozukis and both can code whole day and then see what happens after 20 years
Avatar
Yeah reactions don't transfer through matrix and discord
Avatar
Avatar
Jupstar βœͺ
some times i wish there would be 100000 learaths and 100000 ryozukis and both can code whole day and then see what happens after 20 years
ddnet that runs rly fucking fast or rly fucking slow
Avatar
Avatar
Jupstar βœͺ
some times i wish there would be 100000 learaths and 100000 ryozukis and both can code whole day and then see what happens after 20 years
Depends if they start compiling or not
Avatar
Avatar
Voxel
ddnet that runs rly fucking fast or rly fucking slow
ddnet with quake alike qvm in rust
15:29
so every mod will be able to work xd
Avatar
@Jupstar βœͺ the future is like this:
  • chairn designs a specificaly designed cpu optimized for vulkan rendering and ddnet code
  • we design a language fit for that cpu and ddnet code
  • we implement ddnet in that
  • the quantum physics break
f3 2
Avatar
we sell the ddnet pc for 1k€
Avatar
Jupstar βœͺ 2023-05-09 15:30:08Z
sounds like a plan
Avatar
we also implement a tcp/ip alt
15:30
cuz thats bloat
15:30
and rework the internet
15:30
where ddos isnt a problem
Avatar
Avatar
Ryozuki
we sell the ddnet pc for 1k€
blockchain based ddnet3
15:31
ddcoins xd
Avatar
@Jupstar βœͺ what will we do when sdl3
15:31
we need to be the first to switch
15:31
cuz we are modern
Avatar
Jupstar βœͺ 2023-05-09 15:31:18Z
ikr
Avatar
Avatar
Voxel
ddnetOS
ddnetOS ddnOS ddOs justatest
Avatar
i remember when we went from sdl1 to sdl2
15:31
konsti complained that sdl2 was badxd
Avatar
Jupstar βœͺ 2023-05-09 15:31:35Z
oh no
15:31
xd
15:31
i guess we wait around 6 months
15:31
and then switch or smth
Avatar
we could ditch sdl
15:32
and use rust based crates
15:32
winit
Avatar
Jupstar βœͺ 2023-05-09 15:32:22Z
mhh if it has all features
Avatar
Window handling library in pure Rust. Contribute to rust-windowing/winit development by creating an account on GitHub.
Avatar
Jupstar βœͺ 2023-05-09 15:32:26Z
they always far behind
Avatar
winit is only windowed
15:32
rust ecosystem decided to go unix way
15:32
split focus
15:32
winit only windowing
Avatar
Jupstar βœͺ 2023-05-09 15:32:51Z
yeah
15:33
e.g. does winit support window notify
15:33
the blinking
Avatar
Window handling library in pure Rust. Contribute to rust-windowing/winit development by creating an account on GitHub.
15:33
this is the supported things
Avatar
patiga's wgpu renderer + libtw = ddnet client in rust libtw + some polish = ddnet server in rust
Avatar
Avatar
gerdoe
patiga's wgpu renderer + libtw = ddnet client in rust libtw + some polish = ddnet server in rust
Jupstar βœͺ 2023-05-09 15:34:28Z
i have a vk backend in rust
Avatar
Avatar
Jupstar βœͺ
e.g. does winit support window notify
notify would be a separate crate i think
Avatar
Jupstar βœͺ 2023-05-09 15:35:02Z
i dont mean notifications
15:35
the blinking
Avatar
☝️send desktop notifications from your Rust app. Contribute to hoodie/notify-rust development by creating an account on GitHub.
Avatar
Jupstar βœͺ 2023-05-09 15:35:11Z
u dont even know it, bcs u on i3
Avatar
Avatar
Jupstar βœͺ
i have a vk backend in rust
doesn't wgpu support different backends
Avatar
yes wgpu supports all
15:36
but a specific vulkan backend is probs more perf
Avatar
Avatar
gerdoe
doesn't wgpu support different backends
Jupstar βœͺ 2023-05-09 15:36:35Z
wgpu is build to also work on opengl sadly
15:36
so the benefits as ryo said arent there
15:36
or only partially
Avatar
i think they provide some platform/backend specific things in api
Avatar
u still have wgpu overhead
15:37
u cant beat raw api bindings
15:38
which probs wouldnt matter much tho
Avatar
Jupstar βœͺ 2023-05-09 15:38:41Z
i'd be glad if we'd have wgpu backend
15:38
its gles3 compatible and also has dx backends
Avatar
android
Avatar
opengl is not a primary backend of wgpu
15:47
for android vulkan should be enough, no?
Avatar
Avatar
Patiga
for android vulkan should be enough, no?
Jupstar βœͺ 2023-05-09 15:51:30Z
generally yes, but vulkan should be enough anywhere ^^
Avatar
yes, except for the web if I understand correctly
Avatar
Jupstar βœͺ 2023-05-09 15:52:25Z
i guess just a matter of time?
15:52
gles3 to webgl2 works too πŸ˜„
Avatar
my understanding is that webgpu was invented because the low level access of vulkan wasn't feasible / okay for browsers to support
Avatar
Jupstar βœͺ 2023-05-09 15:53:43Z
but they can probably emulate it, at least to a certain extend
Avatar
Avatar
Patiga
my understanding is that webgpu was invented because the low level access of vulkan wasn't feasible / okay for browsers to support
Jupstar βœͺ 2023-05-09 15:54:31Z
do you happen to know the webgpu limitations/differences?
Avatar
webgpu has compute shaders iirc
βœ… 1
15:55
i seen LLM run on browsers or smth
15:55
aka u can run the image ais too
Avatar
Avatar
Jupstar βœͺ
do you happen to know the webgpu limitations/differences?
hm not sure what you mean with differences. its limitations are defined by its standard https://www.w3.org/TR/webgpu/#intro
Avatar
Jupstar βœͺ 2023-05-09 15:57:38Z
if u have compute shaders, u have everything u need
15:57
😬
Avatar
for example you only have the vertex and fragment shader, you have compute shaders
Avatar
Jupstar βœͺ 2023-05-09 15:58:12Z
see compute shaders
15:58
they the raw power of GPUs
Avatar
its design is explicitly not like opengl but instead more like vulkan and such
Avatar
Jupstar βœͺ 2023-05-09 15:59:23Z
yeah
Avatar
#6551 provides a workaround to correctly center text vertically if the text is only a single line. Vertical alignment of multi-line text should also be implemented correctly. For example: !screenshot
Avatar
Avatar
Ryozuki
-march= is an ISA selection option; it tells the compiler that it may use the instructions from the ISA. On an Intel/AMD64 platform with -march=native -O2 or lower optimization level, the code will likely end up with AVX instructions used but using shorter SSE XMM registers. To take full advantage of AVX YMM registers, the -ftree-vectorize, -O3 or -Ofast options should be used as well[1].
>
-ftree-vectorize is an optimization option (default at -O3 and -Ofast), which attempts to vectorize loops using the selected ISA if possible. The reason it previously wasn't enabled at -O2 is that it doesn't always improve code, it can make code slower as well, and usually makes the code larger; it really depends on the loop etc. As of GCC 12, it is enabled by default with a low cost model (-fvect-cost-model=very-cheap) to strike a balance between code size and speed benefits. The cost model can be specified with -fvect-cost-model.
i think you also need -mavx for AVX extension and -mavx2 for avx2, and -mavx512 for AVX512
Avatar
Avatar
Ryozuki
@Jupstar βœͺ the future is like this:
  • chairn designs a specificaly designed cpu optimized for vulkan rendering and ddnet code
  • we design a language fit for that cpu and ddnet code
  • we implement ddnet in that
  • the quantum physics break
im in !!
Avatar
https://github.com/ddnet/ddnet/issues/6417 hey, i've opened this issue some time ago, could anyone maybe take a look at it? it'd be important for me
So there's this weird thing where when you watch a demo, (in my case) the angle display always shows me the angle for the next frame instead of the same frame. Let me know if you need screensho...
Avatar
ChillerDragon BOT 2023-05-09 19:35:35Z
bash oneliner to connect to the fullest Multeasymap server xd
19:35
DDNet "connect $(mapname=Multeasymap;curl https://master1.ddnet.org/ddnet/15/servers.json | jq -r "[.servers[] | select(.info.map.name == \"$mapname\")] | sort_by(.info.clients | length) | .[-1].addresses[0]" | cut -d'/' -f3)"
19:36
thanks for the ddnet master its making stuff like that so easy @heinrich5991
19:36
the http and json thingies i mean
Avatar
Another leftover from #6372.

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.c...
Avatar
58184c2 Replace usages of atan2f and atan2 with std::atan2 - Robyt3 7fff049 Merge #6575 - bors[bot]
Avatar
/lock toggles but /unlock always sets it to unlock. can we get a /forcelock or something to always lock the team
Exported 602 message(s)