1. Ground Zero
  2. News

Ground Zero News

Ground Zero Demo: Patch #1

[h3]We've got one final treat for you, just in time for Halloween 🎃

We've just released the first patch for our demo, where we've revamped some of the controls based on player feedback and also resolved some of the bugs you have reported.[/h3]

When you start up the demo after the patch, your controls will reset on first launch, but this will only happen one time.

[h3]New Features[/h3]
  • When the demo boots up for first time players (and existing players following this patch), there is now an interactive screen where you can test out the Tank/Modern controls before you select them. You can still change your controls choice at any time in the Options menu as well.
  • Default controls have now been slightly changed. You can still rebind controls as well.
  • Players can now lock on to the nearest enemy in your line of sight by holding (B) on gamepad and SHIFT on PC.
  • The aiming sliders are now much more fine-grain to allow for better precision.
  • D-Pad movement has now been enabled for anyone who wishes to move Seo-Yeon using the D-Pad. This can be disabled in the Controls section of the Options menu if you wish to bind other buttons to the D-Pad.
  • Added button to reset controls to default.
  • Added a run button to controller, which is (B) under default controls.
  • Added the ability to open the map by holding the Inventory button.
  • Added a little visual indicator on critical shot aiming to visually notify when the shot is ready.
  • You can now fire off a critical shot by releasing the critical shot button after aiming - Default (A) on controller and E on PC. You can still cancel this action by releasing the aim button.
  • You can now auto-aim at environmental hazards by switching target (it prefers enemies) - Default (LT) on controller and T on PC.


[h3]Bug Fixes[/h3]

This patch also includes the following bug fixes:
  • Fixed an issue where horizontal/vertical aiming was affected by framerate.
  • Inventory is now on button release to prevent accidentally spamming inventory open/close.


https://store.steampowered.com/app/2340130/Ground_Zero/

[h3]Thank you so much to everyone who has taken the time to give feedback on our demo and provide bug reports so far! Your support and assistance has been invaluable.

If you have any more bug reports or feedback you'd like to share, we'd love to hear from you in the Steam Forums or in our Discord![/h3]




Ground Zero is in Scream Fest

[h3]Treat yourself to a good scare this Halloween season 🎃

We’re excited to announce that Ground Zero has been selected for Scream Fest![/h3]



There’s a chill in the air, pumpkin spice is in full swing, and the nights are getting darker - and that means Steam Scream is back, celebrating all sorts of spooky and spoopy Halloween games!

Ground Zero is a retro survival horror game where you’ll take on the role of Seo-Yeon, an elite Korean operative who has been tasked with investigating the meteor impact site in her homeland. Back up by her Canadian counterpart Evan, Seo-Yeon must make her way through the post-apocalyptic landscape, gather biological data on the mutated creatures that inhabit it, and piece together the mystery behind this anomalous event.

With fixed camera angles, optional tank controls, and artistic inspiration from survival horror classics, Ground Zero is a love letter to the horror genre, which makes it a perfect fit for the event.

If you want to experience the horror for yourself, you can play our demo right now!

https://store.steampowered.com/app/2340130/Ground_Zero/

[h3]Want to chat with fellow Ground Zero fans during the event?

Then head to our Discord or follow us on social media by clicking the buttons below 👇[/h3]






Ground Zero is Coming to Consoles!

[h3]It’s no trick, we really have two treats for you this Halloween 🎃[/h3]

We’re excited to announce that, alongside PC, we’ll be bringing Ground Zero to PS5 and Xbox Series X|S!

We announced the news during the Galaxies Autumn Showcase, where we also premiered this fright-filled new trailer 👇

[previewyoutube][/previewyoutube]

Ground Zero is a retro survival horror game where you’ll take on the role of Seo-Yeon, an elite Korean operative who has been tasked with investigating the meteor impact site in her homeland. Back up by her Canadian counterpart Evan, Seo-Yeon must make her way through the post-apocalyptic landscape, gather biological data on the mutated creatures that inhabit it, and piece together the mystery behind this anomalous event.

With fixed camera angles, optional tank controls, and artistic inspiration from survival horror classics, Ground Zero is a love letter to the horror genre.

If you want to give Ground Zero a try, we currently have a demo available for PC that you can play right now!

https://store.steampowered.com/app/2340130/Ground_Zero/

[h3]Want to chat with fellow Ground Zero fans?

Then head to our Discord or follow us on social media by clicking the buttons below 👇[/h3]






Dev Diary #6: Level Optimization in Ground Zero

[h3]Hello again! I'm Nathan, the Lead Level Designer at Malformation Games working on Ground Zero. In this dev diary, I'd like to give some insight into the optimization workflow I use when working with the game's levels.[/h3]

In general, the primary goal of optimization is to improve the experience for you, the player.

In terms of graphics, this translates to maximizing framerates by reducing rendering loads and, in terms of gameplay, this translates to doing anything that improves the quality-of-life of the overall experience of playing the game. In general, optimization is one of the most important parts of the process as a level designer. It's so important that it's very common to consider it early on in the initial draft stages of creating a level.

There are two "flavors" of level optimization that I'd like to focus on that all levels in the game undergo before reaching their final state:
  1. Collision Optimization
  2. Graphical Optimization


[h3]Collision Optimization[/h3]
In the game world, where the player can and cannot move is controlled by the collisions of the objects in the level. Most objects have a "collision hull", usually in the shape of a box, pill-shaped capsule, or other polygon that roughly matches the shape of the object. When two objects pass near one another, checks are ran by the game's engine to see if their collision hulls are intersecting. If they are, no movement can occur, and the objects are blocked. This allows for objects obstructing the player's path to block the player from advancing forward, just as one would expect in a real-life scenario.

