Revontuli Posted December 14, 2018 Share Posted December 14, 2018 (edited) DRAGON'S DESCENT Direct your dragon through a sprawling labyrinth, hunting for treasure, power, and danger! Dragon's Descent is currently part of the Holiday Homebrew High Score Competition - here is a ROM you can use for the contest: DragonsDescent_Holiday_2019.bin Now for sale on the AtariAge Store! Instructions on how to play below... -Thousands of possible maps to explore, either randomly selected or predetermined -Eight different types of enemies -One mid boss, one final boss, one hidden boss -Powerups to increase firepower or health as you delve deeper into the labyrinth ...and an easter egg or two, of course! Here's a video of the first three levels, up to the midboss. The default mode has four more levels ending with the final boss, and other modes allow potentially thousands of different levels! This game is, among other things, an experiment in procedural maze generation for the Atari 2600 - There are a few secrets to find, so I won't reveal everything here, but I will give a basic outline of the controls and mechanics. I posted little write up of how I generated the mazes, and programmed the game in general. Many thanks to those on this board who have posted an incredible amount of useful information, as well as those who have authored the kernels and other components on which this game has been programmed. STORY Legends speak of a labyrinth created by the mind of a dreaming elder dragon. This maze is filled with the promise of wealth, power and danger-an endless length of corridors, with spectres and monsters appearing out of thin air, and strange happenings occurring the deeper one travels and survives. You are a young dragon yourself, perhaps trapped here, perhaps tempted by the wealth and power that drives your kind. Regardless, you have little choice but to find your way through the corridors and chambers of the labyrinth, finding glory, or perhaps escape... CONTROLS Joystick - Move the dragon around the labyrinth. Button - The dragon will breathe fire in the direction it is facing. SETTINGS Left Difficulty A - Game will continue indefinitely, only ending with a game over. Left Difficulty B - Game will end after you complete level 7 Right Difficulty A - You will start in a randomized maze. Right Difficulty B - Maze will be the same layout each playthrough. Game Select (Make sure right difficulty is also set to "B") - Will allow you to set the random "seed" when starting the maze. Move the joystick left/right to select the left or right seed, each can be set to a value between 1 and 255. The title screen will reflect what options the game is set to - an infinity symbol for an unending maze, and an alternating maze pattern for random mazes. HOW TO PLAY Depending on your game settings, you may find an end to the maze on the 7th level, or the maze can continue until you are defeated, trying to attain the highest score! A - The Player B - Dragonfire C - Monster D - Firepower Meter E - Score F - Health Meter G - Room exit Each level of the maze is made up of several rooms - you can leave through any exit on the boundaries of the screen you find. To make progress in the maze, find the key on each level, and then the level's exit. The exit, resembling a door with a key imprint, will only activate if you touch it while you have the key found on the same level. Upon each new level you will face more dangers but also potentially increased power and scoring! Key Exit Avoid touching walls and enemies - doing so will deplete your hit points, and eventually terminate your game! Scoring comes from collecting gems and defeating monsters. You get more points for defeating monsters in deeper levels, and a slightly higher score for each shot you use with higher fire breath power. In addition to a key and exit, each level of the labyrinth has a treasure room: This room allows you to pick one of three power ups, just wait until you see the one you want: Gem - increases your score. Heart - increases your total hit points, while completely replenishing your health. Lamp - increases the strength of your fire breath, while refilling its supply. Don't stay too long on a single level, or you may find things getting much more difficult! The deeper you explore, the more monsters, dangers, and higher scores you find... Your hit points are indicated by meter on the right, as well as the color of the dragon. The strength of your fire breath is indicated by the color of your score, as well as the size the fire itself. If your firepower ever increased, you only have a limited amount you must replenish somehow - this amount is indicated by the meter on the left. If it ever runs out, you will go back your initial, weakened fire breath. You can find non-flashing hearts and lamps from fallen enemies, which will replenish a small part of your hit points or fire breath, respectively. If you survive long enough, you may reach a maximum amount of hit points or firepower, in which case your health meters or score will be flashing. SCORING Defeating Enemies: Fiery Eye - 5 points Medusae - 10 points Dragon Head Sentry - 10 points Teleporting Masque - 20 points Janus Guardian - 25 points Ghost - 20 points Dragon - 25 points Shadow - just 1 point base, if you can even manage it. Getting rid of it might be reward enough, though... Revenant Dragon (Midboss) - 500 points Elder Dragon (Boss) - 1000 points Jeweled Dragon (a hidden beast) - 2000 points Collecting a gemstone in a treasure room will get you 500 points. Your strength of your firepower is also added to your score whenever you hit an enemy with your fire breath, so you can gain 1-6 points for every hit even if an enemy is not defeated. Defeating enemies on lower levels adds further bonuses: Level 2 - 1 point Level 3 - 2 points Level 4 - 3 points Level 5 - 4 points Level 6 - 5 points Level 7 - 10 points Level 8+ - 15 points HINTS -Find a balance between increasing your hit points and increasing your firepower - each level gives you the opportunity to do one or the other. -Gems give you large amounts of points, but your forgo an increase of power for that level - they're for those brave or foolish enough to think they can survive regardless. -The beginner mode always gives you the same maze, be sure you become familiar with the game before tackling the random mazes offered by the advanced mode. -Each enemy has a specific type of behavior, learn all of them-and learn how to counter them! -Time can be your enemy, but remember that you don't have to fight everything - pick your battles! -Despite the enticement to hurry, be patient and careful! Most situations can be escaped with a little bit of caution and forethought, and impatience has ended more games than the cruellest monster. There are many secrets to discover within the labyrinth, so I won't tell you everything here! Older builds: Another change to the door graphic - the door should be flashing with a key symbol. DragonsDescent_2019_8_15_2019.bin This older build has a changed the graphic for the exit. I even squeezed a few more bytes out so that it has "closed" and "open" graphics, depending on whether you have a key. I'm hoping this is close to the final version, so any feedback on how it plays is appreciated! DragonsDescent_2019_8_12.bin I've added four separate high scores, one for each "mode" - they should show up when you have the appropriate switches/settings applied on the title screen. I think it works properly (with caveats, for instance you can fool it by using the switches mid-game) but I would appreciate feedback! I also added an easter egg bug fix: DragonsDescent_2019_May_HiScoreTests.bin DragonsDescent_3_22_2019_Beta8.bin 3-22-2019 Another update - found a semi-exploit (really just method of scoring late game that results in boring gameplay) and adjusted things to discourage the behavior. DragonsDescent_3_19_2019_Beta7.bin 3-20-2019 Another update - no better method to find a bug or quirk in a project than to claim it's finished! The method to reach the hidden boss, while functional, had some odd loopholes and inconsistencies that I wanted to close. Fixed a thematic inconsistency involved with getting to the hidden bonus boss. DragonsDescent_3_5_2019_Beta6.bin - Font change and a few other tiny adjustments. DragonsDescent_1_10_2019_Beta5.bin - Retry random maze option (press up or down on the Game Over screen to see the "Retry Maze" screen, press button to start again), starting rooms have no enemies, score placement adjusted. DragonsDescent_12_16_2018_Beta4.bin - Maze generation fix, random seed shown when picking random level, other small fixes I might go into more details about what I did to fix the maze generation later - the short answer is that every seed -seems- to work now, without the hacky checker I had in earlier versions. I also added a -little- more time solve a given level before various "complications" arise. It can still be a little mean. I'm keeping an informal version history even as I remove the older versions - I can repost them if folks clamor for the older versions, but hopefully the bugs present in them have been addressed. 3-5-2019 - Changed to a custom font. Semi-final build. 12-16-2018 - Current public version. All attempted maps seem to be solvable, certain UI color cycling adjusted. 12-15-2018 - Tentative "fixed" beta for random mazes This version has a band-aid for the random mode bug - I'm keeping it here for the moment in case the above version has some unforseen bug or error. 12-14-2018 - Old version, only play the default mode (Left/Right switches set to "B") on this one. I've tentatively tested it on my ol' sixer as well as the Flashback Portable, and the game seems to run ok, although I would welcome any bugs/issues found if anyone else plays. I'm curious to see what people find! Updates: -You can now retry a randomly generated maze by pressing up or down on the Game Over screen - when you see words "Retry Maze," press the button to restart the game at your old starting point. -Starting rooms on a level no longer generate enemies, giving you some time to breathe or get used to the controls. -Hopefully the level generation bug is fixed - any random seed should generate a solvable level. When choosing a random level, you will be shown the seed in case you want to try the level again. -I also fixed a flashing problem to a more pleasant "pulsing" effect for max health/fire breath. DragonsDescent_2019_April_Competition.bin Edited December 20, 2019 by Revontuli 22 Quote Link to comment Share on other sites More sharing options...
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.