Skip to content
Enter Submit to view all results. Ctrl+Enter View and filter in instant search.
Close ×
Search powered by Algolia
This build has not been seen in a public branch.
Update notes via Steam Community

Nominal v.1.2.1b - The Code Optimization Update is Live on the Testing Branch


This has easily been Nominal's biggest update yet. Not necessarily in terms of content additions, but in terms of scope and effort. With v1.2.1b, roughly 95% of the original codebase has been completely rewritten to achieve better performance, stability, and maintainability. Each and every script was brought up to modern C# programming standards and patterns. A lot of unused scripts and methods (artifacts from beta and alpha testing) have been removed, reducing the game's overall footprint (code-wise at least).

As Nominal has essentially been rewritten from the ground up, I've done thorough Quality Assurance testing, but I still am putting this update onto the Testing Branch, just to be sure nothing escaped my singular pair of eyes.

That said, with v1.2.1b taking over the Testing Branch, v1.2.0b (The Code Refactor Update) has now been set to the main branch of Steam and is the latest canonical version. Your game will update whether or not you're subscribed to the Testing Branch: players who stayed on the MAIN branch will be updated from v1.1.6 to v1.2.0.1b, and those who are subscribed to the Testing Branch will be updated from v1.2.0b to v1.2.1b.

PLEASE NOTE:

- With the update to v1.2.1b, user settings are no longer stored in the Windows registry, but utilize a JSON file in $YourInstallPath/Config/playerSetttings.json instead. As a result your game settings will be reset to default values and you will need to go into the Options menu and reset your desired settings.

- If you were previously on v1.1.6 or earlier and are on the MAIN branch and receiving update 1.2.0b (and 1.2.0.1B), there MAY be issues with the game's loaded Field Of View values for both the normal FOV and the Zoom FOV. To fix this:

  1. Go to the options menu
  2. Change the regular FOV & Zoom FOV values to anything other than their existing value
  3. Click Apply
  4. Change the regular FOV & Zoom FOV values to your desired settings
  5. Click apply


Accessing the Testing Branch


Repeatable Disclaimer: As with v1.2.0b, v1.2.1b is extremely experimental; ~95% of the original codebase has been completely rewritten. Once again, I've done thorough Quality Assurance on my end to make sure that everything is 100%. That said, humans are fallible so there may be bugs or unintended issues here or there. Because of this, v1.2.1b has been set to Live for all players on Nominal's Testing branch.

There is no password for this branch, so you can update to v1.2.1b by following the steps below:

  1. Go to your Steam Library
  2. Right-click on Nominal
  3. Select 'Properties' from the context menu
  4. Select the 'Betas' tab from the left-hand list in the Properties window
  5. From the dropdown in the Betas tab, select 'testing - Beta Testing Branch'


Once the Testing branch is selected, Steam should automatically queue Nominal to be updated (depending on your preferences in Steam).

If Steam was already open before this branch was set live (~2022-02-07 1630EDT), you will need to close and re-open Steam for the Betas tab to appear in the properties window.

Updates to the Roadmap


With v1.2.1b on the Testing Branch and v1.2.0b being moved over to the main branch the Tentative Roadmap has been updated to reflect this progress and has an additional update added to it.

On the new roadmap (see below) you'll find that the 'Live' card now shows v1.2.1b, a new card 'V1.2.2B: NOMINAL CLASSIC (QOL)' has been added as 'In Progress', and the 'Planned' card still contains 'V1.3.0B: EXPANDED CONTENT.'

I want to address the obvious disruption to the roadmap: the addition of v1.2.2b and v1.3.0b (Expanded Content) staying in place at 'Planned.'

As I was taking the time to rewrite Nominal's codebase, a lot of pitfalls in the existing version's experience (not just its code) and quality-of-life features became evident to me. With the Expanded Content update on the horizon, I really want to improve and solidify the "classic" (or "release") version of Nominal as its own thing. This Classic experience will always be available in the game, as I have no plans, nor do I think it's necessary, to make it its own separate thing. So, since Nominal Classic is going to stay as the originally released content, I want to address some opportunities for improvement and really nail it down prior to moving on to Nominal's flightplan development plan.

