Jump to content
IGNORED

Dragon's Descent - Action/Roguelike for the 7800 (ported from the 2600)


Recommended Posts

Dragon's Descent is now available in the AtariAge Store!

https://atariage.com/store/index.php?l=product_detail&p=1260

 
I'm currently porting I've ported a version of my Atari 2600 Roguelike, Dragon's Descent, to the Atari 7800!

 

The latest test build can be found here:
***MAJOR SCORING REVISION*** - Hard Mode now has its own set of leaderboards, removing the 70000 point "bonus."  Infinite mode doesn't affect what leaderboard you're on, only combinations of Random and Hard modes.
 
DragonsDescent_1_7_2021.bas.a78 - High Score graphics glitch fixed
DragonsDescent_1_7_2021.bas.bin - binary version of above
 
DragonsDescent_12_16_2020.bas.bin -binary version of above
 
DragonsDescent_3_28_2020.bas.bin - binary version of above
 

 

 

 
CONTROLS
  
Joystick - Move the dragon around the labyrinth.  The dragon is flies through the maze, and has momentum - keep that in mind!
 
Button - The dragon will breathe fire in the direction it is facing, left or right.
  
 
SETTINGS
 
You can change the settings by choosing the options on the title screen.  If the text is gold, the setting is "on."  If the text is blue, the setting is "off."
 
Infinite Maze Mode: Game will continue indefinitely, only ending with a game over.  If turned off, the game will end after you complete level 7
  
Random Maze Mode:  You will start in a randomized maze.  If turned off, the maze will be the same layout each playthrough.

 

Music: This option on the title screen toggles music on/off

 

Hard Mode:   If turned on, walls will harm you if touched.  If turned off, the walls are harmless.  "Hard Mode" is the same mode as the 2600 version of the game.

 
Maze Select: 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 levels are procedurally generated, but are always the same progression, and the layout can be mapped.

 

DragonsDescentNewSettings.thumb.png.8fba92d1ed5aacbf0661a650f37a6729.png

 

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!
  
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!
 
Avoid touching walls and enemies - doing so will deplete your hit points, and eventually end 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 stronger fire breath.
   
In addition to a key and exit, each level of the labyrinth has a treasure room. Treasure rooms allow 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...
 
You hit points are shown next to the heart icon at the bottom of the screen. Your game will end when if the hit points reach zero.
  
The strength of your fire breath is indicated by the color and size of the flame. If you collect a flashing lamp from the treasure room, it will increase in power but you will only have a limited amount, shown at the bottom of the screen next to the flame icon. If this supply 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 or score will be flashing.

  

gallery_64916_2201_235163.png

 

[EDIT: Older posts]

 

--------------
 
DragonsDescent_2_18_2020.bas.a78 - "Reset" will reboot game from title screen, start a new game with existing parameters if used during gameplay.  "Select" will return user to title screen if pressed during gameplay.
DragonsDescent_2_18_2020.bas.bin - binary version of above 
 
 
Earlier build(s) here: DragonsDescent_6_14_2019.a78

 

This version fixes a background color bug. I also found MAME rendered the background a little dark, so I tried brightening the background tiles. Let me know if you feel this is too dark/light!

 

Older versions:

 

 

Dragon's Descent has you explore countless mazes filled with monsters, treasure, and power - How long can you survive, and how powerful can you get, as you seek the masters of this endless labyrinth?

 

Here's a preview with the first three levels - and the game has much more to explore, fight and find!
 
[EDIT: Original post text]

 

I'm still updating the graphics (the backgrounds are the last major element I need to complete) but I wanted to post a picture or two to compare, and share little bit of my experience in porting the game.

 

Here's a screenshot from the 7800 version compared to the 2600 version (which you can find at http://atariage.com/forums/topic/286017-dragons-descent-rogueliteaction-game/ )

 

gallery_64916_2201_305399.pnggallery_64916_2201_818142.png

 
Here are a few more new screenshots as I update the background tiles, compared to the old playfield graphics on the 2600:
 
 gallery_64916_2201_27655.png
 

 gallery_64916_2201_8403.png

 

gallery_64916_2201_39495.png

 

 

