Cogmind cover
Cogmind screenshot
Genre: Role-playing (RPG), Strategy, Adventure, Indie

Cogmind

SITREP Saturday #13: 6.81 Seconds

This week I finally finished taking care of all the personal issues I needed to catch up on after neglecting and letting them pile up for the past couple months while I worked on getting the past couple releases out to you all. Now all that stands in the way of Beta 6 is 7DRL and... of course all the remaining Beta 6 work itself xD

So what have I been up to in my travels through the endless world of Cogmind dev...

For one I hadn't played for a bit and it's always good to stay familiar with the experience and mechanics while designing more of them, so I took on last week's seed run and wrote about that on the forums. It was a wheels-only conduct run on which I successfully fought my way into the late-game, but ultimately doomed myself by splitting my long-term strategy between multiple disparate approaches based on some interesting (spoiler) parts I found. It would've been nice to have streamed this one since it was great fun, but I was still over here in Japan. I'm actually heading home today (if you recall I've been working from Japan), though it'll still be a while before I can back to streaming with all this work to do.

If you're interested in the commercial side of things, last week I also posted an article over on Gamasutra about the most recent Steam Winter Sale and the effects of being featured. Lots of data and graphs to pore over :)

Achievements



A good many hours since the last news were spent coming up with the initial achievements list. Cogmind will start with at least a couple hundred achievements, so it's important to get the categorization right from the start and have everything nice and organized.

I also had to decide how to handle the icons, so I started doing some sketches in REXPaint and came up with a style that will work nicely. Preliminary tests:



Still more work to do there, including the final pass (and then also automating the creation of JPGs required by Steam--would much prefer PNGs...). And of course I'm using ASCII. Though naturally I want to (:P), there's also not much of a choice anyway since these aren't just Steam achievements--they'll also be displayed in game and must fit the theme and UI. Cogmind also doesn't use the Steam overlay so when you earn them they'll have to be rendered via its own terminal display.

It's been fun working with the symbolism, drawing on characters, colors and more aspects utilized in the creation of Cogmind to convey the idea of an achievement in a little 3x3 grid.

My current intention is to have all achievements available across all difficulty levels, avoiding the bloat of having separate versions for every difficulty. Almost everyone plays the default difficulty the game was designed for anyway, and for the rare case of players who want to move up from a lower difficulty level I'll add a way to reset your achievements. Unfortunately this particular feature will only be available to offline players because Steam does not support it.

Optimization



In case you didn't notice (you've probably noticed xD), Cogmind can take a while to start up. This is because pretty much all data is loaded right at the start, which for years was fine, but it's continued to grow all this time and sequentially loading everything was starting to be quite a drag, made all the more noticeable by the fact that I have (and prefer to keep) a blank screen while the game starts. Windows might even decide pop up a nice little "this program is not responding" notice.

I'll deal with that message separately later, but more important is that it shouldn't really take so long to get into the game, so I took the three largest chunks of data and multithreaded them. Fortunately this was quite easy to do since each is mostly raw data that in this case really doesn't care about the existence of the others. The three chunks are GUI particle scripts, map particle scripts, and sound effects. (The only exception was particles that needed to reference sound effects, so for that I added some code to link them up after all the threads completed.) Highlighted profiling data for some potential optimization candidates:



So what kind of savings are we looking at? In my test build scenario, startup took 19.13s, including 6.27 for GUI particles, 3.98s for sfx, and 2.31s for map particles. That's 12.56 seconds for three things that can essentially be loaded in parallel. Post-multithreading profiling:



The main thread sleeps for 6.81s, meaning that basically the steps that previously took 12.56s were instead crammed into 6.81s. So startup time on many machines has been cut by approximately one-third... Nice :D

Here's a graph demonstrating what Beta 6's multithreading looks like, the first such case in Cogmind:



There's more optimization that could be done, but this was the easy stuff and most other work would have significantly diminishing returns so isn't worth it right now. I also left all the old sequential loading code intact so that I can switch over to that with a debugging option in order to properly debug any loading issues, just in case. It's not the kind of thing that usually has issues, but if it does it'll be nice to keep it single-threaded because multithreaded debugging is just asking for trouble and confusion.

Miscellaneous



You might have noticed among the guides that we have a new one! Last week Suizin/tamagotaso helped translate Cogmind's manual into Japanese. Quite a feat considering it's currently 60 pages / 17k words. Many thanks there <3



I've also made the TXT version available next to the English version on the site.

This week Jazzer reported finding a special Storage room that had no access from the rest of the floor, so I'll take this opportunity to point out that you can find rare instances of the map generator doing stuff like this. It won't affect your progress, can be a fun discovery to make by blasting in there (or via sensors/hacking), and can reflect "glitches" in the 0b10 system, either benign or perhaps intentionally influenced by crafty enemies of the Unaware. Or maybe they're just not done remodeling :P. As another example you'll sometimes find hidden doors that lead nowhere--they haven't gotten around to digging out the target room yet.

Here's Jazzer's Storage room as seen in the debugger:



The left one was built first and originally connected to a corridor, but later they decided to add another at the end of the corridor and filled in part of the corridor when they shifted the room rightward. Again this is quite rare, and not something I'll be addressing so you might just come across it one day :)

Another find by fpsbossfight, something which is definitely a bug but unfortunately not really worth the amount of time it would take to address considering how pointless this is during normal play: If you fill an entire map with Dirty Bomb Traps and set them off in a one-turn chain reaction, the game will crash around the 400th explosion xD

Rather than show the image here, I'll just link to it because it's spoilery if you have yet to find Zion. (Yes he was finding creative ways to murder everyone...)

Once again I'll schedule the next SITREP for two weeks from now, so March 3rd, while I continue forging ahead with the Great Achievement Update and also spend some time finishing up my plan for the upcoming 7DRL. I haven't had any time to think about that for a while, and I prefer going into a timed project with a clear plan so none of that precious time is wasted :)

Also notice that Cogmind is on sale both on my site and on Steam to coincide with the Lunar New Year sale. After this one ends in a few days, the next sale should be the Beta 6 release, for which I'm thinking I'll do an out-of-event one and some promotion since we're getting all these achievements :)

SITREP Saturday #12: The Next Big Thing

Hope you're all enjoying the latest Beta 5! I'm of course already getting busy with Beta 6, but there's plenty of other stuff to cover today, too...

Stats



As usual following a major release, the leaderboards were reset. We're already seeing a lot of good runs this Beta, including a ++ extended end-game win which we didn't get to see last time:



Old leaderboards and scores have been archived, accessible at the bottom of the page, e.g. the final top scoring runs at the end of Beta 4:



Overall we're seeing significant improvement among newer players. I've also done a lengthy summary of stats for Beta 4, including highlighting certain achievements and an overview of general player performance and meta data.



(If you're interested in this kind of data you can also scroll back through the thread for stats on previous Betas since I don't always cover the same things.)

Beta 6?



So right now I'm in Japan to visit relatives for Chinese New Year (my son's on holiday so we can get out of town). We've been here for the past week and will remain for the next couple weeks, but it doesn't have much of an impact on progress. In fact, my workstation here is pretty much identical to my home setup.



That said, for a number of reasons Beta 6 will definitely take longer than the last couple releases. I have a bunch of family/personal stuff I've been neglecting lately to get Betas 4 and 5 out, so I'll have to work on that, but more importantly this year's 7DRL is coming up and I'm planning to participate. I could try to rush out Beta 6 before then, but double rushing (my normal speed is rush :P) is usually a bad idea, plus this particular release is going to add a rather big new system so it needs to be done right! I also shouldn't push my head too hard--I'm still spending 8 hours on treatment each week (when at home) for that concussion back in April, but it's stopped improving.

As for 7DRL, which is technically optional, I've already skipped the last five years worth of them as I focused on creating Cogmind, but I'm really interested in putting some new projects out there, and this time even though it'll slow down the Beta 6 release this particular 7DRL idea is something I know fans of Cogmind can get into so it'll definitely be worth it :D

Also with regards to progress in general, recall that in a past SITREP I talked about Beta 5 giving us a "clean slate" by finishing up all the near-term must-have features. Well, in the latter weeks of Beta 5 work I kept piling on so much new stuff and pushing others further down the list that it'll take another release or two to finish off those things after all :P. At least that's good in that we'll have plenty of little things to work on, too! In any case, the next release will of course be mostly about moving ahead with major features...

Next Big Thing



As per the roadmap, up next is... Achievements!

Yes, we're finally doing one of the things listed there rather than all the other secret/unlisted stuff I'm always throwing in xD

I've marked this one feature alone as taking three weeks, and I've heard some surprise at that number so may as well take this opportunity to give a rundown of what's involved. It's quite a lot of stuff!

