development update #92
Hello everyone,
As you can imagine we have been working rather busily these past few weeks and there is much to talk about. There is still no new build update yet but we are getting closer.
Blue Betta Male:

Blue Betta Female:

These lovelies were in the game over a year ago but were removed after we updated the models for the betta fish. Someone on the forums asked us to bring them back because they liked them so much and we have done that. In the next build the blue betta fish will return.
We are still working on the other fish we have shown off in the previous few months like the Oscar Cichlid, Rainbowfish, Freshwater Angelfish etc so expect to see them very soon also. The Oscar fish can't be put into the game until we have updated the predation features. Specifically larger fish will have the ability to swallow whole fish that are small enough to be swallowed whole. This meant that we first needed to make changes to some of the behaviour code so that all fish know what other fish they can eat.
On top of that the behaviour code needed improving so more interesting and complex behaviour could be possible and we desperately needed to improve the pathfinding abilities of all fish so they don't get stuck or lost 70% of the time. This was shown in our previous update post. As usual to solve one problem we must solve a further six problems.
Some of the other behavioural changes we are working on have been requested by players. Such behaviour changes include all members of the same variety of a species being able to socialise and breed. For instance all guppy types can socialize with each other and potentially breeding with each other.
We have also vastly improved how we calculate swim level behaviour for fish. For example guppies like to hang out somewhat near the surface of the water whereas tiger barbs prefer to be around the middle level. These improvements to the code as combined with better collision avoidance methods allowed us to add the behaviour of bottom feeders like Corydoras. They swim about at substrate level and stick their noses into the substrate looking for things to nibble. Since this behaviour now works it means there is nothing stopping us from adding bottom feeders like Corydoras into the game which makes us very happy because they have been on our to-do list a long time and players really want them.
Pause Time Feature:

We are also about 95% done with adding the pause feature. It is somewhat trickier than you might at first think it is. Pause can mean different things in different games and depending on how you do it will create different outcomes. We want the ability to freeze everything in the aquarium so it does not move and does not update any sort of internal state like hunger or age. It would be very stupid if you pause the game and the fish stops moving but it starves to death while paralyzed. Very bad. We also need to freeze but keep the current velocity of fish and other physics objects so when players unpause the game things continue as normal on their physics trajectories.
The same must happen for fish behaviour. A fish might be hungry and swimming towards a nice piece of food only to have the player pause the game and then unpause after which the fish's brain is reset and it has decides to pursue a different piece of food or have a wander about. Care must be taken to preserve the "thoughts" of the fish as the game is paused and sub sequentially unpaused.
Not everything should be paused. The music should keep on playing and we must retain the ability to move the camera. Object selection must stay active and updated. If players move decorations whilst the game is paused the physics system must keep track of where everything is and if a moved decoration comes into contact with a fish then it must move the fish. This is important because if we unpause everything when physics objects are inside eachother then the physics system might freak out and move things around until they are not colliding which could mean things fly about at high speeds or appear to teleport which is undesirable.
Pausing a game like Fishery has to be very carefully controlled indeed. We are about 90% done with it. You may not be able to see it in the gif but the plant leaves are still swaying slightly. The Not all particle systems for plumbing objects pause. These are very simple fixes though.
New Shop Thumbnail Images:

Now that we can pause the game players can have an easier time in photo mode putting the camera in a nice position and adjusting depth of field settings without rushing. One thing that we find useful is that we can now make better images for the in game shop. If you buy fish from a website you usually can see nice images taken of fish while they are in an aquarium. Adding this to our re-designed in game shop will make things feel a little more true to life and more polished.
Time in general causes no end of troubles for us. A lot of the feedback and suggestions that we receive from players talks about time. Specifically that some things happen too quickly or too slowly. Fish breed way too often and become hungry too quickly. The time it takes to filter out waste can seem slow. The time it takes to increase nutrients levels can be slow or too fast depending on the size of aquarium and so on.
In the real world generally it takes two weeks or more depending on the specifics to prepare the water of a small to medium size aquarium for fish. It just takes time for the water chemistry to become ready to handle fish and decompose waste, etc. We could of cause adjust the values in the game to reflect that of the real world much closer but we would have to make players wait longer for things.
Furthermore it seems that speed that time passes is relative to what players want to happen. For instance it is desired that waste is filtered fairly soon after adding a filter and the speed at which waste is produced by fish or food should not be so fast that the aquarium gets dirty too soon. We all would like oxygen or nutrients levels to adjust to what we want quickly but if things are imbalanced then it should go wrong slowly so we can have time to react.
We have attempted to change how all the maths works for water chemistry several times and added a few magic numbers and tricks to account for all of the biases as mentioned above but it seems that we just cannot get it right and there are not many solutions left except to make the numbers work in a more realistic manner and allow players to speed up time where needed.
Fast Forward Time Feature at 16x: (sorry for bad compression steam only allows 3mb file limit)

