1. Heart of the Machine
  2. News

Heart of the Machine News

Hotfix 31

[p]Amazingly, despite the huge amount of code surgery for the big performance update that was update 55, I have yet to get a single report of a regression from that one. I feel very fortunate for that. There are a couple of other unrelated things that I did want to get tweaks out for, though.[/p]

[expand]
[h2]Hotfix 31 Changelog[/h2]
[h3]General Updates[/h3]
  • Beta Goal Previews: Various goals and contemplations that are out of scope for 1.0 are now hidden even on the beta branch. They were showing up in a way that clutters things. I'll add these back when I get to them.
  • Tier 3 Goal Requirements: In order to start any Tier 3 goal, you must now be in chapter four. That means that you have to have completed some sort of Tier 2 goal -- any one of them, not any specific one, and in any timeline, not the timeline you're in right now. In many cases, this will mean that someone may need to leave their first timeline and do something else before they can return and do Peace After Brutality or Cybercratic City-State in particular, as those are the two that will be most visible. The key thing is that it shows you these contemplations, but notes that you can't do them until chapter 4+, so that you basically have a good hint that you can do more things and then come back.
  • Immediate Networking: Network Expansion is now unlocked during the initial construction project, rather than after it, just in case people are in a spot where they can't build enough, especially with a stealth start.

[/expand][p]Full notes here.

[/p][h3]Connect with the Machine[/h3][hr][/hr][p]Want to stay in the loop or share your thoughts? Join the conversation across these platforms:

πŸ’¬ Discord – Best place to share feedback, get direct responses, and to talk about Heart of the Machine.
πŸ“œ Reddit – Discuss strategies, share ideas, and exchange tips with the community.[/p]

https://steamcommunity.com/ogg/2001070/announcements/detail/497215345380034905 https://steamcommunity.com/ogg/2001070/announcements/detail/497215345380033936

Update 55: Big Performance Pass

[p]Peace After Brutality is the first Tier 3 goal that is fully complete on the beta branch, and it's best described as "what if we just did all the war crimes?" I would definitely appreciate folks testing it out on the beta, but do note that it's only in English for now (the betas always are).

For everyone in this build, there's a major set of performance improvements targeting increased framerates. On my dev machine, my average of 90fps is up to closer to my target of 144fps. On older or weaker machines, it should put more of them at a solid 60fps. There's more that I want to do in January now that I've delved into this, but it will need to wait until after the current content sprint that I'm doing.

In general, I wanted to get this existing performance buff out to everyone just so that people can enjoy it, but also so that I have more time to fix anything that might go amiss with it. I've tested it thoroughly myself, but it's just me on that. There's some really substantial code surgery in here, so there's more of a risk of temporary issues than usual. If there's anything super problematic, then two things: 1) I'll fix that tomorrow or whatever day it's reported; 2) there is a beta called older_but_stable that allows you do opt out of this if you need to. Honestly I don't expect any real giant problems (famous last words), but I also do believe in being prepared for any given eventuality.

Other than fixing anything that comes up, I'm going to be working on the next Tier 3 goal coming up this next week, which is a much more sunny and nice path -- Cybercratic City-State.

