project-image

Cloudscape

Created by Konitama

An action-adventure farm-life survival game for PC and console, launching the 22nd of June! Regrow not just your farm - but the world.

Latest Updates from Our Project:

New Development Update: Adding a new island, shopping, villagers, animals and more!
over 2 years ago – Fri, Jul 01, 2022 at 08:41:03 PM

Hey everyone! Thanks for the patience with these sporadic updates. As development progresses I find myself drifting farther away from frequent post-writing and focusing more on the development of the game itself. With that said, expect fewer update posts for the duration of the game's development. And by that I mean just on the written updates - actual progress and updates on the game itself are going faster than ever! I still plan to update everyone on the progress, however I won't be adhering to a monthly update schedule or anything of that nature, as it's adding a bit more stress and time away from development than I prefer. 

The reality is, that as I get further into developing the game, a substantial amount of work is done on the day-by-day implementation and design of really complicated systems - and most of that boils down to putting down lines of code, concepting data structures, etc., and it's really hard to make a public update focusing on those. Not very thrilling stuff to see. However, when all of that comes together for a system - like the scheduling and pathfinding systems detailed below, it's easy to show that working visually! Hence, update posts will become a bit less regular as I finish building out the game's most complex systems, but once these are done I'll be able to give everybody a sneak peek at them.


With that out of the way, lets get into what I've been working on, as I'm excited to share with you!


Wimnim Island

Work has started on putting together the first fully hand-crafted island the player will get to visit in the game. Wimnim is a tropical island with a year round temperate climate, meaning it doesn't really experience cold winters or harsh summers. The island is inhabited by plant-like people with pointy ears.  As of writing this, there are currently 18 villagers inhabiting the island. These villagers will all have homes on the island and many of them run businesses as well.

The island is host to a General Store, Museum, Ranch, Farm, Carpenter's Hut and more.

Visiting this island will give players their first chance of interacting with other (living) characters in the game, along with the ability to buy and sell all sorts of items at the various shops.

A rough mockup of Wimnim Island

First Step

The first goal I needed to tackle was to get players from the starting island over to Wimnim Island. I had already created a Dock and Raft for this purpose, but for most of the game's development, the Raft didn't do anything. Now the Raft has the option to use it for traveling off of the island! For now, the traveling is instant between the two islands, however I plan to add a map which will appear when accessing the Raft, so that the player can choose what destination they would like to travel to. But for testing purposes, just going back and forth between the two islands works for now.


Another obvious step was for me to actually generate the island and start designing the areas. I've laid out the general shape of the island and the areas to be found on it, however much work will be needed to refine this and add in all of the details, buildings and more.


General Store

For now I wanted to at least add one important building, and that's the General Store. So I went about creating a larger building asset along with some new artwork for it. I needed to set up buildings in the game, so now buildings will load in properly and the player can enter and exit the buildings. Upon entering, the exterior will fade away seamlessly.

The next important feature to add was to include a new character to interact with, and also set up the shop system.

It made the most sense to just... make the new character the shop keeper, so that's what I did. The shop keeper of the General Store is named Cheri Frut and her shop is simply called "Frut's".

At Frut's, you can purchase a lot of general goods, including Seeds, Grass Plugs, Sod, a variety of resources and also some Tropical clothing and decorations.

The shop system is still a heavy WIP, but I've managed to get buying/selling items working nicely. The plan is to also add a portrait/dialogue of the shop keeper at the top of the screen. There they can talk with you while you shop. They might mention new items added, sales, or just help you with your shopping process.

One feature that hasn't been added is the ability to check a "sold" tab to see what items you recently sold to the shop, with the option to buy those items back. Just in case you accidentally sell something you didn't intend to.


Schedules and Routes

In order for Cheri to run her General store, she needs to actually get to and from work! So the next rather complicated step was to create schedules for villagers to adhere to, along with creating some type of pathfinding so that villagers could go from one location to another properly.

