Post news RSS Magic Number

256 achievements are completed, each with their own icon, fully tested, and with a dedicated UI under construction. Also talk about AFD mode, the extensive P7 postmortem, and LOW_CONTRAST updates!

Posted by on

All 256 achievements are done! But... there's still a lot to do :P

Even just on the achievements side of things there's more UI work before the system can be considered finished, then after that still the Steam support to add as well, for those playing Cogmind on Steam (not required), but at least we're in the tail end of it. And at least all the achievements are both implemented and tested, so the foundation is complete and stable!

I've mentioned achievement "categories" before, but haven't gone into detail about what that actually means. Each achievement belongs to a certain category that gives a general idea of what type of achievement it is, determines the color scheme of its icon, and also enables it to be filtered along with others of its category via the in-game UI. There are so many achievements that after I'd formed a tentative list it seemed best to divide them up logically to aid both organization and understanding.

The six achievement categories:

  • Mechanics: A group of mostly basic achievements covering common useful tactics and learning about systems. Some of these serve as a way to teach (or at leas reinforce) features, too.
  • Style: Specifically play style-related achievements, like combat, stealth, hacking, etc. These are generally earned through normal play using a given style/strategy, and while some might be more challenging or require focus in a certain area, they're not difficult enough to be considered "special challenges " (another category).
  • Progress: Personal meta progress like high scores, lore/gallery coverage, and world exploration.
  • Challenges: This group doesn't have anything to do with Cogmind's "Challenge Modes," but is simply achievement-specific individual challenges ranging from Tier 1 (not too hard) to Tier 2 (hard) to Tier 3 (pretty hard!).
  • Events: Story-related elements. Basically once you've visited every location and exhausted all the branching possibilities of the plot, you'll have all of these. This category is entirely hidden, though, so these aren't achievements to be explicitly sought like a list. You've just gotta explore and use the in-game lore as clues.
  • Wins: There are a lot of different ways to win the game, whether achieving unique endings or simply winning by overcoming other challenging scenarios, so these get a whole category of their own.

Last time I showed finalized icons for the first category, but here are the other five as they appear in the spritesheet :D




Events (plot-related)


Yeah there are a lot of different ways to win :D

With the final batch of icons completed, I have a program that can spit out all the icons as individual PNGs (I develop them as REXPaint spritesheets), and those are ready for the next processing steps...

Specifically for Steam players I have to upload all the achievement icons and fill in their tag, name, description, setting.... It'd be nice if Steam supported batch uploading, but no, each has to be done one. at. a. time. xD. I guess that's fine for most games not having quite so many achievements, but it doesn't scale very well!

Steam also uses JPGs for achievements (along with ugly scaling!), so the quality in Steam's interface won't be as good as it is in game (where you always get perfectly crisp pixels, yay! :D)

I've thoroughly tested all achievements to keep them as polished and bug-free as you'd expect from a Cogmind release. It's kinda fun to quickly come up with the right tests via the debugging features... Here's an example I happened to record where I was running a bunch of Decoder Chips at once.

Of course to facilitate testing I also needed to see achievements as they're earned, so that part of the UI is in place now as well. Achievement icons and names pop up over the map as they're earned.

They're also recorded to the message log.

(As you'd expect, these features are adjustable in the config.)

AFD Mode

If you're playing already you may have noticed we had a little surprise event where all the parts turned into random launchers on a certain day.

On Steam it was only mentioned in the form of a semi-announcement in the discussions board (although it was a top-level announcement on my forums, r/Cogmind, and Twitter).

Honestly I didn't have anything planned for April 1st this year, but Cogmind Let's Player nuzcraft asked me about it that morning and got me thinking. I had a couple hours free and decided to really really quickly implement "AFD Mode." It was pretty fun and I'd like to do more of this kind of thing in the future, though as usual there are other important priorities right now so I dunno when.

If you missed the day itself and still want to try it out, with the latest version of Cogmind (it was a stealth update, still just called "Beta 5") you can temporarily set your system clock to April 1st to fool it into loading that mode ;)

Cogmind's Big Little Brother

I heard from someone mentioning that POLYBOT-7 "really helped them understand Cogmind better," so maybe it's worth checking out for that reason, in addition to the fact that it's just an interesting different way to play a modular robot :)

