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 2021-11-01 00:00:00Z and 2021-11-02 00:00:00Z
Avatar
Avatar
heinrich5991
can you give me a tcpdump of a time where it's not registered?
I can try later
Avatar
hi how can i add Particles or effects to myserver? in my codes?
Avatar
chillerdragon BOT 2021-11-01 09:53:03Z
@KoroshKv: you can call the cgamecontext::playerdeath method on the server side to get the particles of a tee for example https://github.com/ddnet/ddnet/blob/2b1ff1c823337fa3febb0a782334df05b9870c3b/src/game/server/gamecontext.cpp#L282-L292
DDraceNetwork, a cooperative racing mod of Teeworlds - ddnet/gamecontext.cpp at 2b1ff1c823337fa3febb0a782334df05b9870c3b · ddnet/ddnet
09:53
Look around in gamecontext there is also the spawn animation and explosions and so on
Avatar
Avatar
chillerdragon
Look around in gamecontext there is also the spawn animation and explosions and so on
thanks
Avatar
guys i have proplem i don't use vpn but i have proplem with my pc my ip address changed to french and iam from egypt so when i join anyserver in ddnet i get ban cuz it's says i useing vpn so what i have to do
Avatar
We definitely need some sort of client capabilities, players reported that they don't see doors as closed anymore using F-Client, even tho I didn't change anything. I looked it up and it is because my F-Client sends exactly the entity switch required version :/ Meh ._. I don't have autoupdater in the client and this is the last release which is the most common version https://github.com/fokkonaut/F-Client/blob/dfcf3c0dff831b4c59aadc71eacd76a18198eef8/src/game/version.h#L9 @def- do you thi...
Avatar
Avatar
Deleted User
guys i have proplem i don't use vpn but i have proplem with my pc my ip address changed to french and iam from egypt so when i join anyserver in ddnet i get ban cuz it's says i useing vpn so what i have to do
Restart router
12:05
@trml the EntityEx fills up the snap pretty fast on maps with a lot of draggers/doors/whatever
12:07
I will need to send the EntityEx only for entities that are ACTUALLY close to you, like a few blocks, or within the Length of a door
12:07
my server especially has a lot of these laser doors/draggers
Avatar
I'll only send EntityEx for the real network clipping range, not for the zoomed one with show distance, that should help already probably, still it wastes good and needed objects for the snap
Avatar
Avatar
fokkonaut
@trml the EntityEx fills up the snap pretty fast on maps with a lot of draggers/doors/whatever
In the worst case a doubling? But yes, you will begin to notice at maybe 50-75% of the zoom level compared with before if entities are evenly distributed in the map
12:50
For pickups not in switch you can also skip it if you have many of those
Avatar
its more about the other entities tbh :D
Avatar
Avatar
trml
For pickups not in switch you can also skip it if you have many of those
but thanks for the tip, u should do that for ddnet too
Avatar
But yes, it could be improved for didn't too (maybe even dynamically if the map is large), but at the end I think this is equally a problem with the snap limit (+ large zoom)
12:53
for ddnet*
Avatar
Yes, thats true
Avatar
Next patch we can try to move the entityex stuff to a snap wrapped in a netmsg
Avatar
I have made a design changer which usually works. For some unknown reason it sometimes crashes the DDNet client here: https://github.com/ddnet/ddnet/blob/2b1ff1c823337fa3febb0a782334df05b9870c3b/src/game/client/gameclient.cpp#L2231 The crash is in GetTile where it tries to access m_pTiles with an invalid index somehow.
Avatar
Avatar
Learath2
Next patch we can try to move the entityex stuff to a snap wrapped in a netmsg
lol
Avatar
Well it is optional stuff
Avatar
chillerdragon BOT 2021-11-01 13:42:58Z
I tried to extent CConsole::Print() with some own loggerish code and then i get crashes in sqlite. I assume this is a multi threading issue isnt it? So Print() is called from some sqlite thread but my code is not thread safe? Or am i on a wrong path here?
Avatar
print is not thread safe
Avatar
chillerdragon BOT 2021-11-01 13:43:53Z
weird
Avatar
chillerdragon BOT 2021-11-01 13:50:57Z
oh right okay im not allowed to write to global non static variables in there
Avatar
@deen do you really understand what happens with #4240? RemoveEntity seems to take care of the case where the next traversal entity is already deleted
Avatar
Core was generated by ./DDRace64-Server_sql -f servers/8304.cfg'. Program terminated with signal SIGSEGV, Segmentation fault. warning: Section .reg-xstate/1115820' in core file to...
Avatar
I don't think it's about RemoveEntity, it could also be about still being in the same CCharacter's tick handling after it got deleted
15:11
I think
Avatar
Ah, that return in HandleSkippableTiles doesn't return quite far out enough 😄
15:15
and we were trying to protect it with if(!m_alive) but that can be overwritten already
Avatar
Hm, properly fixing this would probably involve actually defering the deletion until the end of the tick
Avatar
Yes, that would be cleaner, but might be risky
Avatar
I guess your fix is okay for now, I actually don't want to risk it either 😄
15:18
I guess it is sane to end the tick if the tee dies, just need to be careful not to access any member variables
Avatar
I guess we should run asan on ger1 a bit longer to see if it catches more issues
15:18
once the fix is merged
Avatar
Yeah, having all the pooled objects out on the heap can bring out more issues
Avatar
I'm not sure what the performance impact is, especially with malloc potentially taking quite long during normal gameplay
Avatar
I doubt it's unacceptable, but it is indeed a waste. I would 100% keep the pools normally
Avatar
ee10deb Try to catch #4240 in action - Learath2 76b519b Merge #4270 - bors[bot]
Avatar
Restore behavior of https://github.com/ddnet/ddnet/commit/d6c344853a4904c27bea27187a50b086551b9050#diff-0bf5339794dfb6d6185b1d1898ca662f22ec5836094d8c40fa4ad7387a6f2df8L988-R1037

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 if it works standalone, system.c especially
  • [ ] Considered possible null pointers and out of bounds array inde...
