00:15 <+bridge> [ddnet] ban reasons in other languages (ie arabic) do not show up correctly, is it fixable? 00:16 <+bridge> [ddnet] @Jupstar ✪ @TsFreddie may know 00:21 <+bridge> [ddnet] that needs harfbuzz and the unicode bidirectional algorithm probs 00:22 <+bridge> [ddnet] if u mean me 00:22 <+bridge> [ddnet] https://www.w3.org/International/articles/inline-bidi-markup/uba-basics 00:22 <+bridge> [ddnet] 00:22 <+bridge> [ddnet] no its not the same issue that affects right-to-left text in tw chat 00:22 <+bridge> [ddnet] its like 00:22 <+bridge> [ddnet] what is it 00:22 <+bridge> [ddnet] one of my mods tried to ban someone with arabic reason 00:22 <+bridge> [ddnet] and it showed up as nonsense ascii characters 00:22 <+bridge> [ddnet] for the person who was banned 00:22 <+bridge> [ddnet] hm idk 00:24 <+bridge> [ddnet] ill get the screeny 1sec xd 00:27 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/524191098235781121/778400324653285386/unknown.png 00:27 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/524191098235781121/773233536332988466/Screen_Shot_2020-11-03_at_8.13.51_PM.png 00:27 <+bridge> [ddnet] @Ryozuki 00:27 <+bridge> [ddnet] why are you chicken soup 00:27 <+bridge> [ddnet] im not 00:27 <+bridge> [ddnet] latest version right 00:27 <+bridge> [ddnet] macos nobo 00:28 <+bridge> [ddnet] oh 00:28 <+bridge> [ddnet] no thats old client, good point xd 00:28 <+bridge> [ddnet] they use version 9 00:28 <+bridge> [ddnet] man 00:28 <+bridge> [ddnet] do u think it would work with newest 00:28 <+bridge> [ddnet] try it 00:28 <+bridge> [ddnet] 9 is sdl1 00:28 <+bridge> [ddnet] its rly old 00:28 <+bridge> [ddnet] i think 00:30 <+bridge> [ddnet] @Ryozuki i tried with verison 10 00:30 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/778401637466898472/unknown.png 00:30 <+bridge> [ddnet] sdl2 but still no work 00:30 <+bridge> [ddnet] try with 15 00:30 <+bridge> [ddnet] why would u try with version 10 00:30 <+bridge> [ddnet] omg 00:30 <+bridge> [ddnet] cus 00:30 <+bridge> [ddnet] its sdl2 00:30 <+bridge> [ddnet] and i dont have 15 on this comp 00:30 <+bridge> [ddnet] ig ill download 00:32 <+bridge> [ddnet] nope 00:32 <+bridge> [ddnet] @Ryozuki 00:32 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/778402319007875072/unknown.png 00:32 <+bridge> [ddnet] same thing xd 00:33 <+bridge> [ddnet] xd 00:33 <+bridge> [ddnet] real reason = للتجربة 00:40 <+bridge> [ddnet] the server can understand the ban reason because it shows up correctly on the discord bot 00:40 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/778404306830360636/unknown.png 00:41 <+bridge> [ddnet] but i guess the client doesnt display it correctly? or its not sent correctly by the server 01:22 <+bridge> [ddnet] The devil is interfering with your illegal ban of a brother 01:28 <+bridge> [ddnet] That's sooo odd tho, hm I don't see how it could happen 😛 02:17 <+bridge> [ddnet] @Learath2 lol, ye same, maybe the client is trying to decode it as ascii when its utf8? 02:32 <+bridge> [ddnet] Doesn't look like it 03:47 <+bridge> [ddnet] is your character position always available when you /pause 03:47 <+bridge> [ddnet] like even when your camera goes out of range. 06:22 <+bridge> [ddnet] No 06:22 <+bridge> [ddnet] Not if you hack something in :D 06:22 <+bridge> [ddnet] /showall would work for example 06:22 <+bridge> [ddnet] but only on ddnet 06:26 <+bridge> [ddnet] i want a "You are here" arrow at the edge of the screen😄 06:26 <+bridge> [ddnet] when you are pausing 06:27 <+bridge> [ddnet] @noby do they work in chat? 06:42 <+bridge> [ddnet] @TsFreddie dont think thats possible in a good way 06:42 <+bridge> [ddnet] The local character is not even set when you are pausing 06:43 <+bridge> [ddnet] would maybe be possible to reach it through the snap array but then again it only works within the range or with /showall 06:43 <+bridge> [ddnet] https://github.com/ddnet/ddnet/blob/f8b07f705ef5b8f35d05511163ee54bec44cbae5/src/game/client/gameclient.cpp#L1482 07:15 <+bridge> [ddnet] maybe we can change the range detect a bit and always include the current player's snap 07:15 <+bridge> [ddnet] /pause is a ddnet feature anyway. 09:29 <+bridge> [ddnet] Do I need to check anything special while doing virtual functions and base and child classes? 09:30 <+bridge> [ddnet] If I call a function from the base class the overridden function wont get called 09:30 <+bridge> [ddnet] i dont understand, because I did it basically the same way as entities do it in tw or the gamecontroller 09:32 <+bridge> [ddnet] are the parameters the same type? try adding override to the child class' function to get a compiler error if it isn't 09:33 <+bridge> [ddnet] parameters are the same, yes 09:33 <+bridge> [ddnet] class CFoo : public CBar 09:33 <+bridge> [ddnet] CFoo is the child, right? 09:37 <+bridge> [ddnet] it doesnt give errors with override 09:37 <+bridge> [ddnet] but also doesnt work :D 09:37 <+bridge> [ddnet] yes 09:37 <+bridge> [ddnet] yea, doesnt work 09:37 <+bridge> [ddnet] i dont get it 09:38 <+bridge> [ddnet] make a minimal example 09:39 <+bridge> [ddnet] ```c++ 09:39 <+bridge> [ddnet] class CPerson 09:39 <+bridge> [ddnet] { 09:39 <+bridge> [ddnet] int m_Age; 09:39 <+bridge> [ddnet] virtual void SetAge(int Age) {}; 09:39 <+bridge> [ddnet] } 09:39 <+bridge> [ddnet] 09:39 <+bridge> [ddnet] class CWorker : public CPerson 09:39 <+bridge> [ddnet] { 09:39 <+bridge> [ddnet] virtual void SetAge(int Age) { m_Age = Age; } 09:39 <+bridge> [ddnet] } 09:39 <+bridge> [ddnet] ``` 09:39 <+bridge> [ddnet] something like this maybe? :D 09:40 <+bridge> [ddnet] i also tried not declaring the CPerson's function without virtual, also doesnt owrk 09:40 <+bridge> [ddnet] It's basically the same as teeworlds' CEntity stuff, but in my case the base classes function is called 09:40 <+bridge> [ddnet] i checked that with a dbg msg 09:41 <+bridge> [ddnet] ah, forgot in the example: of course i call the CPerson's function, so basically m_pPerson->SetAge(Age); 09:42 <+bridge> [ddnet] You are supposed to actually try the minimal example to figure out the problem, and not leave that to me 09:42 <+bridge> [ddnet] Works fine for me: https://gist.github.com/def-/2a748ad06913cf1ab39e4912fc1ca2f1 09:43 <+bridge> [ddnet] mh, doesnt work for me in the teeworlds code? ... 09:43 <+bridge> [ddnet] wtf :D 09:43 <+bridge> [ddnet] Try making SetAge public 09:43 <+bridge> [ddnet] both is public for me 09:43 <+bridge> [ddnet] in both classes 09:44 <+bridge> [ddnet] If your minimal testcase works it's not a minimal testcase 09:44 <+bridge> [ddnet] Are you maybe calling the function through a pointer to the baseclass? 09:45 <+bridge> [ddnet] yes 09:45 <+bridge> [ddnet] Is that a problem? 09:45 <+bridge> [ddnet] CEntity does the same 09:45 <+bridge> [ddnet] Not really, it's fine I just wanted a better image 09:46 <+bridge> [ddnet] maybe you call `SetAge` in base class (`CPerson`) constructor? 09:46 <+bridge> [ddnet] So you added override to the child class method and the compiler didn't complain? 09:50 <+bridge> [ddnet] @Comrade nope, calling it from CGameContext 09:50 <+bridge> [ddnet] @Learath2 yes 09:53 <+bridge> [ddnet] and are you sure that `m_pPerson` is pointing to `CWorker` instance? 09:54 <+bridge> [ddnet] what do you mean? :D 09:54 <+bridge> [ddnet] its pointing to the CPerson class, calling a function, which i think should be overridden by the CWorkers function 09:54 <+bridge> [ddnet] But appearently its just calling the CPersons function 09:55 <+bridge> [ddnet] Well just show us a diff? I'm out of ideas, if it doesn't complain with override, it overrides correctly 09:55 <+bridge> [ddnet] well, it if points to `CPerson` object, then everything works as expected 09:55 <+bridge> [ddnet] The only thing that remains is that you are not creating a CWorker but a CPerson instead 09:56 <+bridge> [ddnet] well 09:56 <+bridge> [ddnet] that could actually be it lmao 09:56 <+bridge> [ddnet] yeah thanks alot man 09:56 <+bridge> [ddnet] wtf 09:56 <+bridge> [ddnet] Lol 09:56 <+bridge> [ddnet] yes 09:56 <+bridge> [ddnet] big lol 09:57 <+bridge> [ddnet] happens 😄 09:57 <+bridge> [ddnet] haha :D 09:58 <+bridge> [ddnet] well, if it points to `CPerson` object, then everything works as expected 09:59 <+bridge> [ddnet] @Learath2 Thanks, but how did you get that thought? xD 09:59 <+bridge> [ddnet] Well as I said, if override doesn't complain, then you are overriding correctly 09:59 <+bridge> [ddnet] You said you have a pointer to CPersom 10:00 <+bridge> [ddnet] And you are not doing the call in a constructor 10:00 <+bridge> [ddnet] So the only thing that remains is that the pointer doesnt point to a CWorker at all :P 10:02 <+bridge> [ddnet] aye 10:02 <+bridge> [ddnet] Great, thanks alot 10:02 <+bridge> [ddnet] @fokkonaut make the destructor virtual in ur base class 10:03 <+bridge> [ddnet] to avoid problems 10:03 <+bridge> [ddnet] in the future 10:03 <+bridge> [ddnet] https://www.geeksforgeeks.org/virtual-destructor/ 10:03 <+bridge> [ddnet] I wont need a destructor, but yes, you are right 10:03 <+bridge> [ddnet] if ur base class destructor is not virtual it will never get called 10:03 <+bridge> [ddnet] wait 10:04 <+bridge> [ddnet] ur chiuld destructor wont get called* 10:04 <+bridge> [ddnet] child 10:04 <+bridge> [ddnet] * 10:04 <+bridge> [ddnet] xD 10:04 <+bridge> [ddnet] my english xd 10:04 <+ChillerDragon> @deen would be nice if you could ping @ChillerDragon in such an issue so i do get a mail and dont create a dupe https://github.com/ddnet/ddnet/pull/3311 and next time i wont listen to heinrich :p 10:05 <+bridge> [ddnet] thats a pr 10:05 <+bridge> [ddnet] i think u made a issue 10:05 <+bridge> [ddnet] so its fine 10:05 <+ChillerDragon> ah ye true 10:05 <+ChillerDragon> im so brainded xd 10:05 <+bridge> [ddnet] :monkalaugh: 10:06 <+ChillerDragon> still didnt see and a ping would be nice so i dont create a issue after the pr :D 10:06 <+bridge> [ddnet] ChillerDragon 10:06 <+bridge> [ddnet] there pinged 10:06 <+bridge> [ddnet] :troll: 10:07 <+ChillerDragon> ye githubs ping system is not as fleek as irc tho 10:07 <+bridge> [ddnet] I assume people here see PRs. And heinrich explicitly told you to only create an issue if the problem stil occurs (that means in the current master state) 10:08 <+ChillerDragon> i looked at git history and did not see any fix cuz im blind 10:08 <+ChillerDragon> ja was fail 10:08 <+ChillerDragon> but pls use an @ if you do something that could interest em :) 10:08 <+ChillerDragon> me* 10:33 <+bridge> [ddnet] 166 bytes skin xd 10:33 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/778553332473397258/smallest.png 10:33 <+bridge> [ddnet] looks cool ingame xd 10:33 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/778553451802132480/screenshot_2020-11-18_10-33-11.png 12:03 <+bridge> [ddnet] reason=stars is broken as well 12:04 <+bridge> [ddnet] at least on CHN 12:04 <+bridge> [ddnet] just tried on GER, not working 12:05 <+bridge> [ddnet] I know 12:05 <+bridge> [ddnet] I have a fix open, but waiting for review 12:05 <+bridge> [ddnet] :thonk: oh 12:05 <+bridge> [ddnet] https://github.com/ddnet/ddnet/pull/3319 12:13 <+bridge> [ddnet] i see 12:42 <+bridge> [ddnet] @deen in #3319 why does str find and endswith fix the issue even? I couldn’t really make sense of it 12:42 <+bridge> [ddnet] https://github.com/ddnet/ddnet/pull/3319 12:43 <+bridge> [ddnet] probably because the command is no longer at the beginning of the vote command 12:44 <+bridge> [ddnet] still just piling another hack onto the existing hack ^^ 12:44 <+bridge> [ddnet] Wait why? 12:44 <+bridge> [ddnet] how I imagine this works: 12:44 <+bridge> [ddnet] What is at the start of a command now? 12:45 <+bridge> [ddnet] probably something like `sv_reset_file solo.cfg` 12:45 <+bridge> [ddnet] (note that this is still all speculation on my part, I haven't looked into it) 12:45 <+bridge> [ddnet] Oh, no really? ;D 12:45 <+bridge> [ddnet] hence https://github.com/ddnet/ddnet/issues/3317 12:46 <+bridge> [ddnet] This is kinda awful ngl, butI guess 3319 should still be merged in the meanwhile 12:56 <+bridge> [ddnet] Just an idea: if someone would port ninja indicator bar from 0.7 to DDNet codebase would it be merged? 12:56 <+bridge> [ddnet] I mean with both UI and netmessage support (didn't researched which is needed there) 12:57 <+bridge> [ddnet] on good news, i already load them into memory @Pure_luck 😄 12:57 <+bridge> [ddnet] so it should be ez to implement probably 12:58 <+bridge> [ddnet] I would like to see that yes, but I still think we should get upgradable netobjects before this 12:59 <+bridge> [ddnet] @Jupstar ✪ you mean only GUI is needed and ninja start time is already got from netmessages/snapshots? 12:59 <+bridge> [ddnet] I really don’t want to start introducing things like ddnetcharacterv2 12:59 <+bridge> [ddnet] Though I guess the data is already on the client, maybe you don’t need any new netobject 13:00 <+bridge> [ddnet] @Pure_luck i dunno how 0.7 implemented them, but i added a few 0.7 sprite capabilities already 13:01 <+bridge> [ddnet] client data from 0.7 13:01 <+bridge> [ddnet] @Jupstar ✪ yes 13:02 <+bridge> [ddnet] the rendering of arabic characters in chat isnt entirely correct, but at least the characters show up and i hear they are readable 13:02 <+bridge> [ddnet] vs the ban reason where they are unreadable 13:02 <+bridge> [ddnet] send the arabic string pls 13:02 <+bridge> [ddnet] i ban myself now to test xd 13:02 <+bridge> [ddnet] للتجربة 13:07 <+bridge> [ddnet] str_sanitize_strong(aStr); 13:07 <+bridge> [ddnet] but dunno what this does 13:07 <+bridge> [ddnet] yea, it does that 13:07 <+bridge> [ddnet] it mangles the string 13:07 <+bridge> [ddnet] nice 13:07 <+bridge> [ddnet] who invented this function 13:07 <+bridge> [ddnet] 😛 13:08 <+bridge> [ddnet] anyway its in CNetConnection::Feed 13:08 <+bridge> [ddnet] dunno if we want to fix it 13:08 <+bridge> [ddnet] is it being mangled in the client or the server 13:08 <+bridge> [ddnet] client 13:08 <+bridge> [ddnet] we should at least fix that it's being mangled instead of replaced by ??? or so 13:10 <+bridge> [ddnet] is there a chance that it can be fixed so that messages appear the same in ban reason as they do in chat 13:10 <+bridge> [ddnet] yes 13:11 <+bridge> [ddnet] its a commit from matricks 9 years ago xd 13:11 <+bridge> [ddnet] 11* 13:11 <+bridge> [ddnet] got the screenshot again? @noby 13:11 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/778401637466898472/unknown.png 13:11 <+bridge> [ddnet] this? 13:12 <+bridge> [ddnet] thanks 14:28 <+bridge> [ddnet] > Wait, so do we want to just send any utf8 ban reason? I don't see any reason to limit it 14:28 <+bridge> [ddnet] 14:28 <+bridge> [ddnet] @deen yes that would be the best thing 14:30 <+bridge> [ddnet] ok 14:34 <+bridge> [ddnet] :poggers: 14:35 <+bridge> [ddnet] awesome thx @deen :feelsamazingman: 15:19 <+bridge> [ddnet] @Jupstar ✪ I found something odd 15:21 <+bridge> [ddnet] I set gfx_opengl_major 2 and minor 3, which should probably break since that's not a real thing, but it launches fine, doesn't output anything about the opengl version it launched with and if you go into the console and just type `gfx_opengl_major` it crashes 😛 15:22 <+bridge> [ddnet] it clamps the values 15:22 <+bridge> [ddnet] to existing GL versions, if major is < 4 15:22 <+bridge> [ddnet] also cant reprod the crash :/ 15:23 <+bridge> [ddnet] it doesnt output anythign for SDLs default 15:23 <+bridge> [ddnet] so 2.1 15:24 <+bridge> [ddnet] I can do it with a clean config, I set opengl3.3 in the settings. I restart, I set major to 2, I restart. It crashes when I want to check the value of major 15:24 <+bridge> [ddnet] are u on release mode? 15:24 <+bridge> [ddnet] It's the release on ddnet.tw so probably yeah 15:25 <+bridge> [ddnet] linux? 15:25 <+bridge> [ddnet] windows 15:25 <+bridge> [ddnet] oh, ok 15:25 <+bridge> [ddnet] oh it also broke my visual studio when I tried to attach it 15:25 <+bridge> [ddnet] great platform this windings, I'm so glad a lot of people use it and provide it's parent company a monopoly 15:27 <+bridge> [ddnet] cannot reprod on linux, so would be nice if u debug it, if u got time for it 15:29 <+bridge> [ddnet] Ah yes, the kind that disappears when you attach a debugger 15:29 <+bridge> [ddnet] lovely 15:29 <+bridge> [ddnet] well it could be a compiler bug ofc 15:29 <+bridge> [ddnet] asan and ubsan doesnt show anything for me 15:31 <+bridge> [ddnet] It's gone now, happened like 10 times in a row and now it's gone... 15:31 <+bridge> [ddnet] Another bug lost to time I guess 15:31 <+bridge> [ddnet] did u try a clean config the last 10 times? xd 15:32 <+bridge> [ddnet] the first 2 were dirty, then I reproduced it 8 times in a row with a clean config 15:32 <+bridge> [ddnet] reading the variable should be the same as any other config variable 15:33 <+bridge> [ddnet] it could also just be unlucky timing 15:33 <+bridge> [ddnet] timing bugs are the most horrible 15:36 <+bridge> [ddnet] timing with the graphics thread? 15:36 <+bridge> [ddnet] yeah 15:37 <+bridge> [ddnet] or sound 15:37 <+bridge> [ddnet] dunno what happens during startup 15:37 <+bridge> [ddnet] had atleast 2 persons under windows that had double sound once, unreproducable xD 16:56 <+bridge> [ddnet] ddnet benchmarks 16:57 <+bridge> [ddnet] soon every benchmarker uses them 17:03 <@deen> hm, some tests use binaries, some build from source. I guess building from source is better, so will do that 18:57 <+bridge> [ddnet] after 20 minutes of gametime my client suddenly only outputs half the fps, and it starts showing. only fix is a client restart. known problem? sometimes changing to a server with fewer tees helps/delays it but not always 18:59 <+bridge> [ddnet] what client version? 19:00 <+bridge> [ddnet] 15.0.3 i should update probably 19:00 <+bridge> [ddnet] yes 19:00 <+bridge> [ddnet] we had a bug in that version 19:00 <+bridge> [ddnet] haven't checked for new updates since it's not in the bottom anymore, thank you 19:01 <+bridge> [ddnet] yeah we have a homescreen now, it should show a green symbol when there is news or update 19:01 <+bridge> [ddnet] top left in the server browser 20:59 < ____Khalim_> suka 23:46 <+pastaaa> wos kevin