DarkDreams... retro goodness... since 1995.

C O M P O
RPGDX 48 Hour Mini RPG Competition (Spring 2003)
Development Journal

Friday, April 25th:

6:45PM, EST - The competition will be starting in exactly 1 hour, and 15 minutes. This, my first journal entry, is just a way to detail some of the things which I want to do with my RPG.

First, I will make a conscious effort to create a much smaller game than last time (Mattress Warrior, which was almost as big as Mysterious Song... a game that took around 3 months to complete). To begin with, there is only going to be one area: a dark, gothic castle. Of course, it will be fairly large, with, hopefully, lots of rooms, and floors. I will try to contain it all in one tileset, however. I'm probably looking at 150-200 tiles, but it will be a bit easier to manage this way, rather than having to switch tilesets, when the player enters a new room, or floor. I still plan on making it fairly detailed, so it won't all look the same.

Second, the battle engine will be very similar to the one used in Mattress Warrior. These types of engines are just very simple to create, and they can be done quickly... while still being interesting, and fun to play with. I will however, attempt to implement a different level up system. It will be similar to the one in Final Fantasy 2 (yes, I've been playing FFOrigins, as you can probably tell), where individual statistics will level up, based on actions taken by the player during combat. For each stat, you will however be able to see how much experience it needs to 'go up'. To raise stats, you'll have to concentrate on actions in battle which raise that stat's experience. For example, attacking an enemy, will raise the experience of your strength stat... killing it will raise it some more. Casting magic, will raise your magic strength and MP... letting an enemy attack you, will raise your defense, and HP experience... getting hit by magic will raise your magic defense, and HP experience, and finally, attempting to run from battle will raise your agility experience. This should allow for a game which can be played in many styles... so, you can make a character that's a really strong mage, and have lots of MP to attack with spells, or you can go for a warrior type, who hits hard with a weapon. It should add that little bit of replay value... so if you want to challenge yourself, you can go through the game and concentrate only on certain stats.

Finally, I'll probably be keeping any NPCs and scripting engines down to a bare minimum... if I have time, I will tell most of the story through cutscenes that don't use the game engine, just pretty graphics for the backdrop. There are also some other things I have planned, that might be added if there is time. The biggest one, I think, is a little bit of a 'puzzle engine'... nothing complex of course, but I've always wanted to add a little crate pushing puzzle, or switch flipping puzzle. Perhaps, even have the player combine certain items to create keys for new doors... or find a neat way to get around some cleverly placed traps. Again though, this is all planned only if there is extra time.

Well, that's it. This is probably only one of two really long journal entries that I'll write. Everything during the compo, I will likely keep fairly brief, so as not to take time away from the competition itself. Once it is finished, I'll probably write a fairly decent synopsis of how things went... what I was able to accomplish, and what things I wanted to, but couldn't, and why. See you all in 48 hours! ;)

9:35pm, EST - I just finished pixelling the basic walls and floors of the castle... and I also took the very first screenshot. Right now, the edges are a little bit darker than I would've liked, so I am going to go back, and lighten them up a bit. They're almost invisible, unless your monitor is set to very high brightness... I think it would be a shame if some of the tilework wasn't visible for everyone.

