Designing a gardening simulation

Hi, this is my first post to this forum. I’ve started a new game project, and while I’ve got some programming and graphics creation skills, but I’m not good at game design. So that is the part where I need help most.

Since a while the idea of creating a gardening simulation has been growing in my head. I don’t know if all the farmville hype has caused this or something else, but it happened. And no, I don’t want to make another farming game. My focus is more on the aesthetics side, to design a nice garden or landcape, with plants, decorations and other elements.

At the moment I have some images and an early sketch of a simulation - the plants are growing and go through a yearly cycle, but otherwise there isn’t happening anything in the simulation yet.

It’s open source and most images at the time are borrowoed from other open source projects. Actually it started as a game map data structure design study.

Now this is a bit boring. The project needs some challenges for the player to stay interesting I assume. But what could they be?

I have a few faint ideas like:

  • Start with simple plants, gain “experience” points which allow to grow more difficult plants
  • An economic pressure to sell flowers/fruits to buy seeds for new plants
  • Bad weeds or just spreading good plants which need control by the player
  • Plant caretaking (water, fertilizer …)

Well, actually I have no real idea … so I want to ask, what would you like to see in a gardening simulation, so that it will stay intersting for a while?

Sorry for the lots of text. But now I’m Looking forward to some ideas and talk :slight_smile:

Same with Tycoon game series. They look boring on title right? I mean, managing a zoo? I just have to put animal, feed them, and sitting alongwhile harvesting money from visitors. But it’s not like that.

You can challenge player to keep/guard the garden and plants. They have predator like swarm. To fight them you need some “insect killing” methods, whatever it is. However not all insect is ebil, you need some of them to help spreading seed too. Consider also economic issue on it. That’s all what I can give for now. I’ll tell you if something pop up :slight_smile:

Thanks, these are interesting hints already! I didn’t think of useful and harmful insects so far, that’s a nice idea. I imagine that some players just want a sandbox-type garden to design, while other like some economics. It shouldn’t be too hard to have both in one game, though.

I’ve been experimenting with spreading plants a bit, but I forgot how uncontrollable exponential growth can become. There need to be constraints, at least I need some collision detection, so that plants can’t grow too close to other plants. I ended up with a huge cluster of plants and the simulation finally froze … good as test though, to see how many elements the program can handle ;D

Since you are making a game for aesthetics, and especially because you want a sandbox version, use what minecraft did best. Do not package the art in the jar. Texture packs will do more to boost fan creativity of anything short of actual modding!

I think you are right there, people like to add their own things and change the existing game elements.

The framework is prepared for loading user made tilesets, but I might need to find a convenient format for the tile sets. Well, there is code to read *.png files with tiles in a fixed raster, maybe that’s good enough already.

A really far-flung idea was to have procedurally created plants (-> http://en.wikipedia.org/wiki/L_Systems ) and let players exchange/trade their plant “construction plans”. Unfortunately my plant generator which rendered the graphics was too bad, and they didn’t look good enough.

How much of a “lifelike” simulation would you like? Should a garden stay more static, like you designed it, or should plants grow, seed offspring, and die at some point while the new plants grow again, but not quite in the places where the elder plants grew?

The latter would mean more caretaking effort from the player, and might get annyoing finally. But on the other hand it’s more dynamic and allows a “let’s see into what this start configuration will evolve” type of game.

If that’s the side which really interests you, you can easily spend a few months reading up on literature. http://algorithmicbotany.org/papers/ would be a good place to start.

You might want to consider allowing the player to create hybrid plants. “What happens when I merge this plant with that plant.” I think that would be a fun game. If you have the plant creation be more dynamic you can easily add in hybrids. Look up “Plant studio” http://www.kurtz-fernhout.com/PlantStudio/

The problem isn’t the algorithmic creation (but thanks for the link, will be interesting to read :)). To get high quality graphics I’ll need a good rendering tool installed on the client, and I think this will be overkill for such a small project. So it’s not really the path that I want go.

It will still be possible to integrate this later, since plants are just a series of bitmaps. Currently they are hand-made, but can as well be rendered by a tool.

A question that I should solve early though (at least before I create a biger number of graphics):