Whew! On the one hand this was easier than I feared it would be, and worked as well as I hoped. The basic logic of the game didn't really need to be touched (it's 99% Basic) - as long as it didn't touch the graphics/collision detection.

 

What took the longest was integrating/updating the new graphics - I actually find the system pretty fun to use, although there was a little learning curve, as with anything. I also realized that I designed the 2600 version of the game to take advantage of a lot of the older machine's quirks and limitations (limited sprites, good but limited collision detection, built-in mirroring, etc.), limitations that the 7800 often directly addresses. This actually made things more complicated than if I had decided to make the game for the 7800 first.

 

I went from a pretty big Atari 2600 game (16k) to a very small 7800 game (32k) - mechanically it's a near-identical game, but after updating the graphics, incorporating the character/tile system, adding text to menus (hey, there's space/expectation for text now!) and updating the collision systems, the extra 16k filled up pretty quickly!

 

The one thing I'm possibly looking to add is music - I have about 200-400k left as I look at the possibility of adding music, and fix some lingering menu bugs - The Basic music tracker included is very impressive, and would even sorta fit in the space available, but doesn't seem to play nice with the existing method I'm using to handle sound. I might see how far I can get with a more limited/customized method of storing/playing music - I know the TIA isn't the most melodious of chips, and music is not one of my creative strengths, but it's something I've been playing with regardless.

 

I plan on posting updates here as I get the game releasable. It's perfectly playable at the moment, but I still have some old graphics and menus that need updating. I might post a few questions as I continue, but I've worked through a lot of unknowns so far - it's been a fun experience, and the 7800 is a pretty fun platform to work with - thanks to everyone involved with developing/supporting 7800 Basic!

 

Edited by Revontuli
  • Like 26

Looks cool so far. Is there a reason you are trying to keep it under 32K?

 

I'm entertaining the possibility of (eventually) getting this on a physical cartridge, and the AtariAge store puts a limit of 32k for 7800 games (I think I know why, and I hope the tiny header added to 7800 binaries doesn't complicate things). I know there are other methods of getting/making physical carts, but I've used the store to get custom 2600 cartridges before, and have had a good (and easy!) experience before.

 

The ported version of game itself actually fits nicely in 32k - The fit is tight, sure, but with a bit of optimizing I think I have the space I need - I don't find myself lamenting "If I only had another 16k!" All the sprites and level tiles fit in one graphics block, which is convenient. The potential of additional graphics, content, etc. would require quite a bit of restructuring, even before taking into account bank switching. While I don't have a lot of space left, I think I have enough for some TIA-based music (whether I can get a tune that isn't ear-splitting is another issue, one that more bytes won't necessary solve). I suppose the first thing I'd look at with an additional ROM space would be incorporating the High Score save system, but I've no experience working with that system, and I'm not too familiar with its physical hardware/interface.

 

All that said, I'm using this game as a way to learn about the 7800, and I've a few ideas for future games - ones that might take advantage of expanded ROM space - now that I have a better idea of how the platform works. Dragon's Descent was very much informed by my understanding of how the 2600 worked, and while I think it works great on the 7800, I would have designed it differently had I started on the 7800 - Having more ROM, along with increased graphical capabilities, certainly expands the possibilities!

  • Like 1

 

I'm entertaining the possibility of (eventually) getting this on a physical cartridge, and the AtariAge store puts a limit of 32k for 7800 games

 

I don't recall ever hearing this before, I know some of the cartridges in the AtariAge store are larger than 32K. Did you talk to Al about this?

 

Mitch

I don't recall ever hearing this before, I know some of the cartridges in the AtariAge store are larger than 32K. Did you talk to Al about this?

 

I'll admit I haven't talked with Al yet (I'm still compiling materials, testing, etc. even for my 2600 version) but this is on the AtariAge store site:

 

We can now produce single cartridges of any 32K (or smaller) Atari 7800 binary you send to us, complete with a custom, glossy, die-cut label. You simply send us the binary you want programmed, along with the label artwork you'd like us to print, and we'll create your custom, labeled cartridge.

 

I haven't looked into it too deeply yet - It's a bridge I'm planning to cross eventually, so to speak.

 

For Dragon's Descent 32K has been a nice target (although I certainly won't complain if it turns out making a 1-bank 48K cartridge is trivial) - I have a few project ideas that could certainly benefit from larger ROM sizes, but right now I don't want to distract myself from getting this current game done :).

 

