17:54 < bridge> fixed 17:54 < ChillerDragon> pog 17:54 < ChillerDragon> can i get ws-client and bridge too 17:54 < ChillerDragon> ah wait 17:54 < bridge> some spammer abused IRC so I set +m 17:54 < ChillerDragon> you set the mode not me 17:54 < ChillerDragon> globally 17:54 < ChillerDragon> sure that also works 17:54 < ws-client> ping 17:54 < bridge> Pong 17:54 < ws-client> we so back! 17:54 < ws-client> finally 17:55 < bridge> seems like some error handling would be good for your clients 17:55 < bridge> if they didn't tell you that +m was the problem 17:55 < ChillerDragon> err_cannotsendtochan 17:55 < ChillerDragon> 404 17:55 < ChillerDragon> from my js lib 17:55 < ChillerDragon> `#ddnet: Cannot send to channel ` from weechat 17:55 < bridge> but it wasn't shown to the user? 17:56 < ChillerDragon> oh no took me 1 day talking to the void to figurure out nobody sees my messages xd 17:56 < bridge> oof. error handling! 17:56 < ws-client> but then when i looked in the logs i did not know what was causing err_cannotsendtochan 17:59 < ws-client> @heinrich5991 i am always a bit hesitant to just pipe any kind of error which i dont really know its format of to the users 17:59 < ws-client> might leak some infromation i dont want to leak 17:59 < bridge> did you at least send *any* error to the user? 17:59 < ws-client> no xd 18:00 < bridge> then send a redacted error 18:00 < ws-client> sounds good 18:00 < ws-client> i am not sure if in general my fear is even justified 18:01 < ws-client> but a error means i messed something up and something unexpected happend and my users now know exactly what. That should make it easier to further exploit. 18:02 < ws-client> or the backtrace might straight up contain `/home/moms_maiden_name/code/proj/lib.js:8 Uncaught SyntaxError: Unexpected token '{'` 18:03 < ws-client> will you use the hardware for ddnet? 18:03 < bridge> Yes 18:03 < ws-client> then its perfectly on topic 18:04 < bridge> we talk about general hardware all the time, ask away! 18:05 < bridge> ChillerDragon: I'd give the most detailed error message to the user 18:05 < ws-client> yea thats nice 18:05 < ws-client> but isnt it also scary? 18:07 < bridge> e.g. I do that in the https masterserver for ddnet 18:07 < bridge> try `curl -i https://master1.ddnet.org/ddnet/15/register` 18:08 < ws-client> Did you write the string `HTTP method not allowed` ? 18:09 < bridge> isnt that just the regular 405 response? 18:09 < ws-client> passing on errors from an unknown source to the user might contain any information 18:09 < bridge> I did not write that message, ChillerDragon 18:09 < bridge> (you can see the mastersrv code, it's just three files or so) 18:10 < ws-client> i can't come up with a good example right now but can't you imagine a scenario where you see an error message and your first thought is "nice now i know exactly how to fully break the system" 18:10 < ws-client> security by obsecurity 18:10 < ws-client> i rather not reveal that i am running pyson 2 in my crash logs 18:10 < bridge> write a better software chiller xd 18:11 < ws-client> fakof abuse admin 5991 muted me -.- 18:11 < ws-client> i had no bugs 18:11 < bridge> :justatest: 18:12 < bridge> i mean its better for your programs to be able to reveal error messages to its users 18:12 < bridge> you'll know whats going wrong at least 18:12 < ws-client> i as the admin of the tool can check the logs 18:13 < ws-client> and if there is a bug that can be exploited i want my users to know nothing about it 18:13 < bridge> imagine if its not web service kekw 18:13 < bridge> isnt it possible for you to find out that a channel has the +m flag and just output that for example? 18:13 < bridge> if someone wants to break your system theyll do it anyway 18:13 < ws-client> well if its not a server and running on the users device then its a different story 18:13 < bridge> then at least tell your server that *some* error occured 18:13 < ws-client> ye that sounds good 18:14 < ws-client> im just curious if anyone can follow my thought here 18:14 < ws-client> how error details can be dangerous 18:14 < ws-client> @meloƞ i had the error in the logs i didnt know what it meant 18:15 < bridge> So I build a gaming PC back in 2020 and I am looking to either upgrade my hardware or build a new PC. 18:15 < bridge> I have some knowledge about this stuff, but I am not in to the market so I am not sure if I should wait for new parts to drop or if the prices are currently too high. 18:15 < bridge> 18:15 < bridge> My current build: 18:15 < bridge> Graphics Card: SAPPHIRE Radeon™ RX 5700 XT NITRO+ 8GB 18:15 < bridge> Mainbord: MSI MPG B550 GAMING PLUS 18:15 < bridge> CPU: RYZEN 5 3600X 18:15 < bridge> CPU Cooler: BeQuiet Dark Rock Pro 3 18:15 < bridge> Ram: 16 GB Corsair Vengeance 3600mhz (XMP Optimized) 18:15 < bridge> 18:15 < bridge> My last two builds were both AMD and I am still unsure to this day whats better, if I should maybe try out NVIDIA/INTEL. 18:15 < bridge> I never had any problems with AMD and I think the prices are pretty fair for what you get, but I still don't understand why the majority of people are on NVIDIA/INTEL builds. Maybe I am lacking information about this topic, but it would be nice to know if I should actually try out NVIDIA/INTEL. 18:15 < bridge> 18:16 < bridge> I would like to upgrade/build a new PC that can handle atleast 260fps @ 1080p in all sorts of games since I have a 240hz Monitor. 18:17 < ws-client> @heinrich5991 here u go i will do it some day xd https://github.com/discord-irc/irc-websockets/issues/11 18:17 < bridge> i jsut don't see anything that you can break in irc-proxy lol 18:17 < bridge> nuclear codes or what xd 18:18 < ws-client> its more the vps its running on 18:18 < bridge> amd is gonna release Zen 5 soon™️ - i am enjoying my current build (even tho it was pretty pricely, given i maxxed it out) - 18:18 < bridge> 18:18 < bridge> if you just want to upgrade, i would absolutely grab another stick of 16gb RAM to get at 32gb, newer games eat that for some reason, the rest still looks good enough tho - are you having fps issues on newer games? 18:18 < ws-client> that should not be pwned 18:18 < bridge> amd is gonna release Zen 5 soon™️ - i am enjoying my current build (even tho it was pretty pricely, given i maxxed it out, but its full AMD aswell) - 18:18 < bridge> 18:18 < bridge> if you just want to upgrade, i would absolutely grab another stick of 16gb RAM to get at 32gb, newer games eat that for some reason, the rest still looks good enough tho - are you having fps issues on newer games? 18:18 < bridge> how can you pwn it via irc-proxy watafak 18:18 < bridge> chiller just likes to pwn things 18:19 < ws-client> @zhn yes if the error message reveals some log4j kind of situation 18:19 < bridge> rest in peace chillers formatted rpi4 18:19 < ws-client> xd 18:19 < bridge> :kek: 18:19 < bridge> just run it in docker 18:19 < ws-client> docker is not meant for security 18:19 < ws-client> but i also dislike it 18:19 < bridge> what is unsafe about docker :o 18:19 < bridge> no you just dislike it 18:19 < bridge> it fits there perfectly 18:20 < ws-client> its not designed to be a secure sandbox 18:20 < ws-client> but yes in reality docker exploits are rare but real 18:20 < ws-client> it for sure adds some layer of protection 18:20 < bridge> they're real in cases when pwner has access to your machine 18:21 < bridge> or your docker container runs with privileges it shouldnt run with 18:21 < bridge> and you never lift privileges if you are not working with some specific software 18:21 < bridge> maybe look into smth like this then: https://kubernetes.io/de/docs/concepts/workloads/pods/#pods-verwenden 18:21 < bridge> if security is a concern 18:22 < bridge> My build is still perfectly fine and everything runs flawless, but I have fps problems in some games. 18:22 < bridge> Its pretty weird, for example: I have 1000fps in Minecraft (without shaders and texturepack) but only 180-220fps in Valorant even tho I play on lowest possible settings and this is pretty annoying for me. 18:22 < bridge> 18:22 < bridge> Note: I have Windows + Games on a NVME M.2 SSD 18:22 < bridge> /de #pods-verwenden 18:22 < bridge> ah gg german link 18:22 < bridge> sry 18:22 < bridge> gg 18:22 < ws-client> i dont speak beerlang 18:22 < bridge> valorant just sucks ig xd 18:22 < bridge> chiller is prolly the most german of us all 18:22 < bridge> maybe look into smth like this then: https://kubernetes.io/docs/concepts/workloads/pods/ 18:23 < bridge> do you really read technical stuff in german @blaiszephyr 18:23 < ws-client> schnitzel 18:23 < bridge> doesn't it require kernel mode malware to run 18:23 < bridge> yes :( 18:23 < bridge> wtf 18:23 < ws-client> i would not use containerization for anything serious 18:23 < ws-client> i dont like its complexity 18:23 < bridge> not afaik 18:23 < ws-client> its full of pain points 18:23 < bridge> you will use no error handling xd 18:24 < bridge> but tbh im not that familiar with containerization in general, reitw could speak hours about that 18:24 < bridge> chiller review pr 18:24 < bridge> :simp: btw 18:24 < ws-client> pyjama dragon is alr falling asleep jxsl 18:24 < bridge> @blaiszephyr not sure if you missed it c: 18:25 < bridge> i couldn't run valorant only because this kernel mode shit refused to run on my custom windows 18:25 < bridge> give feedback so I can continue D: 18:25 < ws-client> uff 18:25 < ws-client> i have a look 1s 18:25 < bridge> @ryumaaaa nvidia has better drivers to go with, windows + nvidia = high fps usually 18:25 < bridge> i did! lol - you could just check your task-manager and see what is actually bottlenecking - your specs look great so i either assume: the GPU is outdated for valorant | your RAM is getting capped | riot games is a bully 18:26 < ws-client> ye its fucked either way @jxsl13 i dont like violating golang core ideals 18:26 < bridge> keep or rename? 18:26 < ws-client> uff 18:27 < ws-client> lets go full camel? 18:27 < ws-client> DdnetExItem 18:27 < ws-client> xd 18:27 < bridge> Alright, I'll check that out. Thank you :o7: 18:27 < bridge> Ddnet should be called Ddnet, true 18:28 < ws-client> ofc 18:28 < bridge> k, imma change it then 18:28 < ws-client> xD 18:28 < bridge> Dummydragracenetwork 18:28 < bridge> yes. 18:28 < bridge> gotta focus on reader 18:28 < bridge> which is more tricky it seems 18:28 < bridge> KirbyGameMod 18:28 < bridge> reader impl 18:29 < ws-client> EndOfFileSymbol 18:29 < ws-client> ez dodge 18:29 < bridge> freezenextgeneration 18:29 < bridge> my next pr is gonna be done without the shift-key now 18:30 < ws-client> i think its time to abandon go 18:30 < ws-client> it doesnt align with ddnet style guide xd 18:31 < bridge> it's time to abandon ddnet 18:31 < ws-client> I mean they explicitly mention "Url" and "appID" being illegal 18:31 < bridge> doesn't align with Go style guide 18:31 < bridge> no 18:31 < bridge> appID is legal 18:31 < bridge> Url not 18:31 < ws-client> eh ye "appId" right 18:32 < ws-client> and since the heinrich format moment ddnet enforces Url and ClientId 18:32 < ws-client> <:justatest:572499997178986510> 18:32 < bridge> what PR @jxsl13 18:32 < ws-client> i retrained my brain from years of ClientID to ClientId and now you tell me i have to ClientID again? xd 18:32 < bridge> huffmann repo of chiller 18:32 < ws-client> @heinrich5991 this is annoying me https://go.dev/wiki/CodeReviewComments#initialisms 18:33 < bridge> might have started a holy war 18:33 < bridge> by accident 18:33 < bridge> :justatest: 18:33 < bridge> i go shopping - gl 18:33 < bridge> ChillerDragon: rust says the opposite 18:33 < ws-client> good ol rust vs go 18:33 < ws-client> is rust even that oppiniated? 18:33 < bridge> time to abandon 18:33 < bridge> rust 18:34 < bridge> xD 18:34 < ws-client> why can't i have just one universal strict guide for style so i never have to think about it again 18:34 < bridge> why is there not magical AI doing the code formatting and introducing security related bugs at the same time 18:34 < ws-client> use one formatter 18:34 < bridge> no* 18:34 < ws-client> and call the main branch MASTER in all git repos 18:34 < ws-client> axaxax 18:35 < bridge> master branch doesn't exist, did you mean `main` ahh moment 18:35 < ws-client> just let there be one way for everything 18:36 < bridge> Go does that but whenever people find ground about stuff being unprecise or not easily tonautomate, then people will argue about it forever. 18:36 < bridge> waste of time 18:38 < bridge> Golang authors have very decent taste in code 18:39 < ws-client> ok fk it lets follow ddnet style and not go 18:40 < ws-client> EOFSymbol would mean that it should be ClientID and MsgID 18:41 < bridge> changed, don't care 18:41 < bridge> whatever you prefer. 18:41 < bridge> just added a little bit of context information 18:42 < bridge> as the language is opinionated 18:43 < bridge> will cry to all Go devs about our loss in this small battle. 18:43 < bridge> xD 18:44 < ws-client> xd 18:46 < bridge> This is what it looks like when im running Valorant. 18:46 < bridge> FPS ranging from 180-300 - comes to what is happening on my screen obviously. 18:46 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1258101563042304080/image.png?ex=6686d1e3&is=66858063&hm=1374a6af1514919d43459811687f2d7b21c8ae5c8083a0eb1fc203e6031f183d& 18:47 < ws-client> so ready to merge @jxsl13 ? 18:48 < bridge> sure 18:48 < bridge> will continue implementing the Reader in a second PR in order not to make this one too big 18:49 < bridge> hm, some evil eof lingering somewhere 18:49 < bridge> D: 18:49 < ws-client> xD 18:50 < ws-client> i had that compile error on a daily basis with MsgID 18:50 < ws-client> thats why i pushed https://github.com/ddnet/ddnet/issues/7750 18:50 < bridge> This is what it looks like when im running Valorant. 18:50 < bridge> FPS ranging from 180-300 - comes to what is happening on my screen obviously. 18:50 < bridge> 18:50 < bridge> I am using AMD's replay feature and I have other apps open in the back which I don't want to give up, so I guess im just gonna get another 16GB of Ram and a new CPU. 18:50 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1258101563042304080/image.png?ex=6686d1e3&is=66858063&hm=1374a6af1514919d43459811687f2d7b21c8ae5c8083a0eb1fc203e6031f183d& 18:50 < ws-client> as long as it is allowed to do both there will be compile errors caused by casing 18:51 < bridge> pushed 18:51 < bridge> Go devs are mournin my loss 18:52 < bridge> xD 18:55 < ws-client> speaking of style guides.. 18:55 < ws-client> if you write js you better use double standard 18:55 < ws-client> https://github.com/Flet/doublestandard 19:01 < bridge> sorry 19:01 < bridge> but I have double standards 21:06 < bridge> After a long pause I did this xd 21:06 < bridge> Greedy meshing in teeworlds 21:06 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1258136858299470017/image.png?ex=6686f2c2&is=6685a142&hm=dfc44777dd2612bdf868a2aef1445d7adeece87c72201f4b88e508e9b84eb8fc& 21:20 < bridge> Devs are u guys know abt tik tok ddnet 21:20 < bridge> where all upload videos abt ddnet 21:20 < bridge> @chillerdragon you awake? 21:30 < bridge> Ladies, gentlemen and @learath2 look at that! 21:30 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1258142818757509120/image.png?ex=6686f84f&is=6685a6cf&hm=36322f5c39f5819712b536e1063327fb49c491e1f1f679f69f5a83e9175cff8b& 21:34 < bridge> heh nice :D 21:34 < bridge> you group together tiles with the same rotation+id? 21:35 < bridge> can you explain what that is in layman's terms :o? 21:36 < bridge> This is first version, only tiles with same id, maybe I will add check for flags 21:38 < bridge> Grouping a lot of triangles (polygons) to this small groups. 21:38 < bridge> More triangles = more GPU work & more RAM/VRAM usage 21:38 < bridge> have you done performance measurements? :) 21:39 < bridge> Nope, I just checked fps on vulkan and opengl on debug build. Same fps with greedy meshing and without 21:40 < bridge> Idk why xdd 21:40 < bridge> is that for rendering purposes in the client to improve fps or something like that? 21:40 < bridge> ye 21:40 < bridge> hm , cool 21:41 < bridge> have you tried zooming out far? there you could probably get the biggest performance diff 21:42 < bridge> kinda reminds me of that shader loading stuff that big games do. might be the same here, just based on the played map? 21:42 < bridge> Ye, I thought about this, but I'm so lazy for test this rn 21:42 < bridge> Wdym? 21:43 < bridge> when starting some graphics intensive games, they always do shader stuff ._. dunno the terms 21:44 < bridge> which takes ages and is supposed to improve performane, whatsoever 21:44 < bridge> is this related to that :o? 21:45 < bridge> could one improve performance based on like the currently loaded map? 21:45 < bridge> Maybe shaders just compiling or caching? Greedy meshing optimizing mesh, not shaders 21:45 < bridge> i guess both 21:45 < bridge> hm, k, I see 21:46 < bridge> You need just reconnect for cache all meshes for map 21:46 < bridge> that's cool 21:49 < bridge> Hm, if I'll add chromium to teeworlds, this means what I can play teeworlds in teeworlds 🤔 22:58 < bridge> Yes I am an agendered blob of slime and I approve of this compiler 23:19 < bridge> 😃