00:03 < bridge> Do routers typically have UPnP enabled by default nowadays? 04:12 < bridge> I don't think so 10:18 < bridge> ye 10:18 < bridge> they do 10:22 < bridge> it highly depends on which provider 10:25 < bridge> i dont use provider routers 10:25 < bridge> tthey bad 10:32 < bridge> I mean ISP 10:33 < bridge> ah u use a custom router 10:34 < bridge> @ReiTW the one they gave me i think went OOM when i torrented, cuz torrent likes to open 200 connections and it couldnt handle it xd 10:34 < bridge> i bought another and it works charm 10:34 < bridge> usually I fix this by not doing torrent 10:34 < bridge> lol thats not an option 10:34 < bridge> torrent or any p2p are awesome 10:34 < bridge> also i download anime via torrent 10:35 < bridge> 1gb per episode 10:35 < bridge> max quality 10:35 < bridge> i buy legal 10:35 < bridge> nobo 10:35 < bridge> the ones i watch arent available 10:35 < bridge> I never torrent, better, I buy 10:35 < bridge> your hentai xD 10:35 < bridge> i dont watch hentai rly xd 10:36 < bridge> only thing I've downloaded was Hokuto No Ken 10:36 < bridge> well anyway, torent is really risky for illegal stuff 10:36 < bridge> Classic 10:36 < bridge> also torrent can be used for legal things 10:36 < bridge> u always also upload the content 10:36 < bridge> arch linux offers iso download via torrent, and its way faster 10:36 < bridge> classic wut 10:36 < bridge> i wish all distros offered that 10:36 < bridge> cuz their dl servers are always slow 10:36 < bridge> i can download the arch iso at 70mb/s 10:37 < bridge> ;~; 70mb/s wtf 10:37 < bridge> germany just invented the stone axe 10:37 < bridge> steam also reaches that speed for me xd 10:38 < bridge> Switzerland so close, yet so far from here 😄 https://michael.stapelberg.ch/posts/2022-04-23-fiber7-25gbit-upgrade/ 10:38 < bridge> I reach 96Mb/s with direct download on arch 10:38 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096716148936028270/image.png 10:38 < bridge> i have 600/600 contract but i could get the 1gb one xd 10:39 < bridge> oh 25gbit now 10:39 < bridge> tbh it's useless af 10:40 < bridge> the funny thing is, i especially want ur upload 10:40 < bridge> thats the biggest shit about DSL 10:40 < bridge> 10:40 < bridge> 250mbits down.. not good but ok 10:40 < bridge> 10:40 < bridge> 40mbits up 10:40 < bridge> like wtf 10:40 < bridge> xd 10:40 < bridge> why u dont have fiber 10:41 < bridge> bcs germany is in the stone age of internet 10:41 < bridge> I don't think that's a technical limitation, just what the ISPs set 10:41 < bridge> in spain, its odd to have dsl now 10:41 < bridge> not the other way around 10:41 < bridge> because most people care about high number for down 10:41 < bridge> here in france we can have 10gbps but shared 10:41 < bridge> yeah but this is such a german problem 10:41 < bridge> how much do u pay for that 10:42 < bridge> too much xD 10:42 < bridge> let me see 10:42 < bridge> > In terms of fiber optic penetration in homes, Spain has the most in Europe, with more than 70%, only behind Belarus. With 60% and more, there are Sweden and Portugal, while Romania and France touched 50% in 2021, as seen in the graph below. 10:42 < bridge> 54,95€ apparently 10:42 < bridge> https://www.telefonica.com/en/communication-room/telefonica-will-achieve-100-fibre-coverage-in-spain-by-2025-and-lead-the-implementation-of-5g/ 10:42 < bridge> according to telekom website 10:42 < bridge> lol 10:42 < bridge> lmao I pay 49€ for 1gb/s down & 400mbps up 10:43 < bridge> lol 10:43 < bridge> they all greedy and bad in ger xd 10:43 < bridge> high speed internet is the basic of modern society 10:43 < bridge> its such a game changer 10:44 < bridge> yeah 10:44 < bridge> i am surrounded by old ppl xD 10:44 < bridge> If you switch every 2 years between Vodafone and Deutsche Telekom, you should pay around 25 € / month average 10:44 < bridge> yep, but vodafone has no dsl rights here 10:44 < bridge> so i am forced to the monopolist 10:44 < bridge> and i defs dont buy cable internet again 10:45 < bridge> I thought Telekom was forced to open their DSL to all competitors 10:45 < bridge> This is probably Vodafone who don't want to sell you DSL but give you Cable instead? 10:45 < bridge> i dunno, i can buy 16mbits from the city 10:46 < bridge> possible, or they are speed limited? 10:46 < bridge> 10:46 < bridge> 10:46 < bridge> anyway, vodafones cable internet sucks so hard xD 10:46 < bridge> ping jitter of 10 pre programmed 10:46 < bridge> Existing customers are always treated like dirt. Sometimes it helps to call them and say you'll cancel the contract, and they'll reduce price by 50% (and bind you in a new contract for 2 years again) 10:46 < bridge> yep 10:47 < bridge> damn same in france 10:47 < bridge> time to move to bulgaria where i get 1gbit for 8€ / month xD 10:47 < bridge> It might depend on the age of the telephone cable, but everywhere I lived all DSL providers were possible 10:47 < bridge> ~1980 probably 10:48 < bridge> we had make the router as close to the street as possible to even get 250mbits xD 10:52 < bridge> well i really dunno why they dont have DSL here 10:52 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096719643453964298/image.png 10:52 < bridge> maybe i should call them and ask 10:52 < bridge> are u sure they even offer ftth 10:53 < bridge> i'd be happy with DSL for now too ^^ 10:53 < bridge> FTTH wont come here soon 10:53 < bridge> except the city will do it or a compatitor 10:53 < bridge> but telekom wont do it 10:53 < bridge> damn bad 10:54 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096720186696024214/image.png 10:54 < bridge> :frozen: 10:55 < bridge> lmao and the telekom ppl that scam all ppl here 10:55 < bridge> 10:55 < bridge> she ringed, and said they sell fiber internet (but they obv mean fiber to the cluster, not FTTH) 10:55 < bridge> 10:55 < bridge> for me this was clear.. but defs scam, bcs in germany we usually only say fiber internet when we mean FTTH 10:56 < bridge> well everywhere xd 10:57 < bridge> google's speedtest is bad lol 10:57 < bridge> yeah 10:57 < bridge> it changes a lot by which sv it pickss xd 10:57 < bridge> with speedtest.net I reach the max 10:57 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096721002727231488/image.png 10:57 < bridge> yea 10:58 < bridge> ah I don't have 400mbps but 300 up 10:58 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096721234089234452/image.png 10:58 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096721245887803492/image.png 10:58 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096721311323140156/Screen_Shot_2023-04-15_at_3.58.35_AM.png 10:59 < bridge> internet wars 10:59 < bridge> @snail we need ur 1gb 10:59 < bridge> I could have cheated lmao 10:59 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096721505561350236/image.png 10:59 < bridge> not editd 11:00 < bridge> just our tw server 11:00 < bridge> :FeelsAmazingMan: 11:00 < bridge> weird to see noby here 11:00 < bridge> :NOBYISBOT: 11:00 < bridge> sometimes I highly doubt he's american 11:01 < bridge> he's awake the night, he sleeps the day 11:01 < bridge> @noby how is ur gf dealer 11:01 < bridge> its friday night 11:01 < bridge> :nobytroll: 11:01 < bridge> i just got home at 330am 11:01 < bridge> i actually have a sleep cyle now 11:02 < bridge> those are 2 dif ppl 11:02 < bridge> hope it won't affect ur human obfuscation skill :issou: 11:02 < bridge> no dw it wont 11:02 < bridge> :troll: 11:02 < bridge> well I moved city 11:02 < bridge> implying i only have 1 dealer 11:02 < bridge> :justatest: 11:02 < bridge> big f 11:02 < bridge> u went to countryside 11:02 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096722325040271471/image.png 11:03 < bridge> its good but high ping 11:03 < bridge> :justatest: 11:03 < bridge> :justatest: 11:03 < bridge> no u, ive been busy lately :pepe: 11:03 < bridge> orange 11:03 < bridge> nice i even get scamed rn xd 11:03 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096722461283856435/image.png 11:03 < bridge> feels bad to be deutsch 11:04 < bridge> u should consider changing country :ReiTroll: 11:04 < bridge> or move to a big city 11:04 < bridge> they usually have FTTH more often 11:04 < bridge> or to a village, they also have it more often xD 11:05 < bridge> do u live in a cave 11:05 < bridge> kind of 11:05 < bridge> :justatest: 11:05 < bridge> only good thing is, houses arent so expensive here while still being a city 11:05 < bridge> https://tenor.com/view/computer-anime-gif-7240609 11:06 < bridge> leave the internet 11:06 < bridge> join the wired 11:06 < bridge> xd 11:06 < bridge> already seen that logo somewhere 11:06 < bridge> u mean pfp? 11:06 < bridge> y 11:07 < bridge> probably 11:07 < bridge> stole it off google 11:07 < bridge> :kek: 11:07 < bridge> @snail how does it feel to retire at 67 11:07 < bridge> :troll: 11:07 < bridge> lmao we'll just continue to fuck up things in france 11:07 < bridge> till they remove it 11:08 < bridge> next president will remove it 11:08 < bridge> :monkalaugh: 11:08 < bridge> :justatest: 11:09 < bridge> RIP rejected was sad af, but they did a new request this thursday 11:09 < bridge> they removed the special treatment for cops 11:09 < bridge> :kek: 11:12 < bridge> isnt that from the football club 11:12 < bridge> 11:12 < bridge> or is chicken the general animal logo for france xd 11:12 < bridge> could have been alot of things, but checkd & it's only a design by a random 11:12 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096724793258164254/1200px-Logo_C389quipe_France_Football_2018.png 11:13 < bridge> https://en.wikipedia.org/wiki/Gallic_rooster 11:13 < bridge> lel 11:13 < bridge> 11:14 < bridge> yeah ur link is better 11:14 < bridge> ALL HAIL CHICKEN 11:14 < bridge> 🐔 11:14 < bridge> chicken is good 11:14 < bridge> good symbol, and good food 11:24 < bridge> you mean cock🐔 :troll: 11:28 < bridge> here my awesome gimp skills created this for our national french tw squad 11:28 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096728754887340133/image.png 11:29 < bridge> make the tee red blue white red :greenthing: 11:29 < bridge> make the tee blue white red :greenthing: 11:42 <+ChillerDragon> when i call to ``clamp`` in the ddnet code base where is it defined? 11:42 <+ChillerDragon> aaa 11:42 <+ChillerDragon> ``using std::clamp; 11:42 <+ChillerDragon> in math.h 11:42 <+ChillerDragon> i see 11:42 <+ChillerDragon> kthxby 12:29 < bridge> :poggers2: 14:19 <+ChillerDragon> @moderator ```connect 45.141.57.22:8317``` pls 14:29 <+ChillerDragon> helo? 14:32 < bridge> halo please use #reports :^) 14:36 <+ChillerDragon> how to access reports? 14:37 < bridge> left mouse button 14:38 <+ChillerDragon> spawnblocker left als solved 14:38 <+ChillerDragon> irc harrasment is a serious offense jopstr 14:39 < bridge> tru 14:40 < bridge> What's up with the weird blue square and the line? 14:40 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096777178835849357/Screenshot_20230415-1439412.png 14:41 < bridge> that's my absolutely perfect gimp skills in action 14:41 < bridge> :brownbear: :f3: 14:56 <+ChillerDragon> can one apply for moderator w out discord these days? 14:57 < bridge> forum 14:59 < bridge> add matrix bridge 15:01 <+ChillerDragon> oh forum is still a thin? nice 15:03 < bridge> ChillerDragon are you the moon man 15:12 < bridge> Wot 15:16 < bridge> You seem to have no clue what is going on around DDNet 15:16 < bridge> :Ray: 15:26 < bridge> chiller been around since old ages 15:26 < bridge> but he is in his cave 15:28 < bridge> The Hobbit: The Desolation of ChillerDragon 15:44 <+ChillerDragon> spon blioka back on multeasy 15:45 <+ChillerDragon> @DefaultO ah cmn just because i thought the forum was dead? last time i asked if i can submit maps w out discord the answer was no and i was told everything moved from forum to discord 15:59 < bridge> the forum is dead lets be honest xd 15:59 < bridge> just because 1 person post stuff once per week xD 15:59 < bridge> its not active 16:09 <+ChillerDragon> multeasymap 16:09 <+ChillerDragon> no mod online all day? :c 16:16 < bridge> u didnt even properly ping moderators 16:16 < bridge> so they will never read it 16:19 < bridge> ddnet oynarken yanlısıkla çözünürlük degistirdim ve ddnet açılınca karanlık ekran ayarları düzeltmemiyorum fabrika ayarlarına nasıl çeviricem ddnetle kafayı bozdum yardım edin lütfen 16:19 < bridge> I accidentally changed the resolution while playing ddnet and when ddnet is opened, I can't fix the dark screen settings 16:19 < bridge> yardım edin 16:19 < bridge> plase 16:20 <+ChillerDragon> he left 16:20 <+ChillerDragon> i did @moderator 16:21 < bridge> @Moderator 16:21 < bridge> it doesn't ping 16:22 < bridge> I got pinged 16:22 < bridge> doesnt show as highlighted on desktop application 16:22 < bridge> wassup 16:22 < bridge> also hi everyone 16:29 < bridge> wb 16:29 < bridge> where u been ;~; 16:29 < bridge> busy 16:34 < bridge> wtf, the game is really weird sometimes... cant show it in the video, but i was in the UI voting a map... suddenly it does this in the background xDD 16:34 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096805702321848420/AiP-Bores_2023-04-15_16-32-08_WTF.demo.mp4 17:12 < bridge> Uploading a map is different from applying for a mod 17:12 < bridge> Moved to #📬submit-maps 17:13 < bridge> maybe in the future they have a apply-for-mod channel where they send in a google forms link. 17:13 < bridge> maybe in the future they have a apply-for-mod channel where they send in a google forms link. whenever they need more. 17:16 < bridge> @RoleMentions from the matrix bridge don't work here 17:16 < bridge> although... 17:16 <+ChillerDragon> dicrimination 17:16 <+ChillerDragon> how to get rid of spawnblockers without discord then? 17:17 < bridge> @ChillerDragon try `<@&252523225810993153>` 17:17 <+ChillerDragon> <@&252523225810993153> 17:17 < bridge> Heh 17:17 < bridge> That worked 17:17 <+ChillerDragon> hoh 17:17 <+ChillerDragon> yes? 17:17 < bridge> Yes 17:17 <+ChillerDragon> ok nica ima save that 17:17 <+ChillerDragon> thanks 17:17 < bridge> cool 17:17 <+ChillerDragon> sorri mods 17:17 <+ChillerDragon> :justatest: 17:17 < bridge> now i can see more chillerdragons 17:18 < bridge> @TsFreddie yo are you at new work or what did i miss bro 17:18 < bridge> maybe, i forgot how updated this channel were 17:18 < bridge> i work at here now https://netvios.163.com/ 17:19 < bridge> looks cool xd 17:20 < bridge> ye. but this is still a pretty small company with unjustified expectations for their projects. 17:20 < bridge> Is that a game? 17:20 < bridge> VR Game? 17:21 < bridge> but i'm getting paid so it's a million times better than the last company i worked for lol 17:21 < bridge> they are a VR game publisher for the chinese market. 17:21 < bridge> Wait, did that ping? 17:21 < bridge> I got pinged 17:21 < bridge> Yes 17:21 < bridge> Ah, a game publisher 17:21 < bridge> they do want to make in-house titles so that's why I'm hired 17:21 < bridge> Ohnoes 17:21 < bridge> What's your role? network again? 17:21 < bridge> full stack game development i guess? 17:22 < bridge> <-StormAx> :poggers2: 17:22 < bridge> same as the last one tbh 17:22 < bridge> they just hire like one or two guys and expect to see a full game in 5 months 17:22 < bridge> The fact that people can ping roles from matrix sounds concerning 17:22 < bridge> # 17:23 < bridge> ban abusers maybe 17:23 < bridge> 🧐 17:23 <+ChillerDragon> @everyone incoming axaxax 17:23 < bridge> ah thought u like network designer, bcs u always shared prediction code between multiple clients 😄 17:23 < bridge> ye cuz that's the core stuff the game needs 17:24 < bridge> this company still wants multiplayer games, so i guess it really didn't change a whole lot for me 17:24 < bridge> i hope they expect hypercasual quest game from 90s :greenthing: 17:25 < bridge> but are you developing the game, or the engine or both ? 😄 17:25 < bridge> gotta love companies with 0 scaffolding to just hire someone and expect to ship a game in less than a year 17:25 < bridge> we use unity (yes, again) 17:25 < bridge> ah ok 😄 17:26 < bridge> rip :/ 17:26 < bridge> at least u are through that time now 17:26 < bridge> Oh no, another game platform 17:27 < bridge> lol the new company still have no accumulated code base tho so I'm building stuff from the ground up again 17:27 < bridge> i'm always impressed how many game studios are out there 😄 17:27 < bridge> plus VR game is not very well established so I got more stuff to build this time around lol 17:28 < bridge> are you at least considered senior now hehe 17:28 < bridge> junior title and salary with senior job probably 17:28 < bridge> lmao, even tho you outclass them all 17:30 < bridge> we do have a technical leader, but he don't code that often, the just guy steering everyone. and I'm one of the only two who actually develop games in the companies. so... yeah, i'm probably at the top percentage in terms of experiences and skills lol 17:30 < bridge> we do have a technical leader, but he doesn't code that often, just a guy steering everyone. and I'm one of the only two who actually develop games in the companies. so... yeah, i'm probably at the top percentage in terms of experiences and skills lol 17:32 < bridge> I'm expecting to switch jobs again one or two years down the line 17:33 <+ChillerDragon> !help 17:33 <+ChillerDragon> !ping 17:33 <+ChillerDragon> !mods 17:33 < chillerbot> @modsersators 17:33 <+ChillerDragon> ok nice 17:34 < bridge> ok 17:45 < bridge> were you paid upfront? 17:47 < bridge> wdym upfront 17:49 < bridge> like you get x money to do project in x months 17:49 < bridge> or still monthly 17:49 < bridge> nah, I'm an employee, so I just get salary 17:49 < bridge> aha 17:49 < bridge> because when your company gets a project 17:49 < bridge> if he got money at all 17:50 <+ChillerDragon> !help 17:50 < bridge> Hello this is your personal assistence, how can i help? 17:50 <+ChillerDragon> wowow 17:50 < bridge> Write a poem about teeworlds please 17:51 < bridge> In Teeworlds, a world of colors bright, 17:51 < bridge> Where tiny creatures battle and fight, 17:51 < bridge> The stage is set for endless fun, 17:51 < bridge> With guns and grenades, it's never done. 17:51 < bridge> 17:51 < bridge> The maps are varied, the modes diverse, 17:51 < bridge> From capture the flag to deathmatch fierce, 17:51 < bridge> Each player brings their unique style, 17:51 < bridge> With jumps and dodges, they cover miles. 17:51 < bridge> 17:51 < bridge> The graphics may be simple, but the gameplay's deep, 17:51 < bridge> As teams strategize and their foes they sweep, 17:51 < bridge> The tension builds with every shot, 17:51 < bridge> As players vie for that winning spot. 17:51 < bridge> 17:51 < bridge> With clans and tournaments, the community thrives, 17:51 < bridge> As players push their skills to new heights, 17:51 < bridge> And in this world of tees and balls, 17:51 < bridge> Friendships are formed, and rivalries dissolved. 17:51 < bridge> 17:51 < bridge> So if you're looking for a game to play, 17:51 < bridge> Where skill and teamwork are on full display, 17:51 < bridge> Join the Teeworlds community today, 17:51 < bridge> And experience the joy of fragging your way. 17:51 < bridge> :kek: 17:52 < bridge> actually a nice poem lel 17:53 <+ChillerDragon> !help 17:53 < chillerbot> https://github.com/ChillerDragon/ddnet-bot-irc eth0=192.168.178.22 commands: !mods 17:54 < bridge> troll 17:54 <+ChillerDragon> jopstr pro promt engineer 17:55 < bridge> oh my god robyt3 is still at it 17:56 < bridge> he's a beast xd 17:56 < bridge> ChillerDragores: do i get it right. you use IRC because u dont want to use JavaScript matrix, just to use a JavaScript plugin in your IRC? 17:56 < bridge> oh hi 17:56 < bridge> it's been like two years since the IME stuff in teeworlds i think? 17:57 < bridge> minimum 😄 17:57 < bridge> we need more asian contributors 17:57 < bridge> sorry i've been captured by money 17:57 < bridge> same 17:58 < bridge> Money money money, must be funny 17:58 < bridge> i open up my editor in non work hours, then i that think "do i rly wanna be coding rn in my free time or play games" 17:58 < bridge> and close the editor 17:58 < bridge> about 5 times a day 17:59 < bridge> we all know that feeling bro 17:59 <+ChillerDragon> aw shit jopstr 18:00 <+ChillerDragon> nah 18:00 < bridge> ha, I really don't know what games to play so I don't have that problem 18:00 <+ChillerDragon> on my desktop i still run ssh to chat xd and run weechat no js in use 18:00 < bridge> a mmo, it will suck ur lige 18:00 < bridge> life 18:00 < bridge> im addicted to ffxiv 18:00 <+ChillerDragon> but on my gaming raspberry pi i run a js standalone client but raspi is fast enough it can run all the js 18:00 < bridge> but I watch youtube for like 10 hours during the weekend 18:01 < bridge> social life: 100/100 18:02 < bridge> I've been trying to turn my personal projects into sellable products. but it's been almost half a year without any progress. 18:03 < bridge> its luck or intense click baiting and spamming 18:03 < bridge> choose your side 18:03 < bridge> The one thing I finished is a Unity editor extension. but Unity Asset Store rejected me three times already, every resubmit takes a week :cammostripes: . 18:04 < bridge> Unity is like, indirect link is not allowed. And I only had one link which is my discord invite link. 18:05 < bridge> and they reject me cuz it was discord.gg/code not discord.com/invite/code 18:05 < bridge> lol what 18:06 < bridge> :monkaS: 18:07 < bridge> tsfreddies secret discord server 19:02 < bridge> I'll probably finish porting it to ddnet in the next weeks 19:12 < bridge> what even is IME 19:13 < bridge> asians typing their letters on a keyboard 19:14 < bridge> <-j-a-f-a-r-1375> 😍 19:22 < bridge> ohhh 20:35 < bridge> In a world of tees and flags, 20:35 < bridge> Where the battle never sags, 20:35 < bridge> Teeworlds is the game we play, 20:35 < bridge> To fight and win another day. 20:35 < bridge> 20:35 < bridge> With guns and hooks and bombs in hand, 20:35 < bridge> We traverse the maps, a dangerous land, 20:35 < bridge> Dodging traps and dodging foes, 20:35 < bridge> We aim to be the last one who goes. 20:35 < bridge> 20:35 < bridge> The tees are small, but fierce and bold, 20:35 < bridge> Their colors bright, their stories told, 20:35 < bridge> Each one unique, with skills to show, 20:35 < bridge> In Teeworlds, they put on a show. 20:35 < bridge> 20:35 < bridge> The flags are what we fight to take, 20:35 < bridge> A prize that's worth the risk we make, 20:36 < bridge> We capture them and hold them tight, 20:36 < bridge> And score a point to win the fight. 20:36 < bridge> 20:36 < bridge> In Teeworlds, we find our thrill, 20:36 < bridge> A game that tests our strength and skill, 20:36 < bridge> We battle hard, we battle true, 20:36 < bridge> And in the end, we see it through. 20:36 < bridge> 20:36 < bridge> So come and join us, if you dare, 20:36 < bridge> In Teeworlds, we'll take you there, 20:36 < bridge> To a world of tees and flags, 20:36 < bridge> Where the battle never sags. 20:47 < bridge> too long didnt read 20:47 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096869508590878720/157973d912cb19d5c016f2c8035e24ace9f7c56e9c8db1784ccc07d9efb751d3_1.jpg 21:04 < bridge> `CPlayer` copy assignment has gone after adding `m_UniqueClientId` duh 21:04 < bridge> making object pool with forward iterator seems to be hard xd 22:12 < bridge> https://godbolt.org/z/z971ojEhx ended up with this 22:16 < bridge> can't figure out how to pass `Value()` as rvalue 22:22 < bridge> where do u pass it? 22:25 < bridge> in `operator*()` 22:26 < bridge> its a temporary object 22:26 < bridge> yeah i understand it 22:26 < bridge> but i don't know how to make its lifetime longer 22:28 < bridge> u can only do that with const_reference 22:28 < bridge> cpp treats that case different 22:29 < bridge> just use rust 22:29 < bridge> for mutables its not possible 22:29 < bridge> huh 22:29 < bridge> in Value() itself u must return a reference already 22:29 < bridge> then it would work 22:30 < bridge> @Jupeyy_Keks can u make a invalid reference in cpp? 22:30 < bridge> ofc 22:30 < bridge> kek 22:30 < bridge> what a question 22:30 < bridge> how would that work 22:30 < bridge> how i supposed to tho 22:30 < bridge> u have a gun, ofc u can shoot urself xD 22:30 < bridge> XD 22:30 < bridge> rewrite ddnet in rust pls 22:30 < bridge> i beg you 22:30 < bridge> zwelf has worked on that 22:30 < bridge> simply destroy the object 22:34 < bridge> what is that? `new (sizeof(Type), &m_Data[ObjectId]) Type(std::forward(Args)...);` 22:34 < bridge> constructing object on `&m_Data[ObjectId]` address 22:34 < bridge> with size `sizeof(Type)` 22:35 < bridge> cpp metaprogrammation 22:35 < bridge> wow ok never seen that XD looks like mallocs 22:35 < bridge> placement new 22:35 < bridge> https://stackoverflow.com/questions/365887/how-do-malloc-and-new-work-how-are-they-different-implementation-wise 22:35 < bridge> that syntax is ugly imo 22:35 < bridge> not as bad as function pointers though 22:36 < bridge> good enough 22:36 < bridge> anyway question is open xd 22:36 < bridge> how to prolongate `Value()`'s lifetime if its just kind of alias of `m_pPool->Get(m_Id))` 22:37 < bridge> and actually appears to be `(Type *)` which is `T` for iterator 22:37 < bridge> so pointer can be nulled 22:40 < bridge> use rust 22:41 < bridge> sry i woke up troll today 22:41 < bridge> well its night already 22:41 < bridge> why do you need the iterator class to be generic? what is the role of T? 22:41 < bridge> sometimes i think that your vocabulary fits in `{ 'use', 'rust' }` xd 22:41 < bridge> function pointer types exist in rust 22:42 < bridge> cuz i don't want to make another class to write const iterator 22:42 < bridge> compiler does it for me 22:42 < bridge> `myhandler:: c_void>(sdadasdsa)` 22:42 < bridge> since your iterator class is nested in CObjectPool you already have access to the `Type` template parameter 22:43 < bridge> thanks cap 22:43 < bridge> ```rust 22:43 < bridge> fn add(x: i32, y: i32) -> i32 { 22:43 < bridge> x + y 22:43 < bridge> } 22:43 < bridge> 22:43 < bridge> let mut x = add(5,7); 22:43 < bridge> 22:43 < bridge> type Binop = fn(i32, i32) -> i32; 22:43 < bridge> let bo: Binop = add; 22:43 < bridge> x = bo(5,7); 22:43 < bridge> ``` 22:43 < bridge> ah ok sorry 22:43 < bridge> learn to read 22:44 < bridge> its last thing to solve xd 22:44 < bridge> then i can just replace new statements in ddnet code and delete old macros 22:45 < bridge> why do u need the reference in the for loop 22:45 < bridge> i don't need 22:45 < bridge> are the dummies real objects? 22:45 < bridge> `for (auto &pPlayer : m_apPlayers)` kind of 22:45 < bridge> mh ok 22:46 < bridge> isnt auto kind of another footgun 22:46 < bridge> its like the bad kind of type inference 22:46 < bridge> auto &x, auto x 22:46 < bridge> what if x is a reference already 22:46 < bridge> weird stuff 22:46 < bridge> `m_apPlayers` is array of pointers 22:46 < bridge> yeah im not talking about ddnet 22:46 < bridge> cpp in the general sense 22:46 < bridge> let does the same 22:47 < bridge> cpp is like python after rust 22:47 < bridge> same feeling after switching between cpp and python 22:47 < bridge> even for cpp this was an insult 22:47 < bridge> it is xd 22:47 < bridge> hmm idk 22:47 < bridge> use c instead 22:48 < bridge> rust type inference is way better 22:48 < bridge> and it fits with the algebraic data types it has 22:48 < bridge> c++ doesnt have real sum types 22:49 < bridge> ADT are like a basic feature any modern language needs 22:49 < bridge> https://en.wikipedia.org/wiki/Algebraic_data_type 22:49 < bridge> > Two common classes of algebraic types are product types (i.e., tuples and records) and sum types (i.e., tagged or disjoint unions, coproduct types or variant types) 22:50 < bridge> anyway @gerdoe for what u programmed i dont really see a chance 22:50 < bridge> xd sry for my ted talk 22:50 < bridge> i'd rewrite it a bit probably or dont use a refernce in the for loop 22:51 < bridge> its good 😉 22:51 < bridge> its okey the main thing that it needs to be done xd 22:54 < bridge> Since it's always pointer don't return reference in the operator overload 22:54 < bridge> Simply return T 22:54 < bridge> But honestly the solution is a bit weird 22:54 < bridge> Maybe don't iterate over raw pointers at all 22:55 < bridge> References on raw pointers 22:55 < bridge> I dunno xd 22:55 < bridge> As function parameter sometimes useful 22:57 < bridge> `CObjectPool` should imitate iterating over `CPlayer *m_apPlayers[MAX_CLIENTS]` so thats why iterator is added 23:00 < bridge> actually if `auto &pPlayer : m_apPlayers` and `auto pPlayer : m_apPlayers` is the same i can just walk through code and replace it 23:00 < bridge> Yes. But in your case it's more dangerous 23:01 < bridge> T& would be a pointer to a temporary even in the for loop 23:01 < bridge> So a future dev might accidentally do this 23:01 < bridge> compiler prevents it anyway 23:02 < bridge> u can do that 23:02 < bridge> ```cpp 23:02 < bridge> T m_value; 23:02 < bridge> // ... 23:02 < bridge> reference operator*() { m_value = Value(); return m_value } 23:02 < bridge> ``` 23:02 < bridge> but don't i guess, it looks fishy af 23:02 < bridge> if the warning is on 23:02 < bridge> and not thread safe 23:02 < bridge> don't think so 23:02 < bridge> ``` 23:02 < bridge> error: cannot bind non-const lvalue reference of type 'Dummy*&' to an rvalue of type 'Dummy*'``` 23:02 < bridge> what exactly did u do 23:03 < bridge> i mean in the for loop after replacing the references in the iterator with T 23:03 < bridge> ah oopsie another one 23:03 < bridge> ```error: cannot bind non-const lvalue reference of type 'Dummy*&' to an rvalue of type 'CObjectPool::iterator::value_type' {aka 'Dummy*'} 23:03 < bridge> 122 | for(auto &d : Dummies) { 23:03 < bridge> | ^~~~~~~ 23:03 < bridge> ``` 23:03 < bridge> i think u get me wrong 23:03 < bridge> reference operator*() { return Value(); } 23:03 < bridge> gets 23:03 < bridge> T operator*() { return Value(); } 23:04 < bridge> ``` 23:04 < bridge> reference operator*() { return Value(); } 23:04 < bridge> gets 23:04 < bridge> T operator*() { return Value(); } 23:04 < bridge> ``` 23:04 < bridge> u cannot return a reference anyway 23:04 < bridge> the way objectpool is built 23:04 < bridge> ah fair 23:05 < bridge> but T is always Type * 23:05 < bridge> yes 23:05 < bridge> yeah got it 23:05 < bridge> so programmer can't get `auto &a : abc` working in that case anyway 23:07 < bridge> maybe if the objectpool is built differently 23:07 < bridge> but i think as is, u cant 23:08 < bridge> u could maybe do it rust like and iterate over Optional 23:08 < bridge> 23:08 < bridge> its basically the same as nullptr then 23:08 < bridge> but even then the for loop stays a problem with auto& 23:17 < bridge> are those draggers not predicted clientside? 23:17 < bridge> https://cdn.discordapp.com/attachments/293493549758939136/1096907262116761651/image.png 23:18 < bridge> it seems like it 23:28 < bridge> Yo, did you guys fix the staggering issue on ddnet mapping tool when saving? It feels nice now, but I don't have an indicator now whether I saved or not 😄 23:37 < bridge> another bug that became a feature 23:38 < bridge> lmao 23:40 < bridge> :feelsbossman: 23:41 < bridge> Now make an text "Map Saved!" appear, when saving and it's a feature :lol: 23:41 < bridge> <エピツクゲーマー> does someone know how do i get rainbow commands and other shits in lan servers? 23:41 < bridge> Now make a text "Map Saved!" appear, when saving and it's a feature :lol: 23:42 < bridge> similar to block servers? I think block servers have server side configurations, but I can be wrong here, if you use another client, it can also have configurations like that too 23:44 < bridge> <エピツクゲーマー> ye, like kog servers have a rcon commands that can make players rainbow, explosive etc xD 23:44 < bridge> <エピツクゲーマー> i've been trying to figure it out so hard 23:44 < bridge> @deen Also a good HUD feature would be to be able to see the name tags better by fading out other players' texts that are not near the middle point of the camera and be customizable by changing the visibility 23:45 < bridge> Wanted to make an issue of it on Github, but I'm lazy and nobody would react to this other than you anyway xd