Pages

Wednesday, October 31, 2012

End of Sprint 1

This Sprint I was assigned to work on camera functions for the player. I had a couple of things I wanted to accomplish.
-Wall Collision
-Full range of motion.

I'm pleased to say that I have accomplished these tasks even with a busy week of other school work. I'm still tweaking numbers to make the camera as smooth as possible, but the main tasks are done.

At first when working on this small project I ran into the problem of not knowing the existing code as well as I should have. With some pair programming with Blake Sleight, I learned a little more of what I needed to about how the camera was initially set up.
The Camera now checks if there is anything between it and the player and reacts when there is something colliding.
There were two ways that we implemented into the code to interact with a collision. First was it automatically jumps to the walls position, and Second was that it moves forward until there is not a collision.
Through test with both of these implementations, I decided that having the camera move forward to avoid collisions was less jarring to the player.
The Last task I had was to give the camera a full range of motion. So that you could move it Vertically as well as horizontally as was in the prototype code.
I have implemented this and tested different speeds, and I have chosen numbers that made the camera feel smooth to me. These numbers are all prone to change for later in the game testing stages.

My goal now is to put into place a bound on the vertical movement before tomorrow (right now you can move up has high as you want), and to get it submitted to git. I find that most of  my hold ups in programming are coming through working with the repository. I've never used git before and am running into lots of problems with it. With help from Mavin Martin our Programmer lead, we've been able to resolve most of the issues, but I find it still takes a lot of time out of valuable working time.

Thursday, October 25, 2012

Game Concept in place

Our team finally has a game concept! The game was originally pitched as a 3d Battle Arena Online type game (Mario Kart Battle-esque). From the suggestions of the panel, we have steered away from that and with a team meeting last Tuesday we have a concept in place.
Our Art concept is Feudal Japan.
Our Design concept is a we have a 3d Platformer. The movement mechanics are parkour like (similar to Prince of Persia, Assassin's creed). The character has objectives around a small set arena like location (a village/ town). To complete each objective the player will obtain abilities upon completing objectives to help access more of the level. The hook of our game is that you it is finally something fun to do with your xbox avatar and the funny element that your avatar (dressed  however you dress him/her and being you) is in this Ancient Japanese era town doing all of these tasks.

Specific Game design elements that have not been determined are: What are the abilities? How many Objectives? Level Design? ect..

We finally nailed something down that was not just a narrative for our game. With this decision we can now move forward building an alpha phase of the game. Something that doesn't have all the additive abilities ect, but that has our core mechanics that we need for the game. 


As an update on what I've been doing in the game is camera movement. We have a basic camera that can be pivoted left and right based on input given to the right joystick and lerps back to behind the player when released. This was in place with the prototype. My list of things to add to make it better are:

-Collision Detection for walls and other objects.

-Full range of motion not just left and right but up and down also. 

These are my goals for this weeks sprint. 

Saturday, October 20, 2012

Getting Started. Camera Project

Our Team has chosen to use git for the repository and after some instruction on that I have access to the code base. And with some instruction from our team lead who wrote the code base. I'm moderately caught up to speed on how the base of our 3D ninja game works. 

I have recently been given the charge to work on the camera function of our game. Something that I've never realized is a big factor in how a 3d game plays is how well the camera works. So I've been going through different games just playing around with the camera. Some examples that I've observed are: Mario 64, Zelda Ocarina of Time, Starwars Force Unleashed 2, Darksiders. I have plans to look at more. Some on my list are: Assassin's creed (which I know Blake Sleight our team lead is looking into since I don't own a copy), Batman Arkham Asylum, and I'm finding more games to add to this list to check out camera function. 

Of most of the games that I mentioned that I played just paying attention to camera movement I found that there were times in all the games that I felt the camera hindered my game play. They also are all very differently paced games. Force Unleashed is very fast pace hack and slash game, and the camera got disorienting at some times. Mario and Zelda were more relaxed paced games, but they also were for the N64 and used directional buttons for the camera. We are using the Xbox controller which allows us to have the right joystick to help with directional movement. The camera controls that I've liked so far is Darksiders. It has full 360 control of the camera and the movement of the character is based off of the direction the camera is facing. This is the movement that has already been placed in our game via the prototype made by the aforementioned Blake Sleight. Some of the things that I'm going to be working on is making the camera know when there are obstacles in the way of the camera. So it doesn't go through things. This causes a zooming in effect when the camera is next to a wall. Also if the player goes around an obstacle good camera's do a simple pathfinding to go around the obstacle. These are all things that I plan to implement into our camera. 

My plan of action:
-Do I little more research to know exactly what works and what doesn't.
-Really because super familiar with the code that is already in place and layout a plan to add and tweak it to make it better
-Program/Debug
-Tweak and get a super smooth and smart camera.


As far as the whole team project. We are have decided on the core game mechanics that we can start implementing and that it is a 3D Platformer. For core movement mechanics we have running, jumping, wall running, edge hanging, double jump. Similar to the movement mechanics in Prince of Persia. We still have yet to decide on what the overall goal concept of our game. The panel we pitched to shot down our area battle idea so we have to come up with a new concept. 


Overall, I am excited to work with this team. Our team leads are great at what they do and are strong leaders. Our art and engineer team have so much talent. This is going to be a busy yet awesome year.

Friday, October 5, 2012

Ninja Team!

Yesterday we were notified of which finalist pitches were chosen for our senior project. Sadly our team wasn't chosen, but I'm now on the Ninja team project! All around we have an amazing team with amazing team leads. It's looking up to be a great semester. I'm excited to have a planning meeting and to get to work on this game. I know this is a short post, but more is to come once we really get talking about the game.