Rogue-like ascii based on Arduboy


To @Vampirics.

I agree. Is the size of the character at most 10 × 10? “Snakes are too small to notice if you do not look good” This may be interesting.

(Josh Goebel) #262


  • Is heartbeat?
  • hhall hallucination?
  • hh some measure of food?

#263 is number of elapsed turns. Every time you step forward, it will increase by 1.

Yes, hero.hhall is time until hallucination is over.
Yes, hero.hh is hero’s hunger level. 1200 was a mistake. It decreases by 1 each step. Decrease faster when a hero wears a ring.

(Josh Goebel) #264

Thanks. @BlueMax What is RMAX * 2 supposed to mean? if we’re always multiplying it by two how come it’s just now two times larger to begin with?

  for (int i = 0; i < hasRing(10) * 2; i++) {

What does searching multiple times acocomplish? It seems like search’s effects wouldn’t chagne no matter how many times it was run unless I"m missing something.

(Josh Goebel) #265

@Pharap Is the compiler unable to optimize code like “hero.turns % 2 == 0”? I replaced it with a bit-operation (& 1 == 0) and and saved like 32 bytes (per operation). I would have thought it would figure it out since it’s a multiple of two but perhaps that only works with divide and it’s not connecting the modulus operation with the equality operation?

     Weapon* weapon = (Weapon*)getEquipped(ItemType::weapon);
      if (weapon) {
        if (random(2) == 0) {
        } else {

Is there a better way of writing something like this? getEquipped deals with items, hence the cast to *Weapon, which I understand… but bless shoudl be able to generically bless any item/weapon/whatever… is there a way to tell the compiled it an auto-typecast without me having to do it by hand? I’m having to typecast it back to item since bless wants to work with items.

(Josh Goebel) #266

Why’d we remove the background colors and stuff? Was it to save space?

(Stephane C) #267

Yes exactly, he removed something in the font.h about the text color or invert. So didn’t made sense to add White background if you can’t invert the text. That’s why when herohit or monsterhit, it blinks now instead of inverting.

I will probably try to make the LED blink red when hero is hit and blue when he hit a monster and green when hero gains life lol

(Josh Goebel) #268

We gotta add that stuff back. :slight_smile: We’re attacking all the wrong places. inversion is cool. I just replaced SpritesB with drawSlowBitmap and saved 320 bytes. inversion should be pretty trivial and won’t take up much additional space if you built it on top of simpler primitives. (since drawing speed isn’t super critical here)

(Stephane C) #269

Well I just added blinking light when successfully being hit and when we hit successfully, to me that does the job even better. But yeah I am sure there’s so e more clever ways to save space without removing features.

(Josh Goebel) #270

I just like the look of the pages with inverted titlebars.

(Stephane C) #271

Yeah me too. What I really want is a status screen that really looks like a pop-up window with a border all around and maybe have a smaller pop-up for when you use an item as well. Right now it’s a bit too much like text over other text…


Sorry, @Dreamer3.

Have you tried the test play? Now, when I compile the source in GitHub, I feel that the behavior is wrong. Is there something wrong with it?


Hello everyone!
I also found a problem during the test play. In addition, it seems to be more “Rogue” and added a bland feeling. I will release a new version. Version is 1.5.3.

Rogue153.hex.pdf (77.6 KB)

This version is:

  • [FIX] The attack by poison, the hero becomes too weak.
  • [SYS] It is obvious that “Inventry” is displayed with the “Inventry” button.
  • [SYS] It is obvious that “Status” is displayed with the “Status” button.

Due to lack of test play, I am constantly making minor modifications later. I’m sorry. I think that it will be OK soon. :sweat_smile:

(Josh Goebel) #274

Not sure. I think I broke the potion/wand table. I have a fix for it. I’ll make a new PR, but it’s got a bunch of other stuff. Or I could break that out special.

Sighs: Your latest release kind of undoes everything you merged in from my previous PR. :frowning: I give up. I don’t think I can contribute if we don’t have some sane use of github and proper PRs / respect for contributions. I know you’re new but I put a lot of hard work into that PR and it included a bunch of stuff and then I see that you reverted almost all of it - with no real explanation. Either on purpose or because you don’t really know how to use github. Sadly I’m not sure the distinction is helpful though obviously it’d be better to think there was no intent.


(Josh Goebel) #275

For anyone interested my ongoing work branch is here:

@BlueMax If you’re serious about wanting contributions I’d watch some YoutTube videos or read up a bit and learn how to use/collaborate on Github w/Git. Github is about collaborating and building on top of other peoples work. Learning about branching and PRs and that type of workflow would be good.


Really sorry, @Dreamer3.
I do not seem qualified to use GitHub. I will not use it until I can understand how to use GitHub firmly.

(Pharap) #277

I’m sorry, but this seems rather rude and unfair.

Your implications that @BlueMax’s use of GitHub is not ‘sane’ and that he may have intentionally undone your contributions are not helpful, they’re merely inflammatory.

Quite early on in this very thread it was made apparent that @BlueMax had never used GitHub before,
he specifically joined GitHub part way into this project
(on the 24th of January, roughly 4 days after the thread began),
and since then has been trying to learn as he goes,
with help from both the few Japanese language tutorials available and with direction from myself.

In addition, it is evident that @BlueMax is quite happy distributing his code as .zip files,
he had however volunteered to use GitHub, a tool he is not familiar with,
at the request of his userbase (myself included).

Git and GitHub can both be incredibly daunting tools given their complexity,
so I think agreeing to try to use them in order to please his userbase despite his inexperience is quite a noble thing to do.
I think he should be commended for that effort, not chastised for any mistakes or misunderstandings.

A little more tolerence for @BlueMax’s inexperience would certainly not go amiss here.

I’m sorry if any of this seems harsh, but the fact is people come here to have fun,
not to have their character brought into question or to have their inexperience criticised.


Hello everyone!
I encountered a strange phenomenon during the test play. I do not see it many times, but I will release a new version. The new version is 1.5.4.

Rogue154.hex.pdf (77.6 KB)

This version uses “remove USB stack” technique. When you upload a new game, you need to hold down the DOWN button while ARDUBOY is starting up.

This version is:

  • [FIX] If hero throw a chargeless wand, it will not disappear from the “inventry”.*1
  • [FIX] If hero put “scroll of scare” on the stairs, the game can not proceed.
  • [SYS] When hero’s backpack are full, she(or he) do not know what is falling.*2

*1 I do not know whether this problem can be solved. If you find a strange phenomenon, please tell me.

*2 I thought it was troublesome, so I did this. Perhaps, heroes are full of luggage, but they should know something that is falling down.

To @Vampirics.
Sorry for the late reply. I wanted to deliver a new version to you. Then I will have the source here as well. (33.8 KB)


To @Pharap.

Really sorry. I was taught lots of things, but I could not do it well. When I have more time, I understand what I learned from my teacher and I will be able to use it. I have failed…

(Stephane C) #280

Thank you for the updated source!

Please don’t be so hard on yourself. You are doing your best to please everyone and your are learning.

I will have to try your latest version. But in the last version I had, on the highscore screen the first score is always taken and with a bug number. I did the reset score and it did reset, but after playing and adding a new score, the first score on the highscore screen is still a really big number. Any idea what’s happening there?