Friday, September 28, 2012

Ogre3D : Making a robot arm

Game Engines is a course all about programming through and through. The teachings of this course is to understand the core building blocks to create engines in an efficient manner. Besides learning how to build engines, we at the same time learn how to use and modify existing ones to suit our needs.

Like any course this one requires homework which is done in a different manner than most schools. You are awarded "XP" points for completing a homework question, which builds up until you reach enough that you are allowed to do the midterm, and later the final exam. I started off with a simple one so as to get points more easily and start myself off easy.

All of the code we do is used by using an engine compiled and built by our professor and TA, along with the open source "Ogre3D" engine. I'll briefly go through the steps I took into understanding and creating the question I decided to do, which was to build a robot arm.


About Nodes and Skeletons

The robot arm itself is supposed to be like a skeleton, able to move its arm and fingers around such as a human would do. With Ogre3D the task isn't so bad thanks to some of its features. First of all to create a skeleton you need to have whats known as a hierarchy of nodes. Nodes essentially act as our joints and are the basic building blocks you need to make a skeleton. You want to strategically place these nodes where the joints of your body would normally be.


A Skeleton, each dot represents a node, a joint like a bone in the body

Wednesday, September 26, 2012

Portal 2 - Ways to design a level

Portal 2 is a rather simple game with pretty basic mechanics but the concept of having two portals to play with via portal gun opens itself to limitless numbers of puzzles. With Portal 2, Valve later released a level editor for the community to share. The level editor itself is very easy to use and with basic knowledge of Portal 2 of even just experimenting with the level allows you to create all sorts of puzzles. For Game Design our goal was to create a Portal 2 level with our group with some requirements.

I’m not going to talk about what I did to fulfill requirements for the assignment, instead I'm going to go through what I learned in designing a level. Essentially what I should do and what I should not do for a puzzle. These dos and don’ts are up for debate but I feel these are things that really help in level design.

My designed level (With testing and additional content from teammates)


NOTE TO THOSE MARKING THIS ASSIGNMENT : ONLY READ THIS BLOG POST AFTER PLAYING THE LEVEL

What to do!
_____________________________________________
Make it obvious what a button does

When triggering a button, you need to make sure that you see it affects the environment around you. This means if you press a button, a cube should drop down for you to use right in front of you or near you. It shouldn’t be all the way across the map where you can’t see or hear it.

Laser gate on

The reason we do this is because that way it won’t confuse the player needlessly. Have a button be in viewing distance of what the result is going to do, or at least keep it close enough so that players will see the result without having to search too much. Having an obvious audio queue can also work but isn’t as effective. We need to provide the player some feedback on their actions otherwise it’s needlessly harder. If we want to make a puzzle harder, it should be because they need to think about how to solve a puzzle, not more difficult because they need to find out what your button did and where it dropped the cube.

Laser gate off. The button is in plain site of the laser field so it's easy to tell what the button did.

In my level, I’ve positioned all my buttons in such a way as if you look close to them, you will see the result immediately or soon enough. For example, a button will drop the cube right next to you, or will raise a bridge right in front of you.

_________________________________
Lead a path for the player

In other words, don’t make a giant room that doesn’t look like it has any particular order or requires a lot of back tracking. The reason we would want to lead the player is because we want them to get to our puzzles, this isn’t an adventure game. Now there is a limit as to how much we should lead the player, don’t point out everything for them, but point enough out for them to get somewhat of an idea of where to go. Don’t have three paths and in no sequential order scattered about.


The purpose for this game is for players to solve puzzles, not wander around like an adventure game. Though designers could attempt making a level like this, the main draw to playing portal is puzzles. Any moving around without doing any actual puzzle solving could be considered boring. Walking around to get to the end of the hall just isn’t fun.

The goal is in sight, all you need to do is figure out how to disable the threats in your way

For my level I lit up the path (This was actually a requirement for our levels) but I also made it very linear, you can actually see your final destination right away. I made it obvious where you need to be, you just have to figure out how to get past the obstacles in your way. Some key areas are also highlighted by lights though you still have to figure out how to solve the puzzle once you get there.