After quite a lot of fiddling around, I settled on having villagers use a node based path system to navigate their islands. This allows me to designate waypoints so the villagers know *exactly* where to position themselves. By setting up all of these waypoints, the villager can navigate along them to find the shortest path to their destination, while avoiding any sort of obstacles.

A Debug display of the node points and their connections

Then it's just a matter of setting up their schedules. I've created events which can be triggered through a lot of different conditions. Time of day, weather, season, special festivities, and more. It will even prioritize events which happen on specific days instead of more generic days. For example, if a villager usually walks to a certain location on Mondays, I could have an event set up that specifically triggers on the second Monday in the month. That event will override the normal Mondays event.

With all that said, what this does is it gives me a lot of flexibility in setting up villagers so that they have more dynamic activity in the world. Instead of always sticking to a very strict routine, villagers can diverge if certain conditions are met.


Here's an example of Cheri navigating to work along the node paths (village area is unfinished and node paths are only being displayed for debugging purposes)

 Animals and Global Pathfinding

After doing all of this I decided to switch things up and work on getting animals properly implemented into the game. My goal is to hopefully set up the Ranch on Wimnim Island where you'll be able to purchase animals to place on your own island. With the shop system, villager routine and path system, and animal behavior system in place, it will be fairly easy to implement this. So my next goal was to get animals properly moving around on your island.


A tricky aspect to this, which people might not be aware of, is that the island loads objects in chunks based on the player's location on the island. This is to help with performance and memory issues. I wouldn't want to load in thousands of objects all at once, or it would cause the game to be very slow. So early in the game's development I made the decision to use a chunk system to handle this. While that works great and is very stable at this point, it causes a HUGE issue with creating pathfinding around the island.

The issues is that I have all animals loaded into the island at the same time, but not all animals are within the range of the player. You may have animals at the north most part of your island, while you are chilling at the south most part of your island. This means they are up there with no chunks loaded in. That's not great, because without chunks, there's no objects, and without objects, the animals don't know how to navigate around them. What could happen is you'd walk to the north of your island, objects would load in, and the animal would get stuck on top of them.

To solve this headache, I needed to essentially create a 2D array which will store the information of every single block on the island, without needing to actually have the terrain or objects physically present in the scene. This involved using terrain data and chunk data to create a "map" of walkable spaces.


The end result looks like this:

A heat map representing walkable spaces (red = solid objects, white = walkable, gray = avoid if possible)

This is basically what animals and monsters will "see" when deciding where to move. They can see this map regardless of whether the map or objects are physically loaded into the game. This means they can always properly navigate the world... even if it isn't there.

The next step was to actually create a pathfinding algorithm to do this. This was probably the easiest part of the whole process. I just used a pretty standard A* pathfinding algorithm and tweaked it to fit the game rules. Here's how that looks in action:

In this video example, I've set the starting location to the player's location, and the target location to the mouse cursor. When I click the mouse, it updates the path to show the shortest path to the target location. This is represented by the blue squares that appear. These are the destination points that animals/monsters will navigate to. The algorithm is set up to try and avoid walking right up against terrain like cliffs. This provides a more natural looking movement. Otherwise animals might hug the cliff walls to navigate and that would look odd.


With pathfinding out of the way, I went about actually adding animals into the game. Here's the current state of animals:

So far I've added Chicks into the game. These currently perform proper movement and animations, along with respecting the physics of the world. The player can push animals around (easier or harder depending on their size) and will soon be able to interact with them (petting them, picking them up, etc)

As of now, the animals don't use the pathfinding system and instead use a very crude random directional movement to just move around randomly. That's actually the next thing on my list to do!


Once I've got the Chicks using the new pathfinding system, I'll be implementing more interactions and finally getting the shop set up so you can purchase these Chicks and place them on your island to take care of.


Player Journal

Finally I wanted to note I've done a lot of work on the player's Journal which is an interface that lets you see all sorts of information on various things in the game. You can check your Personal Info which will display all of your own stats along with your current appearance and whatever buffs/debuffs you currently have, and how they affect you. You can check the Calendar which tracks all of the game's special events, villager birthdays and more. You can check the Social page which lists all of the villagers, along with details and affection levels.

