Official development blog

Writing about Cogmind and Roguelikes, a History

Something that’s kinda bugged me lately is when I look at the blog sidebar and notice that the article count in the archives seems to be trending lower, even though it doesn’t really feel like I’m doing nearly that much less writing.

dev_blog_sidebar_archives_menu

Hm, numbers down-ish? Let’s find out more!

Now I’ve had some theories and assumptions to explain this trend, but it’s always best to back up assumptions with real data. I’ve now grown curious enough about the details that I decided to compile some stats to explore the situation a bit more!

While I have a lot of writing scattered across a number of different locations, I’m mostly interested in the dev blog since it’s a single centralized site that contains the bulk of my writing, and the data is fairly easy to extract from WordPress, so we’ll be looking specifically at this blog.

The results are a little surprising, but also in line with what I theorized, and can be summed up by examining the changes over the past decade as reflected in this one graph:

Cogmind/Roguelike Articles Stats, 2013-2022

Okay, that’s interesting…

Back in mid-2013 when I started this blog, it was the only formal outlet for information about Cogmind development, since I was highly focused on building the pre-alpha version itself rather than spreading the word. As such, I used it to report progress on many individual features, lots of basic stuff like item types, various machines, hacking, ally mechanics, sound effects, all sorts of fundamentals to show what I was up to each week or even just a few days.

In the graph there you can see those first years with an especially high total word count, but low average per article. Many of these came in at under 1,000 or even 500 words, which honestly I have trouble imagining today :P

That period lasted through mid-2015 when Cogmind Alpha was released. As indicated at the end of that announcement, I was going to start posting progress updates on the forums. Little did I realize this would eventually also start shifting the nature of the blog itself.

Since Alpha releases weren’t that few and far in between, instead of writing about everything on the blog I simply waited until writing the actual release notes to share details. Of course the blog continued, but I was more selective about choosing topics, focusing on those suitable for an interesting deeper dive into design and/or implementation, or especially those topics which might be of general interest to other developers (even outside roguelikes). Not sure about these days, but it was cool to learn that at one point this blog was ranked among the top gamedev-related blogs on the internet! (at least based on RSS feed data from various platforms; there’s no doubt more competition these days haha…)

I was overall still trying to write more articles during the Alpha period since there were many relevant topics I was interested in covering, but then 2017 came along and at the request of some players after the Beta launch on Steam I started providing weekly (or nearly so) updates on progress and various features, dubbed “SITREP Saturday.” I did fifty of those, mostly through early 2019 (though I occasionally use that title for semi-annual updates these days), so yet another outlet besides the blog to attend to.

Cogmind SITEREP Saturday Collection (xxx)

I wrote 32 SITREPs in 2018. These things are like decent-sized blog posts in their own right… I sometimes wondered if I should put all that on the blog, too, but this site really had become something different.

Release notes have also continued to grow larger and larger over the years :P

Cogmind Beta 11 Release Notes Collage

The Beta 11 release notes earlier this year covered a lot of ground!

So the blog was really left with only long-form articles about the biggest topics, and apparently just like Cogmind’s releases get larger and larger, so, too, do my articles here :P

Cogmind/Roguelike Articles Stats, 2013-2022 (annotated)

Same graph from before, annotated with additional context noted above. I also did a lot of writing for r/RoguelikeDev FAQs from 2015~2019, and started writing on Patreon in March 2019, though in the latter case especially a good portion of that eventually comes to the blog in some form anyway.

I didn’t expect to see that 2022 set a new record for the average article length! Although it’s clear the total word count dropped a bit, that the feeling stayed the same shouldn’t be too surprising since the longer the article the more difficult it is to write, leading to reduced efficiency.

Some other stats:

  • Years of publishing: 9.25
  • Total posts: 200
  • Total word count: 434,766
  • Total image count: 1,893

Notes on Writing

While we’re getting all meta here, I thought I’d take the opportunity to share some extra info about the process behind my articles.

