Ardynia - a Zelda style adventure, now available


(Matt) #61

That type of enemy was always top on my list because it’s pretty cheap to implement. Especially since the game already has a projectile. But I always ended up choosing something else since you don’t get a shield, making this style enemy possibly too annoying. Still, it’s worth a shot.


#62

a projectile shooting enemy … it’s worth a shot … nudge nudge wink wink … very punny :stuck_out_tongue:


#63

It doesn’t necessarily need to be an enemy. It could be a room trap type thing that you have to doge instead of defeat.


(Cody) #64

Cool! Downloading it now!


(Stephane C) #65

Nice game. Just finished it.


#66

Copying wiring.c and wiring_private.h from @Mr.Blinky’s optimised core:

into the ardynia/src folder instantly saved 172 bytes (using IDE 1.8.5) or 164 bytes (using IDE 1.8.7)!


(Simon) #67

Meh … Use ARDUBOY_NO_USB and save 2.5K


(Matt) #68

I just wish this didn’t make uploading a different game such a PITA :expressionless: That’s why I avoided it, I only want to go into this territory if absolutely must.


(Stephane C) #69

You can easily make it so that if someone holds a button it goes into bootloader mode in case you want to remove the USB stack.


(Josh Goebel) #70

Couldn’t we have a key to make it go into bootloader mode and STAY? Wouldn’t that just require re-flashing the first bit of FLASH with 0xFF?


#71

Yes when the first program word / 2 bytes are FFFF the bootloader will stay active. Unfortunately a sketch can’t reprogram/erase itself with stock bootloader.

And you get a key combo to enter the bootloader mode (UP+DOWN for > 1.5 seconds in latest version)


(Josh Goebel) #72

Are you 110% sure? Often you can do it - it just requires some timer hacks to jump into the bootloader code and then jump back out (using an interrupt and a little stack manipulation)… it’s quite a neat little trick. The bootloader code just needs to contain the SPM instruction anywhere (which it should).

Reference:


#73

The sketch can’t. But you could use trickery like you discribed. You could probably jump directly into the erase sketch code but I don’t want to go there.


(Josh Goebel) #74

That’s what I’m saying, it can - via the bootloader code… and it might even be simpler if the bootloader has compiled SPM into the end of a function or a smaller piece of code you could just CALL. You setup everything in “userspace” then just call into the bootloader for the SPM, which can only run from bootloader space. Then a return (or some awesome interrupt tricks) gets you back. Once you have it working it’d 100% reliable since the timing is precise.

I wonder if reflashing the beginning of flash over and over would really have any effect on the long-term durability (in practical terms).


Having a sketch reflash portions of itself (feasibility)
(Miloslav Číž) #75

Allow me to applaud you for a great game:

  • Nice, readable, commented source code: check.
  • License: check.
  • Informative readme: check.
  • Own website: check.
  • Nice documentation for modders: check.
  • Using existing tools such as Tiled and scripting languages: check.

I’d just add screenshots to the readme and you can make this an example Arduboy project.


(Boti Kis) #76

We need more positive feedback like this :clap::top:
(i want it too :joy:)


#77

This game is great. One of my favorite Arduboy games, right up there with Arduventure, Dark and Under, Circuit Dude, Mystic Balloon, and the like. I beat it in probably about 3 hours. I’ve got a friend playing it now. Good job on this!


(Matt) #78

Thanks! Glad you like it.

New Version 1.0.1

This version fixes a bug related to secret rooms:


#79

…any hints on this particular room?


#80

@uXe try boomerang stunts