___________________________
Allow some mistakes

The player is going to make mistakes and we shouldn’t always punish them too terribly with them. One bad thing to do is make it so if players pass a certain point, but forget something they become permanently stuck and have to restart the level. This is especially terrible if there isn’t even much of a clue that continuing without a key object will end up this. I made a jump in one level to test and found out I became stuck at the bottom because I couldn’t portal to anywhere else.

For my level, it is possible to return all the way to the beginning if you dropped a cube

One debatable thing is the use of precision mistakes. For example I played a level where I had to use a reflection cube to aim a laser to a laser catcher to cross a bridge. If at any time the laser slipped off, the bridge would fall under me. Now this is difficult to cross and it’s a neat idea but for some players it can be frustrating because they know exactly what to do but one small slip up leads to restarting a level. This can lead to even more frustration if this is right at the end of a level meaning you have to do everything all over again because of that. If I were to use this in a level, I would just force them to restart the bridge, not restart the level. Either that or have a checkpoint right at that spot.

On the topic of checkpoints, one thing to do for a level is that if you plan to have a very dangerous area where players will die, try to keep it closer to the beginning rather than the end. This way if they make the mistake of dying, they will be able to retry as soon as possible rather than having to go through the same beginning puzzles over and over. Eventually that just becomes a chore because you already know how to solve everything at the beginning and have to keep doing it over and over.

Precision mistakes are minimal as the player is given the whole length of the level to try aiming this laser

How I used this in my level, you ride across a tractor beam throughout the level, spotting obstacles in the distance. You can also see these obstacles before riding the tractor beam too. I ensured that players could return to the beginning of the level by raising a bridge if they forgot anything important. To solve my puzzle, I also give you ample time and alternative ways to get to the finish so as to avoid players blaming precision mistakes. At the end of the level, you have to destroy some turrets with a laser beam and using a reflection cube. The farther back you start on the tractor beam the more time you have to target the turrets in your path. There is also a fairly wide window you have to destroy the turrets even if you start as far forward as possible.

_________________________________
Don’t have “Troll” buttons

Try not to have buttons that will screw over the player, especially into death. Don’t have a button that immediately kills a player for pressing it, unless it’s obvious that’s what the result will be. Don’t have buttons that randomly cause effects like that or put you at the beginning of a level unless you make it clear pressing it will have that effect. It will only serve to frustrate players and make the experience worse.

These two button (left) in my level used to be unhelpful. This has been rectified.

For my own level, I did in fact have a “troll” button, where activating it would not really help you. It wouldn’t kill you or set you back, but it wasn’t helpful either. Players in general will want to press the buttons and have them do an effect of some sort that will help. My buttons simply disabled the laser that would allow you to kill the turrets blocking you from the end of the level. Now I have it so pressing the buttons will instead activate the laser so that you can proceed. I made the button actually give some benefit for the player.

__________________________________
Get rid of anything useless

This one should be fairly obvious and it’s to make sure not to have any areas that look like they mean something, but they don’t actually do anything. So don’t have a bunch of buttons in an area but pressing them actually does nothing. It will only confuse the player even more, similar to the problem I mentioned earlier of having buttons who’s effects are obvious. Don’t have corridors that lead to nowhere either, they should be either a means to complete a puzzle or a way to get to another puzzle. This is similar to the troll button issue except these serve to waste time rather than frustrate the player.

The button behind this cube is given use to flip the turret in the distance. It may be a one time use, but it always benefits the player.

For my level, I got rid of any extra areas that weren’t needed. I had a small corridor that had a reflection cube but I got rid of the cube because I had already provided a reflection cube at the beginning of the level. Hence I made sure to get rid of the corridor later because it wouldn’t make the puzzle any better. I also made sure every one of my buttons did something meaningful. This is also part of the reason I changed the buttons that disabled the laser (noted in the trolling section), because they didn’t actually help you at all. You could get by without even touching them, which confuses a player even more.


