Tuesday, April 24, 2012

Unterholz



Unterholz is a particle based sandbox similar to the Powder Game. It uses Cellular Automata to calculate the water simulation and grow plants.
This game is built for LudumDare's 23. game development competition in around 12 hours.



The basic idea was to be able to influence the development of the environment through elements like wind and rain, and other influences like the sun, or its absence. The current functionality is limited to rain falling down and settling in lakes. Surrounding soil will consume water to become damp and have a chance of spawning a plant.


Eventually all environmental behaviors should only be minorly influenceable, like clouds forming automatically with the given circumstances, so it becomes more of a simulation than a sandbox.


Implementation

The current implemention is bruteforcing each particle to update each tick, uploading the image data for every single pixel. This is terribly inefficient and the simulation hits it's limit quite fast. Several adjustments need to be made for this to become stable and performant.

1. A major change should be a decently partitioned grid with Awake(regular updates), Idle(unreliable/irregular/occasional updates), and Sleep(no updates) states. Each state has a different update priority, so water that is settled once goes into Sleep, and will only be reevaluated if a neighbouring Cell's state is changed.

2. The image data needs to be stored in a buffer that is updated and changed throughout the update phase and just once uploaded. Several texture maps should be used for terrain, water, lifeforms (plants/critters).

3. For the sun to do it's magic i need to think of a way to calculate the lightmaps for the daycycle in a cheap but accurate fashion, so caves stay dark and cold while the surface might dry up.

4. Flow maps for heat and wind for generating cloud formations to make it rain and storm.

Pictured: Activity

Grow it big

More plants can be added with certain environmental prerequesites for them to grow, depending on the amount of light and space they have. Plants can range from algae to flowers to trees. The difficulty is making them appear distinct when only having pixels to work with.

Critters were planned to be added in the compo game. Time constraints didn't let me though. Life forms would be spawned near or in water, being fish or land dwellers. Fish would consume algae and produce offspring, their died bodies will be consumed by the earth leaving nurtured earth behind for better developing plants.
Land-dwelling critters would walk around eating plants or other critters, changing the ecosystem along the way.

