I know, no posting in the last 5 days. Well, I have been busy doing Project Stuff (!). The day before yesterday I got the first level all nice, and began to install the scripting into it. Where I ran into some issues was with the Combat Tutorial.
Generally speaking, the Combat should be something really well integrated into the general game systems. Other times, the combat plays out as its own kind of game. Examples of which include Prince of Persia, Flashback, and generally any game like that. Consequently, I felt that I really wanted the combat and the platforming to be separate for the most part. In some level designs, you will be able to platform around enemies, but when I want combat, I’ll force the issue.
However, that does tend to make it a little harder to have the combat be introduced in normal gameplay. I mean, in Super Mario you can jump, and there are enemies, and you can jump on them. The 2 facets are combined into a single element. In Thief I really wanted to keep the two a little separate. There are 2 reasons for this, the first of which is that I’m not that good of a programmer. The other is that I wanted both systems to be robust, but with limited control inputs.
Either way, I needed a combat tutorial. I learned a few things:
1) It’s easy to set up certain circumstances (when you hit/Get Hit/Press a button) but it’s a lot more difficult to have it deal with other stuff. Like, “I don’t want to pull out my sword, I just want to jump around,” and other similar nonsense.
2) It’s very important to have the steps link together in some way. So we don’t cover walking, and then reset to make the player walk to the next bit. That’s a little stupid.
3) The scripting engine (tool?) is flexible, but stupid. For example, each “talky” bit is rendered like its own frame. This means that I have to draw everything on the screen, all the enemies, the player and any animations, and the background for each frame of dialog. That kind of sucks, but it will have to do.
So now the tutorial is all done, and I’m quite happy with that. Pictures incoming.