Team Object – Update Week 1 (with Timeline)


Individual Efforts

Andrew experimented with Unity, making a couple games and some test projects to understand how Unity works, essentially.  In addition, he researched a few classes in C# that are integrated into Unity, and learned how to implement them to do basic operations such as control a camera, move a player around, and create events when certain events happen (like the player picking up an object when moving into it).  Lastly, he borrowed an Oculus Rift and configured it on a PC (special thanks to Bryce for the help!) where he experimented with runtimes, demo scenes, and eventually implemented his games with the Oculus (still a few bugs to work out, is kind of jittery after the project is built).

One of Andrew's test projects: Roll-A-Ball

One of Andrew’s test projects: Roll-A-Ball

 

Grayson created the house, and is currently working on the rest of the scenery, and on a character model for the players.  He also is looking into Blender/SketchUp/Unity assets libraries to see which models we can use for the game, to cut down on time needed to create models, and instead focus time on implementation and function.  Sizhuo worked on making models, and is familiar with how to do so now.  He is now continuing on working with player-object interaction, and is focusing on the “object transmog” ability that the hiders will have.

 

Sizhuo’s Models

 

shelf mug

To quote Sizhuo, “I watched several video tutorials on Unity and SketchUp, and then made two models using SketchUp. I found that SketchUp has no built-in support for splines, so I installed an extension for creating Bezier curves. It was a good practice for 3D modelling, though I think we are going to use existing assets instead of making our own.”

Impressive!

 

Accomplishments Made by Team

Overall, we are making serious progress.  At this rate, Grayson may complete the environment for the game earlier than expected.  Andrew also found out that Oculus implementation isn’t as difficult as thought to be with Unity (though no 1st person view was implemented yet, only 3rd person), and should make things a bit less stressful come the end of the semester.  Also, all three group members are becoming acquainted with Unity, and are making solid progress on assembling the game world using Unity functions.  With Andrew working on overall game implementation  (including multiplayer and Oculus support), Sizhuo focusing on implementing and testing player control, and Grayson working on environmental aspects (objects, physics, etc) we should have a functioning prototype soon.

 

Problems

After building a project with with Unity 5, the game runs fine, but is very jittery when played on Oculus (Runtime 7.0.0 Beta).  This may be because of the runtime version, pc settings, or some other bug, which should be worked out soon.   We haven’t encountered any other serious problems, other than learning how to use Unity/SketchUp/Oculus Rift, which we are “ironing” out as we go.

 

Plans for the next week

For this next week, Andrew should have some idea on multiplayer implementation (no pressure!).  He plans on looking into a few tutorials (including a 30 hour video series…) to understand how to make a game run multiplayer, on LAN (5th client act as server, most likely).  Grayson will continue to assemble the environment for the game, including adding some test objects and looking into physics/character controllers.  When Grayson has a working model, game implementation can be thoroughly tested in a game-like environment, where bugs can be pinpointed earlier and more precisely.  Sizhuo will continue to look into making object/player scripts for basic game functionality, which can be tested in either a test-mesh world or in Grayson’s environment prototype.

 

Timeline

Much of our work is going to be incremental.  That is, we will build a functioning game, then add more implementations, and slowly make it pretty.

So by end of next week (Nov. 5th), we hope to have a working test environment, some gameplay implementation, and multiplayer configurations determined.

Other estimates by…

Nov. 12th – Have multiplayer figured out (i.e. managed to get a build where 4 players can coexist at the same time, at least have a strong idea by this time), working game (possibly?), and a not-so-pretty yet constructed game scene.

Nov. 19th – Object implementation finished, where players can join game and turn into objects.  Player viewpoints should also be implemented with some objects, so if the players turn into a tall object, they should have a tall perspective, and vice versa.  We should begin seeker implementation (guns, damage/health for players, etc) at this point (no later than this), and UI can probably start here.  We can also begin to make the game pretty.  (also extensively test Oculus Rift implementation here, to be sure it works with perspectives).

Nov. 26th – Start making the game pretty.  Add more objects, smooth out rough edges, perhaps implement additional game features (flashbangs, powers for hiders/seekers, etc).  Thanksgiving at this time, so we want to have a majority done by this point.

Dec. 3rd – Play testing, perhaps with other people to see if they can find any bugs to work out over the last week, and see how balanced the game is in terms of Hider/Seeker advantages.  Continue to make the game look nice as well (aesthetic appeal is important in a game, and especially in VR).  Also, when play testing we should have emphasis on how VR “cooperates” with our game.  Any player sickness, disorientation, or severe eye strain should be noted, and fixed to the best of our ability over the next week.

Dec. 10th – Game should be mostly/completely finished at this point.  Finals are coming, and we won’t have much time!  Planning on being done at this point is crucial in giving us a safety net in the case of catastrophic failures.  If everything goes smoothly, we can work on implementing something fun/additional, like menus, game modes, tweaks, etc.

Dec. 17th – Everything should be done/presentable, to the best of our abilities.

 

Fallback/Contingencies 

First and foremost, we need a working game.  That means players have to be able to move around, interact with objects, and win/lose based on the rule set we will come up with.  If we need to cut time anywhere, it will be on the design.  We are planning on using pre-made assets for the game, so it shouldn’t take much time at all constructing some sort of environment to work in, which may make it look not as desirable.  If worst comes to worst, we can give up time planned on making the game pretty and instead focus on implementation and game mechanics.

 

Multiplayer is a big thing for us; it’s pretty much the backbone of the game.  If we cannot figure this out, we’d be forced to resort to a single player version, with either the player a hider and a non-playable character (NPC) seeker, or an NPC hider with the player seeking.  Both would be fun, yet lackluster compared to our multiplayer idea.  Multiplayer will be one of the last items we will cut from the game, even if it means a somewhat-generic environment (we feel that the house would at least look decent with prefabricated assets, but not “awe-inspiring” without some time put in.  We may need to sacrifice this awe factor).

 

Lastly……..if needed…….we cut the multiplayer.  If there’s still time to write/find an AI script for the NPC, we will try to implement it.  If there is no time, we may be forced to cut the game part, and make the idea some sort of “household scale object simulator” where all you do is move around and turn into objects to see what it would be like.  This shouldn’t occur, as this would require MANY things to go wrong, and no effort in fixing them.  Nonetheless, our decision making should be keen enough to see this coming early, so we can brainstorm and think of new replacement ideas if necessary.

 

Possible Changes We Made

We are still going with the hide and seek idea.  One change we might make is to incorporate some sort of NPC whose only purpose is to walk around the house and move objects.  This will do two things:

  1. This will manipulate “change blindness” that will make environments look different over time.  With a couple bots, this could make it difficult for the seeker to memorize locations (we may still incorporate a random number generator to diversify the world, if we have time towards the end)
  2. At the moment, the only movement the seeker will ever see is the movement of the hiders.  By adding NPCs that move around, this will give the seeker a sense of activity in the environment not caused by other players, making it less eerie and more difficult.

 

Our plans are solid, and we are eager to move forward!  Everything we propose we feel can meet and complete within the time frame of the semester, but problems occur, and we are prepared for them.