Home Artists Posts Import Register

Content

April has already been a very eventful Month.

If you hadn't heard by now, after exploring the depths of Cogmind and falling in love with it, DoshDoshington made a great video introducing it to his followers.

As a YouTuber perhaps best known for his Factorio videos (and games like it), his viewers naturally include a lot of nerds like ourselves, and the response to both the video, and Cogmind with all the new players coming in and enjoying it, has been great. It's just the right audience, but in this case includes many from outside the traditional roguelike community (finally :P).

Almost perfect timing, too, with the recent release of Cogmind's new-and-improved UI. (A little later might've been even better if only to get even more of the kinks worked out first, because it still crashes sometimes given the massive number of architectural changes, and this despite a record number of patches xD. Overall it's been pretty smooth, but any crash is bad...)

Beta 13 was already pretty popular considering the new UI layouts, spurring new interest and bringing back a lot of old players, and we already had two other really good Beta 13 meme videos, Youngster's "The Cogmind Beta 13 Experience" and dogawesome's "Cogmind Slander", but the Dosh video brought it to another level. On Steam I also ran a so-called "visibility round" for extra exposure on their platform throughout March, which I hadn't done for a long while.

Interestingly even Aavak did another Cogmind stream (don't think they've played for years?), which I dropped into for a bit, though I heard him mention he wasn't aware of the Dosh video and just happened to want to play. Maybe Beta 13 developments helped. There were about 400 people there for much of it.

So with all the new players for me to help manage and follow along (I still read pretty much everything in Discord and elsewhere), it's been quite a busy couple weeks on top of regular dev work...

Leiavoia of Dataminer fame reports that we've already had more scoresheet submissions in Beta 13 than in all of Beta 12, which was 12 months compared to only 6 weeks. I'm sure it helped that Dosh explicitly requested that any new players activate score uploading--the Beta 13 stats will no doubt be pretty interesting when it comes time to look at those :)

This week I finally got to do my own Cogmind streaming, starting a fresh Subcaves run that let the uniques define the path, and interesting uniques they were/are... More next week.

Cogmind Vision 2025

Funny enough, mere days after Dosh's video I was already scheduled to do my own big Cogmind announcement. Many of you probably saw it via one of the usual outlets, but just in case: I previewed what the next couple years of development will look like as we're set to get all those expansion ideas I promised at one point or another. Scraptown is already being worked on, as you know, but there's also the Unchained and Merchants confirmed down the road.

In addition to the cover image featuring a color-coded bot diagram with labeled parts, following the announcement and some folks liking the image (it was fun to make!) I made some more to share in that same theme...

Not too long after that I did also raise Cogmind's base price to $25 as I announced a month ago would be happening, though I postponed the original implementation date by several days to try not to have it hit right in the middle of all the extra interest sparked by the big video.

Despite the price on Steam, on my site it has been and is currently discounted back to $20 since I don't have to play by their rules on my own site :P. You're not allowed to discount on Steam within a month of a price change, which is also why I couldn't postpone the increase too much longer, since there's an important themed sale coming up in May and waiting too long would preclude that.

Funny enough (or sadly enough), even at $20 on my site, I still get a much greater portion of that money to help fund development than from any of the $25 copies sold via Steam.

The Other Numbers

So you probably thought all that's what I meant by "numbers go up"--more players, greater revenue, higher price, a flood of score submissions... but there's more! The main topic I actually want to cover today is a different sort of numbers more directly related to development itself, and that is Cogmind data loading.

I should be full speed ahead on Beta 14 content about now, but in between fits of debugging and design work I've been trying to finally fit something else in as well: finishing (or at least getting further along with) Cogmind's new data-loading system.

Since the beginning Cogmind has actually had more than one system for loading data into the game, primarily a text-based system and another that instead relies on binary files. I tend to like working with text because it's just easier to work with, so over the years I let the latter fall by the wayside, especially since at the beginning text was just fine. But in the beginning I also wasn't planning on (or even imagining in my wildest dreams of) expanding Cogmind for over a decade, and text does come with drawbacks. In particular it doesn't scale very well.

