Fixerol wrote:I've heard about fps issues on this server spawn... that I never visited, so I joined to see... it looks awesome... and 16 fps... that is worst spawn and near-spawn fps I've ever seen on 70 nodes view, and it is on Radeon HD 6870 (solid medium-end videocard)!
Sokomine wrote:Fixerol wrote:I've heard about fps issues on this server spawn... that I never visited, so I joined to see... it looks awesome... and 16 fps... that is worst spawn and near-spawn fps I've ever seen on 70 nodes view, and it is on Radeon HD 6870 (solid medium-end videocard)!
Yes :-/ Now imagine how it looks like with the GPU a Celeron G1610 comes with...
I still believe that there has been too much automatization going on. The server is too busy handling all the technics and pipeworks transports, and the client needs to update all too often.
HugoDrax wrote:Sorry, if this is not a good place to ask, but I have a problem with map. I downloaded world from this post to play offline I have dreambuilder_game installed but when I'm turning on the game I have only empty terrain (no buildings, just water, hills and trees, just like a new game).
HugoDrax wrote:Can someone help me, please? I tried to start this world as singleplayer and as local server as well. I don't know what I'm doing wrong?
twoelk wrote:Actually it's quite nice to see the landscape as it was when the server started.
I still got screenshots from the first buildings at spawn. The server has come a long way
twoelk wrote:HugoDrax, what mapgen is activated?
Try singlenode as mapgen, some places look like mapgen griefing.
Might I ask how they were abused, specifically? It should be safe to say, since they were disabled. The greatest thing I ever enjoyed about minetest was the automation and chain reactions. It's a crying shame that they have to be gutted now.VanessaE wrote:I have disabled the pipeworks mod and most of technic. They're too ripe for abuse in a multiplayer environment. :-(
Death by a thousand cuts. Well, that's good though, because it means there wasn't some huge unassailable exploit. So maybe it can get working later.VanessaE wrote:It's not really just one thing by itself, it's a collection of things
Well, nuclear reactors aren't honestly a huge load are they? There's only one ABM for the reactor core, that doesn't fire too often, and it isn't too expensive to check for nearby blocks at known coordinates. Granted the use of nuclear reactors to power things like massive furnace arrays could slow things down.The biggest issue came from long multi-kilometer runs of cable, dozens and dozens of nuclear reactors ganged together in places, multiple quarries used together to dig larger holes, and so on.
Okay, so... if I understand right, the switching station follows along all the wires it's connected to, and finds all the producers, receviers, and batteries in the network, not only on construction, but every single second via an ABM? That's so fixable! The ABM should just be iterating over a pre-calculated list of machines. Whenever a technic node is broken, if it has a switching station, then the station traverses the network and updates that list. Whenever a technic node is constructed, it looks for a switching station in the same way, and if it finds one, does the network traversal. If not, it's offline.Lots and lots and LOTS of cabling just all over the place causes technic to churn and churn on it, trying to compute its electrical networks.
Well, sending a "follow path" message as an ActiveObjectMessage packet is easy enough, just have to add logic to look up, set and follow the path in content_cao.cpp. But sending the paths... some of them could be very large and complex. Minetest deletes its content downloaders when the game starts, so you can't send any new media or meshes or anything, so I'm not sure what the right way to do it would be. You could add a "AddPath" packet, to add a path into a list of paths on the client, where it can send objects. But if the path was too big to fit in a single packet... should you continue in the spirit of minetest, and stall at the beginning to download all possible paths, like it does with media and meshes? Then only the server operator add paths, which sort of defeats the purpose of players being able to lay pipes.I agree with your path idea. I had originally suggested a "move until coordinates foo reached, then stop" approach, but I am not sure if the engine was ever extended to allow for that (or if it was, pipeworks has not been rewritten to use it). Your idea is better.
Yeah, thus why I said it'd be a hack. Until that path following is done client side, you won't be able to use technic at all, since servers can't handle calculating the position of all those thousands of entities every time someone starts up a quarry.Switching between "full" and "empty" tubes would destroy the look of the mod though - 90% of that comes from seeing items flowing through them, as it is meant to somewhat mimic similar mods in Minecraft.
cy wrote:Death by a thousand cuts. Well, that's good though, because it means there wasn't some huge unassailable exploit. So maybe it can get working later.VanessaE wrote:It's not really just one thing by itself, it's a collection of things
Well, nuclear reactors aren't honestly a huge load are they? There's only one ABM for the reactor core, that doesn't fire too often, and it isn't too expensive to check for nearby blocks at known coordinates. Granted the use of nuclear reactors to power things like massive furnace arrays could slow things down.
Okay, so... if I understand right, the switching station follows along all the wires it's connected to, and finds all the producers, receviers, and batteries in the network, not only on construction, but every single second via an ABM?Lots and lots and LOTS of cabling just all over the place causes technic to churn and churn on it, trying to compute its electrical networks.
Traversing an entire network of connections, every second? Yeesh.
Well, sending a "follow path" message as an ActiveObjectMessage packet is easy enough, just have to add logic to look up, set and follow the path in content_cao.cpp.
If the wires are more problematic though, then nerfing how pipes work won't solve the problem. Need to fix how it keeps re-calculating the same network of wires, first. That seems doable entirely on the server side, though.
Sure, no problem. I'm mostly just thinking out loud anyway, not actually expecting you to go reprogram technic for me.VanessaE wrote:Whatever the case, I'm leaving technic to others to work on. It's not my mod anyway. :P
Yeah, but--that ABM has to do area checks
D8 ...say no more.technic uses forced loading and has world anchors to keep things alive,
Its own internal tables (called technic.networks) are referred to as "cached". Now that I look at it, they do seem to cache in each network a list of machines, and only traverses the nodes, if the list for the current LV/MV/HV tier at the current position doesn't exist. That would make things a lot more efficient. Thanks I didn't notice that before.I'm not exactly sure, but I do recall being told that it iterates through not just the map, but its internal tables, reading the map as needed and making/referring to its records of the circuits it has seen since the last restart.
Yeah, I didn't see that they had cached their networks so as not to traverse every time.Not just every second -- every time something significant on network has changed,
The only way to force a re-traversal is to move the switching station. Like with a piston. I've been ...guilty of doing that before. (What? It's great for disabling power hogs when your solar panels are offline!) I certainly would hope that even a busy server didn't have dozens of switching stations being pistoned around every second though. That's something I don't think anyone could expect to work without problems.which on a busy server could be dozens of times a second, depending on what people are doing and what kinds of automation are in place.
Yeah I'm not gonna sell the farm or anything.Sounds reasonable, but good luck getting the core dev team to allow for such a feature.
On that note, another use for paths might be more efficient mobs. You can animate the models currently, but you still can only set their basic velocity in one direction at a time. That's why mobs run through you instead of stopping sometimes, same as when items drift out of pipes. I could even conceive of "paths" that had some sort of logic to them, telling the client "this is an aggressive mob. Have it chase after the player!" So, yeah there are a lot of applications for "generic" paths.open-ended, generic,
Yes, in the case of pipeworks, the path would be transmitted on construction of the pipe, or on loading of that chunk. Breaking a pipe would require calculating and sending new paths. What wouldn't be required is sending the path to the client, as a sequence of "go left, now go right, now go up, now go down" commands, every single time for all the possibly thousands of entities that ever enter the pipe.handled on-demand as players build.
That might be a good idea. But it might be premature optimization. The real problem is sending all the direction changes for all the entities every time. Even uploading the whole path, every time a pipe gets broke and reconstructed would be orders of magnitude more efficient than that.It would need to be able to send just the changes to the client
Oh, so the server has to store geometry for all the faces of each cable segment? That certainly doesn't seem ideal. I thought only the client calculated the geometry, based on the mesh that the server uploads and then just forgets about.One thing that would help is if there were a proper "cable like" draw type, so that the server wouldn't have to manage so many nodes when adding/removing things from a network segment.
I might check that one out...sofar has a pull request against the engine that adds "connected" nodeboxes that looks like it would work for this as well as pipeworks' tubes (one of the examples shown therein is mesecon wiring),
jaysned wrote:Is there still a download link to the old map? I dug a bit through the Minetest section on your site and couldn't find a survival world download that wasn't current (new world). I had some buildings and construction strategies that I wanted to review. That, and I want to...sometime...revisit the stuff I made the last couple of years for nostalgic purposes.
Users browsing this forum: No registered users and 4 guests