On the surface it appears quite simple, and technically if you're just adding a handful of achievements for Steam it's really quite easy, yeah, but Cogmind's particular situation is going to include a lot more achievements, and a lot more moving parts, than your average game.

Here's a high-level TODO list of what it'll take to bring Achievements to Cogmind:
  • Research Steamworks docs for achievement specifications
  • Create and organize a list of achievements
  • Do an achievement UI mockup
  • Test how Steam achievements work in other games, and how they're presented on the player and community side
  • Create the achievement data, including names and descriptions
  • Implement an achievement handler, and check for each achievement at relevant points in the source code
  • Implement the Cogmind-side dedicated achievement interface
  • Decide how to integrate achievement notifications into several different existing UI systems
  • Find solutions for a number of tough achievement-related issues
  • Create icon art for every achievement (in both acquired and non-acquired form)
  • Test a selection of achievements in a non-Steam build
  • Build a system to communicate with Steam regarding achievements (prioritizing game-side data, rather than Steam-side like most games do it)
  • Add achievement data to Steamworks backend
  • Live test the achievement system on Steam, including syncing of old data on either end
  • Fix the inevitable oversights and bugs in the system before they reach players
  • Actually release it :P (after adding a whole bunch of other stuff that should go in the release, too!)

Oh my I've only barely started working down that list and writing it all out like that is making me go O_O. Heck there might be items I overlooked... Many of these steps certainly include numerous fine details, so the overall workload is not to be underestimated, but in the end we'll have a system that's robust, works for both Steam and non-Steam players, and can be easily expanded further in the future with even more achievements.

At least the art needs will probably be relatively easy to deal with. Because the achievement icons must be displayable in game (not just Steam), they must conform to the game's grid-based style, meaning the only real choice is ASCII like the rest of the in-game art. These icons also have to meet Steam's dimension requirements (64px), so this means they'll probably be fairly small and simple in order to still be somewhat readable at that size. I have yet to do any tests so we'll see. I'm still working on the achievements list at the moment.

I'll have more to share on this topic over the next month. Note that we have an ongoing achievements suggestion thread on the forums from which I've been taking a number of ideas to combine with my own.

Meta



nuzcraft, one of Cogmind's most prolific Let's Players, got his first win recently and shared his writeup over on the forums (he plays all the seed runs so you can play along as well if interested).

Over on r/Cogmind, GDFKTT shared a writeup on their first win as well, and a pacifist run no less.

Yesterday over on r/RoguelikeDev I shared some of Cogmind's debugging features that I use for development, so check that out if you're interested in some more behind the scenes sort of stuff. Some examples:

Highlighting map encounter prefabs, colored by their type (fluff/reward/danger/risk-reward...):



Visualizing squad routes:



Visualizing ambient sfx propagation:



Watching entity (robot) time values:



Checking cellwise cave-in factors as affected by explosions:



#13



The next SITREP will be February 17th so that I have more to show for it, since a lot of the current work is behind the scenes, but as usual I'll be hanging out on the Discord every day. Stop by!