Difficulty vs. Accesibility
Level beaten!

Everything I have said is relating to making everything easier to understand for players. It is my belief that it’s a very good practice. There is a reason that Portal & Portal 2 did so well in their campaigns despite them being brief. It’s because they were all very accessible, pretty much anyone could go through the game and enjoy it. They pretty much adhered to all the “What to do”s that I mentioned. Everything was clear and straight forward, the difficulty was in figuring out the puzzle, with no other issues in the way.

Think about it, if you suddenly had useless buttons, buttons that changed things in the level far away, way out of your sight then that’s just going to confuse and frustrate you right? That’s not confusion by logic, it’s just confusion to frustrate, it does not benefit the player experience in anyway. Sure it can promote observation but the key to making levels that will appeal to players is to make it accessible and it’s easily possible to keep observation too.

That’s the point of good level design to draw in players, to make them want to play even if it’s difficult. You want to make players like your levels and play through the game. If word gets out your game is broken, punishes players and is confusing in its level design, people don’t want to play. So making accessible, but difficult levels is really the best way to go. It’s simply good level design.

Sunday, September 23, 2012

Goals are the Spice for Games

Multiple game types are no strangers to games. Video games have been implementing multiple different modes for you to choose from since the very beginning. These can range from coop, to multiplayer and such but the most drastic thing to change are the goals to winning the game. The mechanics of the game remain intact (such as going from Campaign to Multiplayer) but the goals to winning have changed. No longer do you focus on getting to the end of the level and continuing the story. In multiplayer your goal can vary but the most common one is get the most kills, either solo or with your team.

Within the subset of multiplayer lies a vast array of different modes though, each with different goals. The same can be said for some singleplayer modes as well. The point is that changing the goal can affect how you play the game itself. 

In my Game Design class we did an activity for the purpose of looking at different goals in a single game. We played a coin tossing game essentially, with everyone having different goals. It was easy to see some people playing much differently, such as one person flicking coins to try and knock off others the whole time, while others were simply trying to flip coins to land on another coin to gain points. After seeing this activity I could really see how much goals can vary the gameplay.

For this post I'll take a look at various games and the other modes with different goals they offer and see how they change the experience. Let's first take a look at Left 4 Dead 2 and how a goal change in the game leads to different level design.

Left 4 Dead 2

Campaign mode vs Survival Mode

Left 4 Dead 2 is a survival horror shooter with cooperative gameplay in every mode it has. There is always a team you are with, you are never alone. If you decide to run alone you will be easily picked off by the infected. In the main campaign it has you and 3 other players trying to reach the end of the level. In the campaign, you move with your team from point A to point B, hoping to make it to the next checkpoint before dying. Simple enough, how pretty much every other campaign works in a shooter. 


Campaign mode: Beginning of the first level 'Crash'

However in the alternate mode survival, your goal is now to stay alive as long as you can with your team. Your goal is no longer to move from location to location but to simply hole up somewhere and give it your  best shot to stay alive. There is no winning in this mode, there is simply the satisfaction of getting the longest time alive in a level.

You still have access to the same items as you would in campaign but in terms of level design there are several changes.

  • In survival you are no longer forced to wander around or being forced to go to certain areas to proceed. You can stay in the same spot for as long as you want, but the catch is that the areas you can go are now limited. 
  • Survival mode takes place in much smaller areas and wandering off is not a wise. Another difference is that the amount of enemies is increased so surviving can actually become a daunting task.
  • You have unlimited supplies for ammo located in an unsafe spot (Depends on the map but typically its not easy to get back to supplies). Health packs are limited however
  • Special infected appear more frequently, especially Tanks.

Survival Mode - There is now a timer to show how long you've been surviving