Avatar
@Learath2 have u seen the news
15:52
today they made public a flaw in unicode
15:52
"bidirectional override" Unicode codepoints
15:53
xd
15:53
(the rust blog explains it the best imho)
15:55
An issue was discovered in the Bidirectional Algorithm in the Unicode Specification through 14.0. It permits the visual reordering of characters via control sequences, which can be used to craft source code that renders different logic than the logical ordering of tokens ingested by compilers and interpreters. Adversaries can leverage this to encode source code for compilers accepting Unicode such that targeted vulnerabilities are introduced invisibly to human reviewers.
15:55
monkaS
Avatar
I feel like variations of this attack were kind of known before
Avatar
As part of their research, Nicholas Boucher and Ross Anderson also uncovered a similar security issue identified as CVE-2021-42694 involving homoglyphs inside identifiers. Rust already includes mitigations for that attack since Rust 1.53.0. Rust 1.0.0 through Rust 1.52.1 is not affected due to the lack of support for non-ASCII identifiers in those releases.
Avatar
e.g. hоmоglyph attacks
Avatar
probs this
Avatar
this isn't limited to identifiers, string literals can also be "attacked" with this
Avatar
e.g. role == "usеr"
Avatar
chillerdragon BOT 2021-11-01 16:05:33Z
has anyone ever tried to put the function signature in a different header file? :D
Avatar
chillerdragon BOT 2021-11-01 16:08:17Z
Id like to overwrite a function
Avatar
overload a method or what?
Avatar
chillerdragon BOT 2021-11-01 16:08:44Z
void curses_logf(const char *sys, const char *fmt, ...); #define dbg_msg(sys, fmt, ...) curses_logf(sys, fmt, ##__VA_ARGS__)i put this boi at the end of system.h
16:09
not rly overload
16:09
I just want my own implementation of dbg_msg being used
Avatar
you can't just redefine a function
Avatar
chillerdragon BOT 2021-11-01 16:09:30Z
without touching dbg_msg
Avatar
but dbg_msg is not a function, it's a macro
Avatar
chillerdragon BOT 2021-11-01 16:10:11Z
i overwrite the function with a macro
16:10
that works
Avatar
you can do an #ifdef/endif around and define dbg_msg differently for your ncurses build
Avatar
chillerdragon BOT 2021-11-01 16:10:44Z
i dont want to do that
16:10
that will get me merge conflicts
Avatar
I have heard of test-driven development
16:11
but you're the first person doing merge-conflict-avoidance-driven development 😄
Avatar
chillerdragon BOT 2021-11-01 16:11:28Z
xd
Avatar
Should work at the bottom
16:11
maybe #undef dbg_msg before
Avatar
chillerdragon BOT 2021-11-01 16:12:01Z
the issue is my own func
16:12
i can not define it in sys.h
16:12
the overwrite works just fine
16:12
but if i put my signature in system.h it wont work with the implementation in my own cpp file
16:12
/home/chiller/Desktop/git/chillerbot-ux/src/base/terminalui.cpp:136: multiple definition of `curses_logf'; CMakeFiles/engine-shared.dir/src/base/system.cpp.o:/home/chiller/Desktop/git/chillerbot-ux/src/base/system.cpp:131: first defined here
Avatar
put the implementation in system.cpp
Avatar
chillerdragon BOT 2021-11-01 16:13:03Z
omagawd
16:13
thats merge conflict
Avatar
ah, you have it in system.cpp and terminalui.cpp already
16:13
remove the one from system.cpp:131
Avatar
chillerdragon BOT 2021-11-01 16:13:55Z
image.png
Avatar
that doesn't look consistent with your error message
Avatar
chillerdragon BOT 2021-11-01 16:14:33Z
ikr
Avatar
build from scratch?
Avatar
chillerdragon BOT 2021-11-01 16:14:46Z
yas
16:14
saved
16:15
it probably interprets dbg_msg as the macro
Avatar
chillerdragon BOT 2021-11-01 16:15:16Z
and then puts my func there
Avatar
chillerdragon BOT 2021-11-01 16:15:22Z
omg
Avatar
I assumed dbg_msg was a macro before
16:15
you can't just overwrite a function with a macro
Avatar
chillerdragon BOT 2021-11-01 16:15:42Z
ye
16:15
because i do my macro in the header
16:15
i can
16:15
but it has to be timed correctly
Avatar
It is horrible, don't do this
Avatar
chillerdragon BOT 2021-11-01 16:16:05Z
i can define the macro after the function signature and after the function implementation
16:16
but there is no such single place
16:16
haha
Avatar
in system.cpp in line 129 you'll have to #undef dbg_msg first
Avatar
chillerdragon BOT 2021-11-01 16:16:39Z
what a mess
16:17
okay that builds
16:17
but thats merge conflicty
Avatar
How often did we change dbg_msg in the last years? Are you afraid of merge conflicts in 10 years?
Avatar
chillerdragon BOT 2021-11-01 16:17:24Z
it changes weekly
Avatar
Why not submit your code upstream?
Avatar
chillerdragon BOT 2021-11-01 16:17:46Z
i submit all i can ofc
16:17
do u want a linux only curses client?
16:18
haha curses messes with my terminal so i can not read the gdb crash report lmao
Avatar
3 changes since 2018
Avatar
chillerdragon BOT 2021-11-01 16:20:23Z
yea omagwd now system.cpp uses the wrong dbg_msg
Avatar
only system.cpp after line 130
Avatar
chillerdragon BOT 2021-11-01 16:21:07Z
conflicts also get caused when surrounding methods get touched
16:21
also with the mindset of "just a change here and just a smol change here" u get conflicts without end
16:21
i barley get any conflicts with upstream currently
Avatar
chillerdragon: you could #define dbg_msg blergh in system.cpp
16:26
then you can define your own dbg_msg somewhere else
Avatar
chillerdragon BOT 2021-11-01 16:26:41Z
right
16:26
wait lemme try
Avatar
ah wait, maybe not 😦
Avatar
chillerdragon BOT 2021-11-01 16:27:06Z
yea sounds a bit too good to be true
Avatar
system.cpp also calls dbg_msg
Avatar
then system.cpp also uses blergh 😄
Avatar
chillerdragon BOT 2021-11-01 16:27:16Z
blergh is probably undefuined
Avatar
you have to #undef dbg_msg after dbg_msg in system.cpp as well
Avatar
chillerdragon BOT 2021-11-01 16:27:37Z
i have undef
Avatar
and then your defines are around the function again
Avatar
chillerdragon BOT 2021-11-01 16:27:43Z
then def again
16:27
it all works
16:27
but big conflict material
Avatar
so not better than just using an #ifdef
Avatar
chillerdragon BOT 2021-11-01 16:27:52Z
ye
16:27
its flop
16:28
hell of a diff
16:28
image.png
Avatar
Having the same define in 2 different places is not clean
Avatar
chillerdragon BOT 2021-11-01 16:29:02Z
ikr
16:29
but i need it in system.h i think
Avatar
chillerdragon BOT 2021-11-01 16:29:22Z
anyways i want it out of the cpp
Avatar
hmmm. how about just doing #if 0 above dbg_msg and #endif below?
16:29
the definition
16:29
ah
Avatar
chillerdragon BOT 2021-11-01 16:29:43Z
cpp?
16:29
confict
Avatar
it seems to me that anything you do to dbg_msg will also affect the definition of dbg_msg
16:30
so it seems impossible to me, without changing the system.cpp
Avatar
chillerdragon BOT 2021-11-01 16:31:02Z
image.png
16:31
thats how it looks like btw
16:31
u have a input field at the bottom with local console remote console and chat
16:31
u can press t f1 f2 etc
16:31
is that something that could end up in ddnet?
Avatar
well, you could rename dbg_msg function to dbg_msg_impl and also get that in upstream, then you only need the define in system.h. But I don't think we would merge that in DDNet
16:32
are you not drawing tees as circles in ncurses? I'm disappointed
Avatar
chillerdragon BOT 2021-11-01 16:32:40Z
not yet
16:32
first focus is chat
16:32
i did maps once
16:33
the ratio is a bit messed up because console rows are higher than columns wide
16:33
thats my old messy map drawing
16:33
it also had keyboard inputs for moving
16:34
yea i guess there is no merge safe solution
Avatar
chillerdragon BOT 2021-11-01 16:34:34Z
ill go with the mess for now and maybe next merge i will just delete my code
Avatar
Jupstar ✪ BOT 2021-11-01 16:37:54Z
chillerdragon: what function does curses_logf call? or is that already the library function?
Avatar
chillerdragon BOT 2021-11-01 16:38:23Z
its mine
Avatar
Jupstar ✪ BOT 2021-11-01 16:38:38Z
is there no function that takes vargs directly?
Avatar
chillerdragon BOT 2021-11-01 16:38:51Z
wdym?
16:38
void curses_logf(const char *sys, const char *fmt, ...) { va_list args; char str[1024*4]; char *msg; int len; char timestr[80]; str_timestamp_format(timestr, sizeof(timestr), FORMAT_SPACE); str_format(str, sizeof(str), "[%s][%s]: ", timestr, sys); len = strlen(str); msg = (char *)str + len; va_start(args, fmt); #if defined(CONF_FAMILY_WINDOWS) && !defined(__GNUC__) _vsprintf_p(msg, sizeof(str)-len, fmt, args); #else vsnprintf(msg, sizeof(str)-len, fmt, args); #endif va_end(args); // printf("%s\n", str); curses_log_push(str); }
Avatar
Jupstar ✪ BOT 2021-11-01 16:39:14Z
you can just call curses_logf in dbg_msg with vargs
Avatar
chillerdragon BOT 2021-11-01 16:39:29Z
that would cause merge conflicts
16:39
since i would edit system.cpp
16:39
bad
Avatar
Jupstar ✪ BOT 2021-11-01 16:39:47Z
xd
Avatar
chillerdragon BOT 2021-11-01 16:43:02Z
so any chance it can get in ddnet? :D
Avatar
i don't think so at the moment
Avatar
chillerdragon BOT 2021-11-01 16:45:55Z
oky sad
Avatar
d786bb6 Update brazilian_portuguese.txt - rffontenelle 034cd98 Merge #4276 - bors[bot]
Avatar
9a0f16b Add exception id to TeamKill - Jupeyy 842ba44 Merge #4275 - bors[bot]
Exported 198 message(s)