[WIP] Maze of Doom - 1 bit FPS

(cyril guichard) #1

Hello everyone!

@igvina and I have been quietly working for the past month on a new Arduboy game.
Thematically, the game is inspired by the likes of Flash Gordon, John Carter, etc…
Gameplay-wise, we are obviously looking at classics like Wolfenstein and Doom - obviously, there are some limitiations but we are trying to work our way around it!

The engine and prototype are in a good place.

So far, we are planning to have (if we can optimize everything fine)

  • 2 control schemes to choose from
  • 4 types of enemies
  • 2 weapons
  • 3 or 4 levels
    Looking forward to sharing some progress soon!..

FPS development
Dark&Under - A Dungeon Crawler
(fred ) #2

Awesome looking game. Can’t wait to try it.

(Nicole Birgel) #3

:open_mouth: looks beautiful! Will put that on my „wanted“ list!

(Scott R) #4

Wow some more awesomeness from Garage Collective.

jump Virginia jump

(Stephane C) #5

Looking great. I am curious of seeing it in motion! Sounds great so far!

(Scott R) #6

That artwork is screaming Space Ace at me.


Wow, gorgeous, crisp and clean delineations. Looking forward to it!

(Nicole Birgel) #8

Yes, that’s it, thanks i only thought it reminded me of something…

(Simon) #9

Wow … this looks really good.

I am keen to see what you are using for encoding your mazes. @igvina probably has his own method but the maze encoding / decoding and maze designer from Dark and Under could be re-purposed here.

I am interested in the rendering code that you will be using. I see in the last image there is a ‘minor’ wall offset and it has got me thinking about how granular the maze is (not based on a grid) and how you might encode that.

(Ignacio Viña) #10

I’m not using any encoding of the mazes yet, I will need to work on this soon. Mazes are based on regular grids, I fear that real-time maze decoding would be too slow for the rendering engine (raycasting). Anyway, I will check the Dark & Under encoding/decoding code. Thanks!

(Simon) #11

Shoot me a PM if you cannot decipher my crappy code … Actually, its pretty well coded (for me), although @pharap will probably say otherwise as he has worked with it!

(Pharap) #12

Most importantly, when you come to publish the code, would you like to be invited to the Garage-Collective github group?

(Assuming the code is going to be published, of course.)

In which case, if floats don’t work out, remember that FixedPoints is a thing (and comes with a decent explanation of how they work).

I’ve seen worse.

Regardless of the state of the code,
I think a written explanation would be easier (preferably with diagrams).

(Simon) #13

I’ll take that as a back-handed compliment.

(Pharap) #14

Let’s be honest, I’m never going to say code that doesn’t use Allman style and typed constants looks pretty.
I’d call *insert piece of really impressive code* ugly if it used a K&R variant or used defines like constants.
It’s functional though, and it does its job well.

(Simon) #15

Getting off topic … but you might notice if / when you look at the code you helped me with I have changed it all back to Stroustrup style (a K&R variant).

(cyril guichard) #16

Thanks for the support everyone! Here’s a gif capture of pre-alpha gameplay:


(Pharap) #17

Was this version done in processing or is that using Arduboy code?

(cyril guichard) #18

it’s a capture of our current prototype using project ABE emulator

(Stephane C) #19

Really nice, so that means that it runs even smoother on the actual Arduboy then. Great job so far!
Was holding B to strafe has been something you wanted to do? I know you probably use it for something else but that would make the movement a lot easier i bet.

(cyril guichard) #20

Yes! we currently have 2 control layouts: the default one maps the strafe on the left/right buttons, and rotation on left/right+B - the other mode should be rotation on left/right and strafe on left/right+B. Definitely something we will need to playtest before making a commitment, though…