Official development blog

Special Game Modes in a Roguelike Context

By their nature roguelikes are highly replayable, but can also serve as a great foundation on which to essentially multiply that replayability again and again. Adjust a few variables here, add a little content there, and you can have a very different game, one that some people admittedly might enjoy less, but they don’t have to play it--others who do like the the alternative mode have a whole new way to interact with an otherwise familiar world, or take it as a challenge depending on how it’s designed.

What I’m calling “special modes” includes everything from timed events to challenges and conducts, basically different ways to play the same game, primarily ways which are explicitly codified by the game, although non-codified alternatives are also within the scope of this discussion.

Why Special Modes?

There are many good reasons to including special modes in a roguelike. Here are some of the advantages I’ve encountered during my work with them over the years:

  • Value: Well obviously as with any additional content, there’s more value for players. This also translates to value for the wider community as well, since special modes serve as another source of interaction whether it’s sharing stories, bragging rights, or just talking strategy.
  • Replayability: Special modes can require players to explore whole new strategies within the context of a body of knowledge they’ve already accumulated about the game so far, just seen in a different light, making an already replayable genre that much more replayable.
  • Learning: Having seen the game in a new light, some of the knowledge gained through these alternative experiences can even translate back to improved skills while playing the main game.
  • Experimentation: Special modes enable players, and most importantly the developer, to experiment with new ideas that may even make it into the game proper--the design can go out on a limb here without any real repercussions. Of course you can already do this with prereleases/beta releases/EA/whatever, but the idea here is that these mods can also continue to live on on their own, without having an impact on the game as well, for those who choose to play them.
  • Interlude: As a developer, sometimes it can take a while to put out a major update. In the meantime, rather than keeping players waiting too long for something new, why not release a special mode to play around with? (Note this category also includes postludess as well, breathing new life into a game after most or all of its updates are out there and development is “complete.”)
  • Efficiency: Handling special modes as “interludes” is also made easier by the fact that they’re generally not that hard to implement. You get lots of bang for your buck in terms of dev time here, due to reusing not just assets, as you might with an expansion or DLC, but basically reusing pretty much “the entire game” and just changing the experience, possibly even significantly, in a relatively short time. This generates a lot of low-cost value.

Naturally it makes more sense to apply special modes to an existing expansive project, since there’s more content and systems to work with, though technically many of the same characteristics can apply to any roguelike, large or small. Still, these modes are more of an optional “extended development” sort of goal, and if the base game isn’t yet complete or at least itself an already compelling experience, then clearly more work needs to be focused there first :P

Sample Cases

To demonstrate some of the above, let’s look at the range of Cogmind’s special modes, which take multiple forms.

Timed events

A few times over the past couple years I’ve added special modes that trigger automatically at a certain time, for everyone to participate in. Of course there is/should also be a way for people to opt out of this if they’d like to play a regular run during that period, but I also make it so that these modes don’t kick in unless a player has already finished several runs and has some experience (or in the case of one of the events, a fair bit of experience).

I’ve seen a number of indie devs do holiday-themed events these days, though most don’t seem very expansive, maybe just a little change or bit of content here or there.

April Fools Day is a good candidate if only because the theme can be a combination of something totally crazy/funny/unexpected. Plus of course there’s the fun result that some people don’t even believe the news is true, while for those who learn it’s a real thing it also kinda counteracts the growing internet annoyance at all the fake game-related announcements people wish were true xD. I like making an April Fools announcement about features everyone can actually play with.

I’ve done a couple of these so far, starting in 2018 with Launcher Mode. This one is a good example of a quick modification that changes the entire experience in interesting ways. All it does is essentially convert all obtainable weapons to a random launcher instead. Launchers are powerful, but also resource-hungry and not great at solving every sort of challenge, so strategizing ways around their shortcomings (with a more limited set of options) is a pretty new kind of experience. Plus players get to use fun weapons that tend to be more rare in regular runs :)

cogmind_afd2018_launchers

Sample map area with all items replaced by random launchers for April Fools Day 2018.

Being put together so quickly there were a couple of oversights, like at first enemies could still drop their weapons and you could arm up with non-launcher weapons that way, but I fixed the main issues with a quick patch shortly after release.

From conception to implementation to deployment, this entire mode took only an hour to put out, and wasn’t even planned at first, but literally on the morning of 4/1 a player asked about April Fools and it sparked an idea (another reason having an active community is so great--lots of interaction to spark new ideas). Overall a relatively small effort for big gains.

