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 2022-12-16 00:00:00Z and 2022-12-17 00:00:00Z
Avatar
github codespaces aren't half bad when you need to edit quickly on a computer you don't usually code on
Avatar
deleting a branch doesn't require a force push
Avatar
29a0d97 A 2 Days in the back - ddnet-maps
Avatar
Avatar
Voxel
so i read both this and got the plugin, but when i build my client and try to test my changes in a map the protocol isnt detected as TW (edited)
i got this fixed, but now i dont think my packet is sending
05:52
i'm trying to send 1 sv_kill_msg_teams in here, but its not going through
05:52
i'm in a public server because LANs are not detected
Avatar
Avatar
Jupstar ✪
If you struggle with something specific just name it
nevermind i finally got it working... somewhat
Avatar
ryozoozki
Avatar
headbot
Avatar
Continuing the tradition of a year-end progress report from last year, we are excited to report that this year has also been quite a productive one for the Cranelift project! Cranelift is our optimizing compiler backend that provides the...
Avatar
@heinrich5991 how does fix_style.py only check style of changes? It doesn’t even seem to check git
Avatar
Avatar
Headshot
nevermind i finally got it working... somewhat
nice _D
Avatar
Ah, it seems we removed that. @deen why did we stop running clang_format on just diffs?
Avatar
@deen for the playground, can we start just creating a new repo and give me full access to it? we obv don't need to make it open for everyone yet however, i think it would be cool to have:
  • nightly builds, that i can share with friends, with whom i will probably also design away some annoying limits of vanilla we always disliked. would also be cool if i can trigger the builds somehow, or simply copy them from some github CI ^^
  • maybe a dns alias to my VPS so i can host some servers my own, or some vps i can connect to
Avatar
@murpi Could you please send me the GitHub link for the file which contains the code for the new #reports discord bot replies?
Avatar
Avatar
Headshot
nevermind i finally got it working... somewhat
wadafuuuuk💀 💀 💀
Avatar
Avatar
Learath2
Ah, it seems we removed that. @deen why did we stop running clang_format on just diffs?
did we ever do that? I don't think so
Avatar
Avatar
Jupstar ✪
@deen for the playground, can we start just creating a new repo and give me full access to it? we obv don't need to make it open for everyone yet however, i think it would be cool to have:
  • nightly builds, that i can share with friends, with whom i will probably also design away some annoying limits of vanilla we always disliked. would also be cool if i can trigger the builds somehow, or simply copy them from some github CI ^^
  • maybe a dns alias to my VPS so i can host some servers my own, or some vps i can connect to
