Search Unity

  1. Unity 2018.3 is now released.
    Dismiss Notice
  2. The Unity Pro & Visual Studio Professional Bundle gives you the tools you need to develop faster & collaborate more efficiently. Learn more.
    Dismiss Notice
  3. Want more efficiency in your development work? Sign up to receive weekly tech and creative know-how from Unity experts.
    Dismiss Notice
  4. Build games and experiences that can load instantly and without install. Explore the Project Tiny Preview today!
    Dismiss Notice
  5. Want to provide direct feedback to the Unity team? Join the Unity Advisory Panel.
    Dismiss Notice
  6. Improve your Unity skills with a certified instructor in a private, interactive classroom. Watch the overview now.
    Dismiss Notice

Games Mittens' Adventure - Top down shooter + multiplayer

Discussion in 'Works In Progress' started by newjerseyrunner, May 18, 2018.

  1. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    So I got most of the opening cutscene finished, it just needs some polish. I had to do some trickery because half of the cutscene exists in one custom scene and the other is in a scene that gets used later in the game and I have to switch between the two dynamically.

    Check out some screenshots

    Screen Shot 2018-09-22 at 6.55.25 PM.png

    Screen Shot 2018-09-22 at 6.55.55 PM.png

    Screen Shot 2018-09-22 at 6.56.22 PM 1.png
     
  2. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I spent a little time today placing weapon spawns and organizing objects to be differentiated between campaign, multiplayer, and cutscene objects. I’ve also placed and programmed the yarn balls for the various multiplayer modes.
     
  3. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I organized all of the different objects in the levels so that they can be spawned on load once the session manager tells it which game type it is. The following game modes will be included in the demo:

    Campaign
    ...Casual -
    Rats are mere cannon fodder, go in guns blazing
    ...Normal - Rats put up a fight, but ultimately are no match for you
    ...Hard - Rats are fierce, only the strongest will survive
    ...I am death! - You are against ridiculous odds
    Deathmatch - Kill anything that moves by yourself or with a team, most kills wins.
    ...Default - Various weapons spawn around the map, upgrade over time
    ...Power weapons - All weapons in their maxed out state
    ...Random weapons - Start with a random weapon
    ...Basics - Pistols only, settle the score on an even playing field
    Yarnball - Each team has a yarn ball, steal the others and carry it back to your base
    Heist - Alternate between offense and defense of a single yarn ball
    King - One yarn ball, whoever holds it for the most time wins. Play solo or as teams.


    The maps will play very differently and provide a good cross section of my game:

    Landing - A basic figure eight with various weapons scattered about. It's a small map so meant for fast paced games with a high score.
    Village - Larger map with several buildings. All weapons are on the map and there are several good sniper locations. Bases are on the tops of two buildings and the fight up is rough.
    Temple - Wide field with tanks and ATVs for both teams to engage in dogfighting. Heavy weapons for the attacking team but the blue base is heavily fortified.
    Catwalks - An open arena map which can be quickly traversed. Tight quarters fighting but a few good sniper perches. Bases equipped with flamethrowers to repel attackers.
    Rat Maze - A confusing maze of tunnels, with a rocket launcher at the center. Lots of close quarters combat and lots of ways to and from each base.
     
  4. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I started working on the main menu that greets you as soon as you boot up the game. I had a cool Halo-like pipeline outlined originally complete with profiles, but I want the multiplayer to feel like a party game so I want to be able to setup and just hop right in. I'll post some screenshots in a few days, they following is an outline as much for myself as anything.

    I'm thinking about greeting the player with a list of all the players and a "Press A or Spacebar to enter." This registers a player to a particular controller and allows them to scroll through various characters (which is pure cosmetic.). There is a checkbox that'll be flipped on if the player wants to host a LAN game and anyone who joins will appear in the list with everyone else. You can have up to 16 players (max 4 local.)

    There will be a toggle for Campaign and Competitive, which updates a list of all of the different games available. All of the maps and each variant of each game type will be in the list. You can pick one specifically and go right into it, or you can have the system select one at random to keep it fresh. You'll also have filters so that you can filter out specific maps or game types.

    All of this takes place on a single screen, which is what I want. I don't want the first impression to be of complexity. I want to be able to go from boot up to starting a four player game within ten seconds.

    Teams can be managed by the players themselves or chose by the game. The game will keep a running average of kill to death ratio for the last five games. Then the players who want to be on specific teams are inserted into each team and the players that are being assigned randomly will be sorted from highest ratio to lowest, then that list is iterated through inserting the players into whichever team has the lowest score so far. This will insure that top players will usually be separated from each other and that the games are somewhat even, allowing teams of different sizes to make up for skill game. This is all about user experience as I think most players will want to be randomly assigned and in my experience a truly randomly assigned team is not good, sometimes one team is way overpowered and I want to avoid that. Players who are struggling will likely end up getting paired with better players so games should always be even.

    I will have character, playlist, and button layout management in the game, but it's unlikely that I'll include it in the demo as they are not necessary to what I'm trying to get feedback on.
     
  5. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I’m working on inplementing headshots. How could headshots work in a top down game you ask? Well the crosshairs is magnetically pulled towards your enemy. A headshot is registered if the actual cursor is over the enemy. It’ll add an additional skill level. I’m honing exactly what it’ll do but it seems a fair addition is double the damage and bullets move 50% faster.
     
  6. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I've worked out most of the kinks in the menu. This is what you will see as soon as you boot up the game. This is the multiplayer tab, which was what I was focusing on right now.

    Screen Shot 2018-09-29 at 1.53.01 PM.png

    Is any of this menu confusing? I want only a single menu between booting up and playing with your friends. Everyone presses A on their controllers and they can select a character. Below you select the level (which gives you a small map and description of it) or you can allow a map to be chosen randomly. A game type will be randomly selected from the types that are ticked off to the right.

    If you select to allow remote players then others can join you via LAN and your ip shows up below to give out. If you want to connect to someone else, you put their IP there and click connect.
     
    Last edited: Sep 29, 2018
  7. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I want the menu to be completely intuitive and optimally designed for quickly starting. I’ve spent some extra time and extra code to move the selection automatically on certain conditions and to remove some buttons in some as well. You can start a new campaign in three button strokes: controller registration, select campaign, select easy.
     
  8. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I’m fine tuning the difficulty settings now. There are a lot of factors and I’m trying to make the game still be chaotic at lower difficulties without hurting the player as much.

    These are the things affected by difficulty:
    AI response time: enemies get smarter, allies get dumber
    Grenade likelihood: harder enemies throw more bombs
    Accuracy: more difficult enemies shoot straighter
    Placement: some places have more enemies in harder modes
    Bullet speed: enemy bullets move slightly slower in the easiest setting
    Health: enemies get slightly tougher but they are not bullet sponges
    Infighting: dumb enemies fight amongst themselves more frequently than smart ones
    Stuttering: enemies stutter when hit sometimes, easier modes make that happen more often
     
  9. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I had a eureka moment today playing DOOM. I’ve been looking for a way to make the rat army more than just guys with guns and I also wanted to be able to put in more enemies to shoot but risked dragging the frame rate down. Today playing DOOM I cleared out an area and thought I’d killed the archville that protected it, but really my rocket knocked it to where I didn’t see it. It found its way back up and resurrected most of the room by the time I returned.

    Perfect. I added a doctor enemy. It has no weapon but carried a shield, which requires you to find a way to flank it. It also goes to fallen rats and brings them back. Obviously it won’t do so for enemies that have been blown up, but it provides me an organic way to refill some parts of the level and give you someone that’s very high priority even though they pose no immediate danger. He’s a good jumper and runs fast so best to attack him while he’s healing someone.
     
  10. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    My doctor character is making the gameplay really interesting and gives me so much more to shoot at towards the end of the level.

    Check it out, the ones in the white are doctors. They don't have any weapons but are fast and good at evading and hiding from you. It's very easy to miss one of these guys and have them work their way backwards through the trail of bodies that you left and resurrect everyone behind you.

    This also makes it easier to refill parts of the level, instead of spawning in a dozen new enemies, I can spawn in three new enemies plus a doctor to revive everyone else.

     
  11. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I’ve been u happy with how my demo will end. The level that ends the demo was not meant to be a boss level so I felt like the game just sort of ended abruptly and that’s not okay even for a demo. The next level in the fully game is a boss level and I didn’t include it in the demo because while the boss fight was finished, the rest of the level was not. So I tacked that boss fight onto the end of the last level in the demo to give it a proper ended.
     
  12. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I did a bunch of work today to preserve the player state. Up until now there was no saving, I started a game fresh each time I ran it, but now it remembers which levels I've beaten, my score, time, which weapons I have and how much ammo.

    I've also reworked part of the UI. I placed the ammo counter back on the crosshairs and anything else that's player specific as well. I had moved everything to the bottom before I'd decided to add a split screen feature and now I realize that they aren't compatible.
     
    Last edited: Oct 8, 2018
  13. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I realized that I shot myself in the foot with how my audio works. I'd designed the game with a multiplayer in mind, but not split screen. Since I added split screen support I realized that the AudioListener was only following one player and I can't have more than once. I spent a few hours trying to get several packages for multiple listeners to work, but they kept throwing strange errors. Then I thought to myself: I've been mixing audio professionally for ten years, I can do it way better myself so I spent an hour writing a robust multi listener. I can now have multiple players in the same local scene and have them each have their own microphone, which then gets mixed to the main output with the other microphones, similar to how I would do conference call audio mixing. It also allows me to do my own affects such as treble and bass boosting so when you're right next to a gunshot you hear that noisy bang, but from a distance you get a clean crack.
     
  14. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I was doing some polishing on my flamethrower and it's upgrades and I thought I'd show it off.



    The first level flamethrower will be just given to the player after they beat the first four levels, it's in the path to the last level so they'll almost certainly grab it. The upgrades are hidden in the levels or on the overworld behind a secret. This weapon put-out a lot of damage in close quarters, killing most enemies almost instantly. As you can see though, it's range is fairly limited and when fire hits a wall it basically just stops.

    The first upgrade the plasma baller changes the weapon so that fire comes out in discrete balls. These balls are inspired by Super Mario Fireflower. These balls bounce around and can go on for a good distance, giving you more range. These balls bounce around corners, which is really useful for hallway combat, they also leave a small fire wherever they bounce, which continues to put out damage.

    The second upgrade that I grab is the Overheater, which will greatly increase the damage and range of a normal flame-thrower, but with the plasma baller already enabled, it acts like the Spread gun from Contra, which I know is everyone's favorite. These balls also bounce around and fight fires, so this is more than a crowd control weapon, this is a slaughter weapon.
     
  15. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I decided to take my honed powered up flamethrower into one of the levels I often show and do it at the highest difficulty settings. Even with such a powerful weapon, these Rats are tough.



    0:16 - You can already see the damage that the flamethrower causes in this configuration
    0:22 - The spread makes quick work of a crowd of enemies
    0:30 - I pick up a +300 armor, I'm going to need it
    0:45 - I bank the fireballs around the corner to avoid exposing myself
    0:59 - The fire itself won't hurt whoever is holding the weapon, but it also lights things around you, which will hurt you
    1:07 - The one blast fills the area with fire and blows up the barrels
    1:30 - I'm filling the lower level with fire until I hear a few die so that the doctors head down that way
    2:20 - I lit the doctor on fire, who brushed up against me, getting me going too. Ah the collateral damage!
    2:45 - Geez, in the hardest mode these guys sure like the throw bombs
    3:18 - I always gib this guy, but in the hardest mode, he hears the bomb land and gets a good jump away from it
    3:35 - A lot of very dangerous enemies around the corner, bounce the fire around it
    3:45 - Even more shotgunners further down, but the angle of the wall allows me to get fire all the way down there
    5:00 - In tight hallways like this, there is nowhere to run
    5:30 - The catwalk prevents you from raining fire down over the whole map in multiplayer modes
    5:35 - Just as well, quad rockets are up here too
     
  16. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I've greatly increased the intensity of all of the effects lights. I decided that I liked them better extremely exaggerated, it makes the game pop with color a lot more. I think it really draws the eye a lot more now.

     
  17. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I'm really stoked about my new project and I had to share it with you all. So I was terribly unhappy with my animation. The quality of it sucked both because I'm not good an animating and because I have to sync so much stuff. I decided that I wanted a system that I could tack onto a character, tell it what the parts are and it'll animate everything automatically. No more having to tell it to change states or passing animating actions through the network, the system is simply reactive to what it's doing.

    Characters no longer kind of glide if their animations don't perfectly match their movement and I don't have to blend strafing and walking and running animations. The system picks hard positions on the ground and sticks the feet to them, and animations running with a sine wave. It can also create footsteps sounds at exactly the right time.

    There is no IK or anything, it's all approximate, which gives the animation a nice cartoony look. I never wanted Mittens to be rigid and this allows me to do so much cooler stuff. Like for example, when one of his feet touch the ground, it scales up slightly. Since everything is mathematical, I can also provide offsets for certain parts of the body such as the hands. This allows me to reuse the same animation for different guns regardless of how their meant to be held. The position the feet end up are raycast too, so they work perfectly on ramps or even stairs!

    Since this will be a universal animator, it also makes the enemies far more reactive. Anything that Mittens can do, all of the enemies can as well and vise versa. Mittens didn’t react when shot because it screwed with the gun, but now that’s all compensated for and he shows pain. Enemies didn’t crouch at the bottom of their jump because doing that for each enemy was tedious but now they all do it because Mittens does it, now they do. There is even options for the four legged animals. I'll post a comparison video soon but oh my god it looks so much more natural.
     
    Last edited: Oct 16, 2018
  18. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Here is a video of the new animation system.



    Notice how his hands and head moves when switching guns, and how he can now actually stare up at you and target his head separately from the rest of the body. Also see how when you turn or move him, his feet move.

    Sometimes the pieces get disconnected, but I'm working on fixing that with some more maths. I'm in the process of converting my enemies to take advantage of the new system.
     
  19. Wandersoul

    Wandersoul

    Joined:
    Aug 28, 2013
    Posts:
    23
    It looks great - really reminds me of the CGA classic Space Goose, which was a 2d game SHUMP that messed with different levels of elevation.
     
    newjerseyrunner likes this.
  20. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I've never heard of that Space Goose before but I just checked it out on Youtube and yeah, that's kind of what I'm going for, just modernized of course.


    I altered the powerups today. I had had Mittens collecting them and be able to flip through them, but the most useful one is the bombs and the rest just get used once in a while when you needed it and if I gave you both a time shifter and invisibility, the player may just go invisible all the time and render the game too easy. I want more control over the experience so I instead made them traditional DOOM-style powerups. You collect it, gets it's benefits for a brief time, then it goes away. The bomb generator I stuck, so that Mittens can always throw a bomb (after the third level) but everything else is laying around to be found.

    I've put a time shifter in the back of my Catwalks level to make this fight easier because I also added more enemies with guns.



    You can see (and hear) how time gets slower as you get closer to Mittens, allowing him to duck and weave between bullets which would normally be coming too quickly. This is how I can create bullet hells with weapons that fire so quickly.

    You can also see some of the new animation. Mittens and the yellow Rats are both using the new system. Look how fast his little feet go!
     
    GarBenjamin likes this.
  21. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I spent some more time on the lighting today, honing some of the settings and placing my light probes. Up until this point I hadn't placed any because I wasn't sure that everything was set yet and I didn't have an automated way to do it, but I do now. I'm doing things like breaking up my meshes slightly too. I have a outer wall on every level which confines the player if they get out of bounds, which had been part of the regular geometry, but I split it off so that I could reduce the light map resolution of them to add detail to the main area. I'm closing in on doing a final bake for each of the levels in the demo and calling them finished structurally.
     
  22. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    Very nice project.
    But LOL the sounds ;)
    Strange funny.
    But some of them sounds a bit too pitch (y). Some tinning down may be useful.

    On first videos you show walking under bridges like, etc. Then you can not see character. I hope you're planning make them transparent, for the moment of underpassing?

    And using grenades to jump, reminds me classic Unreal Tournament and Quake 2, where you could do rocket launcher jumps ;)
     
  23. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Thanks for your interest.

    I'm not a sound guy, I'd expect them to be pretty poor right now. (You should hear the voice-acting in my cutscenes.). My brother knows more about that and I may swing the folder his way for some better editing at some point. You may also be hearing audio clips being cut off. Until about a week ago I had way too few sources in my pool so they kinda would cut each other off. That's been fixed.

    The very first thing you see in the first level is a bridge. I expect the player to go under it and see how that works. No, it won't become transparent. Occlusion is actually the point. I've carefully laid out the levels to make sure that you are always occluded briefly and you know exactly where you're going. The camera also intelligently choses a position that can see you if one is available. I idea for the game actually came to me when I was learning how DOOM works. It's actually a top down shooter, just projected into fake 3D. I love learning the monster closets and being ready with the double barrel shotgun. I thought how could I hide monster closets organically in real top down. The idea of overpasses came out of that. Many of the bridges have ambushes hidden underneath them, and that will be an important part of multiplayer. This is only true for thin ceilings, if you go into a cubby in a wall or something, the camera will actually move down in closer to the player to fit inside. The camera actually tilts slightly when you move, it's subtle enough to not make you sick, but gives you an indication of where you are and how you are moving.

    Grenade jumps are so much fun, I love doing them all through the Halo campaign and Quake wouldn't be Quake without rocket jumping up to waste that ogre that's killed me five or six times with impossible to predict grenades. Good times and I feel a lost art form. Rocket jumping was essential to Quake gameplay, but now more of a fun way to get out of the map. Made jumps aren't required to beat this game, but they are for 100% completion. I'm including one level that requires it in my upcoming demo.
     
    Antypodish likes this.
  24. GarBenjamin

    GarBenjamin

    Joined:
    Dec 26, 2013
    Posts:
    7,323
    This looks very good. You are obviously putting a lot of effort into it and it really shows. It has a unique vibe to it. Great work so far!
     
    Last edited: Oct 19, 2018
  25. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Thanks. I definately am trying to create the best user experience that I can for the users. I know that most players don’t finish most of their games and I want to try my best to have them finish mine.
     
    GarBenjamin likes this.
  26. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    Make it short :p
     
  27. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I plan on it. The levels are laid out in an overworld map, similar to Super Mario World. Like SMW, there are multiple paths through the world and it's possible to beat the game without beating most of the levels.


    I built a light probe generator today. I was trying to place them by hand but the geometry and shadows was too complicated. I created my own light map and then did a edge finding routing and some simplification algorithms to find the ideal place to put them. It also allows me to visualize the light volumes because I have debugging outputs that display the light may volume.

    Screen Shot 2018-10-22 at 2.07.21 PM.png
     
  28. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    My new light probe generation system is working beautifully. It creates highly optimized probe webs, while densely packing them in places where light changes a lot. Check out the screenshot of the Catwalks level.

    Screen Shot 2018-10-23 at 1.08.05 PM.png


    Here you can see a big improvement in the visuals now that Mittens and everything else is properly lit. It really shines in dark levels where you have to rely on your flashlight for some of it. This will be crucial to multiplayer as there are some dimly lit corners that a player could conceivably hide in plain sight in.

    You'll also notice that the powerup doesn't activate right away. I know lots of players will hold off on using a powerup until the last second, then end up wasting it. Happened to me all the time in DOOM, so I made it a pickup instead that you can activate at your whim. In this play through, I grabbed it, but didn't use it until one of the hardest parts of the level.

     
  29. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I'm not sure why I never implemented it early, but I created cheat codes to help be debug the game. I've used common codes so that anyone who choses to try them will get a nice little Easter egg. I can type them in at any time and they will take effect.

    idkfa - full weapons, ammo, and keys
    indoors - open all the doors
    idfa - full weapons and ammo
    idbeholdi - invisibility
    idbeholdw - wrath
    idbeholdt - time warper
    idclip - no collision for player
    iddqd - Degreelessness (god) mode

    I don't know about you, but with every PC game I download, I always give iddqd a try just to see if it does anything.

    The reason I did this was because I was debugging the very end boss, which is two enemies with rocket launchers. I couldn't figure out why one of them would invariably stop targeting me. It was because they got hit by each other's rockets which triggered infighting. I hardcoded exceptions so that bosses never fight with each other or their troops, only low rank enemies can do that.
     
    Last edited: Oct 24, 2018
  30. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I finally got around to coding the AI for the enemy tanks. The tanks worked great when under player control, but I hadn't written any AI until now. I now have enemies that walk to their tank, hop in, then try to kill the player with it, by either running him over, or shooting at him. I'm tuning the parameters so that it's most fun to fight tank on tank, but also fair on foot.
     
    GarBenjamin likes this.
  31. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    The campaign for the demo is pretty much done. There just needs some minor polish here and there, so I'm focusing on the multiplayer aspect for a few days. I'm making sure that the levels load correctly from the loading screen and the splitscreen is working completely. I haven't actually touched the inner workings of the multiplayer in more than a month, so I'm anxious about getting back to it, I've implemented a lot of new features and I'm sure that I have a lot of debugging to do for LAN, so I'm going to get split screen perfect first.
     
  32. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I got the map to load in both multiplayer and campaign without any issues and am getting the game scoring and tracking to work.

    I’m also working on a first person controller. I don’t plan on putting it in the game (maybe as a powerup if it’s fun.). It’s for debugging things that are hard to see when the camera is 12 meters above the character’s head.
     
  33. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Thought I would show the first person perspective just for S***s and giggles. It's actually really strange looking because I had to design the architecture to be fairly flat or else the camera would have been bobbing up and down too much.

    Screen Shot 2018-10-27 at 12.34.12 PM.png
     
  34. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Since I'm considering myself essentially done with the campaign for the demo, I was going back through looking for bugs and I had an idea. Almost every DOOM mod I've ever played shipped with a map that had tons of rooms with one enemy each, so that the dev could test the behavior of an individual enemy. I decided to build that for myself, and may include it in the game as some sort of simulation training or something. I've noticed a few nagging bugs in the AI that I've committed myself to fixing today.

    I also created a bunch of rooms in the test map where I spawn allies and enemies together and let them fight to make sure that they are balanced correctly in all difficulty modes. In easy mode, 2 allies easily kill 4 enemies with handguns, but in the hardest mode its the other way around. This is not a health padding effect (though hardest mode does have higher health) but also seriously changes the AI. The hardest mode enemies are tactical and work together while the easy mode enemies are sort of all of the place and will even accidentally shoot each other, which leads to infighting. Hard enemies rarely, if ever fight amongst themselves.

    Interesting note: In normal difficulty the two AI and the four machine gun enemies ended in a draw. There was one left of each and injured each other so that they both went into retreat and hid from each other.
     
    Last edited: Oct 30, 2018
  35. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I created an old-school gaming manual for the demo so that I don't have to worry about polishing the in-game help system yet. I my original copy of Halo CE for the Xbox and copied the format. Let me know if anything looks confusing.
     

    Attached Files:

  36. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I found that my method of approximating how animation should work ended up with the models obviously breaking apart so I did some math and figured out an efficient way of creating a bone-like structure without actual bones. Now the limbs stretch and turn properly so that they are always together. As you can see, it's far superior to using animation and allows me to do lots of custom little things that allow characters to react to the environment way more than otherwise. Since it's also tracking real locations of the model, it doesn't really care if the actual character jitters a little bit. This means that even through a network, animation is smooth and there will be no popping at all.

     
  37. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I realized that I'm still missing many sound effects. I have effects for when you first pick up a weapon for example, but not for when you just pick up ammo. I created effects for each gun type as well as some more pickups. I now also have a sound effect for when the powerups are used so that in multiplayer you can know that someone near you activated a powerup and which one.

    I'm playing the campaign all the way through over and over again and will probably send it out to a pre-alpha tester early next week. I'll polish and test out the multiplayer while I wait to hear back, then once I make whatever changes I need to, I'll ship the demo.

    I also realized that I'd forgotten to program in Mittens' getting his double jump boots. He steals them in the third level from a rat, and gets the ability to double jump, but I didn't actually put them on him. I realized this because I was working with the sound effects and noticed that I wasn't using the boot sound effect.

    Screen Shot 2018-11-02 at 11.45.00 AM.png

    To Quote Michael Kelso: "They're the coolest kicks in the cave."


    I also decided to remove the melee system from the animator and plug it into the weapons themselves so that every weapon gives you a different melee attack. I can also then adjust the power of each strike and it's timing individually.
     
    Last edited: Nov 2, 2018
  38. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Made some modifications to how some of the guns work. The second powerup for the sniper rifle row makes it a burst shot weapon (but still using one bullet.). I made the fireball thrower be changeable, so you can fire small fast fireballs or big slow ones.

    I've been putting in the animations for the melees to each gun and they look way better than it did before. All I have to do is tell the gun itself where to go and manipulate a few of its parameters and the IK for Mittens' arms does the rest. This also works for the enemies since they have the same IK system as the player, extra enemy animations for free.
     
  39. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I did more work on the character animation system. All of the guns now cause the characters to animate differently for melees and firing. I also lean the character slightly in the direction of travel, which is making everyone feel much more organic. It allows me to do some cool reactive things, like for a weapon that charges up a big fireball, characters will actually move the weapon further away from them as the charge builds up.

    I also added some monster closets in some of the levels. I always enjoyed how in games like DOOM if you had to backtrack over a section of the level, hidden walls open up to give you new enemies to fight.


    I'm also working on integrating a colorblind asset that will let me play the game as though I were color blind and make sure that everything that needs to be obvious is for these people too. I've already changed a few of the colors to make them more obvious for certain people.

    I also completely rewrote how the controller and keyboard control the vehicles. I had pressing up as the accelerator and down as backwards and the vehicle followed your crosshairs which was completely unintuitive and gave no way to really dance around your enemies. Now it moves in the direction you press the controller while also looking at the crosshairs. I use some angle math to tell if the vehicle should turn towards the desired motion, or go into reverse.
     
    Last edited: Nov 6, 2018
  40. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I haven't shown a real gameplay video in a while. For this one, I've decided to do something different. I am playing the Catwalks level again, but this time, I'm showing it off on the hardest difficulty. I also show you the boot up screen and how to get into the campaign itself.

    You may also notice that there is a damage direction indicator now so when you get hit you know where the shot came from. The color palette has also changed ever so slightly. I tried the game with simulators for the three most common types of colorblindness and noticed that some things were hard to tell apart.



    0:05 - I register my controller, select the campaign (preselected), then change the difficulty.
    0:07 - I land in the overworld and head off to the Catwalks level select
    0:22 - I arrive in the level Catwalks
    0:35 - The rats see me and we start fighting
    0:40 - Here come the doctors, these guys are my top priority. They don't have guns, but heal dead rats and are very fast and strong
    0:45 - A swarm of doctors is bad because they can actually revive each other, so I have to kill them fast, rocket time
    0:50 - Smart little bastards keep jumping away from my rockets
    0:60 - I knocked them off and see an opportunity to ambush them as they come under the bridge, I expect this to happen in multiplayer a lot too
    1:53 - I notice that the three guys I killed at the beginning of the level have been revived so I launch a rocket towards them
    1:56 - I get lucky and end up right next to a doctor, I try to melee him, but they are very quick
    2:15 - I see a doctor reviving another doctor and I panic, launching four fast rockets to make sure it dies
    2:30 - I'm still looking for the doctors, but I take the time to grab the 300% armor
    2:40 - I see a doctor that's not looking (I think he's hurt and hiding,) I see if I can snipe him without him noticing me
    3:10 - I switch to the fireball thrower and charge up a shot
    3:15 - I notice a doctor out of the corner of my eye, I have to kill him or he might revive the whole floor so I give chase with a shotgun and get a good melee kill in
    3:25 - Showing that there are multiple ways around, I use the barrels and a wall jump to get to the second level
    3:45 - I bounce a charged up fireball around a corner to kill a rat
    4:00 - I don't want to charge these two shotgunners and I want to use the barrels next to them so I hide behind cover and use my phaser to fire through the wall
    4:20 - I want to clear the platform in the middle because there is a chain gunner and a doctor and I want that time powerup
    4:25 - Notice the dot in the middle of the crosshairs, that indicates a headshot and does double the damage
    4:47 - This is new, I press the grenade button and hold it to bake the grenade in my hand. I can hold it as long as I want and it'll explode as soon as it lands, where if I just tossed it, there would be a delay
    5:00 - I use the time shifter powerup that I just picked up to slow the passage of time around me because this next part has a lot of bullets and not much room to move
    5:25 - I chase down a doctor, check out the melee in slow motion
    5:46 - The gun turned sideways there because I hit the melee button, while it'll normally auto-melee when you're going to hit something, you can throw a melee any time
    6:08 - I go through the exit teleport and because I beat the level, the overworld points the camera in the direction of the next level, which is up those lifts
     
    Last edited: Nov 7, 2018
  41. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    Nice one.

    But volume of few sounds effects still need work ;)
     
  42. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Thanks. I’ll apend a day or so soon polishing all of the sounds. Are there any particular ones you can point out that are especially off?

    I found the tank level too tight for the style of vehicle battles that i want to encourage both in campaign and multiplayer. I doubled it’s width and now sort of resembles Blood gultch from halo. I also added some more interesting driving behavior for the ai like strafing the tanks.

    I added an enemy type that will not disengage the player, even if you run from it, it’ll continue to hunt you down and take por shots at you before ducking back behind cover. Most enemies stay out in the open to be fodder, so this guy will need to be prioritized and possible even chased down.

    I also upgraded some of the group behavior. It may not be obvious from my videos but some of the enemies are deployed in teams. I’ve added a behavior that if the team leader gets severely injured and his team is also mostly dead, he’ll go berserk in a suicidal charge.
     
  43. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    For example at
    2:45 shotgun seams much louder than rest of sounds.
    4:09 collecting green health, sounds also appears a bit pitchy to my ears, in comparison to other sounds. I would either bring sound a bit down, making it less pitchy, or in worse case scenario, replace it.
     
    newjerseyrunner likes this.
  44. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Hey, thanks a ton for pointing those out, I hear them now. I’ll spend a little time tweaking them in a bit.



    I while ago I mentioned that I made a special level where I test the enemy AI and yesterday I said that I created a new AI class that’s designed to stalk the player relentlessly but stay hidden. I thought it’s behavior was really interesting so I thought I’d show it off.

    I was also trying to figure out what kind of gun to give him and it hit me that the AR has two ways of firing: fully auto and bursts. It may not be obvious to some players that when you control your fire, the AR is extremely accurate, but with continuous fire it ends up as a spray. The regular AR enemies just spray at you so I thought it’d be interesting to tell this guy’s AI to fire short controlled bursts to show the player how accurate it can be.



    0:04 - iddqd activates god mode
    0:08 - Enemy sees me and fires a burst at me, then backs away behind the ledge
    0:20 - Since he’s bobbing in and out of cover up there, I duck behind a pillar to get him to come hunt me
    0:23 - Sure enough, he tries to sneak his way to me, notice how he’s hunched over and moving slowly. The slow movement helps with pacing so that these guys become nuances after the initial encounter
    0:28 - He got scared and tried to melee me, but missed, so he comes in for another swing and hits me before burst shooting me
    0:35 - Oh yeah, he’ll toss grenades if he thinks it’s necessary to get you out of a hiding place
    0:40 - Notice now how he seemed to run away, probably because I’m blocking his path to the pillar
    0:50 - Here he’s showing why he may be such a problem, he’s ducking back and forth behind that wall. Here he’d be no problem, but imagine if he was somewhere you couldn’t reach.
    1:08 - You might think since he’s staying behind the wall, you can just move on to another part of the map, but he’ll follow you
    1:24 - Here I try to dance around the pillar, but he is smart
    1:35 - He’s got a strong self-preservation instinct too, constantly jumping away from my line of sight
     
  45. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    At 2:45, that’s actually the sniper rifle, which is meant to be the loudest gun because I want it heard across the map. (Think of how important it is to know there is a sniper in a multiplayer match.). I’d just made it louder because I didn’t have a way to affect how each sound effect fades over distance but I do have that ability now so I’ll lower the volume and change the drop off instead. I’ll do that for all effects actually, that’s going to be sweet so thanks.

    For 4:09 I request clarification as there are two effects happening at once. The health pickup is the BLOOP sound (which you can hear better in the slow-no section). There is also an ammo clip pickup that sounds mechanical. Which do you find pitchy? I’ll probablt throw some reverb on both but I’d like to know what you heard.
     
  46. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    Is sounds almost like large caliber gun, to penetrate heavy armor :p

    At 3:25

    And slow mo
    At 5:05


    Btw, love your background music. Is it proprietary?
     
  47. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    Like the type of gun that does this?


    :p
    I think it's actually a recording of a .50 cal rifle.

    I added some reverb to the health blip to help with pitchiness and altered how the weapons do audio falloff. I also lowered the pitch when the audio source is on the other side of a wall.

    No. The music comes from here: https://www.facebook.com/SoundEffectsFactory. I don't think my mixing (or playing) abilities are up to scoring my game.
     
  48. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    Nothing wrong using existing one, as long got licencee / permit.

    Definitely sounds nice (machinegun) :p
    But sniper seams ok now. ( I think is less louder isn't it?)
     
  49. newjerseyrunner

    newjerseyrunner

    Joined:
    Jul 20, 2017
    Posts:
    509
    I made sure I found ones that had the proper license. It was harder than I would have thought, but eventually I found some I liked.

    The sniper is a little quieter now, but has a longer range. Down below you'll see the rifle in it's more natural state: taking out enemies from a distance perch.



    I mentioned several times that I'd been working on the vehicles. The enemy AI still has a lot to be desired, but I think it's good enough to show off. The vehicles are something that I know will make my game fun to play with friends. This is the only map in the demo that's built for vehicles, but there are several vehicle sections in the full game, including a final escape run like Halo/Metroid. You'll also meet a friend that's sort of akin to Yoshi and uses vehicle code, so I'm sure you can imagine.



    0:09 - These types of hints pop up at various spots in the game, usually triggered by something like a player being stuck in a room too long, but this one will always show up first time you approach the tank
    0:15 - I have the tank facing the wrong way on purpose, it forces the player to make a three point turn and get a feel for how the controls work
    0:24 - That tank mortar has a hell of a boom, everyone in the area got gibbed, you can see their beds flying around
    0:30 - I get out to gather some of the health, when enemies are gibbed, they drop extra health, and this section is meant to make the player both feel and be powerful
    0:45 - I love the trails of blood as the dead enemies slid along the ground after being blown up
    0:50 - Tank fight! The first enemy vehicle the player faces is meant to scare them but not be too much of a challenge. There are lots of enemies around, but your tank can protect you and they usually end up all dying just from collateral damage
    1:00 - Of course, you can run enemies over too
    1:20 - The enemy tank is smoking, so I know it's weak
    1:45 - There are also ATVs scattered around the level. This is to both give the player options and also provide vehicles for allies when playing split screen. This one is much faster than the tank, but harder to aim since the guns point in the direction of the vehicle.
    2:00 - It's speed makes it a really nice splattering vehicle, so I run down four guys
    2:14 - This area is a loop, if I'd taken the right path at the fork, I'd run into these guys on ATVs instead of the tank. They will tear you up quickly and try to run you over if you're on foot, but in a vehicle they aren't that bad because they have the same aiming limitations as you.
    2:20 - I get very lucky. I accidental smash head-on into one of the other vehicles. Because of the way we hit, it took more damage than I and exploded.
    2:55 - Now that I've dispatched the ATV, I move on to where the player is faced with two tanks. This is much harder in either vehicle, I stick with the ATV and circle them, peppering them when I can get a shot. I do this to avoid their powerful guns, which the slower tank isn't always able to do
    3:15 - My vehicle starts smoking, so I haul-ass back to where I left my tank before I explode
    3:25 - I think about killing that guy, but he's got his hands up so I ignore him
    3:55 - Where'd those tanks go? (That's one of the bugs I'm sorting out). Looks like they got stuck on a wall but when I alert them, they come to their senses. They got confused when they lost me.
    4:20 - Oh shotgun! I'll need that inside. I get out to quickly gather the shotty and some health.
    5:12 - I block you off from taking the tank up there. It's possible to squeeze an ATV, but you can't get it past the next part
    5:30 - This is the little dance I want people to do, I've learned over the past few months how to work with lines of sight and think this is a good example of fun level layout.
    6:00 - Lets not waste the bullets and just smack this guy in the back of the head shall we?
    6:04 - The sniper rifle lets you see where you've been and pick off any stragglers
    6:25 - You can see it's still not great at long range for moving enemies, but there are powerups for that
     
    Antypodish likes this.
  50. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    2,476
    Well done.

    Indeed vehicles add extra to the gameplay.

    Keep up.