Jump to content

Progress of time reference: world-chunk-player


AlteOgre

Recommended Posts

Hello,

When playing on servers, you notice progress of time can both be quite crippling and boosting at the same time if you compare the mp experience with the sp experience. When you're not in-game while others are, time progresses to affect food decay, plant & animal growth and reproduction, torches burning out and barrel aging/ripening processes (and crop decay as of next update) in the chunks you are in, even when your whereabouts are nowhere near the place where other players are active. So, when you rejoin the server after some period of absence, you can find all your food (and crops) decayed, the torches you placed burnt out and all those saplings you planted the day before fully grown. This is not encouraging nor adding to the intended immersion for any player in early game, for players who play less frequently or on a more occassional/casual basis than the more fanatic ones on any server. The food (and crop) decay aspect is the most discouraging one in this respect, obviously. Many experienced veteran players have hardly experienced this as an inconvenience as they either hardly played as a new player on servers since many time dependent relationships were introduced, or are already aware of how to deal with the odd inconveniences, as I experienced myself as well after a while. Still, it does not seem right in various ways that the mp experience differs so strongly from the sp experience, for any player, in any in-game development stage. I think any game ready for beta release should strive to provide similar mp and sp experiences to its (new, cash-flow generating) player audience especially when it comes to mechanics that strongly affect what a player does or plans to do on an in-game-daily basis.

The time progress mechanics connected to food decay, crop growth (and decay) and all of the other time dependent processes are referenced to a server timer, and calculated based on 'world time progress' as soon as a chunk is loaded. I wish to suggest to consider to add chunk and/or player based time referencing for those mechanics and make this configurable for servers. This would imply adding chunk and player time stamps, respectively updated every time a chunk is unloaded or a player logs off. These can be used as reference for calculation of food decay state every time a food item is loaded/accessed by the player who last touched/accessed/processed it and also for calculation of any other time dependent states each time a chunk is loaded. Progress in time will resume normally once players (incl. their inventories) and chunks are loaded, just the progress during the time they were not loaded will have stagnated.

When a player is online and moves from one chunk to another, and eventually chunks they started in are unloaded and when they return and load chunks back again, you would want time for both food decay, crop growth (and decay) and other time dependencies to have progressed during the entire time that player was online. So, player online time duration should be leading in any case. This implies a server must store the last login time of a player and the duration they played since then, for chunk progress mechanism updates to be referenced. Then, upon a chunk reload, the progress for said mechanics shouldn't be adjusted by just accounting for the timestamp left in the chunk, but corrected for player playtime since last unloading event of that chunk and until recent loading event as well, and that for the player who last left the chunk before it was reloaded. This implies a chunk would also have to store 'last player who was in the chunk before it unloaded'.

For food decay one could consider two variants. One where a prepared food items decay is calculated based on a timestamp connected to a player and their nett playing time, and another where food decay is calculated based on the time the chunk where that food item is stored has been loaded. For multiplayer servers this can make a huge difference in areas where many players are active in the same or overlapping areas for many possible reasons. For instance, for hardcore PvP servers, where player competition can have quite a devastating character, players can force load chunks of other players' bases and consequently make their food (and crop) storages go to waste. For such servers it may be recommendable to use 'player playtime referenced food decay'. For strict PvE servers where many players are building their own and in many cases only visit each others habitat for direct interaction, 'chunk loadtime referenced food decay' would be an acceptable alternative. For cooperative food production and sharing it will be worthwhile to 'retag' a food items decay time reference with another player as soon as the item is handled by a different player than the one that originally 'created' the item.

In case of 'player playtime referenced food decay' there can be a potential 'tavern exploit' where one player processes a lot of food in single item containers (crocks) in one area to leave it for others to use when they need it and the producer player logs off for an indefinite period of time. Chances of players actually doing this may be relatively low, but it is not an unthinkable scenario and it therefore justifies a counter. On servers where this possible exploit is deemed a serious risk, 'chunk loadtime referenced food decay' may be considered. An alternative is to add a 'claim ownership/access permissions override'. Any food item in a claim accessed by anyone with specific privileges in that claim, will have decay progress dependent on the in-game time of any of those players. If a 'tavern' has food stored produced by player A and player A shares the access to the containers in that tavern with players B and C via the claim system, in-game presence of players B and C will also ensure decay progress of any of the food items in the claim. Also with this scenario in mind, the desirability of any option can strongly depend on the type of server, so configurability seems required. For PvP/faction focussed servers the claim override option may be best suited. Another alternative may be to have a setting per player that determines whether the food decay for items produced by that player will be 'player playtime referenced' or 'chunk loadtime referenced'. That can then be set at the moment a new player joins the server, either defaulted or left to the player to choose. Any food item will then get a tag indicating how food decay progress is to be calculated. As soon as a different player handles an item or a food holding container, the tag of the affected item(s) can be made to irreversibly switch to 'chunk loadtime referenced'.

