The Next Thing to Remove

If you thought it’s gonna be about the Slow spell or about stones, there’s a surprise for you: it’s not. This is about shopping trips.

The history of modern DCSS is a history of streamlining. Even though Crawl began as an anti-NetHack game, early versions had a lot of features more suitable for a Fantasy Dungeon Simulator 2000. A whole bunch of game mechanics existed because of “realism” or maybe because other similar games had them.

The whole shopping process as it exists now made more sense in old versions:

  • you couldn’t carry a hundred potions in your inventory because of the weight limit, but also because you could lose all of them due to item destruction.
  • The inventory limit existed, and most players used item stashes, so trips back and forth didn’t feel out of place.
  • Enemies respawned over time, adding a bit of spice to shopping trips.

Over the years, tedious, repetitive, and unfun elements were chopped off. But sometimes these removals created or elevated the remaining unfun parts of the gameplay. Shopping trips peaked on the unfun scale during 0.21 - 0.25, when monsters had stopped respawning, but food still existed. When all permafood was merged into one inventory item - rations - it was the worst: you had to pay a ration for each and every long trip, which was annoying even when you had 40+ rations in your inventory.

A few recent changes affect shopping trips too: on one hand we have antibacktracking changes for Xom, on the other, the removal of the piety decay, which was the last relevant cost of long trips. But if the former change is supposed to be only a temporary measure, everyone knows there’s nothing more permanent than a temporary fix, so we could be stuck with that for a couple of versions.

Some time ago, there was an AmaZot Prime idea on Reddit or old Tavern (unfortunately I can’t find the origin and the author): let Gozag to deliver items from far away shops to you. Now we have unlimited inventories, so it’s possible to put a purchased item directly there, allowing the use of this feature even when flying above lava or deep water.

This change wouldn’t affect regular/Xom’s Bazaars, which are the only exciting kind of shopping trips. The shopping list correctly handles items from disconnected branches like Bazaars or Pan already, so exiting them clears the corresponding items from the list. Similarly, the ctrl-o screen already allows browsing all visited shops and easily adding their items to the shopping list. Most of the pieces are here, and the only remaining change is to allow the shopping list to function as a shop. Dungeon shops could work the same way they do now, and people who prefer to travel to them could still do that.

To summarize: in 99% of current games, shopping trips are completely safe, boring, and cost-free, unless you’re playing a turn-count game. They only interrupt the game flow and waste turns, so it feels like a good time to get rid of them. We could even have some flavour messages for delivery imps, complaining about traffic and low pay by Gozag Corp.

3 Thanks

Nah you are wrong, Deep Elf should be next thing to remove!

2 Thanks

There was a discussion on the Roguelikes Discord, so I would like to summarize the feedback:

  • it was suggested that such long-distance shopping shouldn’t be instant, to disallow the use of it during combat;
  • followers of Yred shouldn’t have access to item deliveries, because of the conduct;
  • and there could be a delivery premium, which increases the price depending on the current nearby danger and on the number of monsters on the shop’s floor (or on all floors between you and the shop).

Also, DracoOmega’s reply is worth reposting in full:

Having mulled this over for a little while, I feel that while I can agree with your basic point of “Most shopping trips aren’t very interesting.”, I feel like even just the follow-up discussion here demonstrates that there are actually a lot of mechanical impacts to consider for removing what is essentially a fairly minor point of friction.

Even outside of ‘situations where you can’t actually backtrack to the shop’ (which includes, at a minimum: being shafted, Yred conducts, being in a portal or the Abyss, having a portal timer active on your floor, having any monsters anywhere at all between here and there), allowing shopping list purchases to be ‘magical’ means that the player would be encouraged to put any item they might ever want onto the shopping list, greatly diminishing its value as an organization tool. It would seem strictly optimal to put every item in every shop there in case you might ever want it (okay, ignoring literal junk items), and then the whole thing would be a mess.

(Beyond which, I would actually argue that shops actually being in specific locations contributes to the dungeon having a ‘sense of place’. I think there is actual thematic value that shouldn’t be completely ignored to floors being interconnected and for the player to actually be running around between them from time to time (and for shop vaults to actually contain their shops rather than them all blending into a nebulous magical slurry in the back of the player’s mind as soon as they walk away.))

4 Thanks

The organizational problem could be solved, though, by separating the “shopping list” (UI tool) from let’s call it the “inventory” (collection of all items at all shops seen). And a delivery premium strikes me as an actively bad idea, since then it would be tedious-optimal to never use the delivery feature; unless deliveries were instant, in which case it would be a premium for in-combat shopping (and should be much greater).

3 Thanks

How would a separation between the shopping list and “inventory of all items in shops” work? I think “encouraging players to put everything on the shop list” is a valid concern. As for the other feedback given on Discord, my preference is to make it take some amount of time so it can’t be used in combat. Regarding Yred, interlevel travel is technically only problematic while the black torch is lit, but allowing deliveries only while the torch isn’t lit might affect player behavior regarding that ability, and I’m not sure if that’s desirable or not. It would probably be easier to just disable deliveries while following Yred.

Regarding the last point - I do agree that it adds to the game’s immersion to have the dungeon be a place. Much like playing a Mario or Zelda game where you have to go to specific locations because that’s where the thing is, it makes the game feel like its own world.

There would just be two different lists. When you visit a shop for the first time, everything there gets added to the inventory list, and you can order anything on that list. The shopping list (containing only items you explicitly add) would remain as a UI convenience. Yes, this would require another key for one of the two.

hopefully spriggan next

1 Thank

It’s worth clarifying that there’s no need to preemptively add all potentially useful items to the shopping list, which was DracoOmega’s concern.

You could add any item from visited shops to your shopping list from anywhere in the Dungeon already. You either search for “shop”, change the action from “travel” to “view”, and add items to your shopping list. Or you could use the $ command from the Dungeon Overview screen, Ctrl-o.

So, for example, if you need to buy some items with Will before going into the Elven Halls, you would be able to do that from anywhere, as long as there exists a path from your location to the shops. You would just search for “Will” and instead of travelling there you would be able to choose the Add to shopping list or Order delivery action from the search results.

2 Thanks

I remembered what’s the actually thing I’d like to see removed. Kiting flying/aquatic enemies out of blue lava on non aquatic species so you can pick up the loot! It doesn’t add much to gameplay, there is a lot of it in games with Shoals. It doesn’t need any extra work to implement, just need to have it work the same as it does for Op/Mf on all species

3 Thanks

Yeah, it’s surprising that this bit of the item destruction system is still in the game.

But there is another way to fix this. We have lava and item-carrying salamanders, and we have mummies who can’t transform to go underwater.

I’d rather such items moved to a nearby floor tile - got washed ashore - so you don’t have to dive for them. And yes, it should affect items dropped into lava too, even if that would require some hand-waving or a flavorful explanation. “A hot wind picks up the scroll of noise and drops it on the land.” “A +0 robe enters the emergency flying mode and survives the fall into lava.”

1 Thank

Clearly the way to solve shopping trips being boring and wasting time with no real gameplay value is to add ‘angry shoppers’ and a unique ‘Karen’ to the game who has the power to summon the ‘manager’

1 Thank

Lol that sounds hilarious. Can you imagine a steadily growing stream of random humans (or multiple species) that are just neutral that slowly fill the floors you’ve cleared, going from shop to shop?