1. Palm Paradise Garden
  2. News

Palm Paradise Garden News

Devlog 3: Making Progress

[h2]Changing Seasons[/h2]

Spring is in full swing here in the Northern Hemisphere, and Palm Paradise Garden is itself sprouting new shoots, with a whole host of improvements and additions to the game this month.

[h2]The Real World[/h2]

This month I finally started getting real world plant data into the game. Way back when I was coming up with the concept for Palm Paradise Garden, I bought a few packs of pre-made tree and plant models for the game, intending for these to be the basis for the plants in the game.

The last two months, my mum, who is a retired gardening teacher, has been going through these 3D models and identifying possible plants that they could represent. As well, she has been gathering some very detailed data on these plants' lifespan, flowering and size/dimension. All of which I am feeding into the game, and that data is now driving the plant lifecycles.



There is in fact more detail in the game than it is sometimes possible to find from real world plant databases - Root depth in particular seems to be something that doesn't appear on many plant databases. As well I will be tweaking some of the plant data to make the game more balanced. However it already feels satisfying to have real world plants in the game, some of which are quite famous and others obscure ones I've never even heard of!

I have also now started focusing on adjusting the plant models to look a bit more like their real world counterparts. As well, I've started to model the flowers and fruits for each plant, which are often unique and can't simply be bought using off-the-shelf assets.

The process is proving quite a lot of work, and it means there probably won't be hundreds and hundreds of plants in the final game. But there will be a very good variety of palms, as well as plants like tree ferns and cycads. The biggest challenge is now finding lots of medium and small plants to be the shrubs and ground cover to go in the shady spots beneath the bigger palms, and make the gardens in the game look more like lush jungles and less like a few big plants surrounded by bare soil.

[h2]The World Outside[/h2]

In the first devlog I talked about seasons changing in the outside world. It was a lot of fun making these small changes, so I spent some more time adding to the world beyond the greenhouse. There is now a street and back gardens beyond the walls of the grounds where the greenhouse is situated and even a tram trundling past, in keeping with the Belle Époque era setting. The game is looking much better for having those olde world lampposts and park benches and red letter boxes.





As well, I added post processing effects: A saturation filter, to make the game visuals feel more vibrant and less washed out, and bring out the varied shades of green in the tropical plants. And a bloom filter to give everything a misty-eyed, slightly dreamy quality. This also fits with the trend of the times in which the game was set of editing photographs to colourize and airbrush imperfections.

[h2]More Learnings[/h2]

I did actually make a demo for Palm Paradise Garden in time for the Steam Farming Festival, but after getting feedback from a couple of testers and a few other sources, I decided not to release it.

The biggest question on my mind for a while has been how to make the game fun. Which sounds kind of obvious for a game! But I found from the feedback I got that it's not quite so straight forward as I'd initially thought.

Essentially, what people who played the private beta version of the demo told me was that the game lacked a sense of progression. Everything worked mechanically - you could buy plants, plant them, then watch them grow and collect more "donation" money from visitors. But there were no objectives or things to aim for.

Part of this was due to the way I set up the demo. Since I've only had time to properly model a handful of plants so far, I set up the demo to have only a single medium-sized bed and a half dozen plants to go in it. This had the consequence of not only making the player have very few actually interesting decisions to make (what to buy/plant and where to plant it). But also meaning players ran out of things to do very quickly.

The game has no way to rearrange or add more beds, nor expand the greenhouse, simply because I haven't got round to coding that yet. This will partly alleviate this issue and at the same time let players feel like they can really customise the garden and make it theirs.

I also haven't implemented the growing/germinating from seeds part of the game either. This will provide some mid-term satisfaction, goals and struggles for players over simply buying in all their plants. But right now it's not there.

However, even given the above, having something to work towards is still missing. And how to solve it goes to the heart of what Palm Paradise Garden is really all about.

[h2]Many Gardens[/h2]

As it stands, the way plants work in Palm Paradise Garden is quite a hardcore simulation. I want to keep this because I think it's something relatively unusual among gardening and farming games. It doesn't infantilise gardening.

Equally, I don't want people to feel like they need to struggle through a game that can be quite difficult at times when really what they want is to just build their dream tropical garden. Indeed, it may be the same player who might be sometimes in the mood for a challenge, and other times simply wanting to relax in a virtual environment that isn't really feasible in the real world (unless you have a big garden and live in a tropical climate or are a millionaire who can build a giant greenhouse).

My plan is therefore to introduce two modes into Palm Paradise Garden:

- Relaxed mode will provide players with a space in which they can build their dream garden free from any objectives or missions. They can turn off money or time pressures, or even things like the need for watering, plant ageing and death.

- Campaign/Story mode will give players a series of different scenarios to play. They will include different greenhouse locations and setups and each will come with objectives and a story. Later scenarios will be locked until players complete the objectives of earlier scenarios.

Ideally in the campaign/story mode, I would like to also have some plants that are not yet available and which you need objectives to be completed in order to unlock. This though somewhat depends on having enough plants and not fall into the same problem as with this first iteration of the demo.

[h2]Connections[/h2]