Overall, I am hoping to have around 70% of the tileset complete by the end of today (...and there will be around 200 tiles, total... so I'm looking at finishing 140 or so, today)... and have a walkaround demo ready, with the map load script working as well. We'll see how far I get.

An early mockup.

11:07pm, EST - Still working on the tileset. I should probably move on to some code, especially the battle engine. As long as I have a good basic set done, I can worry about adding everything else to it later. Yes, I belive this is what I shall do. I will go have a break now, and afterwards, I will begin working on a basic map, so I can get my walkaround engine going... followed by some empty rooms, to get my map loading scripts working. Once this is all complete, I should probably begin work on the battle engine, at least get something basic with attacking and winning in... follow that by making the basic in game menu, and adding item/magic support. Once that is all done, I can go back to the tileset, and add some things to populate the rooms with, such as bed, chairs, tables, and other types of furniture.

So far so good, anyway... I think, time wise, I am doing pretty well... though since it has only been about 3 hours in, it's difficult to say for sure. Well, I'd say it's time to go have a tea, and relax for a few minutes, before diving back in.

Saturday, April 26th:

1:19am, EST - I've just finished implementing the map loading scripts. They're all soft coded of course, so I just have to add a line to each map file, and it creates a link between maps. This will help keep the code down, as well as memory requirements... since I am working within the first 640KB of DOS' conventional memory limits... but hey, I like those limits... it makes me create tighter, more efficient code.

Right now, I am going to pixel the dialog and menu engine tiles, and get to work on the in game menu. I want to make it fairly simple... and have as little different types of items as I can. There won't be any status changing type items, basically only HP and MP restorative things. However, there will be 'special' items such as keys, which will allow the player to go through the different areas of the castle.

The first in game screenshot.

2:58am, EST - I just finished coding in the main part of the in game menu... as well as the pointer that cycles through the four main menu selections. It took a bit longer than expected, mainly because I also use the main part as the status screen, which shows all the player's stats, as well as the amount of experience needed to level up each stat. This was probably the tougher part of coding the menu, the rest (mainly just magic and item display/use) shouldn't take too long... then again, I am starting to feel a bit tired (I've been at it for almost 7 hours straight, with only a couple of breaks).

I think I shall take a bit of an extended break now, then come back to it fresh. I want to get as functional a menu as I can done today, and at least a basic battle engine. If I can get this much finished today, then I should have it pretty easy for the rest of the competition.

7:24pm, EST - Wow... I couldn't get back into working on the game after my extended break, so I just packed it in for the day... a little bit behind the schedule that I had set for myself, but still not far enough behind to go into 'panic mode', heh.

Anyway, so far today, I've almost finished the in game menus... I have item/magic display working, as well as a helpful scripted item descriptor, which gives a small blurb about the item that the player is pointing to. Next up, I will make the items, and curative magic usable outside of battle, from said menu.

In game menu.

8:19pm, EST - Well, the competition has been extended by another 24 hours. Yeay! ...this should give me enough time to finish my game, as well as add a few things which I thought I wouldn't have time for. This is a good thing.

I just finished the last of the in game menus... so all that's really left there, is to display the total time played, but that's only a quick 2 minute hack job (I plan to use code from other games that I've done for this, it'll be much quicker than re-writing it from scratch). Now, it's on to the battle engine. First though, I think I will pixel up an enemy or two, as well as the background (which will just be made using the tileset, though I'll probably pass it in to psp, and add some filters)... so I have something to test the engine with.

Item effects are explained in the menu.

Sunday, April 27th:

2:06am, EST - It took some time, and some work (due to a lot of little things which needed to be done, heh)... but I've finally got a basic battle engine up and running. I've even managed to code the experience system into it. I have fought a few battles, and so far, the system looks like it'll work fairly well. At this point, the player can attack, and the enemy can attack, and the battle can be won or lost... oh yeah, the player can run, as well.

So, yeah, it's very basic at this stage (so basic, I haven't even drawn the enemy sprite yet... but it's not needed for testing right now), but there is definetly a battle system implemented now. I can probably move on to doing some more graphics work (I really should balance time spent on graphics/coding... so that I don't get sick of one or the other) right now... specifically, an enemy sprite or two, and some more tiles for the main tileset.

9:45pm, EST - Sometimes, I wish I didn't need sleep... it would make finishing this game so much easier. Anyway, I did get an enemy sprite drawn... a zombie... at a size of 64x64, and I must say, it turned out pretty well. Right now, I've been working on the treasure chest scripts. Mercifully, they're all finished. It took a bit longer than expected, but only because of one small logic error, which prevented the treasures to defaulting their opened tile after the player gets the item from them. I thought I named the check variable CurrentArea$, when it was actually CurrentMap$... of course, I was checking and eliminating every other possible problem first. Yeah... I can laugh about it now. ;)

The first battle screen with an enemy.

