Alpha – Devlog 2

Its been another busy week for the Lunar Rooster team as we continue to make progress on Sky Noon. This week we have implemented some new gameplay mechanics and started work on our new HUD.

Gameplay

Clamberingclamber1-optimized

Players can now clamber on top of walls when they are close enough to the top of a flat surface. Clambering is currently done by holding the jump button when you are approaching a ledge. This is yet to be tested with a gamepad controller and might be a one off press on a gamepad. We are also wanting to add an on screen UI prompt for “press space to clamber” or something similar to make it immediately obvious when the player can clamber.

 

 

 

 

 

Teleporter1-optimizedTeleport

We’ve got a wicked new teleport ability (please ignore the miniature train mesh)! When you have the teleport ability you can throw it by pressing shift. Pressing shift again will swap positions with the teleporter. You can swap positions as many times as you like until the teleporter is destroyed. The device itself is a physics object in the world which means that enemy players can shoot it away so players have to beware of swapping positions with a teleporter which is falling to its death.

 

 

 

 

 

Machine PistolPistolHitScan-optimized

We have changed the machine pistol from firing projectiles to performing ray traces for added accuracy. A lot of the feedback we had received from external play tests was that the machine pistol felt lack luster and that it took too long kill enemies with it. By doing hit scans instead, you know instantly whether or not you have hit an enemy and hear the hit marker sounds that FPS fans are familiar with.

 

 

 

 

 

User InterfaceUI_concepts_pic

Up until now we haven’t had a very strong focus on a good UI system for Sky Noon. This is something we will be working on from this point forward and this week we made a start with some initial concepts for in game HUD. We spoke to Lucy Morris, one of the BCT lecturers at Media Design School, to get some tips on creating a user friendly HUD. The idea is that players will be able to understand what each HUD element is without having to be told and that they don’t occupy too much screen space. We are hoping to talk to her again once we have implemented some the concepts to see if we can better communicate what the elements are.
The HUD will need to display:

  • Ammo count
  • Weapon type
  • Ability cooldown
  • Ability type
  • Game score (lives remaining for FFA)
  • Time left in game

 

 

 

From the Artists

Alex

This week I had a split focus between creating the super crate particles for the character and starting the sculpt on the shotgun. With our current setup it is hard to find time to use another artist’s computer to make use of Zbrush. Working on the shotgun has highlighted the strengths and weaknesses of SDS (subdivision surface) modelling. It is great for hard surface modelling, however the more complex the model is the harder it is to maintain the edge loops required by SDS modelling. To mitigate this you need to break the model up into sections and use intersecting geometry. The rest of my time was spent creating a more interactive and realistic smoke particle. The previous iteration used a flipbook style animation and as a result had to be created in local space to emitter and wouldn’t react to the character’s movement. The new particle makes use of the ribbon particle to allow the smoke trail to react to the player’s movement. To create a more realistic effect I used a dynamic parameter that uses a combination of sin and cos functions to control the initial velocity of the smoke.

Logan

My main focus was the Machine Pistol redesign this week. I finished the high res version and the retopology. I ran into a lot of software issues, having to repeat work a few times which set me back a little, but I still managed to achieve what I needed to. I also ended up having some extra time to get started on the UV mapping. I’m looking forward to taking this model into substance painter and getting the new look sorted out. Also, because of the inclusion of substance painter into our workflow, I didn’t do all of the finer detailing inside of zbrush as I would normally do. I will instead make use of alphas in substance painter rather than requiring a high mesh density to achieve similar results and slowing down the high res creation process, and doing this will also reduce the risk of bad baking results.

Nathan

This week I worked on some environment junk. The turbine is a new addition to the world of Sky Noon, justifying how the islands float and appearing on some guns from time to time. My job was to make the main turbine for the islands look nice, taking it into Zbrush and touching it up with dents, bolts and metal plates. Next comes the texturing and Substance Painter pass, likely next week. I spent a little time with it in Substance Painter and had success with the normal bake to my delight. Other than the turbine I also whipped up some pipes that can be placed in the level wherever appropriate. They still need to be unwrapped and sculpted but I suspect they won’t take long. I also worked on some concepts for the in game HUD, making some mockups in photoshop then going forward based on feedback from the group.

From the Programmers

Chris

This week I set out to re-implement some core systems that had issues in the prior build. Building on from Craig’s reimplementation of the grapple hook to make it more efficient over the network, I tweaked it’s functionality to make it feel better and to not rely on varying tick-rates. I also worked on a ‘global clamber’ (a clamber that players can use to climb ledges at any time, not just when grappling). Implementing this was difficult as it meant accurately detecting a ledge and moving the player up just enough to climb it, but not too little as to fail or too high as to not feel right. While the clamber is now much improved, it still has issues over the network for the client, and I will continue to work on it as I learn more about movement over the network.

Finally, I created a new ability: The teleporter. This tool is thrown and then the player can swap positions with it while it still exists. I enjoy creating abilities and game mechanics in general as they are satisfying to make can be a lot of fun to play around with. I’m also learning a lot about Unreal Engine’s systems of spawning, collisions and physics through making these abilities and the grappling hook.

Craig

This week I finished off the grapple hook and ability implementation. I learnt a lot about networking integration over the last couple of weeks and applying them to the project has garnered some great efficient results so far, as instead of replicating a lot of variables, I run the function on the local client and also call it as the server, however the sensitive logic such as firing the grapples’ hook is still restricted to only the server.
I spent some time reimplementing the logic for our User Interface and HUD, at a basic level for testing until the final designs for the UI is put in the game.

Henry

This week I re-worked the crates and crate spawners into the new 4.12 build. I ran into some issues when trying to check if the spawner’s existing crate was still valid or not. I found that this was because the UE4 garbage collector does not clear the memory of an object until it finds an optimal time to do so. I got around this by adding a function delegate to the crate’s OnDestroy. This causes a spawner function to be called when the crate’s destroy function is called and now it doesn’t need to check whether or not the crate is valid.

Once the basic UI buttons were implemented I was able to test my matchmaking algorithm that I wrote. Unfortunately this was late in the week and I found that the recursive function loops indefinitely and causes the player to lose control of the menu screen. Next week I will look into refining and testing this.

Leave a Reply