Down Below – Some thoughts and comments

First of all, I finally managed to compile OS X and Linux versions. Now binaries for all 3 platforms are available for download here. I was typing ‘radio talks’ text at the very last moment, so probably there are some grammar errors and plain typos. Sorry about that :).

Obligatory screenshot:

I know that it looks very generic. I tried to change visuals this way:

but attack area highlighting animation was not very well compatible with the floor like this.

Like many others I’ve done much less than I planned. But it is a complete game and explores an idea I wanted to try quite well. And the idea was to make enemies with area attack based on a pattern. Player can see that attacks is coming next turn (which means that he stands inside attack area pattern) and then he can move away from the attack area if he remembers pattern well enough, or use special ability to interrupt ongoing attack, or use ability to position himself far enough from the attack area. Or probably ignore the attack and try to finish the enemy faster. On earlier levels this works quite well. But later on the most important thing to remember is pattern around enemy, i.e. where to move to avoid attack once your are at melee range. But I think that it’s mostly due to the lack of variety of abilities and obviously dumb AI. With better AI, that tries to exploit features of it’s attack area pattern, and more positioning abilities it should be more interesting.

Another little experiment I added is an alternative control scheme for keyboards without keypad. If you choose this scheme, you need to press and hold direction in which you want to move and than press ctrl to actually move. I.e. pressing and holding up and left cursor keys and then pressing ctrl will move the character diagonally. Not sure that it’s the most convenient scheme, but is definitely working.

Now a little bit about technical side of this game. Actually I’ve done so much less then I’ve planned because I spent 5 days creating scripting host for the game and fighting associated bugs, so coding of actual game was packed into 2 days. I created pseudoconsole rendered with OpenGL (yes, yet another), and bound it to Zorro scripting engine. And Zorro (working title) is dynamically typed programming language I’m working on for past couple of years (periodically). A few years ago I took part in development of Falcon. It was fun, but task management of the project was so poorly organised (Pure IRC coordination. If main maintainer is absent ATM, you don’t know who is doing what.) that after wasting a bit of time I decided to leave it. But working on Falcon and seeing and touching it from inside gave me an idea that creating programming languages is not too hard :). So I created my own language. It’s somewhat similar to Falcon, Ruby and probably Python. But after I solved most serious technical problems, the development stalled. In order to see where an improvement is needed and in order to iron out remaining bugs I needed to write some real application with Zorro. This year 7DRL challenge was a good opportunity to do this and I think I succeeded. I enjoyed writing the game in Zorro much more then writing it in javascript (I tried to write one not so long ago). Btw originally I called it Zeus. But when the time has come to create the repository I did some googling and found out that programming language named Zeus already exists. I googled couple of other names starting with Z, but they were in use too. I tried to stick with Z to avoid renaming many Z prefixed things in the prototype :). Then I’ve got this ‘Zorro’ idea – kinda ‘he is fast and coming to help you!’.  So… For me result of this challenge is not only this little game ‘Down Below’, but scripting host for writing roguelikes that I’m going to develop further. I have (in prototype state too) source code editor for Zorro with semantic code highlighting, code completion and navigation that was created using the same library as this scripting host. So ultimately I want to create ‘all in one’ solution for creating roguelike games in Zorro. I.e. source code editor, debugger and probably vault editor where you can bind code to specific tiles/objects etc. I just need a lot of time and a little bit of inspiration :). There is a lot more to write about, but I think I need to stop for now.

p.s. In windows version refrain from using thermooptical camouflage in the final room. In mac and linux versions I fixed this.

Leave a Reply