1. USC: Counterforce
  2. News

USC: Counterforce News

Map creation: randomization process

Hey Marines!

As you’ve been exploring the planetary body M-8322, you have noticed that the map changes with every deployment. USC: Counterforce features procedurally generated maps and missions. But what does this mean? What can you expect when playing the different game modes? In this article, we’re going to answer these questions, and also take a look at more nuanced technicalities for the acute soldiers who enjoy knowing how this all works.

First off, every single mission you play in the game is procedurally generated—at least the map you’re playing on. We use our homemade random map generator (RMG) algorithm tailored to fit the exact needs of the game to do this. But random doesn’t mean "uncontrolled". Specific map and mission parameters are fed to the RMG as invariables, as rules that need to be satisfied under all conditions. But whatever is not "fixed", will be randomized. So, for example, a Single Mission with the objective "Reach extraction point" will always have insertion and extraction zones far away from each other, but otherwise, the layout of the actual map will be random, including which corner of the map those zones are in. In missions during the various Operations, more rules are enforced: we can tell the RMG to "seal off" complete areas of the map by making impassable walls and narrow connections, or we can control where buildings should be on the surface, etc.

But there’s more to it than the layout of the map. Objects, items, and even aliens are placed randomly. Of course, the placement algorithms for these elements also follow rules. The total number of aliens (per species) is controlled by the difficulty level and other parameters, but the exact composition of the horde (Alphas, Betas) is randomized, as are their starting locations on the map. The items you can find in crates during a mission are also random, but we use "loot tables" for different room types to determine what kind of equipment you can find in a crate you open there.

Now let’s see how this works a little bit closer, so you can get an idea of the depth of randomness and control we can use already, and in the future in new game modes. The map generator works in multiple passes, and we can exert constraints or randomization separately in all of these.

[h3]Pass 1: Layout descriptor[/h3]

This is a lot of data that describes various properties of the mission and the map, including objectives, environment, etc. At this point, we can already use randomization for almost all parameters (size, time of day, number of nests, position of starting zone, etc.), or specify the ones we want, selectively. This means we can use the system either to make a very specific mission or a completely random mission with a few selected fixed properties.

[h3]Pass 2: Layout generator (RLG)[/h3]

Based on the rules and settings in a layout descriptor, the RLG creates a logical map layout that adheres to all specified rules, and other invariants (like all parts of the map should be accessible via a door, etc.). Mind you, this is not yet a map! It contains data about nodes that have connections with each other, join into bigger rooms, or are excluded from the effective map area. At this point, we can check and ensure the general properties of a map without dealing with, say, 1024 or more grids directly.



[h3]Pass 3: "Inflation"[/h3]

The layout is converted into an actual map made of grids based on specific map parameters. At this point, we can use the very same layout to create a map with small rooms and narrow corridors, or one with bigger rooms and wider corridors, while logically it is still very similar to the first one. In the picture below, you can see the same layout resulting in different maps due to a different "room size" inflation setting:



Or we can instruct the generator to make all walls single-width, which not only results in another kind of layout, but also greatly differs gameplay-wise (aliens can break through much sooner, etc.). In the picture below, you see a map with this sort of layout. You can also see that the extraction zone is placed in the opposite corner from the insertion point—all other elements are randomized.



Connections are also converted into doors that have many randomizable properties (single or double, locked, hardwired, etc.). Specific environments (for example, mines and caves) have other special rules that modify how the actual "rooms" are processed—for example, protruding wall segments can be placed in addition. In the picture below, you can see some of these extra features.



[h3]Pass 4: Population[/h3]

This process has many sub-passes to ensure everything is put where it needs to be. Floor hazards, static and usable objects, generators, nests, service tunnel hatches, and finally, aliens and marines. Placement rules for each type of thing can be overridden or extended (for example, a few extra item crates with specific items are placed in a specific region of the map, etc.).

Balance in a game like USC: Counterforce is one of the most important things, and one crucial factor in creating it is the very map you play on. We think randomness brings a lot of uncertainty, tension, and replayability to the game, but it’s also important to "control the chaos" to some extent. We’re constantly iterating on these aspects of the game during development and continuously adding new elements, so you can expect even more interesting scenarios and death traps!

Now that you know the behind-the-scenes details of the maps you've been exploring, this will help you come up with new tactics to assess the battlefield!

The USC: Counterforce

Hotfix -- v0.20.3c (b230804)

A new hotfix [v0.20.3c (b230804)] is now live with the following changes:

  • Fixed an extremely rare bug where in some cases the game would lock up when multiple walls were being destroyed in an explosion

Revealing our Early Access roadmap!

Hey Marines!

USC: Counterforce has been out for a week, and we appreciate all of the positive feedback from both players and the press! We would also like to thank everyone for the detailed feedback we've received while we work on expanding the game.

[h3]Roadmap[/h3]
With the missions following one another and the bodies of aliens and marines piling up since launch, it's time to share the objectives for the next few months! We keep developing new features for you to try out. Find out all we have planned for the first phase of Early Access in this much anticipated roadmap!



The roadmap promises a number of major features, including a new game mode and new environments. With each update, you will also notice overall improvements, including the introduction of smaller features, Quality of Life changes and bug fixes.

We encourage and value community feedback, feel free to share your honest thoughts on the game. Because we are currently in Early Access and unforeseen events may affect the game's development, the features on the roadmap may be subject to change.



The new game mode and spaceship environment are now at the top of the list, as they are scheduled for this Summer. Following that, numerous major additions, including new environments, enemies, and weapons, as well as a new Operations mission, are planned for the Fall. We want to work with our community to develop and improve the game, so we welcome community suggestions!

Thank you for joining us on this journey once more. We can't wait to show you all the other things we have planned for you.

[h3]Bug reports & feedback[/h3]
As a reminder, please share any bug reports and your feedback, ideas and suggestions in the Steam Discussions or via our Discord.


The USC: Counterforce team

Hotfix -- v0.20.3b (b230801)

A new hotfix [v0.20.3b (b230801)] is now live with the following changes:

  • Fixed a bug in the Briefing screen between Operation phases where pressing Escape would cause a black screen and lock game progression

Minor update -- v0.20.3a (b230731)

A new minor update [v0.20.3a (b230731)] is now live with the following changes:

  • Fixed a bug in Tranquilization effect calculations that led to the maximum paralysis level (P, 80+) being applied as soon as buildup hit 20 or more. This affected both marines and aliens.
  • Fixed a bug with items with a Tranquilization buildup (side effect) where this effect also scaled with the user’s item usage effectiveness
  • Fixed a bug where the UI erroneously resized to an extremely small size in some cases when an autosave was created (mostly in Hardcore mode)
  • Reduced the duration for which “Saving…” is being displayed when a game is saved
  • Saved game thumbnail images will no longer show the UI (as it was causing unexpected issues in some circumstances); this may be re-enabled at a later time
  • Saved game preview panel will now display 0 for Score even if it was negative (in extreme cases)