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-10-19 00:00:00Z and 2022-10-20 00:00:00Z
Avatar
Hey hey, I working right now on a infrastructure using nats.io And building a master slave things and some unnecessary stuff. My first idea is that slaves can controll some Teeworlds server by writing into FIFO files but would be it cooler to controll them too over NATS.io Is there some interest that I publish my investigation? Like getting one more way to controll servers In-game rcon Econ Fifo Message Server (nats.io) ** I got the idea because I want the teeworlds server data and metrics outside of the server and store them somewhere.... If someone is interested just write me or answer to this message. Don't get notifications for this server 🙂
Avatar
Since DDNet is now ddnet.org and not ddnet.tw, I feel like we should start updating the code here to match accordingly. I only did announcements.txt, since I don't know if anything will break if I replace it all.
Avatar
[quakenet] _FUN12PLAYWITH BOT 2022-10-19 05:57:49Z
"/notice Nimda
05:59
"/notice Nimda I am not a bot"
Avatar
chillerdragon BOT 2022-10-19 05:59:55Z
sus
Avatar
Anime.pdf BOT 2022-10-19 06:03:00Z
sus
09:05
a075104 Tweak announcement.txt to fit ddnet.org - VoxelDoesCode 84b44b2 Merge pull request #41 from VoxelDoesCode/fix-web - def-
Avatar
deen broke the sus
09:19
?
Avatar
Is it possible to remove snowflakes that appear when in freeze?
Avatar
Avatar
wille
Is it possible to remove snowflakes that appear when in freeze?
12:26
12:26
put this in there, then select it
Avatar
second picture is a blank image
12:52
oh you meant that's the picture
feelsamazingman 1
Avatar
Avatar
Skeith
Click to see attachment 🖼️
thank you 😄
Avatar
Avatar
Daniel
Hey hey, I working right now on a infrastructure using nats.io And building a master slave things and some unnecessary stuff. My first idea is that slaves can controll some Teeworlds server by writing into FIFO files but would be it cooler to controll them too over NATS.io Is there some interest that I publish my investigation? Like getting one more way to controll servers In-game rcon Econ Fifo Message Server (nats.io) ** I got the idea because I want the teeworlds server data and metrics outside of the server and store them somewhere.... If someone is interested just write me or answer to this message. Don't get notifications for this server 🙂
We're using redis/keydb/dragonflydb for such task 🙂
Avatar
Avatar
Daniel
Hey hey, I working right now on a infrastructure using nats.io And building a master slave things and some unnecessary stuff. My first idea is that slaves can controll some Teeworlds server by writing into FIFO files but would be it cooler to controll them too over NATS.io Is there some interest that I publish my investigation? Like getting one more way to controll servers In-game rcon Econ Fifo Message Server (nats.io) ** I got the idea because I want the teeworlds server data and metrics outside of the server and store them somewhere.... If someone is interested just write me or answer to this message. Don't get notifications for this server 🙂
nats.io is a single proprietrary queue implementation?
Avatar
Its open source actually
15:20
They even support MQTT
15:22
We've evaluated NATS in my company too, but we used nsq.io now
Avatar
Why control a server with a message queue rather than say grpc?
15:48
tshock (a custom terraria sv with support for plugins) had a rest api itself to contro and get info about the sv
Avatar
does grpc provide something like a message queue?
15:54
it's nice if the game server knows whether it's currently connected to the masterserver
Avatar
Avatar
heinrich5991
it's nice if the game server knows whether it's currently connected to the masterserver
its cool if you can controll the server where some teeworlds servers is running on to controll from externally. not the server himself. like you can say your server to add a gameserver and it will automatically deploy it. its like a servicewrapper for teeworlds servers
Avatar
Avatar
Avolicious
We've evaluated NATS in my company too, but we used nsq.io now
Yes, I thought that you have built your infrastructure around redis and others. Yes would keep it for now something over-kill for our small community. Had but as I said me something in rust and stumbled across nats.io and find the idea of multiple server handling about it quite cool. nsq.io sounds very much the same. Cool that you also use this technique
Avatar
@everyone please return the map Multimap
ww 3
Avatar
f065110 Add cargo path for rustup - def-
Avatar
How to (re)-add Red/Blue team while supporting DDRace's Teams (/team <number>)?
Avatar
Avatar
Daniel
its cool if you can controll the server where some teeworlds servers is running on to controll from externally. not the server himself. like you can say your server to add a gameserver and it will automatically deploy it. its like a servicewrapper for teeworlds servers
what happens when that main service needs to be updated or restarted? do all game servers go down as well?
Avatar
Avatar
Mr.Gh0s7
How to (re)-add Red/Blue team while supporting DDRace's Teams (/team <number>)?
I don't know if that's possible
Avatar
ok thanks :D
Avatar
Avatar
Mr.Gh0s7
How to (re)-add Red/Blue team while supporting DDRace's Teams (/team <number>)?
have u tried to use the client's color codes for teams?
17:16
in the snap of the server
Avatar
good idea lemme try that :D
Avatar
except u need the team scoreboard or smth like that
17:17
in 4teams fng i gave all teams a scoreoffset so the sorting will group the teams
Avatar
btw It would be funny to have fng with abilities xD like ninja dash grenade and ninja jetpack while support ddrace tiles (edited)
Avatar
what are you writing? @Mr.Gh0s7
Avatar
Avatar
heinrich5991
what happens when that main service needs to be updated or restarted? do all game servers go down as well?
You can have a cluster of several master servers. e.g. when updating several of them could be on and the requests are processed or even if you want you can start several version of a master and the clients or masters you could then choose which processes. would build a version control in such a case but yes would be feasible without gameserver reboot... if e.g a gameserver update would come I would have sv_shutdown_on_empty and then at shutdown should automatically make servers update check and automatically start again. (edited)
Avatar
I am porting fng to ddnet codebase. I had started before summer and I am continuing now.
Avatar
cool 🙂
17:20
is there something I could look at?
Avatar
hmm I haven't yet uploaded it. I will once I have teams working :D
17:21
I can send a diff though
17:25
May I send a link from pastebin ?
Avatar
yes
Avatar
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Avatar
ooh sounds interesting
17:27
so you said once this is up there will be more abilities to fng?
Avatar
Yeah and would be very easy to implent like a dash. Would be cool for wall, smoke, blind, flash to exist too.
17:32
Although idk how many changes that would require
Avatar
Avatar
Fanvy
@everyone please return the map Multimap
you can still play the map on oldschool server
Avatar
idk if you heard but since sg has its own laser color, what if red team had shotguns they do the same thing but yk, red team blue team
Avatar
what if server could send you custom content like assets and change your laser color if you accept
17:35
That way fng could have red laser skin and laser beam
Avatar
someone tried that
17:38
DDraceNetwork, a mod of Teeworlds. Contribute to Jupeyy/ddnet development by creating an account on GitHub.
Avatar
laser just needs the owner's id
17:39
then we could do star wars
Avatar
star wars? ^^
Avatar
u dont know star wars?
Avatar
I know the star wars movies
17:42
oh
17:43
because they also shoot laser beams of different colors? do they? I don't remember
Avatar
yes they do, green for evil, red for good xD
17:44
and for light sabers its red evil, purple good but controlled his evil green yedi master, blue yedi fighter and some others were added later
17:44
star wars wiki
Avatar
star wars expert heer
17:44
where yellow and white?
Avatar
and black
17:45
i dunno, i only watched the real star wars xd
17:45
not the disney stuff xdd
Avatar
only rogue one is good
Avatar
star wars 3-6 are good, 1 & 2 are kinda bad 7-9 are complete trash rouge is a nice to have. but no jedi no fun
17:46
but i thats about it, i didnt watch obiwan story and stuff like that ^^
17:47
disney destroyed star wars, like amazon destroys LOTR
Avatar
bb0e75d Update translation status - def-
Avatar
Avatar
Mr.Gh0s7
Yeah and would be very easy to implent like a dash. Would be cool for wall, smoke, blind, flash to exist too.
since u cant make the screen white for flash, i got quite a funny idea, send like hundreds of tees using the same skins as nearby tees and move them around a little while the flashbang effect lasts
17:59
(those tees would not get affected by collision etc)
Avatar
xD it's not a flash it's a teenvasioin
18:00
i imagined csgo in teeworlds
Avatar
Throwing Teenvasion
18:03
Hmm what about sending that someone is spawning (like 1920/50x1080/50 spawns)? Also would be cool if ddnet will support server-emited particles/effects for fire/blind/etc (edited)
18:05
[ddnet/ddnet-web] New branch created: pr-16.5
18:07
DDNet 16.5 is supposed to release in 1 week, assuming no bad bugs are found. Please test the Release Candidate to prevent problems being only discovered after release. Report bugs in the #bugs channel on DDNet Discord or directly on Github:
18:14
monkalaugh
Avatar
I prefer Kernighan's & Richie's
Avatar
Just noticed that the menu button didnt work anymore, bcs we often use the pointer of the config vars for the pID ptr and since i moved the m_aName up in the CSkin &pSkin and &pSkin->GetName() returned the same ptr such a mess xDD

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
-...
Avatar
Avatar
Mr.Gh0s7
I prefer Kernighan's & Richie's
dito, but funny that teeworlds uses allman (except the space after while) bcs teeworlds mostly maintained by almans
Avatar
about the hex values PR i still dont know what this means LOL
Avatar
368c89b No need for VERBOSE anymore - def-
Avatar
How do I have to compile the client so I can get source lines or function names from someone else's crash report? addr2line only outputs ??:0 for every address.
Avatar
u need the debug symbols from https://ddnet.org/downloads/symbols
Avatar
Avatar
Voxel
about the hex values PR i still dont know what this means LOL
i thought ur problem is that the tile numbers dont align so i suggested to make them like this 255 10 1 but appranetly u mean smth different, but dunno if smone understands you xD
Avatar
i mean if you look at any doodad with this on, you can see how nicely the values line up. this is pretty much an X and Y grid
Avatar
Avatar
Jupstar ✪
u need the debug symbols from https://ddnet.org/downloads/symbols
Thanks, now it's working.
Avatar
Avatar
Voxel
i mean if you look at any doodad with this on, you can see how nicely the values line up. this is pretty much an X and Y grid
ah u mean bcs its 16 tiles per row
18:56
well makes sense then, even tho i cannot imagine the usecase anyway
18:57
isnt it annoying to require converting the hex to decimal again whenever u add the number to the automapper
18:57
or does the automapper also support hex
Avatar
like i said, automapper making TOOLS support some variant of this
18:58
and i find it easier to create automappers in those than from scratch
Avatar
Avatar
Voxel
like i said, automapper making TOOLS support some variant of this
who even is that guy who create it its such a big tool lol
Avatar
Avatar
Jupstar ✪
who even is that guy who create it its such a big tool lol
it's Pulsar, actually
Avatar
@heinrich5991 I got pinged because trashmap servers appear multiple times in the server browser. Do you want to look into this? You should still have access I think
Avatar
ah right, I forgot
Avatar
Avatar
timakro
@heinrich5991 I got pinged because trashmap servers appear multiple times in the server browser. Do you want to look into this? You should still have access I think
I can't find the server https://github.com/ddnet/ddnet/issues/5956 is talking about. I did a grep -r 'Behemoth 2', but only a server started today is found
19:23
(5f9f20762d8c8)
Avatar
Seems like that log only goes back to 4 pm of today
Avatar
b70fc39 fix skin click ptr - Jupeyy f977a38 Merge #5958 - bors[bot]
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-addresssan...
Avatar
The glue is done using the cxx crate on the Rust side. As a proof-of-concept, only a small console command (rust_version) printing the currently used Rust version was added. You can generate and op...
20:33
@Ryozuki
20:36
-- Rust version: rustc 1.64.0 (a55dd71d5 2022-09-19)
Avatar
nais
Avatar
Avatar
heinrich5991
awesome!
Avatar
now i can add as many dependencies as i want? how do i know if they work on android?
Avatar
chad linux
Avatar
Avatar
Ryozuki
chad linux
wtf xD that string
20:38
damn would be cool to show the rust version it was compiled with
Avatar
Avatar
Ryozuki
damn would be cool to show the rust version it was compiled with
ur first project
Avatar
ehm
Avatar
if this gets merged that is
Avatar
the rust PR does this 😄
20:39
i dont see it
20:39
maybe im blind
Avatar
hm, I'll check later. playing rn
Avatar
Avatar
Jupstar ✪
wtf xD that string
my uname
20:40
❯ uname -a Linux gentoo 6.0.1-gentoo #1 SMP PREEMPT_DYNAMIC Fri Oct 14 19:30:25 CEST 2022 x86_64 AMD Ryzen 5 5600X 6-Core Processor AuthenticAMD GNU/Linux
Avatar
ez
Avatar
its not linux
20:40
its
20:40
Linux gentoo 6.0.1-gentoo #1 SMP PREEMPT_DYNAMIC Fri Oct 14 19:30:25 CEST 2022 x86_64 AMD Ryzen 5 5600X 6-Core Processor AuthenticAMD GNU/Linux
20:41
get it?
20:41
omg
20:41
stupid bot
20:41
ruining my joek
20:41
joke
Avatar
Avatar
Jupstar ✪
now i can add as many dependencies as i want? how do i know if they work on android?
@Ryozuki rust fanboy what about rust libs that use a clib internally? is it static linked? how does that work? are they precompiled for android?
20:41
use pure rust libs
20:41
idk if they statically link or not
20:41
probs not
Avatar
where can i see what targets they compile to?
Avatar
in the Cargo.toml you can find most info
Avatar
https://crates.io/crates/regex/1.6.0 why does this website not show anything
Avatar
but usually if u dont see a weird exception in the cargo toml then it compiles to all targets llvm supports
Avatar
regex is pure-rust
Avatar
yes but what targets are supported, what if compilation fails on one target
Avatar
if you want a pure rust ssl there is rustls
Avatar
Avatar
Jupstar ✪
yes but what targets are supported, what if compilation fails on one target
they dont fail
Avatar
lmao
Avatar
generally pure-rust crates don't fail on any architecture
Avatar
as long as its pure rust
Avatar
pure = not unsafe?
Avatar
if they fail its probs cuz C shenanigans
20:43
pure = not using FFI
20:43
like a c lib
Avatar
or no OS calls?
20:44
mh ok
Avatar
i mean do u make os calls explicitly?
20:44
most stuff is covered by the std
Avatar
no but i guess most libs have other deps
Avatar
but yeah if you use the windows api
Avatar
at some point some lib will probs call some foreign function
Avatar
Avatar
Jupstar ✪
at some point some lib will probs call some foreign function
i havent used any crate that does that yet
20:45
thats how much ppl push for pure rust
Avatar
ok
Avatar
that said i havent done OS specific stuff
20:45
cuz i never had to xd
Avatar
nice we need regex, fuzzy search
20:47
i think ripgrep has a library mode
Avatar
all stuff i'd never implement my own xd
Avatar
we could use that directly
20:47
did you know vscode uses ripgrep
Avatar
didnt know, but i like vscode regex
20:48
its pretty fast and pretty ez syntax
Avatar
well rust regex is fast
20:49
cuz it executes in linear time
20:49
A Rust library for parsing, compiling, and executing regular expressions. Its syntax is similar to Perl-style regular expressions, but lacks a few features like look around and backreferences. In exchange, all searches execute in linear time with respect to the size of the regular expression and search text. Much of the syntax and implementation is inspired by RE2.
Avatar
nah, I think guaranteed-linear regex engines are generally slower
Avatar
yes
Avatar
why edition 2018
20:51
?
Avatar
to compile on old rustc
20:52
what does edition 2021 offer?
Avatar
ugh when does centos die already
20:52
20:52
disjoint capture is specially useful
Avatar
ah yea, that sounds useful
Avatar
boo, sharing code as image
20:54
but yes
Avatar
also rust updates itself have amazing changes too
20:54
also edition 2021 allows settings a msrv
20:54
iirc
Avatar
MSRV is not well integrated yet, unfortunately
20:55
In a previous libs team meeting, we discussed MSRV policy for the libc crate, and we debated between an N-1 policy and a slightly more conservative policy such as N-3 or N-4. We ended the meeting w...
Avatar
the rust side will only implement c++ types as they are needed right?
Avatar
that's the current strategy, yes
20:56
it's unfortunately manual
Avatar
it would be cool to have maybe some small tutorial
20:57
on basics of the ffi
20:57
e.g if someone wants to add a type to do stuff in rust
20:57
idk
20:57
i gotta learn cxx
Avatar
i first want to see smone else than heinrich using it xD
20:58
1000 rust fanboys in this chat
20:58
now is ur time
Avatar
u mean me
20:58
i dont know any other
Avatar
there are many around here
Avatar
patiga, raitw i dunno the names
20:58
but probs much more
Avatar
@heinrich5991 i guess its unavoidable to use this naming convention? IConsole_FCommandCallback
21:04
rly grinds my gears
21:04
xd
21:04
IConsole::FCommandCallback
21:04
IConsole::FnCommandCallback would be even more rusty
21:05
or just CommandCallback
Avatar
implement support for it in cxx
Avatar
so its a cxx limitation?
Avatar
yes
Avatar
ah the rust version is a command
Avatar
oh
21:13
I thought I added calls to RustVersionPrint in client and server
21:13
but maybe they were lost
21:14
you can run rust tests with cmake --build <build> --target run_rust_tests
21:14
and build rustdoc with DDNET_TEST_NO_LINK=1 cargo doc --open
Avatar
= help: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified = note: use the `-l` flag to specify native libraries to link = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname) error: could not compile `ddnet-engine-shared` due to previous error warning: build failed, waiting for other jobs to finish... FAILED: CMakeFiles/run_rust_tests /home/edgar/data/ddnet/build/CMakeFiles/run_rust_tests cd /home/edgar/data/ddnet && /usr/bin/cmake -E env "DDNET_TEST_LIBRARIES=/usr/lib64/libcrypto.so;/usr/lib64/libcurl.so;/usr/lib64/libsqlite3.so;/usr/lib64/libz.so;rt;dl;/home/edgar/data/ddnet/build/librust_test.a" /usr/bin/cmake -E env CARGO_TARGET_DIR=/home/edgar/data/ddnet/build /home/edgar/.cargo/bin/cargo test ninja: build stopped: subcommand failed.
21:15
oof
21:15
/usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /home/edgar/data/ddnet/src/base/unicode/tolower.cpp:14: undefined reference to `__gcov_indirect_call_profiler_v4' /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /home/edgar/data/ddnet/src/base/unicode/tolower.cpp:14: undefined reference to `__gcov_time_profiler_counter' /usr/lib/gcc/x86_64-pc-linux-gnu/11.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: /home/edgar/data/ddnet/src/base/unicode/tolower.cpp:14: undefined reference to `__gcov_time_profiler_counter'
Avatar
using cmake --build <build> --target run_rust_tests?
Avatar
i see stuff like this
21:16
ye
21:16
oh
21:16
im compiling with pgo
21:16
so it breaks xd
Avatar
pgo is profile-guided optimizations?
21:19
but i was missing smth thats why
21:19
all tests pass
Avatar
what was wrong?
Avatar
i was missing my pgo data
21:22
but i just removed pgo altogether
21:22
it doesnt give fps
Avatar
It specifies whether the scores are to be interpreted as times (string value starting with "time") or as points (string value starting with "points").

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
  • [ ] Chang...
Avatar
484cb82 Hex Values in the editor's info feature - VoxelDoesCode 53080e3 Merge #5938 - bors[bot]
Avatar
38a07a2 Sort dependencies alphabetically in README.md - heinrich5991 e32710c Merge #5959 - bors[bot]
Exported 278 message(s)