With Survival mode, things have to be changed in terms of level design in order for the mode to work properly. Simply putting you in a campaign level and telling you to survive though it does change the goal won't actually make it fun. By changing a bit of the level design and rules slightly to fit with the now changed goal, it allows the mode to be significantly different to play then the campaign counterpart. Otherwise it would just be campaign mode with a slightly different shell which wouldn't be different, wouldn't give variety and wouldn't help the game.

By making a game mode with a different goal, it forced some aspects of the game's level design to change as a result to accomadate the goal. The experience is different and gives another way to play the game just because of a decision to change the goal of the game.

Let's take a look at another popular shooter with several different game modes.

Call of Duty

The Call of Duty franchise has had a wide array of game types (so have many other shooters) since the very beginning. Here I am going to outline three distinct game modes with very different goals from each other and methods of victory. Let's compare these modes which are Team Deathmatch, Domination and Search  & Destroy.

Multiplayer Modes

Team Deathmatch is the typical get as many kills for your team as you can. The first team to a certain number of kill is the winner.

Domination's goal is to hold 3 areas at strategic locations. These areas are always located in the same spot and once captured will give points to your team for every second they are under your control. They can be recaptured by enemy players. The team to get to the score limit first wins.

Search and Destroy is different than the other 2. For one you only have one life for a round and there are multiple rounds in a match. Teams alternate between defending and attacking. Attackers need to place a bomb and have it detonate, or kill the entire enemy team to win. Defenders need to run out the time limit (rounds are only a few minutes), defuse the enemy bomb if they planted it or kill the entire enemy team.

Comparing the Modes

So now let's compare them all shall we. Team Deathmatch has the most simple and typical goal, run around and kill as many people as you can. The most efficient method to achieving victory is to make sure you die less than you kill. This is typically considered the most "mindless" of the mode since it's not always necessary to think up advanced tactics to get a certain position.


Team Deathmatch - You can see the score required to win in the bottom left

Domination requires more thinking because you need to have people cover the areas you have captured as well as send in people to capture other points. Its a constant balance of keeping what you have and taking from the enemy. Since the goal is now different then Team Deathmatch, it becomes unadvisable to run around the edges of the map, far away from capture areas because that won't help to attain victory for your team.


Domination - Three locations A, B and C to capture and defend


Search and Destroy becomes far more challenging with a lot of varied goals all around in the mode. In order for these goals to become available (such as taking out the entire enemy team) some changes needed to be made. For taking out the enemy team, the rule of unlimited lives had to be changed to a single life to accommodate the rule. 


Search & Destroy - Attacking team planting the bomb

As can be seen, changing the goal to winning the matches presents themselves to very different gameplay styles. Some require less tactics to achieve the win, while others work a lot better with coordination and are much more punishing. Since some levels have objectives placed in certain areas, different levels can become signifcantly different to play. Such as for domination, which will differ much more in tactics due to different locations of capture points in maps then it would for Team Deathmatch.

 It can also be seen that for some goals they need to modify some core rules of the game in order to function properly for modes like Search and Destroy. Unlimited respawns would not work in a mode like Search & Destroy, though it could turn into a different game mode still involving the use of planting bombs. Those modes come in the form of demolition and sabotage.

Now that we've seen how goals can change how everyone has to coordinate together, let's take a look at another game which allows multiple goals to achieve victory.

Age of Empires II



In Age of Empires II, as an RTS you have the option of selecting from a variety of different victory conditions (goals). There is a selection of standard victory as well as alternative victory conditions. You can win any standard game with any of the following Standard Victory conditions.

Standard Victory

  • Conquest : Defeat all opponents. To defeat an opponent destroy all their units and buildings.
  • Wonder Victory: Build a wonder (Takes a ton of resources to make) first and keep it for a set amount of time to win.
  • Relic Victory: Control all relics on the map. These can be taken into and stored into monasteries by monks. Keep them all for a set amount of time to win.
You can complete any of these during the course of a standard match which means you have three potential ways to achieve victory. You can also opt to force everyone to only be able to use one type of victory when creating a game. So you can make a conquest only victory game, or Wonder only, etc.