So, what are those opportunities?

1. The Ship Manual:


The existing Ship Manual for the Odyssey Spacecraft is, despite a core feature of the game, a bit of a Pandora's Box of opportunity. There are numerous editorial mistakes, mislabeled steps, misleading steps, etc. etc. So, I want to give the Odyssey's manual a proper revisit for fine-tuning and editing to make it better than it currently is.

2. Pilot's Manual:


While I can't speak for the actual space programs of the world, I can speak for actual pilots in real life, since I have a good bit of flight training under my belt. In the real world, pilot's don't keep a copy of their aircraft's full manual on-hand (well, they do, at least in the US, where the FAA requires that to be in the cockpit at all times), but, rather, they tend to keep checklists on their knee board, or within arm's reach, to quickly reference and proceed through various regular procedures (pre-flight inspection, engine start, clearance, taxi, takeoff, etc.).

So, to improve the Nominal SOLO player's experience, and [most likely] bring things closer to real life, I want to create a Pilot's Manual (checklist, short-hand manual, etc.; the name isn't final) that will include easier to follow, simpler checklists with less lore-building fluff, and more actionable procedures. That said, I will keep it true to Nominal's spirit, in that it won't give away *everything* and could still be used by co-op players who are playing the Capsule Commander in tandem with one or more players acting as Mission Control.

3. (The still "coming-soon") Player Profiles & Flight Log:


This was a promised feature upon release that has been "Coming Soon" since the very first non-alpha build of the game. It was waylaid on release to address bug fixes and more high-priority feature additions. It was, sadly, never implemented prior to Nominal's pull from Active Development in the summer of 2021, and it's well past time for it to be implemented.

I want to implement local Player Profiles to support and encourage Couch Co-op/Party Night gameplay and allow each installation to have multiple unique profiles, with each profile tracking stats/performance/etc. for whoever is the Capsule Commander for a gameplay session.

As an extended feature of Player Profiles, I want to add a Flight Log. It's really fun to play Nominal and get all of the achievements, but there's a lot that goes on that doesn't get tracked or rewarded. Having a Flight Log for each profile will allow things like total Flight Time, number of "flights," types of failures by flight, and their results to be tracked and easily viewable by the player(s).

4. Challenge Modes:


This was also a promised feature shortly after release that was sadly never implemented. While it won't expand Nominal Classic's content, it will add more ways to play, more ways for players to challenge themselves, and allow for the core game to have just that much more fun-to-be-had than it does in its current form.

5. Baked-In Logger:


Currently, there is no baked-in logger for Nominal. Though a lot of players are super helpful and jump onto the Discord to report any issues they may come across, there's no way for me to easily get the datapoints I need to replicate, duplicate, isolate, and fix those issues. Nominal severely needs this so that bugs can be more easily fixed, especially once new content is added.

With all of that said, you can see the updated roadmap, as well as a more objective breakdown of the details for v1.2.3b - The Nominal Classic (QOL) Update - below.



v1.2.2b - Nominal Classic (QOL)


- Move v1.2.1b to Main Branch
- Ship Manual Updates
  • Fix various typos, incorrect labels, etc.
  • Remove misleading references to the Launch Abort Manual
  • Remove misleading "Proceed to X" steps in all procedures
  • Improve looped steps formatting

- "Pilot's Shorthand Manual"
  • Create a new checklist-style, shorthand Pilot's Manual geared towards solo-players to improve gameplay
  • Maintain lore-friendly/lore-building presentation while cutting out a lot of the 'fluff' of the main Ship Manual

- Player Profiles
  • Implement Player Profile creation and management
  • Implement Flight Log functionality that tracks each round under a given Player Profile, the total 'flight time' accumulated, the failure and/or hazards, and the flight's outcome (success/failure)
  • Implement 'Certifications' that track a given Player Profile's successes for various situations (e.g. knowing how to fix a Bus Failure, completing certain Challenge Modes (below))

- Challenge Modes
  • Implement Challenge Modes and their selection from the Mode Select menu to add more replayability and difficulty to the base content (for those who want it)

- Baked-in Logger
  • Implement a back-end, non-invasive, non-intrusive logger that logs code outcomes and system information to a dedicated log file for easier bug reporting and investigation


v1.3.0b - Expanded Content


- Move v1.2.3b to Main Branch
- Create new dynamic scenarios
- Create new and engaging mechanics
- Create new "3D First Person Hub" experience to replace existing menu system
  • Oh, hey! This is new! Good on you for finding this!
  • Replace all 2D meta-menus (Main Menu, Options Menu, etc.) with a 3D "Hub" that the player
    can walk through, discover and interact with smaller activities/Easter eggs, launch game scenarios, etc.


Detailed Changelog


BUG FIXES


  • Fixed a bug causing errors when the Steam API can't connect
  • Fixed a bug causing the Remaining Time label on the Game Over Menu to be incorrectly formatted
  • Fixed a bug where engaging the Range Safety Program causes null reference errors in the Game Over menu
  • Fixed a bug where pressing the Clear Key on the Ship Computer when no mode selector (PROG, VERB, NOUN) is active causes a null reference error
  • Fixed a bug where cached Zoom Field of View values in the Player's settings could be misread and lead to the game camera being zoomed in to the point of a single pixel (this was a fun one ;))
  • Fixed Unity coroutine calls being used incorrectly and causing most coroutines to not work as intended due to deactivated parents


GENERAL CHANGES


  • On first launch, the game now defaults the resolution to the highest supported resolution for the player's monitor, rather than the lowest (my bad!)
  • The loading screen now actually works (see final bullet in BUG FIXES list)
  • Completely reorganized codebase/Unity project hierarchy, folders, and structure to make it coherent and easier to work with, build upon, and fix as issues come up
  • Made a lot of scripts that should have been singletons for performance and accessibility reasons actually singletons
  • Created new singletons to manage game data that should have existed from the beginning, but didn't
  • Individually reviewed every script in the codebase and did the following:
    • Standardized script nomenclature
    • Standardized method nomenclature
    • Standardized member variable nomenclature
    • Standardized function argument nomenclature
    • Standardized code formatting and layout to follow modern C# standards
    • Organized methods into code regions for legibility
    • Condensed redundant functions into singular, more-performant functions
    • Created new functions out of redundant code blocks
    • Added more details/functionality to existing debugging statements
    • Added debugging statements to codeblocks that should have had them
    • Refactored reliance on large IF, ELSE IF, ELSE blocks to properly utilize SWITCH statements (more performant, easier to read when developing/troubleshooting)
    • Removed hard-coded arguments/values and replaced them with member variables or enums where appropriate
    • Removed unused functions
    • Removed unused member variables
    • Removed Unity Editor reference serialization to avoid Unity dumping all references when upgrading versions or rebuilding the project and causing development time to bloat and otherwise unnecessary hotfixes (see v1.2.0.1b hotfix as an example)

  • Created new JSON management scripts and methods to allow for more persistent/accessible hard data (e.g. user settings, game object serialization, etc.)
    • This will also allow for future content additions to utilize JSON to decrease development time and expose the game's inner workings for modification/tweaking/whatever

  • Complete remade the Player Settings/Preferences functionality to NOT rely on registry entries, but instead utilize JSON files
  • Completely revamped how the Steam API connectivity works to make it more reliable and performant for existing uses and future uses
  • Completely revamped how the Steam Achievements logic works to make it more reliable and performant, and make it easier to add support for additional future achievements


FUN FACTS

  • Branch started: Dec 14, 2021
  • Work Completed: Feb 7, 2022
  • Days to Completion: 55
  • 40 Commits
  • 128,780 total deletions
  • 102,700 total additions


Thank You


As always, thank you so much for taking time out of your day to read up on the latest about Nominal's development. I'm really excited to have replaced the veritable house-of-cards that was Nominal's original codebase with this newly optimized version.

While work continues on our roadmap, feel free to drop by the Discord (there's a button on the Main Menu that will take you right to it :) ) and say hello, give feedback, and find others to play with!

Cheers & o7,
Brian @ Offworld Systems

Changed depots in testing branch

View more data in app history for build 8160015
Windows English Nominal Content Depot 1454191
Ad-free Steam data for everyone since 2012
Support SteamDB • Donate or contribute
Open link