(Note that also around that time there's the annual Steam CNY sale, so for those few days expect a 10% discount.)

Beta 5 "Zionic Revolution"

Beta FIVE brings us interesting changes to your potential Zion allies, new NPCs, items and mechanics, and color customization along with lots and lots (and lots) of QoL.

It's another big one.

Cogmind Beta 5 "Zionic Revolution" (0.10.180124) changelog:



  • NEW: 9 new unique named NPCs
  • NEW: 13 more unique items
  • NEW: 1 new wheel variant
  • NEW: 3 new types of resupply dispatch
  • NEW: 1 new 0b10 terminal record, along with several random lore dialogues available in the usual places
  • NEW: 25 new score sheet entries (total = 662)
  • NEW: Several additional special encounters
  • NEW: 3 new optional map styles for ASCII mode players at size 16: Terminus, Verite, Kaypro (see manual under Advanced UI > Fonts)
  • NEW: Some methods for tweaking colors/brightness/saturation/etc (advanced.cfg for now: renderFilters, see manual under Color Customization)
  • NEW: Roster dispatches potentially include allies from a new category
  • NEW: Mechanic for automatically locating nearby terminals (spoiler)
  • NEW: Operators reset their terminal under a certain condition (spoiler)
  • NEW: Special animations for connecting to Z-hack-capable terminals
  • NEW: First connection to a Z-hack-capable terminal gives instruction regarding intel retrieval
  • NEW: Added EM damage spectrum class "Fine"
  • NEW: Enforced projectile spread mechanic for certain weapons
  • NEW: Line-of-fire for volley including a spread-enforced weapon highlights entire potential spread area
  • NEW: Option to always display the edges of the current map (advanced.cfg only: showMapBorders)
  • NEW: Option to completely disable the standard printing/text sfx (advanced.cfg only: muteTextSfx)
  • NEW: All Launcher Guidance Computers prevent launcher misfires otherwise caused by system corruption
  • NEW: Robots sending distress signals to alert nearby allies display the range of that signal
  • NEW: Effect description for matter/energy storage utilities explicitly states their ability to collect resources while in inventory
  • NEW: Active Particle Accelerators show modified damage values for applicable weapons in inventory and part list info mode ('q')
  • NEW: Effect of current momentum on melee weapon damage is shown directly next to applicable weapons in inventory and part list info mode ('q')
  • NEW: Discovering exits purely via Terrain Scanners in easiest difficulty mode reveals their destination as if sighted
  • NEW: Advanced quickStart option also available in easier difficulty modes
  • NEW: "Trapped" challenge mode prevents gaining trap knowledge from hacks, Zionite intel, 0b10 Decoders, and friendly Operators
  • NEW: Prototypes and other unknown parts identified by attaching them accompanied by explicit log message
  • NEW: Component Analysis Suite identification effect log message also specifies name of utility doing the identifying
  • NEW: Manual includes additional subsection explaining overload mechanic for some power sources and energy weapons
  • NEW: It's safe to hold a wait key while a nearby Fabricator or Repair Station is processing (autoblocks command for two seconds on task completion)
  • NEW: Manual includes additional subsection on Key Holding, under Key Commands
  • NEW: Starting position in Scrapyard will never overlap with an item
  • NEW: Map areas discovered via Terrain Scanners and other methods but never actually seen displayed in greenscale rather than color
  • NEW: Active Garrison Access dispatch countdown timers now visible on map when using a Signal Interpreter
  • NEW: Heat transfer damage may outright melt struck part of an already overheating robot (chance matches weapon's heat transfer value)
  • NEW: Filter mass item labels by applying an integrity percentage cutoff via itemLabelIntegrityPercentCutoff (advanced.cfg, currently defaults to 26%)
  • NEW: Filter mass item labels by applying a minimum depth-relative rating cutoff via itemLabelRelativeRatingCutoff (advanced.cfg)
  • NEW: Known faulty and broken items not labeled on map when using mass item labeling (can change behavior via advanced.cfg)
  • NEW: Mass labeling items a second time within 5 seconds ignores all label filters
  • NEW: If exiting a map will fail to bring some allies due to their distance, shows dedicated warning message and puts a longer block duration on the move
  • NEW: All Alpha supporter names registered since Beta 4 added to in-game list (see Credits menu)
  • MOD: Imprinting prevents direct and indirect hacks at most 0b10 terminals (special manual hacks okay)
  • MOD: Z-hacks can no longer be detected, traced, nor blocked across an entire floor
  • MOD: Some items may appear in more than one type of resupply
  • MOD: Cave seal disengage behavior different if imprinted
  • MOD: Mak. Sword uses regular melee impact sound rather than heavier sound
  • MOD: Updated color of Centrium wheel variant art to match other items of same material
  • MOD: Potential cave-in areas on map are always highlighted (tactical HUD mode not required)
  • MOD: Rocket Arrays and Scatter Rocket Arrays significantly improved, though can no longer be focused via targeting
  • MOD: Hero class renamed to Knight, ASCII changed from 'O' to 'K'
  • MOD: Hvy. Hardcell Cannon resource costs reduced
  • MOD: AM-PH4 propulsion tweaked
  • MOD: Behemoth cannot appear on top of cave exit stairs, and much less likely to be too near any cave entrance
  • MOD: "Trapped" challenge mode trap count multiplier upped from 5 to 10
  • MOD: Hack given by the so-called "annoying derelict" in caves causes the victim to follow instead of remain stationary
  • MOD: "Armor Coverage" best state entry in score sheet refers to raw total coverage of attached armor instead of percentage value
  • MOD: "Suicide/Restart" button on Game menu renamed "Self-destruct"
  • MOD: Robots sending distress signals to allies out of view only reveal that ally's position in easier difficulty modes
  • MOD: Robots calling for help or reinforcements from a garrison only reveal that garrison's position in easier difficulty modes
  • MOD: Removed Game menu, Save/Restart/Quit buttons now appear on Basic commands page
  • MOD: Removed tutorial message explaining how to save and exit
  • MOD: Removed "Show Non-FOV Color" from options menu, always on by default
  • MOD: Removed Ctrl-` command for toggling non-FOV color display
  • MOD: Weapon Cycler and Quantum Capacitor effect descriptions reworded for specificity, no longer refer to "projectile weapons"
  • MOD: Alarm Traps in Garrisons no longer trigger an investigation, they simply alert any nearby hostiles
  • MOD: Mechanics that clear robot memory (e.g. the Reconstructor) now also clear off-turn partial spot records
  • MOD: Melee momentum damage bonus applies to all melee weapons, not just I/S/P damage types (piercing still gets its double bonus)
  • MOD: Melee damage type modifiers on Status page merged into a single "Melee" value (extra piercing damage bonus only displayed by the weapon)
  • MOD: Only non-zero values are listed under the Status page's resistances and damage modifiers
  • MOD: Data Miner dispatch redirects no longer occur during late-game wars
  • MOD: With Label Supporter Items option on, the few items not applicable for gallery collection show standard description at bottom of info window
  • MOD: Easiest difficulty mode puts Med. Storage Unit in Scrapyard, rather than Sml.
  • MOD: A certain Exoskeleton's overweight penalty reduced from 30 to 20
  • MOD: Robot core damage popups in Tactical HUD mode default to showing actual remaining integrity rather than as a percent
  • MOD: Replaced advanced.cfg preciseCorePopup option with its opposite, percentCorePopup
  • MOD: "No X in view" message displayed when there is no applicable object for the given label type instead shows "No X to label"
  • MOD: Targeting will not autosuggest a previous target whose relation with you has changed since you last attacked it
  • MOD: Super Gauntlet challenge mode keeps the lone target Garrison Access available even under high security lockdown
  • FIX: Crash on right-clicking directly into second robot info while analysis or traits of first robot still open [Valguris]
  • FIX: Overloaded weapons did not apply damage bonus again walls [Valguris]
  • FIX: Walls/doors not applying damage resistances correctly [Valguris]
  • FIX: Schematics for items only available by special means did not display fabrication info when opened via fabricator/schematics list [Valguris]
  • FIX: Credits list contained some duplicate supporter names [zxc]
  • FIX: Insufficient energy for overloadable propulsion upkeep might overload the propulsion instead of autodeactivating it [zxc]
  • FIX: Typo in options.cfg (fix resets your calculation log setting; if you want a non-default option you'll need to redo) [zxc]
  • FIX: Penetration values missing from gallery export data [Raine]
  • FIX: While on-map combat log active, any visible messages could partially overlap an open Status window [Raine]
  • FIX: Typo in screenshot tags and filenames for game over screen [johnicboom]
  • FIX: Advanced quickStart option could also be activated in tutorial mode despite lack of Storage Unit in that layout [Zoticus]
  • FIX: New corrupted AI misfire mechanic could in some cases affect player UI target recall [Happylisk]
  • FIX: Could continue hacking record queries at a locked terminal prior to closing window by using number keys if keyboard mode active [neutral]
  • FIX: Pressing 'f' during the exact frame a major NPC enters view and opens dialogue window blocked commands once window closed [nuzcraft]
  • FIX: STAY command issued to ally with a previous destination allowed them to reach it before returning to intended stay location [GJ]
  • FIX: Subatomic Replicator used without effect then dropped into inventory remained unidentified until inventory redrawn due to another interaction
  • FIX: A certain type of derelict log could reveal exit to Zhirov's location, which they shouldn't know
  • FIX: Moving multi-cell robot sensor scans not displayed correctly in tiles mode
  • FIX: RMB on robot then opening Analysis or Traits and closing again prevented further right-clicks on other robots until info window closed
  • FIX: "Max Gunslinging Chain" entry in score sheet was not being tallied


Zionic Revolution



Our namesake feature for this release has some major implications, and got even more fun.

Getting "imprinted" has always been a great power boost, and at its inception was intended as such--basically a low-effort way to make a run both easier and more interesting by offering a wider array of tactical options, especially for combat builds which generally have no significant hacking capabilities. But that 1) made it feel like this option has way too much potential to pass up when planning a route to the surface (even more so for extended end-game runs!), and 2) is a pretty big waste of a design opportunity :P

I've been planning to revisit it for a while, and now that the rest of the experience is pretty balanced, its time has come!

(Note: If you have no idea what this section is talking about, dare to venture deeper into the caves and you shall see :))

Whether or not you imprint is now a long-term strategic choice rather than a pure no-brainer bestowing permanent benefits. It's true imprinting carried some minor drawbacks before, but these only came into play at a couple plot points that an imprinted player in particular probably wouldn't need quite as much anyway.

On the downside, being imprinted now removes the ability to use 0b10 terminals in a regular fashion. In fact, you won't even be able to hack open doors! (of course there are still the usual number of alternative ways to get through them)

Beta 5 is not, however, a straight up nerf. While lack of terminal access is a big change, yet more varieties of \\ZION hacks were added, some quite powerful, and they can no longer be detected, traced, or blocked, among other new imprinting benefits. That you had access to them was also somewhat easy to forget about before, whereas now there are three different types of reminder instead of just one. You won't forget :P

In short, rather than an occasional "get out of jail free" card, z-hacks now enable (and in a way, enforce) other unique ways to play. This makes imprinting a much more interesting decision, and it's not always going to be the right choice for every build or style!

Some imprinted-related gifs:







The "Zionic Revolution" is not just mechanics, either--it also comes with some new personalities, and new special items. For example:





No more details there because it's all quite spoilery and best discovered on your own one day :D

Distressed Robots



For December's Beta 4 I added the mechanic revealing locations of non-visible combat bots receiving distress calls from visible non-combat bots:



This is a great feature for new or struggling players, basically a way to learn how robots are reacting even without any sensors of your own, so I think it serves a good purpose in easier difficulty modes. But in the default Roguelike mode it removes some of the suspense and tactical challenge, unnecessarily lowering the difficulty of the average encounter. This is why I was on the fence about adding it back then, but instead of letting the feature incubate for a while and testing it out on my own, I thought I'd put it out there as an experiment for everyone to try out.

So now, as prior to Beta 4, you'll know victims alerted a hostile, but won't know where they are or precisely where they're coming from (other than what you can inference from map knowledge and other factors, or outright sensor data). Instead, the distress call now animates the range at which a given robot can alert allies. This was something you could figure out via meta knowledge over time anyway, and counting cells is annoying so adding this is more of a QoL feature to make it explicit and save on that time/effort.

Seeing a Watcher emitting its signal in Beta 5:



On a similar note, garrison location pings during reinforcement calls have been removed from the default difficulty mode, though there is no range shown there because it actually depends on the garrison itself and can even occur at longer ranges. That will continue to be a challenge to players who don't have relevant intel.

Mechanics



Beta 5 comes with a range of new or slightly adjusted mechanics.

Back in SITREP #9 I introduced an "enforced projectile spread," a weapon characteristic that can't be overcome by simply stacking more targeting computers. See the SITREP for more notes on this feature, but basically you'll now see this reflected in the targeting display for the few weapons that are affected by it:



This mechanic also meant I could rightly buff rocket arrays to allow them to come into their own as a cool niche weapon:



One of the other bigger mechanics changes is that all melee weapons benefit from momentum damage bonuses (not just impact/slashing/piercing), as the system is now handled by weapon category rather than damage type. So where damage modifiers are concerned, the Status page only needs to list a single "Melee" entry:


(notice another change: that page also only lists non-zero resistances and modifiers)

While we're at it, in 'q'/INFO mode both the parts list and inventory display melee weapon damage as modified by bonuses from current momentum. This helps make it much more clear just how much damage you can do without requiring extra calculations, especially when considering whether to try chopping through a stubborn door.



While it probably won't come into play all that often, overheating robots hit by thermal weapons now may have their parts melted.



Launcher Guidance Computers now block launcher misfires caused by corruption. Being able to more safely keep a launcher equipped while corrupted could occasionally come in handy.



Also, it might take a while to discover but there is now an EM weapon out there using a new "Fine" spectrum with a 100% chance to set off engine explosions :)

Color Customization



By request, Beta 5 gives you a way to adjust visual attributes like brightness, saturation, contrast, and more.

There are also some presents that change multiple variables at once, like the low-contrast mode "SLEEPY":



ASCII combat in Sleepy mode:



UI interaction in another low-contrast mode, "AUTUMN":



There are other extreme modes like the "SWAP" filter:



Combine multiple modes and filters, like SWAP + AUTUMN:



For the details on how to get the most out of this set of features you'll want to check the latest manual, under the new "Color Customization" section, which explains all eight of the render filter functions and how to apply them to the UI or map.

See additional demo images on my dev blog here.

Although I try to encode as much information using additional methods beyond color, there might be some areas where I could allow further adjustment to benefit certain players' needs. If you have some type of color blindness or other color-related request that I might be able to solve via a filter or some kind of correction formula, let me know and I'll see what I can do.

Q... O... L!!!



Our favorite category :). Lots of feature requests fulfilled with this release, plus just more ideas I had to make your [Cogmind's] life easier.

Terrain revealed via scanners or other means before visiting it now appears in a monochrome "greenscale" rather than color like all other areas outside your field of vision.



This helps remember where you've actually been. And looks cool :D

Like the real-time melee momentum damage calculations mentioned above, 'q'/INFO mode also also displays which weapons are affected by an active Particle Accelerator and how:



There are now a number of ways to filter on-map item labels, described in the manual and adjustable via the advanced config. By default broken and faulty items won't be labeled, and you can also opt to exclude items below a certain integrity or relative rating threshold. Without any changes to the settings, Beta 5 automatically skips items with only 1~25% of their integrity remaining.


(Notice the repeat command at the end there which then includes all items in the labeling, regardless of filters.)

This is a first step of potentially several on the road to an even more effective label system.

Map edges can now be revealed via a setting, but this is recommended only for advanced players who are already familiar with most of the world since it can be somewhat spoilery. It's also somewhat immersion breaking, but it's decent QoL because without it those who really do know how all the systems work will pan around and find the approximate borders in advance anyway.



This feature uses a different style if you're playing with a swap filter:



Don't go looking for the "Game" menu buttons on their own page, since they've now moved right under the Basic commands and are accessible as soon as you press Escape!



quickStart (the option that automatically attaches and collects all items in the starting area for you) is now available in easier difficulty modes as well, with the easiest mode starting gear getting upgraded to a Med. Storage Unit:



Active garrisons now display their dispatch timer countdown directly on the map as long as you have a Signal Interpreter.



There's now a log message specifically for identifying unknown parts. This'll help both when you're reviewing a log later, and perhaps more importantly when that faulty prototype melts on you and you're left wondering what it actually was xD



When attempting to exit a map, the confirmation specifies how many allies you will be leaving behind if you leave immediately.



Potential cave-in areas are always highlighted, even without Tactical HUD mode. I originally thought it was active in all modes, but apparently not and I think it should be both obvious and helpful to even beginners to know what areas will collapse. It's an important mechanic to learn early on, and will seem more fair if those areas were marked to begin with rather than requiring a mode used by experienced players :P



The precise core integrity popup feature added in the last release is now the default behavior in Tactical HUD mode, with an advanced option to revert to percentage displays.



There's even more QoL listed in the changelog, so read through that to catch them all.

MAP_ASCII



I'm continuing to add optional map ASCII styles by request, where I can put together something suitable, and Beta 5 in particular comes with three more size 16 options.



The above example is the new size 16 Terminus option, and you can see the others in the last SITREP. This brings Cogmind's total number of custom font bitmaps to 112! Don't worry, it's not a magic number or anything and I won't be stopping there ;)

Setting these currently requires an edit to the game files themselves, as described in the manual's Advanced UI > Fonts section. For now that also means this feature is incompatible with Steam cloud, and you'll also have to repeat the same modification manually if you update to a new version, as it's not a part of the regular user settings. I'll be doing something about this later, but it's rather involved and requires a number of changes as deep as the engine level, so it can't happen too quickly/soon and I'd like to combine the related adjustments with other new features we'll be seeing down the line.

Beta 5 saves are not compatible with previous versions, but even if you're on Steam and have autoupdates enabled, Beta 4 is still available via its own branch and you can roll back to finish a run in progress first if you like.

SITREP Saturday #11: Feature Request

Beta 5 is mostly done! This was the last full week of prep work, focused on handling as many feature requests as I could fit in (including some of my own :P) while also fixing any new bugs discovered in Beta 4.

FR



One player requested that, as a memory aid, terrain discovered via scanners (or other means) could be displayed differently than that which had actually been visited and seen before. I went ahead and used monochrome "greenscale" to draw those areas rather than the usual darkened colors used everywhere outside FOV.

I like how it looks, plus it's a good excuse to use the old green style I originally used (it was the only/default style before Alpha 13 a year ago!).

Momentum damage modifiers are now precalculated directly next to the melee weapons they affect, so you don't have to do it :P. This is especially helpful when trying to smash, slash, or stab your way through a stubborn door.


Similarly, active Particle Accelerators now show exactly how they affect the damage of your energy weapons (including those stored in inventory in case you want to pull them out for maximum fearsomeness).


I removed the separate "Game" menu page, simply putting its three buttons on the Basic commands page so they're accessible immediately as soon as you press Escape, also making them easier for new players to find.

There are a number of other changes still coming to the Escape menu system, but this was a relatively easy adjustment that was worth making now.

Thermal/heat transfer weapons that hit overheating robots may now melt their parts as well.


The advanced quickStart option is going to be available at easier difficulty modes, too. I knew there might be minor issues regarding implementation and hadn't looked into them since I previously didn't have much interaction with players not using the default difficulty, so I didn't know whether anyone would actually use it. During Beta 4 I did hear one voice on the matter, though, so here it is! Adding quickStart to Easiest Mode did require swapping out the Sml. Storage unit for a Medium one, but I'm sure there won't be any complaints there :P. Here's a sample quickStart exit from the Scrapyard in Easiest:


While reworking some aspects of melee damage I went ahead and simplified the resistance and damage modifiers on the status page by only listing those which are non-zero values.


By request, active garrisons now display their dispatch timer countdown directly on the map as long as you have a Signal Interpreter. This information has been available for a while, but previously only by actually inspecting the Garrison Access terminal itself.


Launcher Guidance Computers now block launcher misfires caused by corruption. Being able to more safely keep a launcher equipped while corrupted could occasionally come in handy.


There's now a log message specifically for identifying unknown parts. This'll help both when you're reviewing a log later, and perhaps more importantly when that faulty prototype melts on you and you're left wondering what it actually was xD


Last but oh most definitely not least, robots sending distress signals now animate the range at which they are capable of alerting friendlies. This'll be important because in (only) the default Roguelike difficulty mode I'm removing the position-revealing feature added for Beta 4. I'll talk more about that in the release notes next week.


Fonts



Another player needed alternative map ASCII at size 16 to more easily distinguish characters on their smaller display, so I added several new options there.

The first is the great Terminus, which I think looks really nice but as a fully sans-serif font may not be that great for the state purpose in particular.


I'm not sure about the other two, but I'll have to get some feedback from those who actually need this feature :). In looking for some size-appropriate serif options I picked these old system fonts from the 80s:

Kaypro


Verite


Wiki Spoilers



The wiki now really is chock full of spoilers. Raine's been doing a great job with it and all the items are in there. I mentioned this last time but the data is even more complete now, including even comparison tables.

Robots, machines, walls, lore and whatnot still need to be added manually, so if anyone with the info and know-how is interested in helping out you can email me at gridsagegames@gmail.com to get an account. Ideally you'll also be in our chat so we can coordinate things.

Raine also has the Beta 1~3 score sheets in a database you can use to make pretty graphs here, for anyone curious about stats. (It scrapes all the data, but the publicly available fields are limited unless there are requests for others.)

AND she's also working on a bot for the chat channels <3

Fan Art



In between stories of epic runs, players have been sharing some cool Cogmind-related art over on Discord.

We have a couple images by MojoPoop depicting a Cogmind-DF mashup:




He also created a "Proton Cannon but not" in the style of Cogmind item art:


"Vigilant" - A Hunter by Rylan:


All of these were drawn in my free editor, REXPaint.

FTW



Early this week I did a couple more streams, and won this run :D

It was another combat run (of course!), only this time focusing on legs and stronger offense. There's a summary with images on the forums here. The entire run is in two parts on YouTube, -10 to -3 and -3 to the end.

That'll probably be my last stream for a while, since I'll be away from home for most of the next month (but still mostly working on Beta 6) and in early March I'm planning to do a 7DRL I think you'll all enjoy :D. More on that stuff in future updates, though.

Some top players have been thinking of streaming their runs, though, so if you hang out in the Discord you might find out about that. Most of the Cogminds you see high up on the leaderboards are in our chat, and in some cases I'm sure that's how they got up there so fast--there's a lot of wisdom to be found within! Come hang out :D (I'm there every day, too)

Beta 5



The next big thing is around the corner. Beta 5 is another huge release that I'll have out for you by mid-week. It's not quite done as I'm still trying to pack in as many last-minute features as possible and there are a few requested features on the shortlist. Most recently I spent a while on an RTS-style panning option, but doing a good one takes a lot of time so I don't think that'll make the cut (already tons of stuff planned for Beta 6, too xD).

I appreciate if you could leave a review if you've been getting into the game for Early Access and know your way around!

See you with the full Beta 5 announcement before long :D

SITREP Saturday #10: Rainbowmind

Beta 5 is more than half-complete at this point, and will be out with the next couple weeks. Still plenty more little features to work on, but all the major stuff is out of the way!

All the Colors



The bulk of this week was spent on a new system of render filters to enable players with specific needs to make visual adjustments to aspects including brightness, saturation, and contrast.

They can do things like create a low-contrast effect, e.g. this one called "Sleepy"

(you might want to open these full size to see them more clearly)

Some ASCII combat in Sleepy mode:


UI interaction in another low-contrast mode, "Autumn"


Of course filters might just be for fun as well. Unless some of you would like to seriously switch over to "swap mode" which reverses the foreground colors for a very different look:


Swap mode in action:


I think swap mode looks even better when combined with one of the low-contrast filters:


Over on the blog this week I covered this system in more detail, including additional demo images and an overview of its implementation. Check out the full article: "Color Customization."

Edge Case



I've also added an option to show the map borders. For now it's off by default however, and only available in the advanced options, because although experienced players can and do figure out invisible map bounds indirectly via other UI features (you may have seen me do this on stream before...), there are a few cases where knowing the bounds can be somewhat spoilery for new players who haven't yet discovered certain areas before.


I also went ahead and created a different style specifically for when the the swap filter is active:


Wiki



Raine has been doing a great job of importing all our item export data into the wiki. Of course everyone has access to their own item gallery and data exports, including HTML and CSV formats, but the wiki will be good for linking, its sortable tables, attaching public discussion to particular parts, and maybe eventually a bot in the chat channels.

Anyone who doesn't mind can now spoil themselves silly with data, browsing hundreds upon hundreds of items... for example this subset of energy guns:


Each item type has its own box that includes relevant fields for that category.


7DRL



Remember that Cogmind originated as a 7DRL, and still lots of people play that free version as well. One of Cogmind's best players, GJ, went back and legitimately beat it, becoming one of only two known players to do so, and the only one to do it without the old cheesy mining tactic :P



The 7DRL version wasn't all that balanced towards the end, so if you can kick modern Cogmind's butt and want a different kind of challenge as well as a chance to see a lot of today's items and concepts at their fledgling stages, check it out.

While we're on the topic of 7DRLs, this year's challenge is just around the corner! Any of you participating? Every year I want to, and have tons of ideas piled up from false starts that didn't make it beyond the planning stages because I'm too busy, but I'm hoping this year will be different :P

SITREP Saturday #9: Secrets

2018 is off to a great start...


Content



Content! After a couple releases getting up to speed for and after the Steam release, we are finally in the swing of things and it feels great to have been adding new content for almost the entire week. The thing about content is that I always avoid talking spoilers, so I'll have to just give hints and tiptoe around much of what I've been up to :P

I added a dozen new items. New items need art!


Some more examples of what's coming:

I'll say that (aside from one) these are special items you won't find just lying about. (But that also implies...)

Some other mysterious mechanics and animation work...






Another important focus of this week's work was to partially redesign the mechanics surrounding "imprinting" (if you know what that is). I'll talk more about that come the Beta 5 release notes, but for now just know that it got a lot more strategically interesting.

Projecile Spread



I also added a new mechanic that allows me the option to force multiprojectile weapons to spread their shots if appropriate. The ability for builds to stack targeting computers in order to overcome accuracy-based spread mechanics and concentrate multiprojectile volleys on a single target was always a bit of a limitation on some of the weapon designs. Now I can force even a weapon firing "accurately" to randomly spread its projectiles within a designated arc of the target.

I mainly added this feature to enable one of the particularly cool new weapons, but this also made it possible to go back and fix a couple of other weapons which were never quite good enough due to the design limitation. (Previously I couldn't very well make numerous individual projectiles too powerful given that you could easily create a super powerful totally imbalanced weapon with just some targeting.) I'm certainly not converting all multiprojectile weapons over to the new system, just a few special ones that needed it in order to be improved.

It's not a widely used mechanic, but when it's applicable the line-of-fire indicator will let you know with a little cone reflecting the potential spread area.


One weapon in particular which was always a neat concept but in my opinion never really worth using is suddenly going to get a lot more fun :D


More Streaming



After posting the last SITREP I went off to stream the conclusion to the weekly seed, unfortunately losing one floor before the end :/. My fault really, stupid mistakes were made (also giving in to the desire to just blow everything to hell xD). So many pretty launchers...

You can find a quick writeup on the forums, and I also uploaded it to YouTube as Part 2.

Next week is... more new stuff!

SITREP Saturday #8: Data Stream

Steam's winter sale's been going on for a week now, and Cogmind was featured on the front page Thursday (US time) for an entire day. ASCII represent! I'm pretty sure that's first time a 100% CP437 logo image ever appeared there :P



Much of the week was spent dealing with the usual release aftermath--taking feedback, fixing a few minor bugs, planning the next set of features, and working on stats etc.

Leaderboards



As with every new major version, the scores and leaderboards from the previous one (in this case Beta 3) have been archived. The leaderboards were reset for the new Beta, and I also compiled some notable player-specific stats from the score data submitted over the past couple months.



You can read the text version here on the forums.

Because the leaderboards have been getting pretty crowded by all our new players, I added section links to the pages. Here's a Beta 3 archives sample:


And new leaderboards sample:


Stats



In addition to the usual stats, this time we've got so much data following the Steam release that there's room for interesting comparisons, so I did a more in-depth blog post: "Player Metrics: Stats and Preferences on and off Steam." Within you'll find aggregate data and analysis of tens of thousands of Cogmind score sheets, including both performance and preferences in a dozen graphs. Here's a little collage to give you an idea:



In the Stream



I'm finally back into a bit of streaming, starting earlier this week with a Beta 4 run I haven't quite finished yet. I wrote a summary of what's happened so far on the forums here, and uploaded it to YouTube as Part 1. Wish I had more time to stream--it's fun! Don't want to leave the run sitting too long (we already have a new seed!) so I'll probably finish it up soon, like... today.

I like to have at least one win per Beta before fooling around with even more suboptimal strategies (my preferred play method itself is not all that optimal :P), so I'm actually going for a win this time. I've just entered the late-game with backing from Zion. We'll see how it goes, but in the past a combination of overconfidence and extra attention due to Zion has always ended my Zionite runs. I more easily win when running solo :P

Miscellaneous



Tiggerbiggo made a trippy animated version of Cogmind's Steam header image.


Long-time player and self-proclaimed master trapper DDarkray played the "Trapped" Challenge Mode and made a mess of the place.


I should definitely stream some of the new Challenge Modes later. Maybe after I've got my Beta 4 win in. Although maybe I should wait until the actual selection UI is in? They are very tempting, though... (I've enjoyed playing them in the past, but never streamed any of those runs.)

neutral found a crazy bug allowing them to summon nearly unlimited hostile squads to their position!


2018



Today's the final SITREP of the year, but we have 2018 to look forward to! I already mentioned some of the things to come back in my Year 4 annual review, and honestly sales have been going well enough that I think I'll be able to keep adding features for at least the next year. Certainly the idea list is long enough :D

It's going to be a busy 2018. Thanks all for the help.

Next week I'll be working on Beta 5 so we'll have a progress update on that!

SITREP Saturday #7: Betas Forever

Well the big news of the week is already out there--Beta 4. That being released just yesterday, the patch notes already cover most of what I did this week (for example the addition of new Challenge Modes), so I won't have quite as much flashy content to share today :P

Still, there are a few topics to cover...

Beta 5



Thank you all for the feedback on Beta 3! Obviously we've had a ton of new players come in once Cogmind hit Steam, and that means a few new bugs discovered or little QoL feature requests, which ended up being the bulk of my work on Beta 4.

I maintain several different TODO lists, the most important for upcoming releases being the "Top Priority" list and "Near-term Features" list. I originally hoped to burn through both of them for this release, but the Top Priority list had grown so large that I couldn't possibly make it through both without postponing Beta 4 into next year. Obviously yesterday's package was already a decent-sized chunk of features, so I decided to cut it off at the Top Priority list (now completely empty!), add a few extra bigger "flagship" features (e.g. gallery exporting and more robot info), and ship it.

This means the entire Near-term Features list (and anything else "high-priority" that pops up in the meantime) will become Beta 5. This also means we won't yet be seeing the next roadmap feature as part of Beta 5. (Remember that for the past several years I've maintained a public roadmap that gives a general idea of major features to come.) But in its current state I'm sure I can clear the near-term list with one more release to reach that true clean slate I've been looking forward to.

Either way, in general now that we're settled here on Steam it's time to get back into the swing of things with major version updates, hopefully one each month or so for the foreseeable future.

Winter Madness



In case you didn't notice, Cogmind is currently 25% off for Steam's Winter Sale!

If you've read SITREP #4 but not #5 and the discussion surrounding it, you may have not expected that. The discussion has pretty much already played out, but I thought I'd recap here for the greatest transparency possible, and to touch on some related points:

In late November I said Cogmind would only ever be discounted by 10% during EA, as that has always been my plan so I figured I'd make it known. Lo and behold, a mere week passes from that time and someone at Valve contacts me to let me know that they really wanted to feature Cogmind on the main page for the Winter Sale. But they wouldn't do it unless I'd be willing to go from the "typical" 10% I had planned to a higher 25%.

I didn't even think about it I just told them no, since I'd just made a promise to not do that :P

Over the next week everyone I mentioned this to seemed to think I'd gone mad. I refused an offer to be featured on the front page of the world's largest gaming platform during the busiest time of year? Really? The comments started to get me reconsidering, at least finally thinking about it a lot more closely than I did before writing that initial quick response to Valve...

So back in SITREP #5 (and across other social media) I openly requested more input from our current players, and there was resounding support for taking the deal regardless of what I'd just said not long before. Trust is certainly important, and I try to be a reliable person, but as a developer I also have a responsibility to do what's best for the game, and assuming players were in support of it I could see this would be good for the game. I mean sure I could eventually do a -25% sale on my own and net a lot of new players that way, but this is different--Valve could provide a lot of valuable exposure if I'd be willing to do this, exposure Cogmind very likely wouldn't have a shot at later. And in terms of price that honestly wasn't asking too much, which in addition to player comments is why I'd even be willing reconsider in the first place (if they'd said 30-40-50% or whatever I'd laugh). A lot of good indie games even have their base price at $15, and Cogmind has already been available at $18-20 for the past eight months since the story was completed, so it's not at all too soon for what is still a fairly modest temporary discount.

In any case, I'm used to working alone and haven't previously had to consider the potential impact of those outside my own decision-making process, so I guess I've learned an important lesson here xD. As a niche game I fully expected Cogmind to remain relatively obscure and not really appear on Valve's radar as something they'd be interested in promoting, so that possibility didn't even enter my thoughts, but apparently I was wrong!

Sorry for the mistake, and thanks everyone for your support.

Surprisingly one player thought that a slightly bigger discount this soon in EA might mean I'd stop developing. I guess that means I should address this, too :P. Remember that Cogmind has been out for a long while now, and priced at $20 since it was story complete eight months back, so this is not really as quick a discount as it might seem to those only familiar with Cogmind's still short life on Steam.

More to the point, this project is my life. Honestly the real problem will be how to get myself to stop one day, heh. I've been at this for many many hours across years, and at no point was this about making money anyway. I just want to make a good game, and in fact thought I'd like so many others probably just run out of money and have to wrap up the story and be done earlier than I wanted, but so far Cogmind players have been plentiful and generous enough to keep the lights on in the dev studio <3



As stated in the Steam Early Access QA on the store page, I've planned to continue with at least six months of full-time development, but if we can extend that because Cogmind gets a boost of popularity at just the right time, this is good for everyone, current and future players included :)

To further demonstrate, I have a central mega-file in which I organize my lists of past and future features. Check it out below: On the left in green is the public changelog shrunk way down (you can compare its shape by doing the same with the public changelog here) and on the right is my feature TODO list shrunk by the same ratio. Yes, it's gotten that crazy.



The former completed content already behind us (quite a lot!) weighs in at 1,978 lines, whereas the latter collection of fun and feasible ideas I've come up with is a massive 4,517 lines o_O. Don't read too much into the numbers (it's not a very accurate representation of feature count, and definitely not all of that will be done, anyway), but seriously I have a ton of cool stuff I'd love to add if possible. For every mechanic, item, robot, feature, or whatever I implement another two pop up in line behind it xD

Anyway, hopefully the extra exposure will mean good things for Cogmind in the long term (I still imagine it's too niche, but who knows we'll see....). Right now I actually have no idea which day it'll be, but one of these days in the Winter Sale we'll see Cogmind on the front page's lower section.

Itching to Twitch



I'd love to be doing some streaming now, but I'm still coughing a fair bit, plus still spending upwards of 10 hours per week in the hospital so there isn't as much time left after that and all the dev work :(. Also the best time to stream is my morning (evening time in the US), but recently mornings are when I do my hospital stuff, which also ended up being every day of this week xD

I'd probably be streaming around now regardless, just because it's been a little while, but also have family visiting for a few days. I'll be looking to stream in the next few weeks but I still have to prioritize health and dev so no promises there :P

I did finally manage to get Cogmind's "box art" changed on Twitch, though, so instead of a question mark we now get something cooler!



I put this together rather quickly by tweaking some existing assets and could do a better job of it, but Twitch always shrinks this down pretty small and it works fine at those sizes. If fixed up it would look pretty neat on a physical box, hm...

Leaderboards



If you're new to Cogmind, know that with each new major version release the leaderboards are reset, so that'll be happening quite soon. The Beta 3 leaderboards will be retired and archived and we can start fresh with Beta 4!

Next week I should also have some stats to share with you. You can see old sets of stats linked from the Archives at the bottom of the leaderboards page, but this time will be extra special because we have all the new stats from Steam players! Who knows what interesting meta discoveries await within...

Happy holidays and see you around!

Beta 4 "Data Mining"

Welcome to Beta 4, a properly meaty major version release! Herein we have an improved early game, even greater information transparency, more challenge modes, item gallery stat exporting, and lots more...

Cogmind Beta 4 "Data Mining" (0.10.171220) changelog:



  • NEW: Export stats for all discovered gallery items to TXT, HTML, or CSV for external reading/processing
  • NEW: Lore and gallery exporting shows destination file name once export complete
  • NEW: Materials maps may have one or two special stockpiles
  • NEW: Added guaranteed Sml. Storage Unit to Scrapyard
  • NEW: Option to automatically attach/collect all parts/matter in Scrapyard and start at the exit to Materials (advanced.cfg only: quickStart)
  • NEW: "Fragile Parts" experimental challenge mode (for now set in advanced.cfg: challengeFragileParts)
  • NEW: "Sticky Parts" experimental challenge mode (for now set in advanced.cfg: challengeStickyParts)
  • NEW: "Simple Hacker" experimental challenge mode (for now set in advanced.cfg: challengeSimpleHacker)
  • NEW: "Trapped" experimental challenge mode (for now set in advanced.cfg: challengeTrapped)
  • NEW: 1 new corruption effect
  • NEW: AI corruption can cause misfires and temporary IFF failure
  • NEW: Consecutive on-map items can be compared in keyboard mode, where previous item remembered for stat comparison as long as no other actions taken
  • NEW: Applicable major NPCs and some late-game robots list immunities under their resistances, including context help describing each
  • NEW: Robots with special effect (e.g. Samaritans) now have a Traits button in their robot info window that gives access to all relevant details
  • NEW: Pacifist bonus score applied for each depth reached with no prior kills, increasing with proximity to surface
  • NEW: Programmers can reset nearby allied robot systems (0b10 variants only) to clean corruption
  • NEW: Super secret hidden door opens in response to relevant NPC's data core
  • NEW: Option to show actual remaining integrity for damaged robot core popups, rather than a percentage (advanced.cfg only: preciseCorePopup)
  • NEW: Operators summoning reinforcements via their terminal also display an on-map ALERT message
  • NEW: Part swap list distinguishes broken inventory items by displaying their names in red
  • NEW: Tutorial message about non-stacking effects when simultaneously attaching two parts that will not combine their effects
  • NEW: Numpad Enter also centers map view on self
  • NEW: WASDQEZC command set
  • NEW: Optional "-nonportable" switch applies to all player file saving, including settings, score sheets, screenshots, and the backup system
  • NEW: Support for custom save paths, specified via "-customFilePath" switch (see manual under Advanced UI > File Options)
  • NEW: Option to hide precise values in part coverage visualization mode even when Tactical HUD active (advanced.cfg only: noPreciseCoverage)
  • NEW: Score sheet Best States also records Energy Generation and Matter Stores
  • NEW: Optional Terminus style map glyphs for size 18 ASCII mode players (see manual under Advanced UI > Fonts)
  • NEW: Added explanation of Vulnerability mode visualization to manual (Advanced UI > Parts Window)
  • NEW: Option to block all vi-key input, to prevent unintended movement by those who don't use vi-keys anyway (advanced.cfg only: blockVi)
  • NEW: All Alpha supporter names registered since Beta 3.1 added to in-game list (see Credits menu)
  • NEW: Robots sending distress signals to an ally out of view temporarily reveal that ally's position with a blinking yellow marker
  • NEW: Robots calling for help or reinforcements from a garrison temporarily reveal that garrison's position with a blinking red marker
  • MOD: Robot info window provides Analysis button with separate access to that text, instead of directly displaying it all (some didn't fit)
  • MOD: 't' button no longer sorts inventory while robot info window open
  • MOD: Robot/machine/terrain damage modifier info display now represented as Resistances, using negative values for weaknesses
  • MOD: "Dispatching garrison force" log message in a certain mid-game branch changed to "dispatching additional forces" to avoid confusion
  • MOD: Masking an area prevents Recyclers from even collecting there, rather than simply blocking item knowledge at a distance
  • MOD: Reduced size of -10/Materials by 44%
  • MOD: Scanalyzers removed from -10/Materials
  • MOD: Reduced number of Terminals and Repair Stations in -10/Materials
  • MOD: Fewer bots in -10/Materials, and Swarmer patrols always 3 bots rather 3-4
  • MOD: Maximum preloaded Fabricator schematic rating bonus increased from +2 to +3
  • MOD: "Data loss" message due to corruption effect more specifically indicates that lost data is component knowledge
  • MOD: Corruption misfire attacks against Demented outside W base no longer cause faction-wide aggro
  • MOD: Bump- and forced-melee attack targets no longer recalled automatically for subsequent attacks
  • MOD: On-map label for object under cursor only appears once if cursor remains on that object
  • MOD: On-map label for multi-cell robots no longer recreated when moving cursor (via kb or mouse) around between that robot's sections
  • MOD: Wall/door destruction value (for alert purposes) now based on depth, reducing it for much of 0b10 though later maxing out at its Beta 3.1 value
  • MOD: Item stat comparison no longer available via Repair Station repair list
  • MOD: Core Stripper effectiveness reduced by one-third
  • MOD: A few corruption side effects require passing a minimum system corruption threshold rather than anything being possible from 1%
  • MOD: Core resets also wipe all intel data
  • MOD: Easier/Easiest mode accuracy bonus now 20%/30%
  • MOD: Hvy. Machine Gun buffed
  • MOD: AM-PH4 propulsion tweaked
  • MOD: A single terminal will only ever explicitly list one Prototype ID Bank
  • MOD: Chance to trigger traps increased while overweight
  • MOD: Removed Ctrl-F1 hotkey for cycling combat log verbosity (legacy 7DRL command now available in options menu)
  • MOD: Cannibalization Units removed
  • MOD: Robots sending distress signals to an ally show no log message if that ally already visible to Cogmind
  • MOD: Lore export button style changed, and keyboard players now access them via T/H/C (upper case) instead of 1/2/3
  • FIX: Chance to avoid self-damage from kicking was calculated per leg rather than per slot, and therefore incorrect for the one multi-slot leg [Valguris]
  • FIX: Network Hubs destroyed outside both view and audible range did not correctly apply effect [Valguris]
  • FIX: Certain bonus points could be earned multiple times, despite intended limits [Valguris]
  • FIX: Potential crash if Borebot destroys itself while clearing an explosive machine [Valguris]
  • FIX: Particle Accelerators only applied effects against on robot targets, not terrain or machines [Valguris]
  • FIX: W might fail to spawn for a particular late-game event [GJ]
  • FIX: Science guy terminal missing a lore entry [GJ]
  • FIX: Holding 'f' before and while dialogue transmission window opening would ignore all commands once window closed [GJ]
  • FIX: Opening super secret hidden door with the proper manual code triggered the security system anyway [GJ]
  • FIX: Crash on a temporary patrol spawning into a map under certain rare conditions [Hopeless Situation Warrior]
  • FIX: Containment Facilitator explosion type context help message missing [Hopeless Situation Warrior]
  • FIX: Core Analyzer effects were checked on the defender rather than attacker, making it useless to attach one [Hopeless Situation Warrior]
  • FIX: Allied Programmers wiped friendly trojans from 0b10 terminals [Hopeless Situation Warrior]
  • FIX: Allied 0b10 Operators revealed friendly derelict traps outside 0b10 [Joshua]
  • FIX: Materials storage cache prefab could in rare cases allow a hostile bot to spawn near Cogmind's entrance location [Joshua]
  • FIX: Easier difficulty modes were getting a higher accuracy bonus than advertised/intended [DeanSherman]
  • FIX: Version number stored multiple times within compressed game.bin metadata (no impact on functionality or data integrity) [kiroist]
  • FIX: 3.1 caused Command internal name misalignment for some commands.cfg entries (no impact on functionality, though) [Raine, JamesVagabond]
  • FIX: Crash on hypermatrix ping effect triggered while simultaneously tunneling deep into earth [dak]
  • FIX: Implementation of tread crushing effect made autoreplacement of some tread types incompatible with the replacement rules [zxc]
  • FIX: Specific Cetus terminal query topic accessible only directly rather than indirectly as a reference (affected keyboard mode only) [ozer0]
  • FIX: Scrolling a repair/scanalyze item list of greater than 26 items resulted in incorrect color coding [Snow_Cat]
  • FIX: Allied programmers could rewire shutdown robots that were otherwise unhackable [Quelan]
  • FIX: Temporary pop-up labels for robots would remain visible and track the robot even after it leaves view if enough turns are passed [Star Weaver]
  • FIX: If the new advanced.cfg noFluffLogMessages option activated, no autogenerated messages would appear in log
  • FIX: Data backup system incompatible with "-nonportable" command line parameter
  • FIX: Score sheet "Absorbed by Shields" data not tallied correctly


Early-game Changes



I've made a number of adjustments to the early game explicitly aimed at 1) making it a little easier for new players and 2) further streamlining it for experienced players. The most significant change is that -10/Materials was almost halved in size. This will make finding exits even quicker, even if you're just wandering aimlessly, having not yet figured out the layout patterns and other clues that tell you where exits are likely located :). Of course the contents (and obstacles! are scaled down correspondingly, so overall your first evolution will come that much faster. Patrolling Swarmers will also never come in 4's, only 3's.



Those changes only apply to -10, whereas all Materials floors will also usually each have one or two special stockpiles with slightly better gear. These are easy to spot.

Even the starting area has been updated, providing a guaranteed Sml. Storage Unit. Carrying spare parts is important for survival, and it's fairly easy to acquire storage units very early on, anyway, so may as well start with one.

This addition also made possible a new advanced.cfg option, quickStart, which automatically collects everything in the Scrapyard, attaches what parts it can, stores the rest in inventory, and puts you next to the exit ready to go. This starts you out with middle-ground Leg propulsion, but carries everything else along too in case you want to switch (or lose something!), and because it's never good to leave spares behind if your inventory isn't full!



Those of you going crazy with explosives in Materials will also (maybe? :P) be relieved to know that the impact on alert won't be as significant as before. Instead of a static value, walls now gradually increase in value the higher into the complex you reach, peaking at the original Beta 3.1 levels for late-game areas. Setting off a chain of reactors will definitely still spike your alert, but not quite like it used to.

Some other features/changes also impact the early-game experience, but are covered in their respective sections below.

Transparency



Cogmind is in general very transparent with its mechanics, and I always aim to convey as much useful information as possible, but there were still a few areas that long sat on the list for improvement which I've finally had an opportunity to address...

Not a lot of robots have traits and outright immunities, and they're usually found late in the game or in out-of-the-way areas, but those that do will now show them in their info window. Immunities are listed right along with Resistances, and as with all stats have context help to describe them more specifically.



Traits got their own sub-window. These are passive effects originally intended to be discovered by observation (or via lore) as they originally only represented non-essential mechanics, but then a couple were added that happen to be pretty important in certain cases, thus it's time to make them all fully transparent.



To make room for this extra info I also gave robot Analysis text its own sub-window. It's mostly fluff and not referenced all that often, so this is a good change that freed up valuable space to fit more important tactical info. (All you really need to know is whether you have the analysis for a given bot, and the fact that the button is visible or not will already tell you that :D)



One of the farthest-reaching gameplay changes to Cogmind with Beta 4: All those distress calls you see are now visible. Notified combat robots are temporarily marked with yellow indicators, revealing their location when otherwise out of view.



This is especially useful when facing Watchers, since their alert range is relatively large. It'll be helpful for new players still learning about the world, as well as tactically relevant to all players since knowing where those signals are headed makes it possible to react by advance repositioning as necessary, or otherwise plan for new company. Cogminds using sensors could more or less already do this, so this change is even more relevant to full combat builds that may not have room for sensors.

Garrisons called for reinforcements will also be revealed, but in red.



As part of this update robots also won't emit distress signals when all they're doing is calling robots already in view. That was always kinda annoying :P

Corruption



There's a new corruption effect! It's a dangerous one, and you can probably tell what it does in this GIF...



Fortunately it's also the rarest one, and also can't even occur while your corruption is low. That's a restriction enabled by a new threshold system--not all effects are possible at all corruption levels, so no more misfires at 1%. The thresholds aren't exactly high so you'll still want to keep your corruption minimal, but it'll be helpful in avoiding ultra-low-corruption mishaps.

EM damage also now comes with another little inherent bonus: Corrupted enemies might misfire, or even specifically target their allies. Oops :P


(this sample image is not indicative of the intended frequency--I recorded during testing with a 100% chance!)

Programmers are also capable of resetting simple allied bot systems to fully purge their corruption. (No, friendly Programmers cannot clean your corruption!)



QoL



Wouldn't be a Cogmind update without some good old QoL!

Operators summoning reinforcements also have a new global ALERT message, meaning they also trigger the on-map alert and sfx. Can't miss it, and you'll also know exactly when that Operator which spotted you (or was even just alerted to your presence indirectly!) reaches its terminal and calls for help.



We get a lot of questions about the damage resistance system in Cogmind, which was implemented more as "damage modifiers," and previously called such. (This was a remnant of Cogmind's origins as a 7DRL based on an X-Com remake.) The meaning of the values was explained in the context help, but it's better to switch over to a more intuitive "Resistances" system found in most modern games. Here positive values represent resistance against damage, and negative values a weakness.



All objects use the new Resistances display, not just robots.



In other QoL, pure keyboard players can now compare two map items against one another, since the first is remembered when its info window is opened. (This was the only comparison scenario not automatically covered under the standard item info retrieval systems.)



A new advanced.cfg option (preciseCorePopup) shows core damage popups as actual core integrity rather than a percentage.



[More!] Challenge Modes



Many of you probably don't even know challenge modes are a thing in Cogmind, but they've been in there for a long while and even have a dedicated leaderboard (at the bottom). They're described in the manual, and we have an ongoing list on the forums, but they don't have their own in-game menu yet so it's not as easy to discover them. For now they can be activated by setting the relevant advanced.cfg variable, but we'll be getting an in-game selection menu eventually--I'm still waiting on some other related features first.

I've added 4 new modes, bringing the total to 12...

"Simple Hacker" mode completely removes the ability to do any indirect or manual hacking.



"Fragile Parts" mode destroys any part that is removed (basically everything acts like a Processor).



"Sticky Parts" mode is an even more extreme variant in which no parts can be removed at all--the only way to get rid of them is for them to be destroyed (think twice before attaching a processor :P).

"Trapped" mode is less a challenge than a different way to play, since you can build specifically to take advantage of this scenario, but it fills most maps with a lot of traps. There is also a +20% chance to trigger a trap.



Item Stat Exports



Time for some data mining! You can now export all your item gallery data, putting the stats in one of three formats, whichever works best for your needs.

Most useful for the average player looking to compare items is the HTML export, with a table of contents linking to each section, where items are divided by slot type and show only the set of stats relevant for that category.



CSV is good for spreadsheet analysis, graphing, or even converting it all into some other format. (This is how our item stats will finally start making their way to the wiki.)



The TXT export is good only because items list only stats relevant to them.



In any case, these offer new ways to explore the items you've discovered so far.

Both the lore and gallery UI also now show the file path and name of the exported file, so you know it happened and where to retrieve the results. The buttons were also redone and for keyboard players are referenced via T/H/C instead of 1/2/3.





More!



You'll find plenty of other little uncategorized things listed on the changelog, but some of it's worth talking about in a bit more detail...

I added support for WASDQEZC movement, but it's not native like vi-keys and the other common movement options. Technically all I did was create a keybinds file remapping existing WASDQEZC commands to vi-keys, so this was possible before, but I'm doing an official one since it's fairly easy and more players might want this. To read more about it, and how to activate it, check out this post on the forums.

I've also added an option to use alternative map ASCII, giving it a more traditional roguelike look with Terminus rather than Cogmind's default square sci-fi font. The main purposes here was to improve readability of the ASCII mode map for those with low vision or on tiny high-res displays. It's not in the options menu, and currently only works at size 18 (our most common font size at 55.3% of players), but I could add it at more sizes depending on feedback. Those capable of using font size 18 can enable this option by opening data/fonts/_config.xt and setting the new Terminus options to 1 in the Available column. The relevant new font set names begin with "18/T+".



It's also worth mentioning that DeanSherman discovered Easy and Easiest mode players have always been getting essentially max accuracy with every shot, unintentionally xD. As I was fixing it so these modes applied the correct bonus, I decided based on the state of the lower leaderboards that for now it would be overkill to nerf the accuracy to intended values. After all, even with a massive accuracy boost players still die in droves, because there are quite a lot of strategic and tactical factors relevant to creating deadly situations (besides simple accuracy), so we may as well keep one of the more easily controllable variables a net positive rather than yet another factor to contend with. So now these modes get a +20/30% boost, respectively. This means shots in certain situations will miss a little more than you might be used to in these modes, and the challenge will go up a bit, just enough to need to pay a little attention to accuracy factors (and make targeting computers actually somewhat useful!).

Beta 4 saves are not compatible with previous versions, but even if you're on Steam and have autoupdates enabled, Beta 3.1 is still available via its own branch and you can roll back to finish a run in progress first if you like.

SITREP Saturday #6: 8,410

Another crazy productive week, and the next update is mostly complete! Here's an overview of features that have come together in just the past few days...

Friendly Materials



I'm making some pretty significant adjustments to the first main map. I've considered a complete redesign, but that would take much longer (plus I'm not sure it's necessary given other plans I have for the early game), whereas what I've done with it so far in a single afternoon will already have quite an impact on the experience.

A sample layout in my mapgen design program:


Most notably it's shrinking. By 44%.

Of course the contents are for the most part scaled down correspondingly, the net result being an even quicker floor through which to pass for that first evolution. As a bonus, both that map and other Materials areas will now come with the occasional better stockpile.

A sample -10/Materials in the new style, as seen fully revealed in game:


Crunchy Data



We've been talking about it for a long time, and it's finally happening: You'll be able to export your item gallery collection!



As with lore exporting there are three format options, each more suitable for a different purpose. With item stats available outside the game you can theorize builds to your heart's content, run analysis on the items, or do whatever you want with the data. Data!

Our wiki users are mostly set up to automagically create and update wiki pages based on export data, so we'll finally have an up-to-date wiki without requiring much manual work :). Maybe we'll even get a bot for the chat channels that can draw from the wiki to respond to queries about certain items. We have players who are veritable dictionaries of Cogmind item stats, but they're not always around :P

The TXT export is probably not all that useful, but I included it for completion sake. One benefit is that it only lists values relevant to each specific item, so if you're looking for stats on just one item rather than seeking to compare it to others, the TXT output is pretty good.


CSV is for the data crunchers.


HTML will be most useful for the average player, dividing your items by slot type and showing only the set of stats relevant for that category of items. There's even a table of contents with links to each section :D


QoL, of Course



The main focus of this release has been to clear the todo list of all the high-priority items, many of which involved quality of life improvements. I'm happy to say I've taken care of every single one (whew!). Some of the highlights...

Operator-summoned reinforcements now trigger an ALERT message, meaning it will also appear over the map with the alarm sfx, even if they're out of view. This makes it easier to get a handle on what's happening with regard to that situation.


Also in the transparency and tactical information department, robots calling for help now reveal the location of the robot they're calling! This'll be a game-changer for tactics, as well as helping new players figure out what's going on.


Similarly, calling for help or reinforcements from a garrison reveals that garrison's location.


By request I've added an option to use alternative map ASCII, giving it a more traditional roguelike look with Terminus rather than Cogmind's default square sci-fi font. (This will only include size 18 at first, but I could add more later.)


A new advanced option shows core damage popups as actual core integrity rather than a percentage.


Broken inventory parts are listed in red on the swap menu to distinguish otherwise duplicates.


I finally changed the behavior whereby a robot label could follow a robot out of view. Not that it was something worth abusing, and I actually knew about this and left it that way for the past several years because removing it also sometimes removes semi-valid info, but under extreme circumstances it obviously looks weird :P


As part of this update I also have both the lore and gallery UI actually showing the file path and name of the export, so you know it happened and where to retrieve the results.


Top 100



Cogmind made the Top 100 indies of 2017 over on IndieDB! Thanks to everyone who voted, and if you could, vote again for the final round which is open for a few more days.

Beta 4



I've confirmed the next release is definitely a Beta 4 (not 3.2), although haven't yet settled on a specific day. I can say that I'm wrapping up feature development--mostly just stress testing remains, so it'll probably be done within a week. That said, I'd rather stick to my habit of early/mid-week releases, so I'll probably end up holding onto it until the week after next. In any case, if that happens it'll of course also mean an extra couple days for me to pack in even more stuff :D

Our SITREP for the week is titled after some data shared in my Year 4 of the Cogmind report. For a look at some of the highlights of 2017, and a glance at 2018, check that out if you haven't already.