Saturday, July 16, 2011

How all this works: Part 2

In last post I wrote about how all this started. In this post I try to focus more on games and way of work on them.

Lba is not my first game I played. But it have very special place in my memory. I tried to finish it at last twice. At first I think that I was to young to understand this game. But second time I was in haven when I played it. And from long ago I thought about remake, there was "Lba Remake" now is "Little Script Adventure" and there was and will be many other groups that try to create remake of this game. But I think that way of how they do it is somehow wrong. So I decided to create my own remake.

I started to write games more than 11 years ago. This is one of many projects that I was developing in this time. On begin everything look quiet simple: you have some libraries and game and this is enough. What you need else to write "Noughts and Crosses", "Tetris" or simply plane on scrolling map (from right to left). But as time pass the construction of your games must change. First game that was pretty serious was "Tony The Rat":




In this project I used text file to define map, simple animation system, some scripts like files to talk and  other weird things. I still like this project very much and I plan to return to this idea later.

It's fun to write about old projects but this is not a post about projects I made. So lets do small postmortem.


What went right:

  • Team, in which I worked had 2-3 people. And on end I finished on lead position.
  • Idea, I think that this was one of my first game that have some idea behind it and it was not to ambitious on begin.
  • Technology:
    • Animation system (based on body parts) with some simple editor.
    • Graphics, as you see it was pretty good (project begin in 10.2000).
    • In one version there was riding a car in city.
What went wrong:
  • Work, it is easy to create game on your own but when there is more than one person there shows problems. Because others don't always have time when you do. So you prefer than do something yourself and problems multiply that way.
  • Team separate and on end I ended working alone.
  • Growing ambitions, when you develop game you have big desire to change some elements on better. And if you don't know when to stop sometimes you end rewriting everything from begin which don't help at all.
  • Growing locations. This was other problem, I didn't had technology to support what I wanted to do, and when I projected game I always wanted more. Now I would create game that I could create on engine I had. 
  • Not enough time and strengths. This is one of problem about which you always need remember, but then I didn't. Game started to grown, my ambitions to, so I changed technology and started to rewriting everything. And on end I had less then on begin so my motivation was smaller. And on end I decided that I'm to stupid to create such a big game.
So as you can see this didn't were so simple as it's look. But after that I begun some work on simple engine on my own. But then one of my friends invite me to work on New Dawn:



 I will not write too much about this game. It was big production on some point there were around 15 people in team. And of course I ended as leader of programer. So what I learned from this project:

  • Big team == big problems. There is always problem with communication in big teams. Especial when you talk by internet and don't have money behind you .
  • Never work on unfinished engine where you don't have sources or any good documentation. This can kill your work in the end.
  • This is not job and you don't need to see it this way. People work when they have time, not when you want. Because of that you don't have to put big expectation about amount of work they do.
  • Don't be too ambitious because on end it's hard to finish all your plans.
  • In cases somebody don't show to much progress, do things you plan yourself. Because on end you can spend long time on waiting to finished work.
  • Start work with smaller projects to "unite" the team and learn some ways to speed up developing of project.
  • Using the SVN and bug report system like Mantis is great things. You can add to it some wiki like service with details about game, later you can quicker find things you need.
Later begin my 5 year long developing of actual engine W.R.E. In next post I will try to covers in details how changed structure of engine and it's tools. I will try to find some of old projects I done on engine and talk about them. 

If you want's to read about some part of all post or you just don't agree with me. Just write and I will try to write about them in more details or discuss your opinion.


4 comments:

  1. The formula "big team == big problems" is very true. I already suffer from it as well. The project started to be very small and realistic, but while team was increasing things where getting bigger and various troubles appeared. In all those kind of online shared projects we all need to put our feats on the ground and be realistic.

    ReplyDelete
  2. Hehe, when I talk to people that were in such a group everyone of them say the same :] Other thing they mentioned and I saw was in groups I participated is amount of work that was done. When you have more people there is always one or two members, that done one maybe two small things in half of year or even in year. It's normal but influence morals and feelings of other members pretty much :/

    ReplyDelete
  3. Exactly. There will be always people who give more to the project than others. I notice that if we can make a good pace of development everything gets going well, but if it break for some reason it will be difficult to get back on the track.

    ReplyDelete
  4. Yes this help very much. But I often overuse that and code then too much. Next day I sleep all day or do some other thing because I mentally tired.

    ReplyDelete