A lot of players have requested it but I have said many times that we were not planning on making time manipulation features because it could cause problems around physics stability and for various other reasons it was not something we whole heartidly wanted.
However after a lot of thinking we both decided that it actually does help us solve quite a few problems. We don't have to worry too much about sneaky maths and magic numbers when it comes to water chemistry. We can use more real world numbers when it comes to breeding, age, metabolism, algae growth etc and players can speed things up where necessary. One popular reason for why players want to speed up time is so they can reduce the amount of time they have to wait while the light is off so plants and fish can avoid too much light exposure and the chances of growing algae is diminished. Hopefully now we can ease those player's annoyances.
I could probably go through many many examples of why this is useful but I imagine those of you who have played the game will have your own useful reasons for speeding up time.
More will be explained about the time manipulation features in another update post. I managed to work on it a lot over the weekend and there are only a few small slightly fiddly bits of it left to fix and test before it can be put into the game. The next step after that is to adjust more of the numbers in the game so a lot of things do not happen so often or so fast. The first of these numbers to be fixed will be about the frequency that fish can breed and how quickly fry grow into adults. At the moment this happens way too fast and there are a lot of players with over population problems cause by out of control breeding.
The feedback and discussions you are all participating in on the forums does make a huge difference and every week we are solving important problems based on these discussions. A lot of the changes we have talked about in this post were based on feedback and suggestions from the forums and the game is a lot better for it.
We are fairly confident that the next build will be released some time in this month (August) and it will include everything we have talked about in this post.
We wish you all a very good start to the week,
The Fishery Team
As you can imagine we have been working rather busily these past few weeks and there is much to talk about. There is still no new build update yet but we are getting closer.
Blue Betta Male:

Blue Betta Female:

These lovelies were in the game over a year ago but were removed after we updated the models for the betta fish. Someone on the forums asked us to bring them back because they liked them so much and we have done that. In the next build the blue betta fish will return.
We are still working on the other fish we have shown off in the previous few months like the Oscar Cichlid, Rainbowfish, Freshwater Angelfish etc so expect to see them very soon also. The Oscar fish can't be put into the game until we have updated the predation features. Specifically larger fish will have the ability to swallow whole fish that are small enough to be swallowed whole. This meant that we first needed to make changes to some of the behaviour code so that all fish know what other fish they can eat.
On top of that the behaviour code needed improving so more interesting and complex behaviour could be possible and we desperately needed to improve the pathfinding abilities of all fish so they don't get stuck or lost 70% of the time. This was shown in our previous update post. As usual to solve one problem we must solve a further six problems.
Some of the other behavioural changes we are working on have been requested by players. Such behaviour changes include all members of the same variety of a species being able to socialise and breed. For instance all guppy types can socialize with each other and potentially breeding with each other.
We have also vastly improved how we calculate swim level behaviour for fish. For example guppies like to hang out somewhat near the surface of the water whereas tiger barbs prefer to be around the middle level. These improvements to the code as combined with better collision avoidance methods allowed us to add the behaviour of bottom feeders like Corydoras. They swim about at substrate level and stick their noses into the substrate looking for things to nibble. Since this behaviour now works it means there is nothing stopping us from adding bottom feeders like Corydoras into the game which makes us very happy because they have been on our to-do list a long time and players really want them.
Pause Time Feature:

