Quick Links: Download Gideros Studio | Gideros Documentation | Gideros community chat | DONATE
Beat'em up — Gideros Forum

Beat'em up

MoKaLuxMoKaLux Member
edited December 2023 in Game & application design
Hi guys, I have always dreamt of making a street fighter game!
After just a couple of days it turned out to be the beginning of a beat'em up :p
The project started almost from scratch and putting together some code from the wiki ;)

Some screenshots:



A link to try the proto in your browser :)
https://mokalux.itch.io/gideros-beatem-up

Let me share the very rough and dirty prototype that I have. I am using tiny-ecs. I followed sir rrraptor steps and tried ecs in Gideros and now I am hooked o:)

ECS speaks to me because you have a problem, you make a system, problem solved, I love ECS.

Have a nice one!

Likes: keszegh, pie, PaulH

my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
+1 -1 (+3 / -0 )Share on Facebook

Comments

  • MoKaLuxMoKaLux Member
    edited January 4
  • let me share my approach to a beat'em up and my struggles:
    1- hitbox and hurtbox: new to me!
    Hurt boxes: one for the upper body (head) and one for the lower body (need more?)
    Hit boxes: one for the punch and one for the kick (you may have many kicks and punches)

    2- sorting sprites in a 2.5D perspective!
    Each sprite should be sorted accordingly (some old arcade games don't deal with this :o ). Cpu intensive, more than 256 sprites and lags appear but I shouldn't need that much?

    3- AI: it can be hard!
    The game is supposed to be "realistic" and I struggled quite a bit with this part

    4- sfx & vfx: to add some juice
    Just pick some random effects and you are good to go!

    5- levels: I choose the easy one
    I don't use cbump nor liquidfun, I checked some modern beat'em ups and a straight level can do

    6- camera: I use sir rrraptor's camera but I may implement a much simpler one should I need to save some cpu?

    7- gfx and animations: with my other Gideros app I can make quite some good ones in no time :)


    I think I have a good base for a beat'em up and I shall call it done?

    What's missing?
    - more than 1 level
    - adjust the collision detection for the jump kick
    - add pickups, bonuses and destructible objects (crates, cars, ...)
    - more juice with particles
    - various enemy type and bosses
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • MoKaLuxMoKaLux Member
    edited April 23
    teaser for future code release (GH + forum zip if not too big) and most likely a new Gideros Wiki written tutorial B)

    What's missing? NOT :p
    - more than 1 level: DONE
    - adjust the collision detection for the jump kick: DONE
    - add pickups, bonuses and destructible objects (crates, cars, ...): DONE
    - more juice with particles: DONE
    - various enemy type and bosses: DONE

    new:
    - key remapping o:)

    to do:
    - clean the code
    - add comments

    PS: I can't insert pictures (attach image) in my comments

    https://mokalux.itch.io/gideros-beatem-up new proto :)

    Viva Gideros <3
    beu01.png
    642 x 392 - 209K
    beu02.png
    642 x 392 - 151K
    beu03.png
    642 x 392 - 237K

    Likes: hgy29, pie, PaulH

    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
    +1 -1 (+3 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited November 13
    the minimum viable product is done :p
    it is a "complete" game with menu, options and win scenes.

    It was the easiest game I have made so far (easier and faster than a platformer :s ).

    Could I have some feedback please? ;)

    https://mokalux.itch.io/gideros-beatem-up

    I am preparing the GH for it DONE. You may not like my coding style and I apologise in advance :|

    new repo: https://github.com/mokalux/gideros_wiki_repository/tree/main/tuto_beu_cbump_tecs

    A wiki tutorial is next, God's willing.


    PS: with this project I experienced some minor issues with Gideros Studio:
    - Qt builds crash when pressing alt+enter to go full screen (no issue with win32 builds)
    - several Gideros Player freezes/crashes while coding/debugging this project pressing either the play button icon or the ctrl+r combination
    - bit of lags in win32 builds, Qt runs smooth, html5 runs pretty good (better than win32?)

    PS2: zip too big for forum (7mb)

    PS3: with latest Gideros (2024.11.1) all my above issues are fixed :)

    Likes: pie

    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
    +1 -1 (+1 / -0 )Share on Facebook
  • piepie Member
    Accepted Answer
    cool! did you try adding a touch controller and building it for mobile?

    p.s. I noticed that each time you kick/punch the action restarts: I think it should ignore the press on the button until the current action is finished, at least if it's triggering the same action. (I remember tapping as a death metal drummer on those kind of games! :D )

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited October 11
    thank you pie :p

    About mobile: character control is done (I used this code https://wiki.gideros.rocks/index.php?title=VirtualRelativeJoystick) but the issue was adding 6 more buttons for kicking & punching. It would have been quite a challenge to add those 6 buttons so I leave it for another day

    For the action restart, to be honest I don't remember how it used to work back in the arcade days (double dragon), I need to play some beatem ups see how it works (I should have started from here I guess :D ).

    Did you finish it on hard mode ;) ? I especially like the 3rd level B)
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • piepie Member
    I finished it in default mode: is hard mode much different?
    I've never tried doing a game like that but I think you could cut the number of needed buttons: I can think of two ways to do that, and these can be combined.

    1) use a combination of direction+kick or punch

    2) act on button release, counting the time in which the button is pressed: ie. short press = fast kick, long press = jump kick

    I like the third level because the background is moving: next step is a level on the roof of a moving train :smiley:

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited November 11
    yes difficulty level is actually working for real :)
    this could be ported to mobile quite easily but as you said you have to tinker a bit for the punches and kicks and where to place those buttons on the screen, you could even let the user place the buttons on screen as they wish.

    If you are ok with how the kicks and punches work, adding more levels is a piece of cake, you just need the graphics.

    I will try to get some more feedback and see how people like it, I will then decide to pursue it, making a paying game (pc, web and maybe mobile?).
    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
  • MoKaLuxMoKaLux Member
    edited November 13
    I think I am done with the prototype for my Gideros beat'em up:
    https://mokalux.itch.io/gideros-beatem-up & https://github.com/mokalux/gideros_wiki_repository/tree/main/tuto_beu_cbump_tecs

    It doesn't have ALL the good stuff you would find in an arcade bem but it has a good fundation imho ;)

    It would take me years to polish and fine tune but I have other plans :p

    Now it has only 3 buttons, you can press an attack with a jump to perform a jump attack!

    I would always be grateful to sir rrraptor (who I/we miss a lot :'( ) for introducing me to tiny-ecs.

    Next step is to add this as a tutorial in the wiki (God's willing as always).

    Next two platformers for the wiki tutorials: one using box2d, the other cbump (I have quite a few protos ready somewhere on my hd).

    When they are done some YT videos... but first of all, always taking it easy and having fun!

    ...

    Take care o:)

    Likes: hgy29, pie

    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
    +1 -1 (+2 / -0 )Share on Facebook
  • hgy29hgy29 Maintainer
    Accepted Answer
    Thanks a lot for sharing it. I think we should have a few game exemples within Gideros studio

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
  • MoKaLuxMoKaLux Member
    edited November 11
    My pleasure captain :)

    There are awesome games in Gideros GH https://github.com/gideros/gideros/tree/master/samplecode-bleedingedge

    They are a bit outdated and only available on GH. Maybe we (I) could update them to modern Gideros and add them in a Games Demo folder in Gideros installation folder (like the Library folder)? but this will increase a tiny bit Gideros package ;)

    Likes: pie

    my growING GIDEROS github repositories: https://github.com/mokalux?tab=repositories
    +1 -1 (+1 / -0 )Share on Facebook
  • hgy29hgy29 Maintainer
    Yes, I almost forgot about those, I wonder why they weren’t released. Could there be patent issues ? We need to double check

    Likes: MoKaLux

    +1 -1 (+1 / -0 )Share on Facebook
Sign In or Register to comment.