Wednesday, August 26, 2009

Round-up post: Pre-Alpha, history and future


Intro

Hello everyone. This will be the last post on this blog, at least for a while. I'm going to share with you my experiences about the pre-alpha and I will look back at the development of CeasterTrade.

I'm going to put CeasterTrade away for now (but I'll probably get back to it somewhere in the future). But I'm also launching a new blog, and probably also a new project.

I'll try to give you an interesting story to read, and try not to forget anything. But it will, like always, be just how I write: what I remember, just how it is for me. And perhaps a little bit messy. Please forgive me that ;).

Pre-Alpha

When I started writing this article CeasterTrade had been in pre-alpha for 9 days, most action is over now. I had 23 sign ups. The people who signed up were people I met on bbgamezone, modulargaming and some friends. It was an interesting happening.

Bugs

While testing, people found heaps of bugs. Like I expected these were very small though. Like typos and small mistakes in the code. The first 2 days I worked on fixing these bugs, and fortunately the people testing my game were very helpful and kind.

I hope *all* bugs are fixed now. Thanks to good testers and much free time.

Testing the game itself would have gone MUCH better without all these bugs though. I don't regret that I didn't extensively tested everything before putting CeasterTrade online, it was so much easier for me this way. I was tired of messing around on my local machine and I needed to go online.

So it's something good to remember: what are you going to use your "beta-time" for? people will only sign up once. You can ask them to find bugs, or you can ask them to test gameplay. Or something in between off course. But remember you can't have it all.

Wikia & Help page

When going online I created a wikia for CeasterTrade. Though nobody contributed to it (as far as I know) it was a good move I think. A wiki is easy to edit, and people feel comfortable with the user interface. But what I should have done earlier:

  1. Devote enough time to create a beginners guide. It's not as easy as it sounds though!
  2. Create a link to the wikia in the menu. I linked to it in the news post, and it could easily be found on google, but a link in the menu was much clearer.

Apparently CeasterTrade is not an easy game to learn. This can and should be worked on. Still, even in testing phases, there should be a good documentation. Even if many things will change in future development, you should devote enough time and energy to a help page.

Feedback

I didn't get very much feedback. But I had a small audience, so I can't complain. The little feedback I got was very positive though. I'm happy they didn't demolish my idea, nor my game ^^.

I tried to write something about negative feedback here. But it all comes down to this: you should try to learn from feedback, but don't listen when it harms you. You should never loose your confidence because of it.

Dealing with feedback is important for a developer (of any product). Just remember that. There's plenty of good information on the subject to find on the internet.

Game design flaws

These are the flaws I noticed during the pre-alpha:

1)

The first flaw was that it was a little bit too complicated. The player had to take too much actions before (s)he could actually sell some goods. I have to improve by cutting in the amount of actions. There were some actions (like hiring workers) which really did nothing. They make perfect sense in an economics based game, but added no value to gameplay.

Off course I had my reasons for them. Workers, for example, leave room for great features. They can be modified and used to create an extra dimension for the game. I already implemented these and left them there in an unfinished state. I wanted to improve them later, and "just leave them there for now".

The only problem is that it was too soon. Instead of creating the "bones" for later features, I should have just added them when they're really finished. And keep the actual playing simple.

2)

The game needs too much players to really become interesting. It's more a virtual world then a simple game. The whole game is based on player interaction, so when there's too little players the game just can't work properly. Also the fact not many players where able to even get products in their shop didn't really help much.

This isn't necessarily a bad thing, but improvement is possible.

To set up a working economy you need X amount of players. I didn't have that X testers. A combination of tweaking the game design and motivating more players are solutions.

3)

Economic balance: the currency flow. While people are constantly loosing currency to the game (buying land, hiring workers) there was no way to create new money. Only when a new player signed up.

This problem was taken care of in the design process though. An NPC (in the form of virtual countries etc buying from the players) was designed. This would also come with a little bit of storytelling (country X is hit by a typhoon and needs to buy much wood etc).