As with many semi-formal writing projects that you hope to be nicely organized, I almost always prepare an outline in advance. Well-organized writing is not only easier for a reader to follow, but also probably conveys even more useful and relevant information while filling in blanks or expounding on certain sections to improve flow, which is better achieved at a higher level than when trying to write the actual sentences of the article itself.

Having an outline and/or at least notes in advance also leaves time for extra consideration and updating before writing. Plus it’s a lot easier to make adjustments to an outline than to an article which is already partially or entirely written!

In my case, if the topic is going to be about some specific feature I’m working on for Cogmind, which I’ll generally know and have decided in advance when working on said feature, I will actually save any notes related to the hows and whys of the feature implementation for later reference, since many of these will likely not otherwise survive once the feature is complete, but they’ll be a good resource for the article itself. Really they tend to form the more interesting backbones of an article! It’s not a question of simply what, but why and how. In that sense I’ll sometimes even make additional notes during implementation that I don’t need myself when building a feature, but that I think will go well with the future article.

And although I say that I may not need all those notes, I admit that writing such articles (or even just preparing to write them) does have a way of improving the results of development itself as I reflect more deeply on those hows and whys.

[Unfortunately I don’t have any of those outlines on hand to show you since I delete them when finished with an article, and the outline for this article is not so representative of what I mean, so… maybe I’ll come back and add one some other time.]

Research is another important component. Fortunately I write mostly about topics I’m already quite familiar with, or that are okay to approach subjectively as long as I can explain my reasoning, because good research can take a while. Of course I do it where necessary, though.

Pretty Pictures

Although this section is supposedly about “writing,” to be honest a major part of almost any article is not the text, but the images! Screenshots, diagrams, animated demos… I use a lot of images. They’re great tools for demonstrating what I mean, make everything more interesting for the reader, dress up the article up so it simply looks cooler, and by extension also provide something visual to share when discussing the topic with others or referring back to the article.

Cogmind/Roguelike Articles Image Stats, 2013-2022

A comparable chart of article image stats, somewhat less meaningful since the number of applicable images can vary widely by topic. Most longer articles might average around 10~20 images, but some like the art-oriented ones might have 60+, skewing the data pretty hard in some years. In any case, it at least shows that I like supporting images :)

I’m willing to spend quite a lot of time getting the right image, be it putting together a diagram or taking just the right screenshot.

I’ll play a roguelike for an hour just for a screenshot, even learning a roguelike I haven’t played before for that purpose, assuming I can’t find what I need online (which sometimes happens with traditional roguelikes since only so many people both play them and post their progress).

Even with Cogmind where I have complete control I’ll set things up and spend a while to record a gif showing exactly what I want (and in the precise way that I want!). Depending on the difficulty and complexity of what I’m trying to demonstrate, and more important how likely it is to occur exactly how I want it to, I may record dozens or even a hundred times. If it looks tough and like something I can improve the chances of getting a better recording through manipulation of game data I’ll do that, too :P (the same with testing any feature, really--gotta save time where we can!)

Aside: This also goes for non-blog Cogmind stuff as well, like preparing feature demos for release notes--I’m not going to simply get an approximate recording and call it a day, it’s gotta be perfect. I find the better approach here is to do recording after finishing each individual feature, not when it’s time to release, because by then 1) the workload is overwhelming and 2) I already don’t have the same familiarity with the feature as when it was just implemented, so the last thing on my TODO list when working on a feature I’ll need to demo is always “make a gif” :D

Anyway this article is pretty meta, but I found it interesting to learn after compiling the data that there are two opposite trends at work here, and figured some of the points I make by expanding on that observation could be of use to other devs, or even others just interested in what goes on behind the scenes.

This article weighs in at 1,646 words, not including this sentence ;)

This entry was posted in Meta and tagged , . Bookmark the permalink. Trackbacks are closed, but you can post a comment.

Post a Comment

Your email is never published nor shared. Only the anti-spam entry is required. See here for the privacy policy.

You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>