Unfortunately I don’t know how many people actually played because at the time I simply decided to deactivate score uploading if using that mode to avoid polluting the leaderboard with non-standard runs, but news about the mode did get posted around (and even attracted attention from new buyers) and people thought it was fun, or at least funny even if they didn’t play :P

Certainly the AFD (April Fools Day) data could be directed elsewhere, but I wasn’t thinking about it then, and there wasn’t time much time to think through doing that anyway--it was already the morning of release!

In April 2019, however, I once again released a special mode, and this time I had both more experience and some time to dedicate to redirecting scores for this mode so we could get some player data, and a dedicated leaderboard. Participation was limited (42 players) since the leaderboards are opt-in and it was just a timed event, but it was nice to be able to look at some stats from the runs.

cogmind_pay2buy_leaderboards_190419

Cogmind April Fools Day 2019 Leaderboard

The theme for AFD 2019 was “Pay2Buy,” where players don’t find or salvage spare parts, but instead earn coins and buy items from the “Cogshop.” There’s even a market economy, loot boxes, and special deals!

cogmind_pay2buy_demo

Buying items from the Cogshop.

This was most certainly not a one-hour job like AFD 2018.

I spent a week designing and putting together the Cogshop and related mechanics, but I think it was a week well spent since as per the “interlude” concept mentioned above, it gave me something new to put out there during a lull of regular releases. The previous release was 7 weeks before 4/1, and now 7 weeks later (as I still work on some extremely time-consuming features) the next major release still hasn’t hit, so yeah we really needed a little something out there :P

Pay2Buy actually wasn’t the first idea entertained this year--in the run up to April 1st I experimented with turning Cogmind into a real-time game, but that didn’t feel like it would be fun for a majority of players so I dropped it. I talked about this mode and its design on Patreon here (patrons only).

Another important detail about these particular “timed” events, is that I built them to also be available after the event period. Not everyone who might want to can necessarily play on April Fools Day, so just like there’s a method for players to opt out of the events, they can also opt in on other days (both handled via command line switch). This wasn’t true in 2018--back then the advice was simply “change your system date when you start a new run,” but it’s kind of annoying to require that players mess with their system for something like this! I added the mode-forcing feature this year.

So these event modes have become permanent optional features. They’re simple and/or isolated enough that there shouldn’t really be much maintenance involved in future versions, may as well make them available to everyone down the line :D

Late last year we had another timed event which I approached very differently: “Limited Edition Holiday Mode 2018.”

cogmind_holiday_mode_2018_present_matrix

Cogmind Limited Edition Holiday Mode 2018 logo

Running from December 20th through January 1st, the highlight of this event was getting PRESENTS.

cogmind_holiday_mode_2018_scrapyard_presents

The Scrapyard is full of presents! Who could’ve done this…

cogmind_holiday_mode_2018_present_art

Go ahead, open it!

Opening each present revealed one or more items, really good stuff, and available right in the starting area. Not just any good stuff, though, the majority were chosen from among 17 brand new holiday-themed items, some with new mechanics (see this followup announcement for details).

cogmind_holiday_mode_2018_black_coal

Dropping a piece of “Black Coal” outside a Garrison and making a run for it.

A few of the less special items were randomized, but most I handpicked for each day to allow for different experiences through different combinations, of course taking into account special days like Christmas Eve, X-mas Day, and New Years. The craziest, flashiest item was reserved for reigning in the new year:

cogmind_holiday_mode_2018_RPDS_ASCII

Behold, the RPDS!

cogmind_holiday_mode_2018_RPDS_tiles

RPDS Demo: Now With More Tiles Edition

Yeah it looks OP, but it’s also an insane drain on resources so is not easy to properly use! Not to mention the complex gets really mad when you destroy so much stuff that quickly, and that usually means trouble. Still fun though :D

Now this all seems like a fairly big production, but I only spent two days on it! Surprised myself with that one, really. It would’ve taken longer had I decided this event’s features would be future proof and available through all following releases, but this one was a true limited-time event only available in that one version of Cogmind. As a one-time event, I was able to rapidly add content without putting any time into considering or preparing for possible long-term consequences of my decisions (or even organized/coherent scripts and code xD) like I normally have to do.

This highlights one of the drawbacks of special modes, that in order to keep them usable in future versions they may have to be maintained along with changes to the rest of the game, which can be time consuming and possibly not worth it, so it’s good to differentiate between temporary but extensive modes and those modes with a more limited feature set which can more easily be kept with minimal maintenance going forward.