Here is an example of Seo-Yeon's collision hull (expressed as a capsule):



[h3]Snags[/h3]
Due to the simplistic nature of collision detection in most video game engines, if any part of the player's collision hull is intersecting another object's, the player will be blocked, even if the object in the way is very small or only touching a small part of the player's collision hull.

This collision behavior leads to a common phenomenon that I like to refer to as a "snag".

Snags occur when small objects or edges, which look like they should not obstruct the path, block player movement unnaturally. This can lead to very frustrating situations for the player during high-intensity moments.

A common way of fixing snags is to disable the collisions of objects, which allows the player to move through them without being blocked. We do this in many places in the game as it is, however it can sometimes look strange to see the player move directly through larger objects. In those situations, we have to seek alternative solutions.

The most common secondary solution involves the usage of invisible walls. Using invisible walls, we can construct new collision regions that patch up gaps and allow the player to move past snag geometry without becoming stuck.

An example of this can be seen below:



After adding the invisible walls in the above image, the player will now nicely "glide" along the pink surface, instead of getting caught on each of the small edges of the cars, growth, and other geometry. We use invisible walls all over the place in GZ to prevent snags. Maybe you'll notice some of them next time you play!


[h3]Stairs[/h3]
Stairs present an interesting scenario.

Aiming is crucial to the gameplay in Ground Zero and, while aiming, walking on a set of stairs causes the player's laser sight to "jump" or "bounce" each time they walk onto a new step, which can throw off their aim. Similarly, enemies that are traversing stairs will also appear to abruptly "bounce" while walking on the steps, making it harder to hit them.

Just as with snags, we can use invisible walls to improve this. By filling in the negative space of the stairs, we can effectively convert it into a ramp:



This new invisible sloped surface makes vertical movement much more gradual, which in turn makes it possible to move on the stairs while also keeping your aim on-target at the same time. Enemies will now also move smoothly up and down, making hitting shots on them much more reliable.



This is a very minor, but welcome quality-of-life improvement to the combat experience, and one that many other games employ as well. Almost every single staircase in Ground Zero has had this treatment, especially in combat areas.


[h3]Graphical Optimization[/h3]
This is the meat of the optimization workload, and also the most noticeable to the average player. A lacking or insufficient graphical optimization pass results in bad framerates, and bad framerates lead to an unplayable and frustrating experience for the player.

The main way we improve framerates is by reducing the amount of objects that the game engine needs to render at the same time. Thanks to Ground Zero being a fixed-perspective and prerendered game, there are several clever approaches we can take to achieve good results with minimal effort.

Fixed Perspective
We can take advantage of the fixed-perspective nature of the game by removing objects from the scene that the camera (and player) will never actually see. This is different from other games, where the player could potentially move the camera wherever they'd like.

In Ground Zero, there are a handful of places where the areas just behind the camera or around corners are entirely nonexistent or very minimally detailed. Because we can guarantee that the camera never shows those regions, there's no reason to make anything there, saving precious frames as well as development time!


The Facade Layer
We can take advantage of the prerendered nature of the game by removing objects which are only necessary for the sake of producing the background image.

To accomplish this, we utilize a special "facade layer", which is a special sublevel that is removed in the final game. By placing objects into this special layer, they are available to be captured as part of the prerendered background, but are then removed automatically during regular gameplay, significantly reducing the amount of objects in the scene and improving framerates.

The prime candidates for objects to be moved into the facade are objects that the player will never interact with, due to being in one of the following categories:
  1. Objects that are out of reach of the player (e.g. out-of-bounds or are high up on walls / on top of buildings)
  2. Objects that are extremely small or non-solid (e.g decals and very thin objects such as papers on the ground, small rocks/pebbles, etc)


The magical thing about this solution is that because the game is prerendered, the player will never actually notice this massive removal of objects, because the background being shown was created before their removal. After removing the facade layer, the only objects physically remaining in the level are those objects which are necessary for gameplay, either because they form the boundaries of the playable space, or because they are objects that the player interacts with directly.

After stripping out the facade layer, what is leftover tends to be much simpler than the fully detailed version, improving the framerate significantly in most areas.

Here's an example of this:



One of the best things about the facade layer is that it provides the means for us to add a theoretically infinite amount of additional details to our prerendered backgrounds with absolutely zero graphical performance cost, something that would not be possible in any real-time graphics game.

There are several other creative methods we utilize to optimize the experience for players (for example distance culling), but writing about all of that would make this a pretty long diary, so I've only included the most interesting ones (in my opinion). Maybe someday I can show off some more cool stuff.

Hopefully this diary gives you more of an insight into what goes on under the hood!
Thanks for reading!

Until next time, Nathan

https://store.steampowered.com/app/2340130/Ground_Zero/

[h3]What aspects of Ground Zero would you like to know more about in future developer diaries?

Let us know in the comments 💬[/h3]




New Trailer Coming in the Galaxies Autumn Showcase!

[h3]Forget the tricks, we’re all about the treats this Halloween season 🎃

That’s why we’re treating all of you to a new trailer for Ground Zero, which will be featured during the Galaxies Autumn Showcase this Thursday![/h3]



[h3]If you want to get a first look at our brand new trailer, you’ll need to tune in LIVE at 15:00 ET (12:00 PT, 20:00 BST) on Thursday October 23rd on either the Galaxies Show YouTube channel or their Twitch channel.

We look forward to seeing you there![/h3]

https://store.steampowered.com/app/2340130/Ground_Zero/

[h3]Want to chat with fellow Ground Zero fans before or during the big event?

Then head to our Discord or follow us on social media by clicking the buttons below 👇
[/h3]