Can GameSalad develop Action game??

nakata2009nakata2009 Member Posts: 3
edited November -1 in Working with GS (Mac)
I want to know Whether GameSalad can develop Action Game,Fighting Game.

These games are very simply in gamesalad.com.

Where is advanced tutorials? I want to learn it before buy it.

Comments

  • ktfrightktfright Member Posts: 964
    it honestly depends on what kind of game you are talking about doing...

    Shoot-em-up = definitely

    street fighter-like fighting game = maybe, but not until a more specific collision detection.

    platform shooter = yes

    beat em-up = maybe if done correctly.

    hope that helped a bit.

    look in the wiki for all the tutorial stuff, most of the stuff uploaded to the GS site might be a template (noobs like to do that) but check out a game called starfire.
  • nakata2009nakata2009 Member Posts: 3
    Thank you for your answer.

    I hope that GS will become all-purpose game engine in future.
  • Fafnir312Fafnir312 Member Posts: 161
    Actually with a little creativity all of them should be possible. If you want specific collision detection (I assume you mean head, torso, legs, etc) then setup invisible actors constrained to the player and offset to the correct location. Then setup the collisions in that way. That's the way I've done it in other engines and my current game in GameSalad will use a similar principle but simpler. GameSalad is amazingly diverse for how simple it initially seems. Though I'd definitely like more options for collision detection as well.
  • nakata2009nakata2009 Member Posts: 3
    Fafnir312 ,
    hello ,can i look at your fighting games online?
  • zombotszombots Member Posts: 186
    @Fafnir312 how would i constrain an actor in position to be the head like you have said?
  • quantumsheepquantumsheep Member Posts: 8,188
    Couldn't you offset the actor's position so that it covers the head?

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • zombotszombots Member Posts: 186
    ok i must be missing something, how would i do this?
  • quantumsheepquantumsheep Member Posts: 8,188
    Well, when you constrain the invisible actor to the main actor, add +10 or whatever to the Y value.

    So you constrain invisible actor to X = Main Actor's X, Y = Main Actor's Y+10

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • zombotszombots Member Posts: 186
    ah ok, thanks heaps:) how did i not figure that out, haha
  • quantumsheepquantumsheep Member Posts: 8,188
    No worries, we're all here to help, mate!

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • BeyondtheTechBeyondtheTech Member Posts: 809
    I'm thinking of developing an action/fighting game, however, I see the technical challenge of determining when the actual attack is successful.

    Consider a 5-frame animation sequence where the player throws a punch, extending his arm from his chest area, then retracting it.

    At the 3rd frame, I need to determine if the arm, fully extended, has 1. reached his opponent, and 2. is being blocked by the opponent.

    Since there's no way for GS to determine what frame is currently being showed, and that timers may be inaccurate, what other method can be used?

    Can I constrain an attribute to increase at every frame of the Actor, and reset it at the beginning of each sequence, so as to make a pseudo frame counter?
  • scitunesscitunes Member, Sous Chef Posts: 4,047
    could you have an invisible actor that is constrained to the fighter's arm and when the punch animation happens, the invisible actor moves with the extending arm. Then you check for a collision between the invisible actor and the enemy. Or even have the fighter actor spawn an invisible actor that moves out at the same speed as the arm and is destroyed when it gets to the end of the arm length (use magnitude to determine this). Just some ideas
  • quantumsheepquantumsheep Member Posts: 8,188
    Just a quick thought on this.

    You could animate the punch 'manually'.

    What I mean is, rather than have the images in an 'animate' behaviour, have them as a change image behaviour.

    'frame' below is an image that forms part of the 'animation'.
    'punchframe' is an attribute that keeps track of which image you're on.

    So, you press the 'punch' button.

    After .25 seconds change image to frame 1, change attribute 'punchframe' to 1.
    After.5 seconds change image to frame 2, change attribute 'punchframe' to 2.
    After .75 seconds change image to frame 3, change attribute 'punchframe' to 3.
    After 1 second change image to frame 4, change attribute 'punchframe' to 4.
    After 1.25 seconds change image to frame 5, change attribute 'punchframe' to 5.

    On your opponent, you have the rule:
    If attribute 'punchframe' = 3
    and status = blocked
    and actor collides with player

    Show 'Blocked'

    Otherwise:
    If attribute 'punchframe' = 3
    and actor collides with player

    Show 'Hit'

    Of course, this relies on accurate timers, but hopefully they'll be fixed soon!

    Hope that helps in some way,

    QS :)

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • rebumprebump Member Posts: 1,058
    @scitunes: That was similar to the method I mentioned, ever so briefly, in my long write-up on that one post where someone was requesting info on how to proceed with an RPG. I said the action RPG was probably actually easier to implement than the turn-based RPG where a lot of sequenced communication was necessary by way of game level attributes.

    No reason actors couldn't be used to implement limbs/weapons during a move to allow utilization of the collision detection system already in place.
  • BeyondtheTechBeyondtheTech Member Posts: 809
    But I think we'd all agree that if it was just one sprite and one could ascertain what animation frame is currently displayed, it would be a heck of a lot easier. A punch or a kick could be thrown at any speed (and therefore any animation frame) by a given fighting character (some could be slow or fast), so the "triggering" frame would be easiest to perform a test on instead of running through sequences as mentioned above.

    Until GS can come up with that feature, I guess I'll have to experiment to see what works. Thanks.
  • firemaplegamesfiremaplegames Member Posts: 3,211
    @BeyondtheTech: Well, you DO have access to each images' name... with the self.Image Attribute.

    You can create a Rule like this:

    Rule
    ALL
    When Actor collides with actor Enemy
    When self.Image is "fist3.png"
    Do something...

    The problem, however, is the bounding box. Two rectangles fighting each other is going to be a little miserable...

    I still think you would still need to do some kind of invisible actor system.
  • BeyondtheTechBeyondtheTech Member Posts: 809
    @FMG: This is fantastic. Not to worry about the collision part, that can always be tweaked. But, knowing exactly what frame is in action / being displayed is key to the whole fighting system. I hope to have something put together to test out my theories. Thanks!
  • quantumsheepquantumsheep Member Posts: 8,188
    Wait- isn't that what I said?

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

  • BeyondtheTechBeyondtheTech Member Posts: 809
    Well, kinda, QS.

    Let me get this straight, FMG, before I raise my hopes up.

    Suppose I DO leave animation sequences in my Actor, i.e. `punch1.png, punch2.png, punch3.png, punch4.png,` and `punch5.png.`

    Can I still access the current frame being shown with `self.Image`? That way, I know that `punch3.png` and `kick4.png` and `headbutt2.png` all are the moments of attack.

    QS, with the way that timers have been all FUBARed over the last 0.0.x releases, I'd rather stick to animation sequences than take my chances with timers.
  • quantumsheepquantumsheep Member Posts: 8,188
    fair enough ;)

    Dr. Sam Beckett never returned home...
    Twitter: https://twitter.com/Quantum_Sheep
    Web: https://quantumsheep.itch.io

Sign In or Register to comment.