Both AFD 2018 and Holiday Mode had really high “bang for buck” quality. Less so with AFD 2019, but it was definitely still worth it since we got to keep the mode and it’s a pretty interesting way to play.

Challenge Modes

Cogmind currently has 12 “challenge modes.” The design scope for these is somewhat narrower than time-based events, which might inherently be challenging to various degrees, but the focus there is mainly on fun. Challenge modes, on the other hand, are an optional way to increase the challenge level of the game through various modifications. Multiple challenges can be active at once, and each one intermittently awards points for reaching milestones. Plus of course there’s the advantage of allowing players to simply face different or unusual challenges compared to those they might normally face during their runs.

I haven’t covered these on the blog before since I’ve generally considered them an “experimental” part of the game, although I’ve been maintaining a forum thread updated with their content.

They’re not even accessible from in-game menus, actually, only via an external config file, but challenge modes have technically been integrated into the game proper via achievements for winning them, and there’s a separate leaderboard as well.

Below is the current set of possible modes, just stuff I either 1) thought would be challenging to try or 2) easy to implement anyway and worth experimenting with:

  • Devolution: Start with three times as many part slots, chosen randomly (from a weighted distribution) and lose a random one at each new evolution, growing from super strong to eventually extremely weak.
  • Fragile Parts: All parts are destroyed on removal, mimicking the standard behavior of processors.
  • Gauntlet: All exits from each map are blocked from use except for the furthest main exit from the map’s entry location.
  • Inhibited Evolution: Only evolve half as many slots as usual at each depth (essentially weaker throughout the run).
  • No Salvage: Destroyed robots leave no salvageable parts, only matter (a resource), making it harder to find the right/useful spares.
  • Pure Core: No inventory slots are available for the entire run, only what parts be attached.
  • Scavenger: There are no random part stockpiles in the main complex, and any lone items strewn about are damaged. Everything else must be salvaged from other robots, stolen from haulers, or fabricated.
  • Simple Hacker: No indirect or manual hacking of any kind.
  • Sticky Parts: No parts can be removed or swapped out manually, and must be destroyed to free their slot(s).
  • Super Gauntlet: All exits from maps are locked, and the only way to advance to the next depth is to find and fight through the one unlocked Garrison.
  • Trapped: Most maps have 10 times as many traps, which are also more likely to trigger, and most methods of learning trap knowledge are unavailable.
  • Unstable Evolution: No control over slot type evolution, which is random.
cogmind_challenge_scavenger_example_map

Random damaged parts lying around in the Scavenger challenge mode.

cogmind_challenge_simple_hacker_no_manual

Manual hacking option disabled for the Simple Hacker challenge mode.

(See the forum thread for sample images from more challenges, along with other ideas and discussion. Also the manual has more specific mechanics and scoring descriptions than what’s found above.)

Most of these are actually quite easy to implement, again a good way to add value and new experiences to the game at little cost.

They’re also still an ongoing part of feature development. It’s been ages since the last batch was added, but I’ve got dozens more ideas in this area (and of course many suggested by players as well), I just need to decide when to add more… I guess the plan was to make an in-game menu to access them first, and do this and more as a dedicated release, but as a time-consuming but low-priority feature that’s been repeatedly pushed back.

Conducts

Conducts (also called “challenge games” or “challenge runs”) exist in many roguelikes, from as early as the classics. Conducts are different from Cogmind’s so-called challenge modes in that the latter actually modify the content or mechanics in some way to create the challenge, whereas traditionally conducts work within the base game itself without any changes--they’re purely dependent on some kind of player-based limitation.

For example NetHack includes a number of optional conducts that you can read about here on the wiki.

nethack_conducts

Some of the conducts NetHack tracks, as listed in game via the extended #conduct command.

Brogue also tracks conducts, which it calls “feats.” The full list can be found here.

brogue_win_feats

Victory screen from Brogue, having achieved two conducts (source).

Unlike the above examples which are just detected automatically as you play a normal run, Angband players essentially treats some of its “birth options” as conducts, though there aren’t very many--some roguelikes lend themselves to conducts better than others.

Not all conducts are necessarily tracked by a roguelike, many more originate in the player community and become established as “unofficial” conducts, challenges attempted by many players but that aren’t technically coded in the game, instead relying on players self-enforcing the appropriate limitation(s) or requirement(s).

NetHack also has a decent-sized list of unofficial conducts (some of which are tracked by variants even though vanilla does not), and ADOM has a number of established unofficial conducts as well. Some of ADOM’s achievements have since become semi-official by having them recognized via Steam achievements in that version of the game.

