AGameAWeek - 3DS

Discussion in '3DS - Homebrew Development and Emulators' started by Jayenkai, Apr 14, 2018.

  1. Jayenkai
    OP

    Jayenkai Makes Games

    Member
    259
    45
    Dec 25, 2007
    United Kingdom
    Bolton, England
    @Shubshub has been nagging me for ages to hop onto the 3DS Homebrew scene.
    @Another World is always banging on about it on Twitter.
    @spinal_cord says I'm late to the party, and.. well.. they're all right.

    Better late than never, I suppose!

    -=-=-

    Over the past few weeks, I've been rewriting chunks of my AGameAWeek C++ Framework so that it can be used to compile projects for the 3DS, and after mountains of tweaking and poking and prodding, I'm finally starting to see a fairly decent result.
    Right now I'm battling with memory limitations, and trying to figure out the fastest way to draw oodles of stuff on the screen, and will then need to work on audio, but as of about an hour ago, I was finally able to get a nice little test game up and running on the system.



    Things to ignore in the above video.
    1. My inability to play the game well using just one hand.
    2. The sound of the washing machine doing a full-spin.
    3. The sounds of my mother hammering together a small set of shelves!

    Things that need to be fixed.
    1. I have no idea why the font is so weirdly squished together. Something's up with the kerning, and I need to look into it.
    2. There should be a background, but my buffer code hasn't been integrated, yet.
    3. There's no audio, unless you count the hammering and the washing machine. These sounds will not be in the final game!

    Things to be happy about.
    1. That's a mostly-working game! :D
    2. That's a normal everyday AGameAWeek game, so any and all future AGameAWeek games will hopefully be just as portable to 3DS. :D
    3. Coming Soon - AGameAWeek!!! :D

    -=-=-

    What is AGameAWeek

    Over the past .. far too many years, I've been developing AGameAWeek.
    For the most part, I try my best to stick to a schedule of one game each week, although when busy or resting or any number of other excuses, I don't always achieve that goal.
    Since August 2008 I've created over 300 games under the AGameAWeek name, ranging from obscure little platformers, to crazy space shooters, bizarre puzzle games, and more.

    With each passing game, I'm learning more and more, and getting faster at what I'm able to achieve within such a short timeframe.
    Whilst I might still occasionally putter out "Generic snake clone of the week", there are other times when I can make a 300 stage Picross clone, or a 1000 level dungeon crawler, or a sadistically difficult 80 level Sokoban-styled puzzler.

    All games so far are available at AGameAWeek.com. There are many to browser through for Windows, a bunch for HTML5, a selection of Original DS Homebrew, some for Mac, Linux and AndroidTV, as well as a few iOS game, too. Soon there will be 3DS, too!
    Hopefully you can join me for the ride.

    More : Soon!
     
  2. Shubshub

    Shubshub The Shubinator

    Member
    919
    489
    Oct 16, 2009
    New Zealand
    The dark part of your house
    Yayyyy Cant wait!
     
  3. Another World

    Another World Emulate the Planet!

    Former Staff
    10,511
    1,704
    Jan 3, 2008
    Colombia
    From Where???
    hi jay. i am so happy to see this post. what's in store?? a 3ds retro raider with a mini arcade game that plays a plat dude adventure? oh god, i hope so!

    it's nice to see you interested in the 3ds.

    cheers!
    -another world
     
  4. Jayenkai
    OP

    Jayenkai Makes Games

    Member
    259
    45
    Dec 25, 2007
    United Kingdom
    Bolton, England
    Taking baby steps, right now. I seem to have quite a knack for adding random commands which the emulator handles without a beat, but the hardware throws an almighty crash at!
    Having to learn not to overstep certain boundaries. It's been a long time since I had to do memory management!!

    I’ve still to figure out how I’m doing audio, and additionally what I’m going to be doing for the bottom screen, but steps are being taken and the hopefully all should be good to go, soon.

    As for what games. Well, this is literally my new standard AGameAWeek engine, now. I’ve decided to scrap any and all modern languages, and go for a bog standard c++ engine, so that (hopefully) any and all future games should work on all possible targets.
    Or, at least, that’s the plan anyway...
    Who knows how well it'll go down!
     
  5. Joom

    Joom  ❤❤❤

    Member
    4,631
    3,214
    Jan 8, 2016
    United States
    The 3DS will now be the console with the most homebrew ever.
     
  6. Jayenkai
    OP

    Jayenkai Makes Games

    Member
    259
    45
    Dec 25, 2007
    United Kingdom
    Bolton, England
    Not yet it won’t!
    Still battling with memory complications. I originally planned to load my desktop sized art assets into memory, scale them down, and then free the larger assets, but apparently the 3DS doesn’t like all the loading and freeing!! Instead, I’m goi;g to have to do it all by hand.
    Grrr!

    But I’m getting there. Slowly but surely.
     
  7. Joel16

    Joel16 Ils ne passeront pas

    Member
    535
    1,075
    May 8, 2011
    United States
    Doesn't concern you.
    Sorry to burst your bubble but probably nothing's going to beat the psp homebrew scene :d
     
  8. Jayenkai
    OP

    Jayenkai Makes Games

    Member
    259
    45
    Dec 25, 2007
    United Kingdom
    Bolton, England
    Made some fairly significant progress, today. I’m still getting crashes when quitting, but I’m also able to play all my current test engines on the 3DS, without significant issues, which is nice.
    Still todo.. save files or scores, and then maybe figuring out what I’m doing with audio.. Not sure if OGG streaming will be doable!! But, hey, I might as well try!

    So, yeah, things are definitely getting organised, and with any luck I might be releasing the first test game by the end of the month.
    Or at least, that’s currently my target.
    I imagine everything will go horribly wrong once I try to add audio into the mix!!!



    Oh, and then doing the whole 2nd screen stuff, and figuring out the best way to do 3D'y..
     
    Last edited by Jayenkai, Apr 17, 2018 - Reason: I KAN HAS GRAMMAR
    PypeBros likes this.
  9. Jayenkai
    OP

    Jayenkai Makes Games

    Member
    259
    45
    Dec 25, 2007
    United Kingdom
    Bolton, England
    I tried out Flappadiddle-Doo again, today, and it was very very broken!!

    -=-=-

    The tweaks I've been doing to the 3DS part of the framework have left it in tatters.
    The switch to smaller 3DS specific spritesheets, smaller logos and other things had resulted in it being mostly a black screen when booted up.

    So, I spent an hour or so rejigging the spritesheets, tweaking minor bits of code. I'll need to go further in and actually redraw most of the bird sprites, as they're all a little gnatty, after the lazy quick scaling that I did.
    But otherwise it ended up working on the 3DS reasonably well.
    Except for 2 things.
    1. Still no bloomin' audio.
    but more importantly..
    2. The game was suffering from MAJOR slowdown!

    The last time I had a Flappadiddle test running, I hadn't yet added primitive-drawing, so most of the particles, all of the trail, the wave at the bottom of the screen.. That was a LOT of drawing that the system simply wasn't doing, and so it wasn't really an issue that it was done using Immediate drawing calls.

    But now it had a whole boatload more things to draw, and it wasn't very happy doing it all!

    So, I took the time to rejig the drawing code.
    I flipped the simple toggle I'd left at the top of the code to switch drawing from Immediate back to VBO-based drawing routines.

    I'd initially ignored these "better" functions because spritesheet switching wasn't working right, but over the past month (*checks* Was that only a week ago!?!) I've learned a fair deal about doing 3DS Homebrew, and now it's all working exactly as it oughta.

    As such, the game now just has one of those two flaws remaining..
    .. It's still no bloomin' audio!!



    It also doesn't do saves, yet, but hopefully that won't be as complicated as trying to get the audio to work.
    .. Maybe..

    But it's working, and it's nice and silky smooth, and it plays absolutely great!
    :D
     
    Last edited by Jayenkai, Apr 20, 2018 at 9:09 PM - Reason: Timeline Alteration!
Loading...