This currently sounds like a big terrarium (i think i just got where Terraria got it's name from, duh :p) with only few interaction, so i am thinking about adding active players to the mix. They would be able to harvest, hunt, fish and transform the environment, actually impacting the whole ecosystem. When they block the sun and rain on a certain spot, plants will wither and leave dirt behind. Being too influential with your surrounding might end up tipping the equilibrium and you end up in a desert wasteland.

The most hi-res animation i ever made


What's the difference?

There is minecraft and it's horde of clones, Terraria and possibly more offspring in that genre, whatever those may be called. I really like both those games, and playing them extensively made me realize a thing or two.

The environments are very static. They can extensively be manipulated by the player, but if left alone nothing changes. A living environment would help to create a deeper atmosphere, seeing it developing on it's own and experiencing that your actions have consequences on your surroundings aswell.

Both those games have Biomes (fixed zones) to create more diversity to the environment. In Unterholz those biomes would be created dynamically, depending on rain, sun, clouds, wind, wildlife etc.

Although you can cultivate different plants in either game, the rules to do so are very vague. They need not to be irrigated or photosynthesize and have, apart from being resources, just an esthetic use. In Unterholz they would wither if being unattended for longer periods of time or would serve as food for wild life or else care for it's own business.


Why?

I got the original idea last Ludumdare compo where i built DiggyDig, a crude prototype of a pixel/image-based digging mechanic. Unterholz is in essence the logical followup to DiggyDig's mechanics. There's a third missing part for the general idea to be complete, but i might keep that for another time.
The idea now is to take what i learned from both and try to merge it into one interactive simulation and see what happens next.


You can download the compo version of Unterholz here.


Monday, April 9, 2012

EA’s Madden ’13 Kickstarter Makes 8.5 Million in Five Hours

This is a response to the post to Dinofarm Game's article: EA’s Madden ’13 Kickstarter Makes 8.5 Million in Five Hours.

It's interesting to see other indies struggling with the same problems when trying to crowdfund their game.
They seem to have the same perception of the problem that i have. If there is already a target audience (i.e. you're a gamedev rockstar or have a famous franchise) you're pretty much set. In every other case you need a huge chunk of luck, self promotion and a lot of help from your friends to succeed.
Even then there are still people who do not understand that it costs money (i.e. living expenses) to develop a game. People, what do you even expect?! If you don't want to contribute that's fine, nobody forces you to, but keep your incompetent comments to yourself("I can’t see a point in supporting lazy people with so much money." - quote from Dinofarm games article). You're hurting the project by putting other people off their intent to donate. If this mindset continues to exist it could really damage the potential for indies to go for crowdfunding.
Making games cost money. The time you need to code, create concept art and assets, hire a musician or otherwise help from outside. It's not like we want that money because we're greedy bastards who want to leech on you so we can enjoy a lifestyle better than yours.

In case you live with your mom, here's a simple estimate of monthly living expenses (this applies to germany at least)
300-500Euro - Rent, power and gas
100+ - Food and stuff
200+ - Health insurance

This totals in at least 600-1000 per month depending on your size, appetite, health insurance policy, location you live in etc.

Maybe now you can see why a budget of 10.000 Euro is not much, in fact it is terribly humble. Indie developers do not have a set work schedule. It is not rare to work more than 8 hours a day, because we love what we do, and you cannot just stop working if you're in the zone. But we're not in it for the money. If we were we'd rather be working as system admin or software developer, tech support or something else.

We do this because we love doing this, and we want to provide you with awesome games. Alleging us to be greedy will not only hurt us or our community, but the games you will eventually get from us (or won't get).

Finally, i want to adress the headline, something the Dinofarm guys unfortunately didn't. This is something that crossed my mind a few days back. Publishers without a doubt have taken knowledge of Tim Schafer's and Brain Fargo's success through Kickstarter, so what if they decide "Hey, what they can do, we can, too".
This scares me. Big scale publishers don't need this, well, because they are publishers. They are supposed to fund the development of the game, since they take the biggest piece of the pie. If they offload a portion of the budget onto the customer, not only will they screw us twice, but probably adding ludicrous perks like "Day one DLC for free".
This might be the most likely outcome, but it could benefit us aswell, as a certain factor of risk could be put off by us. "Is it worth making the game/new sequel/new title to an existing franchise?". Probably not on the scale they'd like it to, but still, there are games that could come to life that way, games where major publishers hold the IP and aren't made because they fear the target audience is too small to return the cost.
I doubt that publishers are that sensible though.

Let's just see how it turns out and let's look forward to the next great Kickstarter campaigns \o/


Sunday, April 1, 2012

More weeks passed

In the second week Astronaught received a small number of contributions, boosting it up to $167. This results effectively in 110Euro. The following days and weeks didn't bring in any contributions and we're still at that number.

To explain the lack of updates i need to clear something up: I am currently in a difficult situation. I need to get out of my apartment end of this month and find a new one. This implicates to be actually able to pay the rent. Finding a suitable job is not easy either, mainly because i am not sure what i can do. Well, i'm a programmer, i could just get a programming job. The thing is i'm more a creative person than a hard laborer, so working on repetitive and unrewarding tasks is dragging me down both physically and mentally. This is why i chose to be independent. Turns out the term is misleading if you don't have a stable source of income or you're not called Tim Schafer. ;)
Additionally programmer jobs are usually long term and full time day jobs. 2 ways to prevent me from enjoying my personal game development.
So what else could i do? Currently i am clueless.

Regarding gamedev, well, maybe i've been approaching this whole thing from the wrong direction. But i can only learn by doing these mistakes. Overambitious feature-creeped project anyone? Turns out i often cannot settle with games that could effectively be programmed on a computer that is 20 years old. I desire the technical and design challenges my ideas provide me with. While it is entertaining to come up with a solution to a difficult problem it can also aid the learning process and help coming up with solutions for completely different problems. This is what makes game development interesting to me.

So what am i trying to say here? You might have guessed it by now: Astronaught won't be developed.
I want to apologize to everyone who supported and put their faith in me and the game. I received some awesome feedback and i am very glad about all of the comments you made.

Also i want to thank everyone who contributed to the campaign. Your support will help me through this difficult time and i hope i can make up for it with a future project.

Special thanks fly out to Bob Chatman for all his encouragement and his generous contribution.

Sorry i couldn't live up to your expectations.
wzl