Thursday, November 2, 2017

Going Into Our Alpha build

Development has been slower with midterms but the team has still managed to get in some new features and bug fixes. We defined a few goals for our alpha release due Thursday...

  • Fully working sidebar UI with drag and drop capabilities
  • New iteration on the drop ball UI and mechanic
  • Wall/Slow-roll Gizmo
  • Win mechanics

Sidebar

The sidebar now features fully functional drag and drop behavior. Players can drag gizmos from the bar and instantiate them into the scene. Each time a player creates a new instance, the item count in the sidebar decrements. Players can drag them back to the bar to delete them. This is dynamic so we can simply drag Gizmo prefabs to the sidebar for different levels and it will automatically space and present the gizmos accordingly.

Dropball

Instead of a constant stream of balls periodically dropping from the sources, now you click the "Drop Ball" button to a release a single ball from a finite pool of balls. This means you only have a finite amount of tries to get the balls to the sinks before you fail the level. Since only a single ball is released at a time, you can use this to test your current layout to see if it functions properly and slowly iterate on your design.

Slow-Roll / WALL

The wall gizmo is the next in our series of planned game objects. It simply allows you to ricochet a ball off a surface or even slow it down with friction. This can be used to help funnel balls into the correct bins and skillfully adjust to the chaotic variance that is added by the conveyor belts and random paths of the balls.



Win Mechanics

Big change this week is the win mechanics. A large and challenging part of this task was ball tracking: Tally the balls at the start, monitor their movement and position through the level, destroy them if they leave, and score them if they make it to the correct place. This all had to be done with many balls in a computationally friendly way.

Ball Tracking


 A score keeper object tracks the total balls, reserve balls (balls not yet released), active balls (released and moving through the scene), dead balls (have left the scene), and scored balls (have made it to the correctly colored sink). We want to make every game object as dynamic as possible so that they can be used seamlessly in future levels we design. Meaning win conditions should work no matter how many balls we start with, how many sinks we have and regardless of their color (we don't want to manually adjust how many balls you need to win).
So to do this, sources self report the number of balls they bring to a scene at the start of the level (total balls). The ball self monitors if it leaves the scene or if it makes it to the sink (dead and scored balls), and the scorekeeper monitors all of these variables and defines when the game ends and whether or not the player has completed the level successfully. Active ball count is also used to determine editing mode so that the player can not edit the gizmo objects while the balls are in an "active state."



No comments:

Post a Comment