Cogmind definitely has its share experienced players who self-impose conducts, too, and even an “official” set as in those represented by relevant achievements. Although Cogmind achievements don’t require Steam, the achievement system is the only one to codify and enforce these conducts, and therefore technically each only works once (the first time it’s achieved). Later this could be expanded to recognize them in any subsequent run even after having been previously achieved, but I’m not too sure of the value in doing so just yet since there’s a lot of other more valuable features, not to mention there are so many achievements that it’s easy for players to stay occupied doing new and different things anyway, as opposed to repeatedly attaining the same goal.

One difference worth noting here is that “conducts” are traditionally more specific than a lot of achievements, which may be accomplished before actually winning the game. A conduct is not fully earned until the run is won, so they’re generally challenges by and for the minority of experienced winners choosing them as a way to intentionally make the roguelike even harder.

Cogmind currently has 256 achievements, but win-related conduct achievements all fit into the following subcategory:

cogmind_achievements_win_challenges

Cogmind sample achievements in the UI.

Then there are 12 more for winning with each of the Challenge Modes, though again these actually change the game, and I wouldn’t consider them conducts as defined here. And quite a few more of Cogmind’s achievements require long-term conducts within a given run, but can technically be earned before winning so don’t really count, either.

Non-meta Conducts

Conducts as described above and generally thought of by the roguelike community are “meta achievements,” basically optional challenges imposed on top of the game itself, and probably can be stopped/forfeited at any time by player choice, regardless of whether or not the game is tracking a given conduct.

But I think there’s an interesting alternative category of conducts embedded within the gameplay.

DCSS god conducts would be an interesting example here. Once you worship a specific god, they may expect you to avoid certain behaviors, or reward you with greater piety for other specific behaviors. This clearly restricts or at least affects the player’s “conduct” for much of the run, or at least until (if) the player is willing to suffer the consequences of leaving for another god.

See here for a list of DCSS gods, which link to more information about each, where the “Deprecates” heading indicates what kinds of conduct that god expects.

dcss_god_deprecates_chei

DCSS’s Chei is a good example of a restrictive god.

Most gods don’t have a whole lot of limitations, instead focusing more on behaviors they’d expect or prefer that you do in order to gain piety and reward you for it. An interesting exception here is Ru, the god who will only reward you (greatly) as you take on additional permanent drawbacks (“personal sacrifices”), which essentially act like minor conducts.

Cogmind also does some of this non-meta “embedded conduct” stuff, although not god-related and instead on a more macro scale. For example you can permanently install RIF in order to gain a range of useful abilities, but doing so makes two of the other factions hate you, and you’ll therefore lose access to their respective help and abilities for the rest of the run.

There are a number of long-term effects like this, though unlike traditional roguelike conducts which are purely negative, Cogmind generally (but not always) balances them out so that something else of similar value is gained in the process. Either way, the effects are for the long term and some will make certain areas, or even the entire run, more challenging.

Randomized Challenges

Beyond tradition, there is still plenty of room for innovation in the roguelike “special modes” space.

One of the more interesting possibilities is randomization of challenges. As a highly replayable run-based genre roguelikes are quite compatible with this approach, where you have a pool of mini-challenges which can include things like tweaks to mechanics, items, enemy behavior, or the player character themselves, and at the beginning of a run a combination of these tweaks is chosen to be combined as the challenge. With enough tweaks to choose from, different combinations can create very different experiences, all without too much work beyond the supporting framework.

Even better is having the combination be shared across the community as daily and/or weekly challenges, giving the community more topics to discuss and allowing for separate leaderboards.

I’m not too sure this is appropriate for Cogmind given the game’s wide range of interconnected systems and far-reaching balance concerns (it’s a very tightly balanced game compared to many roguelikes…), though the concept certainly deserves more thought and possibly experimentation. Could be fun!

While combining multiple Challenge Modes is a thing, personally I have a pretty specific idea of what constitutes such a mode, which tends to exclude tweaks which might be too small a change (or, less likely, too large an overhaul) to consider for a pool of mix-and-matchable mini-challenges. The target scope would be different in that case, so this would need to be a different system. I can see affecting game variables like item availability, salvage drops, and map demographics, adding permabuffs/debuffs of various kinds, or possibly starting from different parts of the world.

Anyway, there’s already (still xD) lots of do, but maybe this could happen one day.

This entry was posted in Design 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>