FUZE Gamejam 10! 26th - 28th February // THEME: CLEAN


  • Fuze Team


  • Fuze Team

    Full List

    CLEAN				joyrider3774	H9A73MNDXD
    __CLEANBOT__			LucasJG		QYZ73MND9K
    fastFoodMaker			Evan		LBE53MND9P
    Clean-cut Heroes		vinicity	D8AK3MND5C
    Spring Clean			Kat		NLTMDMNDNR
    Clean_The_Beach			Steve		NXB4VRND9D
    Laboratory Janitor		Dinocoder	NX8LW9ND9F
    Picture Perfect			Richard		LXK7U9L92M
    LINT				waldron		CZ563MND5U
    Arcade Cleansing Game Jam 10	Ben		9DA43MND5K
    Au du Fromage			DaddyJDM	56EA2MNDHB
    Mud Rover			Gothon		RS763MND9L
    

  • F

    Great game jam, everyone!



  • Absolutely awesome game jam everyone, great work on your games!


  • F

    Well done everyone and well done Dave, he did us proud once again. Superb stream.



  • Ok for those interested the fire stuff is all done by a single algorithm. No images or assets are used nor any fading. All pixel values are caculated.

    There are 2 problems with fuze to achieve a fire a effect:

    1. it does not have a getpixel routine
    2. it does not have an indexed collor pallete mode like 13h / VGA in the dos days.

    However you can simulate these by creating a virtual screen array and a collor pallete array. The virtual screen contains indexes (colors) and link to the collor pallete array containing the real colors. Pallettes were used to do color tricks, you can setup a color pallete with some gradients (as is done here). Other tricks you can do is animate colors by just shifting the color pallete array. So now we have VGA / INT13h mode sorted. And we also solved the missing getpixel routine as we can lookup the color in the virtual screen array.
    The fire algorithm works by taking an average of neighbouring pixels (i used 4) but 2 pixel use same color for 1 pixel. These "colors" (actually indexes referencing the color pallete array) are added up and the divided to get the average.
    The algorithm only does the calucaltion but you also have to feed it "heat" or info. Anything except color 0 (black) will transform and you basically have to draw a line at the bottom of the screen and the algoritm applied the to rest of the screen (except this feeding line does the rest).

    So the little flames in the beginning is just setting a single pixel at the bottom and it creates those little fires and they remain as the fire effect is not applied on the last line. The fading smoke stuff after that is just drawing random pixels at certain heat (pixel indexed color at the screen). The Letters are just lines being drawn again with certain heat and the fire algorithm does the rest. the big fire at the bottom is basically drawing a line except a few pixel at the bottom feeding line and the fire going dark again is basically drawing pixel color 0 (black) at the bottom again. And to make the letters fade out to smoke is basically stop drawing the letters.

    Now there is one little problem, you have to draw / put pixels in the virtual screen array as thats whats using the indexed colors. so i just use a few for loops to draw straight lines to form the word C L E A N and the rest is done by the fire algorithm.

    afterwards its just timing everything a bit to the music with a timer (based on time()) function.

    Now doing this virtual screen in fuze is slow it seems thats why i only have 160x100 virtual screen and use setmode 160x100 i even had to remove the functions getpixel and putpixel as i intially did and place them directly in the main loop as doing just many calls to getpixel / putpixel created slownes due to the intrepreted aspect of it all. (thats why you don't see getpixel / putpixel routines but they are done just directly).

    Anyway i based my code on this routine here

    There are more explanations of this fire effect here for example:
    http://www.retroarchive.org/swag/EGAVGA/0204.PAS.html

    i wish fuze had a 256 color palleted color mode as you could more nice effects then :)



  • Holy cracknell! I just got caught up on the ones I missed, and I couldn't NOT log back in to comment. I think Clean-Cut Heroes is the best game I've ever seen on Fuze (sorry everyone else!) Just fantastic, and looks very addictive too! It's the kind of game you can't believe didn't already exist (unless I'm wrong) and the kind of game you can just relax and de-stress to. I also loved Clean the Beach - another polished, stylised arcade classic! Dave cracking up at that game has set me up for the week :D.
    Mad skills with the fire screen, and the faux-3D of Mud Rover. Well done everyone, and please know I'm aching to get back and join in!



  • i can not edit my post for some reason so have to do a reply. It seems the n64 / psx ports of doom also had a fire effect :)

    It is explained in more detail here https://fabiensanglard.net/doom_fire_psx/


  • F

    @joyrider3774 that does explain it really well will have a play with this


  • F

    I just submitted an improved version of Mud Rover.
    Changes include:

    • Clean with ZR button (my thumb was tiring out hitting both B and A)
    • Fixed problems with mud ball shadows not being updated correctly (makes dodging less random & more skill based)
    • Removed 'save zone' near the drain pipe (prevents game from becoming slow and dull when there isn't much solar area left and limits extra high scores better)

Log in to reply