BydoEmpire Posted December 31, 2020 Share Posted December 31, 2020 (edited) Story You were the Arch Wizard’s sole apprentice, learning the craft and early in your studies of the arcane arts. The mysteries of magic were just beginning to crystalize in your mind. On a dark night filled with restless dreams you were suddenly awakened by your master. You will never forget the evil gleam in his eyes as he bound you with magic, dragged you from your chamber and cast you into the dungeon. You rise from the ground, determined to stop his evil plans. Use your magic bolt spell to survive until you can acquire more powerful magic. Gather riches and magical artifacts. Eventually, if you survive long enough, you may face your former master. You may even become a legend, but first you must escape… ...the Wizard’s Dungeon! Summary Wizard's Dungeon combines the maze-based shooting gameplay of Berzerk with the random dungeons, items, and treasure hunting of D&D Cloudy Mountain. Features Three difficulty levels Explore a huge, randomly-generated dungeon Learn four unique spells, each with four levels of power Collect magical artifacts and priceless treasures Battle more than a dozen types of monsters Continue from the last level you've reached How to Play Find the Stairs in each maze to progress to the next level of the dungeon. Search for a way out, all the while collecting weapons, treasures and magical weapons. On the Main Menu, use L/R to select difficulty level Easy Normal Hard If you've died and are back on the main menu, use U/D to switch between choosing difficulty, or selecting New Game or Continue. Continuing will restart you on the last level you reached, with all your magical artifacts and weapons. Move your character with the joystick Button 1 fires your selected weapon Button 2 selects the next available weapon Pause or Hold Button1 then press Button2 to bring up the map screen You start with only the Magic Bolt spell. Hidden in each maze are scrolls containing additional spells: Psychic Blast Lightning Fireball Find Scrolls for each spell to level up. Find all the gold, gems and other treasures hidden in each maze... Find all the Magic Items to increase your powers. Each magic item will give you abilities, but you have to play to discover what they are. Potions refill health. Fully clearing a room of enemies will often give you a potion for your efforts. Finding the Map will highlight rooms with gravestones and stairs when you go to the map screen. The Key will open Chests, which contain treasures or potions If you get killed, you turn into a ghost. Your health turns into a 30 second timer. You have to find a Gravestone before time runs out or your game is over (it basically just starts over). If you get your ghost to a gravestone, you get revived and and continue on. While you're a ghost you can't use weapons, but the enemies can't touch you either. Just find that gravestone as fast as you can! Rooms with special items have Gates on the exits, locking you in the room for ~10 seconds. They do not reappear after you've gotten the item, but be careful as there might be more dangerous monsters guarding those items! If you make it far enough, you may even face your former master. Do you have what it takes to defeat him? Thank You! Available in the Atari Age Store here: https://atariage.com/store/index.php?l=product_detail&p=1263 All proceeds go directly to Atari Age! --- Original Post from December 2020 --- Quote I started this a couple years ago, but then didn't look at the code for 2 years. It's amazing what a week off of work will do, as well as some role changes at work that makes it important for me to refresh my engineering mindset. So I picked the project back up. I took advantage of the last couple days to make progress on this, and it's gone much faster than I expected. In the last 3 days I added: multiple enemies, scoring and health, enemies don't go through walls, moving room-to-room, 8x8 'world map', and a bunch of other stuff I probably forgot. It's been great fun. This is the most code I've written in probably 10 years! Obviously a long ways from "done," and all of the graphics are placeholder (you'll probably recognize a bunch of "borrowed" sprites), but at this point since it's basically playable I figured I'd share the early WIP. I have grand visions, but of course we'll see what real life turns that into. I'm testing with MAME, I tried briefly in js7800 and it works, but I noticed some of the screen-to-screen movement seemed busted. button 0 = shoot button 1 = switch weapon Just to test parts of code, there's a lot of placeholder stuff that might need some explaining: touch an enemy and lose a point of health, I've never gotten down to 0, but nothing currently happens anyways. My guess is it wraps to 255. I have a cool idea for this the weapons are currently all arrows, but do 1,2,3,4 points of damage when select. I expect to have you find weapons or spells along the way before they're selectable. enemies health depends which row in the map they're on (the map is an 8x8 grid of rooms) --- Edit --- Most recent .a78 and manual attached (2021-11-11) Also attaching where I picked this back up from in December of 2020 (build from October 2018, but I didn't touch it for 2 years) wd-2018-10-27.bas.a78 wizd_211111.bas.a78 Edited January 5, 2022 by BydoEmpire 19 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/ Share on other sites More sharing options...
+ZeroPage Homebrew Posted December 31, 2020 Share Posted December 31, 2020 Looks and plays great! The enemies remind me a bit of Realm of Impossibility, a game I played a ton on my C64. Looking forward to seeing this develop. - James 5 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4712183 Share on other sites More sharing options...
BydoEmpire Posted December 31, 2020 Author Share Posted December 31, 2020 (edited) Thanks for checking it out! I'm going for a combination of Gateway to Apshai, Berzerk and Robotron... we'll see what happens. I should have mentioned in my post, but I wouldn't have gotten this far without the incredibly supportive 7800 homebrew community - randomterrain's great documentation, the forum's quick and detailed replies, everyone sharing their source freely. Thanks! Quote Looks and plays great! The enemies remind me a bit of Realm of Impossibility, a game I played a ton on my C64. Looking forward to seeing this develop. - James That's a great game! Edited December 31, 2020 by BydoEmpire 7 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4712501 Share on other sites More sharing options...
SlidellMan Posted December 31, 2020 Share Posted December 31, 2020 What you have done so far has a pretty solid foundation, and I can confirm that it works in BupSystem. If you decide to put music into it, may I suggest something slow, ominous, and unnerving? 2 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4712724 Share on other sites More sharing options...
BydoEmpire Posted January 7, 2021 Author Share Posted January 7, 2021 Added Recently: - four different weapons, each with different properties - one of them was the sword, and doing a non-projectile took a couple days to get right - a (hopefully) cool mechanic for when you die - some minor tweaks like screen shakes when you get hit Next Milestone: - random maze generation so it's a real maze, not just a box of open rooms - clean up some of the death mechanics, not "hacked in" for testing On the Backlog: - real graphics - sound (slow an ominous is definitely the route - I'm thinking pretty minimal during gameplay, like Jaws or Asteroids) - more enemy types - treasures - difficulty ramp and multiple mazes - tweaks and polish - handle game states like menu, end game, etc 6 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4718572 Share on other sites More sharing options...
BydoEmpire Posted January 12, 2021 Author Share Posted January 12, 2021 (edited) The game play hasn't changed much at all, so not a lot of of noticeable improvement from the player's perspective; but under the hood a lot changed so I figured I'd share an update. Additions: - Got random maze generation working, but still needs tweaking. Only 7 different interior layouts (kind of like Berzerk), but I will add a lot more. - Added a boatload of debugging code to track down issues w/ maze generation. That's probably 50% of the code I've written in the last week... - Added "ghost mode" but I had to disable for now until I can properly. If you die, you have limited time to find one of the graves hidden in the maze. If you reach it before time expires, you can continue. If not, game over. - Some tweaks to weapons Next up - clean up interiors of rooms and tweak maze generation - get "ghost mode" working for real wizarddungeon_wip.bas.a78 Edited January 12, 2021 by BydoEmpire 6 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4723011 Share on other sites More sharing options...
BydoEmpire Posted January 19, 2021 Author Share Posted January 19, 2021 (edited) Made some good progress today: - updated graphics - still programmer art, though ? - you now have to find weapons before you can use them (arrow, sword, fireball) - potions restore health, gold and gems award points - ghost mode now works (if you die, find a gravestone before time runs out or it's game over) - added mummies as a second enemy type (collisions with them aren't great) There are stairs to the next level, but they don't do anything yet fantasy.bas.a78 Edited January 19, 2021 by BydoEmpire 5 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729024 Share on other sites More sharing options...
+ZeroPage Homebrew Posted January 19, 2021 Share Posted January 19, 2021 55 minutes ago, BydoEmpire said: Made some good progress today: - updated graphics - still programmer art, though ? - you now have to find weapons before you can use them (arrow, sword, fireball) - potions restore health, gold and gems award points - ghost mode now works (if you die, find a gravestone before time runs out or it's game over) - added mummies as a second enemy type (collisions with them aren't great) There are stairs to the next level, but they don't do anything yet Nice update, it's really starting to come together now! I just played it in JS7800, walked all the way to the right then down one screen and it turned into something that looks like bad tracking on a VCR. I tried it again and it did the same thing so you should be able to check it out yourself. - James 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729059 Share on other sites More sharing options...
Trebor Posted January 19, 2021 Share Posted January 19, 2021 So here's the deal with the latest build. Confirmed, indeed under JS7800 it does crash. However, JS7800 is less accurate to console behavior than A7800 or BupSystem, neither of which does the game crash. Most importantly, it has not crashed under real hardware. I uploaded to the MCP DevCart and it plays fine. However, there is an issue with the testing. Under JS7800 - every time it's played, it starts with the same board and progresses with the same board order. Under A7800 - every time it's played, it starts with the same board and progresses with the same board order. Under BupSystem - every time it's played, it starts with the same board and progresses with the same board order. For all three though, the start board and consequently board order is different for each emulator. Under the real hardware (AT84 Serial), every time the game is (re)started the start board and subsequent board order always changes. So at this juncture, it is hard to determine if the crash under JS7800 is legit or not, as it very well may happen if played with the board order presented under that emulator; however, I have not been able to replicate (yet) the JS7800 board order under real console hardware. Out of time tonight, will give it another shot tomorrow. 1 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729142 Share on other sites More sharing options...
BydoEmpire Posted January 19, 2021 Author Share Posted January 19, 2021 6 hours ago, Trebor said: So here's the deal with the latest build. Confirmed, indeed under JS7800 it does crash. However, JS7800 is less accurate to console behavior than A7800 or BupSystem, neither of which does the game crash. Most importantly, it has not crashed under real hardware. I uploaded to the MCP DevCart and it plays fine. However, there is an issue with the testing. Under JS7800 - every time it's played, it starts with the same board and progresses with the same board order. Under A7800 - every time it's played, it starts with the same board and progresses with the same board order. Under BupSystem - every time it's played, it starts with the same board and progresses with the same board order. For all three though, the start board and consequently board order is different for each emulator. Under the real hardware (AT84 Serial), every time the game is (re)started the start board and subsequent board order always changes. So at this juncture, it is hard to determine if the crash under JS7800 is legit or not, as it very well may happen if played with the board order presented under that emulator; however, I have not been able to replicate (yet) the JS7800 board order under real console hardware. Out of time tonight, will give it another shot tomorrow. Thanks for the debug info about the crash @ZeroPage Homebrew and @Trebor , that's really helpful. I appreciate it. I knew it always started on the same board (in MAME anyways), but it's actually been helpful for me to reproduce other issues so I didn't look further into it. Without investigating I'm guessing it's due to the way rand is implemented. Typically I'd seed with something more random like "how many frames until the player presses start" or something. Curious that it works on real hardware. On MAME I can go all the way through the maze but it could certainly be some recent change I didn't test thoroughly enough Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729284 Share on other sites More sharing options...
BydoEmpire Posted January 19, 2021 Author Share Posted January 19, 2021 Yep, the same .a78 crashes in JS7800 for me as well, but not in MAME - exactly as described. I'll turn on some debug stuff and test that. Interesting. My go to debug method has been to print debug codes and values on the screen, but that might be hard in this case. Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729813 Share on other sites More sharing options...
Trebor Posted January 20, 2021 Share Posted January 20, 2021 I did try again to replicate the start room and subsequent room order under real hardware. At best, after dozens of tries, I was able to start with the same room layout, but a different item in the room and the following board to the right was completely different than what is experienced under JS7800. As a result, unfortunately, I still can't verify or deny if that particular start room and room order would fail under real console hardware as it does under JS7800. Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729927 Share on other sites More sharing options...
BydoEmpire Posted January 20, 2021 Author Share Posted January 20, 2021 Thanks Trebor. I tested a few debug options in JS7800. The crash appears to be related to quirkiness of moving off the lower part of the screen. Here's a build where the second button just cycles through all the rooms (0-63: 1st row, 2nd row, 3rd row, etc). They all work when you're in the room, but moving south requires you to be on the rightmost section of the opening in JS7800, where that's not the case in MAME. In MAME you can go through the entire opening (as expected). When you do move south to a new room in JS7800, it (usually) crashes. Moving n/e/w seems fine. Interesting. fantasy.bas.a78 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4729941 Share on other sites More sharing options...
raz0red Posted January 24, 2021 Share Posted January 24, 2021 On 1/19/2021 at 5:24 PM, Trebor said: I did try again to replicate the start room and subsequent room order under real hardware. At best, after dozens of tries, I was able to start with the same room layout, but a different item in the room and the following board to the right was completely different than what is experienced under JS7800. As a result, unfortunately, I still can't verify or deny if that particular start room and room order would fail under real console hardware as it does under JS7800. Just as an FYI, I tried that particular build under the in development version of JS7800, and it did not crash for me (but, I only tried once). I would be curious to know if people are still able to replicate the issue with the current development version. Here is a link if you want to give it a try. Wizard's Dungeon on JS7800 (In development) Thanks, Chris Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4733777 Share on other sites More sharing options...
Trebor Posted January 24, 2021 Share Posted January 24, 2021 11 hours ago, raz0red said: I would be curious to know if people are still able to replicate the issue with the current development version. I could not. There is something quirky overall with the exit from the bottom of the screen behavior - not JS7800 specific though - @BydoEmpire ... When the Wizard leaves from the top of the screen, the screen changes before his head/hood touches the top exit - which works fine. Exiting from the bottom though, literally the Wizard sprite can dangle pass the bottom part of the visible screen, so that part of the Wizard's robe cannot be seen, yet the screen does not change. The quirky part is if the Wizard, in that position with part of the sprite not in sight, his body/robe cut off from the bottom, takes a hit from an enemy, although the screen doesn't change, the entire screen shifts a few scanlines downwards. 2 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4733877 Share on other sites More sharing options...
raz0red Posted January 24, 2021 Share Posted January 24, 2021 1 hour ago, Trebor said: I could not. Great to hear! Thanks a lot for testing it out. Thanks again, Chris 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4733931 Share on other sites More sharing options...
BydoEmpire Posted January 25, 2021 Author Share Posted January 25, 2021 I spent all weekend trying to fix a weird crash with enemy movement. I don't know that I actually fixed the bug, but I ripped out a bunch of code, rewrote a bunch, and fixed some other things... and now it seems to work. I hate that I don't know if I *actually* fixed it because I don't know what exactly was wrong, but it works. Movement up and down through rooms seems pretty reliable in both MAME and js7800 now, too. Trebor, thanks for the bug info above. I haven't had a chance to look into that yet but it may be fixed given my up/down room movement changes. Also added: - Mummies now go after the player if you get too close - I need to make them more aggressive, but the mechanics are there - Mummies occasionally spawn diamonds when you kill them. - New room types and set up infrastructure for a new room interior system - Various movement and scoring tweaks Long and frustrating weekend... sometimes it's like that. fantasy.bas.a78 4 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4734802 Share on other sites More sharing options...
BydoEmpire Posted January 27, 2021 Author Share Posted January 27, 2021 (edited) A few more changes - Mummies are much more aggressive when you get close - Limit # of monsters per room so they don't spawn forever - Reaching the stairs now takes you to a new, more difficult level! (level # is in the upper right) - reworked tileset gfx under the hood to be cleaner wizarddungeon_wip.bas.a78 It's coming together as an actual, playable game now... though it's not really fun yet. Edited January 27, 2021 by BydoEmpire 6 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4736747 Share on other sites More sharing options...
TrekMD Posted January 27, 2021 Share Posted January 27, 2021 I missed this last month. Looks quite nice! 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4736748 Share on other sites More sharing options...
+Muddyfunster Posted January 27, 2021 Share Posted January 27, 2021 This is coming along really nicely. Can't wait to see more 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4736750 Share on other sites More sharing options...
BydoEmpire Posted January 31, 2021 Author Share Posted January 31, 2021 (edited) Weekly update - revamped enemy data structure under the hood, added new AI & collision parameters - not a lot of noticeable difference yet, though, just trying to get things working with the new code - I did introduce a bug w/ mummies - sometimes I've seen them just take off in a random direction and move really fast... not sure what's up with that though, it's like they're at chase velocity, but nowhere near the player and not moving towards the player. Weird. - new levels have different palettes, I have a better understanding of how that works now - some new interior wall layouts - added "tentacle" enemy type and more interesting mummy sprites - scoring and control tweaks - added a logo to the background, and reorganized the layout of tiles behind the scenes Next up on my radar - more interior room wall layouts - different tiles for different levels - new enemy sprites May or may not post an update later today, depends how it goes w/ the family today. I need to get my eyes off of screens for a bit. PS - I made some good progress this morning. Probably due to listening to Tony Martin-era Black Sabbath while programming. I had a flash back moment to sitting in my basement, listening to Sabbath's first album while playing Pool of Radiance on the c64. One of those impactful little life moments that stuck with me for some reason. wizarddungeon_wip.bas.a78 Edited January 31, 2021 by BydoEmpire 4 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4740832 Share on other sites More sharing options...
BydoEmpire Posted February 1, 2021 Author Share Posted February 1, 2021 Fixed the mummy bug (and probably caused some other problems with enemies acting like the little alien spiders) Tentacles spawn in random places instead of clogging up in a few areas Fixed bullet/enemy collision although it's still too generous. The code is cleaner and collisions more reliable. wizarddungeon_wip.bas.a78 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4741398 Share on other sites More sharing options...
+Muddyfunster Posted February 1, 2021 Share Posted February 1, 2021 19 hours ago, BydoEmpire said: Probably due to listening to Tony Martin-era Black Sabbath while programming I'm more of a classical listener when programming (quite partial to Vivaldi or Handel). Recently started listening to some Prokofiev which is a bit different. Also partial to a bit of Enya On the new build, are the mummies and tentacles invincible? I don't think I managed to kill one yet ! 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4741558 Share on other sites More sharing options...
BydoEmpire Posted February 1, 2021 Author Share Posted February 1, 2021 4 minutes ago, Muddyfunster said: I'm more of a classical listener when programming (quite partial to Vivaldi or Handel). Recently started listening to some Prokofiev which is a bit different. Also partial to a bit of Enya On the new build, are the mummies and tentacles invincible? I don't think I managed to kill one yet ! When I used to do more professional programming, the Conan the Barbarian soundtrack was good too, but honestly silence is best for me if I really have to concentrate and think. The mummies take ~15 hits of the magic and tentacles take ~20. The arrows, sword and fireball do a lot more damage per hit that what you start with. This needs a lot of tuning, though. When I start adding more enemies I'm going to save some of them to later dungeon levels. The game is fundamentally at a crossroads of "it it a shooting game" or "is it a maze game." I have to decide pretty soon. 2 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4741562 Share on other sites More sharing options...
+Muddyfunster Posted February 1, 2021 Share Posted February 1, 2021 Got it 1 Quote Link to comment https://forums.atariage.com/topic/315252-wip-wizards-dungeon/#findComment-4741563 Share on other sites More sharing options...
Recommended Posts
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.