The other major feedback point I got about the demo was that it was not just the lack of a longer term objective that was making players feel like they weren't progressing. It was also that they didn't understand how their actions were affecting the game.

As already mentioned, each plant has a host of statistics and data relating to it, and this can be really overwhelming, especially when trying to decide what to plant and then where to plant it. It's actually a common problem for games and apps, and the solution is two fold: Only display information that is relevant to what the player is doing or deciding at that moment. And having multiple layers of depth to the information. I won't be getting rid of any variables or stats, but I will be placing a lot more of that information behind a "more details" button.

Once players have made a decision of what to plant and where, they then need feedback on whether they made a good decision or not (so they can correct it and/or learn for next time). This connection between action and outcome is very weak at the game right now. Plants take some time to grow or to become poorly and eventually die. Meanwhile it is not clear at all how the plants in the greenhouse affect the income the player receives from visitor donations.

Part of the solution is in giving many small indicators. For example, a simple floating "+1 Beauty" appearing when a flower blossoms, and a corresponding flashing of a Beauty count in another part of the UI.

The other part is to connect the feedback to the in-game characters. In games like Rollercoaster Tycoon, this is done by having NPC characters wander around the theme park and go on rides or react with sounds and animations. You can tell how good your rollercoaster is by how many people are stood in the queue, and you can hear them grumble and look in disgust when they see overflowing trash cans as they walk between rides.



I will have a similar system for Palm Paradise Garden, in which you can see the visitors to the garden/greenhouse walking around and looking at the plants, making idle comments and adding in the ability to "talk" to those characters to get a sense of their mood and impressions.

[h2]What's Next[/h2]

Even though I'm not releasing it yet, there were some real positives that came out of making and then testing the demo. I fixed a lot of bugs, and that hard work really showed by the relatively small number of bugs then found by testers. The tutorial system which I wrote about previously also proved technically robust and good at teaching players the game.

I want to now improve the demo based on all the feedback, with the Steam NextFest in the 2nd week of June being the new target for releasing that. That demo version 2 won't have anywhere near all the things I've mentioned in this blog, especially when it comes to the different modes and number of plants. What I hope to achieve instead is more to tighten up the game and fix the user-experience issues. And to make enough of the campaign/story to give a feeling of progress, even if that progress is then only so far as the demo allows.

As always, if you have any questions or thoughts, please do say in the comments below!

Devlog 2: Learning Experience

[h2]Learning To Garden[/h2]

Palm Paradise Garden is relatively sophisticated and realistic in its simulation of gardening. Given that, ensuring players learn the game in a way that's both fun and fits their natural learning style has been a big recent focus of development.

[h2]Do It Yourself[/h2]

I personally am the sort of player who loves to jump in and experiment - learn by trial and error. In an ideal world, a game uses familiar cues from the real world, while giving enough feedback to what you're doing, that it's possible to learn by just trying stuff out and seeing what happens.



I've added in a lot of subtle features to the game, especially around planting, in order to give as many hints to the player as possible. Selected plants are now highlighted, the UI indicators for what location a plant prefers have both percentage numbers and human readable labels, and light up in red when there's a problem.

[h2]Characters and Personalities[/h2]

However, sometimes it's nice to have someone explain something to you. I've added in characters who are the knowledgeable about the different aspects of the game, such Harold the plant shop owner, and Lilly the expert on plant watering. Their help buttons are now always visible in the UIs relating to their respective areas, ready to give tips and hints.



Even though the plants are the real starts of the show in Palm Paradise Garden, I wanted to add more human faces to make the game more approachable and less abstract. I'm glad I've been able to use them for teaching the game, rather than just as decoration.

[h2]Jumping Through Hoops[/h2]

In some cases, people need a bit of guidance, especially in a game like Palm Paradise Garden where there's not always an explicit objective. So I have also implemented a jump-through-hoops style tutorial. My aim here is to not just hold players' hands, but explain why the things they're being asked to do are important.



This guided tutorial is still something I'm in the process of making, but progress has been slow owing to the fact I've up to now still been using placeholder plants and data to make and test the game.

[h2]A Real Jungle[/h2]

My Mum is a former gardening teacher and part of the inspiration for Palm Paradise Gardens came from visiting many botanical gardens with her when I was growing up.

She is helping me identify the real world plants to go in the game and finding all the data on their size and shape, lifespans, flowering and different needs. Thanks to her hard work, I now have data for the game's first 15 plants. I will be adding that data into the game, filling in any gaps and tweaking it to make the game fun and balanced over the next couple of weeks. This will help immensely with finishing the tutorial and making all the other fine tunings to the game going forward.

[h2]What's Next[/h2]

I had hoped to get a demo of Palm Paradise Garden made by the end of March, but work on another project of mine too more time than anticipated. The new deadline for the demo is now April 29th, though I aim to have the demo released a few days before just in case. This will be just in time for the Steam Farming Festival - Apparently gardening games are a sub-category of Farming in the world of video games? Who'd have thought? In any case, it will be a good opportunity to promote the game and get it into people's hands, so I can start getting feedback and you call start having fun making your own palmhouse gardens!

In the meantime, I will be posting updates on social media. And as always, if you have any questions or thoughts, please do say in the comments below!