Alternative Victory

  • Timed Victory: Have the highest score at the end of a certain time, or defeat opponents before then.
  • Score victory: Reach a certain score first. Score is determined by resources gathered, buildings and units built, map exploration, etc.
For these alternative goals, they use a system to calculate score based on the value of your units, buildings, research, resources, units killed and map exploration.

How these Victories make the game different


A Wonder- This is one way to achieve victory in a normal match

It's interesting in a standard game where you can try to opt for any one of the three standard victory conditions. It means you players can decide a tactic that best fits their strengths and their position in the map. They could try defensive via using a Wonder, or explorer by looking for all the relics, or even opt for offensive by going all out to try and destroy everyone. 

This system really appeals to players of all sorts of styles because a defensive player who likes to make a really strong castle would be at a disadvantage in a conquest only mode. They can use their wonder as a chance to obtain victory by staying in their base. And likewise it gives offensive players the chance to go and stop that Wonder camper by destroying everything in their base. Its a very flexible system that shows how giving multiple goals in a single match can cater to players. This also shows how having different goals will promote different styles of play.


Monastery - This can be used to store relics located around the map and is another way to achieve victory

The score system also lends itself to a slightly different style of play. You would still want to be using winning strategies to outsmart the other player but if things draw to a standstill or go to long, there is a chance you can still win by alternative means like exploring the map while one player stays inside their base. Having this different win condition can change your tactics on the fly.

So as can be seen, even with different goals, the base mechanics of the game didn't have to change. The resource collection rate hasn't changed or anything like that, or your unit creation limit isn't changed. The goals are the only thing that will differ which by themselves will make you play the game differently.  And that's the point of goals, to change how you play a game and promote variety and refreshing strategies.

How Goals change the game

Goals can vary in the way they influence the game. As can be seen in COD's Search and Destroy mode, it sometimes require some core rule changes (no respawning) in order to work properly. In Age of Empires II's case, they didn't even require core rule changes.

Whether they change the core rules or not they promote changing the way you play. It makes you think different, aim for things that you wouldn't do in a different mode. The purpose behind multiple goals and game modes is variety, to cater to different playstyles and give different experiences to players.  Sometimes you make the goal the same for everyone, othertimes you allow everyone to win in different ways. The choice in doing that lends itself to allow the game system to used to it's full potential and provide a larger amount of ways for players to enjoy themselves. Not everyone enjoys the same game type, so multiple modes is a great way for players to choose how they want to play and match up with others that want to do that mode as well.

This is how I've seen different goals affect the games I play!

Wednesday, September 19, 2012

Basket-Ball - Game Design Class Activity Breakdown


Game Design and Production has never shied away from doing class participation though always to various extremes. Today was the most involving and interesting class activity in a while. Usually class activities are with small groups of around 5 or so, but this time it involved splitting the entire class into 2 very large groups.

The objective was for each group to make a game within around 25 minutes and had the following guidelines…
  • You have 1 ball
  • Objective: Get the ball into a basket
  • Use whatever you want in the room to help with the rules of the game

To set some perspective on the environment we were in, it was a large room, with about 8 rows of long desks extending across the room. Here is a picture to show the room we were in and how we could use.


Our group demonstrated our game first while the 2nd group did so afterwards. I will put it out there that they were interesting for the time given to make them but overall they were pretty bad games.


1st Game – Chaos Bounce

Rule overview

The group I was a part of. For our game we made it a team based sport with 5 players on each team. The goal still is to get the ball in with one team starting with the ball in possession.
  1. Teams are to position their players around the field strategically before the match begins. They were allowed to stay on top of the desks.  
  2. An important thing to note is that players cannot move from their initial spot. They are allowed to take a step out but leave a foot behind as well as move their hands to block but they cannot take a real step out. The only time they can move is when they have the ball in possession, and are allowed 3 steps. 
  3. This makes it important to pass the ball around as you won’t be able to score if someone is blocking your way. An important thing to note about passing is that when passing you must bounce the ball on a surface first to your teammate. Fairly to do so was not actually given a consequence yet but you just weren’t supposed to.
  4.  If somehow a player misses passing the ball, since no one can move from their spot, it will automatically go to the closest player.
  5. One final rule is that players cannot position themselves too close to the basket so that they cannot easily dunk the ball in.
  6. An added rule near the end was for every player to take a chair and choose a position to place it on the tables around so that it could prove to be an obstacle and block other players.