At any rate... next up, I should get more of the maps done. I'm going to scale the game back quite a bit, in hopes that I can meet the deadline. So, there will only be one floor (although, much bigger, with more maps now) and only one boss (the final one, of course). If all goes well, it will basically be the player, scouring the entire floor for pieces of a medallion, which he needs to open the door to the final room, where rests the last part of said medallion, as well as a nasty boss, who will try to prevent the player from gaining the last piece. Not much of a story, I know... but I hope to 'pad it out' a little with a trip through the character's mind. His reasons for wanting this medallion, and his slow, but sure, descent into insanity. Of course, it will only be text cutscenes, but something is better than nothing.

10:51pm, EST - Things seem to be going pretty quick, development wise. I've just pixelled some furniture for the tileset, so rooms look much better now, with shelves, and stands, and beds, and other neat things. I still have to make some tables and chairs. I'll try to make 18th century type chairs, with the padded backs and seats... and the tables will be gothic style, long tables. I'll make multiple sets, some with candles on them, others with food, and whatnot... just like the nightstands. I have one version which is bare, and another one which has a vase with flower sitting on it.

Monday, April 28th:

4:57am, EST - I've added more maps, and more furniture to the tilesets... including a table that I'm pretty happy with... although, I have not been able to use the table in a map yet, as the maps I've been adding so far are just hallways, and mazelike rooms.

I'm pretty sure that I won't be able to finish everything on time... but with a little luck, I will have an almost complete playable version by contest end. Worse comes to worse, and I don't, then I'll simply create a playable build, slap on a quick intro/save feature, and let it loose... it should still be fun, just for the battle system alone.

Some furniture in the castle.

6:28am, EST - Well, I finally got around to making the title screen for my game. Found a neat image of the inside of a cathedral through google's image search, then cropped a cool part of it, added some filters, and added the text. It looks nice, I think. I should probably do the intro story screen now... then the save/load feature... this way, if I don't have enough time to finish, I'll at least have a playable build, with a bit of storyline as well.

The title screen.

7:27am, EST - I can now say that the latest build of my game is officially playable. Saving and loading now works, and I finished debugging the battle system (there would be problems before when one would cancel out of an item or magic use)... so I'm mostly in the homestrech right now. Looks like there is a good chance I'll be finished (although probably without music, and some extra polish like spell effects) on time.

Opening a treasure chest.

10:21am, EST - At this point, there are still just under 10 hours left to go... unfortunately, I think I've about run out of steam. I know 10 hours is enough for me to finish... but I'm very tired, and I don't know if I could make it. I've made a playable build of the game in its current form right now... this will be the build that I submit to the compo if I can't get any more work done on the game.

Tuesday, April 29th:

7:48am, EST - This, is what I'd like to call "The Aftermath". The competition is done, and I had a blast participating, as I sincerely hope everyone else did too. So, what went right, and what went wrong? ...read on, to find out.

First, the wrong: The obvious point here, is that I was unable to complete my entry. It's a rather suprising turn of events, as I thought for sure that I would make it. I guess I basically burned out in the morning hours of Monday, and, although I stayed awake for a good 6 hours after my final journal entry, I was simply too tired to continue with the game. So, as it stands, I put the build together, made sure it was playable (and even had a story intro, and save/load features) then uploaded my entry. Well, I suppose for the next competition, I will probably have to keep most things to the simplicity of "Mattress Warrior". I guess the graphics and level up system were a bit too ambitious to fully realize in such a small time frame. I did learn a lot though.

Now, what went right: Well, the graphics, for one! I'm really pleased with how quickly I was able to create them, and how pleased I am with the final result. My biggest fear was the 64x64 enemies. As soon as I made the decision to do them that size, alarms went off in my head. I thought for sure that they would turn out really bad, or that I'd have to scale down to 32x32 anyway. I'm glad I was able to prove myself wrong. I'm also very happy with the battle and level system... especially the level system (I guess, in this respect, it can be called a character build system), as it was something I'd never tried before, and was a pretty ambitious goal for such a short time frame. Playing with it now, I'm just finding out how lucky I was with the balancing. I think the player character "levels up" at just about the right speed... and battles with monsters are really well balanced, even after some statistic improvements.

Overall, it was a rough, but fun weekend-and-a-day... and I'm glad that I've kept this little journal (spelling mistakes and all, heh) during the competition.