post

Video: The GDC 2011 game design challenge

In this classic 2011 GDC game design challenge, Jenova Chen, Jason Rohrer and John Romero all pitch hypothetical games that create a combination of gameplay and religious concepts.

The challenge tasked developers with creating a game that is also in some way a religion — or a religion that is in some way a game. An interesting design prompt, to say the least.

It was an insightful talk that’s definitely still worth watching, so developers shouldn’t miss the opportunity to do so now that it’s freely available on the official GDC YouTube channel!

In addition to this presentation, the GDC Vault and its accompanying YouTube channel offers numerous other free videos, audio recordings, and slides from many of the recent Game Developers Conference events, and the service offers even more members-only content for GDC Vault subscribers.

Those who purchased All Access passes to recent events like GDC or VRDC already have full access to GDC Vault, and interested parties can apply for the individual subscription via a GDC Vault subscription page. Group subscriptions are also available: game-related schools and development studios who sign up for GDC Vault Studio Subscriptions can receive access for their entire office or company by contacting staff via the GDC Vault group subscription page. Finally, current subscribers with access issues can contact GDC Vault technical support.

Gamasutra and GDC are sibling organizations under parent company Informa

post

Daybreak Games lays off estimated 70 employees

H1Z1 developer Daybreak Games has laid off a portion of its workforce, cutting jobs across various departments within the studio in the process.

Daybreak confirmed the layoffs had occurred in a statement given to Gamasutra, although the company didn’t elaborate on the full extent of the layoffs.

Early reports from former Daybreak President John Smedley on Twitter suggest that the number is estimated to be around 70. 

This comes after the studio laid off an undisclosed amount of its staff back in April, shortly after launching its battle royale title H1Z1 out of Early Access.

Fellow devs have taken to Twitter to show their support for those affected by way of sharing the hashtag #GameJobs, as well as sharing a collection of links to open game industry positions.

As always, if you or someone you know has been affected by these layoffs, you can email Gamasutra to share your story confidentially.

The full statement from Daybreak can be found below:

“We are optimizing our structure to ensure we best position ourselves for continued success in the years to come. This effort has required us to make some changes within the organization and we are doing everything we can to support those impacted in this difficult time.”

“As we look to improve efficiencies and realign resources, we remain focused on supporting our existing games and development of our future titles.”

post

Dauntless to provide cross-platform play across all devices

Phoenix Labs announced that its free-to-play RPG Dauntless (which is currently available for PC) will be heading to Xbox One and PlayStation 4 in April 2019, with a Switch and mobile release to follow later on.  

This is another instance of a game (with Fortnite and Rocket League ushering in the feature) to be released with cross-play compatibility across all platforms including PlayStation 4, Xbox One, PC, the Switch and mobile. 

As reported by GameSpot, the studio said Dauntless’ release on new platforms brings it closer to the team’s “One Dauntless” vision, which will allow players to connect through cross-platform play, with their progression and account management to carry across all platforms.

“At Phoenix Labs we define ourselves through a transparent development relationship with our community and strong focus on inclusivity, both at the studio and in our game,” said studio co-founder Jesse Houston.

post

Weekly Jobs Roundup: Sucker Punch, Sony PlayStation, and more are hiring now!

Whether you’re just starting out, looking for something new, or just seeing what’s out there, the Gamasutra Job Board is the place where game developers move ahead in their careers.

Gamasutra’s Job Board is the most diverse, most active, and most established board of its kind in the video game industry, serving companies of all sizes, from indie to triple-A.

Here are just some of the many, many positions being advertised right now. If you’re a recruiter looking for talent, you can also post jobs here.

Location: Bellevue, Washington

Are you the type of artist who really understands how to “see the forest for the trees”?  Do your co-workers consider you a well-versed generalist and great problem solver? Do you like helping others create art faster and at a higher quality level? Sucker Punch is looking for a driven, self-directed Outsource Artist to use their artistic eye and technical skills to help create the world of Ghost of Tsushima for PlayStation 4.

Location: Remote

A Mobile Game Programmer at Game Changer will be responsible for designing, implementing and maintaining software in a game development environment. The candidate will interact with team members to develop the next generation of the Arena and Stadium gaming experiences while sustaining and improving our current game product line.

Location: Hamburg, Germany

