Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411507 Posts in 69374 Topics- by 58429 Members - Latest Member: Alternalo

April 26, 2024, 12:33:55 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsFinal Crash (previously PLAN Brawl) Demo available now!
Pages: 1 [2] 3 4
Print
Author Topic: Final Crash (previously PLAN Brawl) Demo available now!  (Read 15047 times)
defrobo
Guest
« Reply #20 on: December 20, 2016, 08:27:41 PM »

This is sick! Huge SOR fan so obviously I love what you are doing.

The mechanics detail is really interesting, so please give us as much info about how it's made as you can  Grin
Logged
darrenagar
Level 0
***



View Profile
« Reply #21 on: December 21, 2016, 06:21:03 AM »

This is sick! Huge SOR fan so obviously I love what you are doing.

The mechanics detail is really interesting, so please give us as much info about how it's made as you can  Grin
Thank You Smiley There is a lot to go through mechanics wise, so I want to focus on specific aspects per post so that it's digestible. There isn't a rigid plan on what I'll cover, so if you want to know how I tackled certain things I'm happy to oblige!

@Kienay - Just been playing Final Fight 3 for the last hour! I've played the first Final Fight in it's many iterations (GameBoy Advance version is awesome), but I must have let the sequels slip me by. Lot of interesting stuff. Branching paths in the levels, quarter/half circle motion commands. and the lock direction mechanic is pretty much exact in PLAN Brawl, including the back-dash! You're assessment is absolutely correct. There aren't a lot of instances where it's useful, and the same is true in my game, but I may want to add a playable character that can hold back to block while XLock is pressed instead of having parry, It shouldn't encumber your movement unless an enemy's attack connects. I want differences in the playable characters to suit different play styles, so Xlock is there ready for when I experiment with these different abilities.

I Loved punisher when my local video rental had the arcade cabinet! but I haven't had a working rom to revisit it, And the Genesis/Mega Drive version isn't very well regarded. Guess I'll watch a bunch of Longplays for now.   
Logged

Superb Joe
Level 10
*****



View Profile
« Reply #22 on: December 22, 2016, 05:37:17 AM »

all of the modern attempts at 2d brawlers have really bad animations with too much windup and not enough weight and i wish you luck in being better
Logged
darrenagar
Level 0
***



View Profile
« Reply #23 on: December 30, 2016, 06:29:19 PM »

Hey, Hope y'all having a great holiday Toast Right Toast Left

@ Superb Joe- Yeah, I've put a lot into that, the hits have a small pause when they connect (like SoR2 and many other fighty games) which helps sell the weight of a hit, I think the rest is in the sound effects, which I haven't seriously started yet- just have placeholder SoR sounds for now.

A more detailed look at the combo system:



1-5 is each combo progression.
The arrows are the input direction for each move, Green arrows indicate moves which will progress to the next step in the combo. orange/red arrows are moves that will knock an opponent down, ending the combo.

This system will allow combos of any length to be performed as long as there is at least one continuation (green arrow)move at each step. Fenix will have average combo, so max steps is 5. Other characters may have much larger combo potential. However, If multiple enemies are overwhelming it is useful to be able to end combos early with a knockdown.

Individual Attack Properties:

A- Jab - Hits High.
B- Punch - Hits High.
C- Gut Punch - Far Reaching, Hits Low.
D- Overhead Elbow - Overhead Hit.
E- Uppercut - Knocks Down.
F- Double Kick - Hits Low, then Knocks Down.
G- Roundhouse - Far Reaching, Knocks Down.
H- Trip Kick - Trips the opponent.
I- Overhead Kick - Overhead Hit.
J- Spin Kick - Knocks Down.

Tripping attack knocks the opponent down in place, So is great for keeping enemies within screen bounds, Games in this genre can be annoying for opponents to always be knocked off screen and having to wait for them to enter the play area to continue your attack Yawn

Wow it's getting late! I have a bunch of stuff on game font I've been working on this week, but. . . G'night.
« Last Edit: December 30, 2016, 07:01:08 PM by darrenagar » Logged