I'll try to get a playable version up soon (although not this weekend) - I'm having fun with sprite and tile work, and even playing with TIA sounds, although I'm still debating if I want to subject folks to whatever music I come up with. Don't worry - if music does end up in the game it already has an "off" setting programmed in!

Edited by Revontuli
  • Like 2

For Dragon's Descent 32K has been a nice target (although I certainly won't complain if it turns out making a 1-bank 48K cartridge is trivial) - I have a few project ideas that could certainly benefit from larger ROM sizes, but right now I don't want to distract myself from getting this current game done :).

 

You do what you feel is best and makes you happy. Just don't allow a 32K set limit be a barrier to that happiness either. ;)

 

Astro Blaster, b*nQ, FailSafe, Frenzy, Santa Simon, Scramble, and T:ME Salvo are all 48K titles sold in the store. There are titles in the store with ROM sizes larger than that (I.E. Serpentine and Bentley Bear's Crystal Quest are 128K and 144K, respectively).

 

Best of luck to you, and thank you for sharing your development progress! :)

I'm entertaining the possibility of (eventually) getting this on a physical cartridge, and the AtariAge store puts a limit of 32k for 7800 games (I think I know why, and I hope the tiny header added to 7800 binaries doesn't complicate things). I know there are other methods of getting/making physical carts, but I've used the store to get custom 2600 cartridges before, and have had a good (and easy!) experience before.

 

