Welcome to the personal blog of plasturion

  • plasturion

    2048 DS

    So when I realized there's no 2048 homebrew for DS, i wanted to make one,
    since i didn't make any gaming project lately, and this one is pretty nice to implement.

    Yes i had a fun, with testing and improving code I learned something new again.
    So you know how it goes, you have some concept, but sometimes it doesn't work so
    you need to test and find out what's wrong and correct or change concept.

    One of this thing is why some tiles stops during slide animation,
    so changing condition's checking direction and repeating move at least three times solved that issue.
    And another one - it's better not to use power function from math library, Why?
    I decided that tile variable store a bit number instead of value, so adding points is realized by power function.
    So if you want to use pow(2,x) when you cast integer on float and don't use ceil function...
    well you loose one point while taking some moves.
    Using a bit rotation is best for that, and computer was designed for counting in that way.
    So if you want count 2^x remember to use:
    score += 1 << field[x][y+1];
    istead of:
    score += int(pow(2,field[x][y+1]));
    which is wasting of cpu usage and without ceil function counts faulty.
    Tile reduction works different than original but i leave it. It means it's possible to reduce 4 tiles to one instead of 2.
    - added colors
    - added restore last move
    - guard variable and game over
    - improved RNG for a new tile
    - seperated grid and tile layer (fixed screen flickering)
    - added toogle colors / black&white switch (R button)
    - added reset (L button)
    - pause works in funny way, it's taken from my old arkasnake game so I can say it's useful here :]
    - minor tweaks and fix like scoring and text positioning
    - added winner screen
    - fixed stupid captions for 14bit(16K) tile and 15bit(32K) tile
    - added saving top score on a card (libfat), tested on R4 and works ok.

    rev1: 2048.png rev2: 2048.gif
    rev3(current and impossible tileset): 2048r3.png
    2048 DS - The Power of Future - Use your future calendar today!

    Attached Files:

    James_, VinsCool, CORE and 2 others like this.
  • plasturion

    second one

    So yeah,
    First homebrew for DS was simple and playable, but I wanted to make something that at least use graphic hardware.
    So I looked again to a temp's programming for NDS tutorial and tried to check what NFlib is able to.
    Then I looked for graphic resources to make things easier...
    and I found very beutiful free assets on itch.io ("SunnyLand Forest" by Ansimuz - I said - Yes! This is it! :] ) and decided to create a platform game engine...
    So I'm not dev, I don't feel familar with wide abstraction. If i don't have to I ommit regular expressions or vim shortcuts.
    But I really wanted to bring my program to some point and prove myself that I can and I'm happy with a results.
    Just for now I have implemented character's physics, and background pralax scroll, but still many things to do.
    It was fun to make it first time with own idea, even if my code don't fit to any standards, it really works. :]
    It's great bring to life so nice characters, and that wasn't so hard with NFlib... :]
    I feel lazy to finish this, I guess that was only exercise, so maybe I upload this alpha demo, it's fun to hop on a snail and bee.
    SunnylandDS v0.2 released
    This is second and i think last update.

    Attached Files:

    You, CORE, navimor and 2 others like this.