As a vital member of a small Art team, you will be working on state-of-the-art 3D SciFi games in a positive and productive environment. By close collaboration with both the Art team and other teams like Game Design and Programming and mutual feedback, you will further develop both technically and personally.

Location: San Mateo, California

The Sr. Technical Program Manager reports into the Platform Planning & Management (PPM) department’s Business Operations team and is primarily focused on “Go to Market” and in-life project management, communications & operations around the launch of platform products and features. These projects are typically platform initiatives which vary in scope and subject matter, ranging from incremental feature planning through to new hardware and software releases. The PPM team works with a broad set of internal and external teams including global counterparts responsible for all aspects of product planning and development in the PlayStation family. As such, the ideal candidate has direct experience of platform planning and/or managing projects in a global digital media entertainment environment (gaming experience/interest strongly desired).

Location: McKinney, Texas

We are currently seeking an FX Artist to join our growing team. As an FX Artist you will be responsible for bringing our worlds and characters to life! You will take the creative vision set by the director and expand the ideas into your own magical creations; developing effects from concepts to completion. 

post

Farming Simulator 19 sells over 1M units 10 days after launch

Farming Simulator 19 has sold over one million copies worldwide within the first 10 days of launch, making it the fastest in the franchise’s history to reach this milestone.

The game was released on November 20 for PlayStation 4, Xbox One, PC and Mac, and features an overhauled graphics engine, new gameplay features, and the inclusion of John Deere to the roster of vehicles.

“It’s incredible to see the impact of the team’s hard work. Never before has a Farming Simulator game reached the one million mark so quickly and we are proud and happy that so many players join us on this amazing journey,” said CEO of GIANTS Software Christian Amman.

For a fairly niche title sharing a release date with other blockbuster games, it’s a pretty big accomplishment. The developers also took to Twitter to celebrate the news and thank players for their support.

post

BioWare says Anthem won’t rely on big-spending ‘whales’ for success

This week, BioWare took some time in Los Angeles to show off key details about its upcoming online action RPG Anthem, sharing story details with members of the press in advance of a trailer preview at The Game Awards. 

Next week, we’ll be bringing you a conversation with game director Jon Warner about the direction of Anthem, but during the presentation BioWare lead producer Mike Gamble was able to talk to Gamasutra about the transition to live gameplay operations, and shared an interesting detail about BioWare’s philosophy toward its (loot box-free) plans for monetization.

Namely, Gamble said that as of this time, BioWare doesn’t feel the need to target so-called “whales” as the core part of its plans. 

A lot of game companies, especially in the free-to-play space, structure their monetization to attract large spenders who hopefully exceed the average user spend for a given game. When pressed if Gamble thinks BioWare needs these kinds of players for Anthem to succeed, Gamble’s immediate reply was “I don’t think so.”

With Anthem, Gamble stated that BioWare “is hoping to attract as many people as possible, make the pool as wide as possible, to support the game as long as possible. So even if we don’t have lots of people spending lots of money, we’re hoping the economy is such that we have a number of people [who can support the game.]”

“Having whales is great…but we don’t cater towards any particular group,” Gamble explained “Some people have more time than others, some people have less time than others, and that’s just where we leave it.”

Gamble also made an interesting comment during a group Q&A in response to a question from Mashable’s Jess Joho about BioWare’s plans for live operations for Anthem. “We want to support matchmaking where you don’t have to know six people on Reddit to play the game,” he said, rather bluntly pointing out that many online RPGs in the vein of Diablo and Destiny have that social barrier that can even turn away experienced players without the right social group. 

“We feel that is one of the barriers into getting into these kinds of games…we’ve tried to design the game that we felt we could get into [as single-player RPG players], we could take that extra step and say ‘you know this is actually fun playing with someone else.'”

post

Dota 2 Update – December 7th, 2018

* Minor CPU performance improvements with certain types of art content
* Reworked the Global Item Loadout page to make shuffling items easier to work with.
* Fixed Last Hit Trainer bugs
* Various SFM improvements (material overrides, health bars, etc)
* Fountain damage now cancels effects similar to hero damage (e.g. salve, heart, blink), and now has 25% Accuracy (Note: This change was added in an update last week)

post

The Weekender: Inc., Edition

We’re back with your weekly look at what’s been happening in mobile games. A lot, as it happens, although not so much on the releases front.