We are also about 95% done with adding the pause feature. It is somewhat trickier than you might at first think it is. Pause can mean different things in different games and depending on how you do it will create different outcomes. We want the ability to freeze everything in the aquarium so it does not move and does not update any sort of internal state like hunger or age. It would be very stupid if you pause the game and the fish stops moving but it starves to death while paralyzed. Very bad. We also need to freeze but keep the current velocity of fish and other physics objects so when players unpause the game things continue as normal on their physics trajectories.
The same must happen for fish behaviour. A fish might be hungry and swimming towards a nice piece of food only to have the player pause the game and then unpause after which the fish's brain is reset and it has decides to pursue a different piece of food or have a wander about. Care must be taken to preserve the "thoughts" of the fish as the game is paused and sub sequentially unpaused.
Not everything should be paused. The music should keep on playing and we must retain the ability to move the camera. Object selection must stay active and updated. If players move decorations whilst the game is paused the physics system must keep track of where everything is and if a moved decoration comes into contact with a fish then it must move the fish. This is important because if we unpause everything when physics objects are inside eachother then the physics system might freak out and move things around until they are not colliding which could mean things fly about at high speeds or appear to teleport which is undesirable.
Pausing a game like Fishery has to be very carefully controlled indeed. We are about 90% done with it. You may not be able to see it in the gif but the plant leaves are still swaying slightly. The Not all particle systems for plumbing objects pause. These are very simple fixes though.
New Shop Thumbnail Images:

Now that we can pause the game players can have an easier time in photo mode putting the camera in a nice position and adjusting depth of field settings without rushing. One thing that we find useful is that we can now make better images for the in game shop. If you buy fish from a website you usually can see nice images taken of fish while they are in an aquarium. Adding this to our re-designed in game shop will make things feel a little more true to life and more polished.
Time in general causes no end of troubles for us. A lot of the feedback and suggestions that we receive from players talks about time. Specifically that some things happen too quickly or too slowly. Fish breed way too often and become hungry too quickly. The time it takes to filter out waste can seem slow. The time it takes to increase nutrients levels can be slow or too fast depending on the size of aquarium and so on.
In the real world generally it takes two weeks or more depending on the specifics to prepare the water of a small to medium size aquarium for fish. It just takes time for the water chemistry to become ready to handle fish and decompose waste, etc. We could of cause adjust the values in the game to reflect that of the real world much closer but we would have to make players wait longer for things.
Furthermore it seems that speed that time passes is relative to what players want to happen. For instance it is desired that waste is filtered fairly soon after adding a filter and the speed at which waste is produced by fish or food should not be so fast that the aquarium gets dirty too soon. We all would like oxygen or nutrients levels to adjust to what we want quickly but if things are imbalanced then it should go wrong slowly so we can have time to react.
We have attempted to change how all the maths works for water chemistry several times and added a few magic numbers and tricks to account for all of the biases as mentioned above but it seems that we just cannot get it right and there are not many solutions left except to make the numbers work in a more realistic manner and allow players to speed up time where needed.
Fast Forward Time Feature at 16x: (sorry for bad compression steam only allows 3mb file limit)

A lot of players have requested it but I have said many times that we were not planning on making time manipulation features because it could cause problems around physics stability and for various other reasons it was not something we whole heartidly wanted.
However after a lot of thinking we both decided that it actually does help us solve quite a few problems. We don't have to worry too much about sneaky maths and magic numbers when it comes to water chemistry. We can use more real world numbers when it comes to breeding, age, metabolism, algae growth etc and players can speed things up where necessary. One popular reason for why players want to speed up time is so they can reduce the amount of time they have to wait while the light is off so plants and fish can avoid too much light exposure and the chances of growing algae is diminished. Hopefully now we can ease those player's annoyances.
I could probably go through many many examples of why this is useful but I imagine those of you who have played the game will have your own useful reasons for speeding up time.
More will be explained about the time manipulation features in another update post. I managed to work on it a lot over the weekend and there are only a few small slightly fiddly bits of it left to fix and test before it can be put into the game. The next step after that is to adjust more of the numbers in the game so a lot of things do not happen so often or so fast. The first of these numbers to be fixed will be about the frequency that fish can breed and how quickly fry grow into adults. At the moment this happens way too fast and there are a lot of players with over population problems cause by out of control breeding.
The feedback and discussions you are all participating in on the forums does make a huge difference and every week we are solving important problems based on these discussions. A lot of the changes we have talked about in this post were based on feedback and suggestions from the forums and the game is a lot better for it.
We are fairly confident that the next build will be released some time in this month (August) and it will include everything we have talked about in this post.
We wish you all a very good start to the week,
The Fishery Team