Kienay
Level 0
*


View Profile
« Reply #24 on: December 31, 2016, 11:33:23 PM »

I like the concept of going for timed knockdowns. The player seems to get full control there, too.
Are you also planning to include juggles?
I can relate to what you are saying about enemies who are knocked out of the screen. But on the other hand, AI seems to get kinda dumb in this kind of situation in a lot of games, so I like to exploit it a lot.  Shrug
Logged
darrenagar
Level 0
***



View Profile
« Reply #25 on: January 01, 2017, 10:40:55 AM »


@Kieney - I don't plan on putting juggles into it, It might be a step too far from it's roots, and River City Underground seems to have that covered, like, that game is looking amazing!

I mentioned in the previous post I've been working on the games font. Like everything in the game the lettering is built in 3D and rendered 2D. It may seem like a lot of work for what it is but I like flexibility, minor tweaks are easy to do on 3D assets, even pretty major changes are for that matter.



I want to retain that 90's look horizon line reflection. So those circular strips in the image are gradients that are being reflected by the metallic material on the letters (the red parts aren't reflective). The black outline is photoshop layer style 'stroke'



and because they are 3D they can be rendered at any size



What do you think?

Happy New Year Beer! 
 
Logged

surt
Level 7
**


Meat by-product.


View Profile
« Reply #26 on: January 01, 2017, 12:06:46 PM »

Why are you using reflection for the sky but not for the ground?
Logged

Real life would be so much better with permadeath.
PJ Gallery - OGA Gallery - CC0 Scraps
darrenagar
Level 0
***



View Profile
« Reply #27 on: January 01, 2017, 01:29:37 PM »

Why are you using reflection for the sky but not for the ground?

It is reflecting the ground, but on the lower part of the lettering it is only visible on the outer edges, to retain a whitish border around the characters, the red part I wanted a clean block colour with no distortion going into the curved edges.

This is what it looks like without the red section:

Logged

darrenagar
Level 0
***



View Profile
« Reply #28 on: January 06, 2017, 07:06:33 PM »

Hi all, Not sure what timezone the stream is on but I'm debuting gameplay of PLAN Brawl live (played by key Streets of Rage community guy DintheAbary!)

https://www.twitch.tv/brawlersavenue/v/112695884
« Last Edit: January 09, 2017, 04:20:14 PM by darrenagar » Logged

Kienay
Level 0
*


View Profile
« Reply #29 on: January 09, 2017, 12:24:32 AM »

Sadly, I tuned in too late to see the game and the recording doesn't work. =/
But I was able to watch an older trailer and must say the gameplay looks really awesome. Keep up the good work! =D
Logged
darrenagar
Level 0
***



View Profile
« Reply #30 on: January 09, 2017, 05:09:05 PM »

@ Kienay- Thanks! I updated the gameplay link to show the correct recorded video stream (starts about an hour in)

Many of my ways of doing things are a little odd, or at least rarely tackled. The first level background in PLAN Brawl is a good example of this. Over 25 yrs ago when games mostly HAD to be 2D, techniques were used to represent 3D space in 2D. Most commonly known, isometric perspective was used, but this is only one of multiple axonometric projections/ parallel perspectives.

Different cultures developed art differently, much of the older game art clearly has roots from (very) old Chinese scrolls:



But my game is built using 3D assets, So if I wanted to use this kind of projection, I'd have to deform those assets accordingly. I have an orthographic camera rotated down 30° (I found this angle to be a good approximation of what I was going for), then using a deform box, I sheared the entire scene until the angles pointing away from the camera were at 45° to the left:



Here you can see the severity of the shear. Top view of car facing straight forward:



Final rendered scene:


     
« Last Edit: January 09, 2017, 06:27:25 PM by darrenagar » Logged

darrenagar
Level 0
***



View Profile
« Reply #31 on: January 15, 2017, 10:29:08 PM »

This post: how the camera works!
the camera has to track multiple players and many calculations have to be made to accurately know where it needs to go. Like before, I'll not go into specific programming language so it can be useful for all.

