welcome guest
login or register

Ancient Savo meditations

After 2.5 years of active development, a public beta version of Ancient Savo was released on 6th of June - the day before yesterday. And before that it was another few years of a preliminary stage, preparations, planning and learning. So, all together it has been a long process, with multiple layers. Instead of trying to write the whole story in a chronological order, I'll take a thematic approach;

Indie game design and development

I think I've said this a few times before, but here goes again. Already in my teenage years when I learnt to code, I found that for me the best approach to building a project is something like this: First find the bare minimum essentials of the game idea and implement that. Once you have a minimal game you can interact with, then keep on adding features. Or, in other words - when you start, don't bother too much with designing every aspect of the game idea, don't start from a corner of a big jigsaw puzzle, but start from the essential core. The basic game idea of Ancient Savo is a resource management game where you try to keep our family alive by living off the land. And the basic UI idea is that the game will work on clicking on a map, planning tasks, and having a queue of planned tasks. So, that is what I started with - by having a map which you can click to plan a task for that map tile, and then coding the tasks which affect the map in a way or another.

I always thought to keep Ancient Savo a rather simple game, not growing it into another everlasting mega project like UnReal World. After all, for me one of the central purposes of making Ancient Savo is to re-arrange my own work and income so that in the future I could more consistently contribute to UrW development. "Keep it simple" I said to myself, "just a fun little game where you can watch your kids grow up, you can send your adult offspring to start homesteads of their own, and you can continue playing as another family of your clan". And as I kept on developing that little game (having little or no idea if is ever going to feel fun for anyone to play, I eventually got to the point where the map, the task, the weather, the agriculture, and all the other basic elements start to have their final shape. And as I got to implement the actual game mechanics and UI for sending your adult offspring to start a new homestead, I slowly started realizing that this will lead to increasingly complex social interactions.

First, I wish there to be at least minimal AI to run the other clan families while the player is actively playing as one family. So that when the player pays a visit to another family the local map would reflect the developments which have been taking place - which new areas they have been cutting down for slash-and-burn agriculture, have they built new buildings and so on. And, since the UI allows visiting other families, the AI running those other families should be able to initiate a visit too. For example, imagine one of your clan families got their entire harvest ruined - in that case I'd assume them to pay a visit to all the other clan families, asking if anyone has extra crops to share. And for some reason this kind of AI was not fully included in my initial plans, in the early stage when I was estimating what kind of elements the game will have and what not.

No combat elements - that has remained so. But on many other areas I've seen the idea evolve and grow as if it was an living organism of its own. For example, I remember at some earlier stage a friend asking if there is going to be some random encounters with NPCs, possibly with story-like textual elements. At that stage I said "no, that is not planned." Little did I know =) For basics of such interactions are now already implemented, and I've been working on a piece of code which could dynamically generate text for stories. And I find that kind of story generator a very inspiring thing to design and to code. Another example; old class-mate from elementary school years asked if there is going to be a skill system, so that your family could specialize on some field, and gain reputation in the eyes of NPCs. "Keep it simple" I said to myself, and "Unfortunately, that is not planned" I replied to the class-mate. Then I was reading Steam forums, a discussion about what are the aspects of family life the players are looking forward to. Someone mentioned they'd wish to play a game where the character skills could be passed down to the next generation. After five seconds of careful consideration I decided "OK, we will have that, for I can see how that could add a sense of content to the game". And from that there is only one more step to giving a little bit more AI to the NPCs at the marketplace, so that they could greet you and have dialogue lines like "Oh, you are the Huttunen family, did you bring some of your well-known clay pottery !" and so on, the dialogue options dynamically generated based on what the NPCs know about player family skills.

Hehe, and anyone who has been following UnReal World development can probably see that my design philosophy matches pretty well with Sami's way of developing an indie game project. And as I started Ancient Savo, one of my own ideas was to have a separate sand-box environment to freely test with various kind of game mechanics and algorithms, so that once some of those elements are matured and proven to work, they could be adapted to UnReal World, in a way or another. But in the beginning that felt like a vague idea, an open possibility. As I have been following the path of "start with the minimal core, keep on adding feature to that core" it feels that I've been finding fruitful ideas and insights, having a great opportunity to develop algorithms I find inspiring. So, let's see how the story continues, where the path will take next.

Stamina

I feel that the above mentioned "bare minimum essential core of the game" is not just a plan on a paper, and more than the initial game project which you can interact with. It is also a mental image, a partially subconscious insight or a symbol-like token. For me this is a little hard to verbalize, for these are not visual images for me, but more like spatial or tactile impressions; maybe a bit like a painter can have a mental idea of how the painting is going to look, or a musician can have auditory ideas of how a new song is going to be - I have something like a bodily sensation of how different (abstract and concrete) aspects of the game idea are related to each other. The more clear that intuitively felt idea, the easier it is to maintain a coherent process of development. And I think it also contributes to maintaining stamina; having a sense of what and why am I doing, also on those days, weeks or months when it feels like a long road with no end in sight. Or when there are bursts of new ideas knock knock knocking on the doors of your consciousness, speaking with their persuasive voices "I'm a shiny new great idea, consider this!", and in such moments it is necessary to have an intuitive sense of "okay, but the current project has higher priority, this is a solid idea which I'm not going to abandon because of the seiren songs of new ideas".

Although, again it must be said that after 2.5 years of constant development I'm still unsure if Ancient Savo is going to a fun game to play, if there is an audience for such a game, and if the audience will be able to find the game. But I don't bother too much with those questions, for they could easily grow to be a paralyzing fear. And that is something I've already had enough in my life, so now I feel just genuinely happy when there is this sense of stamina, the joy and inspiration to keep a project alive. If the game is never going to find any substantial audience, then at least I've learnt a lot in the process, and can find new ways to utilize what I've learnt. Or maybe the entire mankind will be destroyed in a nuclear war before I get to publish Ancient Savo. Everything is possible, nothing can be known for sure. So instead of worrying about all the possible future scenarios I just focus on the project, the moment at the hand.

This reminds me of an old blog post by Anna-Kristina, the singer of Zepparella. I think that blog is no more on-line, but I remember her writing about practicing, and the initial sense of slight frustration when one day practicing she felt some things being very difficult which felt easier yesterday. And then the realization that it doesn't work like that - each and every day you have to begin from where you are that day - not from where you were yesterday, not from where you wish you'd be, but just being honest and accepting the shape, situation and condition you are on that very moment. For me this feels like a metaphor on how plants grow; suppose your idea / skill / project is in a sapling stage - you can have just that many mental images of how you'd wish the plant grow and what kind of harvest it will procude; but to make that happen, you have to be true to what the sapling is today, does it need more sunlight or is it too soaked in the water. For example, the pumpkin plant - once they grow bigger they need a lot of water, and if it is sunny it might be necessary to give a few bucketfuls of water for a plant each day - but when they are still just sprouting the don't like the soil being soaked wet. And growth is not linear - you need to have an inner sense of what is there, what is the invisible beat of the life, and then feed and nurture that, always starting from where you are on that day, not where you were yesterday or where you'd wish yourself to be. Be what you are, explore your possibilities, expand your capabilities from there, from roots up.

Those who have been following my blog for a longer time might remember how there was a time when a flat tire on a hand cart felt like a too big challenge for me, like a mountain to climb, like something which vastly exceeds my capability to tackle. And at those times I could just use the hand cart with flat tires; it was unpractical and heavy work, yet I felt that easier than having to go through the process of fixing or replacing the tires. And this has been one of the main themes in my own process of slowly recovering from chronic depression and post-traumatic freeze. An inner sense of being capable and having enough energy to do something. And the way I feel, these are not things you could just simply decide on the rational level of your mind - sometimes it feels like the rational mind can plan where to drive with a car, but all those plains are in vain if the car is out of fuel. So, in that situation it won't help making new plans, but first one would need to find a way to refill the energy reserves. And for me it has been a slow process with parallel elements; both learning to allow myself to rest properly, and then just doing inspiring things sometimes even when I feel uninspired but just placing my trust in that maybe I will feel energized afterwards. And at least in my own process the rational mind has very little do with the inner sense of stamina. So I've been looking for the ways to negotiate with the deeper pre-rational and sub-conscious layers of the mind. Like, my own daily meditation practice, counseling like shamanic and depth hypnosis journeys guided by Clementine. So, to my delight it feels that something has indeed changed deep down in my mind. With Ancient Savo development I've had a constant feeling of "this is almost ready, just a little bit of few more additions and there we go!". Hehe, the downside of that has been constantly missing all self-set estimates of when the public beta release will be. But the good side is that the Ancient Savo project has never felt like "too much for me to handle", nor have I felt "this will take too long to realize, so it won't make sense to even start it". No, so this slightly over-optimistic sense of "a small little project, quick to code, I can do it" has made it easier to just focus on each day's coding, day by day, and then just slowly realizing how big the project is going to be - but when I've realized the actual size of the project, it wasn't that bad since I already had a lot of ready stuff at that point, so abandoning the project didn't feel like an option any more.

Money

This is a topic I find slightly uneasy to discuss. But there are some thoughts I'd like to share. In the beginning of this post I mentioned that before starting Ancient Savo as my fully focused main project there was a longer slower preliminary stage. And at that stage I felt uneasy and confused about how to best fund the development. Long story short; eventually all of those worries settled down with a non-rational sense of "things will work out". So, instead of trying to find a solution for the funding I kind of a dissolved the problem - realizing that for all of my adult life I have anyway been living on a shoe-string budget, so the starving artist life is what I anyway have and which I've already learnt to manage, so why not just go with that and see where it takes if ditch some of my other projects and encompass indie coding as the main project to devote myself to. It has been 2.5 years, and there has not yet been a personal economical catastrophe. Sometimes it has been funds donated by Ancient Savo and Enormous Elk supporters. Sometimes it has been an unexpected odd job generating a bit of quick cash. Sometimes it has been longer periods of eating mostly self-sufficiency foods cutting down the grocery bills to minimum. Hmm - so, the way I feel, what is essential here is the emotionally felt side of the things. Sure, I know rationally speaking the development would've been faster and we'd have better graphics and rich sound effects if I had funds to pay for that kind of content. But then, if the bare minimum is to fund my own life while coding the game, there was that slight uneasy feeling of fear; what if everything fails and I'll face serious financial problems? Letting go of that fear has freed up a lot of inner energy, making things feel more manageable, and so I've been finding daily joy and inspiration in coding this or that little piece of algorithm. And I've felt that personally for me that has been the best and the most healthy option. (I don't remember if I have written about it before, but in my life I have a background of running various projects with external funding, so I know how to do that - but also, those years left me severely burnt-out, so even starting to think about "how to fund a project" easily triggers my emotional self preservation instincts telling me "don't go there!". For a long time I was unsure if I should just deal with those post-traumatic fear reactions and revive the project manager part of my mind. But here we need to return to the wisdom spoken by Anna Kristina; start from where you are that day, not from where you'd wish yourself to be. So I realized that reviving the project manager compartment of my brain is not the way to go now, but it would be more fruitful to just cheer and cultivate the joy of indie coding. And in so many ways I've found myself going back to the teenage thrill and inspiration of learning to code by doing, experimenting and expanding the capabilities. And who needs that much funding when there is joy =)