Players must always bounce the ball when passing



Problems with the game

Breaking down the game, it became pretty obvious it was similar to handball and basket ball. The handball rule of only moving a certain amount when holding the ball applied with our rule #1. The basketball aspect came from rule 3, bouncing the ball. However it was obvious it was a very static and rather boring version of those games due to the fact that no one else can really move except for the player holding the ball. It makes the game a lot slower as repositioning will only happen when another player manages to get the ball and they really cant move too far.

Another problem lies with rule 4, which sends it to the closest player. It should have been automatically given to the other team because the passing team made a bad throw and should be punished. Otherwise they could simply throw it really far, reaching their teammate on the edge and being out of reach of anyone else so they can automatically get the ball.

The whole positioning of the game is interesting but honestly really slow and boring. A player could literally stand there and never get the chance to do anything in the game. Nor can they make “good plays” by getting into position at a good moment. This is like a turn based bored game with some interaction between players, not what a game with a ball should really be like.

Chairs as an obstacle were there but didn't really matter all that much


What could be improved

In a game like this, you really need to have some control over your movement, either that or the rules needed to be changed because it would have just become handball. Games with static movement in a physical sport are not generally as fun as those that have some movement. The idea of positioning is neat, but it needed to have just a bit more movement because if you never got the ball, you were pretty much stuck.

There were also simple rule changes that could have made the game better but weren’t put in time to be applied to the game, such as the ball going out of the reach of players.

Conclusion

For a game made in 25 minutes though, it isn’t bad but it wasn’t particularly fun either. I volunteered for testing the game though only with 3 on 3. It was honestly not interesting because I never once got the chance to get the ball due my position. I already went over the problems with positioning but honestly it just wasn’t too fun.  It looked like it had potential due to the positioning of chairs and people, however people on the edge of the area just couldn’t do as much as people closer to the basket.

2nd Game – Human Foosball

Rules Overview

The game made by the 2nd group, I honestly didn’t hear all the rules but the basic gist of it was human foosball. For some reason both of our groups decided that we should have minimal movement in this game and be stuck in the same position for most, if not the entire game. With their game, you could not move at all, no matter what, you stayed in the same position.

The basket was placed in the middle of the field, where it was surrounded by members of the two teams in foosball like positions. They litered all the rows of the area, (not allowed on the tables) with around 10 or more players on each team. They essentially slapped the ball, trying to get it into the basket. It was simply mindless hitting into the center which looked kind of fun and intense at times but overall was as static as our game.

Problems with the Game

People in certain positions hardly ever got to see the ball or get a chance to hit it, which in all honesty doesn’t look like too much fun. Since they were forced to stay still in that position, it made players in the center the most likely to hit the ball and have the most fun, while players on the outer edges got it far less frequently. There was a lack of balance in who got to hit the ball the most due to these positions so the fun factor was not equal.

Another problem was that players would often hit the ball out of boundaries which slowed down the game since they had to go pick it up.

The Legendary Game Design Ball

What could be improved?

It was honestly an interesting idea but if the game allowed for a bit more movement then it would have been better. Something I would have done to add to the fun was to allow some limited player movement. Players should be able to move around a bit in their row, a limited distance but not running into other players (if they happen to be in the same row). This would allow players to be more mobile and have a shot at being able to hit the ball to where they need to.

The basket was also located too close to players, if they were farther back they it would have allowed for more shots on the net that weren’t blocked by players. It would have given an opportunity for more scoring. The demo by the other group had no one scoring in the timeframe they were given.

Conclusion