If you’ve spent time with Heart of the Machine and want to leave a review, that’d be appreciated. No need to say more than you mean, but if you’ve been meaning to write one, I’d be grateful. Steam reviews carry weight. For a project like this β€” developed by a single person over many years, every review makes a difference.[/p][p]Honest thoughts are what matter. Whatever your experience has been, sharing it helps. It’s a powerful way to have your voice heard and contributes to how future patches are prioritized and addressed.[/p][p]Thanks for reading and for playing.
[/p]
[expand]
[h2]Update 55 Changelog[/h2]
[h3]Clarity[/h3]
  • Systems Disruption Does What?: On the Systems Disruption Power tooltip on units, as well as on the Pinpoint Systems ability on units, it now says "This is largely electrical and nanite damage; if you can get past enemy armor at all, then the full amount of systems disruption is dealt."
  • Too Many Health Bars!: A bunch of unit stances no longer draw their health bars at all times. That was patently unnecessary, and just made the game view hard to understand./*]
  • Common Battle Questions: New handbook entries now unlock when you get bulk units. One of them explains the Order Of Combat, and the other explains how to use bulks (and captured units) defensively.
  • Step Aside, Citizen: If the PMC contemplations are forced to be on a spot where there is already an enemy unit because there are simply no other options (it already tries to avoid this, and usually can), then it now deletes the enemy that is there to avoid confusing new players.
[h3]Balance[/h3]
  • Firewall Probes Are More Gentle: Adjusted the firewall probe attacks to be far weaker than they were before, as a number of people discussed those feeling over-tuned.
  • Latent Difficulty Application: If you start a new timeline in hard mode or extreme mode, then the game doesn't actually act as if it's in that mode until the dooms start. This means that if you replay the prologue or chapter one for example, enemies won't be buffed. Also, until you finish the setup phase if you start in the chapter 2+ style, enemies won't be buffed. This is not fully retroactively applied to existing saves if they were already in the more-difficult mode too early, but it is partially applied.
[h3]Performance Optimizations[/h3]
  • Main-Thread Calculation Efficiency: This game uses a lot of CPU threads, but the only one that affects framerate is the "main thread." That's true of any game. I've done a lot of work to isolate some hotspots that cropped up on the main thread, and smoothed those out. Occasional frame-spikes that were happening are now gone.
  • Additional LOD System: This game already used a "Level Of Detail" (LOD) system for characters, but for various misguided reasons I wasn't using one with buildings. This actually was good for a while, because it made me optimize the building rendering like crazy. But I hit my limit with what I could do without LODs on buildings, and so I've added that in now. I have more to do in January on this, but it is already a 33% reduction in GPU load on the highest levels of zoom.
  • No More Sub-Cells: I had implemented a sub-cellular rendering system that... actually cost more performance than it saved. That has been there for a solid two years, but I've stripped it out now. Usually this sort of thing helps rather than hinders, but the additional LOD system in this build removes any possible use for it.
  • New LOD Levels On Certain Characters: Nickelbots, Predators, etc, can be super numerous. When you're zoomed out far from them, they now use a lot fewer polygons even than before. This is in the older character-based LOD system that was already in the game, I just extended it a bit.
  • Invisible Breaching Pods Slowed Things: This is a thing that nobody has even seen, because it was before the NextFest demo the last time it was visible. However, there were still breaching pods being fired for purposes of some sound effects, and it turns out that they were still (invisibly) simulating and slowing things down. Sigh. I've stripped that out, with the sound effects still being there as you're used to. There were some frame spikes coming from this, too, I think.
  • Tree Draw Distance: There's now a slider in the performance settings which allows you to adjust how far away trees draw. They will shrink as they go into the distance from the camera, or grow as the camera gets closer. The default is set up for a midrange computer, but the performance presets have different values that apply specific targets. This mostly impacts the farthest zoom levels, but it helps on all zooms.
[h3]Bugfixes[/h3]
  • Bees Before Cats: Fixed an issue where if you did the Pollinators contemplation before Slum Cats, then Slum Cats would disappear. This was an issue with the flags for these events that has been there ever since they existed, it turns out.
  • A Moment Of Tormented Weakness: Low-Visibility Mode for torment vessels no longer has a window where enemies can spawn in on loading a savegame.
  • Invisible Super-Stats: Fixed an issue where unit stats that were over 10 million were not showing up in tooltips.
  • Police Cruisers No Longer Afraid Of Gang Members: Fixed an issue where the cruisers would not appear properly if you still had a lot of gang arsonist kiosks and the suburbs were a certain amount small. The cruisers were not allowed to spawn too close to you, which was an error.
  • Peace After Brutality Fixes: For folks who were testing the prior version on the beta branch, there are various fixes in this build.
[h3]Beta Branch: Peace After Brutality[/h3]
  • Two Game Endings: These were originally meant to be the "lame" ending in a lot of respects, but they turned out really cool and involved. Go figure. There's no "bad" ending in this game, but this was meant to be the least impressive. Instead it has a lot of my favorite stuff, especially with the Nickelbots.

[/expand][p]Full notes here.

[/p][h3]Connect with the Machine[/h3][hr][/hr][p]Want to stay in the loop or share your thoughts? Join the conversation across these platforms:

πŸ’¬ Discord – Best place to share feedback, get direct responses, and to talk about Heart of the Machine.
πŸ“œ Reddit – Discuss strategies, share ideas, and exchange tips with the community.[/p]

Hotfix 30

[p]If you have a sense of deja-vu about these two fixes, it's because I thought I fixed them yesterday, but they were still recurring under some circumstances for some players. Hopefully this smashes those two bugs for good, but please let me know if you see them again![/p]

[expand]
[h2]Hotfix 30 Changelog[/h2]
[h3]Bugfixes[/h3]
  • Still Thought Everyone Died: Further fixes to ensure that the "population zero" and "city is barren, so no streetsense, etc" stuff can not kick in. Two hotfixes ago, I made it a lot less common, and not something that could happen before chapter 3. But it was still firing wrong. The new solution involves only calculating the gone population on the turn change, not during a turn. And it does a full inventory of all the buildings just to make sure that it's not running across something that was temporarily cached wrong. This should be the end of this bug for good now, but if it happens again for anyone, let me know.
  • And Thought A Different Group Of People Died: Fixed what seems to have been a JIT compiler confusion entry where the worldwide population basis could overflow as an int32, rather than properly being an int64. This should hopefully solve the mysterious negative worldwide population, unless I'm wrong about what is happening. At the moment I can't fully tell, so let me know if you see it again.

[/expand][p]Full notes here.

[/p][h3]Connect with the Machine[/h3][hr][/hr][p]Want to stay in the loop or share your thoughts? Join the conversation across these platforms:

πŸ’¬ Discord – Best place to share feedback, get direct responses, and to talk about Heart of the Machine.
πŸ“œ Reddit – Discuss strategies, share ideas, and exchange tips with the community.[/p]

https://steamcommunity.com/ogg/2001070/announcements/detail/497215345380033936 https://steamcommunity.com/ogg/2001070/announcements/detail/518606895910489482

Hotfix 29

[p]The first hotfix of today needed to go out very quickly, so I couldn't put much into it. There were other things I wanted to get done for today's build based on player feedback, so here's a second hotfix that includes the rest of that.[/p]

[expand]
[h2]Hotfix 29 Changelog[/h2]
[h3]General[/h3]
  • Double Vision In The End Of Time: Fixed an issue that was causing timelines to be "doubled" and then having their location reset to the correct spot only after reloading a save. This was a regression that I introduced on May 26th, when I added some code to prevent timelines from being on top of one another. It accidentally had this side effect as well.
  • Lapsed Lethality: If you've sold at least 30 BrainPals, and your deal was called off for some reason (like you failing payment 50 turns in a row), then the game now still allows you to trigger aneurysms in the people you sold it to.
  • Beta Feature Save Fix: Added in protections to prevent against errors when saving regional map or space-scene units and locations. Also added in protections so that if one DOES have an error, then it won't corrupt the rest of the savegame. For any existing timelines that were corrupted by this, just load the most recent save from that timeline and save again, and the central data will be corrected.
  • Protection From Negative Populations: Further protections against negative world population have been added.
  • Sharing Remote Demolish Around: Remote Demolish can now be used by any of the basic androids invented by humans, to avoid confusion.
  • Blocked Compulsion: During The Lernaean Compulsion, any managerial types are killed in buildings that: are already destroyed; or have a unit standing on them; or have one of your structures in them. This prevents the compulsion from being really fiddly to finish.
  • Text Fix: Corrected text that said "priced-out" where it should have said "priced out."

[/expand][p]Full notes here.

[/p][h3]Connect with the Machine[/h3][hr][/hr][p]Want to stay in the loop or share your thoughts? Join the conversation across these platforms:

πŸ’¬ Discord – Best place to share feedback, get direct responses, and to talk about Heart of the Machine.
πŸ“œ Reddit – Discuss strategies, share ideas, and exchange tips with the community.[/p]

https://steamcommunity.com/ogg/2001070/announcements/detail/497215345380033936 https://steamcommunity.com/ogg/2001070/announcements/detail/518606895910489482

Hotfix 28

[p]Good grief, I really messed things up in the prior update. It was all one calculation (are all the civilians dead?) that was based on some data that it turns out had a time delay before it was correct, and that had never been relevant until the last update. I didn't notice in my own testing. Major apologies for that, it's not the sort of thing I usually let slip past.

Thank you to everyone for the patience with this, and also for reporting it. This is part of why I have an older_but_stable beta branch (just in case I make a mistake like this) for the game, but I try not to make it the sort of thing where anyone ever needs to use that.[/p]

[expand]
[h2]Hotfix 28 Changelog[/h2]
[h3]Bugfixes[/h3]
  • Realizing Everyone Isn't Dead: Fixed an issue where the game was incorrectly detecting the entire human population as being dead, and then disabling a ton of things like StreetSense and ambient flying vehicles. This was also wrongly giving the "population zero" achievement. And also stopping shelter coordinators from doing their work.
  • Number Correction: Fixed an issue in the tooltips for bulk and captured unit capacity overages where in the body of the tooltip it was stating the excess you had as if it was the total you had.

[/expand][p]Full notes here.

[/p][h3]Connect with the Machine[/h3][hr][/hr][p]Want to stay in the loop or share your thoughts? Join the conversation across these platforms:

πŸ’¬ Discord – Best place to share feedback, get direct responses, and to talk about Heart of the Machine.
πŸ“œ Reddit – Discuss strategies, share ideas, and exchange tips with the community.[/p]

https://steamcommunity.com/ogg/2001070/announcements/detail/497215345380033936 https://steamcommunity.com/ogg/2001070/announcements/detail/518606895910489482