The simulation has a yearly cycle of seasons. I feel uncertain if I should include a winter time (white, with snow). Winter wouldn’t give the players much, and it’s fairly time consuming for me to create good winter versions of all graphics, more difficult than the autumn versions.

Personally I’d favor a transition from autumn to spring, without snow and winter. What do you think, should I include a winter season, or skip winter and go from autumn to spring directly?

If you dont want to ‘include’ winter itself, you could include it in a different way.

For example, after the transition from autumn to spring is over, many plants and/or objects around your farm got damaged and need to be repaired, indirectly forcing the player to make everything save and build up enough supplies before the winter season starts. Afterwards he’ll have to repair the damage that might have happend during winter, restock supplies etc.

Isn’t that a terrible chore for players, if it happens each year?

If the years in your game are quite short, then probably yes.

It was just an idea on the top of my head anyways :stuck_out_tongue:

I’m not sure if it’s a good idea to release something that will most likely change a lot in future, but if you want to take a look what’s currently there, you can download it here:

http://sourceforge.net/projects/freemapper/files/Gardenlife/Alpha%20v0.01/

The simulation runs very fast at the moment, because I was debugging the plant lifecycle, and needed the years to pass quickly. I’ve disabled plant spreading again for this demo release.

Also, most of the ground tiles neither have good lightness nor good shapes, they were just taken from another project to have something there at all.

You can place trees and plants by selecting them in the lists and then left-clicking the desired planting place in the map. A right-click onto a plant will remove it again. There isn’t much choice in plants and deco items at the moment, it’s just enough to allow some tests.

You can unpack the zip and double click the Gardenlife.jar to start it. or try “java -jar Gardenlife.jar” on the command line. It needs a recent Java 6 or newer to run.

Winter might be kind of cool. Just to see what the landscape looks like with snow and frozen ponds and to provide a nicer transition between years. Keep in mind that in-game seasons don’t need to have the same relative lengths as they do in any real-world climate. Spring, Summer, and Autumn could all last 1000% longer than Winter does in-game. For a sandbox mode, it might be nice to have an option to stop wild plant growth and change the season at will.

I guess I felt too lazy to do winter graphics, and sought a way around it. But you are right, winter usually has a special look and might be worth the effort. Maybe I’ll find a way to somewhat automatize the creation of winter graphics from the other versions.

Thanks for the hint that season length can differ! A short winter might add a new and refreshing view, and even give the player time to do other things (if I manage to include other ideas to keep the player busy).

Yesterdays release had a few problems, particularly I had forgotten some source files in the source archive …

The new version has only few visible changes:

  • A “cursor” on the map that shows the element to be placed.
  • Ground/soil tile proportion and size redesign. I think I want to go with a 3:1 perspective in this project.
  • Included an example map file.

http://sourceforge.net/projects/freemapper/files/Gardenlife/Alpha%20v0.02/

I’ve been working on a cycle through all four seasons. The images still need some adjustment, but the image should give an idea already.

Suggestions: Have some snap to grid function to help with placement. Putting paths in takes for ever. Make is so the mouse is centered on objects when moving them and not on the edge. It feels awkward the way it is now.

I like the concept and would love to see this move foreword.

I plan to hide the mouse cursor over the map area if there is a map cursor. I hope this will help with the mouse problem.

A “snap to grid” function will be handy, but it needs a bit more thought (raster size, isometric vs. rectangular raster … tile size and shape), so it won’t go into the next release I’m afraid.

Thanks for the suggestions and encouragement :slight_smile:

Edit: Thanks for the medal, Riven!

With mouse I mean that when you pick up an item like a tree, it snaps to the bottom left corner which feels odd. Make it snap to the center instead.

I don’t want you to take too much from it but look at how the first zoo tycoon and roller coaster tycoon did their map stuff as yours already looks very similar. I remember spending hours making the perfect looking zoo. It would always piss me off when someone would throw trash on the ground right next to a trash can.

This idea has alot of potential as people really seem to enjoy the pseudo sandbox game. Farmville, minecraft, Skyrim…etc

The objects have an anchor point, and the mouse should snap to this one. For trees it should be the bottom end of the trunk. In the version 0.03 the mouse cursor is hidden while you move an object, so it shouldn’t disturb anymore.

I’d totally make a “The Sims” clone if I had the skills and resources ;D