Reviews wise we decided to take a stab at two slightly controversial games – Command & Conquer: Rivals, which is a hot-F2P-mess that has a good game buried underneath the monetisation, and Kingdom Rush: Vengeance, which is an excellent Tower-Defence RTS marred by an overly persistent IAP. Our reviewers really liked both, but readers are dubious – let us know what you think!

I also had Nick talk about Artifact, and how it’s current state might be received on mobile, and we now know when Tropico for iPad is coming out (yay!).

We’ve got plenty of reviews in the pipeline, including Morels and Marching Order, as well as a few of the ones that were released this week.

Meanwhile, in mobile gaming…

Out Now

Rebel Inc. (iOS Universal)

The highlight of the week definitely has to be the Ndemic’s new game, Rebel Inc., which we spoke about last week. In this spiritual successor to the excellent Plague Inc., this is a political/military strategy-simulation game where you must use all of the resources at your disposal to try and keep the insurgents at bay, across five richly modelled regions.

Sadly, we weren’t able to secure code for gameplay impressions, or even review, yet, so we can’t comment on what it’s actually like. Chatter so far has been positive though. We’ll try and get you a full review as soon as we can. An Android version is planned, but it won’t be arriving till early 2019.

Rebel Inc 3 2

Twinfold (iOS Universal & Android)

Twinfold reminds me of this puzzle game my wife used to play where you had to merge blocks together to double -up and try and get higher and higher numbers. It wasn’t as diverse as this new release however, so Twinfold is definitely on the watch-list for the week.

The aim of the game is to merge the golden idols together to achieve higher and higher scores, whilst also taking care not to fall fowl of any of the 7 enemy types that could spawn. Every time you ‘level up’ an idol, a new one appears of the same number but the puzzle environment also shifts via procedural generation. Game Centre support allows for leaderboards and achievements, and if you’re using an iPhone 7 or later, you get haptic feedback. That’s nice.

Also caught our eye: Splotches (iOS Universal)

Now that I’m a parent, I’m always looking out for colour games I could introduce my daughter to that are simple, potentially educational and unlikely to expose her to anything inappropriate. Puzzle games seem to be safe bets at the moment, and Splotches looks very colourful indeed. If I get a chance to try it out for myself, I’ll report back.

Updates

Afghanistan ’11 (Review)

This is more of a PSA than an update – as you may have heard by now, Apple has removed Slitherine’s Afghanistan ’11 from sale on the app store. Their reason given was that the game featured “people from specific governments or other real entities as the enemies”. So they had issues with the fact that you were fighting the Taliban, who were identifiable as the Taliban, basically.

It’s not the first time this has happened, but it probably won’t be the last, but users who’ve already purchased and have the game on their device should still be able to play the game, at least. It’s still available to buy on PC.

Ticket to Earth (iOS Universal & Android) (Review)

Ticket to Earth was a very interesting and compelling turn-based strategy game that used coloured tiles as a unique mechanic. It’s only real flaw was that it was billed as an episodic game, and the episodes have been rather slow at coming out. The game was released in March last year and the second episode wasn’t put out until August. Now, over a year later, players can finally get their hands on Episode 3.

This free update adds more levels, powers and playable characters as you attempt to learn the secrets of the Refinery. The update also tweaks the rewards for Episode 2 missions – if you’ve already done those, the added rewards will already be added to your save.

Flipflop Solitaire (iOS Universal and Android) (Review)

Zach Gage will always get the time of day here at Pocket Tactics. His games are simple, yet wonderful twists on classic forms of entertainment, and the twists are usually bonkers.

Flipflop is the latest game to get an update, and the new content adds ‘Numbered Decks’ mode featuring over 1,000 deals to test your skills at. All these puzzles are meant to be 100% solvable.

Sales

Star Traders 4X Empires Elite (iOS Universal and Android) $1.99 on Android

The premium edition of the Trese Brother’s mobile 4X outing is down to just a couple of dollars on Android. There’s a free trial version with ads you can check out if you want to try the game for a bit first.

Fighting Fantasy Legends (iOS Universal and Android): $1.99
Fighting Fantasy Legends: Portal (Review) (iOS Universal and Android): $1.99

Both of Nomad’s revivals of the iconic ‘Choose your own adventure’ narrative adventure games are on sale once again, on both platforms to boot. Both games have been this cheap before, as recent as the end of October this year.