This game was even less mobile than our game which I don’t find to be that good of an idea. It definitely looked chaotic like our game but I noticed a good portion of people who rarely were able to hit the ball. The idea was interesting but seemed to lack in fun factor for those on the edges.


The goal behind this activity

Both games used a mix of level design and Game Design. We created the rules but then we fit those rules and mechanics into the field we were to use, which is the goal of level design. I can tell that both groups thought more so about the game design aspect then the level design aspect. Though the rows of desks were incorporated, the only other level design that came about from the activity was for my group, (Chaos Bounce) which incorporated chairs into it to make more dynamic levels.

There has been a lot of emphasis on level design these past lectures so I believe it would have been more beneficial if we had put a bit more interesting design into the use of the room. Group 1 (Chaos Bounce) however had better use then group 2 (Human Foosball) so my group wins!

Monday, September 17, 2012

A look into Super Smash Brothers Brawl’s Engine


Super Smash Bros. Brawl may have been released 4 years ago, but that doesn’t mean there isn’t something that can be learned from it. Knowledge from classes from the previous year have made me realize just how some of the systems in Super Smash Bros. Brawl now work. I won’t have code or anything but I do have tons of experience with this game so some of this is speculation but I do have some proof too!

Physics & Gameplay

For this entry in the series, they were able to get the Havok engine into their game. But Super Smash Bros has always dealt with physics in it's own way and having Havok only helps. With Havok the game deals with physics in ways that don’t deter from the core gameplay the series is known for and adds several things that make the game more dynamic then it used to be. 

A brief overview of how the gameplay works is that characters are knocked off stage, flying further the more damage they receive until they are KO’d offstage. The distance someone flies away is based on several factors...

1) The character’s weight – The lighter the character the farther they fly when hit. Heavier doesn’t fly as far. In general heavier character are slower and lighter are faster.

Mario is considered average weight while Bowser is the heaviest character (Weight values found here)


2) The floatiness of the character – Some characters are inheritly floatier, meaning they will fly up higher when hit then someone who is the same weight but has a lower floatiness. In general all characters are floatier in this game then they were in Melee. You also cannot fall as fast as when you're floaty.

These two have the same weight but despite that Samus falls much slower and is easier to knock farther vertically (Fall rank found here)

3) The amount of force in the attack – Some attacks will send players flying farther compared to other attacks. Some attacks from items like the “homerun bat” have enough force to usually knock an opponent off to the side regardless of weight or their damage.

Smash attacks have some of the most force in a character's movelist usually


4) Damage Percentage – Determines how far a character will fly from an attack. This is NOT a direct ratio of distance however. A character at 100% damage will not fly 100 times farther than a character at 1% damage. Nor is it true that You will fly twice as far at 200% damage compared to 100%. Rather than linear ratio of distance, the game uses an exponential formula to calculate how far an opponent will fly. 100% compared to 50% sends an opponent flying much farther away and that distance also depends on the force exerted. The exact formula  for this is not known (By me).

Link flies farther when hit since his damage is higher

5) Stale Moves – This is a more minor addition to how the game handles force of attacks. Basically the game keeps a counter of how many times you have used a particular move. For example, Mario’s forward Smash attack, which is very good for KO’ing. If you have only used that move, it would check the counter based on how times you used that move in a row and hit with it, compared to other moves you have used to it with recently. The amount of damage and force that the move would apply would be reduced based on this counter. Therefore the game endorses using a variety of moves rather than just spamming one single move. Basically if one person uses the same move too much, the force they can apply to knock an opponent away is reduced.

6) Directional Influence – Not known to many but this is a way to influence the direction you’re flying when hit. By mashing the control stick in the direction you want when hit, you can reduce or increase flight distance.


Havok Additions
Besides these basics, Havok applies some additions to the series as well, these are…

