This week I added secondary mechanics such as torches and flares, and looked into more AI elements. We now have a flare that allows the player shoot something and see further then he ever could before. We also have a torch that the player can place to have a place permanently lit.
I improved the wandering AI. There was a bug in the AI that was causing the spiders to mass in the center causing distress for the players. I looked into this and now it seams that the spiders wander all over the map equally making the mass of spiders much less likely.
I looked into how I could do walking on walls/ceilings with the current AI system I was using. It turned out not to be possible with unity's navmesh system. There is a strict limit on the slope for navigation meshes so it is impossible to go strait up walls. I talked to Lawson about this during my discipline review. He suggested just to involve simple iterations with walls if we want to do stuff with walls, such as going strait up to a window rather then path-finding around the wall. Based on the feedback of my group though, this is not a huge thing and can be looked more into later in development.
I also started working on a jumping attack. I am currently doing all of my spider movement using unity navmeshagent. This does not allow me to tell the spider to jump. Because of this I will attach a rigidbody temporarily to do my jump physics and remove it to go back to AI after the jump is complete. When I was working on this yesterday I was unsure of how the jump sequence should happen so I talked about it in our team meeting. We decided that we would have the spider jump towards the player a a certain distance, and when it hit something it would stop moving in the horizontal direction and just fall strait down. If the something it hit was the player it would do damage. We also discussed having an animation for the initial jumping off the ground, in the air, hitting the player, and landing.
We were originally planning on presenting for stage 2. At the end of the week we all agreed, however, that it would be better to give ourselves some more time. For stage to we are supposed to demonstrate our core experience and I did not feel we were there yet.
We had talked about definitely wanting some sort of melee system but we have yet to jump into what that exactly entails. We talked about having it not do damage but just knock enemies back. Regardless of what we decide to do with it, I think it is a core part of our player experience.
Wednesday, October 15, 2014
Wednesday, October 8, 2014
Screams From The West Iteration 2
So this week we decided that we wanted a complete game flow. That meant having a start screen, a win state and a lose state. I decided to just take the egg sacs that we currently had in the game and make them destructible for the player.
Another thing I looked into was adding an aimer for the player. The way this works is I put an image in the center of the screen to let the player know where he is aiming. From here I do a raycast from the camera point out 300 units into the world. If it doesn't hit anything then the bullet travels in the direction from the player to that end point. If it gets interrupted by ground or spider it goes in the direction of the player to what ever the ray hit. This allows for the player to aim reasonably in a 3rd person view point.
At the end of the week we were able to implement sound. There is a sound for the player shooting that has a reloading sound in it. Because of this I decided to add a delay on how often you can shoot to better match the sound. There is also sound for when you are out of ammo and take damage. The spiders make a walking noise as well as an aggressive noise when they detect you. This allows the player to be more aware of when things are going after him/her.
Overall I felt we made good progress this week. The sound added a lot of feeling to the game.
Another thing I looked into was adding an aimer for the player. The way this works is I put an image in the center of the screen to let the player know where he is aiming. From here I do a raycast from the camera point out 300 units into the world. If it doesn't hit anything then the bullet travels in the direction from the player to that end point. If it gets interrupted by ground or spider it goes in the direction of the player to what ever the ray hit. This allows for the player to aim reasonably in a 3rd person view point.
At the end of the week we were able to implement sound. There is a sound for the player shooting that has a reloading sound in it. Because of this I decided to add a delay on how often you can shoot to better match the sound. There is also sound for when you are out of ammo and take damage. The spiders make a walking noise as well as an aggressive noise when they detect you. This allows the player to be more aware of when things are going after him/her.
Overall I felt we made good progress this week. The sound added a lot of feeling to the game.
Wednesday, October 1, 2014
Screams From The West Iteration 1
So as discussed earlier we decided that the asymmetric multiplayer wasn't really going to work for this project. So what we are thinking now is 4 networked players working together to complete goals in a town overrun with spiders. These goals would be procedurally generated so that the game play would be different every time. Some examples of goals would be saving towns people, destroying the egg sacks, and collecting a certain amount of gold. The player would do this with limited resources starting out only with a few bullets in a gun and a lantern that requires oil to work.
In our current prototype we showed off some of the basic mechanics. This includes having a weapon, a lantern and enemy spiders seen in the last prototype. It has been changed to feel darker and more vast and the lantern also now gives the ability to stun.
Here the spider gets stunned and turns red to let the player know. This will soon be changed to an animation that lets the player know but this was easiest for now. The stun has diminishing returns that last up to 5 seconds and max out at three stuns. The collisions for the stun is not ideal at the moment because I am using a series of ray-cast so that it only hits the first spider rather then all of them. I will improve on this in the upcoming week.
This is a screenshot of the player shooting. As you can see the radius of the circle around the player is larger here then it is when the player is using his lantern. The thought behind this is that the players eyes would adjust to be able to see around himself more than when the lantern was out. The bullet is also lit so the player knows where their bullet goes.
Right now I am using the unity navigation system for the spider AI. This works fine for the prototype but if we want to go further with the AI I will probably need to make my own system. We are thinking of having different spiders that climb on walls and drop from the ceiling. These sort of systems probably won't work using the unity navigation system. This AI would add a lot to the game and is of a decently high risk. Because of this after adding a few more systems to make the game flow complete I will probably be prioritizing the AI.
In our current prototype we showed off some of the basic mechanics. This includes having a weapon, a lantern and enemy spiders seen in the last prototype. It has been changed to feel darker and more vast and the lantern also now gives the ability to stun.
Here the spider gets stunned and turns red to let the player know. This will soon be changed to an animation that lets the player know but this was easiest for now. The stun has diminishing returns that last up to 5 seconds and max out at three stuns. The collisions for the stun is not ideal at the moment because I am using a series of ray-cast so that it only hits the first spider rather then all of them. I will improve on this in the upcoming week.
This is a screenshot of the player shooting. As you can see the radius of the circle around the player is larger here then it is when the player is using his lantern. The thought behind this is that the players eyes would adjust to be able to see around himself more than when the lantern was out. The bullet is also lit so the player knows where their bullet goes.
Right now I am using the unity navigation system for the spider AI. This works fine for the prototype but if we want to go further with the AI I will probably need to make my own system. We are thinking of having different spiders that climb on walls and drop from the ceiling. These sort of systems probably won't work using the unity navigation system. This AI would add a lot to the game and is of a decently high risk. Because of this after adding a few more systems to make the game flow complete I will probably be prioritizing the AI.
Wednesday, September 24, 2014
Asymmetric Survival Game
This week we decided to explore an asymmetric networked multiplayer game with a horror theme. I enjoy playing competitive games and have experience making asymmetric multiplayer games with pew. Ryan and I were both on that team so we are slightly hesitant towards this idea because it is close to something we had already done before but at the same time it could still be different enough to be fun to make. In the prototype I made you can switch between both sides of controlling a giant spider and controlling a human. In the full game there would be multiple humans fighting against a giant spider player.
This is a screen shot of the giant spider laying an egg sack. Egg sacks spawn a smaller spider every ten seconds. The only mechanic currently worked out for this character is to lay these egg sacks. We have other ideas such as setting up webs as traps but those are not fully thought out yet.
This is a screenshot of the human fighting off the horde of spiders that the giant spider just created. It is night time for this player so he has a lantern. He also has a gun with limited ammo at the moment.
Though we had fun with the conception of this idea I think we are starting to lean away from asymmetric multiplayer. One of the major issues with this idea is that it would rely heavily on the spider player knowing what he is doing for the game to play correctly. In the setting that this would be played the most, the QA labs, the players will be new to the game. It may take 3 games or so for the spider player to get it and during that time the other players aren't enjoying or truly testing the game. And by that time he will have to switch to a different game or role. Because of this and a few other reasons we have decided to take the game as a multiplayer coop against spider AI that I will get more into next week.
This is a screen shot of the giant spider laying an egg sack. Egg sacks spawn a smaller spider every ten seconds. The only mechanic currently worked out for this character is to lay these egg sacks. We have other ideas such as setting up webs as traps but those are not fully thought out yet.
This is a screenshot of the human fighting off the horde of spiders that the giant spider just created. It is night time for this player so he has a lantern. He also has a gun with limited ammo at the moment.
Though we had fun with the conception of this idea I think we are starting to lean away from asymmetric multiplayer. One of the major issues with this idea is that it would rely heavily on the spider player knowing what he is doing for the game to play correctly. In the setting that this would be played the most, the QA labs, the players will be new to the game. It may take 3 games or so for the spider player to get it and during that time the other players aren't enjoying or truly testing the game. And by that time he will have to switch to a different game or role. Because of this and a few other reasons we have decided to take the game as a multiplayer coop against spider AI that I will get more into next week.
Wednesday, September 17, 2014
Magnetx Prototype 2
This week we decided to further explore Magnetx. The two main things I added to the prototype is having the magnet powers lock onto magnetized objects and adding basic blocks to push and pull.
This is a very simple mechanic of being able to pull and push blocks within the environment. This would later be used to solve puzzles.
This is a very simple mechanic of being able to pull and push blocks within the environment. This would later be used to solve puzzles.
The way this locking on mechanic works by using what we had before and adding a lock on target effect. Once you hit a magnetized object the magnetized rays point towards the point that they hit regardless of where the player goes. This gives sort of a grappling feel.
This grappling feel was definitely very fun and could work in our platform puzzle environment but the problem is that it starts go away from the realism of magnetization. Mechanics such as this could be fun in a platform puzzle but don't represent how magnets really work. So we have to ask ourselves if we were interested in the mechanics or the realism of magnets.
Tuesday, September 9, 2014
Stealth Kids Game
This week my team decided to explore a co-op stealth game. The setting of this game takes place in a 1950's house. The main characters are two kids that are trying to sneak cookies without their parents knowing. This week I made a basic game play prototype to show off the kind of mechanics we would have in our game.
An interesting part of what I did this week was my detection implementation. The initial goal was to create an accurate cone of vision for the parent. I decided that an easy way to do detection that would not see through walls would be to use Unity's line-cast or ray-cast systems. So I created an object that would take a start point, an angle, and a distance for line casting. It also had a line render attached to it so that the detection could be displayed. From here I wrote a generator script that took in an angle range and a transform and then created these line renders around the given transform. In the picture above I have a parent with a range from 0-70 degrees creating a cone like shape of vision.
In this second picture the kid is in range of the parent but is not detected because the line-cast does not go past other objects.
An interesting part of what I did this week was my detection implementation. The initial goal was to create an accurate cone of vision for the parent. I decided that an easy way to do detection that would not see through walls would be to use Unity's line-cast or ray-cast systems. So I created an object that would take a start point, an angle, and a distance for line casting. It also had a line render attached to it so that the detection could be displayed. From here I wrote a generator script that took in an angle range and a transform and then created these line renders around the given transform. In the picture above I have a parent with a range from 0-70 degrees creating a cone like shape of vision.
In this second picture the kid is in range of the parent but is not detected because the line-cast does not go past other objects.
Wednesday, September 3, 2014
Magnetx Prototype 1
The first game we're looking into doing for senior team is a game called Magnetix. In this game you play as an electromagnet in a puzzle platform environment. We have ideas of exploring magnets and different things that magnets can do too add to the fun of this puzzle game.
For this first week though I created a prototype that shows off the base mechanic. This prototype has attracting and repulsing abilities for the player. In order to do this I first had arms that rotate around a single axis. From here the player could left/right click and shoot out attraction/repulsion lines in the direction the arms are facing. This was done by simply adding force relative to the direction the arms are facing.
As you can see in the image above the attraction lines can be used to move the player towards objects. This can be useful to get to higher platforms.
The other option is to use repulsion. In the image above it is used on an object directly below the player to shoot him strait up. This could be used to get over areas that maybe have traps in a pit but there is a magnetized area to push off of.
Overall this prototype was successful in showing that these sort of physics can be fun. As soon as you jump in and play around it is kinda fun, even though there isn't much of a game yet. Based on that reaction alone it seams this game could have some good potential.
Subscribe to:
Posts (Atom)