The earliest versions of Cogmind could start up almost instantly. So nice. So smooth. Love it.

But of course the more data you need to load up the slower it'll get, and this isn't a sudden change, either. At first it's one second, then maybe two seconds, then a few, and one day years later you're waiting ten or more seconds just to start the game. It's actually worse for me, starting up the game for testing, which I do repeatedly throughout the day, every day, and is a good bit slower than launching the release version due to the extra low-level checks that are filtered out for those.

This has bugged me for years, and I knew I'd want to do something about it eventually, but it never quite reached the threshold of annoyance to pull the trigger. I have tried to get used to, for example, doing something else for a bit while the game starts up for me to test a change, but honestly that approach often leads to distractions xD

Well now we're getting all these new expansions, which means lots more content (you might recall the graph from my latest annual review depicting historical item counts vs a small taste of what's coming), and I felt now is the time.

I must point out we've already had a nice improvement in startup time thanks to Luigi! (specifically the optimized audio DLL) This has made a big impact for players, though can only help so much on my end, the slower dev build side that has other data bottlenecks, and as with many other significant architectural undertakings over the past half year, it seems like the right time to do this before diving deeper into the next major phase of Cogmind development.

That brings us back to the data.

In terms of total disk size, Cogmind is already pretty tight, especially considering how much is inside (I recently heard from one of the newer players, also a developer, who was amazed at how so much fits into this little package :D).

Obviously audiovisual resource requirements are generally low as far as games go, in part due to my choice of audio quality and compression, but it's reduced even more by generating a lot of what it needs on startup. Like the visual effects are in many cases created via scripted templates, and therein lies one of the problems: Reading in all this raw text data and processing it is a bit time-consuming. It makes waaay more sense to just start with the processed data, yeah?

So that's thrust of the latest efforts in preparation for Beta 14, making it possible to save the pre-processed data in a state that can be instantly loaded by the game when it runs.

Like I mentioned before Cogmind already supported this to a degree from the beginning, but I stopped maintaining that capability at some point since I wasn't usually using it anyway, so it no longer covered everything, and critically excluded the most important things like the visual effects (a more complicated process).

I don't think I'll really quite finish the full extent of what I'd like to do here, because after all I need to actually get back to a lot more work on the things that you all will see, like more NPCs to befriend (definitely not murder!), but this is a leap in the right direction for the data, with maybe more stages in the future.

I'm not quite done so I don't have a final comparison for which to share hard numbers, but it should significantly shrink the size of the data included in release. It will also simplify deployment by vastly reducing the number of files involved in the final stages. And the biggest savings are again to be enjoyed by me repeatedly restarting the game as I spend forever doing QA :P

Anyway, I should've done this a long time ago, but I tend to leave this sort of thing for far too long, meaning the types of work that will contribute the most to smoother development.

On the player side, after this coming change the only remaining bottleneck will be audio, which will now take up by far the largest chunk of loading time, though if feasible I'm thinking that the next step would be to try to defer that off in another thread after you've already started playing. It would introduce a few complications, but would be really nice... Of course, as of Beta 14 anyone playing via the option to start without audio loading at all will probably get some lightning fast startup times :D

Files

Cogmind and the Future of Roguelikes

In this video, I really grind my gears. Consider supporting what I do: https://www.patreon.com/Zyllius Cogmind: https://www.gridsagegames.com/cogmind/index.html https://store.steampowered.com/app/722730/Cogmind/ Cogmind Wiki: https://noemica.github.io/cog-minder/wiki.html https://leiavoia.net/cogmind/dataminer/

Comments

IzRey

The increase in numbers is well deserved @Kyzrati! Excellent work!!

Kyzrati

Thanks, Brett! I had already expected this year and the next to be pretty amazing for Cogmind--my 2025 announcement and plans were written up well before that video came out, but that just brought everything to a new level, hell yeah :D