Tag Archives: indie game

Crea’s Vision Part 3 – Worlds

In my last two posts I have been covering our vision for Crea. The first was on Crea and the community. The second post I talked about gameplay in Crea. In this final part I will be sharing our vision for the worlds in Crea.

Worlds in Crea will be randomly generated. Worlds will be constructed out of many different “biomes,” which can be true biomes (such as a tundra) or constructed areas (such as the aforementioned casino). We want players to be able to have complete control over the world generation and are planning advanced options that will allow players to pick which biomes the world will consist of and their frequency.

World generation is just the beginning. We are working towards having Crea worlds be organic. Plants have complete freedom in how they can grow and spread. At first weather will be purely for looks, but eventually we want weather to actually affect the world – for example, a forest could get caught in a lightning storm and burn to the ground. (Dynamic weather will be a post-release feature.)

In addition to being organic, Crea worlds will be dynamic. Events will happen randomly or after certain conditions have been met. Such as new NPCs appearing, monster swarms attacking, and bosses emerging. Possible quests will come and go and can affect the world on a more permanent level.

The last thing I’ll mention is connecting worlds together. At the moment each world is self-contained. Eventually I would love to make it possible to connect worlds together making it possible for players to go between them. This could be used to make instanced dungeons or lots of small worlds that could act like zones (towns and dungeons) in standard RPGs.

I hope you enjoyed reading this series of posts. It feels good to get this all out. I should have done it sooner!

Advanced Modding Video

Before getting to the video, someone has created a page on reddit for Crea. Help us spread the word. Thanks! http://redd.it/x22mt

Moving on, this is my follow up video to the modding video I posted last week. This is some advanced modding and consequently is much more involved but don’t worry about that. We will be writing lots of documentation and tutorials which will explain everything in full detail. Enjoy!

Modding Video and Development Update

I forgot to post the modding video I put together the other day. It only covers some very simple modding but it really shows just how easy it is to mod Crea. I have another video planned that I will be putting together within the next few days (maybe even today!). This follow up video will have showcase some advanced modding.

Aside from putting together videos and keeping up with the Kickstarter campaign, I have been doing my best to keep pushing forward with development. Lately I have been implementing the real inventory system. Once I finish it and get some screenshots I will go over the details. I will say that it will be a lot less like Terraria and Minecraft and more like Torchlight.

Character Progression

Want some details on the “RPG elements” that will be included in Crea? You got it!

One of our major focuses for Crea is adding in character progression and a sense of personal attachment to characters. There are several aspects to character progression – this post is about character leveling.

Characters will have a set of the usual stats: HP, AP (Action Points), Attack, Defense, Magic Attack, Magic Defense, Agility and Dexterity.

Additionally, characters have “proficiencies.” These are skill levels in four different areas: fighting, crafting, exploring, and gathering. Each proficiency has its own experience level and experience points. So, craft items to gain proficiency in crafting. Pick mushrooms and other plants to gain proficiency in gathering, and so on.

As a proficiency levels up the character will unlock new skills. Once a skill is unlocked the character is able to allocate experience from that proficiency to their new skill. Some skills are passive, and always in effect. Subsequent levels in a skill will raise its efficacy.

As usual, all of this is going to be easily moddable. Want to add a “cooking” proficiency? New “Triple Jump” skill for the exploration proficiency? Not a problem! Are there any proficiencies you’d like to see us add to Crea?

Be sure to subscribe to the blog to get the latest updates and details on Crea!

Kickstarter Coming Soon!

We are currently crafting an awesome Kickstarter campaign, but it is missing something! Momentum. We need to build some juicy momentum over the next week in order to launch with a BANG. This is where you come in.

First of all, go to kick.siegegames.com and sign up to receive word the moment our Kickstarter launches. Once you have signed up you can share your referral link with your friends. The more you share the more we’ll reciprocate the love.

Several updates will be coming over the next week as we prepare for our launch and even more once we launch. Exciting times are ahead!

Plants Update

I wrote this last week put forgot to post it.

Got a large update today. The last week I have been in the zone and have gotten a great deal done. First off, we reworked our website a little. In my last update I said I was working on implementing plants. At that point I was still in the designing phase for them. Since then I have finished implementing them and much more.

For every feature my mantra is easily moddable but lots of control. All of the supported content up to this point has had one form of communication – engine asking for the entities components which are returned in component definition form. I struggled quite a bit while attempting to fit the plants into this format. I finally came to my senses and realized what I had to do.

All of the plant logic resides inside of python. How the plant grows, how it visually looks, how it is harvested, and even how it is planted. With this solution, any modder has unlimited control. As for the “easily” part of my mantra, I am wrapping the core plant concepts up into nice little python classes which are extremely simple to use. I have included the code below for those interested in its awesomeness.

Because of this approach I have had to go through my entire game engine and expose it to python. This is something I have been putting off because I wasn’t sure of the requirements, boost python is a little scary and I knew it was going to be quite an undertaking. With this beast finally slain, creating new content will be much easier and have even more freedom.