Hehe, sure - of course I'm perfectly well aware of who needs money. It is not me, but it is the electricity company, the bank who gave me loan to buy the house, the internet service provider, the supermarket, the flea markets, and the gas station if I wish to refill the car. They need the money, not me. So, of course despite my inner sense of "things will work out", it is always possible that my personal finance just collapses. But then I'd just take that as a new adventure "oh, this happened, so where to head next?", for who am I to plan every detail of what is to come? Sometimes sudden unexpected negative changes turn into new beginnings, sending you to find something you would've never ever found otherwise. And sometimes everything just goes bad and you fail and suffer and die. That is life, and there is no way avoiding it, so the only option is to life the live while it lasts. Every morning starting from where you are then, at that very moment.

Indie developments in the woods - growing both plant saplings, and the game project sapling
Indie developments in the woods - growing both plant saplings, and the game project sapling
tags: 
depression
diary
philosophy
programming
spirituality
up
303 users have voted.

Comments

Happy to read this post the way you wrote it. I wish you all the best on your journey. I miss the daily photo thing a little, so always nice to read a little update ;)

Cheers! I hope to resume the daily photo series again in the 2024. For me it is good to have a break, but it is also nice to hear that people enjoy following it =)

Love the straightforward everyday wisdom and perspective. Applies to anyone living a creative life.

Good to know all your progress is still taking shape, Erkka! It's all looking good, I love the simplicity but the little touches to make it alive. You guys are doing amazing, I'll be playing games like this and UrW a lot~! The plants are growing well, too. Try not to stress out too much, you're making it and people care, and that's enough love<3
Have a great and restful one, friends. The soil is always here in some way. Oh! And I finally found my leaf, for atop the head!

Pages

Add new comment

CAPTCHA
Please reply with a single word.
Fill in the blank.