00:28 <+bridge> [ddnet] @deen another bug, hook is still fully rendered if spec tee is specced on ground while hooking 00:32 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725478504036171866/screenshot_2020-06-24_17-32-17.png 00:40 <+bridge> [ddnet] lol it's possible to move while in spec 01:14 <+bridge> [ddnet] <ᶰ°Konͧsti> @louis thats Definitely not a bug 01:14 <+bridge> [ddnet] <ᶰ°Konͧsti> cuz ur hook is still alive when u get back 01:24 <+bridge> [ddnet] @ᶰ°Konͧsti it should be transparent 01:33 <+bridge> [ddnet] <0xc000f> Can someone tell me why this isnt work or do something ? :x 01:33 <+bridge> [ddnet] <0xc000f> ``` if (m_TileIndex == TILE_EMOTE_SPAM || m_TileFIndex == TILE_EMOTE_SPAM) 01:33 <+bridge> [ddnet] <0xc000f> { 01:33 <+bridge> [ddnet] <0xc000f> if (Server()->Tick() % 40 == 0) 01:33 <+bridge> [ddnet] <0xc000f> GameServer()->SendEmoticon(m_pPlayer->GetCID(), 1); 01:33 <+bridge> [ddnet] <0xc000f> } ``` 01:33 <+bridge> [ddnet] <0xc000f> i put that in the mapitems too, and i put the tile in the map 01:46 <+bridge> [ddnet] <0xc000f> Np i fixed it 02:01 <+bridge> [ddnet] How can i help with translation on the game? 07:47 <+bridge> [ddnet] oh that makes sense 08:14 <+bridge> [ddnet] map sounds don't work in 0.7? 08:28 <+bridge> [ddnet] also since when was there a swear filter for /save :justatest: 08:45 <+bridge> [ddnet] nope, they don't 08:45 <+bridge> [ddnet] there isn't 08:50 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725603755290001418/screenshot_2020-06-25_01-50-05.png 08:50 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725603756204621834/screenshot_2020-06-25_01-50-08.png 08:50 <+bridge> [ddnet] when i try "/save shit" or "/save fuck" it turns into 3 random words lol 09:04 <+bridge> [ddnet] lol 09:12 <+bridge> [ddnet] that means the save code already exists, i think 09:16 <+bridge> [ddnet] Oh that's a leak 09:19 <+bridge> [ddnet] I guess it's fine since the possibilities are still too many 09:29 <+bridge> [ddnet] well good luck figuring out the name associated to it 09:29 <+bridge> [ddnet] xd 09:32 <+bridge> [ddnet] IIRC the last time I used /save it simply informed that the passcode was already taken, though obviously not by who 09:32 <+bridge> [ddnet] so it was easier to just add like one character than remember 3 random words xd 10:14 <+bridge> [ddnet] also fixed that u wouldnt see hook 10:14 <+bridge> [ddnet] if u connected and he was in spec 10:26 <+bridge> [ddnet] @Ryozuki syltoox reported a couple issues, apparently spectee doesnt care about teams and solo at all 10:27 <+bridge> [ddnet] Also funny consequence of us waiting for it to stop before killing off the character entity, the outlined spec tee can be seen moving around :D 10:27 <+bridge> [ddnet] Also happens if you go on top of the head of a tee and spec 10:28 <+bridge> [ddnet] I think you should check that the character is not active before rendering spectee 10:32 <+bridge> [ddnet] nah, I think the server should only send the spectee if the tee is not there 10:33 <+bridge> [ddnet] and the client should only display the spectee if the server sends it 10:35 <+bridge> [ddnet] nah 10:35 <+bridge> [ddnet] it would make the code more complicated 10:35 <+bridge> [ddnet] there is a simple fix right now 10:35 <+bridge> [ddnet] @Learath2 https://github.com/ddnet/ddnet/pull/2361/commits/2922b4b6720a787d97f026bc085ea0903621dc5b 10:36 <+bridge> [ddnet] @Learath2 " syltoox reported a couple issues, apparently spectee doesnt care about teams and solo at all" what does this mean? u dont want to see spectee of other teams? 10:37 <+bridge> [ddnet] @Ryozuki can spectees even hook? 10:37 <+bridge> [ddnet] spectees can have a hook 10:37 <+bridge> [ddnet] ye 10:37 <+bridge> [ddnet] u can spec while hooking someone or the ground 10:37 <+bridge> [ddnet] spectee should care about showothers like any other tee, no? you probably shouldn't see spectees of teams that you don't see 10:37 <+bridge> [ddnet] ye 10:37 <+ChillerDragon> Why cant two names have the same save pw? 10:38 <+bridge> [ddnet] because the database column differentiating saves is only the PW 10:38 <+bridge> [ddnet] ChillerDragon: Probably to keep the queries simple 10:39 <+bridge> [ddnet] @Ryozuki got a map where /spec is active? 10:39 <+bridge> [ddnet] i just go to my server 10:39 <+bridge> [ddnet] idk one rn 10:40 <+bridge> [ddnet] also on ddnet u wont see the hook cuz its not fixed there 10:41 <+bridge> [ddnet] @Learath2 the code kinda takes into account otherteam 10:41 <+bridge> [ddnet] are u sure syltoox is not using a bot client :troll: 10:41 <+bridge> [ddnet] @louis can you tell me a map with /spec enabled? 10:42 <+bridge> [ddnet] ```[11:24 AM] Syltoox: - If im in another team, I can still see other people in /spec 10:42 <+bridge> [ddnet] [11:24 AM] Syltoox: - Can see tee's outline which are in /spec in a solopart``` 10:42 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725631938110685185/unknown.png 10:42 <+bridge> [ddnet] @heinrich5991 Springlobe 3 10:44 <+bridge> [ddnet] ty 10:46 <+ChillerDragon> i actually didnt know that i thought everyone uses 123 or asd as save password 10:46 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725633111404183552/unknown.png 10:47 <+bridge> [ddnet] that's with showothers off, I wonder what's going on for him 10:52 <+bridge> [ddnet] is fng server open source? 10:52 <+bridge> [ddnet] https://github.com/Jupeyy/teeworlds-fng2-mod/ 11:01 <+bridge> [ddnet] @Ryozuki also, apparently the spectee is moving up and down slightly for some reason 11:01 <+ChillerDragon> @nori there are multiple open source versions of fng thats also why it was named openfng at some point i guess. But the currently most played onbgy fng is closed src 11:05 <+bridge> [ddnet] I've been encouraging @onby to move to the antibot blob like ddnet is using 11:14 <+bridge> [ddnet] uhm @Ryozuki I don't see the circle at all 11:15 <+bridge> [ddnet] ? 11:15 <+bridge> [ddnet] make sure u are on a 14.0 server 11:15 <+bridge> [ddnet] Apparently I do, the background of lockdown just makes it impossible to see 11:15 <+bridge> [ddnet] 😤 11:19 <+bridge> [ddnet] 😄 11:19 <+bridge> [ddnet] might want to add a bright outline? 11:20 <+bridge> [ddnet] @Learath2 not moving 11:20 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725641556467384330/unknown.png 11:25 <+bridge> [ddnet] zooooz 11:27 <+bridge> [ddnet] @Ryozuki 11:27 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725643367995670528/Screenshot_2020-06-25_at_12.26.58.png 11:28 <+bridge> [ddnet] how to reproduce 11:28 <+bridge> [ddnet] i dont see u there 11:28 <+bridge> [ddnet] i see u correctly 11:28 <+bridge> [ddnet] I just jumped high, hit spec and waited 11:28 <+bridge> [ddnet] it happens to Nooback too and I can see it 11:28 <+bridge> [ddnet] I built the latest master 11:28 <+bridge> [ddnet] @Learath2 u need to update server too 11:29 <+bridge> [ddnet] a master 11:29 <+bridge> [ddnet] it doesnt have the pr anyway 11:29 <+bridge> [ddnet] lol look at u 11:29 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725643797991784448/Screenshot_2020-06-25_at_12.29.04.png 11:29 <+bridge> [ddnet] idk why it bugs for u 11:29 <+bridge> [ddnet] it doesnt bug for me at all 11:29 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725643910575292437/unknown.png 11:29 <+bridge> [ddnet] ur still here 11:30 <+bridge> [ddnet] maybe the new patch fixes that too unintentionally? 11:30 <+bridge> [ddnet] im not on new patch 11:30 <+bridge> [ddnet] or maybe my shitty internet is messing with it? but I don't see how, we don't evolve the spectee, so no prediction 11:30 <+bridge> [ddnet] idk 11:31 <+bridge> [ddnet] how could it be rendering at two different places for us? 11:44 <+bridge> [ddnet] Can you also wait for me to take a look at the spec char patch, I don't think we have to send all this extra state 11:44 <+bridge> [ddnet] oh, that would be even better 11:44 <+bridge> [ddnet] yeah 11:48 <+bridge> [ddnet] The theory I have is that going into spec puts the hook in a known state, so we shouldn't need to send it 11:48 <+bridge> [ddnet] but need to check 11:49 <+bridge> [ddnet] @Learath2 take into account endless hook and stuff 11:49 <+bridge> [ddnet] but still, when you go into spec your hook is cut off, in CCharacter::Pause 11:50 <+bridge> [ddnet] oh i guess 11:58 <+bridge> [ddnet] ah, issue with that is the hook is only cut off if you hook someone, not if you are hooking the ground 12:00 <+bridge> [ddnet] Well we can avoid sending it if we don't want to see the hooks of spec'd tees 12:01 <+bridge> [ddnet] otherwise it's going to have to be sent 12:01 <+bridge> [ddnet] we should sent it i think 12:12 <+bridge> [ddnet] We don't have to send hookedplayer though, atleast we can drop that 12:12 <+bridge> [ddnet] I also prefer not displaying it 12:13 <+bridge> [ddnet] idc about sending or not 12:14 <+bridge> [ddnet] Well if we don't want to display it we don't need to change the spec-char object 12:14 <+bridge> [ddnet] also true 12:15 <+bridge> [ddnet] also if we send the spec-char only when the character itself isn't being snapped we can save a couple edge cases 12:16 <+bridge> [ddnet] currently trying to work out a less hacky way of rendering the spec char 12:17 <+bridge> [ddnet] @heinrich5991 what is hacky about it right now? 12:18 <+bridge> [ddnet] can you advice me how to check the value of boolean which in the gamecontroller.h (public) and i'm in pickup.cpp 12:18 <+bridge> [ddnet] Ah, you know what fixes these? *insert C++20 concepts praise here* 12:19 <+bridge> [ddnet] @Arseniy Zarche all entities have a pointer to the gameworld which has a pointer to the gameserver which has a pointer to the gamecontroller 12:19 <+bridge> [ddnet] I think there is even a convenience function `GameServer()->m_pController` 12:20 <+bridge> [ddnet] doesn't work :( 12:20 <+bridge> [ddnet] already tried this 12:20 <+bridge> [ddnet] "doesn't work" isn't helpful 12:20 <+bridge> [ddnet] what's the error? 12:20 <+bridge> [ddnet] ok wait 12:21 <+bridge> [ddnet] @deen can you give us a while to mess around with the spec-char stuff? 12:21 <+bridge> [ddnet] if this boolean declarated in gamecontroller.h, can i type something like this in pickup.cpp? 12:21 <+bridge> [ddnet] ```GameServer()->m_pController->NeedtoHide = false;``` 12:21 <+bridge> [ddnet] Not if `NeedtoHide` is private 12:21 <+bridge> [ddnet] show us the error message that happens when you do this 12:21 <+bridge> [ddnet] `NeedtoHide` is public 12:21 <+bridge> [ddnet] show the error 12:22 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725657037882523679/unknown.png 12:22 <+bridge> [ddnet] have you tried compiling it? 12:22 <+bridge> [ddnet] to make sure it's not only an IDE error 12:22 <+bridge> [ddnet] nope 12:22 <+bridge> [ddnet] ok, i'll try 12:22 <+bridge> [ddnet] (if it's an actual error, you need to `#include ` 12:22 <+bridge> [ddnet] ) 12:22 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725657228597657670/unknown.png 12:22 <+bridge> [ddnet] xD 12:23 <+bridge> [ddnet] @Learath2 I saw you had a change to add a ddnet PKGBUILD to gentoo. Nothing happened with it? 12:23 <+bridge> [ddnet] yes, `#include ` 12:24 <+bridge> [ddnet] @deen oh, just haven't used gentoo in a while because I've been testing out arch, I was going to migrate back when I'm in italy but that never happened 12:24 <+bridge> [ddnet] ok 12:24 <+bridge> [ddnet] for arch we are just missing 1 vote for the soft 10 vote boundary in AUR so that a Trusted User can pick up DDNet and make an official package 12:24 <+bridge> [ddnet] I can write the ebuild and submit it if you want, I maintain 2 ebuilds already 12:25 <+bridge> [ddnet] I think it would be nice, but your choice if you want to maintain it 12:26 <+bridge> [ddnet] are Trusted User active? would they release ddnet the same night? 12:26 <+bridge> [ddnet] :feelsbadman: 12:26 <+bridge> [ddnet] quickly, but same night would be hard, except if they're active ddnet players 12:27 <+bridge> [ddnet] :feelsbadman: 12:27 <+bridge> [ddnet] I know the best solution, Ryozuki should apply as Trusted User 😄 12:27 <+bridge> [ddnet] is that an actual boundary? I thought TUs could pick up any package they use to put it into the repos 12:27 <+bridge> [ddnet] but i think ucannot be a trusted user and work on 1 package only xD 12:28 <+bridge> [ddnet] Not an actual boundary, but if a package has >= 10 the TU can decide on their own 12:28 <+bridge> [ddnet] is teeworlds an official package? maybe we can interest that guy 😄 12:28 <+bridge> [ddnet] if it's < 10 votes, then the TU needs approval from 2 (or 3?) other TUs 12:28 <+bridge> [ddnet] or maybe the teeworlds guy hates ddnet 12:28 <+bridge> [ddnet] :justatest: 12:29 <+bridge> [ddnet] inb4 it's stitch 12:30 <+bridge> [ddnet] maybe i actually have some chances 12:30 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725659173601280101/unknown.png 12:30 <+bridge> [ddnet] but idk if i should take that responsability 12:30 <+bridge> [ddnet] hm should we be sending `EXPLAYERFLAG_SPEC` even when the tee hasn't paused yet? 12:31 <+bridge> [ddnet] our voting ring got us the tenth vote already 12:31 <+bridge> [ddnet] "voting ring" :poggers: 12:33 <+bridge> [ddnet] @heinrich5991 how about putting the information inside `CNetObj_SpecChar` inside a `CNetObj_Character` and passing that to the render functions? That should get rid of all the special cases inside the render functions themselves 12:33 <+bridge> [ddnet] doing something similar to that rn 12:33 <+bridge> [ddnet] I want to sue RenderTee directly though 12:33 <+bridge> [ddnet] *use 12:33 <+bridge> [ddnet] sue 12:34 <+bridge> [ddnet] :justatest: 12:34 <+bridge> [ddnet] oh wtf 12:35 <+bridge> [ddnet] I think I'm in the src/game/client/animstate.{cpp,h} for the first time 12:35 <+bridge> [ddnet] 😄 12:35 <+bridge> [ddnet] I saw it for the first time today aswell 12:35 <+bridge> [ddnet] luckily it has a function that I can use to not care about it anymore 12:35 <+bridge> [ddnet] `\CAnimState::GetIdle()` 12:35 <+bridge> [ddnet] `CAnimState::GetIdle()` 12:35 <+bridge> [ddnet] thanks matricks (probably) 12:37 <+bridge> [ddnet] I think we shouldn't display the hook either, first of all it's not really common to be hooked on while in spec, second it's not really useful information for anyone 12:40 <+bridge> [ddnet] third, no ugly `spec-char-2` 😄 12:41 <+bridge> [ddnet] no one will ever see that 12:41 <+bridge> [ddnet] but yeah 12:41 <+bridge> [ddnet] we will 🙂 12:41 <+bridge> [ddnet] not really. it's only one line in network.py 12:41 <+bridge> [ddnet] it doesn't carry over to the structs 12:42 <+bridge> [ddnet] Oh yeah true 12:52 <+bridge> [ddnet] ah, sweet array out of bounds in RenderPlayer 13:08 <+bridge> [ddnet] uhm, call me naive, but where are the bounds checks in the `CGameClient::OnNewSnapshot` function? @Learath2 13:08 <+bridge> [ddnet] e.g. in the `if(Item.m_Type == NETOBJTYPE_CLIENTINFO)` for `int ClientID;` 13:09 <+bridge> [ddnet] I don't think there are any 13:09 <+bridge> [ddnet] ouch 13:09 <+bridge> [ddnet] are there supposed to be any? 😄 13:09 <+bridge> [ddnet] this might be an actual security vulnerability with bad impacts 13:09 <+bridge> [ddnet] it's a nice arbitrary write gadget in a convenient location 13:09 <+bridge> [ddnet] "kinda arbitrary" 13:09 <+bridge> [ddnet] well you can't write at an arbitrary location 13:10 <+bridge> [ddnet] I think IDs can only be 0-65535 13:10 <+bridge> [ddnet] hm, you can control IDs though yeah 13:10 <+bridge> [ddnet] probably in tw, too 😦 13:12 <+bridge> [ddnet] there are a couple of pointers after the data, but you'd need an info leak to exploit that 13:12 <+bridge> [ddnet] but still a serious security vulnerability 13:14 <+bridge> [ddnet] Anything we use as an index, we should probably be clamping 13:14 <+bridge> [ddnet] not only clamping but probably even `dbg_assert` 13:15 <+bridge> [ddnet] not `dbg_assert` here, it's network input 13:15 <+bridge> [ddnet] ignore or disconnect from server 13:15 <+bridge> [ddnet] ah yep, no need to let the server crash the client 13:15 <+bridge> [ddnet] disconnect sounds sane 13:17 <+bridge> [ddnet] :justatest: 13:20 <+bridge> [ddnet] vanilla 0.7 has a fix 13:21 <+bridge> [ddnet] https://github.com/teeworlds/teeworlds/commit/a3500d1c0288998eacb206b95e0b0ad4757d713f?w=1 13:31 <+bridge> [ddnet] > Apparently I do, the background of lockdown just makes it impossible to see 13:31 <+bridge> [ddnet] @Learath2 That's why some ppl wanted spectee visible on all backgrounds, preferably black & white dashed skin instead of "if the outline isn't visible in very dark areas, the nickname definitely will be." 13:31 <+bridge> [ddnet] Useless vote for community aside... 13:58 <+bridge> [ddnet] @Learath2 here's my WIP PR, in case you want to take a look at it 13:58 <+bridge> [ddnet] will eat lunch now (I think you wanted more feedback between devs during the development of features?) 14:18 <+bridge> [ddnet] @deen of so simple solution on the settings&commands I didn't even thought 😅 14:18 <+ChillerDragon> also feedback from players not also from devs would be nice if something is changed affecting the users 14:19 <+ChillerDragon> much english sentence 14:19 <+ChillerDragon> s/also/only 14:22 <+bridge> [ddnet] @ChillerDragon like vote in #announcements ? :p 14:36 <+ChillerDragon> idk would be a good start votes and discussions discord seems to be the place where players hang out 14:37 <+ChillerDragon> maybe also the github issue could be linked so cursious players can easily find out where to find the details 14:37 <+bridge> [ddnet] there was such a vote in #announcements, for spec tee skin 14:37 <+ChillerDragon> thats nice 14:37 <+bridge> [ddnet] > 5:59 PM] Learath2: We are looking to display players in /spec and testing out 4 different looks. https://github.com/ddnet/ddnet/pull/2309#issuecomment-647612108 14:37 <+bridge> [ddnet] > 14:37 <+bridge> [ddnet] > Let us know which one you like the most 14:38 <+ChillerDragon> ok cool awesome 14:38 <+ChillerDragon> so thats execatly what i suggested but i didnt see it because i stopped using discord 14:40 <+bridge> [ddnet] There is however an issue, we presented 4 options, there was clear consensus for one of them, so we went with a 5th option 😄 14:59 <+bridge> [ddnet] https://github.com/ddnet/ddnet/pull/2368 done @Learath2 @Ryozuki 14:59 <+bridge> [ddnet] I tested it and looked fine™ 15:00 <+bridge> [ddnet] looks good 15:00 <+bridge> [ddnet] didnt test it tho 15:01 <+bridge> [ddnet] now we have 3 passes :greenthing: 15:31 <+bridge> [ddnet] :greenthing: 16:02 <+bridge> [ddnet] @Learath2 Kinda sad end-result though 16:03 <+bridge> [ddnet] ...yet I'm not much surprised xd 16:03 <+bridge> [ddnet] Atleast we have the feature in, the way it's rendered can always be changed 16:03 <+bridge> [ddnet] yup 16:03 <+bridge> [ddnet] I think the 4th option would be the only way that renders equally well in all backgrounds 16:03 <+bridge> [ddnet] The longer the feature will be in there, the more ideas to improve it will arise, so 16:04 <+bridge> [ddnet] that was the plan xd 16:04 <+bridge> [ddnet] :greenthing: 16:04 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725712997598625872/unknown.png 16:04 <+bridge> [ddnet] or colorbody and it's inverse 16:04 <+bridge> [ddnet] why not 2 if people want it 16:04 <+bridge> [ddnet] but colorbody + inverse would require code I think 16:05 <+bridge> [ddnet] the way I intended the skin was for the full opacity image to be the default 16:06 <+bridge> [ddnet] I don't think it needs any transparency either, it's already mostly transparent 16:06 <+bridge> [ddnet] if you take for example 30% of that it's not very visible 16:07 <+bridge> [ddnet] I mean that it wasn't supposed to be more transparent than the image itself 16:07 <+bridge> [ddnet] I can make a fully visible one to be better adjustable 16:12 <+bridge> [ddnet] the one with feet was good idk why ppl removed it 16:12 <+bridge> [ddnet] the one with feet was good idk why it wasnt used 16:13 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725715208596881419/x_spec.png 16:13 <+bridge> [ddnet] this one 16:14 <+bridge> [ddnet] because feet look messy and the body outline can be done cleaner 16:16 <+bridge> [ddnet] messy feet > no feet but ok 16:16 <+bridge> [ddnet] nothing > messy anything 16:17 <+bridge> [ddnet] a circle perfectly represents a tee and speced tees don't need to walk anywhere so why would they have feet 16:18 <+bridge> [ddnet] heh 16:19 <+bridge> [ddnet] its not like they take off their feet and put it in their pockets when they spec 😐 16:19 <+bridge> [ddnet] but the circle is not a tee, it shows the lack of a tee 16:21 <+bridge> [ddnet] maybe they do take out their feet when going to spec? you never know 16:22 <+bridge> [ddnet] they for sure hide their hands, since most ppl don't even realise tees have actual hands xd 16:24 <+bridge> [ddnet] this should work better with the adjustable transparency in game 16:24 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725718041375277126/x_spec.png 16:24 <+bridge> [ddnet] > its not like they take off their feet and put it in their pockets when they spec 😐 16:24 <+bridge> [ddnet] @louis lmao 16:25 <+bridge> [ddnet] the earlier one was at 40% which was already adjusted to look best in game 16:29 <+bridge> [ddnet] ain't it 100% for same team, and custom-set by showothers alpha for other teams? 16:30 <+bridge> [ddnet] the transparency of the skin is connected to the showothers alpha slider, I didn't know that before 16:30 <+bridge> [ddnet] > its not like they take off their feet and put it in their pockets when they spec 😐 16:31 <+bridge> [ddnet] I thought that got changed, maybe it was just part of conversation and not actual code change 🤔 16:32 <+bridge> [ddnet] well having it connected is inconvenient 16:52 <+bridge> [ddnet] @Learath2 is the skin gonna be replaced with this new opaque one? 16:53 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725725465217859655/Screenshot_20200625-165332.jpg 16:54 <+bridge> [ddnet] Or use this 16:56 <+bridge> [ddnet] what does "manual 00:00:00" mean? 16:57 <+bridge> [ddnet] what does "manual %3d:%02d" mean? 16:57 <+bridge> [ddnet] "manual" scares me woah 16:59 <+bridge> [ddnet] Rather than what does, you should ask what it stands for / where it is used, since it's from translations files 16:59 <+bridge> [ddnet] <ᶰ°Konͧsti> How to close lan server if no terminal created and not knowing Rcon on Linux?? 16:59 <+bridge> [ddnet] but looks like that part is not translated in like half of the languages 17:00 <+bridge> [ddnet] @ᶰ°Konͧsti pkill -f DDNet ? 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> Thx 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> But 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> I cant join lan server 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> Not even per localhost 17:01 <+bridge> [ddnet] because u just closed it 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> no 17:01 <+bridge> [ddnet] :kek: 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> Before already 17:01 <+bridge> [ddnet] <ᶰ°Konͧsti> And now again 17:02 <+bridge> [ddnet] maybe u are banned 17:02 <+bridge> [ddnet] <ᶰ°Konͧsti> U 17:02 <+bridge> [ddnet] :troll: 17:02 <+bridge> [ddnet] :troll: 17:02 <+bridge> [ddnet] bruh 17:02 <+bridge> [ddnet] how are u launching it 17:02 <+bridge> [ddnet] there needs to be an autoexec.cfg or autoexec_server.cfg 17:02 <+bridge> [ddnet] <ᶰ°Konͧsti> IK 17:03 <+bridge> [ddnet] <ᶰ°Konͧsti> EVERYTHING THERE 17:03 <+bridge> [ddnet] @ᶰ°Konͧsti Do you even see it in lan tab? 17:03 <+bridge> [ddnet] <ᶰ°Konͧsti> Yes 17:03 <+bridge> [ddnet] what happens when u try to join 17:03 <+bridge> [ddnet] "You are banned" xd 17:03 <+bridge> [ddnet] <ᶰ°Konͧsti> The same thing like on noby fng 17:03 <+bridge> [ddnet] <ᶰ°Konͧsti> Like 17:03 <+bridge> [ddnet] <ᶰ°Konͧsti> nothing 17:03 <+bridge> [ddnet] <ᶰ°Konͧsti> Connecting forever 17:04 <+bridge> [ddnet] :danAmazing: 17:04 <+bridge> [ddnet] ask the admin for unban then 17:06 <+bridge> [ddnet] It's just a plain roulette guess, but maybe your router blocks the port or UDP (?) packets, even though you can see it in lan 17:06 <+bridge> [ddnet] @ᶰ°Konͧsti any errors in the terminal maybe? 17:07 <+bridge> [ddnet] if he connects to localhost then it should never even go thru the router 17:07 <+bridge> [ddnet] well, yea, but we're talking about Konsti, so... xd 17:07 <+bridge> [ddnet] :troll: 17:10 <+bridge> [ddnet] so, im waiting xd 17:10 <+bridge> [ddnet] <ᶰ°Konͧsti> Its the DDNet 14 server Which is bugged 17:10 <+bridge> [ddnet] <ᶰ°Konͧsti> I opened old server and no problems 17:10 <+bridge> [ddnet] <ᶰ°Konͧsti> Im not that retarded so no u 17:10 <+bridge> [ddnet] oh the new version comes with konsti protection 17:13 <+bridge> [ddnet] damn @onby 😂 17:18 <+bridge> [ddnet] <ᶰ°Konͧsti> Clearly The biggest troll 17:18 <+bridge> [ddnet] <ᶰ°Konͧsti> How about fixing DDNet server 14 17:19 <+bridge> [ddnet] fix yourself :kek: (sry bro) 17:22 <+bridge> [ddnet] what the "wait before try for" heck 17:23 <+bridge> [ddnet] when you can't connect to server and have to wait x seconds before trying again IIRC 17:24 <+bridge> [ddnet] ah ok 17:25 <+bridge> [ddnet] it will be more informative 17:32 <+bridge> [ddnet] guuuys... where the hell is code for, let's say this https://ddnet.tw/ranks/novice/ page? I'm quite sure it's not anywhere in https://github.com/ddnet/ddnet-web (or I'm dumb) but I neither see it anywhere in https://github.com/ddnet/ddnet-scripts ... what am I missing? 17:34 <+bridge> [ddnet] @Soreu you're not stupid 17:34 <+bridge> [ddnet] ddnet-web is only for the static part 17:35 <+bridge> [ddnet] The ranks pages are created here: https://github.com/ddnet/ddnet-scripts/blob/master/servers/scripts/ranks.py 17:35 <+bridge> [ddnet] But I wouldn't recomment you to change anything in there 17:35 <+bridge> [ddnet] I know 17:35 <+bridge> [ddnet] ;D 17:36 <+bridge> [ddnet] Tried to undestand the code like 20 times in last umm... 5 years? Never was good idea xD 17:36 <+bridge> [ddnet] if you can find a nice mockup of where best to show the release time I can add it 17:36 <+bridge> [ddnet] This code is super-unclean 17:36 <+bridge> [ddnet] i could rework it with https://www.yattag.org/ 17:36 <+bridge> [ddnet] it would look super pythonic 17:36 <+bridge> [ddnet] :greenthing: 17:37 <+bridge> [ddnet] more importantly, I think we should split up the ranks pages, but I'm not sure how to best do that 17:37 <+bridge> [ddnet] First of all, I guess there are still several static pages generated by dynamic code, since that's what I found out... long ago, and doubt it'd change 17:37 <+bridge> [ddnet] because at the moment the ranks pages get slow on even modern mobile devices 17:37 <+bridge> [ddnet] u need pagination 17:37 <+bridge> [ddnet] i guess 17:37 <+bridge> [ddnet] the settings & commands page sometimes hangs my phone too xD 17:37 <+bridge> [ddnet] that wold be an easy fix 17:38 <+bridge> [ddnet] I wasn't sure whether to paginate or put each map's rank into a separate page 17:38 <+bridge> [ddnet] There are better solutions, and more user-friendly, but the ones I know of require quite the rewrite of page... page made with code I can't even understand, not mentioning testing it locally somehow 17:38 <+bridge> [ddnet] but since we're on it... 17:39 <+bridge> [ddnet] Let's say I'd like to test ddnet-web locally... 17:39 <+bridge> [ddnet] https://uniqueclan.net/maps 17:39 <+bridge> [ddnet] ddnet-web is easy to test locally. just need jekyll and some jekyll plugins and run "jekyll serve" 17:39 <+bridge> [ddnet] aside from ofc needing XAMPP or whatever to be able to run php code, how to have the ddnet-scripts part working or.. idk 17:40 <+bridge> [ddnet] except for the php bit 17:40 <+bridge> [ddnet] XAMPP :cammostripes: 17:40 <+bridge> [ddnet] windows :cammostripes: 17:40 <+bridge> [ddnet] but well, generate jekyll to dir read by XAMPP seems like... possible... solution... 17:40 <+bridge> [ddnet] <ᶰ°Konͧsti> @deen any idea why i cant join DDNet server 14 on lan? 17:40 <+bridge> [ddnet] nono, jekyll brings its own web server 17:40 <+bridge> [ddnet] no need for xampp 17:41 <+bridge> [ddnet] @ᶰ°Konͧsti with vanilla client? 17:41 <+bridge> [ddnet] <ᶰ°Konͧsti> with DDNet 14 17:41 <+bridge> [ddnet] <ᶰ°Konͧsti> xD 17:41 <+bridge> [ddnet] eeeh 17:41 <+bridge> [ddnet] i know we have a bug in vanilla antispoofing 17:41 <+bridge> [ddnet] Well, have to test it then, but I'm still quite sure it won't even run index.php since I'm on windows 17:42 <+bridge> [ddnet] i always wondered how far would u accept a web change 17:42 <+bridge> [ddnet] i guess not much 17:42 <+bridge> [ddnet] show me a mockup first 17:42 <+bridge> [ddnet] http://v2.ddnet.tw/WIP/ xD 17:42 <+bridge> [ddnet] damn, still running <3 17:42 <+bridge> [ddnet] or explain what you want to change, before you change everything and have it not accepted :/ 17:42 <+bridge> [ddnet] i also mean the backend 17:43 <+bridge> [ddnet] and btw, that v2 is literally a mockup that I wouldn't prefer today, it can be done way cleaner & nicer xd 17:43 <+bridge> [ddnet] would be fine for me, as long as it's as performant as the old one and readable 17:44 <+bridge> [ddnet] the performant part is hard here, since current page is nearly "bare" which could be interrupted even by relatively simple framework 17:45 <+bridge> [ddnet] @Ryozuki btw, kinda missing the old times of doing remake with you :D 17:45 <+bridge> [ddnet] well yeah 17:45 <+bridge> [ddnet] i know way more now tho 17:46 <+bridge> [ddnet] but ye its hard to go against dynamic content thats statically generated every x mins 17:46 <+bridge> [ddnet] a ugly aproach that works 17:46 <+bridge> [ddnet] it has constant load on the server independent of how many people access it, which is great 17:46 <+bridge> [ddnet] idk how perfomant caching is against that 17:47 <+bridge> [ddnet] @ᶰ°Konͧsti Some firewall problem? I can't reproduce it with Linux and Win64 17:47 <+bridge> [ddnet] also ddnet.tw has only 2gb or ram xd 17:47 <+bridge> [ddnet] which is plenty 17:48 <+bridge> [ddnet] well if u use file based caching like here yes 17:49 <+bridge> [ddnet] <ᶰ°Konͧsti> it keeps me connecting forever 17:49 <+bridge> [ddnet] <ᶰ°Konͧsti> https://cdn.discordapp.com/attachments/293493549758939136/725739520812908635/Bildschirmfoto.png 17:49 <+bridge> [ddnet] that 2GB of ram should be far more than enough 17:50 <+bridge> [ddnet] maybe its windows stuff 17:50 <+bridge> [ddnet] oh but ur on linux 17:50 <+bridge> [ddnet] <ᶰ°Konͧsti> ofc 17:50 <+bridge> [ddnet] r u sure ur using legit client 17:50 <+bridge> [ddnet] <ᶰ°Konͧsti> U 17:50 <+bridge> [ddnet] <ᶰ°Konͧsti> its ddnet 14 from page 17:50 <+bridge> [ddnet] ah from page 17:50 <+bridge> [ddnet] i never use that 17:51 <+bridge> [ddnet] well ur right 2gb is enough 17:51 <+bridge> [ddnet] ``` 17:51 <+bridge> [ddnet] root@ryozuki ~ # free -m 17:51 <+bridge> [ddnet] total used free shared buff/cache available 17:51 <+bridge> [ddnet] Mem: 3850 561 1442 97 1846 2911 17:51 <+bridge> [ddnet] Swap: 1023 292 731 17:51 <+bridge> [ddnet] ``` 17:52 <+bridge> [ddnet] my server with several websites xd 17:53 <+bridge> [ddnet] several 17:54 <+bridge> [ddnet] <ᶰ°Konͧsti> ingame console says connecting, sending info and thats it 17:55 <+bridge> [ddnet] @ᶰ°Konͧsti ddnet hates u 17:55 <+bridge> [ddnet] <ᶰ°Konͧsti> u 17:55 <+bridge> [ddnet] <ᶰ°Konͧsti> Ryozoozki 17:56 <+bridge> [ddnet] Someone else here can confirm that joining LAN server with DDNet 14 (client + server) doesn't work? 17:57 <+bridge> [ddnet] <ᶰ°Konͧsti> im on Ms Linux rn 17:59 <+bridge> [ddnet] montana linux? 17:59 <+bridge> [ddnet] microsoft linux :kek: 17:59 <+bridge> [ddnet] <ᶰ°Konͧsti> :ban: 18:00 <+bridge> [ddnet] @deen on Windows 10 it works normal 18:28 <+bridge> [ddnet] update failed. check logs... is "check logs" must be like "you should check logs"? 18:30 <+bridge> [ddnet] [10:56 AM] deen: Someone else here can confirm that joining LAN server with DDNet 14 (client + server) doesn't work? 18:30 <+bridge> [ddnet] 18:30 <+bridge> [ddnet] @deen i tried on osx and it doesnt work for me either 18:32 <+bridge> [ddnet] it is also not the client because i tried with old lclient too 18:42 <+bridge> [ddnet] I tried on osx and it works just fine for me 18:42 <+bridge> [ddnet] <ᶰ°Konͧsti> Ye couldnt join with 12.9 18:42 <+bridge> [ddnet] <ᶰ°Konͧsti> So DDNet 14 server bugged 18:43 <+bridge> [ddnet] yes i think it rules out firewall issues since 1. its lan server and 2. it works fine with old ddnet server on lan on this same computer 18:43 <+bridge> [ddnet] i was testing ddnet 10.62 server on lan a couple hrs ago 18:43 <+bridge> [ddnet] <ᶰ°Konͧsti> Joining via localhost also not working 18:44 <+bridge> [ddnet] tahts what i always do 18:44 <+bridge> [ddnet] <ᶰ°Konͧsti> xd 18:44 <+bridge> [ddnet] <ᶰ°Konͧsti> Im too lazy 18:44 <+bridge> [ddnet] <ᶰ°Konͧsti> :kek: 18:44 <+bridge> [ddnet] `bind f9 "connect 127.0.0.1:8303"` 18:44 <+bridge> [ddnet] same 18:45 <+bridge> [ddnet] atleast the latest version works completely fine for me 18:46 <+bridge> [ddnet] downloaded from ddnet.tw? 18:46 <+bridge> [ddnet] did a git reset, removed my build folder, built the server and the client, launch server, connect 18:46 <+bridge> [ddnet] oh 18:46 <+bridge> [ddnet] i didnt try that 18:51 <+bridge> [ddnet] master stablest thing in the whole world 18:56 <+bridge> [ddnet] <ᶰ°Konͧsti> lmao 19:39 <+bridge> [ddnet] @deen k, got it working with mixing XAMPP & Jekyll build directory (damn windows). But now... is there a chance to also generate the pages from ddnet-scripts? :f 19:40 <+bridge> [ddnet] absolutely not 19:41 <+bridge> [ddnet] though so, not mentioning I wouldn't even guess which script to use xd 19:41 <+bridge> [ddnet] k 21:04 <+bridge> [ddnet] <0xc000f> Guys i'm making a trainning server but right now my "bots-dummies" are showed in server-browser and i dont wanna do that bcoz i know is banneable so.. someone can help me? 21:17 <+bridge> [ddnet] @deen https://ddnet.tw/news/ if you click on the newest one, `2020-06-24 » DDNet 14.0` the browser tries to download file `ddnet-14.0` instead of opening the news page. My guess is that the permalink is missing `/` at the very end 21:19 <+bridge> [ddnet] @Learath2 common translate for 1.14+, but the problem is that i cannot translate "Connect Dummy" and "Disconnect Dummy" with the fact that this version (and somehow the older once too) won't come with those two, or if there's one, then all of them combined. Please look up for what might cause this to happen. 21:19 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725792285425664050/hungarian.txt 21:19 <+bridge> [ddnet] @Learath2 common translate for 1.14+, but the problem is that i cannot translate "Connect Dummy" and "Disconnect Dummy" with the fact that this version (and somehow the older ones too) won't come with those two, or if there's one, then all of them combined. Please look up for what might cause this to happen. 21:19 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725792285425664050/hungarian.txt 21:21 <+bridge> [ddnet] @Learath2 how can i filter by head branch, i cant figure out what the correct one is 21:40 <+bridge> [ddnet] @jao yeah I had the same issue 21:40 <+bridge> [ddnet] I guess prs have a a branch name in them that you can use, but just random refs idk 21:41 <+bridge> [ddnet] I was thinking of checking whether a ref is a branch and using that 21:41 <+bridge> [ddnet] @Soreu nah, that's a problem with file endings for directories. works fine in nginx 21:42 <+bridge> [ddnet] https://ddnet.tw/news/ddnet7-server-0.9/ works though, while https://ddnet.tw/news/ddnet-14.0 doesn't 21:45 <+bridge> [ddnet] oops, you're right 22:00 < Obito634> Hello 22:00 <+Obito634> Guys i sorry for disturb 22:00 <+Obito634> But now i found my faker 22:00 <+Obito634> Somebody knows who giving master bans? 22:00 <+Obito634> I heard its noby 22:00 <+Obito634> I will thank for help 22:01 <+bridge> [ddnet] someone in teeworlds? 22:01 <+bridge> [ddnet] what master bans? 22:01 <+Obito634> ye 22:01 <+Obito634> someone 22:01 <+Obito634> and still faking 22:02 <+Obito634> while 2 weeks 22:02 <+Obito634> I can share screenshot 22:02 <+Obito634> If need 22:02 <+bridge> [ddnet] I don't understand. What's a master ban? 22:02 <+Obito634> i know about master bans 22:02 <+Obito634> from status/tw 22:03 <+bridge> [ddnet] ah, those have nothing to do with ddnet 22:03 <+bridge> [ddnet] they are about banning servers from mastersrv 22:03 <+bridge> [ddnet] because the servers are doing something bad, like misreporting player number 22:03 <+bridge> [ddnet] this also has nothing to do with banning players 22:04 <+Obito634> but there have alternative vac ban kind? 22:04 <+Obito634> Like ban for ip or id of motherboard 22:04 <+bridge> [ddnet] Even if there was such things, both are easy to avoid 22:05 <+bridge> [ddnet] @deen Am I right with the feeling that theme switcher isn't just plain script, since the `href="/css-halloween.css"` actually points to `/css/css-empty.css` ? :F 22:11 <+bridge> [ddnet] not sure if it has been reported yet but if someone specs while being dragged they are invisible 22:11 <+bridge> [ddnet] @Ryozuki did you already fix it to show dashed skin when the tee actually disappears, or not yet? xD 22:12 <+bridge> [ddnet] its fixed 22:12 <+Obito634> Soo, there no bans 22:12 <+Obito634> Only for ip from 1 server? 22:13 <+bridge> [ddnet] no 22:13 <+bridge> [ddnet] yes 22:13 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/725805860257005639/Flux_2020-06-25_22-09-15.demo 22:13 <+Obito634> Yes or nope? 22:13 <+bridge> [ddnet] @Soreu it's implemented in nginx 22:13 <+bridge> [ddnet] uhh 22:13 <+bridge> [ddnet] no global id bans 22:13 <+bridge> [ddnet] yes, each server has their own ip bans 22:14 <+bridge> [ddnet] https://hookrace.net/blog/theme-switcher-nginx/ 22:15 <+bridge> [ddnet] https://tenor.com/view/dance-dancing-hearts-happy-kiss-gif-9942838 22:15 <+bridge> [ddnet] yeey, you mentioned me on Your blog 22:16 <+Obito634> global id, how it works? 22:17 <+bridge> [ddnet] not with teeworlds/ddnet 22:17 <+bridge> [ddnet] in other games the client gets it from the os and sends it to the server 22:17 <+bridge> [ddnet] then the server bans you 22:17 <+Obito634> On example people can be banned on all ddnet servers? 22:18 <+bridge> [ddnet] ddnet needs global ban system 22:18 <+bridge> [ddnet] but doesnt have, no 22:20 <+bridge> [ddnet] and yeah that type of hardware ban system would be impossible in an open source game like this i think 22:20 <+bridge> [ddnet] the biggest reason those kinds of ban systems work is that there is a cost of getting banned 22:20 <+bridge> [ddnet] it's either financial or time 22:21 <+bridge> [ddnet] get banned on league and there goes your account you played for years on, get banned on CoD and there goes 40$ 22:21 <+bridge> [ddnet] also i think those two games dont let u just edit the client to make it send a different id 22:21 <+bridge> [ddnet] get banned in dota, there goes ur 2k$ 22:22 <+bridge> [ddnet] :justatest: 22:23 <+bridge> [ddnet] @onby well you could 22:23 <+bridge> [ddnet] wouldnt u have to dissect how the network protocol works and edit packets as theyre sent out 22:23 <+bridge> [ddnet] you assign the player a unique id, he gets banned, he needs a new id, 22:24 <+bridge> [ddnet] oh 22:24 <+bridge> [ddnet] for which he'll have to pay, or lose all progress 22:24 <+bridge> [ddnet] how do u associate the id with the player tho 22:24 <+bridge> [ddnet] you could do it like the older games like diablo2 where you don't care who uses the key 22:25 <+bridge> [ddnet] or you could do it the newer way like nintendo 22:25 <+bridge> [ddnet] they now ship certificates signed by nintendo with their cartridges, which you can use to prove you own the game and go online 22:25 <+bridge> [ddnet] they can also revoke certificates, so you get banned with a game cartridge, it's never going online again 22:26 <+bridge> [ddnet] "lose all progress" is more of an incentive for some gametypes than others 22:26 <+bridge> [ddnet] 3ds encrypts the roms 22:26 <+bridge> [ddnet] yet i played on a 3ds emulator 22:26 <+bridge> [ddnet] The DRM stuff is a lost cause, it's always getting broken 22:26 <+bridge> [ddnet] if ur a nameless tee who just wants to aimbot on servers that dont even keep track of anything then that wont really discourage u 22:27 <+bridge> [ddnet] but they can with a 100% certainty prevent you from going online with it 22:27 <+bridge> [ddnet] <ᶰ°Konͧsti> noby 22:27 <+bridge> [ddnet] @onby exactly, so you don't have to pay for a key, nor is there any lost time in getting banned, thus we can't have good bans 22:28 <+bridge> [ddnet] not as good as that kindof hardware ban yeah 22:28 <+bridge> [ddnet] but ip (range) bans are still pretty effective when theres anti vpn 22:28 <+bridge> [ddnet] hardware bans don't work and have never worked 22:28 <+bridge> [ddnet] not close to 100% but still pretty good 22:29 <+bridge> [ddnet] the hardware is yours, the OS is yours, you get to show the game whatever you want 22:29 <+bridge> [ddnet] lol, true 22:29 <+bridge> [ddnet] microsoft has been doing a sort of HWID for a while, call them up tell them you need to reactivate your key and they won't ask any questions 22:29 <+bridge> [ddnet] even they know they can't rely on it 22:30 <+bridge> [ddnet] The perfect banning system exists, and it's asking for a national id card 22:30 <+bridge> [ddnet] lol 22:30 <+bridge> [ddnet] koreans have been doing it for 2 decades now, works fine for them 22:31 <+bridge> [ddnet] if u dont mind losing over half the players sure 22:31 <+bridge> [ddnet] phone numbers are also used pretty commonly 22:32 <+bridge> [ddnet] steam did it for csgo and prime matchmaking 22:32 <+bridge> [ddnet] well valve not steam 22:32 <+bridge> [ddnet] Anyway, you need a unique identifier and it should be something that's not easy to get 22:32 <+bridge> [ddnet] i guess it goes back to the whole idea that theres always a tradeoff between convienence and security 22:32 <+bridge> [ddnet] also privacy in this case 22:33 <+bridge> [ddnet] I think croatian eOI cards have an anonymous certificate aswell 22:33 <+bridge> [ddnet] a remnant of a failed online voting scheme 😄 22:34 <+bridge> [ddnet] that doesnt sound like a good idea 22:34 <+bridge> [ddnet] I don't think it's possible to have online voting 22:35 <+bridge> [ddnet] I think we discussed this before, but to give someone the right to vote, you need to know who they are, and when you give them the "ballot" there is nothing to stop you from marking it per each person 22:35 <+bridge> [ddnet] I wouldn't want the government to know how I vote 22:36 <+bridge> [ddnet] relevant 22:36 <+bridge> [ddnet] oh the red shirt guy 22:38 <+bridge> [ddnet] @Learath2 you want to review my changes so I can release 14.0.1? 22:38 <+bridge> [ddnet] oh sure 22:38 <+bridge> [ddnet] Feels like I should include the 3 remaining fixes at least 22:38 <+bridge> [ddnet] thanks! 22:38 <+bridge> [ddnet] red shirt guy :D 22:39 <+bridge> [ddnet] Yeah, I watched a few of his videos and never noticed that he's always wearing red shirts 😄 22:41 <+bridge> [ddnet] this chat parsing is like incredibly fragile 22:49 <+bridge> [ddnet] yeah, sorry about that 22:50 <+bridge> [ddnet] as Zwelf said, a net msg would be cleaner 23:15 <+bridge> [ddnet] I didn't read everything these 2 days, but you guys know that //spec midair is a thing now? 23:32 <+bridge> [ddnet] I donated to DDnet 🙂 How do I get my name to appear on donars list 😄 23:33 <+bridge> [ddnet] xd 23:37 <+bridge> [ddnet] @ImJustANobody just wait, deen checks it regularly and updates the website 23:51 <+bridge> [ddnet] @n000b How does he know which name to put on based on my email ? Since it's not related : 23:51 <+bridge> [ddnet] Forum account? Dunno normally it isn't a problem