The Camera System

1. Where, on a character should the camera be directed:
Like I've mentioned in a previous post there are 2 separate parts on a player; the shadow/base and the character sprite. The camera cannot be directed only to the shadow/base (too low), and cannot be directed at the sprite because when the sprite jumps it will follow that motion, and we don't want that.

Solution- The camera will take the x position of the base, and the y position of the base + half the height of the sprite. Smiley

2. The camera needs to zoom in/out when the players are a certain distance apart.
Because the game is a horizontal scroller, We only need to know the position of the player furthest to the left, and furthest to the right, and get the distance between the two.

Solution- for furthest to the right- take all x positions, and keep the biggest number(highestX). furthest to the left- take all x positions and keep the smallest number (lowestX). Then get the absolute value of (lowestX - highestX). We have the distance. Grin:lol:

3. The camera needs to know the position of all players in the scene, and know where the centre of those players is, so if 3 players are in the scene for example, the camera will need the x and y position of all 3 players and calculate where the centre is.

Solution- For horizontal centre, take the values we have from step 2- (highestX + lowestX)divided by 2, for the vertical centre,Calculate the same as step 2, but this time for Y positions- (highestY + lowestY)/2. We have the centre! Cheesy

Camera Movement
I'll go over what's important.

The camera is placed inside a container, it is the container that follows the player(s). The only thing that directly moves the camera is camera shake(when explosions/ impacts etc happen), this way camera shake won't affect camera position (just ensure camera returns to centre of container after shake).

the camera is given velocity/movement by how far it is from the centre point of players in the scene. So horizontal movement/speed, is the distance from camera to the centre x position, vertical movement/speed, is the distance from camera to the centre y position. Just multiply or divide distance to control camera speed. Works incredibly well.

Camera bounds n stuff, I'll leave out. too specific to this game and way complicated.

Hope this is easily understood, and has value. Later.   
« Last Edit: January 19, 2017, 05:34:18 AM by darrenagar » Logged

defrobo
Guest
« Reply #32 on: January 18, 2017, 04:37:38 PM »

I was just reading through your write up on the colliders and hit boxes, very interesting. Question though - do the hit boxes change shape / position with the different frames in an individual attack?

I'm thinking back to SOR2 and remembering Axel's circular dragon punch; from memory it hits in front and behind, but it kinda does them simultaneously, and doesn't wait for the animation to catch up.
Logged
darrenagar
Level 0
***



View Profile
« Reply #33 on: January 19, 2017, 04:30:48 AM »

I was just reading through your write up on the colliders and hit boxes, very interesting. Question though - do the hit boxes change shape / position with the different frames in an individual attack?


Yeah, they are activated within the animation clip as 'Events'- as well as the other move specific functions like SoundFX and animation progressions (that tell the character when to change speed if the move has multiple velocities to it) etc.



Here you can see the hitbox is activated 3 times (the diamond shapes are the individual frames of the anim), then reset and disabled exactly 1 frame after enabling. the hit events are put very slightly (1/4 of a frame)before the desired frame, as there is a tiny delay from the box enabling to a confirmed hit.

animations that interrupt an attacking animation (like being hit or grabbed) will disable any hitboxes that are active.

Here is all the information that gets passed to the Hitbox during this specific hit:

      hitID = Random.Range (0, 100000);
      spriteHitScript.hitID = hitID;
      hitBoxComponent.enabled = true;
      spriteHitScript.hitSuccess = false;
      spriteHitScript.facingRight = facingRight;
      spriteHitScript.knockDown = true;
      spriteHitScript.pauseDelay = true;
      spriteHitScript.energyDrain = 10;
      spriteHitScript.hitSparkPosition = new Vector2 (2.4f,0.5f);
      spriteHitScript.hitSound = hitSound2;
      spriteHitScript.playerNum = playerNum;
      spriteHitScript.pointsGained = 50;
      hitBoxComponent.size = new Vector2 (1.61f,1.12f);
      hitBoxComponent.center = new Vector2 (1.5f,0.54f);

