Arduventure (RPG)

Thanks that would be great :smiley: Have been thinking of making a simpler game in the meantime but so much other things on my mind ^^’ I’m sure when I’ll get my Kickstarter Arduboy I’ll get back to it (hope that’ll be soon).

@CalMan Thanks for pointing out, it should work now :slight_smile:


Thanks, my wife love your game!


I want to ask that I got some problem when upload the game file into my arduboy device,the error message is under below.thanks for the gmae:)

Arduino:1.6.9 (Windows 10), Board:"Arduboy

C:\Users\Window\Desktop\Arduventure\Arduventure.ino:3:21: fatal error: Arduboy.h: No such file or directory

#include <Arduboy.h>


compilation terminated.

exit status 1
Error compiling for board Arduboy.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Is this the first game you try to upload or have you successfully uploaded other ones before?

1 Like

I’ve successfully uploaded DICE_AB_v10 into my arduboy

Have you installed the Arduboy library as instructed in Step 2 of the Quick Start Guide? DICE_AB doesn’t use the Arduboy library but Arduventure does.

1 Like

thank you a lot it have been really a great game!!


Just updated the zip to make some fixes in the code (changed deprecated functions). Even though it is working it’s best to redownload the game :wink:


So I got my tracking number a few days ago and with my Arduboy arriving soon I felt like getting back to this project :smiley:

I’ll be rewriting it from scratch, adding the features of the demo one by one and optimize where possible. I’ll also have to dump it down here and there cause the demo was just a bit too ambitious ^^’

Hope to show some progress soon :slight_smile:


Seems like people would really enjoy seeing this game come to light @DSSiege11. You demo looks pretty slick. Maybe it can be procedural as all get out! Who knows, maybe… well whatever here’s a tweet for your demo : )


While optimizing the code I’m also reworking the graphics a bit :3




I’m excited to see this come to light, and to play it:)

1 Like

I’ve played the demo quite a lot and I really like it. Arduventure looks great. Would love to play a finished version one day. :slight_smile:

1 Like

Wow! I just received my Arduboy yesterday and came in looking for something to try, this demo is incredible. Simply amazing. Can’t wait to see it finish :heart_eyes:

1 Like

Thanks guys :smiley: I’ll try my best to turn this into a small but fun little rpg :slight_smile:

Btw, for those who want to try it and can’t find the link:


So I’ve been talking to @JO3RI about map compression and I’ll probably be able to make the world larger than I previously thought! I’m not sure yet if I’ll be making the map this big as I might want to add some audio too. Anyway, this is the size I’m thinking of right now:

Every rectangle is the size of the Arduboy’s screen and the black cube is the size of the playing :slight_smile: Let’s hope I can make this happen!

also: 10,000+ topic views, wow! :smiley:


That would be very cool, I was having a rummage through your old source code and trying to think of how to expand it, will be interesting to see what you both come up with as interested in (eventually) making a pseudo Rogue/Zelda like game, just need to learn C first lol

1 Like

Great minds come from the same country :wink:


This is bar none the game I’m most anticipating. RPGs are my jam

1 Like

Hey, @DSSiege11! I saw you were talking about wanting more room for your map. Well, I know of a sneaky method that actually can save you some room. Seeing as you posted about 2 days ago saying you made some progress, I think this may still help you or may help anyone else in a similar problem. Let’s take a look at the map system for Pokemon Red and Blue. (In later games, they did this differently.) I’m really going to simplify this for others reading the thread, so for your specific game, you can scale this up to have larger maps and however many tiles you need. I’m also going to ignore how you actually store the data, which can be in bytes or ints or whatever, honestly.

This is an example map in the Pokemon Red and Blue games. This map is made up of 20x16 spaces that the character can move unto.

Looking at it, you may think it’d be better to cut this map up and tile the data. (Each square is a space that the character can move to.)

In this pic, I have it sliced up and color-coded for easier viewing. Each color is its own tile. Counting the colors, you’ll notice that there are 23 different tiles. Because of that, this map data would be stored as a 320-number sequence, ranging from 1 to 23.

What Pokemon Red and Blue did to save memory is to group 4 tiles together. There’s an extra step to doing this, but let’s look at how this would be illustrated before talking about that… Notice that the map goes to 10x8.

Color-coding these tile groups, you’ll notice that there are now just 17 colors. Because of this, this map data would be stored as an 80-number sequence, ranging from 1 to 17, which would cut down on memory usage considerably.

To define these tile groups, you’ll have to have 17 different 4-number sequences, ranging from 1-23. That would mean you have 68 numbers in that definition… Together, 80 + 68 is 148, which is how many numbers in memory you would be using. Remember, storing everything on a per-tile basis (in the first example) would cause you to use 320 numbers in memory. This means you’ll have used only half of the memory as the original example if you group the tiles!

Now, if you go ahead and group the tiles into 4’s, instead of referencing the tiles when generating the map, you’ll have to reference the tile groups. This would mean that somewhere in memory, you’ll have to define what each tile group is… The more variety of of tile groups you have, the more memory that will be required to define them. This can be annoying and lead to more memory usage than its worth, but for bigger maps with less variety, the trade-off actually saves you memory. Eventually, grouping tiles together will save you so much memory that defining them can take place in the area of memory that you’ve saved. This tile grouping can be done in 2x2, or 2x1, or even 3x3 if you want. Changing the size of the groups can allow you to find the right balance between tile variety and memory.

I hope this helps!


After reading what I posted, I just wanted to point out that within each tile group of the example that I posted, collision checking would be handled the same across all 4 tiles. However, each tile could be responsible for its own collision checking within the group so that it’s not completely uniform, without losing memory.

This means that within a group, you can have areas that allow the player to roam, effectively creating fences and barriers that are more screen-conscious.

If you’d like an elaboration on this, lemme know. I figured it would be straight-forward enough for many to get from the original post, though.