Current state of the Personal Info, Calendar and Social pages

There are also pages for Animals, all of your Buildings, Collections of items, all of your Shipments and also your Mail. Those are all still early WIP so I'll have to show them later. :)


Other Stuff

Along the development process I also typically go back and play the game from the beginning and just find things I didn't finish developing, or check for bugs or issues with balance. I've made a TON of changes to things I haven't mentioned. Things like tweaking Kumo's walk cycle, adding new uses for the Campfire, updating and adding new Tasks, fixing various tools including the Water Pump, fixed a bug with Harvesting and picking up items, and disabling a lot of unneeded features while in Limbo. I wish I could talk more about all the little stuff I've added and/or changed, but I think it's best to just focus on development and let the final game speak for itself. :)


That's all for this update. Thank you everyone for your continued support. Not sure when the next update will be, but you can always check out the Twitter page or visit the Discord to find small updates or chat with me directly about the game's development.


- Koni

Adding your custom Spirits into Limbo - come and see your spirits! Plus new Dev Log is live!
almost 3 years ago – Wed, Apr 06, 2022 at 09:28:53 PM

New Dev Log!

The next Dev Log video is now up on YouTube! This video goes a bit more in depth on the new dungeon stuff that has been implemented, along with some other smaller updates.

 Technical Improvements

The month of March really flew by, and while a lot of progress was made to the game, there isn't much of it that I can actually show off for one reason or another. I can say that quite a bit of time was spent on improving the architecture of the game itself, and finding ways to better improve and optimize all of the underlying systems.

I can list off a few of these major changes for those interested in the technical bits:

  •  Reduced camera jitter while moving around, caused by where the camera position was updating in code
  •  Optimized some of the Update methods to be more performant
  • Updated all item data to use Addressables instead of Resources.Load
  • Created a custom static method which can automatically load sprites via Addressables to replace      the not memory friendly Resources.Load. Character sprite sheets now use this method, and eventually all sprites that need to load in will use this method as well
  •  Fixed some glitches with a handful of animations that were causing small but noticeable flickering in a couple animations

Just as a note about the Addressables thing.. the way I was originally loading in lots of the assets for the game was through Resources.Load… which after learning more about Unity, I've found that this is not a great way of loading resources. It makes them harder to manage and it inflates the file size of the game itself. 

In fact, before making some of the above changes, the total file size for the game was over 2GB! This was clearly way too high. I've since reduce this down to 800MB which is a drastic improvement, and I will continue to find ways to reduce the file size down to a reasonable level by release time.


Water Fun

As for some more visual things I've been working on, I finally got around to figuring out water shaders for a top down environment. As of now, I've only added in reflections, but I think they turned out really well. Still to add will be some distortion in the water. I've also added ripples when items are dropped in the water.


Quality of Life Updates

For some quality of life improvements, I've added some small but impactful changes:

  • Camera zooming and mini-map zooming is now inverted from what it initially was, to better fit what      most people are used to
  • The next task in the player's task list will now auto-pin after completing the previous task. A toggle      in game settings will be added to disable this feature
  • When completing a pinned crafting recipe, it will automatically unpin the recipe. Again, this will be a toggle in the game settings.
  • Picked up items now initially attempt to move to the tool bar instead of the backpack. Again another      toggle setting to choose if you prefer sending to toolbar or backpack first.
  • Toolbar item info layout is now the same as inventory item info layout for better clarity
  • Several tasks have been adjusted or removed to better accommodate early game play
  • Crops at seed stage will no longer turn into dead plants when the season changes, and will instead      remain seeds

Energy Orbs

Another quality of life feature I've been experimenting with is Energy orbs. Testers have initially been struggling to maintain decent energy levels in early playthroughs of the game. To combat this, I'm going to experiment with adding these Energy orbs into the game. Basically, when you defeat monsters, they will occasionally drop an Energy orb which when touched, will replenish 10 Energy. 

