Minetest logo

IRC log for #minetest, 2019-01-02

| Channels | #minetest index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:11 huesal___ joined #minetest
00:20 huesal__ joined #minetest
00:24 Miner_48er joined #minetest
00:55 Markow joined #minetest
01:01 DoyleChris joined #minetest
01:01 DoyleChris happy new year
01:02 DoyleChris minetest server help.
01:02 DoyleChris i have 4.15 installed on Raspberry PI
01:02 DoyleChris and i have 4.17.1 running on my laptop
01:03 DoyleChris I moved my mods folder and world folder over and ran the command minetest --server --worldname Server and i get a error for mods installed.
01:04 sofar upgrade your server to at least 0.4.16
01:04 DoyleChris how
01:04 GreenDimond if you are running a debian-based linux distro you need to add the minetest repository
01:04 DoyleChris i have done sudo update and upgrade but it still lists 4.15
01:04 GreenDimond and install from there
01:04 GreenDimond sudo add-apt-repository ppa:minetestdevs/stable
01:04 sofar if you ask that question, you should re-evaluate your choice to run a Raspberry PI
01:05 DoyleChris well i dont have a pc
01:05 DoyleChris for the server but i have a pi3
01:05 DoyleChris sudo add-apt-repository ppa:minetestdevs/stable command not found
01:06 DoyleChris i am running the latest raspbian
01:07 GreenDimond Google how to add a repo on Raspbian then
01:11 DoyleChris i have etc/apt/source.list open but what do i add
01:19 timcu joined #minetest
01:22 DoyleChris im guessing it cant find the mods
01:35 DoyleChris how do i install mods on a new server
01:37 LazyJ joined #minetest
01:39 NathanS21 DoyleChris grab them with wget or git
01:40 NathanS21 cd to the mod directory and pull them from github.
01:42 DoyleChris when i installed minetest it didnt put a mod folder in  home/pi/.minetest
01:43 NathanS21 I don't think it ever does, you have to create that directory yourself.
01:44 DoyleChris ok. i copied the mod folder from my pc to raspberry pi.
01:46 DoyleChris i get this
01:46 DoyleChris 2019-01-01 19:47:28: [Main]: Using world specified by --worldname on the command line 2019-01-01 19:47:28: WARNING[Main]: NodeDefManager: Ignoring CONTENT_IGNORE redefinition 2019-01-01 19:47:28: ERROR[Main]: ModError: Failed to load and run script from /home/pi/.minetest/mods/unified_inventory/init.lua: 2019-01-01 19:47:28: ERROR[Main]: /home/pi/.minetest/mods/unified_inventory/init.lua:40: attempt to index field 'settings' (a n
01:47 NathanS21 You did upgrade the Minetest version correct?
01:47 NathanS21 It looks to me like it is seeing the code from the mods you just copied over.
01:47 DoyleChris i cant get it to upgrade
01:48 NathanS21 that might be the problem. Settings might be a newer feature that 4.15 doesn't have.
01:48 NathanS21 Could you possibly build a newer version on the PI?
01:49 NathanS21 I know the build time would probably be fairly long, but that would be an option to get the newer version.
01:49 NathanS21 I build the dev version every week with a script on my desktop, and it only takes a few minutes.
01:50 NathanS21 Obviously a desktop has a lot more processing power than a Pi3.
01:52 NathanS21 Not sure if you've seen this post on the forums. https://forum.minetest.net/viewtopic.php?f=10&t=15732 but somebody has full instructions on setting up a server on a pi
02:02 DoyleChris i got through the first part
02:18 DoyleChris can i build it from linux and run it on the pi
02:18 DoyleChris because i have linux on a usb stick that i can run
02:20 MinetestBot [git] paramat -> minetest/minetest_game: Add large cactus seedling 6688ddf https://git.io/fhqJW (2019-01-02T02:18:50Z)
02:23 NathanS21 You might be able to.
02:23 NathanS21 I've never tried that.
02:23 NathanS21 As long as they are both debian based I'd think there is a good chance it should work.
02:24 NathanS21 just make sure you use the build_in_place true option when building so you get all the binaries and stuff in the same folder.
02:26 Quiark it won't because it's a different CPU
02:26 Quiark you'd have to crosscompile which is hard to set up
02:27 Quiark just compile it on RPi, who cares if it takes half day
02:37 DoyleChris im trying it
02:37 DoyleChris fatal: unable to connect to anonscm.debian.org: anonscm.debian.org[0: 194.177.211.202]: errno=Connection refused anonscm.debian.org[1: 2001:648:2ffc:deb::211:202]: errno=Connection timed out
02:39 NathanS21 can you connect to that link with a different computer?
02:39 NathanS21 maybe the address has changed?
02:42 NathanS21 when I visit that link it says, The alioth.debian.org service is discontinued. Its replacement is a GitLab instance at salsa.debian.org.
02:42 NathanS21 Migration documentation is available on the wiki, and an archive of VCS repositories can be found on alioth-archive.debian.org.
02:42 NathanS21 2018-05-31.
03:05 DoyleChris so i found a tar of minetest-debian-0.4.17.1+repack-1_bpo9+1
03:07 DoyleChris do i need to compile it from that
03:11 DoyleChris im so confused
03:19 NathanS21 Not sure.
03:20 NathanS21 pull the source code from github and build from that.
03:20 DoyleChris im so confused with building it
03:21 DoyleChris every step i get errors
03:22 NathanS21 the first time I built from source I had to get a bunch of dependencies and extra programs to build it.
03:22 NathanS21 https://dev.minetest.net/Compiling_Minetest
03:23 NathanS21 Once I had the dependencies it was just as simple as running cmake and make with some args to build it.
03:23 NathanS21 not sure how different it is on a pi though.
03:24 DoyleChris well bed time ill try again tommorow
03:24 NathanS21 Good luck
03:25 DoyleChris ill be back tommorow same time
03:25 DoyleChris quit
03:34 Ruslan1 joined #minetest
03:38 swift110 joined #minetest
03:44 swift110 joined #minetest
03:57 oiaohm I was having a horrible idea.   What if there was a mapgen that instead of building a nice world.   Just randomally put blocks all over the place so you had to 3 block jump at least off the start line.
03:58 swift110 sup folks
04:06 GreenDimond oiaohm: I think that exists
04:07 GreenDimond https://forum.minetest.net/viewtopic.php?f=9&t=20655
04:09 Quiark was playing MineClone 2 with GF yesterday ... start location is on gravel so mobs everywhere
04:09 Quiark huddle together in house with a big wall and moat the whole night
04:10 Quiark then thunderstorm at daytime, mobs remain ... so we spend 20 mins not playing, just waiting for it to pass
04:10 Quiark in short, I need a rocket launcher
05:14 ANAND joined #minetest
05:22 jas_ joined #minetest
05:41 james joined #minetest
06:18 MineCityBot_ joined #minetest
06:40 Ruslan1 Hello
06:40 jas_ hi
06:40 Ruslan1 Hi
06:40 jas_ Hello!
06:40 jas_ how are you?
06:41 Ruslan1 Good
06:41 jas_ Great!
06:41 jas_ how's minetest?
06:41 Ruslan1 Good
06:41 jas_ me too, good to hear
06:41 jas_ just cookin' some cobble up myself, you?
06:42 Ruslan1 What cobble
06:42 jas_ i'm thinking this time instead of compressing cobble with a craft recipe, to make a machine that compresses it and maybe give goodies at some cost of cobble.  i did make gravel drop some stuff, which i think is neat.
06:42 jas_ mm, regular cobble to stone
06:42 jas_ tho i added recipes for making dirt_with_grass, etc, so i might for mossycobble as well.  mmmm mossy cobble
06:43 Ruslan1 Like I craft it
06:43 Ruslan1 Give me link
06:43 jas_ yeah for example.  i guess it'd be grass+cobble=mossycobble, but i haven't made that recipe yet.  dirt+grass=dirt_with_grass, tho
06:44 Ruslan1 Nice
06:44 jas_ https://forum.minetest.net/viewtopic.php?f=10&t=20006
06:44 jas_ !server glitchtest
06:44 MinetestBot jas_: Glitchtest | dcbl.duckdns.org | Clients: 1/15, 0/1 | Version: 5.0.0-dev / Glitchtest | Ping: 124ms
06:44 jas_ and dirt+dry_grass = dirt_with_dry_grass, and i think i did snow, too, but also need the rainforest stuff, new dirt with stone pebbles, etc.
06:46 jas_ now, as i step away from the laptop, i think it'd be nice to have an /away chat command to somehow indicate i'm afk
06:46 Ruslan1 Nice server
06:47 Ruslan1 Is there spawn in your server
06:48 Ruslan1 jas_: is there spawn in your server
07:02 jas_ oh yes, brb coffee
07:03 jas_ back
07:03 jas_ (haha, i love irc.  yes, there's spawn, and a /spawn command that is always available.  there is no /killme.)
07:04 * jas_ puts on the choons
07:05 jas_ now, the /spawn command uses spawn.on_spawn, which comes from paramat's `spawn' mod
07:05 jas_ same for the [Spawn] button on inventory (depending), and respawn if you haven't used a bed to set it otherwise
07:05 jas_ of course, new players also use spawn.on_spawn.  this has resulted in the same spawn location and i've built it up into something of a maze
07:06 jas_ there is no `static_spawnpoint' set for the server
07:09 jas_ (the [Spawn] button on the inventory can either go to spawn.on_spawn, or beds' respawn, and can be toggled in the terminal with `set spawn_switch')
07:30 Ruslan1 jas_: I won’t able to join your server
07:31 jas_ no, i don't think so, without a new client.  there's a development version, you can find it on the forum if you're interested.
07:31 jas_ who knows, maybe it will be out "soon" :)
07:34 jas_ (you can't play mt4 servers with the new version, and you can't play mt5 servers with the current version.)
07:38 Ruslan1 I know
07:38 jas_ on the other hand, my inv is full and i don't have a backpack, so i think i will add compressed cobble via craft afterall
07:39 jas_ and then do goodies like exploding the stones when you dig it, and making a machine to get goodies out of compressed cobble and gravel automatically.  i still have to do enchantment machine and worktable for bigger craftgrid (lol) and tool repair.
07:39 jas_ do u have mt5?
07:39 jas_ i'm on the server now, maybe there's something the matter
07:42 Ruslan1 I will get minetest 5.0.0
07:43 jas_ you can get sfan5's builds, which are fancy i think, or maybe the automatic builds from gitlab.com/minetest/minetest/pipelines
07:43 jas_ it's for windows.  on linux i build from source.  i tried it on android, new version, on my server it's lol
07:43 jas_ mm, i might try again.  i dunno how well if at al it'll work.
07:44 Ruslan1 how it work
07:45 jas_ android version?  the walkie compass is covered by buttons that didn't really work for me anyway.  then again mobile minetest has always been kinda a pain
07:46 Ruslan1 i don't have android
07:46 jas_ oh ok, well then are you on windows?  i been using the build from gitlab.com/minetest/minetest/pipelines ... there's a cloud all the way to the right, click it and select architecture
07:47 jas_ or use sfan5's build: https://forum.minetest.net/viewtopic.php?f=42&t=1523
08:16 Weedy joined #minetest
08:20 Akberid joined #minetest
08:32 oiaohm jas_: I normally don't have major problems getting mossycobble.   Cobble near water produces mossy cobble.
08:32 jas_ yep, that's how i generally farm it.  but i'm thinking of convienence.  dirt_with_grass was an obvious as it's impossible otherwise.
08:33 jas_ i mean, you can try to trigger dirt -> dirt_with_grass, but sometimes there's not light, etc.
08:33 jas_ just a thought anyway, not sure if i will or not.
08:33 oiaohm jas_: warped recipe would be furnuse taking bucket of water + cobble then producing mossy cobble.
08:33 jas_ but i have other obsurdities like colored glass, and now i feel like i have to make colored glass doors because of it! haha
08:33 jas_ oooh
08:33 jas_ i will write that down, thanks oiaohm
08:35 jas_ i guess i'll have to modify furnace?
08:35 jas_ i'm going to work on a book reader first, where i can store books in a chest-like node and flip through the books it contains.
08:36 jas_ (and i keep meaning to redo the placeable books mod.  bbiab)
08:36 oiaohm jas_: it would require modify furnace or making something like furnace that consumes water.
08:37 oiaohm jas_: or needs to be in water.
08:37 jas_ hm, furnace around water?  it's a thought, i'll add it to the book where i wrote this down ;D
08:37 jas_ i was thinking of a "state" for the furnace
08:37 jas_ but i guess that's similar/related
08:38 oiaohm jas_: like a mossy cobble generator that has to be in water but like lets you put like 99 blocks in you wish to convert.   Making mossy cobble production more compact and less pick consuming.  Does not have to make it any faster.
08:38 jas_ ohhh
08:39 jas_ ok got it i think, i'll write it all down and give it a try at some point
08:39 * jas_ gets up to stretch
08:41 oiaohm jas_: another varation would be if the mossycobble generator did not need to be in water but require 2 buckets of water inserted to convert that you could take back out.  (yes unlimited water stunt inside the box)
08:42 oiaohm Craft methods do need to line up to world production methods a bit.
08:43 oiaohm that would make mossycobble generator quite pricely because you are not willing to do the cheaper method.
08:48 jas_ i see, good point.  the ironing out of the details always seem to come later, however.
08:49 jas_ anyway this is a good machine for me to make, reminds me of Dragonop's clay crafter.  i will make a furnace-like machine that requires buckets of water/river_water to make mossycobble automatically.
08:50 jas_ i do plan on doing some stuff in terminal related to machines and automation, eventually.  somehow i lost my saved warps on my mechanisms, and it occurs to me i may not be checking protection on them hehe
08:52 jas_ i made it so when you place an intercomm on default:mese, it swaps to default:mese_ which has a light source of default.LIGHT_MAX.  i'd like to look at connected nodeboxes, i haven't tried them yet, for something like mesecons power lines.
08:54 jas_ and i'll have to get back to trying to convert protector redo to AreaStore afterwards.  i'm still ironing out my version of mobs, which doesn't use abms to spawn entities.
08:54 * jas_ launches vim and starts on mossy cobble generator machine
09:17 cafee__ joined #minetest
09:25 ensonic joined #minetest
09:32 jluc joined #minetest
09:41 SanskritFritz joined #minetest
10:13 sonicpp joined #minetest
10:38 riff-IRC joined #minetest
10:40 jas_ phew, got it working i guess.  now to rob dragonop's claycrafter textures
10:44 jas_ here's the diff: https://gist.github.com/jastevenson303/7ecfc5d3b391005bfc578465083bcf53 <-- i'm not proud
10:48 jas_ https://www.youtube.com/watch?v=DHEOF_rcND8
10:48 MineCityBot_ [You0,4Tube] Title:4 Edward Sharpe & The Magnetic Zeros - Home (Official Video) | Uploaded by:4 Rough Trade Records | Date:4 17/05/2010 | Views:4 65,493,723 | Likes:4 97.54% | DisLIKEs:4 2.46%
10:48 jas_ !title
10:48 MinetestBot jas_: Edward Sharpe & The Magnetic Zeros - Home (Official Video) - YouTube
10:51 proller joined #minetest
10:55 Krock joined #minetest
10:57 Tux[Qyou] joined #minetest
10:59 jas_ i miss him. https://imgur.com/a/hOg3Viu
11:02 ensonic joined #minetest
11:02 MineCityBot_ was kicked by rubenwardy: kick
11:02 MineCityBot_ joined #minetest
11:03 MineCityBot_ was kicked by rubenwardy: kick
11:08 sonicpp joined #minetest
11:09 jas_ https://github.com/jastevenson303/Glitchtest/commit/3e9e4a5e059d13c626024849d7273fcea937e84d
11:09 jas_ all done for now, i guess.  the craft recipe is very funny, considering the texture!
11:10 jas_ oiaohm: thx
11:18 DI3HARD139 joined #minetest
11:33 majochup joined #minetest
11:40 MinetestBot [git] pauloue -> minetest/minetest_game: Remove extra empty strings in craft recipes (#2281) ccf03ea https://git.io/fhq8r (2019-01-02T11:40:32Z)
11:47 Telesight joined #minetest
11:47 Telesight left #minetest
11:50 majochup joined #minetest
11:55 sonicpp joined #minetest
12:01 Wuzzy joined #minetest
12:12 nowhere_man joined #minetest
12:16 ensonic joined #minetest
12:21 Markow joined #minetest
12:35 Fixer joined #minetest
12:38 Wuzzy2 joined #minetest
13:00 Xiong jas_ Help me out. Don't understand why you are making heavy weather of mossy. Dead simple to dig it after its turnef mossy through being wet. I've never wanted so much I felt I needed to automate that but a simple nodebreaker setup on a slow timer should work fine.
13:21 sonicpp joined #minetest
13:38 cafee__ joined #minetest
13:52 sonicpp joined #minetest
14:09 cyberarm joined #minetest
14:09 Taoki joined #minetest
14:18 CWz joined #minetest
14:42 hecks joined #minetest
14:43 hecks any ideas on how I could simulate a laggy server locally?
14:43 majochup no
14:44 Krock hecks: enable pipeworks, technic and the entire techpack
14:44 hecks ha ha
14:44 hecks technic is still less intensive than mibi
14:44 Krock or add for-loops with a million iterations each server step
14:44 hecks but uh, I meant network lag
14:44 Krock mibi?
14:44 Krock ah
14:44 hecks whatever I'm making
14:44 hecks but I wanted to test lag in mt in general
14:45 hecks I've played some servers and every single one of them had hit detection and feedback issues
14:45 Krock I'd suggest to generate a random number from 1 million to 10 millions and: for i = 1, rnd_number do end
14:45 hecks regardless of where the server was located; I've heard that the netcode is just bad
14:45 Krock that inside register_on_globalstep
14:45 hecks but maybe there's some lua bandaids that can be applied, this is what I mean to research
14:48 sfan5 hecks: linux can put artificial latency on your localhost
14:48 sfan5 if that is what you mean by "laggy"
14:48 hecks I think I found something for windows that does this
14:51 hecks oh yeah, it works
14:56 hecks and it's nigh unplayable on 150ms, geez
14:57 hecks I'll wait until CSM to complain about that, though
15:00 hecks and then I found out that minetest does not have any api to check a player's network quality
15:05 sonicpp joined #minetest
15:05 Calinou you can decrease the dedicated_server_step in minetest.conf if you run a server on good hardware
15:05 Calinou https://github.com/minetest/minetest/blob/master/minetest.conf.example#L1409-L1412
15:06 Calinou hecks: try playing with other server settings too, see https://gist.github.com/Calinou/683cb0748efe867be6e18f86f206a6b7
15:06 Krock Xiong: käpenblaubär would like to have an area of yours in creatively survival
15:06 Calinou some of them may not be ideal for fast machines
15:07 hecks I already managed to generate the lag I'm looking for
15:07 hecks I'll reiterate to make it perfectly clear; I'm simulating a server that runs fine but with network lag
15:07 hecks sadly 50ms ping is barely playable and anything above is bonkers
15:07 Calinou I mean, perceived lag could probably be reduced if servers ran better settings
15:08 Calinou also, how is 50 ms barely playable considering Minetest has client-side physics?
15:08 hecks anything that isn't movement or digging related is lag dependent
15:08 hecks my server settings are already optimized to all hell so no need to worry about that
15:10 hecks client side physics don't help with this: https://a.uguu.se/HpvQPieDqkZE_hit.gif
15:12 hecks I know some ways to make it better but some of it requires CSM, and some of it at the very least a small PR
15:15 hecks this is pretty important, it's the #1 reason why every MT server ever has terrible mobs and pvp
15:15 ShadowBot https://github.com/minetest/minetest/issues/1 -- GlowStone code by anonymousAwesome
15:15 hecks lol
15:16 Calinou yeah, but most people don't play Minetest for the combat :P
15:16 Calinou (nor Minecraft for that matter, by the looks of it)
15:16 hecks tell that to the CTF server
15:16 sfan5 minetest pvp is even worse than minecraft though
15:17 hecks if combat wasn't garbage then maybe there would be something else to do other than farm and build sparkling ghost towns
15:17 Calinou the CTF server is very much casual PvP still
15:19 hecks I don't mean to give minetest Quake's netcode, though it's very much possible
15:19 hecks but it would be nice if mobs didn't damage me by hitting the spot where I was standing two seconds ago
15:19 hecks or players, for that matter
15:29 oiaohm hecks: there is a issue that you can dig though protected blocks that is kind of the same problem as the combat fault.
15:30 hecks How in particular?
15:30 Markow joined #minetest
15:30 Wuzzy joined #minetest
15:30 hecks Do you mean that you can predict-dig the block, go past it and it reappears but too late?
15:30 hecks Not exactly the same problem as the combat fault if that's the case, but netcode related all the same
15:31 hecks the issue is that digging does have prediction, and physics simulation can depend on it
15:32 hecks Protection is such a common feature that I wouldn't be against it being built into the binary in a more robust way
15:32 oiaohm hecks: https://forum.minetest.net/viewtopic.php?f=53&amp;t=17815&amp;sid=2fb461cf705f29d0406ff9ce5e08fc00  its what this mod set protect against.    That with client you can dig a block/blocks that are protected then walk though before the blocks are respawned.
15:32 hecks Yeah, I guessed as much
15:32 hecks This could be fixed with a server side sanity check, even from pure lua
15:33 oiaohm this here is a client and server side fix.
15:33 oiaohm Fix the client to make sure it in fact targeted a correct item.
15:34 oiaohm Server side fix handle when client is not.
15:34 hecks What I'd do is: Make the client aware of protection information, make the server check if a player just walked through a block they shouldn't have
15:34 hecks Without a PR, the server side check can be done in pure lua
15:34 oiaohm hecks: yep that is that mod.
15:35 oiaohm It is fairly much the same thing with pvp check that when applying damage that target was still at that location.
15:35 hecks I'll admit that I'm out of the loop on CSM capabilities so far
15:35 oiaohm Or at least was at that location inside a reasonable time.
15:36 hecks but something like this should actually be implemented on the C side, imo
15:36 oiaohm Its roughly the same problem.
15:36 oiaohm I remember in halflife fps with lag how you could be shot and killed in two totally different locations at the same insant by 2 different players.
15:39 oiaohm hecks: depending on the first person shooter location engine depends if you can be shot a few seconds before and killed.   But I think minetest mods are not applying damage to map locations instaed applying it straight to player.
15:39 piesquared joined #minetest
15:43 hecks No, but because there isn't any prediction of the physical position, and because monster and player hitting isn't done using hitboxes or raycasts
15:43 hecks you end up being able to "punch" players that are actually out of your range
15:44 hecks and similarly, I see monsters looking at where I was a second earlier and I'm suddenly taking damage
15:44 sfan5 player hitting is done using hitboxes *and* raycasts on the client side
15:45 sfan5 none of that needs to apply to mobs though, mod authors can choose to implement that however they want
15:45 Krock although it's easier now due to the Raycast API
15:46 hecks yes, but it's the lamented "punching" system you're describing here, it's less than ideal
15:46 hecks I suspect that mobs are just raycasting, but the server doesn't quite realize in time that I've moved
15:46 hecks knowing my ping and velocity would let the server make a better guess
15:46 Krock would it be ideal to implement an AI to counter-fight the latency and lag?
15:46 oiaohm sfan5: and that is kind of open to halflife abuse.    I remember where players use to introduce lag with half life so they could drop multi hits resulting in fatal.
15:47 sfan5 hecks: raycasting is more work and wasn't possible until recently, so I doubt that
15:47 hecks I'm not sure about lag abuse but I've seen some badly inconsistent behavior in CTF
15:47 sfan5 it might be that your old position gets used to determine whether you can take damage, but most likely without raycasting
15:47 Krock there was some kind of raycast but it was also very slow
15:47 hecks it's like everyone's DPS and range depends on ping, and that's bad
15:48 Krock -> PR pls
15:48 hecks so it's old mob mods that are making things even worse, then?
15:48 Krock yes
15:49 hecks I wouldn't be talking about this if I wasn't in a fixing mood, as much as I hate compiling MT
15:49 sfan5 oiaohm: not sure if the old source engine also uses the tick based system, but I don't think Minetest is suspectible to that kind of exploit
15:49 hecks spent a few days playing various servers and every single one of them was ruined by this
15:49 Krock but well, there's a line_of_sight API
15:49 sfan5 punch cooldown is measured when the packets actually arrive, no matter the amount of lag
15:49 hecks I'd like to at least allow mods to implement rollback and dead reckoning
15:49 hecks that requires the server to know the player's ping
15:50 hecks then I could, for instance, make a projectile spawn a little in front of the player to compensate for the delay
15:50 hecks or make the animation start a few frames later
15:50 hecks similarly, hit detection could take into account where the player *should* be, not the player's current server side raw position
15:51 oiaohm sfan5: the gap between firing the cooldowns in halflife were nto altered.   It was the fact you could have walked behind a solid wall computely out of their line of sight yet they were still shooting you and kill you because they lagged you position to their client with halflife.
15:51 hecks this will require generic physics query api, but it's easy, just expose whatever irrlicht provides
15:51 sfan5 oh that's a different problem
15:51 hecks line of sight bullshots are kinda a consequence of the fixes I'm proposing
15:51 hecks I consider them a lesser evil
15:51 hecks some engines have real bad bullshots, like Source, and that's bad
15:52 hecks but Quake tier bullshots are acceptable if it comes with better prediction in general
15:52 hecks in any case, you can just choose to not implement hitscan weapons, or nerf them
15:53 oiaohm sfan5: basically there need to be server validation of shots so that a person cannot client side cheat.
15:53 hecks yes, any reasonable game would do that
15:53 hecks I think halflife/CS is a pretty pathological example of lag compensation gone wrong
15:54 oiaohm hecks: and early halflife is example of why not to have 100 percent client side processing of shot logic.
15:54 hecks I don't think an example is necessary for that, it's just a stupid thing to do in general
15:55 hecks and I don't think any game does that, besides a certain obscure online shooter with P2P networking I've played
15:55 hecks if there's a server, it's its job to validate
15:56 hecks but we're getting ahead of ourselves here; let's fix melee bullshit first, railguns can come later
15:59 Calinou lag compensation will always advantage the attacker, it's a compromise developers did for good reasons (i.e. not frustrating people who initiate combats, rather than camping :P)
15:59 Calinou >and I don't think any game does that, besides a certain obscure online shooter with P2P networking I've played
15:59 Calinou do you mean Cube/Cube 2? ;)
16:00 hecks No, but if that's serverless, then it probably suffers from the same problems
16:00 hecks in any case, netcode is a solved problem, I don't see a reason why it should suck in MT
16:00 Calinou it has a server but it follows a "thin server, fat client" model
16:00 Calinou well, Minecraft has similar issues
16:00 Calinou I have yet to see a Minecraft-style game with really good networking
16:01 hecks fast paced shooters should be playable up to 120 ping, slower games up to 200
16:01 hecks on this scale, MT ranks as slow as hell
16:01 hecks there's just no reason it should feel this broken
16:01 oiaohm hecks: serverless maybe.   If all clients are validating all other clients actions serverless can be just as good as server.
16:02 hecks serverless games have horrible lag abuse issues
16:02 hecks UNLESS they're lockstep, but that's limited to RTS pretty much
16:03 oiaohm hecks: or they auto cutt of those with too high of latancy is another that some serverless does.
16:03 oiaohm hecks: limtis the lag exploit level a lot.
16:03 hecks it's not possible because in a serverless/star topology, everyone has a different ping to everyone else
16:04 oiaohm Some have a tollerence level.
16:04 hecks and what happens is that the BR with 200 ping calls you a lagger and starts a votekick against you, when everyone else is green to you
16:04 oiaohm I did not say it was friendly.
16:04 hecks but I digress, thankfully MT has plain ol' servers
16:05 oiaohm Once you make serverless not exploitable to lag attacks you can have the everyone dos from game due to failure to latency agree.
16:05 oiaohm Plain servers makes problem a lot simpler.
16:06 hecks yes, that's what happens in Starcraft for example
16:06 hecks but what happens then is that the lagging guy gets autokicked
16:06 oiaohm Starcraft with anti cheat protections you can see the all way kick happen at times.
16:07 oiaohm Basically it beleves everyone is lagging and boots the lot.
16:07 hecks well with a game like that, it's impossible to cheat the game state because fiddling with it is just a plain old desync
16:08 oiaohm This is basically learn from what others have stuffed up.
16:08 hecks Dude, are you using a translator?
16:09 oiaohm No my english is just horrible.
16:09 hecks back on topic, server netcode solutions can be applied to minetest
16:09 hecks client-server netcode problem was solved in 1995 pretty much
16:09 hecks some helpful hacks were invented later, but the basic implementation has not changed
16:10 hecks There's one thing I need to know though
16:10 hecks does minetest do whole tcp round trips or is it using udp like every sane game ever
16:12 oiaohm hecks: minetest is udp https://dev.minetest.net/Network_Protocol
16:15 oiaohm hecks: do note the RELIABLE implementation in that protocol.
16:15 hecks most games using udp have some guaranteed delivery layer for certain info
16:16 hecks overall, it doesn't seem like there's anything wrong with the protocol
16:16 hecks I guess the problem is that everything is implemented in a naive way from the gameplay's side of things
16:17 hecks except *maybe* player movement
16:19 oiaohm Player movement is even someways naive like the ablity to dig though protected blocks problem.
16:19 oiaohm and then walk there.
16:19 hecks That actually means that prediction is a thing and it's working, though
16:19 hecks The problem is that everything else is done naively and doesn't account for prediction
16:20 jas_ Xiong: so make a "nodebreaker" machine? OK
16:20 jas_ i did it mostly for sentimental reasons.
16:20 hecks though I won't know for sure until I set up two instances of MT side by side, actually simulating how two players on a server see one another
16:20 jas_ i didnt need a lot of mossy cobble, actually HAHA but right now i'm making it fill an empty bucket if there's water_source at pos.y -1
16:20 jas_ lol
16:31 Ruslan1 joined #minetest
16:33 huesal__ joined #minetest
16:44 huesal__ joined #minetest
16:47 majochup_ joined #minetest
16:51 scr267 joined #minetest
17:17 SanskritFritz joined #minetest
17:32 hecks One more question and I'll be out of your hair for now; does minetest treat localhost any different from a remote server?
17:33 hecks such as turning off certain reliability measures
17:41 Xiong jas_ Sorry I'm confused. Are you familiar with various small machines built with pipeworks and mesecons? Cobble generators, ice generators, and the like? My remarks don't seem to meet yours.
17:45 KrutonH joined #minetest
17:54 sonicpp joined #minetest
17:58 IhrFussel joined #minetest
17:59 IhrFussel I think it is actually not fair to set the server step too low because people who are far away and therefore have a ping of 100+ ms will have a HUGE disadvantage if the game refreshes too quick...that is my opinion
18:00 Krock why? the delay is there but they will receive it anyway
18:00 jas_ Xiong: no, not really.  just from hearing other people talk about them
18:01 IhrFussel Krock, cause players with low ping then receive the actions quicker and can react to them better...sounds logical to me
18:01 Calinou yeah but that's how it is in literally every online game to date :)
18:01 Krock IhrFussel: a high server step doesn't change that
18:02 Krock you cannot "buffer" the latency
18:02 Calinou also, there's no such thing as client-side movement prediction in Minetest, as all movement is handled client-side in Minetest
18:02 Calinou only dig/placement are actually predicted, since the server has authority on whether the player can do that
18:02 IhrFussel Imagine someone having a ping of 20ms and server step at 50ms ... the player with a ping of 20ms is able to receive the 50ms steps quicker than a player with 100 ms no?
18:02 Calinou it also prevents building/digging too far away by default, but many (most?) servers end up disabling that because the anticheat has lots of false positives due to lag
18:03 Calinou (disable_anticheat = true)
18:03 Calinou IhrFussel: no matter the server step, they'll receive information quicker
18:03 IhrFussel But what if the server made TWO steps before the client with slow connection receives 1 ... you see what I mean?
18:04 Krock IhrFussel: that may even happen when you have a 10ms ping but lose packets
18:04 Calinou the client will receive them in-order if the server sent them as ordered
18:04 Krock slow does not mean packet loss
18:04 Calinou if it's just marked as reliable, they may receive them out of order
18:05 IhrFussel I have a player who plays from NZ so their ping is ~ 400
18:05 Calinou if it's not marked as reliable, they may not receive them at all, and you should handle that as gracefully as possible
18:05 Calinou and yeah, there's no correlation between packet loss and latency
18:05 Krock Calinou: FYI: all but the player position sending packets are reliable
18:05 Calinou you may have a decent ping, but players in competitive games will hate you if you play on a 4G connection :P
18:06 Calinou Krock: yeah, I heard that
18:06 Calinou it makes sense in a Minecraft-style game, no?
18:06 Calinou what else could be made unreliable?
18:06 IhrFussel I think you still don't get what I mean... imagine someone having a ping of 500 and server step at 100 ... now before the client receives the 5 steps at least 500 ms passed while other clients received their info every 100ms
18:06 Calinou higher ping will always be worse, no matter what you do
18:07 IhrFussel The slow client gets X steps at ONCE
18:07 Calinou all you can do is hide it the best you can
18:07 IhrFussel Good luck trying to react to several motions at once
18:08 Krock Calinou: HP updates, if these were a separate packet
18:08 Krock ofc talking about the other players. the damaged player needs to have a erliable packet
18:08 Calinou yeah, maybe
18:08 Calinou IhrFussel: they don't get those steps at once, they'll get those steps every 100 ms or so
18:09 IhrFussel How? If every packet takes 500ms to travel
18:09 hecks You can always implement nudge if you're concerned about fairness
18:10 hecks but from what I've seen, the most fair option is to just let people play at the best ping they can
18:10 Calinou yeah, few games implement "fair ping" systems
18:10 hecks it's usually perceived as a bullshit delay
18:10 Calinou fighting games are probably the ones that do the most
18:10 hecks not all of them
18:10 hecks fighting games can use nudge/rollback instead
18:11 Calinou or that, yeah
18:11 IhrFussel I mean...the server list doesn't help with choosing a 'good' server...good in terms of connection from you to the server ... and until people realize that the ping bar in the list is actually JUST the ping to the server list, they probably put much effort into the server and just stay on it
18:12 hecks oh yeah, it sure would help to actually see your damn ping
18:12 jas_ lol
18:12 hecks if the ping bar is actually a ping from the server to the master, not to you, then holy shit minetest what are you doing
18:12 IhrFussel I wonder what takes the devs so long to just REMOVE that bar... they talked about it several times
18:12 Calinou it's shown as "rtt" or something in the debug bar (press F5)
18:12 Calinou but it's not updated often, and probably not very accurate
18:12 hecks why remove it... just make it work like it's supposed to?
18:13 IhrFussel hecks, they can't...privacy concerns
18:13 jas_ the argument was that "the serverlist would have to ping my machine"
18:13 Calinou and yeah, the ping bar in the list isn't really meaningful since it's relative to the master server
18:13 hecks no, the serverlist wouldn't
18:13 jas_ or something.  which i still don't understand.
18:13 hecks my machine would have to ping the server
18:13 Calinou you only communicate with the master server using HTTP, not any other protocol
18:13 Calinou (same for the servers)
18:13 Calinou so direct pinging isn't possible
18:13 Calinou it sounds easy, but it's not easy :)
18:13 hecks there are servers displaying your IP and country for everyone to see as soon as you log in, and you're worried about ping time checks?
18:14 jas_ anytime a client got the server list they'd need to ping all the servers on it?
18:14 jas_ not me, i think it was one or two people
18:14 hecks yes
18:14 hecks wasn't a problem 20 years ago, why would it be a problem now
18:14 Calinou well, the ability to ping a server without being connected to it is just not implemented in Minetest
18:14 Calinou it might be difficult to implement given the current networking model, that's all
18:14 Calinou or nontrivial, at least
18:14 jas_ aha
18:14 jas_ the real reason! :D
18:14 hecks can't you just... ping?
18:14 hecks the client already has the address
18:15 Calinou ICMP ping isn't universal, many servers can block it, or the client's ISP can mess with it
18:15 Calinou plus, it's not a reliable measurement if the server is overloaded
18:15 hecks if the ISP messes with it, there are far worse problems at hand here
18:15 sfan5 icmp is also hard to do from an userspace application without special privileges
18:15 hecks ISPs usually mess with pings the other way
18:15 sfan5 on linux at least
18:16 hecks I hate to bring up the "works in quake" argument, but it works in quake :)
18:16 IhrFussel 'ping' doesn't use ICMP?
18:16 Calinou Quake and derivatives have a whole protocol dedicated to getting server information without being connected to it
18:16 Calinou we don't, and given the current amount of contributors, I doubt it will be added soon
18:16 hecks I mean, goodness, the client already can connect to the server anyway
18:17 IhrFussel You can obviously run 'ping' without being a superuser or admin ... so couldn't we simply use whatever 'ping' uses?
18:17 hecks what would be so hard about implementing this
18:17 hecks bonus points; the master server can somehow do it
18:17 Calinou the `ping` command behaves differently depending on the OS
18:17 hecks if the client can't ping the servers then OH WELL just don't display the bars!
18:17 Calinou oh, and that makes master server implementation harder too
18:17 hecks 99% of the time it will be able to
18:18 Calinou it needs to ping servers, so it can't just be a small HTTP server receiving announce requests
18:18 Calinou it's currently a small Python + Flask application
18:18 hecks well then moving that to the client is a win win
18:18 Calinou but we'd still like to have a Web interface for viewing current servers :)
18:18 hecks and the server already has code to support ping checking, just hack it to let clients do it...?
18:18 Calinou (which is entirely doable, but it's more work)
18:19 sfan5 Calinou: the master server already pings servers
18:19 IhrFussel If server owners are that concerned about being ping'd then we could either send them a "info" that our client just pinged them or we could let servers opt-out of it...
18:19 Calinou yeah
18:19 hecks case closed then
18:21 hecks now I'd like to hear more about that "movement is client side" thing, just how deep does that rabbit hole go?
18:21 Calinou IhrFussel: there shouldn't be a performance concern, it'd represent a tiny part of the entire server's bandwidth
18:21 IhrFussel The MT community is VERY VERY extreme when it comes to privacy... one example is that some insist on being able to DECIDE what server sent mods run on their client
18:21 scr267a joined #minetest
18:21 Calinou well, when your server is announced on the list, it's public
18:21 Calinou if you don't want that, don't announce it :)
18:22 hecks The concern is about the client autopinging every server in existence when you open the "online" tab
18:22 hecks Just turn it off by default and I'll be happy
18:22 IhrFussel So...we need to add a button to each server "Check Ping"
18:22 hecks Not to each, but "Refresh All"
18:23 hecks however a small "Refresh" icon in a server's line would be nice too
18:23 hecks There are worse privacy issues in this game than that I'm afraid
18:23 IhrFussel Right now servers only send their info (connected users, uptime, age etc) every 5 minutes to the list
18:24 IhrFussel I think it was 5 minutes
18:24 hecks which is alright for a master announce
18:24 ensonic joined #minetest
18:24 hecks just provide said info to clients on request and everyone's happy
18:24 hecks the server will have to deal with, whoa, a couple extra packets every now and then
18:25 hecks this almost reminds me of the matrix multiply debate :^)
18:25 IhrFussel I wonder if clients could even cause a 'micro' performance issue with sending too many ping requests
18:25 hecks Limit it to one every two seconds and it'll be fine
18:25 hecks I can DDoS your server just fine without using the server browser
18:26 IhrFussel We could simply add a button timeout
18:26 hecks for instance, by initiating fake connections
18:26 hecks far more damaging than someone spamming refresh
18:26 IhrFussel Nope, that was fixed
18:26 hecks Then initiating "real" connections :)
18:27 hecks In any case, you gain nothing by not providing those 16 bytes of data on request
18:27 Calinou usually, the number of pings a client sends per second is capped
18:27 IhrFussel Yeah clients only count now towards the limit when they receive the CS_HELLO packet I think which is the moment before joining
18:27 hecks Even telling the client to bugger off is more data than that
18:27 Calinou (50-100/second is a reasonable limit when there's a lot of servers)
18:27 Calinou however, you may want to ping a server several times to get a more accurate estimation
18:27 Calinou Xonotic defaults to 3 pings per server because of that
18:28 hecks See, I told you it works in quake
18:29 IhrFussel I think an argument was that closed-source games don't have the same 'privacy responsibility' as open source games
18:29 hecks quake is free software
18:29 hecks and its hundreds of derivatives
18:29 hecks my privacy is already more violated by the initial ping to the master server
18:30 hecks which I believe occurs as soon as I launch MT
18:30 jas_ hecks did you see the server side movement pr?
18:30 IhrFussel As soon as you open the Play Online tab AFAIK
18:30 jas_ i like quake
18:31 hecks I didn't
18:31 IhrFussel Or as soon as you announce your server
18:31 hecks I was too busy arguing with paramat about matrix multiplies
18:31 jas_ oh i like the movement and physics, strafe jumping
18:31 Calinou skill-based movement is where it's at :D
18:31 Calinou unfortunately, it's not very popular in modern games :(
18:31 hecks thing is, uneffing minetest's netcode, movement, adding CSM and all that jazz is kinda intertwined and I'd like to see it done as a single effort
18:31 jas_ ah well
18:32 hecks if you people like quake so much, play cpma with me
18:32 jas_ what do you think of sneak jumping?
18:32 hecks which version? :)
18:33 jas_ i have a version that uses old_move+sneak_glitch when sprinting.
18:33 hecks I think shift ladders were bullshit but I like using sneak to grab onto ledges.
18:33 jas_ normally it's new_move/sneak_glitch off and if sprinting then old_move/sneak_glitch on.  there's a scout class that always has sneak_glitch on tho
18:34 FreeFull joined #minetest
18:34 jas_ i think there's something there if you adjust the gravity, or something.  it's awkward now, but i suspect it could easily change.
18:34 jas_ i feel it at times
18:34 hecks I'd love nothing more than to delete all of it and move it to lua
18:35 hecks so that I can code whatever movement I want, even strafejumping if I want to
18:35 jas_ my server is Glitchtest if you want to try it.  you have to hold sprint to sneak jump, tho.
18:35 hecks I'll check it out
18:35 jas_ or github.com/jastevenson303
18:35 jas_ yeah i think it can be done hecks
18:36 jas_ there's a lot of hurdles, though.  one thing that comes to mind, have you ever noticed when jumping along a particular diagonal, the player's position gets quantized?
18:36 hecks it can't be done *right* until SCSM is up and running
18:36 jas_ true
18:36 jas_ i been waiting a long time, for that reason especially
18:36 hecks I want all the things that are coded into the exe moved into minetest_game
18:36 hecks I'm sure there's many contributors that disagree with me here though
18:36 jas_ but only to make the sneak_jump mod faster, i guess.  i'm using minetest.after lol
18:37 hecks tried getting on glitchtest but it requires some ancient version
18:37 jas_ because the server is always asking if the player is holding down sprint, whereas that'd be better in the client
18:37 jas_ ok i'll rebuild it.  i built it one or two days ago
18:37 jas_ yesterday i think, they kinda blur into one another
18:38 jas_ hm, it says it's already up to date
18:38 jas_ Minetest 5.0.0-dev-c6f784f4 (Linux)
18:39 hecks I'm already making minetest do things it's not meant to https://a.uguu.se/aposLhKvdsWW_moesouls.gif
18:39 hecks but add networking to this and it falls apart, I need better netcode and SCSM
18:39 jas_ cool gif!
18:40 hecks sadly minetest is screaming and begging for mercy running this
18:40 jas_ i'm gonna try a hitscan weapon soon, i already have a projectile.  but the hitscan, i am predicting it would be better client side also
18:40 hecks not performance wise but bugs wise
18:41 jas_ oh
18:41 jas_ well at least it's not struggling performance wise
18:41 jas_ what are the bugs?
18:41 hecks you can't do good hitscan if there isn't even a goddamn get_player_ping() api function to do nudge properly
18:41 hecks bugs... i've basically ran into obscure minetest bugs from day one of making this
18:41 jas_ did you try CTF?  i did once or twice for a minute
18:41 hecks bugs related to entity attachment
18:41 jas_ i see
18:41 hecks yes I did, CTF is what made me spend all day today ranting about netcode on the IRC
18:42 hecks let me continue; attachment bugs, asset handling bugs, weird performance issues, mesher limits
18:42 jas_ oh ok.  well client side stuff would have to help there, i'd imagine.  i wonder if there's not a newer feature in 5.0.0-dev that allows for better hitscan.. if that makes sense
18:42 hecks lighting issues which I made a PR for and it's probably still in limbo because of bureaucracy
18:43 hecks add to that hundreds of lua side workarounds for missing engine features
18:43 jas_ wow
18:43 jas_ well keep up the good work, i'm sure it's appreciated
18:43 hecks by whom I wonder
18:44 jas_ :)
18:44 hecks https://a.uguu.se/oNjgQXxcmePR_anim.gif
18:44 hecks you have no idea how hard it was to make minetest do this
18:44 jas_ there's a bindable mouse pr.  i really wish since day one to use right mouse button to jump.  sometimes, minetest just sucks.
18:44 hecks have a character's SAO step forward with the animation
18:45 hecks I parse the friggin' .x file with lua, extract curves, write it back, load it
18:45 jas_ geeze, yeah i'd think there should be a better way
18:45 hecks then wrap it in an animation flowchart not unlike shiny new modern engines
18:46 hecks now, this is not a gripe I have with minetest, I'm fine with having to code that
18:46 hecks but then imagine, I keep adding animations to this character, only for the server to crash one fine day
18:46 jas_ oh right, the multiplayer thing
18:46 hecks Reason? File too huge to send in one chunk
18:47 hecks minetest cannot send assets bigger than 16ish MB I believe
18:47 hecks and doesn't do any compression when sending
18:47 jas_ if they have downloaded the (sub)game prior, this is one possible workaround
18:47 hecks Attachable hair and clothes? Nope, attachment is broke
18:47 jas_ haha
18:47 hecks gotta model it all onto her
18:48 hecks and use texstrings, which thankfully are pretty powerful
18:48 hecks oh right, and the root movement thing
18:48 hecks you'd think a game engine would have a set_velocity() function
18:48 hecks minetest does... it doesn't work for players, though!
18:48 jas_ this is a funny issue i made a while ago i want to show you
18:48 hecks Or, what do you do to root a player in place and not let them move, for instance, when stunned?
18:49 hecks Do you set movement speed to 0? Try doing that, see what happens...
18:49 hecks actually with your skill based movement thing going on, you might want to set movespeed to 0 and play with it
18:49 hecks hint: it turns off friction
18:49 jas_ https://github.com/minetest/minetest/issues/6448 <- not that long ago
18:49 jas_ wait what
18:50 jas_ i do know, you cannot make player's physical!!
18:50 jas_ this drives me batty
18:50 hecks try it, it's bizarre
18:50 jas_ i dunno about this setting movespeed to 0, i will try it.  can u elaborate?
18:50 hecks so I attach the girl to a dummy transform...
18:50 IhrFussel hecks, if you set the movement speed to 0 they will 'flicker' around...the only reliable way to make them stop is attaching players to entities
18:50 hecks well it turns off friction and control
18:50 hecks whatever velocity you had, you'll keep it
18:50 hecks and you'll slide in that direction until you hit something
18:51 hecks maybe it can be used to make Tribes like sliding
18:51 hecks yes I know that, wisehead
18:51 hecks and I do that, and guess what, every now and then the player model just vanishes for the duration of the attachment
18:51 hecks 100% random, just a one in 65536 chance of it happening
18:51 jas_ that's a good tip thanks hecks, i'll try it out
18:52 jas_ it's really fun, btw, to make player's physical
18:52 hecks even better, every now and then the server will tele me back to a position I was in 30 seconds to 10 minutes ago
18:52 jas_ but if you try to sneak jump, or even regular jump i think, the player just keeps jumping, climbing into the air, depending on lag
18:52 hecks said position is always a position where I was attached to the dummy transform at some point
18:53 hecks I tried using server side code to detect abrupt changes in position like that... it doesn't pick it up
18:53 IhrFussel It is bad in general because as soon as you leave the 'active_block_range' the entity unloads...and since the player is attached to it they unload too
18:53 hecks cue the effing x files theme at this point because I don't know, man
18:53 hecks I don't move around too much attached to an entity
18:53 hecks re-read my rant before you chime in again, man
18:54 jas_ yeah attachment really seems to suck
18:54 jas_ it reminds me of the helicopter mod.  great mod, i really liked it, so i added it to the server i had at the time
18:54 hecks oh, falling out of a heli randomly
18:54 jas_ and was surprised to see how much it broke in multiplayer, yeah
18:54 IhrFussel NO, I'm talking about when you walk AWAY from an attached player they will disappear together with the entity as soon as you are X mapblocks away (depending on your settings)
18:54 hecks okay, that's even worse
18:55 jas_ it would warp to strange places.  and i dunno, i've tried attachments a few times and was left pretty confused
18:55 hecks but I'm the only one on my server...
18:55 hecks https://www.youtube.com/watch?v=HQoRXhS7vlU
18:55 IhrFussel MT cannot have all entities loaded at all times...the server would die instantly
18:55 hecks thank you for this wonderful insight my friend
18:56 jas_ sometimes i think minetest doesn't really remove objects.  it just says it does.
18:56 hecks it does it very very inconsistently
18:56 jas_ that's what that theme song reminded me of
18:56 hecks whenever it feels like it, basically
18:56 jas_ haha
18:56 IhrFussel Set active_block_range to something high..like 50 and then spawn a bunch of mobs on the map in different areas...I bet the lag will make it unplayable
18:57 jas_ oh and attaching sounds to objects is interesting too, and try stopping a fading sound, or ramping it back up.  heh, nevermind that.
18:57 hecks Ihr, are you doing this on purpose
18:57 hecks I'm about to get an aneurysm
18:57 jas_ can you set it to 50?
18:57 jas_ tempted to try
18:57 hecks anyway, I raise you a better one
18:57 hecks make an entity
18:57 hecks make sure that entity can be moved, it can be a cart that you pull, for example
18:57 hecks now attach another to it
18:58 hecks take the cart and ride away somewhere...
18:58 hecks ...x files theme plays
18:58 hecks pretty much every time i try to do something with entities in minetest
18:58 hecks we're in Area fruggin' 51, anything can happen!
18:59 jas_ yes that sounds about right
18:59 hecks so I got this mob system...
18:59 jas_ yea?
18:59 hecks I do all the loading and unloading manually just to avoid being at minetest's active block system's mercy
19:00 jas_ i removed the abms from mobs_redo personally
19:00 jas_ o
19:00 hecks Still, I loiter around in the same area for enough time and the amount of mobs seems to grow...
19:00 jas_ you mean something else, sorry
19:00 hecks DA DA DA DAAAAA
19:00 hecks i t i s a m y s t e r y
19:01 jas_ oh in mobs_redo?
19:01 hecks well I don't use ABMs and when I heard that that mob system is using ABMs, I was like, wow what are you doing
19:01 hecks no in my system
19:01 jas_ oh ok
19:01 IhrFussel Another problem is that active_block_range controls the ABM range too ... if at least ABM and entity range would be separate maybe servers could make more entities visible on the map
19:01 hecks You see, active_block_range does not actually control active block range.
19:02 hecks It doesn't process entities per mablock, but multiplies this distance by 16 and uses it as an euclidean radius
19:02 IhrFussel I set mine to 1 and it indeed only loads entities that are ~16 nodes away
19:02 hecks in any case, I actually have a "virtual mapblock" system and load and unload entities using it, just to avoid dealing with this bullshit
19:03 jas_ the default is already low at 3
19:03 hecks also I don't use ABMs, but instead find floors
19:03 jas_ i have an insivible spawning node, it's super cheesy
19:03 hecks it's still fast because it only runs when the player's "active" mapblock changes
19:03 hecks your spawning node can and will be destroyed by players
19:03 hecks use my approach, it's foolproof
19:03 hecks not as expensive as it sounds
19:03 jas_ https://github.com/jastevenson303/Glitchtest/blob/master/mods/mobs/nodes.lua
19:04 jas_ haha
19:04 jas_ (i'm not proud)
19:04 hecks Ouch
19:04 hecks Hell is other people's code!
19:04 jas_ no, no, i wrote that lmao!
19:04 jas_ anyway
19:04 jas_ it's a lot of fun, minetest.  but it's got a lot of... issues
19:05 hecks https://pastebin.com/8WGEDUva
19:05 Cornelia Well, until recently, it was only version 0.4.* !! :P
19:05 hecks Yeah, and we're on 5.0 now!
19:05 jas_ my dream is to learn c++ and possibly see about libpd + minetest.  and procedural sounds/music.  haha
19:06 hecks What a pace! Good job, developers! They must be coding 24/7 running on ramen and black coffee ;-;
19:06 hecks All you'd have to do is make luajit's ffi work in minetest
19:06 hecks I wonder if it already does
19:07 hecks and my dream is not having to use c++ to make things work in minetest lol
19:07 jas_ i dunno what that is, hecks, but it's very pretty code
19:08 hecks It's virtual mapblocks
19:08 jas_ neat
19:08 hecks if I didn't apply super clean OOP I would've tripped over the volume of my code long ago
19:08 jas_ i will show one last thing before i go
19:09 jas_ in this mod, the sneak jumping, the physics... it's tied to the HUD! hahahaha https://github.com/jastevenson303/Glitchtest/blob/master/mods/sneak_jump/init.lua
19:09 jas_ bbfn
19:09 hecks wait what
19:09 hecks don't go just yet because I need you to explain
19:09 hecks point me to the "wtf" line of code if you can
19:14 huesal__ joined #minetest
19:27 riff-IRC joined #minetest
19:27 hecks joined #minetest
19:46 ensonic joined #minetest
20:18 cafee__ joined #minetest
20:19 Giorge joined #minetest
20:21 hecks I did some more exhaustive testing
20:21 hecks the netcode situation is not as dramatic as I thought; a dodgy 135ms connection is still quite playable
20:21 hecks the issue lies entirely in net-naive gameplay code
20:22 cafee__ joined #minetest
20:27 cafee__ joined #minetest
21:13 cafee_ joined #minetest
21:34 GreenDimond joined #minetest
22:32 MinetestBot [git] maxis27 -> minetest/minetest: autojump setting: Remove repeated doc line (#8041) c26eab6 https://git.io/fhmtC (2019-01-02T22:32:19Z)
22:52 ensonic joined #minetest
22:55 cafee__ joined #minetest
23:40 huesal joined #minetest
23:45 Gael-de-Sailly joined #minetest
23:53 IhrFussel left #minetest

| Channels | #minetest index | Today | | Google Search | Plaintext