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-06-23 00:00:00Z and 2022-06-24 00:00:00Z
Avatar
but nice that we agree that it does its job, is nicely federated and e2ee (although that last thing took a while)
00:00
it surely also does some things differently, no?
00:01
which XMPP client are you using @lynn? :)
Avatar
Avatar
Patiga
which XMPP client are you using @lynn? :)
i only use Conversations
00:04
i don't actually use a desktop client
00:04
they are all terrible imo
Avatar
unless Dino has Windows support suddenly
Avatar
Dino gud?
Avatar
Avatar
Patiga
it surely also does some things differently, no?
yea this part is my biggest complaint i guess. some things are awkward in the protocol compared to XMPP
00:05
i actually think XMPP is closer to Discord than Matrix
00:05
if a client was actually shaped to be used like that
Avatar
Avatar
Patiga
Dino gud?
supposedly
00:06
for linux
00:06
it may also be for Mac because haha unix
00:06
just no one made a really good client for XMPP. it's a shame
00:06
or somehow no one advertises the best one and i never accidentally found it myself
Avatar
Avatar
lynn
they are all terrible imo
try Dino
00:10
is not good, but also not bad
Avatar
Avatar
lynn
unless Dino has Windows support suddenly
ow
00:12
Dino is written in Vala with strong GTK binding... so I think there will be no support at any time 😄
00:14
Mh but there seems to be a ValaOnWindows project...
Avatar
can't you even run xorg guis with wsl on windows 11...
Avatar
just use linux 😗
00:17
or use a matrix bridge xD and use a matrix client (edited)
Avatar
i'm using it... - on my phone xd
troll 1
Avatar
I once wanted to port the signal client to xmpp, to have a nicer GUI. But I had given up advertising XMPP, and also on programming for XMPP, years ago.
Avatar
Avatar
c0d3d3v
@deen if we want to have https://github.com/ddnet/ddnet/pull/5210 in 16.2 should I rebase it on your 16.2 PR or on latest master?
when does the pr "improvements for new hud" will get merged?
Avatar
i will move to Linux if vseeface gets a Linux release :P
01:02
until then no can do
Avatar
okay hear me out
01:56
if people dont want color settings for PSA/scoreboard
01:56
at least respect the UI color
01:56
for it
01:56
so if i set a UI color, put that for scoreboard and PSA tooltip
Avatar
uhh kinda need help with something
02:06
how can i use an FTP client if im using key-only SSH config?
02:07
is there a way i can use my privkey with Filezilla
02:27
again those acronyms...
02:28
public service announcement?
02:28
you mean broadcast?
Avatar
@lynn ^
Avatar
lmao. people were using these acronyms in this chat before me
03:11
position-speed-angle
03:11
i guess now it's most like position-speed
Avatar
Just discovered SchildiChat @Patiga
04:16
way better than Element imo
Avatar
Avatar
lynn
is there a way i can use my privkey with Filezilla
filezilla sux
07:19
but it works now
07:19
i found the key options
Avatar
hey, anyone got lldb working on an m1?
Avatar
72e0c19 Update spanish.txt - n0Ketchp 5dc5c6b Merge #5480 - bors[bot]
Avatar
Avatar
Neben
hey, anyone got lldb working on an m1?
yes
Avatar
Avatar
deen
yes
can u send whereis lldb && lldb --version output please?
Avatar
lldb: /usr/bin/lldb /Library/Developer/CommandLineTools/usr/share/man/man1/lldb.1 lldb-1316.0.9.46 Apple Swift version 5.6.1 (swiftlang-5.6.0.323.66 clang-1316.0.20.12)
Avatar
Avatar
deen
lldb: /usr/bin/lldb /Library/Developer/CommandLineTools/usr/share/man/man1/lldb.1 lldb-1316.0.9.46 Apple Swift version 5.6.1 (swiftlang-5.6.0.323.66 clang-1316.0.20.12)
yeah thanks, that's what I thought, i'll try to get the last version of lldb
Avatar
4de36ca Update Brazilian Portuguese translation (supersedes #5304) - def- 8253581 Merge #5437 - bors[bot]
Avatar
Avatar
deen
lldb: /usr/bin/lldb /Library/Developer/CommandLineTools/usr/share/man/man1/lldb.1 lldb-1316.0.9.46 Apple Swift version 5.6.1 (swiftlang-5.6.0.323.66 clang-1316.0.20.12)
yay it worked thanks 😄
Avatar
when I play the dummy map skychase locally with ddnet-libs cloned it doesn't have deepfly enabled, whereas the official one has. how is that? (edited)
09:27
i enable it manually with sv_deepfly 1
Avatar
Avatar
fokkonaut
when does the pr "improvements for new hud" will get merged?
As soon as I have fixed all requests
09:46
What do you think is faster/better? the switch or the array access
Avatar
i think the switch may be faster
09:49
since its an immutable thing, the array might be mutated and the compiler may not optimize it or smth
09:49
but im just talking out of my ass xd
Avatar
the constant array probably optimizes better
09:49
but is it constant?
09:50
I only did not add const
Avatar
why does it return 16 for NETOBJTYPE_EX?
Avatar
It is the size of our Net Objects... they are constant
Avatar
Avatar
heinrich5991
why does it return 16 for NETOBJTYPE_EX?
for UUIDs
09:50
they are stored in the snapshot
09:51
with type = 0
Avatar
are they?
09:52
ah yeah
Avatar
xD yes I researched the whole snapshot system ^^ And you made the UUID think you should know it
Avatar
but it's none of the game code's business, I think
09:53
it looks like an implementation detail, not something the game code should interact wtih
Avatar
Avatar
c0d3d3v
xD yes I researched the whole snapshot system ^^ And you made the UUID think you should know it
did u write ur research down?
09:53
add stuff there if you have some
Avatar
(always document stuff when you research it)
PES4_YesPillow 1
Avatar
Avatar
Ryozuki
ohh
that is only basic details xD not enough to understand the whole thing
09:55
we could add documentation to the code in future
09:55
usefull comments xD
Avatar
no, you could add documentation to the document above now 😉
09:55
"in the future" is never
09:56
(I wrote that document while re-implementing snapshots in rust, and I know of one other person who used that document 🙂 )
Avatar
xD yes I read it too, it is a good starting point (edited)
09:57
so what now... switch or array access. I think the switch looks more clean, but in the end it is only a generated file...
Avatar
Avatar
heinrich5991
(I wrote that document while re-implementing snapshots in rust, and I know of one other person who used that document 🙂 )
did u need unsafe code?
Avatar
Avatar
c0d3d3v
so what now... switch or array access. I think the switch looks more clean, but in the end it is only a generated file...
What are you making?
Avatar
I also added the default value mechanic for Net Objects that have set validate_size=False I removed the ramp value from the snap, because currently all maps use the default tuning parameters for it...
Avatar
array is probably smaller and thus also faster (edited)
Avatar
is it rly?
Avatar
Avatar
heinrich5991
array is probably smaller and thus also faster (edited)
But the switch could get inlined at places where a constant is passed to it
Avatar
i would have always believed more "static" code can get optimized better
Avatar
but the constant array access not? @Learath2
Avatar
Avatar
heinrich5991
array is probably smaller and thus also faster (edited)
But I need to do one extra condition...
Avatar
@Ryozuki the problem is that it likely generates a jump table
10:01
@c0d3d3v the switch is an indirect jump, much worse than an always correctly predicted branch
Avatar
can u put it on godbolt?
10:01
xD
Avatar
Avatar
heinrich5991
but the constant array access not? @Learath2
Hm, I'm not sure actually. It should if the array is constexpr atleast
Avatar
oh yeah
10:02
constexpr everything
Avatar
Avatar
Learath2
But the switch could get inlined at places where a constant is passed to it
no constants get passed to it. I use it to get the correct size for (edited)
10:02
mem_copy**
Avatar
okay, gcc and clang manage to compile the switch to an array
10:04
msvc fails to do so
😄 1
Avatar
smh microsoft
10:04
coffee
Avatar
Yeah the array is better. I though switch might inline better but it's not even a concern when you never oass anything constant
10:08
I wonder if you could get rid of the branch aswell, it's one where branch prediction should do fairly well, but still
Avatar
int lut_switch(int x) { switch(x) { case 0: return 0; case 1: return 1; case 2: return 1; case 3: return 2; case 4: return 3; case 5: return 5; case 6: return 8; case 7: return 13; case 8: return 21; case 9: return 34; case 10: return 55; } return 0; } const int LUT_ARRAY[11] = {0, 1, 1, 2...
10:08
fairly well = always correctly predicted
10:09
sounds negligible (except for the extra branch in the branch predictor)
10:09
the test says that both functions inline fine, even with just const (why would const not suffice?)
Avatar
normal objects go from 0-23 and Ex Objects from 65456 somthing to ... 9 more (edited)
Avatar
(except on msvc, where nothing inlines and the switch isn't optimized to an array)
Avatar
Avatar
c0d3d3v
normal objects go from 0-23 and Ex Objects from 65456 somthing to ... 9 more (edited)
if you talk about "in the snapshot", then the ex objects don't really have fixed type IDs
Avatar
Avatar
heinrich5991
the test says that both functions inline fine, even with just const (why would const not suffice?)
I just didn't know the rules there, I knew the constexpr variant inlines from an earlier tesst
Avatar
they're dynamically assigned by the server
Avatar
Avatar
heinrich5991
if you talk about "in the snapshot", then the ex objects don't really have fixed type IDs
type is always 0 and id is the type of the ex obj in the snapshot from the server
Avatar
yes, that's the lookup table the client can use
Avatar
and 16 byte of the uuid of that ex type
Avatar
to correlate the high snapshot type IDs with the UUIDs
Avatar
Avatar
heinrich5991
to correlate the high snapshot type IDs with the UUIDs
exactly
Avatar
I remember wanting to optimize that for some reason. Did we have a profiling bottleneck in that lookup?
10:12
Did profiling reveal a bottleneck in that lookup?*
Avatar
there was a bottleneck
10:13
I fixed it for the real-world at that time
10:13
it can be improved
Avatar
Avatar
Learath2
Did profiling reveal a bottleneck in that lookup?*
what do you use for profiling
Avatar
Avatar
c0d3d3v
what do you use for profiling
Perf, gprof and callgrind are all useful. I mostly use the first and the third
Avatar
the lookup table is always at the beginning of the snapshot. So it should not be to bad, but if an unknow uuid is in that snapshot, it will try to go through the whole snapshot
Avatar
Avatar
heinrich5991
I fixed it for the real-world at that time
Do you remember the issue or the fix?
Avatar
yea, I changed iteration order
10:15
let me check
10:16
Look up the internal type of the searched-for UUID type once, and then just do integer comparisons to find the item. CC #4300 Checklist Tested the change ingame Provided screenshots if it is a ...
Avatar
Thanks
10:20
One day I want to try an unordered map for this
Avatar
would be nice to have benchmarks to see if an unordered map is faster than the linear search
Avatar
isnt c++ std unordered map rly bad perf wise
Avatar
It's not the best, but its not awful either
Avatar
The fact that the STL api leaks these kind of implementation details is such a shame. Multiplied globally over all users of unordered_map, the amount of CPU time that has been wasted because of that decision boggles the mind. Has to be one of the biggest library design blunders in the history of the industry (up there with C strings being null-terminated). They should just add a new map to the standard with a better API.
10:27
xD
Avatar
I'd probably use another implementation of unordered map since this'd be in the critical path
10:29
Single-header C11 port of https://abseil.io SwissTable - GitHub - google/cwisstable: Single-header C11 port of https://abseil.io SwissTable
10:29
we can use this
10:31
i wonder if u can use only parts of absel
Avatar
Is there a single header C++ version?
Avatar
its the absel itself i guess
10:32
Avatar
Rest of abseil seems mostly useless for us :P
Avatar
yeah thats why
Avatar
I just thought I know now nearly all about our snapshot system. And now I tested demos and wondered how the lookup for Ex Obj Ids is done there, because I see no lookup table in the snapshot xD (edited)
Avatar
rust ported that and uses it on the std btw
10:36
BASED
10:36
"A hash map implemented with quadratic probing and SIMD lookup."
10:37
c++ one doesnt do quadratic probing
10:37
it uses a clossed addressing scheme
10:37
old age
Avatar
I wonder why they decided on changing it up
Avatar
a quote from the article
10:38
Back in the day, open-addressing approaches were not regarded as sufficiently mature, so closed addressing was taken as the safe implementation of choice.
Avatar
Hm, but why wouldn't they upgrade it later?
Avatar
Avatar
c0d3d3v
I just thought I know now nearly all about our snapshot system. And now I tested demos and wondered how the lookup for Ex Obj Ids is done there, because I see no lookup table in the snapshot xD (edited)
I was lost, in demos not all snapshots are unpacked using delta unpack, thats why I have not seen the lookup table in the debug hud ^^
Avatar
Avatar
heinrich5991
would be nice to have benchmarks to see if an unordered map is faster than the linear search
one could just create the lookup table while validating the snapshot... and use that instead of looking it up every time accessing a snapshot item
Avatar
xD does someone have an idea, why pylint crahses on https://github.com/ddnet/ddnet/pull/5210 pylint just decided it has enough. Locally I get the same error.
11:17
11:19
datasrc/compile.py:244:12: C0209: Formatting a regular string which could be a f-string (consider-using-f-string) Exception on node <For l.296 at 0x7fee54e885b0> in file '/home/daniel/Desktop/other_repos/ddnet_master/datasrc/compile.py' Traceback (most recent call last): .... RecursionError: maximum recursion depth exceeded The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/pylint/utils/ast_walker.py", line 90, in walk callback(astroid) File "/usr/lib/python3.10/site-packages/pylint/checkers/refactoring/recommendation_checker.py", line 172, in visit_for self._check_consider_using_dict_items(node) File "/usr/lib/python3.10/site-packages/pylint/checkers/refactoring/recommendation_checker.py", line 254, in _check_consider_using_dict_items iterating_object_name = utils.get_iterating_dictionary_name(node) File "/usr/lib/python3.10/site-packages/pylint/checkers/utils.py", line 1601, in get_iterating_dictionary_name inferred = safe_infer(node.iter) File "/usr/lib/python3.10/site-packages/pylint/checkers/utils.py", line 1262, in safe_infer raise AstroidError from e astroid.exceptions.AstroidError datasrc/compile.py:1:0: F0002: datasrc/compile.py: Fatal error while checking 'datasrc/compile.py'. Please open an issue in our bug tracker so we address this. There is a pre-filled template that you can use in '/home/daniel/.cache/pylint/pylint-crash-2022-06-23-13.txt'. (astroid-error) It fails on line 296
Avatar
I use RC3, there is something that can cause micro freezes or drop fps?
Avatar
Avatar
c0d3d3v
xD does someone have an idea, why pylint crahses on https://github.com/ddnet/ddnet/pull/5210 pylint just decided it has enough. Locally I get the same error.
before my last force push it worked 😦
Avatar
It seems to me, or is it my schizophrenia, that after choosing vulkan, the game feels a little different?
Avatar
[quakenet] ChillerDragon BOT 2022-06-23 12:33:38Z
can we get an mod on 176.9.114.238:8322 pls?
12:33
ddnet://176.9.114.238:8322 is this clickable? xd
12:34
nvm fixed
Avatar
ChillerDragon: still need help?
Avatar
[quakenet] ChillerDragon BOT 2022-06-23 12:38:09Z
no sorry he left
Avatar
Avatar
c0d3d3v
xD does someone have an idea, why pylint crahses on https://github.com/ddnet/ddnet/pull/5210 pylint just decided it has enough. Locally I get the same error.
I reported it now to pylint https://github.com/PyCQA/pylint/issues/7011 I feel really bad -.- it is probably a really bad python error, because of wrong rebase (edited)
Avatar
I was passing by as https://github.com/PyCQA/pylint/issues/7011 was reported against pylint. I was wondering why you were using such an outdated version of pylint (2.4 released in 2019 vs. 2.14.4 released a couple of days ago). I found this is because you use apt-get to install pylint: https://github.com/ddnet/ddnet/blob/82535814301c31a1966638429ad07d0c665858f3/.github/workflows/style.yml#L22 This means that you're dependent on updates to the package manager to get updates for ...
Avatar
Avatar
c0d3d3v
I reported it now to pylint https://github.com/PyCQA/pylint/issues/7011 I feel really bad -.- it is probably a really bad python error, because of wrong rebase (edited)
no worries, a linter should never crash, no matter how broken the code
Avatar
The C and C++ languages are notorious for the very large section of the map labeled here be dragons, or more formally, undefined behavior. When undefined behavior is invoked, anything is possible. For example, a variable can be both true and false.
Avatar
a7492c1 Upgrade Discord SDK to version 3.2.1 (incldues macOS arm64) - def- 2ee254f Merge #5477 - bors[bot]
14:40
c979889 Revert "Build our own drmingw with mingw" (#29) - def-
14:40
d655aed Upgrade Discord SDK to version 3.2.1 (includes macOS arm64) (#30) - def-
Avatar
c951a3c Add logfiles and map changes to integration test - ChillerDragon 5ea22ab Merge #5482 - bors[bot]
Avatar
https://github.com/ddnet/ddnet/pull/5210 is ready for review 😄 Since I refactored compile.py, I want point point out the following functions/elements are new/changed: CNetObjHandler::ms_apExObjNames CNetObjHandler::ms_aUnpackedObjSizes CNetObjHandler::ms_aUnpackedExObjSizes CNetObjHandler::ms_apExMsgNames CNetObjHandler::GetUnpackedObjSize CNetObjHandler::GetObjName CNetObjHandler::GetMsgName CNetObjHandler::SecureUnpackObj @heinrich5991 for NETOBJTYPE_EX the UUID I defined the unpacking kind of hardcoded instead of creating a NetObject for it. If you want I could make an NetObject for it instead. But the parsing would be none the less done manually here: https://github.com/C0D3D3V/ddnet/blob/1fd1976fc1c83e1c8a10c51f29a871841d82bd8a/src/engine/shared/snapshot.cpp#L45-L48
DDraceNetwork, a cooperative racing mod of Teeworlds - ddnet/snapshot.cpp at 1fd1976fc1c83e1c8a10c51f29a871841d82bd8a · C0D3D3V/ddnet
Avatar
@deen how did this get merged into staging o.O https://github.com/ddnet/ddnet/commit/0fe58795c14231812a5b180778e93d1dc6268767 I did change a bunch of his changes in https://github.com/ddnet/ddnet/pull/5420 (edited)
15:56
what is staging even used for?
Avatar
[quakenet] Konsti BOT 2022-06-23 16:00:49Z
can we make mapzones where you cannot go in with /practice mode enabled? xD Extra Rooms especially on solo maps lose their magic when u just can tp in
Avatar
staging is what bors uses to check if the change still works on current master state
Avatar
The curious tale of a fake Carrier.app Posted by Ian Beer, Google Project Zero NOTE: This issue was CVE-2021-30983 was fixed in iOS ...
Avatar
I will later this evening (or maybe tomorrow) work in the new textures from Ravie in https://github.com/ddnet/ddnet/pull/5420 And make the requested changes. @deen Do we still want to stay with no stars for 16.2? And if a lot do complain, discuss options for 16.3? (since there were some more comments added to this PR) (edited)
16:14
I think 16.2 can serve well to test it. If there is really a big counter-response, we can react quickly with 16.3.
Avatar
16.2-rc4 will be the test, 16.2 will be a regular release and stay for the usual 4-8 weeks
16:31
I think no stars is better
Avatar
I personally think the freezebar feels cluttered, compared to the stars
16:34
Feels quite distracting
Avatar
i can count to 3 in my head, real pro
Avatar
I guess...
Avatar
but yeah, if u dont provide a legacy option, someone will rage
16:35
like always xd
Avatar
But you're acting like people don't get frozen off screen
Avatar
dyncam
Avatar
The nice thing about the stars, they disappear between ticks and are only visible for brief moments
16:36
Suggesting dyncam for ddrace is absurd.
Avatar
xd
16:37
i played all fly maps with fulldyn (edited)
16:37
good training
Avatar
Dyncam shouldn't exist
Avatar
LOL
16:37
usa nobo
Avatar
Was a mistake that it was added, since it added unfair advantage to PVP modes, forcing people to use it. And it's inferior to zoom in ddrace, jarring and limited to play with.
16:38
Nobo
Avatar
it was there since teewars existed xD
Avatar
Yes I know
Avatar
in fact static was added xD (edited)
kek 1
Avatar
I've been playing for 13 years kek
Avatar
pro
Avatar
Tragic that you can't undo mistakes that were added to the game to begin with
Avatar
its the best feature for pvp
16:39
for ddrace its ofc useless
16:39
gores even more
Avatar
And you still decided to suggest using dyncam in a ddrace discussion, interesting.
Avatar
i know ppl that still use it XD
greenthing 1
Avatar
66df4a7 Move libpng libraries to expected name for macOS - def-
16:48
[ddnet/ddnet-libs] New branch created: pr-libpng-rename
16:49

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 indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--u...
Avatar
Avatar
Skeith
Feels quite distracting
This
Avatar
953ab63 Fix windows.h include in discord game sdk - def-
Avatar
Avatar
Jupstar ✪
but yeah, if u dont provide a legacy option, someone will rage
no one against the new hud but freezebar, meh
Avatar
yes, always provide legacy option, else u feel the rage in ur neck xd
17:06
@nori now that u here
17:07
in input.cpp there is c++ case SDL_QUIT: return 1; can u replace it with c++ case SDL_QUIT: { dbg_msg("test", "sdl closed my client, but why xd"); return 1; } i really wonder wtf closes ur client
17:07
its the weirdest thing ever xd
Avatar
:d ok i'll try
17:08
btw now that u here xd
17:08
where should i report this weird vulkan bug
Avatar
Avatar
nori
Click to see attachment 🖼️
this
17:09
sdl or mesa?
Avatar
defs mesa
17:09
SDL is just for opening the window
Avatar
also vulkan uses much less SDL/WM stuff than e.g. opengl
17:09
that wrapps swapbuffer and stuff like that
Avatar
Avatar
Jupstar ✪
SDL is just for opening the window
but it happens when i force sdl to wayland so
Avatar
yeah but its the wayland vulkan driver i'd say
17:10
or ur window manager struggles
17:10
bcs i dont have any problems on KDE wayland
Avatar
i use sway
Avatar
neither with GLES no vulkan also tested mesa 22.2-devel
Avatar
Avatar
Jupstar ✪
in input.cpp there is c++ case SDL_QUIT: return 1; can u replace it with c++ case SDL_QUIT: { dbg_msg("test", "sdl closed my client, but why xd"); return 1; } i really wonder wtf closes ur client
maybe it is sway related either? somehow tries to close window
Avatar
possible
17:13
but what triggers it
17:13
since its not a force close
17:13
its a clean close, bbut yeah it might not be related to SDL directly
17:14
just the event SDL sees
Avatar
The only thing that I prefer from the freeze bar, is that it doesn't show while frozen, unlike stars.
17:25
And I guess I get a more accurate timing of when they'll unfreeze (edited)
17:26
The visual clutter it brings isn't worth it though
Avatar
[2022-06-23 20:26:31][test]: sdl closed my client, but why xd [2022-06-23 20:26:31][client]: disconnecting. reason='unknown' /home/arda/ddnet/src/game/client/prediction/gameworld.cpp:147:20: runtime error: member access within address 0x619001202a80 which does not point to an object of type 'CEntity' @Jupstar ✪
Avatar
so its indeed the SDL event
Avatar
@Jupstar ✪ hmm i reproducing it much more if i compile with asan, otherwise it is pretty random
17:28
just figured it out
Avatar
a random guess is, the client/GPU is busy for too long and the OS sends a kill event
17:29
and it starts with a "clean" kill
Avatar
terminate event
Avatar
and after 4-5 seconds it would hard kill
Avatar
and it shutdowns gracefully?
Avatar
yeah
17:29
i mean it tries
17:30
when i join bit3
Avatar
except that our code probably bugs around
Avatar
it is frozen for like 5 secs
17:30
it is not like that on other maps
17:30
it instantly joins
17:30
it joins also a bit late on back in the sky but never had this
Avatar
yeah the map is huge
17:30
building it takes a few seconds
17:33
wait
Avatar
so if we get bit4, i would never be able to join xd
Avatar
gimme a second
17:34
in maplayers.cpp can you add Client()->UpdateAndSwap(); after line 866 which says Graphics()->IndicesNumRequiredNotify(vtmpTiles.size() * 6);
17:35
if that works i will just add it as soon as the client takes longer than 500ms, like other loading does now too
17:35
since this is indeed a problem generally
Avatar
Avatar
Jupstar ✪
building it takes a few seconds
can't we speed up this xd
Avatar
well without asan it probs doesnt take as long?
Avatar
yeah maybe
17:36
so this is why it is more regularly
Avatar
Avatar
Jupstar ✪
well without asan it probs doesnt take as long?
but still it takes 5-10 secs
17:37
and my pc is not old
Avatar
Avatar
Jupstar ✪
in maplayers.cpp can you add Client()->UpdateAndSwap(); after line 866 which says Graphics()->IndicesNumRequiredNotify(vtmpTiles.size() * 6);
i can't find it
17:38
grep -Ri "Client()->UpdateAndSwap()" src/game/client/components/menus.cpp: Client()->UpdateAndSwap(); src/game/client/components/menu_background.cpp: pSelf->Client()->UpdateAndSwap(); src/game/client/components/menu_background.cpp: pSelf->Client()->UpdateAndSwap(); src/game/client/gameclient.cpp: Client()->UpdateAndSwap();
Avatar
Graphics()->IndicesNumRequiredNotify(vtmpTiles.size() * 6);
17:38
this is what to find
17:38
the other is what u add
17:40
diff --git a/src/game/client/components/maplayers.cpp b/src/game/client/components/maplayers.cpp index 89c2ab06d..ece25af5a 100644 --- a/src/game/client/components/maplayers.cpp +++ b/src/game/client/components/maplayers.cpp @@ -864,6 +864,7 @@ void CMapLayers::OnMapLoad() Visuals.m_BufferContainerIndex = Graphics()->CreateBufferContainer(&ContainerInfo); // and finally inform the backend how many indices are required Graphics()->IndicesNumRequiredNotify(vtmpTiles.size() * 6); + Client()->UpdateAndSwap(); } ++CurOverlay; like this?
Avatar
yes
Avatar
it joins but it doesn't render map at first and reconnects
17:42
xd
Avatar
it simply clears the menu buffer
17:43
thats why it looks like it reconnects
17:43
but still better than crashing ^^
Avatar
yea i can't reproduce it now
Avatar
yeah
17:44
then i assume wayland kills it bcs the GPU is busy for over 2-3 seconds
Avatar
i even tried alt tabbing hard
17:44
no crash
Avatar
damn it why do we enforce the linker, valgrind doesnt work with mold xD
17:48
callgrind
17:50
ah did we remove it again, guess cmake still cached it 😄
Avatar
``` Direct leak of 216320 byte(s) in 3 object(s) allocated from: #0 0x7f5e05924808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144 #1 0x559b8ca66278 in CCommandProcessorFragment_OpenGL2::Cmd_CreateBufferObject(CCommandBuffer::SCommand_CreateBufferObject const) src/engine/client/backend/opengl/backend_opengl.cpp:1901 #2 0x559b8ca47fe7 in CCommandProcessorFragment_OpenGL::RunCommand(CCommandBuffer::SCommand const) src/engine/client/backend/op...
18:05
Same as #4941 It doesn't directly fix the issue described in #5478, it does however not trigger it anymore. it's still a bug in our code unrelated to this. This just triggered the UB from the issue as @ardadem confirmed, SDL received a SDL_QUIT ([2022-06-23 20:26:31][test]: sdl closed my client, but why xd) Now we have a confirmed case that making the window unresponsive can create weird behavior. Similar to the other pr switch to a loading screen after 500ms (this time without men...
Avatar
@Jupstar ✪ i still have few wayland related bug if you want to fix it xd
Avatar
doubt i can fix all xD
18:30
i mean this indeed is not directly a wayland bug
18:30
just very strict about GPU usage 😄
18:30
guess KDE overwrote it or smth to be less strict
Avatar
yeah it is not bug
18:30
but i have one
18:30
i can't launch desktop file
18:30
it takes few try
18:30
only for ddnet
Avatar
also crashes?
18:31
or just refuses
Avatar
i fix it by adding Terminal=true on desktop file
18:31
i can launch it terminal without issue
Avatar
Avatar
Jupstar ✪
or just refuses
no idea i don't see anything
18:32
since i can't reproduce it on terminal i can't get any output :d
Avatar
uff, is this really a wayland issue? does the program that parses the desktop file maybe have no permission to start the app?
Avatar
Avatar
Jupstar ✪
uff, is this really a wayland issue? does the program that parses the desktop file maybe have no permission to start the app?
it is random
18:32
if it doesn't have permission to launch, it wouldn't start right
Avatar
do u call it asset files or assets files
18:32
or just assets?
18:32
without files
Avatar
uh no idea
18:33
wdym
18:33
lemme share desktop file
Avatar
i am just struggling with english rn xD
Avatar
[Desktop Entry] Type=Application Name=DDNet GenericName=Platform Game Exec=env DDNET_DRIVER=GLES SDL_VIDEODRIVER=wayland /home/arda/.ddnetsrc/build/DDNet Icon=teeworlds Keywords=game;multiplayer; Categories=Game;ArcadeGame; MimeType=x-scheme-handler/ddnet; Comment=Launch DDNet #Terminal=true
Avatar
well im not an expert, but looks correct to me
Avatar
ChillerDragon: can you take a look when you have some free time? i have a segfault (i think it starts from there : https://github.com/NouaaTW/ddnet/blob/bb3020eb425b35b3bbdbbd5d6cbbb4041b4fbd22/src/game/server/entities/character.cpp#L911) when the character dies while he has the advanced passive indicator, which shouldn't happen because it's the same process as deleting it with a simple chat command (https://github.com/NouaaTW/ddnet/blob/bb3020eb425b35b3bbdbbd5d6cbbb4041b4fbd22/src/game/server/cmtchatcmds.cpp#L140)
Avatar
Chiller
Avatar
52a78c4 Fix memory leak of OpenGL 2 buffer object data - Robyt3 0aa12e6 Merge #5485 - bors[bot]
Avatar
Avatar
nori
[Desktop Entry] Type=Application Name=DDNet GenericName=Platform Game Exec=env DDNET_DRIVER=GLES SDL_VIDEODRIVER=wayland /home/arda/.ddnetsrc/build/DDNet Icon=teeworlds Keywords=game;multiplayer; Categories=Game;ArcadeGame; MimeType=x-scheme-handler/ddnet; Comment=Launch DDNet #Terminal=true
ill probably use this file )
Avatar
4c69912 pnglite -> libpng in readme - def- 5bf8c23 Merge #5474 - bors[bot]
Exported 380 message(s)