First Testing (Functional) Build

In this post, we will be discussing the work of each teammate prior to our development of our first functional build. This game was designed for Google Cardboard VR. For the purposes of sharing screenshots, they have been recorded within the Unity 3D Game Engine.

Video of Gameplay:

Screenshots of the Game





Jonathan's Commitment:

During this phase, I spend many hours focusing specifically on the projectiles. As I mentioned in the video explaining how the game works, the play has about 15-25 seconds before the projectile chooses a random wall, a random x, y, z coordinate on that specific wall, rotate itself to face the player, and apply rigid body force directly to the player.
Objects in the room are then also tagged so the projectile knows what it is hitting. If it misses the player, it removes all created boxes, and moves onto the next level (each level adds another projectile). If it hits the player, it ends the game.

Things I did:
  • Remove the room and replace with 6 textured, tagged walls
  • Create User Interface gameObjects for the Score Text and Level Text, located in the world space
  • Create the Projectile Prefab with RigidBody (No gravity), tagged as trigger
  • Wrote 4x scripts: Timer, Projectile, Scores, and Level Counter
    • Timer: Looks if a timer is already started, if not it sets a timer for 15-25 seconds chosen at random. After x amount of seconds, it creates the Projectile in a set position.
    • Projectile: This script overrides the previous position set for the projectile. It chooses one of four walls at random. Then from that specific wall, it claims random X, Y, and Z coordinates. It rotates itself to aim at the player, and launches with the rigidbody function. Depending on what it hits will have different outcomes and call their scripts respectively.
    • Scores and Level Counter: These two scripts work in tandem to keep track of what's happening. The Score tracks how many times the player has been saved, as well as how many times in this specific level it has been saved. If the current amount of saved projectiles is the same as the current level, then the player can progress to the next round, and it resets the timer automatically. These scripts are also responsible for updating text.
Jonathan's Code

Comments

  1. Matthew's Commitment:

    My focus was on the main mechanic which was being able to build a fort around you to protect yourself from oncoming projectiles. The player is able to build a block at wherever they look at any distance.

    Things I did:
    Implemented raycasting in the build mechanic for the player to be able to place a block at wherever they looked and clicked. The raycast would cast from the main camera object in the scene.

    Added a marker at where the raycast hits so that the player can visually see where they are placing their next block. Also made a green transparent material for this specific prefab.

    Made prefabs for the blocks in a "Resources" folder to allow for the instantiation of blocks into the scene and have tagged them in a manner to be able to place blocks onto other blocks.

    The building functionality is implemented in one script called "BuildBlocks".

    ReplyDelete

Post a Comment

Popular posts from this blog

05/05/20 UPDATES After Playtestings:

Minimum Viable Product: Cardboard Building Blocks