FireRat's 16 day challenge!

Discussion in 'Showroom' started by FireRat, Apr 17, 2018.

  1. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    Hi everyone, besides my obligations, as some sort of personal exercise, I have plans to begin a small side project in the next following 16 days. Deadline being May 3rd 23:59:59 (GMT-3)
    The idea is to make a single zone from scratch, complete with all its parts; tileset, gimmicks, badniks, level layouts and a boss. This time however, you may greet songs you've heard before, or even varying-quality art. Open to suggestions and all, I will just do what I can in this regard, because instead, I'm honestly going towards using my imagination the best as possible, and attempt to give what I consider to be fun gameplay.

    Why?
    Because I'd like to experiment with other different ways to hold the workflow, practice and discipline my self-arrangement skill, have an excuse to quit self-restraining myself for perfectionism/shame and practice actual pixel art for once no matter how gets, but most importantly, to get creative. Besides I'm beginning a new graphic design career, got to practice the most I could, so why not do it by doing what I like to do most?
    Then, who knows, perhaps the final result could be worthy enough to take part into another project, and get audiovisually overhauled in the process.


    I have three questions though:
    - Would you allow me to use a pre-customized S3k engine? Or must it begin from a clean disassembly?
    - Would you allow me to recycle sprites or scrapped concepts from previous games I've worked on?
    - If any lower art standard doesn't fit your expectatives, is this hack not worth the matter, then?
     
  2. Nat The Porcupine

    Nat The Porcupine Point & Click Funny Man Member

    Joined:
    Jun 23, 2017
    Messages:
    71
    Location:
    Pennsyltucky
    Oh man, I love it when people do these!

    Regarding the first question: IMO, it sort of depends on the how heavily customized it is to begin with. If the disassembly is only customized with bug-fixes, optimizations, or other code that is publicly available to the community in guide form, then sure. However, when you start incorporating code that was either given to you privately or written from scratch before you start the stopwatch, the lines start to get a little blurry.

    As far as the other 2 go, recycling sprites or ideas from scrapped projects is 100% fine with me. The way I see it, if you have a lot of stuff just metaphorically sitting there and collecting dust, this would be the perfect opportunity to breath new life into them. The quality of the art used isn't a huge issue for me, but if you do end up going with some art that you yourself acknowledge isn't that great, you might have to make up for it in other areas (ie music quality, level design, original ideas, ect.)

    Well, I've given my two cents on the matter, and whether or not you decide to take my advice, I'll be hyping this up until I can finally give it a play. Have fun & good luck! :D
     
    ProjectFM likes this.
  3. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    I do like seeing these limited day challenges. 16 days, 30 days, they're all good with me.
    What exactly is customised? You should define what you did. I would say though that starting from scratch would look more legitimate in a 16 day challenge.
    If you scrapped stuff before and want to have them come to life then by all means go ahead. As for recycled sprites I've been told by people before that previous x day challenges had some slightly reused stuff. Would you struggle to come up with new sprites in 16 days?
    If art is an issue then don't focus on the art, focus on other sides. Impress people with the programming, level layouts, etc.
     
    ProjectFM and FireRat like this.
  4. LuigiXHero

    LuigiXHero Well-Known Member Member

    Joined:
    Mar 22, 2014
    Messages:
    280
    I believe it doesn't really matter what you have beforehand or what you do in that time. Just make something in 16 days with whatever you got.
     
    EMK-20218, ProjectFM and AkumaYin like this.
  5. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    A clearification about the pre-customized engine. It's a collective work by TheBlad768, DiscoTheBat and me, and consists in a general re-arrangement, a bit of everything; initial version consisted of a "blanked out" version of S3k with the minimal multi-named routines and a blank zone, and since then we have been gradually replacing things; we have a new BuildSprites, a new scroll engine, a new PWM mixer, and of course lots of bugfixes. Act transition code is super outdated I guess, may crash, so I'll have to rewrite it for this ocassion. All original code should eventually get replaced, so this base could, with my mates' permission, be used for commercial purposes, but it will take a while before it happens.
    But, considering I'm mostly going for the creative approach, and this serves as an easier starting point, I'm leaving the question to you.


    I have experience on coding, l'm not the best at pixel art, and I don't know anything about music. I'll try to draw the assets the best I could regardless, but I can compensate trying to program movements the most fluid as possible, with some ocassional effects as well...
     
    Last edited: Apr 17, 2018
    ProjectFM likes this.
  6. LazloPsylus

    LazloPsylus The Railgun Member

    Joined:
    Nov 25, 2009
    Messages:
    Location:
    Academy City
    Curious why you're asking us about what we'd allow, when you're the one running the solo event and establishing the constraints...

    Still, good luck to you.
     
    Pacca and NiphFM like this.
  7. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    Sorry, just paranoid at being called a cheater when it's too late :p. I ask because I'm open to personal suggestions and, as you can see, for some my cheating level is dependant of how heavily customized is it to begin with, so...
     
  8. MarkeyJester

    MarkeyJester ♡ ! Member

    Joined:
    Jun 27, 2009
    Messages:
    2,867
    I wanna play devils advocate here. It's a "16 day challenge", if you include reused content from outside of this time range, it would technically not be 16 days worth of work, and the title would pretentiously put claim to something that is false (ala, making the project seem more impressive than it is), it devalues the goal.

    However, I would allow the use of a pre-customized S3K engine, but not the reuse of artistic assets, the reason is because of what you said:
    The reason that's less obvious to people, but I think more important (especially to you) is that by limiting yourself from reusing your own assets, you will open yourself to all possibilities of creativity, and it will allow you to branch away from what you already know, and to progress into something you've never done before, or as you put it:
    This is why I can accept the engine, but not the art, you will thank me later, trust me...
    No, the hack is very, VERY, important, it's something that you have to do, and it doesn't matter if it doesn't meet some people's expectations, if the purpose is to self improve and as long as you're not pretentious about the art you've created, it's worth every second of your time.

    Good luck~
     
  9. Nat The Porcupine

    Nat The Porcupine Point & Click Funny Man Member

    Joined:
    Jun 23, 2017
    Messages:
    71
    Location:
    Pennsyltucky
    I probably should have specified in my initial response that, while I do consider it cheating if you use a pre-customized engine has a significant amount of work already done for you, I won't hold that against the hack if you decide to go that route. I just thought that you might find the challenge to be more valuable if you limited yourself to starting from scratch on a clean or near-clean disassembly.
     
    ProjectFM and FireRat like this.
  10. Misinko

    Misinko Oh SHIT it's the Biolizard! Member

    Joined:
    Apr 30, 2013
    Messages:
    722
    Location:
    Ohio
    I actually feel the opposite way in this matter. I feel the use of a pre-made engine would nullify the purpose of this hack to a certain extent, given that programming is Rat's forte. You make a good point though with how he should look to improve his art skills. I'd personally say one or the other would be fine, but not both.
     
    ProjectFM likes this.
  11. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    Past 0:00 here, so...

    Day 1/16


    I got a few things...
    • I decided to not recycle any of the old badniks, but make use of the prepared engine: I'm prefering the creative path more than the logic one this time, and it helps that we have most of our libraries well documented and labeled, to hopefully get features working the least hackish as possible.
    • Coding-wise, gotta go fast, therefore I'm writing the most fail-safe as possible. I'm not going to count my CPU cycles though, but at least try to be considerate with the hardware, using whatever optimization guidelines/tricks I remember on the go, arrenged in a CPU>RAM>ROM priority.
    • As an additional feature, I'm getting Mode1 support almost ready; Kega won't emulate DMAs in this state though, so I went with a temporary hack: ProcessDMAQueue buffers all transfers into RAM, in blocks of $1000 bytes maximum, to DMA from there. This ONLY happens if, the game has Mode1 is enabled, and if it is being played from Kega. Sloooooow. To-do: check if can I just buffer everything at once at Prg-RAM or Word-RAM and DMA from there.
    • Bugfixes & cleanup
    • Accurate DropDash re-implementation in the works (thanks MainMemory!)
    • Just realized I'm slower to draw straight pixel art than I thought. This is what I can do:
      • I can draw assets in paper, then scan and paint them on PC (to-do: get unconditional access to a scanner)
      • Compensate the lack of drawn frames by splitting sprites into smaller pieces, to move them individually. If you wonder, this technique has been used a lot in arcade games, or to some extent on flash cartoons nowadays.
    • Got a zone theme and a half-assed excuse-plot!:
      Fucking hedgehog!!, "You ran out of ideas, eggy?" Who the hell do he believe he is...
      ... Doesn't matter how hard do I try, he still fucking wins.... !!!! How the hell he does? I mean, I'm more powerful and smarter than this little twat!!!, *throws decorations out of table* I mean, heck, it can't be so complex... I solved problems way worse than this before!!!, what he hell is wrong with me... what the hell is wrong with this guy... Let's see... he runs all over the place without crashing, his reflexes... must be incredibly fast... his fucking brain too... WAIT, WAIT A MINUTE!!, doesn't matter how fast something gets processed, ANY program could get reverse-engineered through proper means... Are minds like programs...? yes... what if, could I document Sonic's brain... ?
      I'M A GENIOUS!!!, if this little roadrunner deserves to be destroyed... he first shall... DIE FROM INSIDE!!! MWUAHAHAHAHAH
      And so, FantasyLand Zone has born.
    • Got some rough level-based trippy gimmicks on paper, no badniks, yet. Scanning these at institute though (in at least 11 more hours, unless I convince my cousin to lend me theirs :p )
     
    Last edited: Apr 18, 2018
    ProjectFM, LordXernom and its boomer like this.
  12. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    Day 2/16


    This one has been a personally difficult day. Bad news since afternoon, and mood has been somewhat low. However, more words:

    - Currently rewriting a new score tally object
    - Currently writing after image object
    - Made Sonic controllable even if get hit
    - Made Sonic automatically roll upon falling
    - DropDash seems to work correctly now, still need to try for some more obscure cases I'd miss (entering a tube, getting hit, etc)
    - Still trying to find out and fix about certain collision bug I seen at retro... that if I remember correctly, reason is along the lines of a wrong bit getting checked... ? But can't remember a single thing about the matter yet, nor by checking here (yet).
    - Also, no access to a scanner until weekend when I trip back to my old home.
    - I wonder how will I do to animate the title screen on time now. Hope no need to cut corners
    - Wrote a palette transitioner, meant to be used for planned day-to-night cycle
    - SEGA sound...
    - Installed Clownacy's Clone Driver.

    That's it for now, it's exactly past 0:03, but I'm incredibly tired. Any updates in at least 14 more hours.
     
    FохConED and ProjectFM like this.
  13. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    Any new updates to share or have you run into an issue with your 16 Day Challenge? The last post was on Thursday...
     
  14. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    Okay, I left a lot of days without updates, but I made a compromise, and you deserve to know what is going on. I didn't threw the project apart :p. I got a load of homework from institute, had to trip to my old home past week as well (3 days lost), but I have worked as much as I could on my free time... not thinking in anything else, to be honest. I just want to give the most presentable possible ROM, on time, no matter what it takes. I have passed more than 24 hours without sleep, so I guess I'm heading to bed earlier today.

    ANYWAYS, my bad for not keeping exact track of a Changelog as I went, because I basically went with whatever my mind wanted to do on my free time. For example, if I had to draw assets, but my mind instead wanted to care about something on the ASM side, I'd rather do the latter, because I realized it's not good to do something I'm not inspired with (because it results in lack of focus, self-distraction, and eventual procrastination). Oh and, gotta go fast, too.
    In the meantime however, I have ocassionally posted whatever I was getting done across many Discord servers or Facebook.

    A few things have been improved or replaced, all in varying qualities still.
    • Custom SEGA Screen:
    • Got a scanner!! and following Aladdin's technique, I done a couple of custom animations on paper, such as a water splash: [​IMG] [​IMG] (needs more particles though ;) (water drops, bubbles...))
    • Tileset progress:
      [​IMG] [​IMG] To-do: Slopes, more decorations (including but not limited to... certain signs, which I rather prefer to draw on paper (easier)) and finish this very awkward background. I ran out of color slots for 3rd line, but there's palette cycle word required here, so I need to draw the background first on 4th line, and see what colors may I share with foreground and what not
    • Ported Drop-Dash, special thanks to MainMemory
    • Transparent 3D water effect! Which basically consists in a double palette change, and a few palcycled horizontal lines in between to help the illusion a bit (their y-pos should properly fit the "perspective"). On top of that, I can simulate a transparent reflection of the clouds if I added them as y-flipped sprites using the "Highlight" color, and cut the bottom of them when the bottom part of the water line begins, by throwing their x-pos outside the visible area. From all this plan however, only the double color change part has been done, because the background hasn't been yet finished nor imported.
    • Inspired on Contra: Hard Corps, I made a power-up switcher! (it just costs 5 more sprites). As usual, you start in the level with nothing at hand:
      [​IMG]
      As you progress, you can collect the blue ring or any of the 3 shields, and they all get saved:
      [​IMG]
      You can switch between them using the Up button. Desperately need to do a Drop-Dash or Insta-shield? Simply switch to the blue ring, that equals to no shield. Got hit and need your single ring back to survive? Switch to the Lighting shield to attract it back!
      With the exception of blue ring icon (edited from normal ring), icons and HUD art belong to Mr. Cat, because this is what the engine came with. Should I revert them back to the originals (or perhaps my own version (if I have time))?
    • I have lost some time on trying to animate the intro cutscene on Eggman's room. Looks a little awkard yet, and need to wait until tomorrow to scan it all. Will I have free time to program it? I have no idea, but it's certainly one of my lowest priorities. The least I can do however, is displaying the text alone on the screen. Your base are not belong to us, special thanks to A-S-H for fixing my broken redaction =U
    • A couple sekrit gimmicks... including but not limited to an escape sequence, and today I begun writing the boss as well...
    • I have lost some time on even more engine bugfixes, optimizations and improvements
    Got to say it, drawing assets has took me a lot more time than I thought, it is very difficult to get a self-satisfacting result, and even at its current state, it's a struggle, I still find that "something" looks out of place from some of my files... but it's also the first time I ever use my drawing "skill" onto something "serious", so please have pity!!. The self-questioning is what most stops me from working, so, sometimes, I just have to learn to let things go, else gets stuck.

    I'd like to thank ProjectFM for creating the tileset base, and whoever made the SlopeMaker tool. Have been more than handy.
     
    Last edited: May 1, 2018
  15. Spanner

    Spanner The Tool Member

    Joined:
    Aug 9, 2007
    Messages:
    2,570
    If you have the time you can change the HUD/icons/etc. It's your project, make more of it yours if you can.
     
  16. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    - New friend joins the party! [​IMG]
    - Made a prototype Act 1 layout using my currently finished but artless gimmicks. Can't thank ProjectFM enough for his base. Still got some more under my sleeve, but I'm finishing that tomorrow because...
    - Perhaps AS, perhaps s3p2bin, but Z80 sound driver crashes trying to play any sfx, but ONLY on hardware!!, it works fine on every other emulator, and music playback also works fine on HW (PWM Mixer doesn't on Gens, but it's a known bug, it doesn't emulate Sh2 Cache). For this, at least 5 hours have been lost. Turns out the data isn't properly assembled (or compressed by s3p2bin.. ?) into the ROM no matter what, different arrangement combinations have been tried, but nope.
    - I wanted to make an animated intro. But not just any intro... Remember Ninja Gaiden's intro? or Jon Burton's Flintstones sequence? Pretty much like that. However, it took longer than I imagined... I couldn't get all of the "in-between" frames drawn and scanned by today. Let alone the time it'd take to paint and sequence them in-game. It's a painful sacrifice, but I couldn't do that part, on time. And I spent sleepless nights... So, to not keep the playable presentation too "dry", I made it text only, and uploaded it to YouTube as some "teaser" of sorts
    Once again, thanks to A-S-H for his fixes. And yes, I'm aware of that tiny little errate on my transcription, thanks YouTube thumbnail

    Today have been slow. I went to bed quite tired past night, but my brain just wouldn't shut down no matter what. That's at least 8 more lost hours
    I NEED TO SLEEP
     
    Last edited: May 3, 2018
  17. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    2:52 AM, sorry for late update:

    - Successfully finished all gimmicks
    - Finished latest badnik
    - Finished 3D water effect
    - Sfx playback crash fixed
    - 2/3 of level layout complete
    - HackGame drew a 16x16 font: [​IMG]
    - Moving giant wheel gimmick as part of the boss to make up for time constraint
     
    ProjectFM likes this.
  18. FireRat

    FireRat Do Not Interact With This User, Anywhere!!! Exiled

    Joined:
    Oct 31, 2009
    Messages:
    535
    16 days challenge failed, I have no option than extend it until 24th day.
    I was already making painful sacrifices, just to present a stable ROM that "makes sense", on time. It wouldn't the full presentation as planned, but I'd follow Sonic 2's example, and at least present something with my available materials.

    Remember when I said sfx crash was fixed? Get this: A hard drive died, and later, a pendrive with backups, also died. Bye bye sound driver bugfix. Not that I could have done something, I don't know Z80 either.

    Did I have alternatives? Of course!, release two ROMs, one that doesn't work in hardware, and other that doesn't play any sound effects (just like Sonic Crackers).
    I'm sorry but, I can't accept see my game getting thrashed by the same community's oldbies everyone loves just because a tiny issue that makes them go like "OMGOMG DOESNT WORK ON HW, SO BAAAAAAD " all over the place. I have already been there before a couple years ago, and honestly? It leaves me broken inside. I'd rather get personally criticized for a delay, than see a project fall this down, once again.
    Because I'd not fulfill with my prime goal, making people have a good time.

    For this, I'm extending the time period, to hopefully bring some scrapped contents back (I really want to finish that animated intro, this could be a second chance), and especially give my mate some more time to fix the issue. I'd like to thank everyone who gave me their support and affection over Discord, Facebook and the institute. A huge hug to everyone who helped and contributed with anything =). See you next time.
     
    pixelcat, ProjectFM and JoenickROS like this.