Here are some screenshots featuring the plants that can grow overtime and be interacted with. There is also an early version of the grass. Right now the grass just grows on soil and is destroyed when the tile underneath it is removed. Later today I plan to make grass occasionally spread to nearby areas as if seeds were dispersed.

You can harvest the trees too!

This is the Zebra tree script that most people will see and have to worry about. I hope most of this is self explanatory. We are adding the different components to the zebra tree entity and the ZebraTree class is used to override the default properties of the tree (which can be seen below). We can add bases, trunks crowns and saplings images and they will be randomly used in the appropriate places. We can also override many other properties such as the seed it produces how tall it can grow, and how fast it can grow.

name = "Zebra Tree"

add(ModularRender())

interactable = Interactable()
add(interactable)

class ZebraTree(Tree):
trunks = [TreeImage("mods/base/plant/tree/zebra/trunk1.png", 2, 28), 
TreeImage("mods/base/plant/tree/zebra/trunk2.png", 2, 28), 
TreeImage("mods/base/plant/tree/zebra/trunk3.png", 23, 28)]
crowns = [TreeImage("mods/base/plant/tree/zebra/crown1.png", 34, 101), 
TreeImage("mods/base/plant/tree/zebra/crown2.png", 31, 98)]
saplings = [TreeImage("mods/base/plant/tree/zebra/sapling.png", 8, 33)]
seed = "mods/base/plant/tree/zebra/seed.ce"

def __init__(self, entity, organic):
super(ZebraTree, self).__init__(entity, organic)
def createZebraTree(entity, organic):
return ZebraTree(entity, organic)

add(Organic(createZebraTree))

Here is the Zebra seed script which is really simple. As with all content entity scripts we add the needed components, this time a Render, Item and Interactable components. The important part here is that we add an interaction “use” and provide the “useSeed” function which is defined in the tree script just below this one. To make this function reusable the plant the seed creates needs to be bound to the function provided – in this case we provide the path to the zebra tree.

import functools

name = 'Zebra Seed'
render = Render('mods/base/plant/tree/zebra/seed.png')
add(render)
item = Item()
item.stack = 999
item.delay = 200
add(item)

interactable = Interactable()
interactable.add("use", functools.partial(useSeed, "mods/base/plant/tree/zebra/zebra.ce"))
add(interactable)

Now for the meat of the tree logic. Here is the tree script which contains the Tree class and useSeed function that are used in the above scripts. As with everything this is still in the works but is most of the way there. I’m not going to go into detail in this now since there is so much going on but if you understand it then awesome. Once things start becoming finalized we’ll write some official documentation on these sorts of things. I put this in a pastebin because it is somewhat large.

Tree script

Lastly, I wanted to throw in the grass code which I’m happy about because I was able to write it without making any engine code changes. There is still in the works but I have the basics down. I will likely do the same for the grass that I did for the tree and have a base Grass class and allow for inheriting and changing the properties without having to worry about the logic. Pastebin link for the same reason as above.

Grass script

Thanks for reading through all of this! I know it is a lot. I’m interested to hear what you think of this.

Alpha Feature Video

Over the last two months we have added in a great deal of new features. This video shows off a number of these alpha features: item placement, modular composite animations, crafting and a few other small things. Keep in mind that this is a work in progress.

In addition, Kelley has been working hard on character animations, new items and most importantly – llamas!

Latest Happenings

Hey, I missed last week’s update. Things have been busy for me! Lots of work, real life events and Diablo 3 have all been keeping me occupied. Fortunately all of these are wrapping up for me – just one last wedding this upcoming weekend. I still have managed to get some work on Crea done and soon much more.

Tiles changed from 24×24 to 16×16. This is a fairly large gameplay change but it is a good one as it will give players more creative freedom. Along with this change, Kelley remade and cleaned up the various tile types. Before too long we’ll put up a screenshot of them in game. For now this small sample will have to do!

In other news, we have been refining the character customizations and ensuring that they are implemented 100%. This includes things like adding armor to the character and what not. We still have some work left but it is coming together.

Kelley has also been working on some animations. Here is the walking animation. These are the base graphics we use for the character. Everything in game can be swapped out for other images and/or recolored.

The character and clothing are about 20 small images put together using Spriter. We also have a running, walking, jumping, falling, and swinging animations. All of which you will be seeing in good time.

David has been putting together a mockup of the final UI. Nothing about it has been finalized yet but just the mockup gives the game a much more polished look. Once we get something a little more final then I will be sure to post it.

Things are starting to come together!

Building Menus

The majority of my Crea time was spent working on the character creation menu. Once I got that fully functional, I moved onto designing and developing the character selection. In the middle of that I realized that my hacked together menu system finally needed to be upgraded. After some designing, I have come up with a much more manageable menu system, which means cranking out the world select and creation should be a breeze. That is once I get to those. In the meantime I am back on the character selection menu screen, which I should be finishing up tomorrow.

I would like to show screenshots of the character creation but I have left the UI extremely messy for David to come through and clean it up.Once he gets a chance to do that then I’ll be sure to post some screenshots.

In other news, Kelley will be finishing up her school semester this week and will be able to put much more focus into Crea so expect to see lots of visual goodies over the next few weeks. I know I’m looking forward to it!