00:30 <+bridge> [ddnet] @fokkonaut do you have an example of how doors work on your server? 00:32 <+bridge> [ddnet] SSwitchers = new[NumSwitchers + NumPlots + 1]; 00:32 <+bridge> [ddnet] 00:32 <+bridge> [ddnet] They are created like a normal door, just that the, have a different tile that is used to create it, and this other tile starts with 1 again and the switch number for plot door 1 is numswitchers + plot number, so plot door 1 = numswitchers + 1 00:33 <+bridge> [ddnet] the m_Number is also correctly assigned, it would just need to get that information to the client, and then I can send the full switchstate, so the client knows where to put the higher numbers, or lets say then it firstly knows about these high Numbers because it can not fetch them from the map 00:34 <+bridge> [ddnet] I can add you to the repo to see it, if needed 00:34 <+bridge> [ddnet] ok, thats ok, I think I got it 00:34 <+bridge> [ddnet] thanks 00:34 <+bridge> [ddnet] np 00:35 <+bridge> [ddnet] so, yes, if you use a different tile, then it couldnt be predicted from the map 00:36 <+bridge> [ddnet] for predicting ddnet doors I was just planning to use the map directly. for you door you would have to look at each netobject and assign them to collision 00:36 <+bridge> [ddnet] but it creates a laser which will be sent using Enttype_door and the correct switch number, that should be enough no? 00:37 <+bridge> [ddnet] But that does make it reeeally unintuitive 00:38 <+bridge> [ddnet] Also, there is an editor in my mod, which lets you place laser walls where you want, always having number 0 00:38 <+bridge> [ddnet] They would also not be predicted 00:38 <+bridge> [ddnet] same for other mods that dont create laser doors from this exact tile 00:38 <+bridge> [ddnet] yeah, so using the netobject would be more flexible for mods 00:39 <+bridge> [ddnet] is it also possible to remove these lasers? 00:39 <+bridge> [ddnet] (and it was the way to go i thought, if you want to do prediction for draggers etc too) 00:39 <+bridge> [ddnet] Yes 00:39 <+bridge> [ddnet] So they had to be dependent on the netobj laser and entity ex 00:39 <+bridge> [ddnet] i think 00:39 <+bridge> [ddnet] I see 00:42 <+bridge> [ddnet] so, to each time the client receives a new netobject it will have to update those tiles in collision. and when the netobject disappears, it would have to go through those tiles again and replace them with air (?) 00:43 <+bridge> [ddnet] "so, each"* 00:44 <+bridge> [ddnet] yes, but you would need to be very careful not to remove existing doors when they cross 00:44 <+bridge> [ddnet] it would be nice to have actually, but it would require a little bit of thinking 00:44 <+bridge> [ddnet] i can show you code i made on my server 00:45 <+bridge> [ddnet] its on low level collison aswell xd 00:45 <+bridge> [ddnet] yeah, the implementation of doors in ddnet is unfortunately ugly as well 😛 00:46 <+bridge> [ddnet] thats also an bug in the server: if you cross two doors with different numbers, the one door will have no stopa in the middle where its getting crossed so you fall through 00:46 <+bridge> [ddnet] yes, door code is madness 00:46 <+bridge> [ddnet] many hours of thinking is in my mod xD it was a pain but i tjink i got wverything working 00:47 <+bridge> [ddnet] for prediction it would be better if the physics did not depend on the order that the doors are inserted or removed in 00:47 <+bridge> [ddnet] truw 00:48 <+bridge> [ddnet] im thinking 00:48 <+bridge> [ddnet] or, perhaps it doesnt 00:48 <+bridge> [ddnet] it does 00:48 <+bridge> [ddnet] after removing a door you would have to iterate through all the other doors and put them back though, in case any of them got overwritten 00:49 <+bridge> [ddnet] yea, mh 00:51 <+bridge> [ddnet] tbh, i think newly added doors should just not overwrite old data 00:52 <+bridge> [ddnet] that would probably be it, since doors arent crossing odten at all 00:52 <+bridge> [ddnet] often* 00:53 <+bridge> [ddnet] doors of different numbers* 00:57 <+bridge> [ddnet] yes, except perhaps if you add two crossing doors, then remove the first one 00:57 <+bridge> [ddnet] but not allowing (or at least not supporting) crossing doors would be the easiest 00:59 <+bridge> [ddnet] yes, but i think newly added doors should not overwrite the existing ones, as then it wouldnt be a problem if a built laser wall (id 0) crosses a normal door 01:00 <+bridge> [ddnet] yes, wouldnt for that case 05:50 <+bridge> [ddnet] https://matrix.to/#/#oforexfx:matrix.org 08:32 <+bridge> [ddnet] spam 09:41 <+bridge> [ddnet] has anyone used influxdb 09:41 <+bridge> [ddnet] is it useful 09:41 <+bridge> [ddnet] im considering using it to log http requests 11:16 <+bridge> [ddnet] You can use https://www.timescale.com/, its a postgreSQL extension 11:16 <+bridge> [ddnet] But made for time-series data 11:17 <+bridge> [ddnet] So bascially the good thing is, you dont have to f*** around with InfluxQL & can use normal SQL instead. 11:26 <+bridge> [ddnet] postgres best 11:38 <+bridge> [ddnet] oh nice 11:38 <+bridge> [ddnet] cuz i use postgresql already 14:13 <+bridge> [ddnet] is there a base64 encoder in ddnet code? 14:23 <+bridge> [ddnet] no, why would we use base64? 14:23 <+bridge> [ddnet] And why do you need it? 14:28 <+bridge> [ddnet] i want to harden open\_link 14:28 <+bridge> [ddnet] i usually do base64 when passing untrusted args in shell 14:28 <+bridge> [ddnet] isnt curl or openssl providing some ? 14:29 <+bridge> [ddnet] Why not ask google? https://github.com/commontk/libcurl/blob/master/base64.h 14:29 <+bridge> [ddnet] yea also found that 14:29 <+bridge> [ddnet] curl so hard to use 14:29 <+bridge> [ddnet] wrong link though, that's not the official curl 15:39 <+bridge> [ddnet] Openssl also has a base64 encoder 15:39 <+bridge> [ddnet] Evp_encode or smrh 17:10 <+bridge> [ddnet] Q: is it good decision to move all vote-related stuff to new class? 17:16 <+bridge> [ddnet] https://dropbox.tech/security/zxcvbn-realistic-password-strength-estimation 17:16 <+bridge> [ddnet] Yes, this has been one of my first projects that I never got to finishing, it's actually rather tough to pull off 17:17 <+bridge> [ddnet] i tried to move vote-stuff to another class in 2xp if it is good enough i can try to port it to upstream 17:17 <+bridge> [ddnet] Voting uses a lot of context from gamecontext, the authstate of the player, the racestate, whether someone of the same ip already voted, how long the player was afk, whether there are any vetos, whether votes are being moderated, etc... 17:18 <+bridge> [ddnet] Anyway, I'd be happy to review a PR for this, what would be extremely desirable would be to have this class unit testable 🙂 17:54 <+bridge> [ddnet] don't give me any more ideas for vanilla refactoring :justatest: 18:53 <+bridge> [ddnet] 🧐 20:41 <+bridge> [ddnet] When do we make 2 client versions and let them compete against each other xD 23:17 <+bridge> [ddnet] why does ddnet not have razer chroma integration yet? :kek: 23:19 <+bridge> [ddnet] why does ddnet not have full joystick support yet? 🥺 23:19 <+bridge> [ddnet] maybe I'll port it from vanilla 23:20 <+bridge> [ddnet] if that's what you mean with full support 23:20 <+bridge> [ddnet] :poggers: 23:20 <+bridge> [ddnet] would be cool 23:24 <+bridge> [ddnet] ok lets make it 3 clients 23:24 <+bridge> [ddnet] the standard 23:24 <+bridge> [ddnet] the remove useless stuff 23:24 <+bridge> [ddnet] and the add gamer features