Seasons are planned to be introduced in a next game update. This will enhance the effects offline time progress will have on individual, new and/or more casual / less active, players on servers, and will therefore only increase the urge to address the issue brought forward here.

Overall:

  • For food decay, calculate the actual shelf life progress of any item based on the playtime of the player who last processed/handled/stored it: 'player playtime referenced progress of time'. If a player creates a processed food item and stores it in some container, the shelf life progress will be equal to the time that player is in-game. As soon as another player 'takes over', the in-game time of that player will become determinant for the shelf life progress.
  • For all other processes, calculate the time progress based on both the time the chunk where the affected items/entities are located and the time the player spent in-game who was the last to load the chunk: 'chunk loadtime referenced progress of time'. This may also be useful as an alternative for food decay, dependent on server/community playstyle/goals.
  • For food decay a combination of both calculation methods may also be considered.

The proposed changes will not lead to an 'ideal fix of the issue' (which may simply be non-existant or not achievable), but it will improve the situation considerably for a lot of players on servers. For new and/or more casual players on servers who value the experience of the various sp game dynamics next to having company while playing, the situation will become much more pleasant and inviting. For servers where most players are involved in joint efforts, focussed on one or only a few locations, or where most players spend their time 24/7 on the server, it may be worthwhile to leave the option to not use this alternate time referencing method and just keep using the present method.

There may be more aspects to address when considering this suggestion. Any progressive insight will be processed in the core text above.

This will obviously not be of any added value for single player worlds, but for multiplayer worlds this can have profound impact on the experience of individual players and on their motivation to continue playing, and consequently on long term server and community viability.

I hope the above makes sense, you will be able to find a suitable way to tackle the issue brought forward and my suggestion is worth considering.

Cheerio,
Alte

 

Edits:
1)
After more pondering it became obvious that for food decay on multiplayer servers the aforementioned 'timestamp connected to a player' option would be the way to go. In other words this would concern a system where each food item is time-tagged with the player who last handled it. This could also be seen as an 'ownership system' as worded by radfast in one of his constructive comments below. This post summarizes this view and some additional thoughts related to hoppers.
2) This also concerns the burning time of torches, and the aging/ripening times for various recipes in barrels. For these processes I would also recommend to use time referencing based on a combination of chunk loading/unloading and player activity.
3-5) Various rewrites. Added remark related to potential 'tavern exploit' that could affect mass produced food in single item containers, as discussed with Saraty on Chrometech. Included 'crop decay'.

Edited by AlteOgre
Updated text with progressive insights.
  • Like 1
Link to comment
Share on other sites

In past week I've been playing on a server mostly and together with the group of players on that server, many of whom are new to VS, experienced more of the effect of food decay on server gameplay. I now think the projections I made in the first post seem quite careful. The effect of food decay while server time proceeds but players are absent themselves, can be quite devastating for new player motivation and their willingness to keep on playing and truly enjoy this splendid game. Even for more veteran players with adequate acres, livestock pens and cellars in place the effect of food decaying when they've had other daily distractions than playing on a VS server can be very disturbing as they find themselves spending much of their time restocking their food supplies before they can resume building, exploring or whatever they had planned on doing. I believe this to be of profound effect on player loyalty and long term viability of the player base for VS, especially on servers. And as servers are a very relevant cradle for game improvement and long term player loyalty, I think this should be a high priority issue. So, this is a strengthened plea to consider the above proposal or think of other ways to tackle the issue brought forward.

Please don't mistake this for a nagging complaint of someone who cannot deal with the options provided in the game or who doesn't get the point of the hardship and gameplay focus, because it's definitely not. I manage quite well playing games like this as they totally fit my style, and also don't have a hard time surviving and patiently developing my base, exploring new terrain, unlocking new technology etcetera, even with the food decay issues related to servers. Yet, I think many players will (eventually) find this issue wasting their gameplay experience on servers and this seriously undermines the viability of VS servers.

I am very curious to hear other people's views on this.

 

Edit: Had an additional realisation regarding this. Part of the player community loves to play on more than one server. The food decay issue makes it less attractive for them to do so, resulting in a nett lower average playtime.

Edited by AlteOgre
Additonal realisation regarding the effects of the food decay on servers on average playtime.
Link to comment
Share on other sites

