It is Friday once again and we have a new build. It is more of a cleanup/quality of life update but as you will see further down we have been furiously working on lots of other more interesting things.
The code for all UI buttons types is some of the oldest code in the game. Code this old is usually made at a time when we are not 100% sure about how the game should function and there is usually a bit of over-engineering done because we assume that certain types of functionality will be needed later on. Now that things are a lot more clear, all button code has been cleaned up. The code has been vastly simplified and reduced in size. There is also less logic that must be processed in order to determine what the player is doing to the button so the correct actions can be executed. Again this not very glamorous and exciting but craftsmanship in software is important and often overlooked.
Another small UI bug fix. When in windowed mode some parts of the ui would appear in the incorrect place for one frame and then snap to their correct position on the next frame. This would happen to ui elements that appear at the position of the mouse and are activated when the mouse is over an object or another ui element such as a shop button. This was very annoying and is now fixed.
Switching to windowed mode is now simpler. Rather than players cycling through a list of window sizes they can just resize the window like any normal window.
Tiger Barb Work In Progress:
Progress has been made with painting the tiger barb fish. They are not finished just yet but I think they are going in a good direction. Special consideration has been made to keep them stylized but also feel like they are referencing the real animals as much as possible. Male Tiger barb fish have more red in their colourings than females. We exaggerate it a bit here only because we don't want to cause confusion when players need to identify the genders of their fish for breeding etc. Critique is always welcomed but do keep in mind we are still working on them.
A few other small things have been worked on that will probably make it into the game very soon. Such as small quality of life fixes like objects created with the brush are not always created inside the radius of the brush. We also are trying to get the brush to feel less clunky and clumsy.
Pausing the game will actually be possible. We added it into the game when the plumbing system was first added but there is not a separate control that players can use if they need to. We were actually going to have pause ready for the very first release but it had a bug where fish would become invisible and not become visible again unless the game was restarted. Something in the fish shader did not like what was happening so we did not add the pause feature initially. However Pausing was entirely re-engineered for the plumbing system and now works 100%.
More progress has been made with the career/campaign mode. For those who are reading about this for the first time career/campaign mode is going to be the part of the game that is actually the "game" part. You start off in aquarium school and learn the basics of how everything works in the game. Then graduate and begin a career based on qualifications attained in aquarium school.
You then interact with various characters in the game that hire you. The jobs you get might be something as simple as "Please look after my fish while im on vacation" or something more complex like "Design a self-sustaining aquarium for my rare Betta fish and keep it within a budget of $8000" or "My Cichlid has a strange disease and needs to be nurtured back to health".
As you complete jobs you gain money and unlock new fish, plants, decorations etc. This also increases your rating so you can complete more complex jobs. You could also take some of this money you earn to go back to aquarium school and gain more advanced qualifications. Most jobs in the mid-late game will require players to have certain qualifications so it is important to gain as many qualifications as possible over time.
We want each career path to be very interesting and not feel like a repetitive grind to earn some random points that unlocks more items. This means each task the player has to complete should be as unique as possible. I have played open world games where the main story missions become very repetitive and are clearly the same mission types over and over again with different character names and slightly different objectives. However the side missions were a lot more engaging and more interesting outcomes sprang from their conclusions.
We want career mode to be like a game full of interesting side missions where players are actually interested to complete the task they are given and look forward to the next one. This also means there can be plenty of secrets. An interesting series of interactions with specific characters may lead to unlocking special items.
As you can imagine this requires a lot of writing and a lot of planning but we are getting it done. Aquarium school will serve as the way we teach players how to play the game which essentially means it is the tutorial system and it will be the first part of the career mode that we add into the game. If everything goes to plan the first iteration of aquarium school will be in the game before the end of May (2020).
Be sure to check out the forums. A new post has been made and pinned that shows an incomplete list of all the fish we are planning on adding into the game. Feel free to reply to it with your suggestions, we will add them to the list and at some point add them into the game.
As usual we wish you all a great weekend.
The Fishery Team
development update #32
Hello everyone,
It has been a slightly shorter week due to the easter break and there is no update to the build this week. However some really important progress has been made with the fish.
As has been mentioned in some previous posts we have been working on improving existing fish whilst preparing to add new ones. This also includes making the male and female versions to be used later when we implement the breeding feature.
For example here is a look at the old model of the Tiger Barb that is currently in the game:
Like the other fish models it is fairly simple but works quite well. As was said before what we need are to have gendered versions of each fish. For Tiger Barbs, the differences between genders are more subtle than other species in terms of body shape. Females are overall larger and their bellies are larger as they have to accommodate lots of eggs. The other differences are in colour but we wont be showing that in this post.
Their size is set to be the same so they fit nicely in the image. The important things to notice here are that there is more definition around the head. The fish actually has gills now and overall there is more of a feeling of volume and form. Much more detail has gone into the fins so when seen in silhouette they are more distinctive. The higher polygon count and distinctive features allows us to add more detail into the animations. The lower resolution versions did not look good when the body bends during it's swimming motion because there are not enough polygons to make the bend look rounded.
It also makes painting the fish easier because we paint on top of a surface that has more definition. This actually helps it feel more three dimensional. The old version tends to feel a bit flat because there is more detail painted into the texture but it sits on top of a simple featureless model. Essentially it comes down to us wanting to improve the quality. There is nothing particularly wrong with the old versions but they can be better and it is important to make them the best that they can be.
Here is a look at the other fish we have worked on this week:
Round Tail Guppies:
Old:
New:
This is the first proper guppy type we are adding. We will slowly add the other guppy types such as fan tail, sword tail, spear tail etc but for now we will stick with the round tail type. We will be adding as many colour variations as we can over time. By the end of development there will be quite a lot of guppies.
Platy:
Old:
New:
like guppies, Platys come in many different colours and we are going to add as many if these into the game as we can because too they are quite lovely.
We are also going to add Mollys. Mollys and Platys are quite similar to each in terms of body shape but there are distinct differences and variations. Mollys will get their own distinct models and colourings.
Betta:
Old:
New:
We added the first betta fish around christmas time and players seemed to really like it. This one is a female. The male is still being worked on because it's fins are quite a lot larger. The hard part is figuring out a good way to animate them. Their fins are so large and behave like cloth. This requires a bit more problem solving to get right.
Rainbow fish:
This is a completely new fish type that we have not been shown before. It needs another few hours of modelling work and then we can starting painting.
Next week we will post a list in the forums of the fish we are going to include into the game. as well as some information on their state of readiness. We will keep adding to the list so fear not if you don't see your favourite fish on it but feel free to tell us and we will add it. We will also try and show more fish related progress every week now that the ball is rolling.
We wish you all a lovely weekend
The Fishery Team
development update #31
Hello everyone,
This week we spent a lot of time focusing on substrate. It's visual appearance has remained more or less unchanged since the initial release and it was high time that we worked on it. We were also able to add some more functionality to it and of course we could not resist the urge to optimise and improve it's code.
We have added an additional substrate 7 materials. I did so much painting this week that my thumb hurts from holding my art tablet stylus. The shaders, which are the small programs that control how the graphics card renders the substrate have been remade to use less memory and less computations while looking better than the previous version.
Each substrate now has the capability to modify the water chemistry. For instance some substrates that contain earth/soil increase the nutrients in the water while other substrates made of rocks and other minerals increase CO2 and oxygen. This means that the reason for choosing which substrate to have will not be based solely on appearance. Another way of thinking about it is that we are attempting to add the butterfly effect into the game in an indirect way. Every change the player makes to their aquarium by adding or removing something will affect the simulation. The full consequences of these actions will make themselves known later. That does not mean that every outcome will be sinister in nature. We want to allow to very cool positive things to happen and be made possible. A lot of the numbers that govern this are not final to keep in mind that an item's inputs and outputs are far from final as we test and test what works well.
What we have added is but a small sample of where we plan to go with substrates. We are going to be adding more varieties of materials in the upcoming months. Some materials are quite traditional while others are a little more creative and surreal.
Hotkeys for using the manipulator tools have been added. These have been on the to-do list for a while and this week someone mentioned it on the forums and we were able to squeeze it in at the last minute. The hotkeys are X, C and V. They allow players to activate the Scale, Rotate and Translate manipulators. The reason we have gone for these hotkeys instead of using S, R, T as suggested in the forum post are because they require less finger stretching to use them. Their use is also historical. They were also the hotkeys used for the same purpose in a 3D program named Softimage which was one of the earliest commercial 3D programs which was used widely across the 3D industry. So we are confident in our thinking that players will find this comfortable since countless artists have collectively spent thousands of years using them.
As is usual most weeks this was not the only things we focused on. Typically we focus on a small set of things that we know are almost ready to be put into the game at the same time as working on more complex/larger things that take more than a week to get right. Occasionally our plans get derailed somewhat if there is an major bug or set of features that are really in need of modification. We have some quite useful and interesting things lined up to be added into the game this month. As usual they include things that we often say are "coming soon" or "are being worked on" but we really do mean it.
We wish you all a relaxed weekend.
The Fishery Team
development update #30
Hello everyone,
The build was updated last night so check it out when you have time. A lot of improvements were made to the water chemistry simulation as well as to the art style of the algae And we threw in a few rendering performance improvements for good measure.
As algae levels increase a new algae texture appears on the surface of objects in addition to the plant like tufts that we added last week. You can see in this image that the airstone objects do not get covered in algae. Our reasoning for this is that they are quite important objects that need to be easily identified by players and because they blast gas bubbles our from their surface it does not allow algae to settle and grow.
The next step for algae is to add it back into the materials for the substrate.
Power can now be consumed by items that need it in order to function. Airstones are such items. They will not produce CO2 or Oxygen unless there is sufficient power. For now the only way to produce power is to connect one or more power generators to your aquarium's plumbing system.
OLD UI:
NEW UI:
The airstones selection UI has been updated to better reflect how it changes the water chemistry and power. Hopefully this makes it very clear and simple for players to tweak gas output without feeling unsure of the outcome of such tweaks. If you compare the new UI with the old one. It is very easy to see why we needed to change it.
Similar changes have also been made to the Selection UIs of all plumbing objects. More numbers are on display to make things clear.
The usual pile of bug fixes and tweaks have been made that make everything work much better overall. We focused a lot this week on reducing the complexity of shaders for all decorations (rocks, wood, fossils, etc). There are a lot less lighting calculations happening per pixel which drastically reduces the time your graphics processor needs to render things per frame. Shadow performance has also been improved. Hopefully these changes also reduce some shadow flickering at lower shadow resolutions. However we are far from satisfied with shadows so expect them to improve over time.
We have also been putting a lot of work into things that we are still not ready to show yet. Regarding the career mode. It is shaping up to be very interesting but there is a lot of text to write on top of planning. We are also working hard on the next iteration of the art style for fish, decorations and plants. Soon when we are satisfied we will show you progress.
As you can imagine we are working flat out at the moment. There are so many improvements that are being made but also so many still to be made that overall it seems progress is a little slow even though we get a lot done in the space of 1 week. But we are focused and highly motivated to get this all done so keep checking back at these posts every week to see all the progress made.
Have a great weekend,
The Fishery Team
development update #29
Hello everyone,
Apologies for being a bit late with this week's update. We have finally added the new algae system into the game and later tonight a new build will be uploaded to steam for you all to try.
The underlying code that governs how algae works is a lot cleaner and more robust than what was previously in the game. Algae's growth is far less volatile and players are able to tweak the water chemistry to keep algae levels where they want.
In order for algae to spawn in the first place players need to maintain relatively high levels of CO2 and nutrients. This can happen by design or by neglect. Once algae spawns it is intentional by us that it is difficult to remove entirely. However having algae growing in your aquarium is not necessarily a bad thing and if players keep an eye on their water chemistry it's growth can be stabilised. Furthermore it can be used as a natural way to control the levels of co2, nutrients and oxygen. It will also be a food source.
In the not too distant future there will be fish that eat algae and hopefully not to far beyond that we will add other algae eating organisms like shrimp and snails.
We are also going to make it look more pretty. There is certain type of beauty that can be found in the natural world when nature becomes a little overgrown and buzzing with life. We want to try and capture that in Fishery and algae will play a big part in that.
The little tufts of algae that grow on the surface of the objects in the pictures below are not final at all and they will be replaced soonish with better models. Another part of the algae visualisation that we are working on are the various painted maps that will appear on the surface of objects, substrate and glass. We are also going to experiment with having algae particles floating around in the water as well as experiment with algae appearing on fish when levels are really high.
At the moment algae is only visible on the surface of decorations so you will need them in your aquarium in order to see it. Above you can see what it looks like as algae grows from nothing to it's maximum level.
Algae grows on the surface of objects over time. You can see it's progress on a per-object basis by selecting it. In the real world if you add a rock into an aquarium full of algae it will take a bit of time before algae is covering it. This is a simple attempt to emulate that behaviour. It serves only as a visualisation and it is not adding more algae into the system.
There has also been a small tweak to the overall water chemistry system that we wanted to add a little later but needed to be added now in order to get the algae working correctly. This change is to the speed that the water chemistry adjusts to changes.
There is an additional parameter added to the water chemistry UIs. "Output". Using the example picture above, The output is 28.4. This represents how much is actually being added into the system by some object/s. However the CO2 level is far greater. This is because the output must have previously been around 40 and suddenly it was reduced. Over time the CO2 level will decline and settle to the value of 28.4 because 28.4 is the amount of CO2 being put into the aquarium and no more. When players modify the CO2 level the output adjusts instantly to reflect the change. This allows players to make changes with precision and know that in a short while levels will rest at that number.
Many of the numbers that govern how the algae and water chemistry system work will be changed a lot over time as we playtest and get feedback from you all, so keep in mind that this is all going to change and improve week by week as is the rest of the game. We did do more work this week on other parts of the game but priority was given to getting algae ready and it sort of took over everything.
We wish everyone a good weekend and shall update you with more progress next week.
The Fishery Team
bug fix patch #3
Hello everyone,
We uploaded a small patch to game a short while ago. It fixes a few silly bugs/mistakes.
- Bugfix. When fish eat medicine or food. The fish get all the nourishment from the edible item but it never disappears.
We are doing a lot of tweaks to the simulation system. At the moment fish loose their hunger satisfaction in their entirety in about 3 minutes. As a fix for now we have doubled it to 6 minutes. At the moment all fish have the same metabolisms. This will change and soon we are going to introduce the first versions of an auto-feeder device to ease any tedium.
The Fishery Team
development update #28
Hello everyone
New build is uploaded!
Fortunately my life by default is one of social isolation and self quarantine. Therefore much progress has been made this week. Not everything that has been worked on is in the current update but that will be explained near the bottom of the post.
Inspect mode now has more functionality. We made it so the manipulation toolbar works in this mode and players can creatively fiddle about without needing to be in the shop mode. The shop mode now allows for the selection UIs to appear. Now that things are improving with the simulation and the numbers are starting to become meaningful to players. It makes sense to allow them to be seen in the shop mode when things are selected. It was completely dumb to have these mode-specific restrictions and now when we play the game it feels much less cumbersome.
The creation UI has been improved. It is a bit more clear and organised and there is more information about what is assigned to the brush. When the brush is turned off the part of the UI that shows brush-specific options becomes darker which is to show that it is turned off. These settings mean nothing while in that state. There are also several tweaks that make things feel less clunky when switching between brush mode, translate mode, etc.
There is still more work to be done in these areas. There have been a lot of great feedback from players and we are going to put these ideas into the game in the upcoming weeks. Here is a small list of some of the most interesting features:
- Delete brush. For deleting lots of things without the need to select them individually. There will be additional controls added so players can define specifically what should not be deleted by accident when using this tool.
- Undo. sometimes mistakes are made or a creative choice does not turn out as envisioned. Players need to quickly correct that.
- Object attachment. If players create an object on the surface of another object it makes sense to literally stick it to that object so if the base object is moved then it moves the stuck object/s too.
We will aim to add one of these features per week along with the usual assortment of tweaks and new stuff.
This was actually added last week but we completely forgot to show it. To help make sure players can see clearly when plumbing objects are connected correctly we have a better visual overlay that shows the difference between input and output connectors. Inputs will not connect to other inputs and outputs will not connect to other outputs. This is just the first step in showing how this works. We will probably have a small alert icon show up when connectors are incorrectly connected in the next week or perhaps 2 weeks depending on how everything else goes. There will also be clear instructions written in the new help system once that is added.
Algae reactors are really cool. They exist in the real world for use in aquariums as a means to filter out excess carbon dioxide and nutrients from the water to prevent algae from growing. Since we are about to add the new and improved algae system into the game we needed a solution to allow players to prevent algae from growing out of control. We are not super happy with the design. We will change it to be more detailed and have a more "sciencey" feel to it so keep that in mind. It wont stay boring forever.
We almost got the first part of the new algae system into the game this week but as we were testing it. Algae would just grow out of control and steal all the resources from plants, eventually killing them all which then kills a lot of fish. It is actually quite cool to see this sort of chaos unfold in realtime but it will for sure frustrate anyone who plays it. We will spend the weekend and next week tweaking this so everyone does not have an algae catastrophe or an algastrophe....
We made some small-ish tweaks to the fish AI. We were hoping to get deeper into fish AI this week but a few things got in the way. We will prioritise these changes for next week.
There are also quite a few features and art content being worked on that we are not ready to show just yet. Especially the next versions of fish. Certain types of fish require more work than others and they require a few more technical and artistic problems to be solved. There are so many shapes and colour appearances of fish. Each type needs it's own stylized art language in which some are more complex than others but we are making good progress and hope to show some progress very soon. We are also writing text for the career mode which is really going to add depth to the game.
We shall see you all next week with lots of juicey progress.
The Fishery Team
development update #27
Hello everyone,
It has been a very good and productive week and we are happy to say that a new build has already been uploaded.
Now that we are not 100% focused on just getting the plumbing system in the game we have been able to focus on lots of things that have been irritating to us and players over the past few weeks. But we did make a few small additions to the plumbing system too.
We added the first "Nutrient Injector". It adds nutrients into the water via the plumbing system. This means players will not need to rely on adding dissolvable fertilizer balls into the water periodically. Hopefully this will ease everyone's stress. We intend to add lots of these kinds of plumbing devices over time. Each device will do one thing. There will be different versions of each device. For instance this nutrient injector is quite small but perfect for small aquariums. Larger aquariums might require adding more than one in order to add enough nutrients to the water. This is of course fine but it would also make sense to make larger nutrient injectors that can add much more nutrients into the water so things are less tedious.
Power generator:
Heater:
Filter:
We also added the first versions of particle effects and animations to the existing plumbing objects. These will also improve over time, they will get dirty and show signs of wear over time. We really want the plumbing system to feel like a mechanical digestive system. Lots of different devices doing different things but working together to support the ecosystem above it.
Fish selection UI:
Now that we are not focusing 100% of plumbing we really want to knock a few things off the to-do list. This brings us to the UI. There is still a lot of confusion as to why a plant or fish might die. This is because the needs of these organisms are not properly communicated to players via UI. Hopefully this first set of ui changes help.
Water chemistry UI:
Plant item, shop UI:
These UIs have gone through many iterations in six months but each change gets us closer to what works well and helps us make better choices when programming the internals of the simulation. Quite often if the data is too complicated to display to players in a coherent manner then the system is probably overly complicated or missing something important. As time goes on we change it over and over and eventually end up with something that with hindsight is totally simple and obvious but we are not there yet.
We also spent more time finding and fixing bugs. We found a few rather ugly bugs at the beginning of the week and patched them out of the game.
Next week is going to be very interesting. We have another long list of things that we hope to get into the game so stay tuned.
The Fishery Team
Bug Fix Patch #2
Hello everyone,
We found a few serious bugs and some not so serious bugs. We have just uploaded an bugfix update. Here is a quick run-down of what we fixed.
- Game hanging/crashing at the "recreating world" section of the loading screen. We thought perhaps this was due to something in a saved game file that the load system did not like. But after closer investigation it seems it was due to some pieces of game code being executed after it was supposed to. What made it tricky to track down was that it did not always cause a problem.
- Switching to plumbing mode puts all the objects inside the aquarium to sleep. Switching back wakes them up. Sometimes physics objects that are sitting on the substrate do not calculate their collisions accurately when they are woken up. This causes them to fall through the aquarium and keep falling into infinity. This will cause major problems. A simple fix that has been put into place. Detect if these objects is below the aquarium. If so, it is teleported to a position above the aquarium and dropped back into the water.
- deleting a saved game via the aquarium file browser crashes when there was only one file left.
- resource containers for CO2, oxygen, nutrients etc were not refreshed when a new game file was loaded or created from scratch. The values were kept from the previously loaded aquarium.
We have also been able to tweak a few UIs and add a nutrient injector into the plumbing system. These are included in this patch too but full details about them will be talked about in this coming Friday's update post.
The Fishery Team
development update #26
Hello everyone,
We are almost ready with the plumbing update. As usual before a big update we are paranoia testing everything over and over and over and over. It will most likely be uploaded sometime on Saturday. This post will be a little shorter than usual only because I need get back to testing and tweaking of the latest build.
There are still quite a few imperfections and rough edges that we are going to iron out very soon but if we don't upload a new build today then we will get stuck in the cycle of endless changes with no new build for people to play.
We made the first versions of some plumbing devices. We could not fit in all the devices we wanted in this update but they will be added very soon.
Filter: Heater: Power Generator:
We have not been able to add all the nice animations and special effects to these items yet. Time has kicked our butts on this update, We still have lots to do for plumbing mode and the rest of the game. There are a lot of loose ends we need to tie up and there is so much good feedback and suggestions from you all that we feel it will be a good idea to just improve the game as it currently is for a while. This means generally making sure things just work properly. It also means adding more art content such as fish, plants, decorations, backgrounds, substrates and plumbing devices. We also need to make lots of improvements to the user interfaces by showing better data to players so there is less confusion.
The help system needs improvements, the fish ai needs more behaviours as well and improvements to existing behaviours. Improvements are needed everywhere. Fortunately we have lots of forum posts and comments from players directing us to what needs improving. We are going to work on that for a while and make the game better in all aspects before we get bogged down again with large new features. The to-do list is a little too long and we have to complete a large chunk of these tasks before we move onto larger things.