00:00 < bridge> You do kinda need something like a logic solver to end up at the optimal ordering of instructions 00:00 < bridge> Unless you are a very gifted individual 00:06 < bridge> lmao 00:06 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1420894305484148766/image.png?ex=68d70e71&is=68d5bcf1&hm=f499c6d0fb19ce834b7039b9d7e7e34dad34040f989e16180ab2b81b66a4dd83& 00:06 < bridge> what is this 00:06 < bridge> maybe my perf output is just very shit lmao 00:10 < bridge> wow now perf is segfaulting xD 00:10 < bridge> this is amazing 00:16 < bridge> welp 00:17 < bridge> i cant get it to work. maybe i need to reboot pc 00:17 < bridge> @totar samply with firefox ui does give us a flamegraph though 01:22 < bridge> can anybody recommend a good font? 01:22 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1420913311041585243/image.png?ex=68d72024&is=68d5cea4&hm=c49cfd8d1a572ea58a1d09efea9e6e49cb7c58b4bbe8965acf4fe1532152ba88& 02:09 < bridge> https://www.w3schools.com/icons/tryit.asp?icon=fas_fa-fighter-jet&unicon=f0fb 02:09 < bridge> there is a fighter jet icon 02:09 < bridge> coool 02:13 < bridge> why is imgui crashing :((((((((((( 03:35 < bridge> lgtm 03:35 < bridge> brcktrace? 03:36 < bridge> i copied the example exactly. i guess i should update to the newest version 03:48 < bridge> back 03:48 < bridge> bt 06:14 < bridge> morning 06:19 < bridge> gm 06:33 < bridge> i need to make a epoll like syscall 06:51 < Hhgb> Test 06:54 < Highland> Test 2 08:20 < bridge> axaxaxaxa gm @jupeyy_keks @essigautomat do you want to explain the this dude why ddnet is so bloated? https://github.com/teeworlds-community/teeworlds/issues/71#issuecomment-3336183884 08:25 < bridge> axaxaxaxa gm @jupeyy_keks @essigautomat do you want to explain this dude why ddnet is so bloated? https://github.com/teeworlds-community/teeworlds/issues/71#issuecomment-3336183884 08:25 < bridge> axaxaxaxa gm @jupeyy_keks @essigautomat do you want to explain this dude why ddnet is so bloated? https://github.com/teeworlds-community/teeworlds/issues/71#issuecomment-3336183884 08:33 < bridge> Ddnet runs better on modern hardware since the rendering is more cpu efficient, which is commonly the bottleneck 08:33 < bridge> He can turn on ogl 1.x or stop living in the past 08:38 < bridge> Send on gh xd 09:06 < bridge> this guy can be glad there is no middle finger emoji 09:06 < bridge> this guy can be glad there is no middle finger emoji on gh 09:18 < bridge> Nah xD don't want to be involved in these repos 09:43 < bridge> im moving 09:43 < bridge> flat 09:43 < bridge> gg 09:43 < bridge> but also stressful 09:43 < bridge> :justatest: 09:59 < bridge> nice, bigger? 10:27 < bridge> ye 10:43 < bridge> from 70m to 130 10:54 < bridge> Oh wow, sounds expensive xdd 10:55 < bridge> Where i live, I'd probably pay 2k+ for that 11:09 < bridge> its cheaper 11:09 < bridge> i go out of city 11:50 < __________> Test 11:51 < __________> What happened 11:53 < ws-client1> **** @Jupstar ✪ do you think that it is concerning that our game.svg contains minified javascript? 11:55 < __________> Test 2 11:56 < ws-client1> **** game.svg is the only affected file 11:56 < ws-client1> **** none of the others have it 11:56 < ws-client1> **** `!function(){const t="http://www.w3.org/2000/svg",e="http://www.w3.org/1999/xlink",s="http://www.w3.org/1999/xhtml",r=2;if(document.createElementNS(t,"meshgradient").x)return;const n=(t,e,s,r)=>{let n=new x(.5*(e.x+s.x),.5*(e.y+s.y)),o=new x(.5*(t.x+e.x),.5*(t.y+e.y)),i=new x(.5*(s.x+r.x),.5*(s.y+r.y)),a=new x(.5*(n.x+o.x),.5*(n.y+o.y)),h=new 11:56 < ws-client1> x(.5*(n.x+i.x),.5*(n.y+i.y)),l=new x(.5*(a.x+h.x),.5*(a.y+h.y));return[[t,o,a,l],[l,h,i,r]]},o=t=>{let e=t[0].distSquared(t[1]),s=t[2].distSquared(t[3]),r=.25*t[0].distSquared(t[2]),n=.25*t[1].distSquared(t[3]),o=e>s?e:s,i=r>n?r:n;return 18*(o>i?o:i)},i=(t,e)=>Math.sqrt(t.distSquared(e)),a=(t,e)=>t.scale(2/3).add(e.scale(1/3)),h=t=>{let e,s,r,n,o,i,a,h=new g;return 11:56 < ws-client1> **** oh shit that paste was longer than i thought 11:56 < ws-client1> **** is the bridge still ok? 11:56 < __________> [12:55] == Cannot send to channel: #teeworlds 11:57 < ws-client1> **** ah okay nice we good 11:57 < ws-client1> **** @Jupstar ✪ i would even add a no javascript rule to the CI 12:01 < __________> Test 3 12:11 < bridge> sounds scary 12:11 < G_> Test 12:12 < bridge> yes please 12:12 < G_> Did it work? 12:21 < G_> IRC Rules These are the rules for #teeworlds on Quakenet: Follow quakenet rules, you can find them at http://www.quakenet.org/faq/faq.php?c=136 Speak english, so everyone can understand what you say. Be relevant, this is not a a channel about anything, it's about teeworlds. Don't priv msg, if anyone knows and have time, they will answer any question posted in the channel, so everyone can see it. Don't advertise about other channels/goods/websites except if it 12:22 < G_> Oops 12:35 < bridge> @chillerdragon the javascript you posted is for meshgradiants in SVG2, doe we support SVG 2? 12:35 < bridge> it's not even implemented by most browsers afaict 12:36 < bridge> Well now we don’t 12:37 < bridge> I don’t like it, neither does jupstar. So we ban it! 12:37 < bridge> Checking the svg version is also a good idea @essigautomat 12:40 < bridge> @jupeyy_keks can I get you to take a look at the quad clustering PR again? 12:40 < bridge> Some day 12:41 < bridge> real 12:41 < bridge> so there's hope 🥲 13:31 < ws-client1> **** @scrumplex no way i randomly found an issue by you! I needed that xd https://github.com/acmesh-official/acme.sh/issues/2893 13:35 < bridge> > Looks like this previously accessed out-of-bounds for ghosts, for which ClientId == -2. Using the default tuning doesn't seem correct for ghosts though. To correctly handle ghosts, we might have to determine in which tune zone they are when updating/rendering them. We should also handle ghosts differently than passing client ID -2 to the player rendering functions, or at least extract that into a constant. 13:35 < bridge> 13:35 < bridge> @robyt3 what do I do about this? I don't get how this ever worked in the past 13:35 < bridge> ghosts have collision line? 13:36 < bridge> yes, and you can crash the client with it 13:36 < bridge> ghost's hook doesnt even render 13:36 < bridge> why do they have collision line 13:36 < bridge> yes, and you can/might crash the client with it 13:36 < bridge> should be deleted imo 13:37 < bridge> lol 13:37 < bridge> Was this broken at some point? This is the code in ghost.cpp: 13:37 < bridge> ``` 13:38 < bridge> GameClient()->m_Players.RenderHook(&Prev, &Player, pRenderInfo, -2, IntraTick); 13:38 < bridge> GameClient()->m_Players.RenderHookCollLine(&Prev, &Player, -2, IntraTick); 13:38 < bridge> GameClient()->m_Players.RenderPlayer(&Prev, &Player, pRenderInfo, -2, IntraTick); 13:38 < bridge> ``` 13:38 < bridge> Looks like it was intended that hook and hook line are rendered 13:38 < bridge> I've never seen a ghost hook ever 13:38 < bridge> same 13:38 < bridge> It's only a read access out of bounds so it might not crash because it accesses some valid value in the same structure 13:39 < bridge> hook could be fixed, collision line is useless for ghost 13:39 < bridge> How/Can I get the tune zone of a ghost? 13:40 < bridge> There are collision functions to get tunes at a position 13:40 < bridge> this would break with overridfe 13:40 < bridge> this would break with override 13:40 < bridge> this would break as soon as we add tune locks btw, 13:40 < bridge> There definitely is ghost hook in version 16.9 13:40 < bridge> 16.9 👴 13:41 < bridge> Yea, completely. The ghost format is pretty thin. 13:42 < ws-client1> **** can someone explain github wikis to me? Why was I just able to edit and instantly publish this wiki? https://github.com/acmesh-official/acme.sh/wiki/Change-of-default-CA-to-ZeroSSL 13:42 < ws-client1> **** how is that not dangerous? 13:43 < bridge> cuz git. 13:43 < bridge> yes totally, bad project settings probably 13:44 < bridge> there is definately a ghost hook in 19.4, just no collision line 13:45 < bridge> just tested it. 13:45 < bridge> nice change chiller 13:45 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1421100262927372380/Screenshot_20250926-134447.png?ex=68d7ce41&is=68d67cc1&hm=ccfe5c476c651c77df99ac797db17fd2d3f23614beab3b779d39e8f1c6022a7d& 13:45 < bridge> I suppose it never worked with the broken tuning value? 13:46 < bridge> I'm relieved I'm not the only one who can't spell definitely correctly every time. 13:46 < bridge> If there's no point to it, we can simply remove it, then the `RenderHookCollLine` function doesn't need to handle invalid client IDs at all (except by `dbg_assert` if you want) 13:46 < bridge> Back to the question, how I can fix that at all, if I should just return on ClientId -2 or if we prefer default tunings 13:46 < bridge> Don't call `RenderHookCollLine` for ghosts 13:46 < bridge> Remove unnecessary client ID checks 13:46 < bridge> What is clientId -1 btw? Because it has the same problem 13:47 < bridge> It doesn't look like `RenderHookCollLine` is called with any other invalid values 13:47 < bridge> It doesn't look like `RenderHookCollLine` is called with any other invalid client ID values 13:47 < bridge> So there's no need to handle that 13:47 < bridge> Because, as of 19.4, it has a lot of code for other clientIds, I just wonder why it exists at all 13:48 < bridge> I can just discard it all, nice 13:48 < bridge> Because, as of 19.4, it has a lot of code for invalid clientIds, I just wonder why it exists at all 13:48 < bridge> Unless someone wants hook collision lines for ghosts and there was a past version in which it worked 13:49 < bridge> idk why I'd ever want that 13:50 < bridge> Any opposition? If not I am going to remove invalid client ids fully from the hook coll line 13:55 < bridge> isnt it for hook coll line preview in settings 13:55 < bridge> or is that coded differently 13:55 < bridge> nvm maybe it is, i coded that 13:55 < bridge> :kek: 13:55 < bridge> I only find references in RenderPlayer and ghost.cpp 13:56 < bridge> and you probably just render a CLineItem xD 13:56 < bridge> yea i think so if i remember correctly 13:57 < bridge> okay looking into the ghost, the collision line could never have worked properly 13:57 < bridge> it can't detect player collisions properly in the past 13:57 < bridge> so the hook line would be dependend on the **current players** 14:05 < ws-client1> **** @milkeeycat thanks for english tutorial, fixed 14:17 < bridge> trying gdb scripts 14:17 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1421108339924013136/image.png?ex=68d7d5c7&is=68d68447&hm=0c770f20427e7d58e130d1dcbb207a6859fefcc7e507cfdba85e9d5fd191085d& 14:17 < bridge> any cool one out there 14:17 < Bgkfkgohofkbk> I don't get it 14:17 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1421108475551023206/image.png?ex=68d7d5e7&is=68d68467&hm=04439757db221d0ea20d6349b23eeda3e59149e18a4436ed7c0a576b4c1a85bc& 14:18 < bridge> i have a deadlock in a drop trying to get the allocator lock 14:18 < bridge> :justatest: 14:18 < Bgkfkgohofkbk> Huh 14:25 < Bgkfkgohofkbk> Huh 14:26 < Bgkfkgohofkbk> . 14:27 < ___> . 14:51 < bridge_> Fix your Admins !!! 15:12 < bridge_> where a deen 15:13 < bridge_> i get blocked for no reasn und than i want revange and get band 🙁 15:19 < bridge_> pls don't go for revenge, breathe in n out and #✉-create-a-ticket, we're generally trying our best to handle the situation, but us mods cannot determine who started it so you may be punished for it. 15:55 < bridge_> learn some psychological warfare so that mods think that you did not start it. 15:55 < bridge_> :justatest: 16:05 < bridge_> maintainer btw 16:15 < bridge_> https://tenor.com/view/moderator-moderator-cat-moderators-cat-moderators-mod-cat-gif-4813346009167675169 16:18 < bridge_> pipo 18:30 < bridge_> Why database query on the server can be done in less than 5s, but spent almost a billion year on my PC 18:31 < bridge_> Oh I guess I have some entry point of this problem 18:32 < bridge_> The sqlite downloaded from ddnet website haven't contain any primary key 18:33 < bridge_> I'm stupid, I directly test on the downloaded ddnet.sqlite file with only change the table name to add record_ before its name 18:33 < bridge_> I'm stupid, I directly test on the downloaded ddnet.sqlite file with only changing the table name to add record_ before its name 20:16 < bridge_> i did the same thing 20:16 < bridge_> is there a better way? 20:17 < bridge_> You can just add a primary key 20:17 < bridge_> or you just open ddnet-server.sqlite 20:17 < bridge_> and copy the statement 20:18 < bridge_> oh, this also mean you need a tool 20:18 < bridge_> to open the file and edit it 20:20 < bridge_> @kebscs 21:02 < bridge_> I wonder why the description of a vote was limited to be this short 21:12 < bridge_> and for those votes which doesn't do anything should be duplicatable 21:16 < bridge_> even if both the client and server recognize all of them to a same command, but because they won't execute any real function so it won't be a error then 21:17 < bridge_> I haven't deep dived in the voting module so it's just what I'm thinking it possibly be 23:27 < bridge_> OMG the Entity Framework is so great that literally let me forget I'm interacting with database 23:27 < bridge_> https://cdn.discordapp.com/attachments/293493549758939136/1421246834856169492/image.png?ex=68d856c2&is=68d70542&hm=c500fe98fe99fbe4aecf744063a00a53bd58e49938354158f37fcaf8f43b8b82& 23:29 < bridge_> no footguns here 23:55 < ws-client1> **** what even is that code? 23:55 < ws-client1> **** C++? 23:55 < ws-client1> **** `var`? 23:56 < ws-client1> **** `in`?