These orbs will only exist for a short period of time before vanishing, so it's best to collect them as soon as you can. The hope is that this will provide a much needed boost of energy when other energy restoration methods aren't available to the player. Balancing energy is one of the most critical aspects of the game and I'll continue tweaking things until everything feels right.


Your Spirits!

Finally, I've spent the last couple of days implementing custom Spirits into Limbo! I'm happy to report that every single backer who backed a tier that included a custom Spirit, and who have submitted their Spirit info, has had their Spirit added into the game! 

Over 125 Spirits have been added! Another fun thing to note, is that I went ahead and made portraits for all of the Spirits, which can be seen when you interact and chat with them! When the game releases, you'll find these little Spirits roaming around Limbo at random, which should really liven up the place!

And a shoutout!

As we're all Zelda fans, there's a project that just has to be shouted out this month - it's Toasty: Ashes of Dusk! Toasty is a charming, heartfelt tribute to A Link To The Past, mashed up with Earthbound/Mother, and with the humor of Monty Python. They're currently running a Kickstarter, and it's well worth a look. They also have a special Switch physical edition available on their campaign!

Marshall, the Marshmallow Knight - Toasty's hero!

Toasty tells the story of Marshall, the Marshmallow Knight, who quests across the world of Geldia after a great calamity befalls the land. With no history or clue about who he is, Marshall faces many tests, makes many great friends and allies, and faces the most devilish evil - all the while, trying to answer that one tricky question... why is he a talking marshmallow?

Just look at those beauties!

Click here to check out Toasty's campaign!


Wrap Up

That's all for this month. Getting super close to working more on developing a lot of new content for the game, so that should be coming soon, now that a lot of the technical stuff is out of the way. Hope to show more new art and stuff in the next update. Take care!


- Koni

February Wrap Up! New Dev Log and Dungeon Info!
almost 3 years ago – Tue, Mar 08, 2022 at 08:47:09 PM

Hey everyone! Looks like I'm a little late on this monthly update as well, but here it is!


First of all, there's a new development log video up so you can go ahead and watch it, or just keep reading and I'll go into more details on some things I've been working on.

Dev Log Summary

In this dev log I touch on adding ladders to the game, and also go into more detail on adding the new tree variation and growth stages for various mushrooms and flowers. I also briefly show a prototype of the mini-map and go over the buffs system. Oh yeah, and blowing dandelions...


Buffs/Debuffs

Buffs (or in this case, debuffs) have been added to the game. If you attempt to eat too much food in a short span of time, you will receive a "Stuffed" debuff. This debuff prevents you from eating any more food for a period of time, but also provides you with 10 reserve Energy.

Reserve Energy is also a new feature. This works just like normal Energy but is only used up after all of your normal Energy has been depleted.

I've also added the "Rested" debuff. You get this debuff after sleeping for 8 hours in a short span of time. Getting the "Rested" debuff means you won't be able to sleep again for 16 hours, but it provides you a full reserve Heart. This of course, works much like the reserve Energy in that if you run out of normal Health, you will have this remaining Heart as backup Health.

The core concept behind these debuffs is to limit how much the player eats and sleeps, but in a way that doesn't 100% punish the player and instead kind of provides some benefit. I implemented this because otherwise you could just spam-eat a lot of food to restore energy at any time, and it creates an issue where energy isn't really a problem. If you can simply full restore your energy by eating a bunch of food whenever, then there wouldn't be much point to energy and it would be more of a nuisance than a challenge.

Same goes for health. If you can just full heal by sleeping, it makes it too easy to just run away when low on damage and heal up to full whenever you want. Also because sleeping fast forwards time, I want to make sure players are limited on how much time they can skip in a short period. The goal is to just create a good balance for energy and health in the game so you as a player will feel challenged and need to plan out when you eat and sleep.


Dungeons!