I don't think it's that big of an issue right now, because there is absolutely no need to stock food. Your primary food sources simply never go bad, so you simply use those.

If you have a pen full of animals, they will have given birth and grown up while you were away, and slaughtering one will instantly give you enough meat for a full cooking pot. If you have berry bushes planted and fenced off, or bee skeps in a fenced off area, those will have regrown and repopulated while you were away, letting you instantly harvest for fruit nutrition. And if you plant a fresh batch of vegetables and grain on fenced-off farmland, those too will be ripe and waiting whenever you log in next, while your fallow farmland will have recouped all of its nutrients. It takes some setup for all the fencing required, sure, but it is possible even for a new player - especially if you borrow a saw from someone else early on.

However, I can see this becoming a problem once seasons are implemented. If crops and berries do not grow during certain times of the year, or perhaps even die if they are planted during that time, then it is possible to log in and find much of your preparation destroyed. Or rather, you will know before logging off that you have very little means to prepare unless you can predict what season it will be when you log in again.

Unfortunately, I don't fully understand how the solutions you suggested should work, especially regarding edge cases and potential exploitability. For example, let's say a player stores food in a remote location and then walks away, leaving it unloaded. Eventually, they log off. Sometime later, they log in again, play some time, log off again - all without ever loading that remote area. Repeat this process four or five times, over the course of a week or two. The remote location is never loaded by the player again. Now, someone else accidentally walks past and loads that area for just a few minutes before it unloads again. This other player logs off soon after, and does not log in again. Finally, the original player comes back to the remote area the following day. In what state will they find their food? Would the result be different if the other player had remained online the entire time until the first player's return? Would the result be different if the brief loading by the other player had happened near the beginning of the first player's extended absence instead of near the end?

Edited by Streetwind
Link to comment
Share on other sites

This is a smart analysis @AlteOgre.

It's also important to think about how this could be coded.  A "per-chunk per-player" timer sounds complex to code.

My suggestion is that:

-  every inventory  (player, camp fire, basket, chest, storage jar, placed cooking pot / placed crock) has an associated player "owner"

-  the "owner" is the last person who opened that inventory in-game

-  food in that inventory spoils according to the owner's game timer - and spoils at the same rate even if the player is in a far remote part of the server

-  the same mechanic for a camp fire temperature and the cooking / smelting progress arrow

-  if the chunk unloads - or the player sleeps in a bed - then when it reloads the food spoilage is incremented by a necessary amount to cover the gap in server time (this might need multiple ticks of the fire mechanic to be quickly iterated - but surely OK in performance terms for a server to do that for only one fire)

 

This system would be quite easy to code.  It would solve the motivation problem .  It would also solve some minor issues seen when players travel far from their home, or try to leave 'caches' of food in some place far from home.

The switching "owner" if items are placed or removed in a storage inventory prevents abuse in multiplayer.  For example, you cannot ask your friend to build and fill a Storage Jar then go offline for  a week and leave behind a 'magic' Storage Jar where nothing spoils.  If any other players use this Storage Jar - even if they only look at it - then the food spoils on these player's timers.

The mechanic I have described would allow for a "personal storage jar" system - kind of like flat-mates having "my shelf" in a shared fridge.  So let's say there's a house, and each player has his/her/their own room in the house, the players can each keep a personal storage jar in their own room.   So long as nobody else looks inside the jar, the contents of the jar can remain in stasis for as long as the player is offline.    Could maybe be combined with a padlock system to make sure nobody else can look inside the jar?

Finally, to prevent the mechanic I have described from being abused by players using a hopper - the attempted abuse would be to fill the personal storage jar of their offline buddy using a hopper, without opening the inventory, and try to store foods in stasis that way.  This could be fixed by one additional mechanic, where if an inventory receives an item from a hopper, it updates its "owner" to the closest online player?

 

Edited by radfast
  • Thanks 1
Link to comment
Share on other sites

I've noticed some inconsistencies with other time mechanics when sleeping:

- if I sleep for 5 hours when my camp fire is at 500°C, I wake up and it is still at 499°C - I think it should be cold by now

- I'm not sure but it looks like crop growth does not advance in the hours when a the player sleeps (in singleplayer)

 

For realism, I feel that crops and saplings in my base should grow if the game time (server time) advances, and animals should eat and breed and grow, even if I am in a far distant chunk or offline or sleeping.  So in code terms each crop and each tree should have a target "full growth" time and should be fully grown if the chunk loads after the server reaches that time, even if the chunk was unloaded meanwhile.

