May 15, 2016

Final Project Update #2

I've done some more polishing on my game, this time mostly with the start screen and other screens that more clearly explain the game.


The first image is the screen seen when booted up. It's a lot simpler and less busy than the start screen on the previous version of the game, and I think it works much better. The second image is the screen you see after selecting the number of players, in this case 2 players were selected. It's in between the start screen and the actual gameplay to allow players to ready themselves.

May 14, 2016

Final Project Update #1

I've made some significant progress on my final project updates. I have the gravity working, so now bullets curve towards the center and edges of the screen, depending on where the player is shooting from. This helps prevent players from "trapping" each other in corners:
I've decided to scrap the idea of turning the ship. It seems like more trouble than it's worth, especially since the black hole exists which prevents much vertical movement. There's just one problem, which I've come up with a solution to. For the 3 player game, two players are on one side of the hole. This could cause problems if they manage to kill the player on the other side, since they won't be able to attack each other. To combat this I've decided to make the 3 and 4-player games a team match. When the players on one side of the hole are eliminated the game is over. For the 3 player game, the solo player will be given double heath.

May 9, 2016

Animation Progress 3 / Final Update

Since the Maya renderer didn't render the image plane for some reason, I had to add it into the Premiere project. Then, since the Maya models rendered on the normal black background, i had to add them to Premiere at a lower opacity so that the background was still visible, giving them their unintended ghostly appearance. I guess the story now is that these two kids died playing rock, paper, scissors at this playground, and are now doomed to play it forever. I added some effects to the background to try and make it stick out a bit, but since I'm going with this ghost-ish theme I thik the slightly diluted colors works pretty well.


Animation Progress 2

Since my last update I've made a sizable amount of progress. Instead of doing three games of rock, paper, scissors, I decided to one game since the fingers were getting a bit unmanageable. Instead of that, I create a little bit of a story with more movements than just the game playing. I also added a camera with some movements to make it a bit flashier. I'm going to render it and export it into premiere to add some more visual effects.


Apr 29, 2016

Animation Progress #1

I've made some good progress on my final project. I've got one round of rock, paper, scissors set up, so the rest should be easy from there. The only problem is sometimes I forget to set a key before rotating a hand or fingers, which causes them to be rotated in previous frames. There's so much minute movement going on that it's really easy to get lost in. After I finish up the rough animation for Monday, I'm going to add in a static background image for some flavor. Maybe a park or playground scene. I added a texture to one man to help differentiate them. This is what it looks like so far:

Dev Blog Entry #6 - Networking Questions

Wrapping my head around the whole idea of networks, servers, and clients has been pretty tough for me. I understand peer-to-peer connections, where the users just send the data back and forth. I also understand the concept of a server on a theoretical level, where both users are 'clients' and send data to a server that then pushes only the required data back to the clients. I also get that it's smart to only send absolutely required data back and forth, since the more data you have to parse the more likely it is there will be unclean data.

I just don't really understand it on a practical level. I'm having trouble forming my thoughts into actual questions, but putting the whole thing together seems to be eluding. I think I just need to read up a lot more on servers and how everything works and really seem some code in action that can break everything down.

For my game, it wouldn't be hard to scale it for more players. I would just have to change the variable that restricts the maximum number of players to a higher number. That many players would have trouble fitting on the screen, but they would be there. The game itself would be unplayable, but the server can already theoretically handle that many players.

Dev Blog Entry #5 - Making Changes

I plan on making three major changes to my local multiplayer game. They are:

  1. Add support for 3 or 4 players
  2. Add support for turning your ship to allow 360-degree shooting
  3. Force bullets to curve toward the middle of the black hole to discourage "trapping"
Adding support for more players is incredibly simple. I need to simply make two more player objects, and add in the built-in logic for collisions that the other players already contain. I'll also need to make two more "rooms" - Gamemaker's levels, one for three players and one for four. Then on the main startup room I'll need to add some logic for allowing players to choose if they want a 2, 3, or 4-player game. It's as simple as the user pressing the corresponding number key. Controller support for the two additional players is easy as well. When each player is created, it is assigned a 'pad_num' variable. Player 1 is 0, player 2 is 1, and so on. Players 3 and 4 will just need to be assigned that variable.

The logic for turning the ship is slightly more complicated. I already have the logic written for turning with the right analog stick, but the sticks are too loose for it to work correctly. I'll have to look into using the bumper buttons, and having each press turn the ship 90 degrees instead of having true free movement. I'll have to look into this more.

The third change is making bullets have a weight and angle to them. This will be achieve by using the built-in gravity and gravity_direction functions in GameMaker. I'll add the gravity to the bullets to make them gravitate towards the middle of the screen.