each hitbox activation will modify this info.
Logged

darrenagar
Level 0
***



View Profile
« Reply #34 on: January 30, 2017, 04:45:01 AM »


Yo Peeps,

I've been progressing well with work on AI and such, but my health is taking a bit of a nose dive.

I work semi-full time in a hospital and this project is worked on in my free time, whenever I can. I can't remember the last time I gave myself some time off, so I think maybe now is a good time to do that. It's hard because I feel compelled to work, as the project doesn't really stand a chance if I don't.

I'm not from a gamedev background, don't have friends that are, and this thing is a mountain.

Logged

Superb Joe
Level 10
*****



View Profile
« Reply #35 on: January 30, 2017, 11:39:57 AM »

@ Kienay- Thanks! I updated the gameplay link to show the correct recorded video stream (starts about an hour in)

Many of my ways of doing things are a little odd, or at least rarely tackled. The first level background in PLAN Brawl is a good example of this. Over 25 yrs ago when games mostly HAD to be 2D, techniques were used to represent 3D space in 2D. Most commonly known, isometric perspective was used, but this is only one of multiple axonometric projections/ parallel perspectives.

Different cultures developed art differently, much of the older game art clearly has roots from (very) old Chinese scrolls:



But my game is built using 3D assets, So if I wanted to use this kind of projection, I'd have to deform those assets accordingly. I have an orthographic camera rotated down 30° (I found this angle to be a good approximation of what I was going for), then using a deform box, I sheared the entire scene until the angles pointing away from the camera were at 45° to the left:



Here you can see the severity of the shear. Top view of car facing straight forward:



Final rendered scene:


     

https://upload.wikimedia.org/wikipedia/commons/c/c7/Hegassen_scroll.jpg
Logged
darrenagar
Level 0
***



View Profile
« Reply #36 on: February 27, 2017, 06:03:24 AM »

Been a while since my last post. Time to update!

So, I've re-scripted a ton of stuff to enable a bunch of awesome features, and feel the game will now be able to stand alone from its influences.

1. The player can choose to have assistance from AI controlled 'bots' giving a multi player experience when you are playing by yourself!

2. When you start the game you choose whether you want to be Hero or Villain. The player(s) that choose Villain will select from the enemies in play (any enemy, including boss!) and take control fighting against the Hero side.

If you are playing 1 player and choose to be villain, you will be fighting against AI bot(s), effectively turning the game into a 'brawler tower defense'

you can choose any combination of these options. So for eg: if you have 4 players, 2 players can be hero, 2 players can be villain, and also have 2 bots on the hero side. It TRULY is a brawler!

Quick GIF, 3 of these players are bots.(the bots will be robotic police type characters later in development)



     
Logged

sbeast
Level 1
*



View Profile WWW
« Reply #37 on: March 03, 2017, 10:01:06 AM »

The gif looks great, I'm liking all the updates so far!
Logged

Sbeast - Composer / Cover Artist / Guitarist
http://luxbellator.com/portfolio
marcgfx
Level 8
***


if you don't comment, who will?


View Profile WWW
« Reply #38 on: March 03, 2017, 11:01:42 AM »

I really like the brawler-idea and the outtake looks fun, could imagine this being a nice party game!
Logged

darrenagar
Level 0
***



View Profile
« Reply #39 on: March 07, 2017, 07:28:46 AM »

The gif looks great, I'm liking all the updates so far!
I really like the brawler-idea and the outtake looks fun, could imagine this being a nice party game!

Thanks guys!

So, I'm going to be demo-ing the game at the Insomnia 60 gaming festival (UK) - IndieZone!

It's my first exhibition so I'm equal parts excited and petrified Screamy

To celebrate, I'll drop (a) trailer:





Yay Grin

 
« Last Edit: March 07, 2017, 07:33:56 AM by darrenagar » Logged

Pages: 1 [2] 3 4
Print
Jump to:  

Theme orange-lt created by panic