Ticket to Earth (iOS Universal & Android): $3.99

To coincide with the release of Episode 3, Ticket to Earth is now a dollar off on both stores. Fair warning, it was being sold for $1.99 back in July 2017 for a while, but it hasn’t been that cheap since then.

Seen anything else you like? Played any of the above? Let us know in the comments!

post

How enemy AI works in Dicey Dungeons

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.


Hey all! For the past month or so, I’ve been tackling one of the biggest technical problems in my new game, Dicey Dungeons – improving the enemy AI enough for the final release of the game. It’s been pretty interesting, and lots of it was new to me, so I thought I’d write a little bit about it. 

First up, a sort of disclaimer: I’m not a computer scientist – I’m just one of those people who learned enough about programming to make video games, and then stopped learning anything I didn’t have to learn. I can usually muddle through, but a real programmer probably wouldn’t have approached all this the way I did.

I tried to write all this in a fairly high level approach in mind, so that hopefully the basic ideas all make sense to other non-programmers. But I’m for sure no expert on all this stuff, and if I’ve gotten any of the details wrong in explaining the theory, let me know in the comments – happy to make corrections!

Let’s start by explaining the problem!

The problem

If you’ve not played Dicey Dungeons, here’s a crash course: it’s a deckbuilding RPG, where each enemy has a selection of equipment cards that do different things. Also, they roll dice! They then place those dice on the equipment to do damage, or cause various status effects, or heal, or shield themselves from damage, or lots of other things. Here’s a simple example of a tiny frog using a big sword and a little shield:

A more complicated example: this Handyman has a spanner, which allows it to add two dice together (so 3 + 2 would give you a single 5, and a 4 + 5 would give you a 6 and a 3). It also has a Hammer, which “shocks” the player if they use a six on it, and a Pea Shooter, which doesn’t do much damage, but which has a “countdown” which persists across turns.

One more important complication: there are status effects which change what you can do. The most important of these are “Shock”, which disables equipment at random until you unshock it by using an extra dice on it, or “Burn”, which sets your dice on fire. When your dice are on fire, you can still use them – but it’ll cost you 2 health points. Here’s what a clever Handyman does when I shock and burn all his equipment and dice:

There’s more to it than that, of course, but that’s basically the gist of it!

So, the problem: how do you make an AI that can figure out the best thing to do on it’s turn? How does it know which burning dice to extinguish, which dice to use for unshocking and which dice to save for important equipment?

What it used to do

For a long time, my AI in Dicey Dungeons just had one rule: It looked at all the equipment from left to right, figured out the best dice to use on it, and used it. This worked great, until it didn’t. So, I added more rules.

For example, I dealt with shocking by looking at the unshocked equipment, and deciding what dice I would want to use on it when it was unshocked, then marking that dice as “reserved” for later. I dealt with burning dice by just checking if I had enough health to extinguish them, and choosing whether or not to do it by random chance.

Rule after rule after rule to deal with everything I could think of, and ended up with an AI that sorta kinda worked! Actually, it’s amazing how well this hodge-podge of rules held together – the AI in Dicey Dungeons might not have always done the right thing, but it was definitely passable. At least, for a game that’s still a work in progress.

But over time, this system of adding more and more rules to the AI really started to break at the seams. People discovered consistent exploits to get the AI to do stupid things. With the right setup, one of the bosses could be tricked into never actually attacking you, for example. The more rules I added to try to fix things, the more weird things would happen, as rules started to conflict with other rules, and edge cases started to crop up.

Of course, one way to fix this was to just apply more rules – work through each problem one by one, and add a new if statement to catch it. But I think that would have just been kicking the problem further down the road. The limitation this system had was that it was only ever concerned with this question: “What is my next move?”. It could never look ahead, and figure out what might happen from a particular clever combination.

So, I decided to start over.

The classic solution

Look up AI stuff for games, and likely the first solution you’ll come across is a classic decision making algorithm called Minimax. Here’s a video that explains how it’s applied to designing a Chess AI:

Implementing Minimax works like this:

First, you create a lightweight, abstract version of your game, which has all the relevant information for a particular moment in time of the game. We’ll call this the Board. For Chess, this would be the current position of all the pieces. For Dicey Dungeons, it’s a list of dice, equipment, and status effects.