Devlog 1: Circle of Life

[h2]A New Beginning[/h2]

This devlog is the first in a monthly series to keep you up to date with progress on the game prior to release. Since the game was announced, I've finished implementing the core game loop. Plants now have a lifecycle: they grow, flower and die of old age or neglect. To support this, I implemented seasons and watering.

[h2]Seasons Change[/h2]

Before programming the plants' lifecycle system, I first needed to implement in-game time. In the plant world, that meant creating a seasonal cycle. Not all parts of the world have the same seasons, and being in northern or southern hemispheres makes a massive difference too.



To solve this, I decided to display seasons to the player as a North Europe four season cycle (i.e. Spring, Summer, Autumn, Winter). I made the areas outside the greenhouse be more than just scenery, by having them change to reflect the current season. However, inside the climate controlled greenhouse, the plants react only to the changing of the length of the day throughout the year. In this way, plants still react realistically to seasons, while the player has an easy visual way to tell what season it currently is.

[h2]Flower Power[/h2]

To test the seasons worked as expected, I next implemented flowering. Plants know the current time of year and what time they should be producing flowers, so it was easy to simply make flowers appear on each plant at the correct times.

I also linked flowering to plant happiness. The happier a plant is, the more flowers it produces.

Happiness in turn comes from if the plant is in a suitable location - Does it have the right amount of sunlight/shade, right soil conditions, enough space for its roots and branches to spread out? And as well, does it have enough water.

This is actually one of the most complex parts of the game, both for players and for me as the developer to code. There are a lot of factors in the background that go into producing a single "happiness score", and it will be one of the main focuses for the next round of testing and feedback.

[h2]Growing Strong[/h2]

Happiness is also linked to plant growth. All plants have a level of maturity, from a tiny sprout, and then a sapling, all the way up to being fully grown. If a plant is not happy, it will take longer to reach its fully grown size.



Whilst in the real world, this is only true for some plants, I decided for now it's too complex to try and simulate how some plants just keep on growing without ever stopping.

[h2]Getting Wet[/h2]

Plants need watering, but they also have preferences for how wet or dry the soil in which they are planted is. Some like swampy waterlogged soil, and others prefer free-draining or dryer soil conditions.

This was relatively easy to code, but the big challenge here was how to visualise water uptake by plants and water levels in the soil. Not only for the sake of the plants, but also to allow players to see where they've watered and where they haven't!

I settled on changing the colour of the underlying soil based on wetness. There is a long, highly technical story about how I did this (writing custom shaders... shudders...) but I'm really pleased with the result. It's really satisfying in-game to wave the watering can around and make the soil wet again. The only problem I have is that the colour differences in the soil can be really subtle at times. A bit too subtle, to the point where often I can't tell where a plant has been sucking up not enough water. Nor which shades of brown equal what exact water saturation levels.



For the next update, to fix this, I will probably add some extra indicators to each plant to show how much water it needs when players are watering. As well I want to add some cool water-spray particles to give that extra sense of really watering the soil.

[h2]To The End[/h2]

I also implemented plant death. This can come from inevitable old age. But it can also come from plants being either poorly located, and/or neglected. Once again, I linked neglect to plant happiness. I gave each plant an "Adaptability" score for how well it can handle things being not quite right. Some plants may be able to deal better, for example, with not having enough sunlight, whilst others may be particularly sensitive to lack of water. And so on.

If any of the problems a plant has are bad enough that they exceed the plant's Adaptability, then the plant's unhappiness starts to degrade plant health. Health is designed to fall slowly over time, so players still have a chance to intervene and rescue a plant (e.g. by moving it or watering it, depending on the cause of unhappiness). But if plant health falls too low, the plant dies.



This is another area I will be looking to try and balance in the coming weeks. I want the game to be realistic enough that bad decisions have consequences. But not so harsh that the player is running around constantly moving and watering plants just to try and keep everything from not dying.

As well, I am considering if the game needs different difficulty settings. I am currently leaning towards having "realistic hard" mode, an easy and forgiving "relaxed" mode, and something in-between the two as the default setting.

[h2]Pop Up Plants[/h2]

One thing I'm not so satisfied with is how flowers, and especially plants grow. Currently each plant has a set of 3D models representing different growth periods, and when the time comes to go from one to the other, one model simply pops out of existence and the next one appears. This doesn't look great and is something I plan to experiment with in the coming weeks.

As well, in the next couple of weeks, I will start the process of adding in more plants to the game, with their stats based on their real life counterparts. This will be tricky as I will have to balance accuracy / closeness to reality with finding a set of plants that compliment and contrast with each other from a gameplay / fun perspective. And at the same time I need to make sure I don't create too much work for myself to make or source all the 3D models needed not only for the plants themselves, but also their juvenile versions plus their flowers and fruits. Not to mention models for any dead plants (currently they just go brown upon death).

[h2]What's Next[/h2]

More generally, I will be working towards polishing the game, both visually and in terms of user experience, over the next month or so. My aim is to have a demo ready for release by the start of April, which will help with both testing the game and promoting it.

And as always, if you have any questions or thoughts, please do say in the comments below!