I can make games well above 32K. You can do 48K games without bankswitching, and I have boards that can go above that using bankswitching (for instance, Bentley Bear's Crystal Quest is 144K). There are several 48K games currently in the store (Scramble, Dungeon Stalker, b*nQ, Astro Blaster, Frenzy, and T:ME Salvo).

 

..Al

  • Like 2

I added a few new screenshots/comparisons to the original post - I have a roughly finalized design for the rest of the graphics, and am happy to find I have enough space in the graphics block to accommodate my designs.

 

Not game upload just yet - I've found the first version uploaded is almost always the one with the most downloads, so I want to make sure I have it in a state that makes a good impression! I have the graphics worked out in broad strokes and I'm doing another revision or two on them, once that's done I just need to update the title and ending screens, and possibly a noise somewhat resembling music. As much as I make fun, I've heard some pretty good tracks with the TIA, but music is not one of my fields of focus (I'm currently putting my hopes into TIA voices #6 for bass and #12 for melody, fading each treble note in and out).

 

I'm thinking about what I'd do with another 16k if I wanted to go with a full single bank - I'd look at how the high score saving system works, possibly add some more music tracks. With another graphics block or two I might make more detailed title and ending screens. This is a little like perfectly organizing your apartment and then realizing you have an attached airplane hangar you didn't know about :). At least if I need to do some major bug fixes, I don't think I'll have to worry about byte limit! As for expanding the gameplay itself, this project was about porting an existing game, and expanding the game content use multiple banks and graphics blocks, while possible, would require a lot of reorganizing and is something I'd rather do for my next project.

 

I'm curious to see how this plays for other people, but I'm hoping the performance holds up - It seems to be running fine on my emulator. The most 16x16 pixel sprites you'll likely encounter per row is 8 (1 player + 2 player shots + 4 enemy sprites making up a boss + 1 enemy shot), which fits to the game requirements perfectly. Adding one more sprite breaks the camel's back, so to speak, and causes dramatic slowdown, but this all seems like it's within the specs, to my understanding. This 8 sprite limit doesn't take into account the Score/Status bar characters - I'm drawing a lot of those (including some "blackout" sprites for the bottom exit), and might be able to optimize how I'm updating score/stats if it turns out a lot of action in the lower part of the screen causes trouble.

 

Thanks to everyone for their feedback and support - I'll try and get the game itself uploaded soon!

Edited by Revontuli
  • Like 2

[EDIT:] here are a few new screenshots as I update the background tiles, compared to the old playfield graphics on the 2600:

sml_gallery_64916_2201_27655.png
sml_gallery_64916_2201_39495.png
sml_gallery_64916_2201_8403.png

 

Those screens are tight, love the new environs. Nicely done. :cool::thumbsup:

Edited by NostAlgae37
  • Like 3

Getting closer. I'm looking at the built-in high score support -I got a blank project able to display the high score lists, but implementing it in my existing game is proving to be tricky.

 

Even as I'm typing this I'm figuring stuff out, but have a few questions...

 

-The game used to freeze on startup even if I just added the line "set hssupport $1234" with no commands that would require the library. After adding "adjustvisible 0 12" or "adjustvisible 0 11" (which I think just means the whole screen, right? I'm using 16 pixel zones) the high score table appears but -then- freezes. No color cycling, the the screen seems to be locked. I'm wondering is there's memory that both me and the hssupport are both using. Regardless, any advice folks might have is welcome!

 

-Minor mid-post update: I -once- got the high score to sorta work doing a gosub routine and handling the high score like this:

 

__HandleHighScore
restorescreen
drawhiscores attract
drawscreen
return
This worked ok (the high score showed for my defined 1-2 seconds, then went back to the game), but the color palettes needed to be reset. In trying to fix that, the game has gone back to freezing on the high score screen, and I'm 99% sure I got the code back to where it was before. It now freezes again when it gets to the high score screen. This, combined with the fact that I added a (redundant?) adjustvisible when I didn't have one before, combined with this makes me wonder if I'm using memory I shouldn't or set up something wrong.

 

Also, the command is drawhiscores, right? The documentation I've found in places gives it without the plural, and that got me stuck for a while...

 

Apart from seeing how far I get with the modules, I'm getting the title screen and other non-gameplay-specific graphics updated. The extra ROM space going to 48k let me make a tile collision system a bit more complicated but a bit more flexible. With the added space I might mess with the sound some more as well.

 

Here's a further screenshot comparison:

 

2600to7800DragonsDescentCompare5

[EDIT] OK - this code -seems- to be working.
__HandleHighScore
drawscreen
restorescreen
drawhiscores attract
drawscreen
goto __TitleScreenStart
I added another drawscreen beforehand. This still feels a little (ok, very) kludgy. I've only been able to find a little but on how the hssupport module plays with the rest of the 7800Basic systems, so any advice would still be appreciated. Plus, I'm worried this still might break without much or any further coding. I'll work on getting some more of the setting adjusted, see if that helps.
[EDIT EDIT] Adding set hsgameranks seems to crash sometimes - I reduced the ranks from 5 to 2 and it works again. This all seems like I'm coding with some problem I'm not seeing...I'll try and move forward more carefully, or at least deliberately. Changing some other variables like gamedifficulty also tend to crash the game - It'd be nice to have the game cycle through each of the four modes (normal, random, infinite, randomly infinite), but the code seems very fragile at this point, in places I can't easily see.
Edited by Revontuli

I'm thinking you may have run out of the space reserved for 7800basic, but it's just a guess without source code. Is there any mention of that in the compile output?

 

Worst case, shoot me a pm with the project zipped up, and I can look it over.

I'm thinking you may have run out of the space reserved for 7800basic, but it's just a guess without source code. Is there any mention of that in the compile output?

 

Here's the compile info - I just went from 32k to 48k, so I don't think space would be a big deal in and of itself:

----
7800basic compilation complete.
User-defined 7800.asm found in current directory
7248 bytes of ROM space left in the main area.
124 bytes of ROM space left in DMA hole 0.
4096 bytes of ROM space left in DMA hole 1.
hiscore assembly: 1726 bytes
$1880 to $1fff used as zone memory, allowing 31 display objects per zone.
246 bytes left in the 7800basic reserved area.
Complete.
Read $C000 bytes of cartridge data.
Cartridge hash area is from $F000 to $FFFF.
Cartridge signature for 'C:\Users\Revontuli\Documents\Projects\DragonsDescent7800\DragonsDescent48k.bas.bin' appears to be empty.
Encrypting... 00 01 success!
----
I've tried putting the hiscore stuff inline as well.
The code has been behaving erratically - The high score screen can crash, only for me to adjust a non-related variable, recompile and suddenly have it work. I quit for the night yesterday, only for me to come back this afternoon and have it work again - although every time I try to adjust or expand I run into a crashing high score table.
Could there a shared/conflicting memory space? My current starting setup is something like this:
set doublewide on
set tv ntsc
set plotvalueonscreen on
set hssupport $1234
adjustvisible 0 12
set hsseconds 4
set hsscoresize 6
set hscolorbase $FF
set hsdifficultytext 'seven levels' 'random' 'infinite' 'randomly infinite'
set hsgameranks 5000 'elder wyrm' 2000 'wyrm' 1000 'dragon' 0 'hatchling'
set romsize 48k
set optimization inlinerand
displaymode 160A
Here is a screenshot of the high score name entry in progress - sometimes the score itself is garbled, missing a digit or replacing one with another character. I'm also not sure why the 2-4-6-8 are on the left hand side.

hiscorebug

What's kind of odd is that I am making slow progress, but I'm not sure why things are working (which can be as unsettling as not knowing why things aren't working :) )
Thanks!

Are you finding that the garbled scores are generally the last things in the code that get plotted? Does it only garble during specific cases, such as during specific difficulty levels/etc? Haven't worked with highscore cart stuff in 7800basic yet so I'm not entirely sure what can be changed with it. I'm assuming it's essentially doing plotchars in the background for everything though which can cause some issues if you have too many on the go.

  • Like 1

Are you running a "topscreenroutine"? If so, maybe it's stepping on the hiscore routine.

 

I put all of those same headers on a test program, and the high score table comes up fine... without looking at your source, this is really just guesswork.

 

I'm assuming it's essentially doing plotchars in the background for everything though which can cause some issues if you have too many on the go.

It does basically do a bunch of plotchars, but it clears the screen first, so no chance of running out of DMA cycles, or anything like that.

Update - I have the beginnings of music! Much of my time this week was redoing the sfx/music (my old system works ok, but the sfx module is pretty much better in every way, especially if you have a bit more ROM play with).
I still want to work on it, but I adopted e a tune or two that the TIA can sort of pull off, I think. I still have "music" on toggle, in case players disagree!
I'm close to actually releasing a playable test version, but the high score module is still giving me trouble. I have the dynamics (showing high scores when idle, game over->highscore entry->new game menus) roughly working, and it isn't crashing anymore (I'm still not sure why, although I took more care in clearing and redrawing the screen as I transitioned back and forth between the game and high score menu).
Here's a screenshot of a typical issue:

HiScoreBug2

 

The numerals seem to be shifted or otherwise showing incorrectly. I'm using the hiscore.png image that Salvo came with, so I don't -think- it's a graphic issue.

So I have a few questions that might help me track down/fix the problem:
-What are the numbers in the leftmost column? Placements (1st-5th?) Right now they usually read 2-4-6-8-,
-What might be causing the wrong chars in both the scores and leaderboard? Are the values stored somewhere in memory that might be defined as RAM/ROM that I'm accessing elsewhere? I'm using variables a-z (with i, k and t for the music module), var0-var99 and $2200 for my 20x12 byte screen/tile data.
-Related to the above question, does the hiscore support module use the score0-9 values? I'm still using score0 from my old system, so there might be some conflict there.
-Currently, switching the difficulty level seems to erase the previous leaderboard scores on the old difficulty level-is this expected behavior? (I'm not emulating the various save options at this point).
-Another observation - The sfx_highscore dynamic does not seem to be working as described-It sounds like the high score table useds the last played sfx for selecting initials, as well as a "you got a high score!" fanfare. For some reason the module isn't recognizing sfx_highscore as such, so I play it before calling "drawhiscores player1"
I'm aiming to have a playable release for this weekend - I can take out the high score module stuff if I can't get it working, and rely on the old system for the moment. Here's a screenshot of the title screen in its current state:

7800 TitleScreen

 

Thanks to all for their help and support - Even in the middle of debugging, I'm impressed with the 7800basic system and the 7800 itself - it's been a lot of fun to work with!
Edited by Revontuli
  • Like 2

So I have a few questions that might help me track down/fix the problem:

 

-What are the numbers in the leftmost column? Placements (1st-5th?) Right now they usually read 2-4-6-8-,

The numbers are placement, and usually they show as "1 2 3 4 5". The lack of a 5th line is due to the hscolorbase you chose landing on black for last line. Try $fe or less instead.

 

-What might be causing the wrong chars in both the scores and leaderboard? Are the values stored somewhere in memory that might be defined as RAM/ROM that I'm accessing elsewhere? I'm using variables a-z (with i, k and t for the music module), var0-var99 and $2200 for my 20x12 byte screen/tile data.

7800basic doesn't use the user memory areas. Without looking at your source, this is just unproductive guesswork. Possibly you're switching between doublewide characters being on and off, or something else invalid? I'm not sure, but could probably find out if I could reproduce the issue, which I've tried.

 

 

-Related to the above question, does the hiscore support module use the score0-9 values? I'm still using score0 from my old system, so there might be some conflict there.

It uses score0 for "drawhiscore single" or "drawhiscore player", and score1 for "drawhiscore player2"

 

-Currently, switching the difficulty level seems to erase the previous leaderboard scores on the old difficulty level-is this expected behavior? (I'm not emulating the various save options at this point).

Expected behavior. With a save device every difficulty would get it's own table, but with no place to save it just gets cleared when difficulty changes. If you want to override it, you can use an independent difficulty variable in your game, and always use the same difficulty for hiscores.

 

-Another observation - The sfx_highscore dynamic does not seem to be working as described-It sounds like the high score table useds the last played sfx for selecting initials, as well as a "you got a high score!" fanfare. For some reason the module isn't recognizing sfx_highscore as such, so I play it before calling "drawhiscores player1"

I'll try to reproduce this when I get a chance.
  • Like 1

Thanks to RevEng's help, I think I have the high score stuff working. I'm testing on multiple emulators now, and found some of the color cycling code I made needs to be redone to show up properly on the more accurate emulators. Plus, I still need to finalize the Game Over/ending screens. A bit of a delay, but I'll try and post more soon!

  • Like 1

I finally have a build ready! Check the original post or here: DragonsDescent_6_13_2019.a78

 

There's still a lot of be refined and adjusted, but let me know what you think!

 

A few notes - I have not tested this -at all- on the 7800 proper, just the ProSystem and MAME64 a7800 emulators, so I'm curious how the game will perform for other folks. At the moment I don't have access to a real 7800, let alone a custom cart or adapter, although I'm certainly looking into the former and curious as to options on the latter.

 

I think I have the hiscore system working, but I don't have a save module to test, so I'm not sure how well it will work in the wild. Currently scores are only kept in memory for the current "difficulty" - in other words, the player settings to use random and/or infinite mazes - if the player has no external save options.

 

A thank you for RevEng's help and everyone else who has worked/helped with the 7800Basic software, documentation, and sample code!

 

  • Like 2

...I have not tested this -at all- on the 7800 proper, just the ProSystem and MAME64 a7800 emulators, so I'm curious how the game will perform for other folks...

 

 

It's coming along very nicely. On a real 7800, the background is showing up as white or light gray instead of black though.

 

post-9364-0-25007700-1560479652.jpg

 

It's coming along very nicely. On a real 7800, the background is showing up as white or light gray instead of black though.

 

attachicon.gifIMG_0739_sm.jpg

 

Hmm...the emulators default to black, and looking through some sample code it looks like there's a background color setting - this version might work better:

 

DragonsDescent_6_13_2019_bkgrnd.a78

 

Thanks for trying it out!

Oh wow... this makes me wish I didn't sell my 7800...

 

Now that I've played it a bit (using an emulator)... I've noticed the direction controls are really sensitive and I keep flying into walls. It may be because I'm using it with an arcade joystick so I'll try it with a dpad.

Edited by DragonGrafx-16

I made it to level 2! :D

 

Looks very polished so far, and the procedural levels work great! I do have a few minor suggestions. Feel free to ignore if you're "done" on this project.

 

I agree with Walter, that the placement of enemies sometimes gives you a cheap death when entering a room. Maybe grab another random number if the enemy spawn X+Y is too close to the player.

 

The control is a bit unforgiving, a bit like Berzerk On Ice. I think that may be a mistake, but the authors of Bubbles and Joust probably disagree, so take it for what it's worth.

 

I think it could use an active game enemy that's bigger than just one screen. The lock and keys entice you that you're in a larger world (unlike Berzerk) but the enemies don't really support that.

 

Anyway, fantastic work so far! :thumbsup:

  • Like 2

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...