Next, you come up with a value function – a way to measure how well the game is going for a particular configuration of the game – i.e. for a particular board. For Chess, maybe a board where all the pieces are in their initial positions is worth 0 points. A board where you have captured an enemy Pawn is maybe worth 1 point – and maybe a board where you’ve lost one of your own Pawns is worth -1 points. A board where you have your opponent in checkmate is worth infinity points. Or something like that!

Then, from this abstract board. you simulate playing all the possible moves you can make, which gives you a new abstract board. Then, you simulate playing all the possible moves from those boards, and so on, for as many steps as you want. Here’s an excellent illustration of that from freecodecamp.org:

What we’re doing is creating a graph of all the possible moves both players can make, and using our value function to measure how the game is going.

Here’s where Dicey Dungeons splits from Minimax: Minimax comes from mathematical game theory, and it’s designed to figure out the best series of moves in a world where your opponent is trying to maximise their score. It’s so named because it’s about trying to minimise your loss when your opponent plays so to as to maximise their gain.

But for Dicey Dungeons? I actually don’t care what my opponent is doing. For the game to be fun, you just want the AI do make moves that make sense – to figure out the best way to play their dice on their equipment to make it a fair fight. In other words, all I care about is the Max, not the Min.

Which means: for the Dicey Dungeons AI to make a good move, all I need to do is create this graph of possible moves, and look for the board which has the best score – then make the moves that lead to that point.

A simple enemy turn

Ok, examples! Let’s look at this frog again! How does it decide what to do? How does it know that it’s chosen action is the best one?

It basically just has has two options. Place the 1 on the broadsword and the 3 on the shield, or do it the other way around. It obviously decides that it’s better off putting that 3 on the sword than the 1. But why? Well, because it looked at all the outcomes:

Place the 1 on the sword and you end up with a score of 438. Place the 3 on it, and you end up with a score of 558. Great, ok! Then, I get a better score by placing the 3 on the Sword, done.

Where’s that score coming from? Well, the Dicey Dungeons scoring system currently considers:

  • Damage: The most important case – 100 points for every point of damage dealt.
  • Poison: An important status effect that the AI considers almost as important as damage – 90 points for each poison.
  • Inflicting other Status effects: Like Shock, Burn, Weaken, etc. Each one of these is worth 50 points.
  • Bonus status effects: Inflicting yourself with positive status effects like Shield, etc, is worth 40 points each.
  • Using equipment: Using any piece of equipment is worth 10 points – because if all else fails, the AI should just try to use everything.
  • Reducing countdowns: Some equipment (like the Pea Shooter) just needs a total value of dice to activate. So, the AI gets 10 points for every countdown point it reduces.
  • Dice Pips: The AI gets 5 points for every unused Dice Pip – so a 1 is worth 5, and a 6 is worth 30. This is intended to make the AI prefer not to use dice it doesn’t need to use, and does a lot to make its moves look more human like.
  • Length: The AI loses 1 point per move, making it so that long moves have very slightly lower scores than short ones. This is so that if there are two moves that would otherwise have the same score, the AI will pick the shorter one.
  • Healing: Worth just 1 point per health point healed, because while I want the AI to consider it in a tie break, I don’t want it to be preoccupied with it. Other things are always more important!
  • Bonus score: Bonus score can be applied to any move, to trick the AI into doing something they might not otherwise decide to do. Used very sparingly.

Finally, there’s also two special cases – if the target of the attack is out of health, that’s worth a million points. If the AI is out of health, that’s worth minus a million points. These mean that the AI will never accidentally kill themselves (by extinguishing a dice when they have very low health, say), or never pass up a move that would kill the player.

These numbers aren’t perfect, for sure – take, for example, these currently open issues: #640, #642, #649 – but it actually doesn’t matter that much. Even roughly accurate numbers are enough to incentivise the AI to more or less do the right thing.

Harder enemy turns

The frog case is simple enough that even my shoddy code can figure out every single possibility in 0.017 seconds. But, then things get a bit more complicated. Let’s look at that Handyman again.

It’s decision tree is, uh, a little more complicated:

Unfortunately, even relatively simple cases explode in complexity pretty quickly. In this case, we end up with 2,670 nodes on our decision graph to explore, which takes quite a bit longer to figure out than the frog did – maybe as much as a second or two.