Aside from that, I've been working a lot on Dungeons through most of February. Last update I showed a really early prototype of the Dungeon generator laying out various blueprints for procedural dungeons.

Now I have the dungeons loading into the game, and I've created a host of various objects to include in dungeons such as floor spikes, barricades, push and pull blocks, and movers that ride along on floor treads to create all sorts of puzzles and obstacles.

I'm going to have another Dev log out hopefully in the coming week or so, and I'll do a more in depth update on the Dungeon stuff at that time.


The hope is to get through the rest of the major dungeon features this month along with some other core features for the game... and then it's on to working on the new custom island and working more on fleshing out Limbo. Should be a lot more to talk about once I reach that point.


That's all for now! I hope everyone is doing okay with everything happening in the world. Take care!


- Koni

First update for the new year! Trees, dialogue, dungeons and more!
about 3 years ago – Fri, Feb 04, 2022 at 07:40:47 PM

Hey all! It's been a month since the last update so I'm here to fill everyone in on what's been going on with the game's development since then.


Tree Updates

In the previous update I mentioned wanting to rebuild the trees. What does that mean exactly? Well before the trees were in their own object which was sort of weird as I have a growable object which covers crops, plants, flowers, etc... so it made more sense to integrate trees into the growable system instead of having them in their own separate system.  This would allow for more consistency between trees and other plants. They would all share the same system used for growing, harvesting, wind, damage, etc.

So that's one of the first things I tackled,  and I'm happy to report that the trees have been totally integrated! I've also redesigned the Pine tree to be a bit larger with a stronger silhouette. This allows the trees to feel like they fill up more of the space, which creates a more closed in environment. Before I felt the trees were a bit undersized so I'm happy with this change. I've also added a new tree type, the Maple Tree!

I've updated both trees to have artwork for all seasons, and also have added more types of tree resources to collect. Including Maple Seed, Maple Leaf, Pine Needles and Pine Nuts! These will be used in various crafting and cooking recipes and will sometimes drop from a felled tree.


While I was tackling the trees I also set out to improve the growable objects overall. I've added proper states for when crops/plants wither and die during off seasons. You can also clear the weeds by whacking them or plucking them.

Bug Fixes and Performance Improvements

I also spent a lot of time fixing small issues, bugs, and just polishing up various small aspects of the game. I want to take just a second to mention this because I don't think many dev updates focus much on bug fixing but it's a pretty major part of the game dev process. Not only did I fix quite a lot of random bugs and issues, but I also managed to track down and fix a big memory leak issue which would have been really bad if left unchecked. Finally I fixed an issue with world generation where testers were spawning... in the ocean! Definitely happy that I fixed these two major problems as they were basically the two largest issues the game was having.

0.5GB of added memory every time the game was loading a new scene!

Dialogue Additions

Also I want to briefly touch on the work being done with the dialogue system. I've rebuilt that as well, to be a lot more manageable for me, which I covered in the previous update... however I've since added more to this, along with what I'm internally calling "Cloudlish" which is the audible language characters will make as they talk. This is currently still in early experimental stage but you can give it a listen here:

Finally I've most recently started prototyping dungeons and dungeon generation. I've created a script that will procedurally generate a dungeon layout with proper placements for locked rooms, keys, a boss room, and more. You can see some random layouts in the gif below.

Generator showing puzzle, combat, obstacle, walkthrough rooms along with locked rooms and rooms with keys

That's all for this update! There's other random things I'm sure I'm forgetting to mention but I just wanted to get everyone up to date on some of the bigger things! I apologize if it feels like I don't update here often enough. The goal is at least to get a monthly update out, so I might be a day or two late this time but I'll try to stick with that schedule as close as I can. If you want more frequent smaller updates, be sure to join the discord and follow me on twitter as I generally chat with everyone daily in the discord server and try to make more frequent small updates to twitter!


Discord - Join the Cloudscape Discord!

Twitter - Follow Cloudscape on Twitter!


