Melissa Iteration I - miwamiwa/CART315GroupPrototypes GitHub Wiki

Balltower V2

In this installment of the new balltower classic, the player is once again searching for his dog on a platform filled with balls. The player can attempt to locate the dog by whistling and listening out for his barks. They can also collect arrow crates that will temporarily point them towards the doggo. Each time the player reaches the doggo, the platform falls and a new level starts with more balls hiding the dog from view. Enjoy!

CONTROLS: WASD to move, SPACE to jump, Q or E to whistle, LEFT CLICK to kick, SHIFT to run

Devlog

We decided to iterate on our group prototype 1 because it seemed like the most stable out of the 3. It has a solid base of which we can build up and add things to enhance the progression. There was hesitation between this one and the dog factory (group prototype 3) but the dog factory had too many underlying issues and lack of goal, unlike balltower. We added a whistle mechanic to the game where the player would whistle and the dog would bark back in stereo sound, (left or right speaker depending on its location) kind of like a macro-polo game. Also, instead of displaying the arrow on an interval of time, it became a collectible item that would show an arrow pointing to the dog for a few seconds after collecting it. Only a set amount of crates (arrow items) can be found within a floor. We significantly increased the number of balls spawning between each level because it was a progression issue we had encountered in the first prototype, people thought the increase was too subtle. To avoid chaos, balls are cleared every 5 levels. We also made the dog run around randomly, as seen in prototype 3 which we figured would fit nicely in this prototype as well.

Playtest Questions

  • Are there too many balls?
  • The number of new ball spawns increases each level, and old balls are removed once in a while. Did you notice? How do you feel about the progression?
  • Did the fact that the dog moves make it challenging?
  • Are the arrow crates helpful? Should there be more? Or less, because it's making the search too easy?
  • Did you jump? Kick? Whistle? Run?
  • Did you only rely on the barks or on the arrows to search?
  • Are you interested to see the level number you're at? Should we make it more visible? (Make it a part of UI?)
  • Are you having trouble with the camera controls?
  • Any bugs?
  • Last thoughts?

Playtest Response/Suggestions

Players had no issue with the number of balls but the removal of balls every 5 levels seemed random and unnecessary. People seemed to have enjoyed the dog running around, said it was cute. People liked the idea of the arrow crate and had no issue with the amount. No one really used shift to run, it wasn't an implemented mechanic but more of a function that came with the asset. We wanted to see if people would be using it and if it helped but it seems like it was unnecessary. Some were having difficulty grasping the controls or forgetting that they could do something else. The players couldn't see the floor number past a certain number of levels because of the number of balls (we actually implemented them until level 20, but we will be adding the rest in the next iteration). There were sound bugs when there were too many balls and the camera sometimes goes out of the wall which destroys the immersion.

Group Reflections

People seemed to have liked the addition we made to the prototype in this iteration, including the dog running around, the crates, and the sound effects. Someone suggested we'd add friction physics onto the balls so that the player could jump on them to get a better view. This same person suggested we'd add a crying sound whenever the dog gets "powermove'd" by accident. To help people know the controls and functions better we could add UI elements, in-game controls reminders. The reception of the clearing out of balls after every 5 levels seems a bit ambiguous but it is necessary for the progression as it can get exponentially too overwhelming with the number of balls.