I can confirm SpacedInvader's observation. It's exactly what he said, they meet at point zero. And that was exactly one of my top favorite locations to release fish. Funny. It took a while to check it.
Well, it doesn't bother me that they are stupid .. they are inbreed and they should. That's correct coding. But please, Devs, let them rather be misdirected than miscoded. Send them to all radians infinity or whatever.
But besides that, I see another issue. My new repopulation (sounds like a bestseller, hehe) seems to be more stable, fish live longer and it feels like life 's coming back to the shallows. Good. But I have not one single confirmation of second growth. That means the problem isn't solved. Sooner or even later they will die. Hmmmmm, slowly I run out of ideas. We cannot breed for ages end and we cannot breed fish that live for ages. So what's next, any Ideas?
@lxh / @Vexare - I've conducted a series of experiments and have a new working theory: Point of maturation equates to spawn point and establishes a fish's "home" and genetic lineage has little to no effect on the result.
So here is my methodology:
Experiment #1: Is it possible to relocate an adult fish from one location to another? Conclusion: No
I collected several fish from the separate northwest shallows and attempted to release them near my base in the main shallows. Much like those fish we've been releasing from the tanks, they immediately began swimming away, only this time it was in the direction of the shallows biome from which I took them.
Experiment #2: Will the offspring of first generation captive fish remain in the location in which it is released? Conclusion: Yes
I collected two peepers from the same northwest shallows biome and placed them in a new large tank. I waited for their offspring to appear and grabbed it as soon as I saw it. Upon release it was immediately mature and has stayed around my base now for several day / night cycles.
Experiment #3: Does becoming captive break a fish's connection with their spawn point? Conclusion: No
After collecting their offspring, I released the fish I collected from the northwest shallows into the area in front of my base. They immediately began swimming toward their home biome just like those from experiment #1. Basically, simply putting a fish into a large tank doesn't erase its "home" coordinate.
Experiment #4: Will the offspring of highly "inbred" captive fish remain in the location in which it is released? Conclusion: Yes
I took two fish from a population of peepers that I've kept captive for food for nearly 20 hours of gameplay and placed them into an empty tank. I then waited for their first offspring and collected it as soon as I saw it. Then I released it in front of my base, again entering the water immediately mature, and again remaining in front of my base since. I released the parents, which immediately swam toward 0,0,0 and then repeated the experiment a second time with different parents to ensure that I hadn't somehow just used the two original fish from 20 hours ago as the parents for this test. The second result was the same as the first.
Experiment #5: Will the offspring of highly "inbred" captive fish that is allowed to mature in the tank remain in the location in which it is released? Conclusion: No
I now waited for a second offspring to appear in the tank with the "inbred" parents and once there, I removed and released the parents, which swam immediately to 0,0,0. I then waited for the offspring to mature in the tank and then released it into the area in front of my base, at which point it immediately swam toward 0,0,0.
Experiment #6: Will the offspring of first generation captive fish that is allowed to mature in the tank remain in the location in which it is released? Conclusion: No
I returned to the northwest shallows and collected two more peepers to put into the tank. I then waited until I could see an offspring and then removed the adults and released them in front of my base, after which they immediately began swimming toward their home biome again. After this, I waited a few days for the offspring to fully mature and then released it into the area in front of my base, at which point it immediately began swimming toward 0,0,0.
As a result of all of this, I feel I'm able to make a few inferences about the behavior / coding of the fish. First is that each fish is attached to a specific x/y/z coordinate on the map and, if removed from that point, will return there following the most direct route possible (experiments #1 & #3). Second, this coordinate is either not given until a fish matures, or the game engine views the maturing fish and the adult fish as different spawned entities, allowing them to have two spawned coordinates. Either way this is actually coded, the end result is that if you take an immature fish from the tank and release it into the wild, causing it to mature instantly, its spawn coordinates are attached to the point of release (experiments #2 & #4). Third, because all fish, regardless of source (breeding or game spawning) behave the same within the tank, any fish that matures within a tank is either given a base coordinate of 0,0,0, or is given no coordinate, and then that coordinate defaults to 0,0,0 upon release (I believe it to be the former as its easier to simply spawn the fish with a set coordinate rather than code a method of defaulting to that point). As a result of this, any fish that is allowed to fully mature within a tank will always swim to 0,0,0 upon release.
I believe that this behavior is a result of the Devs failing to expect us to attempt a breeding and release program of this sort, instead expecting players to simply catch fish for the tank and then use them only for food from that point on. The fact that immature fish can be released and stay in one place seems to me like a quirk of the system rather than an intentional mechanic, though I could be wrong. Whatever the case, I've tried to be as detailed as possible with my methodology so that anyone who wants to can try to replicate it all, but the essential point to remember is that, if you want to populate the area around your base with more fish, simply breed them and release only the babies before they mature.
Here are the three peepers resulting from experiments #2 and #4 at least 10 day/night cycles after the experiments began:
EDIT: I should note that the only experiment which included fish other than peepers was the attempt to relocate adults. I am fairly certain that the results from the other experiments should carry over to all catchable fish, but I haven't had time to establish this yet.
Wow, SpacedInvader! You thoroughly disassembled my theory. Respect! Though admittedly this rudimentary mechanics appeared and worked like that. Thanks a lot for these facts! And it seems to be absolutely correct that the Devs didn't expect us to think that far. I really hope they read it and get an idea of who's playing their game.
Edit: What I would do (roughly):
To create a new fish object, I'd take two adult and not 'pregnant' fish by random, inherit their interpolated properties (like life span, fitness, requirements, etc) plus a random offset (what I'd call mutation). That would enable us to breed more or less resistant, adapted, faster, bigger, prolific and long living specimen. The flora inside the tanks should have an effect on their environmental requirements, so that we can settle fish in originally not foreseen regions resp. player-transformed biomes.
Edit2: Off course I know Subnautica is certainly not meant to be or to become a fish breeding simulator. But if my impression isn't totally wrong, the premise is to terraform and to colonize. So considering vanishing fauna, it was logical that 'repopulation' becomes sort of main emphasis.
You did exactly the sort of indepth experimenting I hadn't gotten the energy to try myself and suggested someone jump in a few pages back to take over my initial observations. I'm so glad you decided to 'dive in' and give it a go!
I also don't think I would have been nearly as thorough, probably not going beyond Experiments 1-4 honestly. You went the extra mile there with separating generations. Also, I had no idea releasing a baby fish immediately aged them up to adults and set a home location like that. No wonder a few of mine stuck around while the rest vacated!
And then there's my biggest error: Thinking that bringing fish in from other locations would be a good method to test so I didn't disturb the local native populations! That's why they all made a bee-line for home!
Good job, really.
I do hope the Developers will read this ... though now buried within pages of mass speculation - we have real solid results! I thought I might get more playtime this weekend and was starting to formulate some similar test batch breeding but I got distracted by some other things and lost my momentum. I'm just going to say I lost a swim fin and swam in circles.
This is a very interesting thread. Thank you for all your hard observation work.
While I very much opposed the inheritance ideas of Ixh at first, after reading the whole thread I am not so sure anymore. I somewhere read about a gen-extractor and infuser which allows the player to extract DNA from one animal and inject it into another. Maybe they really implemented some sort of digital DNA which controls some creature behavior and is used when breeding.
This is a very interesting thread. Thank you for all your hard observation work.
While I very much opposed the inheritance ideas of Ixh at first, after reading the whole thread I am not so sure anymore. I somewhere read about a gen-extractor and infuser which allows the player to extract DNA from one animal and inject it into another. Maybe they really implemented some sort of digital DNA which controls some creature behavior and is used when breeding.
Well, this(!) off course was an enormous shortcut in breeding adapted specimen. Indeed! Well, that brings me back to the point of 'Is this game too easy?' .. hehe. Another cheating tool in my opinion. But admittedly, thats just me ... the lonesome wolf preaching the moon.
I think the thing to keep in mind is that the ecosystem doesn't have to be hugely complicated to work well for the game's purposes. My idea would be to copy over the current breeding code from the tanks to fish in the wild, replacing the population check of fish in the tank with fish within a certain radius in meters. Then I would add a biome check system which would only allow fish to live in certain biomes (no peepers in the grand reef, for example) and rewrite the home coordinate code so that a fish acquires the coordinate of release as its new home.
With these changes, a player could transplant / repopulate fish into the area around their base, but if that fish wasn't native to the biome of the base, it would die off eventually. It would also give a mechanic to allow fish populations to organically respond over time to death by any means (predation, player hunger, even bad driving), as long as there are still two of a species within breeding distance of each other, which I think would be way better than having a fish spawn instantly upon the death of another.
My idea would be to copy over the current breeding code from the tanks to fish in the wild, replacing the population check of fish in the tank with fish within a certain radius in meters.
Hehehe SpacedInvader, you've already proved your intelligence but that idea seems to lack of farsightedness. It would ricky ticky cause an explosion like population. Are you kidd'n?
I agree with almost everythig SpaceInvader says, these changes would make a lot of sense. (I do hope you do not mind be entering your discussion but I am very interested in the workings and non-workings of the simulated ecosystem)
Then I would add a biome check system which would only allow fish to live in certain biomes (no peepers in the grand reef, for example)
Yes, I always found it funny to encounter Airsacks in Deep GrandReef where they shouldn't even be able to physically exist because of their buoyancy (is that the correct word? I mean the force that causes air filled cavities to rise) or having Oculus or Eyeye specimens alive in my Aquariums where they should die due to lack of water pressure.
It would also give a mechanic to allow fish populations to organically respond over time to death by any means [...]
While I think this would be great, there may be a technical issue here. We found out about this in September when powering deep sea bases by solar panels (the threads should still be in the archive) So the environment of Subnautica is only simulated in the immediate surrounding of the player, everything else is either swapped out or at least frozen in time. (The deep sea bases wouldn't be powered by the solar panels because they were that far away from the base so that they didn't exist in the active game world when the player was in the base...) You can observe the swapping if you go very fast with the Seamoth or Seaglide. When you enter a new area, all fish will not move at first and Bone Sharks for instance are in their default animation state (they look a little like sea horses) Then the simulation kicks in and the fish move.
So while being swapped out (not simulated, frozen in time, whatever you may call it) I don't think its possible to have fish breed, since they don't exist in the simulation at that time. Breeding (and hunting, dying, growing) would have to be done retroactively at the time when the area is reloaded into the active simulation - if this is even technically possible since it takes some time to do it. Loading a new area already causes stress to the system.
So while being swapped out (not simulated, frozen in time, whatever you may call it) I don't think its possible to have fish breed, since they don't exist in the simulation at that time. Breeding (and hunting, dying, growing) would have to be done retroactively at the time when the area is reloaded into the active simulation - if this is even technically possible since it takes some time to do it. Loading a new area already causes stress to the system.
Yep, that's the point .. and it's a damn good one. I'd solve it by a four-dimensional fractal like routine. Players actions change parameters of certain local fractals. An overtime changing fractal does exist in all possible stages ever, but will show up its current stage only by the right time parameter.
Edit: Off course it would need a hysteresis for player-changed fractal parameters. Otherwise it would pop up to a totally different stage immediately.
Edit2: Well, one aspect should be considered within this solution. Example: Picking out one fish would cause the fractal to appear as it didn't ever exist and would wipe out all followed generations at once. So it was necessary to reconfigure resp. reinitialize at the time of changing or within the span of hysteresis.
Edit3: Just a screwy idea .. but if taking the real life time as the relevant parameter would cause the evolution to proceed even when the computer is shut down. Hehe
Edit4 (sorry): This logic combined with the Mendelian inheritance would cause our Devs to play their own game, totally fascinated and not knowing what's gonna happen. @Devs: You like challenges? Go on! Hehe
Edit5: Off course I would add a hidden time slider for development- and balancing purpose. So you could see what it's up to in a thousand years or whatever.
See, now you guys are getting right back into a complicated system that would take more work than I think they Devs are planning on spending on the actual ecosystem dynamics (I could be wrong of course). My idea is based on the fact that they already have most of the coding finished, so adapting it to the new parameters would be a relatively easy task.
As for the assumed population explosion, I don't think it would appear if the population restrictions are coded properly. Take the shallows for example, they are approximately 500m wide by 750m tall on the map. If you were to establish a limit of 10 peepers within a 100m radius of any other peepers (probably coded to stay in groups also), then you'd get something like a maximum of 200 total peepers across the whole shallows (this is a very rough visual estimate... feel free to correct that number with actual math as I'm too tired to do it right now). That might sound like a lot, but that is only one fish per 1875 sq. meters. As long as the breeding code was adjusted to determine population by distance rather than by a tank, it could easily be adjusted for density.
As for the ecosystem only being modeled when you're near it, that tends to be the problem to begin with. The more time you spend in an area, the more fish the predators (including you) kill off, resulting in fewer and fewer fish. As long as the breeding routines executed fairly fast (maybe do a check every minute or so), it would be able to keep up with an location in which you are present, even if its only driving through.
would take more work than I think they Devs are planning on spending on the actual ecosystem dynamics
... or are simply able to do. You could be right. Besides, it isn't even clear how relevant ecology and evolution will be for the gameplay. So you might agree that we did nothing more than speculations based on some observations. So why not speculate a little further? Hehe
As for the ecosystem only being modeled when you're near it, that tends to be the problem to begin with. The more time you spend in an area, the more fish the predators (including you) kill off, resulting in fewer and fewer fish.
Well, the first sentence is true, the second false. I may remind my don't touch anything experiment which proofs the opposite. And to the first sentence: I've already posted an idea to solve this problem. But it might well be, that the fewest can imagine what I'm talking about ... hihi.
See, now you guys are getting right back into a complicated system that would take more work than I think they Devs are planning on spending on the actual ecosystem dynamics (I could be wrong of course). My idea is based on the fact that they already have most of the coding finished, so adapting it to the new parameters would be a relatively easy task.
they were planning on having an advanced ecosystem that involved both the fish as the plants but right now only the predator->prey relation is in the game and only for the "smaller" creatures.
but there are already beginning of the advanced version in the game such as the fact that reapers hunt reefbacks when the two come close enough to each other. but there is no place were this can happen.
this makes me hope that the devs will keep working on the ecosystem maybe with the "creature attack!!" update?
So while being swapped out (not simulated, frozen in time, whatever you may call it) I don't think its possible to have fish breed, since they don't exist in the simulation at that time. Breeding (and hunting, dying, growing) would have to be done retroactively at the time when the area is reloaded into the active simulation - if this is even technically possible since it takes some time to do it. Loading a new area already causes stress to the system.
I wondered about this as well. I didn't really notice the 'frozen in time' thing until I started doing a lot more Seamoth exploration. I don't think it's noticeable, particularly in the shallows biomes, when you're just swimming at normal speed. When you start using the faster fins, a seaglide and of course the submersibles, that's when you begin to notice a transition between zones and creatures 'popping' to life as you enter their area. I'm sure this helps enormously with performance issues as having an enormous open aquarium / sandbox with seamless movement and constant AI activity would be a nightmare on processing power. Anyone who has played a large world building simulator of any kind understands how bogged down your system can get after you've played for hours on end and now have millions of objects and entities being rendered in real-time!
As for the ecosystem only being modeled when you're near it, that tends to be the problem to begin with. The more time you spend in an area, the more fish the predators (including you) kill off, resulting in fewer and fewer fish. As long as the breeding routines executed fairly fast (maybe do a check every minute or so), it would be able to keep up with an location in which you are present, even if its only driving through.
Excellent counter argument that supports our problem and theories.
If things are not being calculated until you are present within that immediate area (not the entire biome) to save on processing labor, then coding in some sort of long-term ecosystem program would have to factor in relevant time to the player's activity in that area. A logistical nightmare? Frequent AI checks definitely cause performance stuttering and heavens forbid if one of those check sums gets stuck in some sort of infinite loop (bug) ... your system can grind to a halt!
My suggestion, and hopefully what they have in store for us with the egg production system is that the eggs themselves are an object with coded timers and response system. When player is present, they initiate hatching sequence timers... think of it like the Crash who responds to proximity by the player to determine their behavioral sequence. If the player is not present, then they have a hardcoded 'spawn' behavior to hatch after a period of time regardless of player presence (even if that 'hatching' is just as frozen as everything else in that biome at the time).
Then the question begs to be asked: What happens if a player somehow manages to get something like 500 eggs all crammed together in one place for some sort of fish explosion scenario? Players love to push the limits of a game and in a sandbox environment that's sort of the point after all - do whatever you want!
The biomes having a population cap / limit would probably solve most of that. 500 eggs would probably result in a lot of 'duds' that didn't fertiize or hatch is my guess.
would take more work than I think they Devs are planning on spending on the actual ecosystem dynamics
... or are simply able to do. You could be right. Besides, it isn't even clear how relevant ecology and evolution will be for the gameplay. So you might agree that we did nothing more than speculations based on some observations. So why not speculate a little further? Hehe
As for the ecosystem only being modeled when you're near it, that tends to be the problem to begin with. The more time you spend in an area, the more fish the predators (including you) kill off, resulting in fewer and fewer fish.
Well, the first sentence is true, the second false. I may remind my don't touch anything experiment which proofs the opposite. And to the first sentence: I've already posted an idea to solve this problem. But it might well be, that the fewest can imagine what I'm talking about ... hihi.
You are completely correct, all of this might just be speculation and have zero impact on future game development. That said, I've viewed any suggestion I make on this forum through the lens of how much work it would take the devs to implement from the game's current working release, trying to maximize problem solving / player experience for a minimum of additional effort. The biggest problem with the ecosystem is that it becomes devoid of life in some areas after a while, and, since there is already a breeding system in place, it seems that it would take a minimum of effort to modify it to work in the open world rather than just a fish tank.
As for your second statement, the only ways I've ever observed fish disappearing are either through predation (stalkers particularly, though bone sharks are pretty aggressive toward other fish as well), or player actions (catching, running over, or building a base too close). This would support the theory that its proximity to the player and thus simulation of the ecology, that allows fish to begin to thin. If you see some fish in a distant area and then don't return for many hours, you will probably return to see just as many fish as when you were there originally. I'm guessing that you conducted your experiment at a location without any nearby predators other than you, and since you were careful not to kill any of the fish, they never died off as a result. If you had conducted the experiment on the border of the kelp forest where many stalkers lived, you might have noticed different results.
Do UWE plan to find a way solving something about this issue in the future ?
Could this mean that the problem wasn't totally considered until now ?
From what I have been able to gather, its an issue that the devs have gone back and forth a few times on. I think that fish used to respawn, then that was removed to encourage exploration, but now they seem to be going back on that once more. The general consensus among the people here seems to be that exploration will happen with or without a fish shortage and the negative result of a dead zone around the player's base is much worse than the possibility of less exploration.
That said, we've seen this Trello card already and all feel that simply spawning a fish behind you when you kill one is not the best way to resolve the issue as it completely removes any impact you or other predators have on an environment. I think I can speak for everyone who's contributed to this thread when I say that what we really want is at least a rudimentary form of fish reproduction as that would allow us to actually impact the environment in negative and positive ways.
The biggest problem with the ecosystem is that it becomes devoid of life in some areas after a while, and, since there is already a breeding system in place, it seems that it would take a minimum of effort to modify it to work in the open world rather than just a fish tank.
I can very well understand your position at this point and I guess your Ideas for resolving would be welcome if the ecosystem in fact had a development problem. But I'm afraid this is simply not the case. If the Devs wanted a stable system, believe me, it wouldn't ever come that far. And if, they could spam more fish behind our backs than we'd ever prefer. That's definitely not the problem. I'm looking forward to be pleasantly surprised on that backdrop.
I'm guessing that you conducted your experiment at a location without any nearby predators other than you, and since you were careful not to kill any of the fish, they never died off as a result.
You are right. There where no predators .. but I know this place to depopulate even without. That's why I've chosen this spot. The next step is to pick up some 'resources' there to find out if this has an impact. This crosscheck will probably show up the true reason for wide depopulations. If this test will be positive, I'd say that the players greedy behavior itself is the evil.
Wanna hear my suspicion for Subnautica's quint-message? You want your huge underwater villa with glassy gangways and panoramic views in every room? No problem, take it ... but take the consequences too. Know what I mean?
The biggest problem with the ecosystem is that it becomes devoid of life in some areas after a while, and, since there is already a breeding system in place, it seems that it would take a minimum of effort to modify it to work in the open world rather than just a fish tank.
I can very well understand your position at this point and I guess your Ideas for resolving would be welcome if the ecosystem in fact had a development problem. But I'm afraid this is simply not the case. If the Devs wanted a stable system, believe me, it wouldn't ever come that far. And if, they could spam more fish behind our backs than we'd ever prefer. That's definitely not the problem. I'm looking forward to be pleasantly surprised on that backdrop.
I'm guessing that you conducted your experiment at a location without any nearby predators other than you, and since you were careful not to kill any of the fish, they never died off as a result.
You are right. There where no predators .. but I know this place to depopulate even without. That's why I've chosen this spot. The next step is to pick up some 'resources' there to find out if this has an impact. This crosscheck will probably show up the true reason for wide depopulations. If this test will be positive, I'd say that the players greedy behavior itself is the evil.
Wanna hear my suspicion for Subnautica's quint-message? You want your huge underwater villa with glassy gangways and panoramic views in every room? No problem, take it ... but take the consequences too. Know what I mean?
We just seem to differ on this point. I've seen far too many fish just continue living without interruption to be convinced of the theory that they can just die on their own without outside intervention. I also firmly believe that the dead-zone is an unintended consequence, at least at this point, which is why the devs are exploring ways to keep the fish population up.
You mean changing their natural milieu isn't any outside intervention? Well, I guess that's what most people think ... even here on 'earth'.
While I won't argue that extracting natural resources has an impact on the environment in real life, I find it difficult to believe that the devs have somehow decided to make extracting mineral resources, without highly damaging mining activities, I might add, a way to ruin the environment. I could easily see them punishing you for taking too many creepvines, acid mushrooms, or corals, but quartz and titanium? No.
I think its much more likely that the dead zone is an unintended consequence of removing fish spawning to encourage exploration and one that they are attempting to correct by introducing farming and fish spawning.
Yep, you might be absolutely right, SpacedInvader. But that wasn't much more than a little 'dull' in my opinion and as already been said .. no message at all.
Edit: I'd see it like taking anything will cost another. The resources have to be seen as a metaphor.
Yep, you might be absolutely right, SpacedInvader. But that wasn't much more than a little 'dull' in my opinion and as already been said .. no message at all.
Edit: I'd see it like taking anything will cost another. The resources have to be seen as a metaphor.
That's just the thing lxh, everything comes in degrees. If I walk down the beach and pick up a rock, it might affect the environment a minuscule amount, but would mean very little in the grand scheme of things. If, on the other hand, I excavate the entire beach, it will have a significant impact across the whole region. I associate the level of extraction that we undertake in the game much more with the former example than the latter. That said, I realize this is a game with a much compressed / simplified system, so smaller actions should have larger effects, I just don't believe that effect is currently that harvesting some or all of the resources in an area kills its ecosystem. However, the devs appear to be exploring resource respawning if you don't completely harvest them, so maybe they will also introduce a penalty to sucking a biome dry of some resource or another.
I think I've devised an experiment to test this theory of yours, though, which won't take hours of observation to determine a result. I'm going to find a location with a healthy fish population and then completely remove everything that I can pick up except the fish. If the fish stay, then it supports my theory, and if the fish leave, it supports yours.
The whole kill a fish and it a new one respawns behind you seems kind of narrow sighted to me (and also dangerous depending on what you killed. Kill a Biter fish and suddenly another one appears behind and starts chomping away at your poor behind). I only say this because there should be a spawning system in place that repopulates fish numbers by placing said harvested/killed fish on a timer. When you kill a fish or any number of fish a timer starts that countdowns to the point where after that time has passed a new fish entity is spawned. This could be applied for all creatures that are killed by the player, accidentally rammed into by the seamoth or cyclops or killed by other entities in the game. You can also take it a step further by using the breeding system.
Maybe the "spawning fish behind you" method it is just a test to see how fish respawning in general would effect the environment. A quick and dirty method to use for a proof-of-concept thing. If it "works" (has the effect the devs have in mind) there can be a more elaborate method of spawning killed fish, like Ixh's proposed four dimensional fractal method.
It is good that they are looking into these mechanics, the first time I saw a predator actually kill a fish I knew that without fish-respawning the ecosystem would die off eventually. It was just a matter of time.
@SpacedInvader: try the Sparse Reef biome, I frequently build my main base near the location, it has a lot of Spadefish and I do not recall predators in the area. I also do not recall predators in the Grand Reef biome but I do not visit it that often.
Ok, so I've gone ahead an done the experiment, here are the results:
I chose the far northwest end of the northwest shallows as the closest zones with predators are at least 50m away or 100m below in the mushroom forest.
Here is my location before beginning the harvesting:
I know its a little hard to see, but there are about 15-20 fish of several varieties swimming around the area, including a school of boomerangs
I then spent about an hour and a half completely removing everything that was either harvestable or destructable that was withing visual distance of my experiment base. I should point out here that this was a massive undertaking, going through 6 knives cutting up the giant coral tubes and purple grass in the area (I only realized at the end that acid mushrooms make great explosive ammo for the propulsion cannon), as well as 4 batteries for the propulsion cannon. The game even started to bug out near the end, stopping me from properly breaking up corals with the knife.
The end result looked like this all around:
I then waited with the game running through four day / night cycles at the base to ensure the environment continued to simulate. After which I checked to see if the fish had left.
Here are the results:
Again, it is difficult to see them, but none of the fish left the area. One thing I didn't do, and I regret it because I have no desire to re-eviscerate that area and because I didn't save my work, was to hop in the seamoth, leave the area for a while, and then return to see if there were any changes. I would not put it outside of the realm of possibility that, if the fish were going to disappear, it would have happened then. That said, most of the other changes with fish in the environment (e.g. hoopfish showing up when your creepvines reach maturity) happen in real time, so I would expect fish leaving / disappearing to follow suit. I can't be sure about this though, so if someone else would like to go through the effort of killing off an area, please let us know if there was any change from my results.
EDIT: One interesting note, the loot from just the area visible from my base (mostly acid mushrooms and coral samples) filled 10 large storage lockers and I destroyed more than half of the mushrooms and corals rather than collect them.
Ok, thanks a lot for your efforts, SpacedInvader. Considering that current dynamics only proceed while you are actually 'there', it could take some hours hanging out or passing by to see the effects. But I will take the crosscheck. As Dinkelsen guessed correctly, my location is the sparse reef.
Besides - and that might be a very relevant criteria - I've noticed a bigger experimental version update which at least contains a different breeding mechanics. And it wouldn't be any surprise if it includes a new fauna-milieu correlation. But let's see what my crosscheck will show up.
Ok, thanks a lot for your efforts, SpacedInvader. Considering that current dynamics only proceed while you are actually 'there', it could take some hours hanging out or passing by to see the effects. But I will take the crosscheck. As Dinkelsen guessed correctly, my location is the sparse reef.
Besides - and that might be a very relevant criteria - I've noticed a bigger experimental version update which at least contains a different breeding mechanics. And it wouldn't be any surprise if it includes a new fauna-milieu correlation. But let's see what my crosscheck will show up.
I imagine that might have been part of the reason I was bugging out. I used a save which I'd been working on for a while instead of a fresh game, so a lot of builds have passed since starting it. If I have the energy, I may repeat the experiment in a day or two using a fresh game to see if there were any different results.
Comments
Well, it doesn't bother me that they are stupid .. they are inbreed and they should. That's correct coding. But please, Devs, let them rather be misdirected than miscoded. Send them to all radians infinity or whatever.
But besides that, I see another issue. My new repopulation (sounds like a bestseller, hehe) seems to be more stable, fish live longer and it feels like life 's coming back to the shallows. Good. But I have not one single confirmation of second growth. That means the problem isn't solved. Sooner or even later they will die. Hmmmmm, slowly I run out of ideas. We cannot breed for ages end and we cannot breed fish that live for ages. So what's next, any Ideas?
So here is my methodology:
Experiment #1: Is it possible to relocate an adult fish from one location to another? Conclusion: No
Experiment #2: Will the offspring of first generation captive fish remain in the location in which it is released? Conclusion: Yes
Experiment #3: Does becoming captive break a fish's connection with their spawn point? Conclusion: No
Experiment #4: Will the offspring of highly "inbred" captive fish remain in the location in which it is released? Conclusion: Yes
Experiment #5: Will the offspring of highly "inbred" captive fish that is allowed to mature in the tank remain in the location in which it is released? Conclusion: No
Experiment #6: Will the offspring of first generation captive fish that is allowed to mature in the tank remain in the location in which it is released? Conclusion: No
As a result of all of this, I feel I'm able to make a few inferences about the behavior / coding of the fish. First is that each fish is attached to a specific x/y/z coordinate on the map and, if removed from that point, will return there following the most direct route possible (experiments #1 & #3). Second, this coordinate is either not given until a fish matures, or the game engine views the maturing fish and the adult fish as different spawned entities, allowing them to have two spawned coordinates. Either way this is actually coded, the end result is that if you take an immature fish from the tank and release it into the wild, causing it to mature instantly, its spawn coordinates are attached to the point of release (experiments #2 & #4). Third, because all fish, regardless of source (breeding or game spawning) behave the same within the tank, any fish that matures within a tank is either given a base coordinate of 0,0,0, or is given no coordinate, and then that coordinate defaults to 0,0,0 upon release (I believe it to be the former as its easier to simply spawn the fish with a set coordinate rather than code a method of defaulting to that point). As a result of this, any fish that is allowed to fully mature within a tank will always swim to 0,0,0 upon release.
I believe that this behavior is a result of the Devs failing to expect us to attempt a breeding and release program of this sort, instead expecting players to simply catch fish for the tank and then use them only for food from that point on. The fact that immature fish can be released and stay in one place seems to me like a quirk of the system rather than an intentional mechanic, though I could be wrong. Whatever the case, I've tried to be as detailed as possible with my methodology so that anyone who wants to can try to replicate it all, but the essential point to remember is that, if you want to populate the area around your base with more fish, simply breed them and release only the babies before they mature.
Here are the three peepers resulting from experiments #2 and #4 at least 10 day/night cycles after the experiments began:
EDIT: I should note that the only experiment which included fish other than peepers was the attempt to relocate adults. I am fairly certain that the results from the other experiments should carry over to all catchable fish, but I haven't had time to establish this yet.
Edit: What I would do (roughly):
To create a new fish object, I'd take two adult and not 'pregnant' fish by random, inherit their interpolated properties (like life span, fitness, requirements, etc) plus a random offset (what I'd call mutation). That would enable us to breed more or less resistant, adapted, faster, bigger, prolific and long living specimen. The flora inside the tanks should have an effect on their environmental requirements, so that we can settle fish in originally not foreseen regions resp. player-transformed biomes.
Edit2: Off course I know Subnautica is certainly not meant to be or to become a fish breeding simulator. But if my impression isn't totally wrong, the premise is to terraform and to colonize. So considering vanishing fauna, it was logical that 'repopulation' becomes sort of main emphasis.
You did exactly the sort of indepth experimenting I hadn't gotten the energy to try myself and suggested someone jump in a few pages back to take over my initial observations. I'm so glad you decided to 'dive in' and give it a go!
I also don't think I would have been nearly as thorough, probably not going beyond Experiments 1-4 honestly. You went the extra mile there with separating generations. Also, I had no idea releasing a baby fish immediately aged them up to adults and set a home location like that. No wonder a few of mine stuck around while the rest vacated!
And then there's my biggest error: Thinking that bringing fish in from other locations would be a good method to test so I didn't disturb the local native populations! That's why they all made a bee-line for home!
Good job, really.
I do hope the Developers will read this ... though now buried within pages of mass speculation - we have real solid results! I thought I might get more playtime this weekend and was starting to formulate some similar test batch breeding but I got distracted by some other things and lost my momentum. I'm just going to say I lost a swim fin and swam in circles.
While I very much opposed the inheritance ideas of Ixh at first, after reading the whole thread I am not so sure anymore. I somewhere read about a gen-extractor and infuser which allows the player to extract DNA from one animal and inject it into another. Maybe they really implemented some sort of digital DNA which controls some creature behavior and is used when breeding.
Well, this(!) off course was an enormous shortcut in breeding adapted specimen. Indeed! Well, that brings me back to the point of 'Is this game too easy?' .. hehe. Another cheating tool in my opinion. But admittedly, thats just me ... the lonesome wolf preaching the moon.
With these changes, a player could transplant / repopulate fish into the area around their base, but if that fish wasn't native to the biome of the base, it would die off eventually. It would also give a mechanic to allow fish populations to organically respond over time to death by any means (predation, player hunger, even bad driving), as long as there are still two of a species within breeding distance of each other, which I think would be way better than having a fish spawn instantly upon the death of another.
Hehehe SpacedInvader, you've already proved your intelligence but that idea seems to lack of farsightedness. It would ricky ticky cause an explosion like population. Are you kidd'n?
Yes, I always found it funny to encounter Airsacks in Deep GrandReef where they shouldn't even be able to physically exist because of their buoyancy (is that the correct word? I mean the force that causes air filled cavities to rise) or having Oculus or Eyeye specimens alive in my Aquariums where they should die due to lack of water pressure.
Of course, and it should not be that hard to implement. At least I think it shouldn't.
While I think this would be great, there may be a technical issue here. We found out about this in September when powering deep sea bases by solar panels (the threads should still be in the archive) So the environment of Subnautica is only simulated in the immediate surrounding of the player, everything else is either swapped out or at least frozen in time. (The deep sea bases wouldn't be powered by the solar panels because they were that far away from the base so that they didn't exist in the active game world when the player was in the base...) You can observe the swapping if you go very fast with the Seamoth or Seaglide. When you enter a new area, all fish will not move at first and Bone Sharks for instance are in their default animation state (they look a little like sea horses) Then the simulation kicks in and the fish move.
So while being swapped out (not simulated, frozen in time, whatever you may call it) I don't think its possible to have fish breed, since they don't exist in the simulation at that time. Breeding (and hunting, dying, growing) would have to be done retroactively at the time when the area is reloaded into the active simulation - if this is even technically possible since it takes some time to do it. Loading a new area already causes stress to the system.
Yep, that's the point .. and it's a damn good one. I'd solve it by a four-dimensional fractal like routine. Players actions change parameters of certain local fractals. An overtime changing fractal does exist in all possible stages ever, but will show up its current stage only by the right time parameter.
Edit: Off course it would need a hysteresis for player-changed fractal parameters. Otherwise it would pop up to a totally different stage immediately.
Edit2: Well, one aspect should be considered within this solution. Example: Picking out one fish would cause the fractal to appear as it didn't ever exist and would wipe out all followed generations at once. So it was necessary to reconfigure resp. reinitialize at the time of changing or within the span of hysteresis.
Edit3: Just a screwy idea .. but if taking the real life time as the relevant parameter would cause the evolution to proceed even when the computer is shut down. Hehe
Edit4 (sorry): This logic combined with the Mendelian inheritance would cause our Devs to play their own game, totally fascinated and not knowing what's gonna happen. @Devs: You like challenges? Go on! Hehe
Edit5: Off course I would add a hidden time slider for development- and balancing purpose. So you could see what it's up to in a thousand years or whatever.
As for the assumed population explosion, I don't think it would appear if the population restrictions are coded properly. Take the shallows for example, they are approximately 500m wide by 750m tall on the map. If you were to establish a limit of 10 peepers within a 100m radius of any other peepers (probably coded to stay in groups also), then you'd get something like a maximum of 200 total peepers across the whole shallows (this is a very rough visual estimate... feel free to correct that number with actual math as I'm too tired to do it right now). That might sound like a lot, but that is only one fish per 1875 sq. meters. As long as the breeding code was adjusted to determine population by distance rather than by a tank, it could easily be adjusted for density.
As for the ecosystem only being modeled when you're near it, that tends to be the problem to begin with. The more time you spend in an area, the more fish the predators (including you) kill off, resulting in fewer and fewer fish. As long as the breeding routines executed fairly fast (maybe do a check every minute or so), it would be able to keep up with an location in which you are present, even if its only driving through.
... or are simply able to do. You could be right. Besides, it isn't even clear how relevant ecology and evolution will be for the gameplay. So you might agree that we did nothing more than speculations based on some observations. So why not speculate a little further? Hehe
Well, the first sentence is true, the second false. I may remind my don't touch anything experiment which proofs the opposite. And to the first sentence: I've already posted an idea to solve this problem. But it might well be, that the fewest can imagine what I'm talking about ... hihi.
they were planning on having an advanced ecosystem that involved both the fish as the plants but right now only the predator->prey relation is in the game and only for the "smaller" creatures.
but there are already beginning of the advanced version in the game such as the fact that reapers hunt reefbacks when the two come close enough to each other. but there is no place were this can happen.
this makes me hope that the devs will keep working on the ecosystem maybe with the "creature attack!!" update?
I wondered about this as well. I didn't really notice the 'frozen in time' thing until I started doing a lot more Seamoth exploration. I don't think it's noticeable, particularly in the shallows biomes, when you're just swimming at normal speed. When you start using the faster fins, a seaglide and of course the submersibles, that's when you begin to notice a transition between zones and creatures 'popping' to life as you enter their area. I'm sure this helps enormously with performance issues as having an enormous open aquarium / sandbox with seamless movement and constant AI activity would be a nightmare on processing power. Anyone who has played a large world building simulator of any kind understands how bogged down your system can get after you've played for hours on end and now have millions of objects and entities being rendered in real-time!
Excellent counter argument that supports our problem and theories.
If things are not being calculated until you are present within that immediate area (not the entire biome) to save on processing labor, then coding in some sort of long-term ecosystem program would have to factor in relevant time to the player's activity in that area. A logistical nightmare? Frequent AI checks definitely cause performance stuttering and heavens forbid if one of those check sums gets stuck in some sort of infinite loop (bug) ... your system can grind to a halt!
My suggestion, and hopefully what they have in store for us with the egg production system is that the eggs themselves are an object with coded timers and response system. When player is present, they initiate hatching sequence timers... think of it like the Crash who responds to proximity by the player to determine their behavioral sequence. If the player is not present, then they have a hardcoded 'spawn' behavior to hatch after a period of time regardless of player presence (even if that 'hatching' is just as frozen as everything else in that biome at the time).
Then the question begs to be asked: What happens if a player somehow manages to get something like 500 eggs all crammed together in one place for some sort of fish explosion scenario? Players love to push the limits of a game and in a sandbox environment that's sort of the point after all - do whatever you want!
The biomes having a population cap / limit would probably solve most of that. 500 eggs would probably result in a lot of 'duds' that didn't fertiize or hatch is my guess.
You are completely correct, all of this might just be speculation and have zero impact on future game development. That said, I've viewed any suggestion I make on this forum through the lens of how much work it would take the devs to implement from the game's current working release, trying to maximize problem solving / player experience for a minimum of additional effort. The biggest problem with the ecosystem is that it becomes devoid of life in some areas after a while, and, since there is already a breeding system in place, it seems that it would take a minimum of effort to modify it to work in the open world rather than just a fish tank.
As for your second statement, the only ways I've ever observed fish disappearing are either through predation (stalkers particularly, though bone sharks are pretty aggressive toward other fish as well), or player actions (catching, running over, or building a base too close). This would support the theory that its proximity to the player and thus simulation of the ecology, that allows fish to begin to thin. If you see some fish in a distant area and then don't return for many hours, you will probably return to see just as many fish as when you were there originally. I'm guessing that you conducted your experiment at a location without any nearby predators other than you, and since you were careful not to kill any of the fish, they never died off as a result. If you had conducted the experiment on the border of the kelp forest where many stalkers lived, you might have noticed different results.
Do UWE plan to find a way solving something about this issue in the future ?
Could this mean that the problem wasn't totally considered until now ?
From what I have been able to gather, its an issue that the devs have gone back and forth a few times on. I think that fish used to respawn, then that was removed to encourage exploration, but now they seem to be going back on that once more. The general consensus among the people here seems to be that exploration will happen with or without a fish shortage and the negative result of a dead zone around the player's base is much worse than the possibility of less exploration.
That said, we've seen this Trello card already and all feel that simply spawning a fish behind you when you kill one is not the best way to resolve the issue as it completely removes any impact you or other predators have on an environment. I think I can speak for everyone who's contributed to this thread when I say that what we really want is at least a rudimentary form of fish reproduction as that would allow us to actually impact the environment in negative and positive ways.
I can very well understand your position at this point and I guess your Ideas for resolving would be welcome if the ecosystem in fact had a development problem. But I'm afraid this is simply not the case. If the Devs wanted a stable system, believe me, it wouldn't ever come that far. And if, they could spam more fish behind our backs than we'd ever prefer. That's definitely not the problem. I'm looking forward to be pleasantly surprised on that backdrop.
You are right. There where no predators .. but I know this place to depopulate even without. That's why I've chosen this spot. The next step is to pick up some 'resources' there to find out if this has an impact. This crosscheck will probably show up the true reason for wide depopulations. If this test will be positive, I'd say that the players greedy behavior itself is the evil.
Wanna hear my suspicion for Subnautica's quint-message? You want your huge underwater villa with glassy gangways and panoramic views in every room? No problem, take it ... but take the consequences too. Know what I mean?
We just seem to differ on this point. I've seen far too many fish just continue living without interruption to be convinced of the theory that they can just die on their own without outside intervention. I also firmly believe that the dead-zone is an unintended consequence, at least at this point, which is why the devs are exploring ways to keep the fish population up.
While I won't argue that extracting natural resources has an impact on the environment in real life, I find it difficult to believe that the devs have somehow decided to make extracting mineral resources, without highly damaging mining activities, I might add, a way to ruin the environment. I could easily see them punishing you for taking too many creepvines, acid mushrooms, or corals, but quartz and titanium? No.
I think its much more likely that the dead zone is an unintended consequence of removing fish spawning to encourage exploration and one that they are attempting to correct by introducing farming and fish spawning.
Edit: I'd see it like taking anything will cost another. The resources have to be seen as a metaphor.
That's just the thing lxh, everything comes in degrees. If I walk down the beach and pick up a rock, it might affect the environment a minuscule amount, but would mean very little in the grand scheme of things. If, on the other hand, I excavate the entire beach, it will have a significant impact across the whole region. I associate the level of extraction that we undertake in the game much more with the former example than the latter. That said, I realize this is a game with a much compressed / simplified system, so smaller actions should have larger effects, I just don't believe that effect is currently that harvesting some or all of the resources in an area kills its ecosystem. However, the devs appear to be exploring resource respawning if you don't completely harvest them, so maybe they will also introduce a penalty to sucking a biome dry of some resource or another.
I think I've devised an experiment to test this theory of yours, though, which won't take hours of observation to determine a result. I'm going to find a location with a healthy fish population and then completely remove everything that I can pick up except the fish. If the fish stay, then it supports my theory, and if the fish leave, it supports yours.
It is good that they are looking into these mechanics, the first time I saw a predator actually kill a fish I knew that without fish-respawning the ecosystem would die off eventually. It was just a matter of time.
@SpacedInvader: try the Sparse Reef biome, I frequently build my main base near the location, it has a lot of Spadefish and I do not recall predators in the area. I also do not recall predators in the Grand Reef biome but I do not visit it that often.
I chose the far northwest end of the northwest shallows as the closest zones with predators are at least 50m away or 100m below in the mushroom forest.
Here is my location before beginning the harvesting:
I know its a little hard to see, but there are about 15-20 fish of several varieties swimming around the area, including a school of boomerangs
I then spent about an hour and a half completely removing everything that was either harvestable or destructable that was withing visual distance of my experiment base. I should point out here that this was a massive undertaking, going through 6 knives cutting up the giant coral tubes and purple grass in the area (I only realized at the end that acid mushrooms make great explosive ammo for the propulsion cannon), as well as 4 batteries for the propulsion cannon. The game even started to bug out near the end, stopping me from properly breaking up corals with the knife.
The end result looked like this all around:
I then waited with the game running through four day / night cycles at the base to ensure the environment continued to simulate. After which I checked to see if the fish had left.
Here are the results:
Again, it is difficult to see them, but none of the fish left the area. One thing I didn't do, and I regret it because I have no desire to re-eviscerate that area and because I didn't save my work, was to hop in the seamoth, leave the area for a while, and then return to see if there were any changes. I would not put it outside of the realm of possibility that, if the fish were going to disappear, it would have happened then. That said, most of the other changes with fish in the environment (e.g. hoopfish showing up when your creepvines reach maturity) happen in real time, so I would expect fish leaving / disappearing to follow suit. I can't be sure about this though, so if someone else would like to go through the effort of killing off an area, please let us know if there was any change from my results.
EDIT: One interesting note, the loot from just the area visible from my base (mostly acid mushrooms and coral samples) filled 10 large storage lockers and I destroyed more than half of the mushrooms and corals rather than collect them.
Besides - and that might be a very relevant criteria - I've noticed a bigger experimental version update which at least contains a different breeding mechanics. And it wouldn't be any surprise if it includes a new fauna-milieu correlation. But let's see what my crosscheck will show up.
I imagine that might have been part of the reason I was bugging out. I used a save which I'd been working on for a while instead of a fresh game, so a lot of builds have passed since starting it. If I have the energy, I may repeat the experiment in a day or two using a fresh game to see if there were any different results.
So let's start plundering .. hehe. But that could take a while. Not sure if I can spare the time now.