Dark&Under - A Dungeon Crawler

Dark-And-Under.ino is the main file.

So did you extract it out to a directory? Is it C:\Users\charl\Downloads\Dark-And-Under-2.0.0\Dark-And-Under-2.0.0\Dark-And-Under\ on purpose?

No the first two was when I extracted it but the third was because Dark-And-Under.ino says it need to be inside a sketch folder named “Dark-And-Under”

What version of the Arduino IDE are you using?

It says im using 1.8.3

Hang on … the main ino file got moved. is the src directory under the final ‘Dark-And-Under’ directory?

The title bar says ‘Dark-And_under-2.0.0’ whereas your error says

**C:\Users\charl\Downloads\Dark-And-Under-2.0.0\Dark-And-Under-2.0.0\Dark-And-Under\Dark-And-Under.ino:1:35: fatal error: src/utils/Arduboy2Ext.h: No such file or directory

What happened to the \Dark-And-Under\ directory? Have you changed things since compiling the code originally?

Anyhow, why don’t you rename the directory that you have shown in the screen shot to ‘Dark-And-Under’. Close the IDE and open the IDE again by right-clicking on the ‘Dark-And-Under.ino’ file and selecting ‘Open with Arduino’.

Version 1.8.3 should be fine however I was using the latest, Version 1.8.4.

Awesome got it to upload thanks for the help! :smiley:

Good stuff. What was the issue?

I don’t really know I did what you said and renamed the file and also updated my IDE to 1.8.5

Pretty sure it wasn’t the IDE version. Anyhow, enjoy the game.

Yeah thanks again for helping me out! :smiley:

For future reference:

The problem here is that the Arduino IDE requires the parent directory to have the same name as the main .ino file, but when you get a copy of source code from github the parent directory will always be suffixed with the branch or version you took it from (in this case -2.0.0).

To try to rectify this the Arduino IDE asks to move the .ino file into a new folder, but doing so breaks the paths when there’s more than one file, which is why the compiler couldn’t find that file.

If you take a game from github in future, make sure to rename the parent folder after unzipping so it matches the name of the main into. (In this case, renaming the folder Dark-And-Under-2.0.0 to Dark-And-Under so it matches Dark-And-Under.ino.)

This is why some people decide to put the game files into their own folder, like I did with Easter Panic and like @Dreamer2345 did with Rogue Boy.

So now you know for the next time you get some source code from github.

1 Like

I always let the ide create the required folder, close ide, drag n drop everything else to the new folder then double click the main .ino again to reopen the Ide.

It sounds long winded but can save you ages in the long run if you suffer from typo’s.

I find renaming easier since it’s usually just a case of ‘highlight suffix -> delete’. If you’re worried about spelling you can just copy the name of the .ino file, making sure not to include the .ino prefix.

1 Like

Dark & Under Level Designer

For those that have not seen the accompanying level editor, here is a quick advertisement.

You can download the source code here > https://github.com/Garage-Collective/Dark-And-Under-Level-Editor
Or get a Windows Installer here > https://github.com/Garage-Collective/Dark-And-Under-Level-Editor/tree/master/distributable

Copy the files into a temporary directory and run the setup.exe.

Building a new set of dungeons is simple:

Step 1: Define tiles


Step 2: Create levels


Step 3: Set enemy and player defaults


Step 4: Fix any errors


Step 5: Save the resultant configuration (File \ Save) as MapData in the \src\Levels subdirectory of the game.

Step 6: Play!


• Maximum number of tiles: 20
• Maximum number of levels: 10
• Maximum level size: 15 x 15 tiles / 225 x 225 cells.
• Enemies per level: 30
• Items per level: 30
• Doors per level: 8 (one must be a door to the next level)
• Memory. Even though you can create 10 maximum-sized, fully-populated levels using the designer, you will quickly run out of memory when you attempt to compile the application.

Design recommendations:

• Small dungeons can be just as challenging as large ones.
• Use ‘self-locking’ doors to promote inventory management. If there are a number of keys or potions on one side of a self-locking door, the player may need to pick up items and move them to the other side of the door without using all of the keys.

Hints and Tricks

• The outside perimeter of a maze will always be solid regardless of the tile design.
• Interior gates and level doors can be placed over the top of an existing wall or in a blank spot.
• Level doors should be placed in an alcove with walls adjacent to the left and right (the game didn’t have enough space for the many images it takes to render the door both open and closed and various distances).
• Maps are always rectangular. If you add a tile that increases the width or height of the map, the ‘blank’ locations in the new row or column will be defaulted to Tile 0.
• Allowing users to save a game adds additional code and reduces the space available for dungeons. At 958 bytes it’s a killer! I may revisit the code looking for space savings …
• Allowing the user to see a large map helps them navigate large dungeons. However, it ass 298 bytes.

Challenge to You!

Build a good set of dungeons and we will publish them with the game. Your name will be up in lights and you will receive the thanks and adulation of the team and the public!


I’d say you can’t advertise it enough. All the effort you’ve put into it’s looking great!

1 Like

Thanks … I am really keen to see some dungeons created by others!


I’ve made it about half way into the second level. But then, I haven’t tried that hard to beat it. I just love tinkering around with it - super fun! Still amazes me that I can play games 10x better than the ones from the late ‘70s on a device so tiny! :stuck_out_tongue_winking_eye:


I second that “Thank You” - this is an amazing game and an excellent team that put this together! I’ve been amazed by the supporting Arduboy community since the Kickstarter days on IRC and beyond! Kudos!