A lot of this is combinatorial complexity – for example, it doesn’t matter which of the 2s we use to unshock the equipment initially, this algorithm considers them as two separate decisions, and creates a whole tree of branching decisions for both. This ends up with a branch that’s a totally unnecessary duplicate. The are similar combination problems with deciding which dice to extinguish, which equipment to unshock, what dice to use in what order.

But even spotting unnecessary branches like this and optimising them (which I’ve been doing to some extent), there is always going to be a point where the complexity of the possible permutations of decisions leads to huge, slow decision trees that take forever to figure out. So, that’s one major problem with this approach. Here’s another:

This important piece of equipment (and things like it) cause a problem for the AI, because they have an uncertain outcome. If I put a six in this, maybe I’ll get a five and a one, or I might get a four and two, or maybe I’ll get two threes. I won’t know until I do it, so it’s really hard to make a plan that takes this into account.

Thankfully, there is a good solution to both of these problems that Dicey Dungeons uses!

The modern solution

Monte Carlo Tree Search (or MCTS, for short) is a probabilistic decision making algorithm. Here is a, uh, slightly odd video which nevertheless explains the idea behind Monte Carlo based decision making really well:

Basically, instead of graphing out every single possible move we can make, MCTS works by trying out sequences of random moves, and then keeping track of the ones that went the best. It can magically decide which branches of our decision tree are the “most promising” thanks to a formula called the Upper Confidence Bound algorithm:

That formula, by the way, is from this very helpful article on Monte Carlo Tree Searches. Don’t ask me how it works!

The wonderful thing about MCTS is that it can usually find the best decision without having to brute force everything, and you can apply it to the same abstract board/move simulation system as minimax. So, you can kinda do both. Which is what I’ve ended up doing for Dicey Dungeons. First, it tries to do an exhaustive expansion of the decision tree, which usually doesn’t take very long and leads to the best outcome – but if that’s looking too big, it falls back to using MCTS.

MCTS has two really cool properties that make it great for Dicey Dungeons:

One – it’s great at dealing with uncertainty. Because it’s running over and over again, aggregating data from each run, I just let it simulate uncertain moves like using a lockpick naturally, and over repeated runs, it’ll come up with a pretty good range of scores of how well that move will work out.

Two – it can give me a partial solution. You can basically do as many simulations as you like with MCTS. In fact, in theory, if you let it run forever, it should converge on exactly the same result as Minimax. More to the point for me, though – I can use MCTS to generally get a good decision out of a limited amount of thinking time. The more searches you do, the better the “decision” you’ll find – but for Dicey Dungeons, it’s often good enough to just do a few hundred searches, which only takes a fraction of a second.

Some cool tangents

So, that’s how the enemies in Dicey Dungeons decide how to kill you! I look forward to introducing this in the upcoming version v0.15 of the game!

Here are some tangential thoughts that I don’t really know where to put:

Those graphs I’ve been showing gifs of? Including this one on twitter:

Sure, the neighbours seem to be really enjoying their party, but the REAL fun is going on here: spent the evening hacking together a GraphML exporter for Dicey Dungeons’ new AI! Now I can explore enemy moves and actually see what’s going on step-by-step! #screenshotsaturday pic.twitter.com/EeCwUz2NBK


— Terry (@terrycavanagh) November 25, 2018

I created these by writing an exporter for GraphML, which is an open source graph file format that can be read with many different tools. (I’ve been using yEd, which is great and which I can recommend a lot.)

Also! Part of making this all work was figuring out how to let the AI simulate moves, which was a big puzzle in and of itself. So, I ended up implementing an action scripting system. Now, when you use a piece of equipment, it runs these tiny little scripts that look like this:

These little scripts are executed by hscript, a haxe based expression parser and interpreter. This was definitely kind of a pain to implement, but the payoff is great: it makes the game super, super modable. I’m hoping that when this game finally comes out, people will be able to use this system to design their own equipment that can do basically any cool thing they can think up. And, even better, because the AI is smart enough to evaluate any action you give it, enemies will be able to figure out how to do whatever weird modded equipment you give it!

Thanks for reading! Happy to answer any questions or to clarify any of this in the comments below!

(And, finally, if you’re interested in playing Dicey Dungeons, you can get alpha access on itch.io right now, or if you prefer, wishlist us on steam, which will send you a little reminder when the game comes out.)