Are bench ticks held when no players nearby?

are bench ticks held when no players nearby?
when a player enters the grid square, are all those ticks pushed thru one at a time?

assuming 1 tick per second, if no one entered the grid square for an hour, would there be 3600 ticks waiting?

can we get some confirmation whether or not this is accurate?

as far as I know all stations work independently of the presence of the player , on servers even when offline , in solo / coop should work of course only when the game is on but otherwise it should not matter where the player is

Varies on the thing doing its thing.

Online with a Server, everything should be ticking away regardless if anyone is even on. (inless this changed recently)

SP, I’ve found timers/counters to be wonky. They don’t “stop” per say.
You can throw 10k of iron in forge and roam off, and come back and they keep going. (most of time) Sometimes I’ve come back and 7 stacks are ready, when only 1 should have finished. Or magically its all done.
They do tick by in SP, Never found it consistent.

I’d warn only for expired items, to stay around. Or when hatching eggs in Compost Box

I’ve thrown eggs in, 24 hour timer (back in day, you’d be gone 5mins and come back to a dead baby)
Thou on setting now, its in Hour. Its often pretty correct, has dropped extra mins on its own. found alot of dead stuff time to time cause timers didn’t match up when leaving my base.
Or filling it up with meat, being gone from base for 5mins and it all being done.

I tend toss all eggs in and go Sort Chests/Build for abit. Had zero issues doing that near by.

I’m going to be honest, I don’t think the stations ‘tick’ when they are in inactive regions. Instead I believe they pause and then when the region is active again it does a calculation on crafting stations that are interacted with.

The reason for this is I have more often than not gone to a furnace that had a ton of stone in it from the day before and when I interact with it, all the stone you can see inside instant crafts and the amount of fuel it should have used is expended as well.

There could be something else going on here. But this is what I’ve seen.

2 Likes

@Taemien is correct, stations, like most other things get completely suspended when there are no players around, the crafting queue simply has a “catch-up” mechanic once they become active again.

4 Likes

Yup, this is the way it was explained to me when I was curious about the “insta-craft” surprises on occasion. It always occurs when you’re either just logging in, or haven’t been to your base for some time. Granted, I’m not sure how this works on PvP. I assume it activates when anyone looks in your bench. Meanwhile, I believe PvE it’s only when a clan member accesses it.

1 Like

right, this is how i understood it… BUT then came the concept of how it would catch up. someone mentioned it would store up ticks then apply them all at once (instead of just doing the math).

obviously, if it’s done this way it would crush performance… which is at the core of why i’m asking.

That’s simply not possible

well, that’s good to know… tho i could see it being done (just running the OnTickEvent handler in a loop… ** shudder **)

the question here is… if i had 100,000 furnaces or fish traps or grinders or etc… (tick-able objects) and no one was logged in, the server should see very little cpu/gpu activity. also, if a single player where to log into an area way up north with no tickables within 5 grid squares… the server should, likewise, be mostly inactive. if that player started walking towards tickables… at some point he’d come in range of something to turn them on. it could be animal life, tho i’d hope this would have very little impact, or a single fish trap. at that point, having been off for 2 weeks, things would get interesting…

the fish trap, being serviced by one of the threads in a pool of nCore-2 threads, would need to catch up (it had an 3-week supply of bait, let’s say). as it catches up… how many database updates would be needed? i would hope the object would tick on the server which might set a flag for dumping it’s updated list of traits to a database in 1-N seconds. Additional updates to the trait list would just replace the one in the list to be cached out. similarly, the list the object is being held in should be a map keyed by the object-id, which i would hope is an integer and not a string. all this comes together to allow the tickable to tick and have its state saved to the database then passed around to everyone within a grid square. how it’d be passed around would be via a queue of msgs sorted by priority to be sent to the various players in that area… and a few times a second the top packets would be sent over the socket (i’d prefer udp if i were writing it) on a multi-threaded handler in such a way that all packets for the same client would always be handled by the same thread. the number of threads servicing the communications would be 1 or 2 less than the number of cores on the box. done this way, there would be no slow down in processing ticks and the loads on the server would be manageable until a few tens of thousands of tickable objects are present.

of course, we don’t have that today on conan. a mere handful of players with 20-50 benches will drop a server to its knees. as a server dev, that would be embarassing. in a world where a normal desktop and push 1m+ pkts per second and has 8+ cores for processing… 50,000 tickable objects in a single grid square with 1 player logged into that gridsquare should have zero issues. yet, i log into servers where i am alone and everything is dead slow.

WHY is the question.

anyone that’s logged into a modded server with any substantial population for a few months since last wipe has felt it. what’s going on? what’s slowing things down?

i guess one question would be… does the core have a thread pool to run the various objects spread across the world. after that, does it bundle database updates inorder to minimized database updates? are the db queues backlogged? since it seems to slow down over time… could it be related to the event list that just keeps growing?

thoughts?

(sorry about the block of text… the caffeine kicked in)

It’s the same on PVP :slight_smile:

What? Only when a clan member does? I only meant that you can’t view what’s being crafted unless you look inside the bench. Since this can only be done by clan members in PvE, it stands that no one else that goes nearby your base can trigger this “phenomena.” Meanwhile, on pvp, anyone can access said benches, making it likely that it will trigger when anyone looks in. Granted, it shouldn’t do anything when just going nearby the base… or maybe it does I suppose? It only works when you first visit the base. Hard to say. My base is a bit off the beaten path, so it doesn’t get visitors as regularly as, say, an obelisk base or noob river.

Oh! I misread, yes the bench has to be accessed although for me personally I have never seen the catch-up happen on another clan’s benches. Doesn’t happen only if someone enters the area.

I feel it might, the more I think about it. If it continues to run when you’re in the area, it seems it would do the same when others are as well, much like thralls attack and golems harvest. Granted, it doesn’t have to since no one can see it. That’s why I’m not entirely certain. If a tree falls in the woods in the woods and no one is around, does it make a sound? Same idea… kinda. Yes, it does, but you get my point. Can’t prove something unless you see it… or unless you know how it’s coded. I don’t. :neutral_face:

1 Like

It might ya, but I think for me the setup just wasn’t there to see it. Most of the bases I’ve decayed, entered or raided are either hidden so no benches/small amount or are used regularly.

I’ve seen the catch-up many times for my clan though… especially in our satellite or hidden when we’d go to check up or grab something.

1 Like

Not possible still means not possible… As in, it’s not possible within this game.

Things cannot tick faster than the server… and most of the server runs on a single thread since unreal blueprints can only be interpreted on one thread and most of the game is made with blueprints. So no, your fishtrap is NOT running on a separate thread… the server goes and updates every actor as many times a second as you set your max tickrate to (or as many as it can in case it can’t keep up)

So you cannot “bank up” ticks

That’s just people overdecorating stuff… also the server is designed for 40 players max, sure on good hardware you can push it further, but not in a linear fashion.

There’s also a lot of people confusing client performance with server performance… for example placing multiple intersecting lights on this engine will absolutely murder client performance… which is something people very often do in their bases.

Bottom line, the most impact on server performance relatively to the usual quantity used by players is placeables and it’s even worse if you have thralls in-between trying to navigate that mess.
So typically RP servers will run like trash even on the best of hardware as people over-decorate their bases.

1 Like

sigh

please tell me this is a guess and you’re only 20% sure that’s how it’s done. otherwise, ouch.

are all communications FROM the server pushed out on a single thread to all clients?

are all communications RECEIVED from the clients received on a single thread?

is it the same thread?!

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.