Also as a final little note, I've had a few requests from backers to update their shipping addresses for their rewards. Just to let everyone know, you can update your shipping address by revisiting the same link you used to fill out the survey initially.


Thanks everyone for your support and I hope everyone is having a good start to their year!

- Koni

End of year update, looking into the next year of development
about 3 years ago – Fri, Dec 31, 2021 at 11:37:01 PM

Hello everyone! I hope you're all having a fantastic holiday season! I took a short break to visit family during the holiday and I've been preparing to start back full steam ahead into Cloudscape's development at the start of the new year.


There was an issue with the video showing up in the previous post so if you missed out on that video you can find it here:

I'm still working on the next dev log video which will focus on adding ladders, mushroom growth stages, dandelions and more. :)


Meanwhile I thought it would be fun to just go over a couple of other things I've been working on just to provide some more updates.


First off, I've completely rebuilt the dialogue/sign system as it wasn't as flexible and easy to work with as I'd have liked. There's still more work to do with it but for now it's in a much better state than the previous system! I've also began to implement the system for having characters animate while they talk out their dialogue to the player.

I've also been working hard on the level editor that I'm using to customize areas like Limbo and the other inhabited islands. I've also done quite a bit of work on laying out all of the points of interest for both Limbo and the first island you'll encounter (Wimnim Island)

Finally I've been fixing a lot of bugs and balance issues with the help of my private alpha testers. Lots of things have been fixed up, and I've mostly addressed early game energy/food issues. Here's the most recently added structure to the alpha, the Cooking Campfire!

This is a rather crude form of cooking, so making food this way works very similar to how the Furnace works. As of now you can cook Roasted Mushrooms and Roasted Salmon. Cooked food provides a much better boost of energy, and you'll want to get more energy dense foods since there's a limit to how many pieces of food you can eat in a span of time.


Speaking of testing, one of my testers came up with a good idea to allow the recipe lists for crafting to be displayed as a grid instead of a list. I've since added the option to toggle between both views so you can choose what works best for you. I would imagine new players may want to see the list to help them identify certain items easier, and more advanced players would prefer the grid view to see a larger amount of choices per page.

You can also now pin a recipe to the UI so that you can keep track of just how many ingredients you have for a recipe.


Looking ahead:

So what is the plan moving forward? Well right now I'm working to get a complete vertical slice of the game ready in a couple of months. This could possibly be used for a public demo for gaming conventions or the like. This means I'm trying to work on key features to make sure the experience is polished and complete. I'm working mostly on remaining systems, bug fixes, building out Limbo, and taking on the task of building an NPC manager that will handle placing and keeping track of all the characters in the world.

A few things I'd like to rebuild/improve on would be trees and monsters. Hopefully in the next couple of months I can get a much better system for trees so there can be a nice variety of trees, better wind reaction, better growth cycles, more tree resources and much more.

For monsters I want to completely overhaul the system and add in at least a couple more varieties/types of monsters just to mix things up for early combat testing. I'd also like to try and add a couple of different weapon types and combat skills.


BackerKit Pre-Order Store:

Just one last thing to mention, the backerkit pre-order store is still open and I plan to keep it open into the new year, so if you wanted to buy any physical or additional digital goods, you still have time to do so! Every purchase helps continue to support the game's development.

https://cloudscape.backerkit.com/hosted_preorders

Also it's possible to still update your shipping address using your backerkit link that you received via e-mail. If you haven't filled out the survey yet, I encourage you to do so! If you don't have a link to your survey, just send me a message and I can be sure to send it to you. (Note, if you only backed the lowest tier or provided money without backing a tier, you won't get a survey link and don't need to worry!)

----------------------------------------


I'm hoping to get a lot done in the coming months, and I appreciate everyone's patience and support. I know the updates are sparse but trust that I'm still working very hard on the game and that's usually what is causing delays in updates. :) That's all for this update, look forward to another dev log video coming soon and I'll make sure to get another KS update posted here some time in January! 


Happy new year!

- Koni