By giving hints to which goods would be needed next week we could even stimulate players to go to the stock market. (that's a little extra ;)

Also more ideas were kept in mind for later development.

The mistake I made here was not creating this NPC from the start. It was on a todo list for further development, but "not needed for a prototype". I was wrong.

Prototype

When I first decided to create a game, I wanted it to be a full game. Even if it would take forever I wanted to put a full featured and completed game online.

Now I know that's not a good idea. Feedback is important. Keeping yourself motivated is important. You need to create a prototype!

I changed my mind, but I couldn't really fit it in development. For me a prototype was about testing game mechanics, but that might be a bad approach. Your game should look clean, manuals should be there, it should be a finished game. Even art and a good user interface are important. Finished is more than playable.

A prototype should be small but finished. Then extended afterwards.

The other side

The most magical about the pre-alpha for me was standing on the "other side". The experience of being the developer, and not the gamer.

It's hard to be on the other side. Because when I'm the developer, I can't have that experience of entering the game for the first time. I don't have the opportunity to learn the game, I know it already from the inside out (almost literally, since I did the coding).

You can never experience the game as a player. You have history. This means there are flaws in your design you can never notice. This means you don't know how hard it is to learn the game. This means you don't know how fun it is. This means you don't know what sort of fun it is.

Fortunately it doesn't mean you can't know. Good testers become of real value. You can't rely on yourself: your view is troubled. You can only rely on your testers.

I remember that I could sign up on a game and say: *this* and *this* is wrong. They should do *this* and *this*, ... Why the hell did they do *this*? They could have just done *this*. And oh yeah, it would be cool if they did *this*.

But it's hard to do when you're the developer. Much harder than I expected at least.

It's hard to describe this, but really interesting to feel it. So remember: don't hesitate to credit your testers!

Hereby I thank everyone who helped me test out CeasterTrade!

History & Postmortem

Since this is supposed to be a round-up post I thought on looking back at the development of CeasterTrade. What it did to me, what I learned, ...

The beginning

When I was younger I didn't have much computer games. The only game I really played was the Settlers (III and IV), and it's still my favourite game.

Since we didn't have much games and there was nothing to do when I was at my father's in the morning (besides watching tv) I played browser based games.

What I looked for in games was a feeling of some kind. I wanted to live what I saw on television. I can remember a period when I was really into spies and secret agencies and stuff. So I was looking for a browser based games where I could be part of an agency, a world with intrigues. A game where I could sense the excitement.

Unfortunately most of the time I couldn't find such a game. There was no browser game where you could sense the excitement of being a spy, no browser game with agencies.

Sometimes I found good games, but they were not perfect. Sometimes i found nothing good at all. That's where I developed an interest in designing games I think. But I didn't think I would actually make a game some day.

The idea

I don't know exactly when, but a few months before I started development of CeasterTrade I discovered Miniconomy. At that moment I was really interested in economy, so as usually I browsed the net and looked into browser games too.

Most economy based games were boring though. But when I discovered Miniconomy I was really excited! It sounded so good. So I signed up and it was a hard game to learn. I was interested so I learned. And it was one of the most interesting games I played, but it wasn't perfect.

After a few attempts to change things, the admins almost didn't respond to my questions/suggestions, I started to think it would be cool to make a browser game by myself. I could do it right.

Then just before the holidays I was thinking of what I would do with my time. I had multiple ideas, and making a browser game was one of them. But while showing Miniconomy (and where I stood in the ranking) to a friend I was getting really exciting. That's when I decided I would make a browser game of my own.

Getting started

When I started with the development of CeasterTrade I had almost no experience with web development. I had learned some html and css, and I had worked with a Content Management System.

So one of the the first things I did was asking my father (he builds websites) what I should do and he suggested I should learn php. So I bought a php book.

Off course I also used google to find information about building browser games. I didn't find much though. But I didn't give up the search, at the moment of writing i have quite a few links to blogs about (browser based) game development & design. Still there seems to be information lacking for the absolute beginner.

Bit by bit I learned to understand how it all works. I learned that it wasn't going to be easy to built a complicated game like miniconomy (my game isn't a clone, but would have an almost equal level of complexity). I learned what php is, what a programming language is. I learned how to use php. And I learned so much more, the list is almost endless. (and endless is boring, so I'll stop here)

Bottom line is: it's a hard world to get into, but once you're in things go so much easier. For me that was once I found bbgamezone and modulargaming.

Game Design Doc

When I started I had no programming experience so I had to learn that first. I took my time (I always did) and I created a design document. Some people work better with a game design document, some choose to not use one.

Although every designer uses different methods, I suggest you write down your thoughts. Even if you're not making a full game design doc you should write down your thoughts. If you're serious about game design, if you want to create a good game, I suggest you go into details. You should write it down.

I spent the first 2 months on learning php and creating the design, and learning how it all worked. I took my time and I don't regret it. You should take your time too.

Modulargaming

I started on the development of the actual game when I discovered modulargaming. My father said that when something's done already, it's only a waste of time to reinvent the wheel. Now I'm talking about things like registration and login, security, ... Basically a framework. Reinventing the wheel is not a bad thing though: it's a good opportunity to learn. There's people on bbgamezone who would suggest you reinvent the wheel, only for learning purposes. An they're totally right.

I wanted to code everything from scratch too first. But I wasn't going to make a very simple game, and there was a good chance that reinventing the wheel would bore me, demotivate me. I'm not really the programmer type too, though I can enjoy it.

So I searched for a framework, and I found modulargaming. It's thanks too modulargaming I could understand how a web application really worked, how a game really worked. I got to learn the structures and I got to analyse the code.

If you should use a framework or not depends on what sort of person you are. I suggest you make the choice by yourself.

BBGamezone

When making CeasterTrade bbgamezone was the biggest help. It's a beautiful community with beautiful people.

Even if I didn't have any questions, I could learn from the questions of someone else. Being active on bbgamezone also kept me motivated. Seeing the successes of others makes you work harder to experience the same success.

It's the only good community I know dedicated to browser based game development, and that's sad. Because there are so many browser based games, but there's so little information being shared.

Game designers and game programmers can all help each other, but why is it so hard for developers to meet? Why is it so hard to cooperate? There's so many times I ask myself where all the browser based game developers are. And then I'm talking about Persistent Browser Based Games (PBBG's). I believe there are communities dedicated to flash game development, but that's something totally different.

BBGamezone is a great community, please join us, so we can learn from each other. I also want to thank everyone from bbgamezone, I'm very grateful for all their help!

The Blog

Another element in the development of CeasterTrade was the blog. It was like some sort of reminder. It was a cheap way to keep the world up to date. It was a way to share my thoughts.

I just hope game developers can learn something from it.

The blog should describe the development process, or at least give some hints. In the end you'll have to find it out for yourself.

But what surprised me is that some people are afraid of sharing their ideas. They think people will steal them. Really, it doesn't make any sense.

Do they really think their ideas are worth stealing? Do they really think their ideas are so original that no one has ever done it before? Do they really think nobody will steal it when their game goes online?

I want to encourage sharing ideas. We can add value to other's ideas, and they can review and improve your ideas. It's equivalent trade: you give something and you get something in return. You've got to keep moving and beautiful ideas will grow.

Twitter

I discovered twitter at the end of my journey, but it was a  wonderful surprise. Like the blog I could share my thoughts and keep the world up to date, and it became even simpeler.

So when I have something more, or important, to say I can take my time writing a blogpost. And for everything else I can use twitter.

People

On my journey I met a lot of people. Some guys from modulargaming. A lot of people from bbgamezone. It's was a real delight to have some one to talk to on my journey. To share ideas and thoughts, it was a real motivation.

It was really nice to see these people test out my game in the pre-alpha.

Also I'm grateful to my friends. They were always prepared to listen to me, even if I knew they weren't that interested.

I want to thank my father for everything he did for me. Providing a server, svn and good advice. He was willing to help me when I needed it.

I created CeasterTrade on my own, no one did it for me. I'm proud I did it, but I have to thank all these people who helped me and gave me strength. Even if you only said one word to help me, I appreciate that one word.

My Pace

I was making a game, a complicated game. I had to learn everything. I had no experience. So I decided not to rush into things. When I wasn't very motivated at times I just didn't do anything. When I had to much homework I didn't do anything. When there was something more fun to do, I didn't do anything.

When I couldn't post on my blog for a while, so be it. Though I knew I had to work from time to time to rediscover the fun of making a game.

Following my own pace felt uncomfortable sometimes, but it was the best decision I made. Some people work better with deadlines, but this wasn't the case for me.

I'll keep following my own pace in future projects, and I hope I'll be able to follow it in my everyday life too.

There's a nice japanese song titled My Pace (though I can't understand what they're singing): http://www.youtube.com/watch?v=VcTAXrFxY8Q

The End

Development ended with the Pre-Alpha. After fixing bugs and gathering feedback CeasterTrade is put away, for now.

I'm making room for new projects, but in the future I will probably pick up CeasterTrade again. I'm happy with the prototype, so I can make a good game with it. I know how I can improve CeasterTrade and it really can be a fun game. Maybe I'll complete it some day...

Questions?

I hope this info, about the pre-alpha and the development process, had any value to you. I hope you learned from my experiences and that, together with previous posts, it can give you some insight on the development of a browser based game.

If you have any questions you can leave a comment. I will be happy to answer them!

Future & new blog

Now that I decided to put CeasterTrade away I can make room for other projects. I realy love game design, it became something of my own. So I'm definitely going to keep designing and creating games. Therefore I'm going to create a new blog.

On this new blog I will post anything about game design & development. Including information about my project, as well as thoughts and notes. Kinda like this blog I will post at my own pace.

At the moment I don't know yet which project I will be starting. When I will be working on it etc. 

So you are all welcome to visit my blog, you'll notice when there's something going on. Let it be a place where you can take a look from time to time, follow my projects, give comments, find inspiration, help you think, ... Whatever it can do for you!


Sunday, August 23, 2009

Reminder

Hey everyone

I just want to say that I haven't forgotten this blog. I'm currently working on a longer post about the pre-alpha and stuff.

The reason it takes so long is because

1. I'm lazy
2. I'm working on it in little bits, it's hard for me to focus
3. Since I'm not a very good writer it needs some re-writes if I want the post to be something decent.

But you'll see it once it's here.

Friday, August 7, 2009

Comment: game design vs game mechanics

This is a comment I posted on an old topic. There was a misunderstanding between the author of an article and some one who commented. I just felt like clearing it out, though it will probably never be read by either of these 2 people.

While I was writing this comment I defined my interpretation of the difference between game design and game mechanics.


Here's my comment :

I know this is old, but I still feel like making this comment clears something up. The comment by Christopher J. Rock saying it's strange to divide games in player input, story and game design is definitely right. Though, I think that's not what the author of this article meant.

"player input, story and game mechanics"

That would be a better word choice. I would describe a game design as the description of how a game works, which elements are in it, etc. That includes story and takes user input in account.

Game mechanics though are the rules of how a game work. In that light, story and user input only are the citizens following the rules.

The game is the country, which consists of citizens and rules. The design is the description of that country. The user input and story are citizens. The game mechanics are the rules. --- Note that this is my interpretation. But I think this is where a misunderstanding came to life.

Wednesday, August 5, 2009

Monday, August 3, 2009

Pre-Alpha : 08 / 5 / 2009

We are open for registration on the fifth of August, 10 o'clock, standard time (GMT). CeasterTrade is opening in 2 days!

Pre-Alpha

I called it a preview, I said it was for testing. Now I'm calling it a "pre-alpha". Now, what does that mean?

It means that I'm putting the game online, open for registrations. That the game can be and must be played. The game will has to be tested, bugs have to be found, values have to be balanced, ... But it's also an opportunity to show the game, which is long before finished, to the world. It means I have to gather feedback. Testing the basic elements of this game in several ways.

TODO in Pre-Alpha: For players and developers
  • Bugs have to be found and fixed, so when you find one, post it on the forum.
  • Fun: Is this game fun? How come?
  • Security: I haven't really payed very much attention to security, so maybe some one will hack this game for me. That's the easiest way to learn, I guess.
  • Balancing: This is very important.
  • Wikia: A good manual has to be made, the wikia has to be extended.

Wikia

I have created a wikia for CeasterTrade: http://ceastertrade.wikia.com/

I really hope testers will be enthusiastic enough to write a manual, 'cuz I suck at it ;). Otherwise I'll give it a try.

The manual is pretty important though, because I don't think CeasterTrade is an easy-to-learn game, at least not at this stage. I will be online to help people getting started on the ingame chat, but a manual would be a LOT better.

What I expect

I really don't expect anything. I don't have any experience with beta testing, putting a game online or running a game. So what would I know? I'm just putting this game online, and I'll see what happens.

I have certain assumptions, but I wouldn't know these are true.

You're all invited!

Please come and register an account! You're all invited to take a look or play the game. If you have feedback, post it on the forum, talk to me on the chat, or post a comment here.

See you on Wednesday!

Wednesday, July 22, 2009

CeasterTrade online?

Hey everyone

Like I said before, the core of CeasterTrade is ready, but it needs a lot of improvement. But fact is, I'm not motivated. I'm still addicted to the project, but I just want to move on to more intresting stuff...

I want CeasterTrade online.

That way I can gather feedback and I'm more motivated to keep improving it. So I decided I won't work on it until it can be put online.

My dad has to do some stuff first before I can put it online, so I will putting some pressure on him. It's acctually big news:

If things go as planned CeasterTrade will be online, as preview, in less than 2 weeks!

There is absolutely no certainty things will go as planned, but hey, who cares?

Monday, July 20, 2009

From ProtoFlow to ImageFlow

Since my last post I haven't been working on CeasterTrade that much. Mostly I was trying to addapt ProtoFlow to fit all my needs.

I am still not very skilled in javascript so I took it as a chance to improve. I learned a lot, but the challenge was to big. I had to go looking for something else.

ProtoFlow uses the Prototype library and scriptaculous to imitate the CoverFlow effect. Now, ImageFlow does the same but uses the jQuery library.

The reason I went with jQuery after all is that it is well documented (ProtoFlow is not) , has more options and you can give the script some variables to display it the way you want.

I think the "Town Center" should be fine now.

The next few days I hope I can code:
  • Starter Kits (when you built a new workshop you get a free tool, so you can start right away)
  • Fix bugs that will certainly appear (this happens all the time ;)
  • Perhaps more UI stuff (make things clearer)
  • Other stuff I think about
When I'm done with that I can evaluate and see where I stand. Maybe I'll be ready for some basic testing (with friends, before I put it online) , maybe there's some other stuff I need to do.

But I'll keep you updated, remember you can follow me on twitter for faster updates.

Town Center Screenshot: