Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: defmenge on June 18, 2011, 10:04:24 am

Title: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: defmenge on June 18, 2011, 10:04:24 am
EDIT: Demo version download: http://adrian.diabetes-im-alter.de/drod8x/DROD.8xk

Some of you may have already read about this project, now I'm going to announce it 'officially'. :P
DROD8x is a clone of the puzzle game DROD (http://drod.caravelgames.com/) (Deadly Rooms of Death). This name is a temporary working title and will be changed before the project is released to avoid possible problems concerning copyright/trademark infringement. DROD8x is written in Axe and will be compiled as a Flash App, despite the screenshot showing an assembly program.

Basically, the game is a turn-based puzzle game about clearing out dungeons filled with roaches and other monsters, using your "Really Big Sword". Everytime you move one step, wait or turn your sword, all other monsters move a step as well. If a monster steps onto you, you die and have to restart the room from the beginning or the last checkpoint.

Custom level support and of course a level editor will be included. Rooms are divided into 12x12 squares, with each square being represented by 5x5 greyscale pixels (3-level grey). A level will be able to contain up to 8x8 rooms, and a hold is going to support up to 16 levels. Currently, I've got basic room drawing, player movement, the AI for roaches and collision checking working. This is what the game currently looks like:
(http://adrianonline.eu/drod8x/roachie.gif)

Most of what can be seen in the animated GIF is temporary and will be improved (UI, room graphics) or replaced completely (death message).
It is targeted mainly at DROD players who are already familiar with the game and want to play it during class/long car trips/etc., but the game's mechanics are rather simple and shouldn't be too hard to understand.

Thanks to:
Quigibo, for the almighty Axe Parser, without it, this project would have to be written in terribly slow Basic or terribly complex Asm.
merthsoft, for TokenIDE, without it, I would get lost in my own code. ;)
NekoMithos, for his support and beta testing. (he's not registered on this forum)
Caravel Games, for creating such an awesome game.

All kinds of feedback are appreciated. :)
Title: Re: DROD8x - a TI-8X clone of DROD using Axe
Post by: yrinfish on June 18, 2011, 03:54:02 pm
Cool!! I want it on my calc!! Link please?
Title: Re: DROD8x - a TI-8X clone of DROD using Axe
Post by: defmenge on June 18, 2011, 04:18:18 pm
It's currently under heavy development, I doubt that you could do anything with what I have done so far. :P
At this very moment, I am working on multiple monsters at once, which caused lots of problems that have to be fixed before I can continue with anything else. Currently the roaches leave "trails" behind and don't seem to be affected by the sword, also they go through each other and visually merge into one roach.
Title: Re: DROD8x - a TI-8X clone of DROD using Axe
Post by: yrinfish on June 18, 2011, 05:14:37 pm
Ok, but if you want help, just ask me or anybody here, WE LOVE TO HELP!!

That's not a joke.

EDIT: why an app? I don't like apps, do you need that much space?
Title: Re: DROD8x - a TI-8X clone of DROD using Axe
Post by: defmenge on June 18, 2011, 07:16:02 pm
Ah thanks, I will ask here when I will need help. ;)

Also, I will make it an app as I *will* need 16 KB, the compiled code is 6 KB already and I will have to compile into an app soon.
Title: Re: DROD8x - a TI-8X clone of DROD using Axe
Post by: defmenge on July 01, 2011, 04:48:32 pm
Time for another update, this time with a demo! ;)
(aah I hope I uploaded the correct version :P)