I don't see any down-side to this in multiplayer.  If a player goes offline and returns next week to find all his/her/their crops and animals and saplings matured, that's a bonus surely?  (So long as farm animals don't die if their food trough is empty.)

Of course there are risks - without good fencing, maybe a hare eats all your crops while you are away, maybe a fox eats all your hens.  Again I think this is OK in gameplay terms - it's OK to have a malus alongside a bonus.  And a player can mostly protect against it with good fencing and other security measures.

Edited by radfast
  • Like 1
Link to comment
Share on other sites

17 minutes ago, Streetwind said:

I don't think it's that big of an issue right now, because there is absolutely no need to stock food. Your primary food sources simply never go bad, so you simply use those.

If you have a pen full of animals, they will have given birth and grown up while you were away, and slaughtering one will instantly give you enough meat for a full cooking pot. If you have berry bushes planted and fenced off, or bee skeps in a fenced off area, those will have regrown and repopulated while you were away, letting you instantly harvest for fruit nutrition. And if you plant a fresh batch of vegetables and grain on fenced-off farmland, those too will be ripe and waiting whenever you log in next, while your fallow farmland will have recouped all of its nutrients. It takes some setup for all the fencing required, sure, but it is possible even for a new player - especially if you borrow a saw from someone else early on.

However, I can see this becoming a problem once seasons are implemented. If crops and berries do not grow during certain times of the year, or perhaps even die if they are planted during that time, then it is possible to log in and find much of your preparation destroyed. Or rather, you will know before logging off that you have very little means to prepare unless you can predict what season it will be when you log in again.

Unfortunately, I don't fully understand how the solutions you suggested should work, especially regarding edge cases and potential exploitability. For example, let's say a player stores food in a remote location and then walks away, leaving it unloaded. Eventually, they log off. Sometime later, they log in again, play some time, log off again - all without ever loading that remote area. Repeat this process four or five times, over the course of a week or two. The remote location is never loaded by the player again. Now, someone else accidentally walks past and loads that area for just a few minutes before it unloads again. This other player logs off soon after, and does not log in again. Finally, the original player comes back to the remote area the following day. In what state will they find their food? Would the result be different if the other player had remained online the entire time until the first player's return? Would the result be different if the brief loading by the other player had happened near the beginning of the first player's extended absence instead of near the end?

Thanks for replying Streetwind.

The issue does exist and is real for new players on a server. And dependent on a players luck in the biomes they start in, and whether that environment hasn't already been stripped to the bone by players who got there before them, the issue can persist for quite a long time as it can take quite some time before players actually can enjoy the fruits of sustainable food supplies.

Yes, the issue will become ever more of a problem when seasons are introduced. Seasons will make both coders and players face with many new challenges anyway, so let's not get into that too much for the sake of focus on the topic at hand.

Regarding food decay I already tried to explain that food decay timers should be player dependent anyway, and not chunk determined, for the exact reason you worry about potential exploitability. Let's move on and focus on the response of radfast as he goes into such matters in more depth.

Link to comment
Share on other sites

11 minutes ago, radfast said:

This is a smart analysis @AlteOgre.

It's also important to think about how this could be coded.  A "per-chunk per-player" timer sounds complex to code.

My suggestion is that:

-  every inventory  (player, camp fire, basket, chest, storage jar, placed cooking pot / placed crock) has an associated player "owner"

-  the "owner" is the last person who opened that inventory in-game

-  food in that inventory spoils according to the owner's game timer - and spoils at the same rate even if the player is in a far remote part of the server

-  if the chunk unloads - or the player sleeps in a bed - then the food spoilage is incremented by a necessary amount to cover the gap

 

This system would be quite easy to code.  It would solve the motivation problem .  It would also solve some minor issues seen when players travel far from their home, or try to leave 'caches' of food in some place far from home.

The switching "owner" if items are placed are removed prevents abuse in multiplayer.  For example, you can't ask your friend to build and fill a Storage Jar then go offline for  a week and leave behind a 'magic' Storage Jar where nothing spoils.  If any other players use the Storage Jar - even if they only look at it - then the food spoils on their timers.

The mechanic I have described would allow for a "personal storage jar" system - kind of like flat-mates having "my shelf" in the fridge.  So let's say there's a house, and each player has his/her/their own room in the house, the players can each keep a personal storage jar in their own room.   So long as nobody else looks inside the jar, the contents of the jar can remain in stasis for as long as the player is offline.    Could maybe be combined with a padlock system to make sure nobody else can look inside the jar?

The mechanic I have described could maybe be open to abuse for players using a hopper, so they could fill the personal storage jar of their offline buddy using a hopper, without opening the inventory, and store foods in statss that way.  Could be fixed by one additional mechanic, where if an inventory receives an item from a hopper, it updates its owner to the closest online player?

 

Thanks radfast, much appreciated,

Those are exactly my thoughts now as well. I originally didn't go into much detail although the essential thoughts were already in my first post. After pondering about it some more while playing on servers that would indeed be a way to go.

Regarding the hopper: In the spirit of the game I would expect any food product to be put into any storage container via a hopper to not get reduced decay time until he hopper is disconnected from the container and/or the container is sealed off. And only from that moment on the stored food item should have 'gained shelf life'. Until that moment ownership can be with the person who last handled the input. Any player performing the 'secure container' action would be assigned ownership for all food items in that container. As soon as the container is then reopened by another player, ownership will transfer. Anyway, ownership of containers should consequently be a thing in the game if this were to be implemented. Does that make sense?

  • Thanks 1
Link to comment
Share on other sites

Yes, I feel this is certainly workable.  You're right, maybe a special Hopper mechanic is not required - if players are smart enough to use a Hopper on the storage jar of their offline friend, they get a bit of stasis protection until the inventory is next opened.

The extension of this to camp fires is probably not required.  Example of two players, Anne and Bill:

- Anne builds a fire, places a crucible and lights the fire

- Anne now goes offline when the fire is still burning and the crucible is 50% done, but Bill is still online and nearby

- we don't want the fire to suddenly extinguish when Anne quits the server - Bill wants to see the fire lit still, so the crucible will finish.  When Anne next returns to the server, Bill can say "see, I finished the crucible for you".

 

-----

 

In contrast for food, with the system I have proposed:

- Anne places some meat in a storage jar, 1.9 days fresh, and now Anne immediately goes offline

- next (real world) day, Bill comes online, looks in the storage jar, and sees meat with 1.9 days fresh - "Oho, we have some meat!" he thinks

- Bill plays on the server for 2 whole in-game days, and the meat spoils - the meat timer will have advanced appropriately every time Bill looks in the jar

- Anne now re-joins the server and says "hey, what happened to my meat?"  Bill: "My bad."

But if Bill didn't touch the storage jar at all, then when Anne rejoins the server, the meat is still 1.9 days fresh.   Bill doesn't "know" that there was this fresh meat in the storage jar all the time, because Bill never looked inside the storage jar.  If Anne and Bill talked, then she probably just said "Don't touch my storage jar."

Edited by radfast
Link to comment
Share on other sites

@radfast - I like your thoughts. That's much more concise and to the point than the original, and actually sounds possible to implement. Less edge cases too.

I can still come up with at least one way to exploit that for quasi-infinite food preservation, but it involves paying realworld money for a secondary account. I suppose that's a reasonable barrier - and for server owners it should be possible to recognize the very unusual behaviors of such secondary accounts and ban them if fairness is desired/required.

Link to comment
Share on other sites

I think it is quite inconsistent to make this behavior dependent on the last person who touched the container. I am not sure how spoilage is currently implemented for the player inventory, but i would think that stuff in your inventory should/could be preserved with the offline time, because the player itself vanishes from the world. Everything else is in the world and ticks as it does when player are on the server.

However back to the mechanic of items not ticking when the player is offline, there could be a container that freezes when the player is offline (lore background: some magic bound to the player) that allows these mechanics.

Is the problem this timestamp (and the changes for food spoilage) should be introduced only the edge case of new players/players with less time  to avoid food spoilage or are there other use-cases that would benefit from this ?

Link to comment
Share on other sites

2 hours ago, P3t3rix said:

I think it is quite inconsistent to make this behavior dependent on the last person who touched the container. I am not sure how spoilage is currently implemented for the player inventory, but i would think that stuff in your inventory should/could be preserved with the offline time, because the player itself vanishes from the world. Everything else is in the world and ticks as it does when player are on the server.

However back to the mechanic of items not ticking when the player is offline, there could be a container that freezes when the player is offline (lore background: some magic bound to the player) that allows these mechanics.

Is the problem this timestamp (and the changes for food spoilage) should be introduced only the edge case of new players/players with less time  to avoid food spoilage or are there other use-cases that would benefit from this ?

As far as I can tell, currently any food decay progress is simply related to the server (or client in case of SP) timer. If a server is online, time proceeds and decay and growth proceed. This is independent on whether or not a chunk of the world is loaded. As soon as a chunk is loaded, decay and growth of any food items, flora and fauna are adjusted for the progress the 'server world' has gone through ever since the chunk was unloaded.
It may not be the most charming way to make 'ownership' and related decay time reference be determined by the player who last 'touched' any food item or the containers they are stored in, but it seems to be a possible option and as far as I'm concerned, it's an acceptable option that will effectively tackle the main issue brought forward. No other effective alternative options have been brought forward yet (not in this thread anyway).

If a new type of container would be introduced that would only be accessible for late game stages, then it would not contribute to tackling the issue at hand, namely regarding the food decay progress for players on servers when they are not logged in. So, no, that wouldn't solve anything.

The food decay issue is the main aspect, but I think it would be wise to consider plant and animal growth in this respect as well. As mentioned in my first post, these could be addressed with a slightly different approach. We discussed 'ownership' / 'tagging last player who handled a food item' in relation to food decay, but for plants and animals that wouldn't make much sense, and there also is no direct need to implement such a system for those time dependent item/entity states. It would be nice if plant and animal growth would only proceed in chunks when they are loaded, much like the way it functions in Minecraft. But, in the spirit of this game, I understand it would also be justifiable if plant and animal growth proceed as long as a player who last loaded a chunk holding them, would be online, so independent of the loaded state of the chunk. This could work by correcting the time progress of a chunk upon reloading with the time a player who last loaded the chunk has still spent time online while the chunk had been unloaded again. This still seems an acceptable option to me, and an improvement when compared to the current situation, where any plant and animal growth just progresses as long as the server is online. I tried to explain this in my first post. I hope it may be clearer now by explaining it in slightly different words.

Btw: Yesterday I had an additional realisation regarding this. Part of the player community loves to play on more than one server. The food decay issue makes it less attractive for them to do so, resulting in a nett lower average playtime. Just added this as an addtional remark to my second post.

Edited by AlteOgre
Link to comment
Share on other sites

37 minutes ago, AlteOgre said:

If a new type of container would be introduced that would only be accessible for late game stages, then it would not contribute to tackling the issue at hand, namely regarding the food decay progress for players on servers when they are not logged in. So, no, that wouldn't solve anything.

The container may be accessible only until late game but the inventory one not (basically stock up on food you want to keep before logging out).

The main question is, do players get enjoyment from the decay mechanic. Minecraft for example has no concept of decaying, so it doesn't have to deal with this and maybe a switch to deactivate the decay mechanic completely (currently you can extend the duration by 10x which would result in some foods be available for months before going bad) would end in the same results => player not having to worry about decaying food. As i see it it is a question of difficulty and ease of play instead of a mechanically one. This could theoretically even be handled as a mod.

As a sidenote: I personally don't like the way it is handled in minecraft, because if you go exploring and coming back to your base, your crops are still seeds although you were away for days.

Link to comment
Share on other sites

4 minutes ago, P3t3rix said:

The container may be accessible only until late game but the inventory one not (basically stock up on food you want to keep before logging out).

The main question is, do players get enjoyment from the decay mechanic. Minecraft for example has no concept of decaying, so it doesn't have to deal with this and maybe a switch to deactivate the decay mechanic completely (currently you can extend the duration by 10x which would result in some foods be available for months before going bad) would end in the same results => player not having to worry about decaying food. As i see it it is a question of difficulty and ease of play instead of a mechanically one. This could theoretically even be handled as a mod.

As a sidenote: I personally don't like the way it is handled in minecraft, because if you go exploring and coming back to your base, your crops are still seeds although you were away for days.

For a majortity of players, the survival fun in early game is to explore and set up base by yourself. Such a container will really not mitigate the issue brought forward.

No that is not the main question here. This thread goes by the assumption that food decay is part of the vanilla VS experience and is not to be discussed. If you wish to asses this feature as-is, please move to another thread. The topic of this thread is focussing on improving the experience of players on servers using the vanilla VS game features related to food decay and other time dependent progress mechanics.

Link to comment
Share on other sites

Note that this also concerns the burning time of torches, and the aging/ripening times for various recipes in barrels. For these processes I would also recommend to use time referencing based on a combination of chunk loading/unloading and player activity.

It also occurred to me that many veteran server players have already been active since before the introduction of various time dependencies so many of them have in fact hardly experienced to what extent the player-independent server time progress affects the early game experience. Just something to keep in mind for anyone considering the issue brought forward and the proposal on how to improve the game to deal with it.

Adjusted the first post accordingly.

Link to comment
Share on other sites

20 minutes ago, Quentin Preik said:

Really if food didn't rot only while offline and in a players inventory it would help. Everything else could remain the same. 

Ye, well, that will tackle a small part of the issue, a part mostly experienced by new players on servers during their early game exploration and early settling efforts.

It doesn't tackle the issues for more casual players finding their processed foods rotten after a long week of real life work, or for any player who had to stop playing before they planned to and when they return all their freshly harvested bush meat or berries, or cooked roots have gone to rot, nor the fact that any time dependent process on servers can hardly be experienced in the same way as in single player (... like what is the added value of Terra Preta on servers anyway?). Yes, food decay is the process new players on servers have most difficulty with dealing (not because the process is a thing, but because time progress while absent is a thing), but no, it is not the only major difference between the multiplayer and single player experience affected by the different ways servers and single player games deal with the progress of time in a players direct environment. It only requires a few additional stored data and checks to the already much valued and code-effort requiring various processes in the game to ensure mp and sp experience are more comparable, making the game more enjoyable and immersive for both new and casual regulars on servers.

Link to comment
Share on other sites

Hi! I've got a radical idea. What if your multiplayer expectations are wrong? Hear me out. I am not saying what you and many others see as problems are not valid and that the solutions being presented have no merit. Just that you're trying to start a fire underwater and that you are not the only one trying to do that.

We all understand that everything in VS is tied to one clock. This works great in single player as the clock only advances when the player is there and no matter how long the absences are, the player can pick up right where they left off. We all know that in multiplayer the clock keeps ticking while there are players on it and yet instead of acknowledging that and working with it, many players play in such a way that mechanic works against them. They try to have a single player experience in a multiplayer server. They want their stuff separate from everyone else's stuff, and for their stuff to remain as they left it until they come back. Is that a reasonable expectation?

Well reason actually has very little to do with it. Vintage Story isn't real life. The fact of the matter is that's how many players want Vintage Story multiplayer to be like. So my suggestion is instead of trying to make existing mechanics more complex, adding a new multiplayer server option called parallel worlds. Basically how this works is everyone spawns parallel worlds. This would be like using the same seed in Minecraft. Each parallel world would be owned by the person who created it. The person who created it can add other owners. Time progresses in the world as long as there's at least one owner in it. These worlds can also be set to visit-able by an owner. If at least one owner is in the world, others can visit that world. However if the last owner logs off, all current visitors will be thrusted out of that world into a world they own.

Problems this fixes

  • Griefing - You're world can only be visited according to each players settings. (private, select individuals, or public)
  • Time passing issues - Things will be left exactly as the last owner online left them.
  • Real-estate - Players building where you want to or ruining your scenery.
  • Resource depletion - Don't have to worry about starting area becoming devoid of resources.
  • Progression of things like monsters spawning and temporal storm frequency.
  • Mistaking peoples places for ruins.

This also still allows players to help each other out and show off what they have built.

 

Edited by Stroam
Link to comment
Share on other sites

@Stroam, thanks for the radical input. Let me first respond to your use of the designation 'wrong' before I get to 'reasonable' and finish with assessing your radical alternative proposal. Qualifying expectations as potentially 'wrong' in this respect is not appropriate imo. A qualification of 'different' would be totally acceptable though, so I'll assume that is the point you were addressing. Ultimately, what the developer thinks about what players of their released mp game version should expect, will become the standard. Alternative expectations may be designated 'wrong' going by that standard, but as the game is still in alpha, and some major multiplayer experience affecting mechanics have only just rolled out, I'd recommend to not use such 'framing' qualifications in this stage.
Note that one could also qualify the current implementation of time progress in multiplayer VS as 'incomplete/imperfect' or even 'wrong' by stating that the system lacks a player AI character when the player is not in-game. Such an AI character would eat the foods a player prepared while they are away, restock any food supplies, tend the livestock and acres, replace any torches that burnt out and meanwhile fight off enemy mobs and animal competition for his food sources while reaping the fruits of their labour. An example for such an alternative multiplayer experience is detailed out for the 'offline player characters' in Chronicles of Elyria. I discarded the option to add 'offline player characters' as 'likely unfeasible' and 'serving an overall different purpose'. I didn't see that as a reasonable alternative when considering the proposal brought forward in this thread.
So, I'd rather wish to designate alternatives as 'different' multiplayer experiences instead of 'wrong'. Until a beta-release all sets the main mechanics in stone, it would be best to focus on the differences between options that are on the table in terms of benefits and costs when assessing them for their impact on the total potential player base. And ultimately, it's on the developer (team) to decide which experience best fits the game they intend(ed) to turn into a viable business.

Now on 'reasonable'. Indeed, VS progress is tied to one clock and that should be the main starting point for the multiplayer experience. I may not have explicitely expressed that in the first post, but that is a starting point for me as well. Whereever players in a multiplayer world gather and either work with or against each other, that should be a primal mechanic. Now I believe the change I proposed does not negatively affect that experience. With the proposed changes the multiplayer experience for most veteran and cooperative players on servers will hardly change. The progress of time in any intensely used combined player food production, processing and storage area, and that of any other time dependent mechanics in areas where more players are active will still be in agreement with that primal starting point. For new and more casual type of players on servers the changes will have a much more noticable effect in that their experience will much more resemble the single player experience. Investing in long term food storage, animal husbandry and improved farmland productivity will be meaningful on a server just as it is in their sp worlds and they're not 'forced' to continuously adjust their in-game priorities for having to take into account that time progresses at tremendous rates before they log off, whether that be for a few hours in early game, or for a working week in late game.
No, it would not be reasonable for new players on servers just trying out this game to expect that the multiplayer environment behaves in exactly the same manner as the single player environment. That is not a starting point for my improvement proposal and I don't think it's reasonable to assume it would be. Nor do I think it would be a reasonable expectation that VS would implement an 'offline player character' mechanic as mentioned above to counter the inconveniences of progress of time when they are offline. But I would think it is reasonable to expect a developer to consider potentially feasible options to improve the multiplayer experience for many of their potential new customers, those who can effectively expand the playerbase and business volume.

Now on your radical alternative. I think you provided enough (implicit) arguments yourself to counter that as a potentially acceptable alternative, going by those presented in the first two paragraphs of your post. Your radical alternative is not an acceptable alternative option for the proposal brought forward in this thread as it goes against some basic starting points regarding the multiplayer VS experience. Within the scope of this concrete and specific thread the aim is not to ensure full single player experience in a multiplayer environment. So as an alternative to my proposal here, it would simply miss the point. Creating multiple single player worlds instead of one multiplayer world, would create an entirely different multiplayer experience, even more different than the one with 'offline player characters' I just referred to. In my view it is implicit to 'multiplayer' that all players share the same world, and even though I may have not explicitely expressed that, I believe it would be reasonable to assume that was the case. Moreover, I would guess that any multiworld-multiplayer option would not be feasible in the context of the VS business because the potential nett effect on the total active player community will likely concern small numbers, and the obvious related coding efforts and server expenditures will be high. So, just as the proposal to add offline player characters to the VS multiplayer game would be unreasonable and unfitting within the scope of this thread, your proposal to have multiworld-multiplayer servers would not be an acceptable alternative either. Finally, one could easily argue that both radical alternative options simply serve different purposes than the proposal central to this discussion thread.

Link to comment
Share on other sites

  • 3 weeks later...

What if spoilage was paused for players offline in their claimed areas? So if you claim a cellar and put your stuff in there, no spoilage while you're offline. Even make it so if you share the claim then that spoilage protection is removed. So the players have their own cellar; no weirdness for other players because they can't see into those storage spaces anyways.

I think the big issue is going to new players to VS - add in crop problems in the winter and what little food they gather goes poof. You will lose players, i have lost players on my server because of this and they never returned to VS. 

Link to comment
Share on other sites

5 hours ago, Quentin Preik said:

What if spoilage was paused for players offline in their claimed areas? So if you claim a cellar and put your stuff in there, no spoilage while you're offline. Even make it so if you share the claim then that spoilage protection is removed. So the players have their own cellar; no weirdness for other players because they can't see into those storage spaces anyways.

I think the big issue is going to new players to VS - add in crop problems in the winter and what little food they gather goes poof. You will lose players, i have lost players on my server because of this and they never returned to VS. 

That is a type of option that will only emphasize the differences between the single and multi player experience. I'd personally rather continue with the present system than such artificial 'fixes' to a specific inconvenience (aimed at food decay). But on the other hand, it might just be an 'acceptable' alternative, possibly dependent on the way seasons will be implemented. Still curious to hear Tyron's view on any options btw.

What happened on your server isn't unique. More server owners have seen new players join their friends or gamer community server because 'VS is such a cool game, come join and try it out' ... to then leave after a number of unfortunate events / moments of early game frustration caused by the different impact time dependent mechanics have on the server experience when compared to single player. The main issue is that the multiplayer experience is much less predictable because of this and many more 'casual' players simply won't return to an unpredictable game, even when it involves their friends, family or gaming community. Instead, they will seek out 'easier' alternatives for their casual entertainment. The investment of € 15 is relatively low and can easily justify a quick 'nope' for many players who are a bit less determined than the average present VS veteran. For the game (including an active, supportive and cooperative server community), to remain successful until and after beta launch, I think that keeping new players who enjoy the multiplayer experience may be key.

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.