Rogue
Rogue
Took a short break from Pitfall and played around more with generating random mazes of any size
I was maybe thinking of some sort of dungeon explorer similar to rogue in the 1980's. At the moment it's just generating a random maze on screen and plotting a couple of objects, it will need to be able to also generate rooms and I'm not sure if it should all fit on one screen or allow to scroll over a larger area.
Not sure what screen size I should go with either a 20 column or 40 column. Any Thoughts?
This one shows a random maze in Mode 4
And this one shows a random maze in Mode 5
I was maybe thinking of some sort of dungeon explorer similar to rogue in the 1980's. At the moment it's just generating a random maze on screen and plotting a couple of objects, it will need to be able to also generate rooms and I'm not sure if it should all fit on one screen or allow to scroll over a larger area.
Not sure what screen size I should go with either a 20 column or 40 column. Any Thoughts?
This one shows a random maze in Mode 4
And this one shows a random maze in Mode 5
Pitfall, Gridrunner, Matrix: Gridrunner 2, LaserZone, AcornViewer, AcornPad
- Cybershark
- Posts: 736
- Joined: Wed Jun 14, 2006 11:16 pm
- Contact:
Re: Rogue
I suppose a lot of it comes down to whether you wish to add scrolling or not. It would probably be unnecessary for a 40 column screen.
Obviously the higher res looks better but I think the top-down shaded 3D blocks look great in either MODE
Obviously the higher res looks better but I think the top-down shaded 3D blocks look great in either MODE
Re: Rogue
After work I knocked up a quick C# version so I can prototype stuff, and have added ability to generate several random size rooms
When I say rooms I really mean large spaces (caverns) as a room normally has just the one exit
I’ve highlighted in red the rooms that it’s created
When I say rooms I really mean large spaces (caverns) as a room normally has just the one exit
I’ve highlighted in red the rooms that it’s created
Pitfall, Gridrunner, Matrix: Gridrunner 2, LaserZone, AcornViewer, AcornPad
Re: Rogue
Bit more work done last night
Added "rooms" to 6502 code
Made dungeon size fixed at 40 x 26 in Mode 4 (leaving 6 rows at the top for stats / score etc.)
Still not sure if I'd go down this route though or a scrolling viewport and maybe a different mode, but think I'll leave it for the time being and go back to finishing Pitfall
Added "rooms" to 6502 code
Made dungeon size fixed at 40 x 26 in Mode 4 (leaving 6 rows at the top for stats / score etc.)
Still not sure if I'd go down this route though or a scrolling viewport and maybe a different mode, but think I'll leave it for the time being and go back to finishing Pitfall
Pitfall, Gridrunner, Matrix: Gridrunner 2, LaserZone, AcornViewer, AcornPad
Re: Rogue
I said I'd leave it but had to scratch an itch
Last night I converted the treasure and stairs objects to mode 1 and made the map size 20*12 instead of 20*13 which means I could fit the map into 1 page instead of going over into the 2nd page and have centred the map vertically giving 4 spare rows top and bottom
Not sure If it's looking a bit squashed though, lot's of things to think about, when I finally get around to doing some sort of game.
Last night I converted the treasure and stairs objects to mode 1 and made the map size 20*12 instead of 20*13 which means I could fit the map into 1 page instead of going over into the 2nd page and have centred the map vertically giving 4 spare rows top and bottom
Not sure If it's looking a bit squashed though, lot's of things to think about, when I finally get around to doing some sort of game.
Pitfall, Gridrunner, Matrix: Gridrunner 2, LaserZone, AcornViewer, AcornPad
Re: Rogue
Whilst I wait for bug reports on Pitfall, I had another look at this last night, still not sure what I'm going to do with it but just liked playing with random mazes
Anyway I've gone for a 19 X 13 (16x16 tiles) maze which is 38 characters by 26, which is still under the 1K for memory storage
Also added a couple of places holders for lives and armour
Anyway I've gone for a 19 X 13 (16x16 tiles) maze which is 38 characters by 26, which is still under the 1K for memory storage
Also added a couple of places holders for lives and armour
Pitfall, Gridrunner, Matrix: Gridrunner 2, LaserZone, AcornViewer, AcornPad
Re: Rogue
Very nice design! Hope this turns into a playable game!
Re: Rogue
I second that.
Have you seen "Shovel Adventure" on the Spectrum Next? Interesting maze type game that's a lot of fun to play but way above my pay grade to even consider doing something similar at this stage. Perhaps some inspiration / ideas for how this could evolve?
https://www.youtube.com/watch?v=uZ75EMWQ5nQ
There's also an old school Spectrum 128 version as well
https://www.youtube.com/watch?v=QOpsBw4XBqc
-
- Posts: 27
- Joined: Wed Oct 26, 2022 3:19 pm
- Contact:
Re: Rogue
I was thinking about this… could you use a bit for each wall position so that it takes 3x13 bytes for the whole maze and then use another 3x13 for treasure chests, hordes and play position? In other words 39 bytes per layer, in this example 156 bytes.
Edit: fried brain, bad math
Re: Rogue
It isn't the same, but I'm my micro really-x game the map is 32x56 and I store one bit per square and then calculate the edges and movement data which is one byte per square for movement and one for graphics on level start. This is because the arcade game has four maps and I wanted to include all four.
Re: Rogue
Thanks, I’d forgotten about this, after I’d gone back to finishing Pitfall
You could also ignore the outer wall (apart from the top row) as it’s always the same for this game, the reason I wasn’t too bothered about compressing the map was it generated random maps and 1K plus map generator code wasn’t to bad a trade off with having to decompress the map. Definitely if the maps weren’t randomly generated I would have compressed them
I’ve got quite a few games I started in between other projects but have never finished yet, due to time constraints (would love to retire and do this full time)
NB Also you couldn't use 1 bit for the walls as it uses the following to draw them: -
0 - blank
1 - solid wall
2 - shaded wall
You could also ignore the outer wall (apart from the top row) as it’s always the same for this game, the reason I wasn’t too bothered about compressing the map was it generated random maps and 1K plus map generator code wasn’t to bad a trade off with having to decompress the map. Definitely if the maps weren’t randomly generated I would have compressed them
I’ve got quite a few games I started in between other projects but have never finished yet, due to time constraints (would love to retire and do this full time)
NB Also you couldn't use 1 bit for the walls as it uses the following to draw them: -
0 - blank
1 - solid wall
2 - shaded wall
Pitfall, Gridrunner, Matrix: Gridrunner 2, LaserZone, AcornViewer, AcornPad
Re: Rogue
I think it would be possible to store the map as 1 bit per tile and calculate if a solid or shaded wall should be drawn
if bit = 1 then if bit below = 1 then draw solid else draw shaded
but this would mean drawing the map from bottom to top
this and ignoring the outer wall would make a great saving of memory
if bit = 1 then if bit below = 1 then draw solid else draw shaded
but this would mean drawing the map from bottom to top
this and ignoring the outer wall would make a great saving of memory
- Cybershark
- Posts: 736
- Joined: Wed Jun 14, 2006 11:16 pm
- Contact:
Re: Rogue
Yeah, it seems wasteful to dedicate a bit to something that can easily be extrapolated from surrounding walls.
Maybe excessive to create layers for each, depending on the desired numbers of such items, as there may well be other thing types to figure in - eg breakable walls, doors, keys, health, weapons, start and end positions, etc. But 2 bits would be sufficient to cater for 3 types of "wall", and then other items could be stored as separate dataAnastrophe wrote: ↑Sun Mar 17, 2024 8:11 am I was thinking about this… could you use a bit for each wall position so that it takes 3x13 bytes for the whole maze and then use another 3x13 for treasure chests, hordes and play position? In other words 39 bytes per layer, in this example 156 bytes.