There have been lots of improvements lately: multiple monsters in a room work correctly, monsters can actually be killed with your sword, the AI for Roach Queens is implemented (they don't lay eggs yet though) and there is a very basic level editor! Also, I had to start compiling it into an app because memory wasn't sufficient anymore for having the source, the compiled program and the temporary savefile AppVar in RAM.
Right now, the level editor is integrated into the main app but it will be an external program later. The reason for that is that testing and debugging monster AIs and certain cases is much faster and easier this way.

I've uploaded a demo of the current state of DROD8x. When you start up the app, the first thing you'll see is the level editor. Move the cursor with the arrow keys and place tiles/monsters using the [Y=]~[TRACE] keys (Floor, Wall, Roach, Roach Queen). [DEL] removes all tiles from the level, [CLEAR] exits the editor and [ENTER] plays the level. Note that the levels are not saved yet and you can not restart the room once you die because I can't find a good way to exit the main loop. A lot of code will have to be moved around until I get that working.

After you press [ENTER] in the editor, the game will start up with the player being in the top left corner. Use the number keys to move orthogonally and diagonally, rotate your sword clockwise/counterclockwise with the [(] and [)] keys or press [CLEAR] to exit. Everytime you make a move, all roaches in the room move a step towards you (and all roach queens away from you). Try to prevent the roaches from killing you by smiting them with your sword, as they will not step on the tile it is on. You 'win' when you cleared the room from all monsters, nothing happens when you do so though, yet. :P

Here are some screenshots of what it looks like now:
(http://adrian.diabetes-im-alter.de/drod8x/d8xscr3.gif) (http://adrian.diabetes-im-alter.de/drod8x/d8xscr4.gif)

Note that I'm working on the greyscale lag when making a move, I'll add a "DispGraphr" into the calculation loop, I was just too lazy to do that and recompile/re-sign it/make new screens now :P. Also, the minimap in the bottom left was made for testing purposes and will be replaced with a map displaying the nearby explored 3x3 rooms and whether they are cleared or not.

Known bugs:
- Roach queens don't move correctly when going straight up or down.
- Sometimes a single roach does not follow you when another roach is killed in the same turn.

DEMO DOWNLOAD LINK (hosted by me to prevent overloading Omnimaga's server space with unnecessarily many updates :P):
http://adrian.diabetes-im-alter.de/drod8x/DROD.8xk
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with a demo!)
Post by: mrmprog on July 01, 2011, 04:53:37 pm
Wow, this game looks nice. I can see that with bigger rooms you could get some serious puzzles.
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: XVicarious on July 01, 2011, 04:56:20 pm
Wow. Looks very impressive! God it reminds me I need to start working as well. I'll try the demo later as I have work to do also. Good work so far, keep it up.
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: defmenge on July 01, 2011, 04:56:49 pm
Wow, this game looks nice. I can see that with bigger rooms you could get some serious puzzles.
Thanks. :)
The real DROD does indeed feature (much) bigger rooms, however, 5x5 sprites are already kind of indistinguishable, and the code is already adapted to 12x12 rooms. I already made some basic room designs that could be further developed into actual puzzles. I am also planning to add more gameplay elements which will allow for more challenging rooms. :P

EDIT:
Wow. Looks very impressive! God it reminds me I need to start working as well. I'll try the demo later as I have work to do also. Good work so far, keep it up.
Thanks for your feedback as well. ;)
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: defmenge on August 25, 2011, 08:43:36 am
Sorry about the lack of updates recently, I couldn't work on DROD for about a month due to Axe Parser being unstable (luckily no code got lost), and because I rewrote most of the code for Axe 1.x, I couldn't revert to an old version. Also, now I have to find back into my own confusing code, get familiar with all memory locations again etc. :P

What I've managed to do is to split DROD up into an editor app and a game app, and the map is now actually saved into the AppVar "DH Test" when you use the editor. Also, I've smoothened out roach movement a bit if there are lots of monsters in a room at once (later on this can be turned off in the settings). In addition, the roach queens' weird movement behaviour should be fixed now, they will now move as expected, and all roaches should now move if another one was killed in the same turn.

No screenshots this time, because not much has changed, really. :P
The controls of the new editor are the same as the controls of the old integrated one:
Arrows to move cursor, [Y=]-[GRAPH] to place tiles/monsters, DEL to clear the level, CLEAR to quit without saving, ENTER to save and quit.

New known bugs: Roach queens may randomly turn into roaches, not much is known about the bug.

Download links: DROD (http://adrian.diabetes-im-alter.de/drod8x/DROD.8xk) - DRODEdit (http://adrian.diabetes-im-alter.de/drod8x/DRODEdit.8xk)
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: DJ Omnimaga on August 25, 2011, 11:20:37 pm
First time I see this topic. Hmm interesting concept. I like the look as well. I haven't got time to try it but from the screenshots it looks pretty fun to play :)
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: LincolnB on August 26, 2011, 04:55:36 pm
Also, I will make it an app as I *will* need 16 KB, the compiled code is 6 KB already and I will have to compile into an app soon.

Instead of making it an app, you might be interested in Crabcake Axiom, written by Hot_Dog. It's a utility that allows you to create larger-than-8kb assembly programs (including Axe Parser)
Title: Re: DROD8x - a TI-8X clone of DROD using Axe (now with demo!)
Post by: defmenge on August 29, 2011, 02:43:31 pm
First time I see this topic. Hmm interesting concept. I like the look as well. I haven't got time to try it but from the screenshots it looks pretty fun to play :)
Thanks for the feedback, though the concept isn't mine, this game is a calc clone of DROD (http://drod.net); I did make the sprites and UI design myself though. :D
I think I posted this topic just after you left Omnimaga for some time, which is why you didn't see it until I updated/bumped it. ;)

Also, I will make it an app as I *will* need 16 KB, the compiled code is 6 KB already and I will have to compile into an app soon.
Instead of making it an app, you might be interested in Crabcake Axiom, written by Hot_Dog. It's a utility that allows you to create larger-than-8kb assembly programs (including Axe Parser)
I've heard of Crabcake, but as far as I know, the program still has to be in RAM to be executed (please correct me if I'm wrong about that ^^; ), and hold/level files will be rather large as the levels grow. Also, I remember reading MirageOS doesn't like Crabcake programs, and even though many people on Omnimaga seem to recommend using DoorsCS instead, I believe MOS is still the most widespread shell among most calc gamers.