In case you missed it, I released that game last month for 7DRL.

Following that release I also wrote a proper in-depth postmortem about its development, which you may be interested in checking out seeing as POLYBOT-7 is a very experimental alternative approach to the concept of Cogmind. It's available in four parts on the blog:

(And also as a single article on Gamasutra.)

There are tons of details and diagrams/images in there--here are some excerpts:

The source code evolution of all my projects since 2011, which share the same code :P

Redesigning Cogmind's UI layout to meet new needs

Alternative item color schemes

My desk after reasoning through various POLYBOT-7 map layout needs.

A sample 100×100 map layout, annotated (the generation algorithm is one borrowed from Cogmind,
but many of the parameters are different).

Testing generation for one layout style (each floor has multiple styles) of the 125×125 map (fourth floor).

Examining content across a section of map, including patrol paths (the colored lines). I use these same features to balance Cogmind.

Special prefab rooms, labeled. A lot of Cogmind's outlying maps have prefabs as well,
and that's one of the main ways to create unique experiences for different areas,
but in POLYBOT-7 there wasn't time to add very many.


One of several ways in which Cogmind benefited from POLYBOT-7 was many enhancements to the engine's low-contrast mode.

The "LOW_CONTRAST" renderFilter option I added in Beta 5 has been getting some use among players, though it was always kind of a hackish thing in the first place. Lots of Cogmind code and scripts assume the background is black, but I went in and changed that assumption in a number of places where it was more accessible. All of these improvements came as a result of efforts to polish the distinctive look of POLYBOT-7, which uses a low-contrast aesthetic by default. For example:

Path visualization is now much more visible. (All sample images are using the SLEEPY preset.)

FOV edges are somewhat easier to see.

(The following are all before-and-after gifs demonstrating adjustments.)

Activating an Optical Array.

Motion trail fading.

AOE visualization edges.

Structural Scanner and cave-in visualization.

SFX visualization.

UI Work

One of the next places you may need to see achievements is one the game over screen. Most achievements will be displayed directly on the map, but a subset of them can be specifically earned only after the run ends, and they should also be shown somewhere convenient. Plus sometimes you may earn an achievement immediately before the run ends and there's no chance for it to appear on the map--those too will show on the game over screen next to the stats.

Any that won't fit in the window (they'll usually fit) can be found in the score sheet as part of the complete list of achievements earned that run.

The score sheet will of course also keep track of the total percentage of achievements earned so far, as it does with lore and gallery items.

So all the little UI features are done, while the big achievements interface is still under construction. (Remember that both Steam and non-Steam players have equal access to the achievements system, which comes with a better UI and functionality than Steam can offer anyway :D) Here's its current state:

It's very WIP right now--missing lots of buttons, some animations are wrong, and some pieces aren't even animating :P. I shared the original mockup in an earlier SITREP which you can check out to get an idea of what's missing from the layout.

This'll be finished up for next time, and I'll be writing more about achievements the UI later, including via some dedicated blog posts.

Note that in order to fit achievements into the game menu system, I've made some adjustments there. First of all I removed some of the tab/page buttons, and recentered the remaining ones. (Note that the lore and gallery will still be directly accessible via their original number hotkeys, as an extra fast shortcut, you just don't see the buttons there.)

Those features have been consolidated into a single new "Records" page.

That page will be getting more features in the future, but I'll talk about those another time. For now that's where access to lore, gallery, and achievements is provided, along with a little description which is helpful for those just getting into Cogmind.


We're definitely within a month of releasing Beta 6 at this point, though I still don't have an approximate date on my end. Even with all the achievements implemented there's still plenty more work to do there, and the release timing could depend on how smoothly the remaining parts go.

All this week will likely be spent on finishing up achievements-related work, to be followed by a huge list of stuff I will so not be able to finish cramming into Beta 6 xD. Lots of new stuff to work on has been popping up in these few months without a release, so some of that will end up getting pushed back as padding for future releases (themselves centered around other major features).

I've also been brainstorming some ways to add even more content in the long-term without being forced to release it as DLC in order to pay for it, and I think I've come up with an interesting solution but I'll announce that separately when I have more time to write it all out.

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.