Why new repo? You want to start from scratch? You can have a branch/fork instead
09:15
Rest sounds fine
Avatar
Avatar
deen
Why new repo? You want to start from scratch? You can have a branch/fork instead
no but i guess its easier to manage(e.g. if i make prs to "myself") and silence the bot?
Avatar
Just make a branch on your own ddnet fork, I can build nightlies from that
09:19
as long as you are the only one working on it
Avatar
ok, i can also simply use my master branch, and can make prs to that 😄
Avatar
You can make PRs to any branch btw
Avatar
yeah i just want to make sure its automatically selected
09:21
since im not reviewing my prs, just so i have overview 😄
09:21
but can probs change default branch
Avatar
For the server, should I rent you a https://www.hetzner.com/cloud CPX11? Probably cleaner to have experiments on a separate VPS. Not connected to official ranks for now or should already be connected? (Then I'd have to add the flag to tell the ranks apart)
Avatar
DDraceNetwork, a mod of Teeworlds. Contribute to Jupeyy/ddnet development by creating an account on GitHub.
Avatar
Avatar
deen
For the server, should I rent you a https://www.hetzner.com/cloud CPX11? Probably cleaner to have experiments on a separate VPS. Not connected to official ranks for now or should already be connected? (Then I'd have to add the flag to tell the ranks apart)
doesnt need to be connected yet. i can also pay it, doesnt need to be run by ddnet's costs
Avatar
If you want cheaper, OVH has for 2 € / month
Avatar
i just want a ddnet subdomain, bcs i am also playing to try some new stuff out 😄
09:23
planing
Avatar
Avatar
deen
If you want cheaper, OVH has for 2 € / month
yeah should be fine for my needs
Avatar
Actually 1 € / month for a year now for new customers: https://www.ovhcloud.com/de/vps/
Avatar
do you want to buy it for me? should i send u money or simply donate to ddnet?
Avatar
I can't get the new customer thing though
09:28
and I prefer hetzner 😄
09:28
so if you want to get the cheap one, you have to do it yourself
Avatar
i am also ok with paying more
Avatar
Avatar
deen
If you want cheaper, OVH has for 2 € / month
or he can run instances using free credits at gcp, aws or any other
Avatar
Avatar
deen
did we ever do that? I don't think so
Apparently we ran on entire files, but only changed ones in the past
Avatar
Oracle Cloud gives you a free 4 core 24 GB ARM VPS permanently 😄
Avatar
Avatar
ReiTW
or he can run instances using free credits at gcp, aws or any other
I would not recommend those, super easy to get an attack which causes outgoing traffic, and then after 1 night with 10 Gbit/s outgoing you are charged thousands of dollars
Avatar
tbh idc i just want a starting point 😄
09:55
if i can get a subdomain and the nightly builds i can also do all stuff my own
Avatar
Avatar
deen
I would not recommend those, super easy to get an attack which causes outgoing traffic, and then after 1 night with 10 Gbit/s outgoing you are charged thousands of dollars
well if I understood well isn't it for testing purpose?
09:55
if yes why not just register 0
Avatar
you can also do a AA record to my domain name, then i can change servers as i want 😄
Avatar
also free credits doesn't charge you, on gcp you use your free creds then when you run out of those they just ask you to switch to a normal acc, so they won't charge you for that
Avatar
or ANAME
09:57
CNAME
09:57
was it
09:57
right 😄
Avatar
So on the server you want the official maps etc?
09:59
Then I'll set up a small Hetzner server for you now as pg.ddnet.org
Avatar
Avatar
deen
So on the server you want the official maps etc?
I am also planning with other mods in mind So would generally be easier if I've access to it
Avatar
why don't you set up the server yourself?
10:06
saves deen some work
Avatar
I can
Avatar
f18f7a9 Add playground build support - def-
Avatar
I just want nightly build and sub domain.^^
10:07
So it's kinda official
Avatar
nightly build is up, subdomain I can only set when you have an IP
Avatar
So no cname?
Avatar
Why do you want a cname?
Avatar
Else i buy vps later . When at home 2-3h
Avatar
Avatar
deen
Why do you want a cname?
Easier to change vps later
10:08
But idc
Avatar
What should I point it to?
Avatar
pg.aliveclan.de
10:09
I'll set the server up to there then
Avatar
Thanks
Avatar
Playground is also a release channel in steam, I used a PW just to make sure people don't select it accidentally, password is Playground23 (edited)
Avatar
Oh great
Avatar
If you want official server setup/database access etc then I should set up the server. If not, then you can go ahead
Avatar
Yeah for now sounds better to not connect to official db
10:15
Maybe in few months
Avatar
Alright, easier from my side then
10:36
10:36
based linux distros got ddnet updated
10:36
BASED
10:36
well liguros uses gentoo guru which its the one i update
Avatar
Now get it into Arch and Gentoo official packages, then it takes a bit longer
Avatar
@Jupstar ✪ first playground build is live. Links at the bottom of https://ddnet.org/news/nightly-build-revived/
Avatar
whats the playground about?
Avatar
it's a place where kids play 🙂
Avatar
Avatar
Ryozuki
whats the playground about?
breaking compability
Avatar
Avatar
deen
@Jupstar ✪ first playground build is live. Links at the bottom of https://ddnet.org/news/nightly-build-revived/
thanks a lot^^
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
Avatar
Jupstar ✪
breaking compability
Make sure to break it a lot
Avatar
Avatar
Ryozuki
Make sure to break it a lot
yes i am trying to create a complete new structure ^^
13:47
just physics stay the same xdd
Avatar
@Jupstar ✪ changing the protocol?
13:55
a good thing would be to merge ex messages or smth
13:56
and make them extendable without hacks
Avatar
yeah
Avatar
I might not have much time to help, but if you need any further infrastructure etc for these experiments, just ping me. I'm glad to provide this kind of playground to get ddnet to next level.
13:58
@Jupstar ✪ anything in Rust? 😄
Avatar
Avatar
deen
@Jupstar ✪ anything in Rust? 😄
i'd like to play around with that too yeah, maybe for modules u can cleanly split from game logic but no guarantes yet 😄
Avatar
Just rewrite ddnet in rust, go
Avatar
go for it
14:04
honestly the interop is a bit meh cuz u cant harness the power of rust on the c++ side
14:04
so it should all be rust
Avatar
even if i would i still use the c++ vk backend
14:04
bcs rewriting that is lot of work
Avatar
work is
14:04
but maybe u can make it more "correct"
Avatar
You know what? The gfx backend would actually be a good candidate for a rust rewrite
Avatar
since concurrency is easier in rust
Avatar
Avatar
Ryozuki
but maybe u can make it more "correct"
there are no "real" vk bindings for rust
14:05
only abstractions
Avatar
It's a relatively well split portion of the code
Avatar
Avatar
Jupstar ✪
there are no "real" vk bindings for rust
wdym
Avatar
Another good candidate is the small auth_manager. I actually want to do that sometime so we can have a rust module in the code see how well our integration went
Avatar
Avatar
Ryozuki
wdym
well its not vulkan what u sent there
Avatar
check this
Avatar
its a higher level abstraction
14:06
designed for rust
14:06
i dont think u can have vulkan in rust as is
14:06
u mean t he sdk?
Avatar
"Provides a low-levelish API around Vulkan."
Avatar
vulkano is low level
14:06
it just designed to not allow u to do unsafe stuff
14:07
iirc
Avatar
lets say it like this if that lib would tell me "yo bro, here i have to insert a memory barrier, except you change this and that code" i'd say gg epic lib
Avatar
Can you even have direct vulkan bindings for rust? It'd all have to be wrapped in unsafe 😄
Avatar
but what probably happens is, that it does this implicitly
Avatar
let vertex_buffer = CpuAccessibleBuffer::from_iter( device.clone(), BufferUsage { vertex_buffer: true, ..Default::default() }, false, vec![vertex1, vertex2, vertex3].into_iter(), ) .unwrap();
14:08
xd
14:08
14:08
this is low level
Avatar
Avatar
Learath2
Can you even have direct vulkan bindings for rust? It'd all have to be wrapped in unsafe 😄
the way it is is, you make a -sys crate, usually autogenerated with a tool looking at C headers
14:09
and then u build a safe abstraction on it
14:09
thats what https://gtk-rs.org/ does
Rust bindings for GTK and GLib-based libraries
14:09
well all
14:09
xd
Avatar
Avatar
Ryozuki
the way it is is, you make a -sys crate, usually autogenerated with a tool looking at C headers
I guess this would actually be about what @Jupstar ✪ would want. Completely unsafe though, so the gfx backend would all be unsafe code, unless he builds some safe abstractions of his own to build the backend on
Avatar
but its stupid
14:10
the safe wrapper just disallows things u would be wrong doing
14:10
it doesnt add a higher abstraction
14:10
that hides stuff
Avatar
Avatar
Ryozuki
the safe wrapper just disallows things u would be wrong doing
idk what exactly it wraps, but I can see it having different opinions on concurrency safety
Avatar
in the vulkano case tho i think they try to also be correct and not allow doing stuff which the vulkan api says u woudl be doing wrong
Avatar
A higher level abstraction can't know that it might not be worth dropping a lock because you are about to re-use it
Avatar
Avatar
Learath2
idk what exactly it wraps, but I can see it having different opinions on concurrency safety
a -sys crate is like a library full of extern functions
Avatar
Anyway, idk. I'm just guessing what Jupstar wants, only Jupstar knows what Jupstar really wants 😄
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
Avatar
Ryozuki
in the vulkano case tho i think they try to also be correct and not allow doing stuff which the vulkan api says u woudl be doing wrong
problem is, its probably not like the rust compiler which tells u what u doing wrong. instead it implicitly adds stuff to confort to what rust can do so what i mean is, that it will not detect data races in the graphics pipeline, but instead abstracts the whole stuff so that u cannot even do that. It would be amazing if its such powerful, but that would require lot of work probably, since its like a completely new programming language
14:21
i mean their github basically says it all
14:25
i see
14:25
but vulkane is p high quality i heard
14:25
vulkano
Avatar
Avatar
Jupstar ✪
problem is, its probably not like the rust compiler which tells u what u doing wrong. instead it implicitly adds stuff to confort to what rust can do so what i mean is, that it will not detect data races in the graphics pipeline, but instead abstracts the whole stuff so that u cannot even do that. It would be amazing if its such powerful, but that would require lot of work probably, since its like a completely new programming language
well im not so knowledgeable about the pipeline so ur probs right, but it can prevent data races on code that runs on the cpu
Avatar
i dont doubt that 😄
Avatar
by design
Avatar
Avatar
Ryozuki
well im not so knowledgeable about the pipeline so ur probs right, but it can prevent data races on code that runs on the cpu
i dunno vulkano, i simply doubt its great enough yet xD
Avatar
why not try it
14:26
xd
14:26
best way to know
Avatar
yeah but currently dont want to learn another graphics api xD
Avatar
i mean its not another api its more learning how the wrapper works
14:27
but yeah
Avatar
for now i'd like to redesign/test some stuff in the playground i always had in my mind
Avatar
the vulkan concepts u know probs are 90% of what u need to know
Avatar
and i hope i dont get too lazy for that already xD
Avatar
ok on a vps first time rust compiling is really slow xD
14:32
do they plan for binary shipping some day?, but probs too annoying per rust version
Avatar
An embedded key-value database in pure Rust. Contribute to cberner/redb development by creating an account on GitHub.
Avatar
Avatar
Jupstar ✪
do they plan for binary shipping some day?, but probs too annoying per rust version
binary shipping what?
14:35
the compiler is binary shipped
Avatar
Avatar
Ryozuki
binary shipping what?
crates stuff xd
Avatar
Dynamic linking when? Binary crates when? Smh, how is this even a srs language
Avatar
no, static linking
14:48
just provide ready static libs so compiling doesnt take so long xd
14:48
at least for current stable rust compiler release or smth
Avatar
No, is bad for performance
Avatar
do they do it different rn?
14:50
else ofc dont do it, all in for performance xd
Avatar
Afaik it's all march=native compiled rn, so you get the best performance possible
Avatar
ah i c
14:50
well then make it optionally
Avatar
If they ship you generic binary releases they wouldn't use epic vector instructions
Avatar
yeah sounds sane xDD
14:51
on the other hand
14:51
if ddnet ships ddnet release with rust, march native sounds wrong
Avatar
We probably set some flag that makes it generate generic x86-64 code
Avatar
nah, default gcc behavior is only sse instructions
14:53
it wont use avx if you don't ask it to
Avatar
Rust isn't compiled with gcc
Avatar
dammit, got tricked by the flags 🙂
Avatar
Afaik rustc has march native as a default
Avatar
thought you were talking about gcc 😄
Avatar
I wonder if someone actually came up with a solution to at load time swap out more optimized "modules" if e.g. avx is available
14:57
I know you can branch at runtime and the branch predictor is good enough, but you can't guarantee 0 mispredicts afaik
Avatar
Avatar
Learath2
Afaik it's all march=native compiled rn, so you get the best performance possible
i dont htink so
15:17
cargo install doesnt install it with march native
15:17
u gotta set the RUST_FLAGS
15:17
RUST_FLAGS="-C target-cpu=native"
Avatar
I thought they changed the default sometime ago. I might be misremembering tho
15:17
idk
15:18
nono
15:18
its by default x86-v1
15:18
or smth
15:18
or just x86-64
15:19
portable simd is experimental
15:19
but there are libs
15:19
altho obviously with native cpu u get auto vectorization and stuffs
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
[quakenet] ChillerDragon BOT 2022-12-16 15:52:38Z
someone wanna play open club penguin w me? UwU https://ocp.zillyhuhn.com/
Avatar
nais, is it made in bash or what
Avatar
[quakenet] ChillerDragon BOT 2022-12-16 15:54:01Z
oof i wish xd
15:54
nah its js :(
15:54
r u the legend? o.O
Avatar
yeah, how can we communicate? move the letters we want to write? XD
Avatar
[quakenet] ChillerDragon BOT 2022-12-16 15:55:05Z
chage name
Avatar
ez xD
Avatar
[quakenet] ChillerDragon BOT 2022-12-16 15:55:40Z
ye i will add chat soon(tm)
Avatar
Avatar
Learath2
I wonder if someone actually came up with a solution to at load time swap out more optimized "modules" if e.g. avx is available
i believe you can set up a function pointer at start to specify which function should be called (at least in C/C++), but you still have the cost of indirect jump
Avatar
defs epic game 10/10 would rebuy
Avatar
[quakenet] ChillerDragon BOT 2022-12-16 15:57:57Z
ty
15:57
epic gaming
Avatar
Leave a big hole for it with a nopslide at the end 😛
16:02
Does anyone know an alternative for KCachegrind?
Avatar
no i want one too, its just too epic
Avatar
why you need alternative?
Avatar
i want one that also works with other stuff than callgrind but is as good xd
Avatar
other stuff being?
Avatar
gprof
Avatar
Another question: Does anyone know a way to intercept signals and ignore them?
Avatar
or gperf
16:15
they sound so equal xd
Avatar
Something like sigignore <my-command-that-I-don't-want-receiving-the-signal>
16:16
I'm not even sure such a sigignore binary is possible to make, but I'm interested
Avatar
nohup does it
16:22
okay, no way to change the signal it ignores
16:22
but it's possible if you look at nohup code i guess
Avatar
Avatar
bencie
@murpi Could you please send me the GitHub link for the file which contains the code for the new #reports discord bot replies?
It's not on Github
feelsbadman 1
Avatar
is it private, or could you share the code?
Avatar
Yes, once im home
👍 1
Avatar
is it A or B? yes 😄
justatest 4
Avatar
No, once im home
Avatar
maybe once you're home tee_thinking
Avatar
Avatar
Chairn
is it A or B? yes 😄
Yes, once im home ~~~~~^^^^^^^^^^^^ condition Is it private? Yes, once im home = X makes no sense Could you share code? Yes, once im home = ✓ makes sense greenthing (edited)
🧠 5
Avatar
as soon as he is home its private
justatest 1
Avatar
We are overthinking this but. Could also be: is it private? -> Yes. Could you share the code? -> Once I'm home
justatest 1
16:57
greenthing
Avatar
clever clever
Avatar
Avatar
bencie
is it private, or could you share the code?
Alright, this should do it. Trimmed down the important code.
Avatar
y'all weird alright
Avatar
Avatar
murpi
Alright, this should do it. Trimmed down the important code.
Quite weird thats its not in ddnet's repo but bot running this module 😄
Avatar
Avatar
Anime.pdf
Quite weird thats its not in ddnet's repo but bot running this module 😄
It's part of the ddnet moderator module
Avatar
Avatar
murpi
It's part of the ddnet moderator module
Makes sensemonkalaugh
Avatar
no one appears to be taking care of the discordbot repo, so I don't bother uploading the changes there
Avatar
Avatar
murpi
Alright, this should do it. Trimmed down the important code.
brownbear
Avatar
Avatar
murpi
no one appears to be taking care of the discordbot repo, so I don't bother uploading the changes there
and im shy
17:07
happy
Avatar
If servers are added, is the update manual or automatic?
17:08
tee_thinking
Avatar
https://info2.ddnet.tw/info is updated manually I think
Avatar
Avatar
murpi
and im shy
That lion on your gh profile picture would make me instantly accept any of ur prspoggers2
Avatar
@murpi it’d be nice if you could pull request your changes to the repo
17:17
If we have to set up ddnet.tw again for some reason it’s a bit of a pain when there are local changes 😛
Avatar
7c1c934 Fix macOS CI with existing 2to3 binary - def- a59613e Use %zu formatter for size_t, not PRIu64 (which is for uint64_t) - def- 920fda0 Disable -Wpsabi - def- 974f44d Merge #6147 - bors[bot]
Avatar
wait heinrich used #pragma once in the code what did i miss lmao
Avatar
Avatar
heinrich5991
I wouldn't use it
didnt age well xddd
Avatar
Avatar
murpi
Alright, this should do it. Trimmed down the important code.
thanks
Avatar
Added to my list of things to never do "Make a kcachegrind alternative"
Avatar
Avatar
Learath2
Added to my list of things to never do "Make a kcachegrind alternative"
u forgot "in rust"
17:50
its the important bit
17:50
+10 marketing points
Avatar
I will never do: Make a kcachegrind altenrative +10 marketing points? doesn't make much sense if you're advocating for rust tho
17:52
i didnt read the negative
17:52
xd
Avatar
anyway is bevy in a good state? or should I try amethyst first?
Avatar
forget amethyst
17:52
bevy is where its at
17:52
Bevy is a refreshingly simple data-driven game engine built in Rust. It is free and open-source forever!
Avatar
ok :D
Avatar
Avatar
Jupstar ✪
didnt age well xddd
it's generated code
Avatar
Are there any documents about how to send packets properly? Because I'm trying to test it out, but I don't see anything appearing
Avatar
what packet are you trying to send?
20:08
what are you trying? what do you observe?
Avatar
Avatar
Voxel
i'm trying to send 1 sv_kill_msg_teams in here, but its not going through
I added an extra sent packet as an extension for the killfeed
Avatar
looks good
20:09
and in the client you can't see it?
Avatar
Yeah. I'm testing it through Wireshark
Avatar
wireshark won't be able to decode your new packet
20:11
but it might still show it
20:11
can you show how you decode it in the client?
Avatar
Sent that too early
Avatar
ah, do you realize that you only send it to one client, not all?
Avatar
I mean I can only assume the packet is being sent with the sv_kill_msg packet, since it's going out
20:12
I'm not testing if it recieves, I'm just testing if it's actually being sent.
Avatar
you test it using wireshark?
Avatar
that's dangerous, because you probably haven't tested whether this test method works before ^^
20:14
you could add a already known message
20:14
so that it'll definitely show up in wireshark
Avatar
Avatar
heinrich5991
ah, do you realize that you only send it to one client, not all?
@Voxel ^
Avatar
hmm, sounds like no
Avatar
Oh wait, for the question? Honestly, no. I know little to nothing about server-sided code 😅
Avatar
you probably want to send it to everyone?
20:16
not just the client being killed?
Avatar
I mean, yeah. This is an extension for the killfeed, so I plan for when this is added in-game, all clients with this update can detect if a killed tee is in a team.
Avatar
replace m_ClientID with -1 in the SendPackMsg call, to send it to all clients, not just one
Avatar
Ohhh... That makes sense
Avatar
did that solve your problem?
Avatar
I'm not sure.
21:04
Like you said, it still might be in there, but just not detected properly.
Avatar
you could send a known message
21:05
to check whether that works
21:05
send a message usually only sent by the client
21:05
maybe cl_say
Avatar
then it won't be interpreted by the client
Avatar
do you like my code? ❤️
21:09
:p
Avatar
i love how specific it is
Avatar
xd sure chillerbot.png is lyfe
Avatar
Avatar
Jupstar ✪
didnt age well xddd
nice post necrophilia you got there 😄
Avatar
Avatar
Voxel
LMFAO
wtf is this code excerpt? where is it from?
Avatar
src\game\server\gamecontext.cpp line 1821
Avatar
This was before we had the antibot to hide these kinds of checks in 😄
Avatar
b1dfe6f Instruct to use rustup/rustc-mozilla on older Debian/Ubuntu (fixes #6145) - def- 11f5162 Merge #6146 - bors[bot]
Exported 354 message(s)