A. Collision of characters – When an opponent is knocked away, if they pass through another character on screen, they will collide into them. The person who was flying will have their flight distance reduced based on weight of the character you collided with. Usually this results in a significantly reduced flight distance upon hitting another person. For the person that is hit, they will fly a distance based on weight and force the other character is experiencing from flight. A set modifier seems to be added in order to reduce the distance the person hit is, since in all cases this person seems to only get knocked back a short distance. The only way you can be KO’d like this is if you’re already near the edge of the stage.

B. Weight to items – Some items are put on wheels such as crates. These items typically are given a large weight from the start and they can begin to move if they are on an inclined surface. If they happen to hit anyone on the way, the speed the crate is at will determine the force the opponent is sent flying. For these items the weight seems to be rather significant as it’s been shown to KO many characters or set them a large distance if at a high percentage. Items can be influenced by the wind as well to send them into characters as well.
Crates in Smash Bros now have weights

There are other additions that Havok or the base Smash Bros system uses for other things involving gravity that aren’t easy to tell apart. But they are in the game one way or another.

Animation & Skeletons

The game uses a skeletal animation system, this can be observed from watching Brawl moveset hacks. In these videos provide cool insight into how the skeleton is assigned to the mesh of a character. The mesh is attached to the skeleton and assigned the correct weight values to coincidence with the joints of the skeleton. Each model for a character would normally be assigned appropriate weights that fit with their particular skeleton. Once you start assigning different movesets to different characters, its basically trying to use a different set of animations which belong to the character who's moveset you're trying to mimic.

A video of Brawl Hackers switching movesets of characters Part 1

For example if we have Mario and we try to give him Luigi’s moveset, they may look similar but Luigi’s skeleton is not the same, with different proportions and with his mesh assigned to weigh correctly with the skeleton. Mario will therefore appear distorted since now he is automatically taking Luigi’s skeleton, but still using his own mesh. He appears to be stretched and is also using Luigi’s animations now. Also, certain moves that Mario does applies automatic particle effects which will still appear despite having Luigi’s skeleton. This is because those particle are still assigned to the character of Mario and since we are identifying him as still being Mario, he will get to have those fire effects in his Smash Attacks.

Part 2 of the moveset swaps. Notice how no one's meshes are breaking. It appears they all have a similar skeleton structure.


There are issues with missing animations however. If Mario was to use his down+B, which brings out his FLUDD water tank, Mario simply spawns the tool on his back, there is no animation (0:50 of the video). Luigi’s moveset however requires an animation to do the down+B attack (Luigi spins around). Since there is no animation, Mario will simply go into a T-Pose since it’s trying to reference an animation that does not exist in Mario’s data and will become unable to move due. If Mario had a normal down+B move, he would be able to reference an animation since it would likely fill that slot in Mario’s data. Sometimes the animation can break anyways even if they do have an animation in that slot, so its hard to say for certain why that is since moveset hacking is, finicky.

Final Part of moveset swaps

For the most part having a character and giving them someone else’s skeleton seems to work. Since everyone seems to be able to use each other skeletons, we can come to the conclusion that their skeletons all in fact have the same hierarchy and number of nodes. The only difference is the position of those nodes which causes the weird distortions we see in characters (such as Mario's face being weird in the first video). The only problem is a few missing or broken animations due to characters having different properties for their attacks which cause the T-Pose to activate. It's cool that they were able to make the right number of nodes that would fit all their variety of characters, from Bowser to a more humanoid character like Mario. It becomes scary when one gives a little character like Pikachu, someone big like Ganondorf’s moveset…

Pikachu becomes a creature of pure terror

Other systems

I won’t go too far into how the particle system works because I don’t really have too much information on the rendering system of the game. So I won’t spend time just purely speculating without any actual stuff to go on. All you need to know is that the game looks very nice for a Wii game, character models and particle effects.

Conclusion

That pretty much raps up this post. Thanks to moveset swapping I was able to look in detail about how the animations in the game worked as well as the meshes and skeletal animation system. Physics on the other hand were found with just years of experience with the game as well testing and observation. Thanks to Game Dev now I can see this game in a different light!