Archive of ·Play-Testing·

Playtesting: Combat code refactoring

A significant refactoring of combat code, by Cryp71c, has recently been merged into master. This is a call for testing and bug-hunting, in preparation for .10 release. The changes are live in development builds and on the servers (the testing versions).

List of significant changes for the Unified Combat Control branch:

  1. Capitalization of words is performed automatic (done by Kilobyte, altered by SamB)
    • Instead of passing an explicit capitalization (NOCAP or CAP) to the mprf system, mprf determines automatically whether capitalization is necessary.
  2. Fight rewrite
    • Restructuring of combat into phases
      • Attempted
        • Hit
          • Damaged
            • Defender Killed
        • Dodged
        • Blocked
      • End
  3. Merging of player / monster codepaths
    • This comprises the bulk of the rewrite and will be subject for continued (numerous) changes in the future. Some codepaths are not entirely unified because doing so would require symmetry between players and monsters in regards to how a particular effect is handled (weapon brands, spells, etc. etc.)

List of things for players to be aware or mindful of for bug-reporting purposes

  1. Out-of-order combat messages (especially as they relate to weapon brands)
  2. Combat messages which leak otherwise unknown information
  3. Unusual sanctuary behavior
  4. Unusual messages or behavior on the last turn of combat (when the monster is killed)
  5. Brands, spell effects, or mutations which consistently do not result in a noticeable effect
  6. Weapon effects or behavior which do not appropriately result in god-affects
    • Examples include using speed weapons with Chei, attacking dishonorably while worshiping TSO
  7. Capitalization errors in combat text
  8. Missing combat effects (from uniques or from specific player-races)
    • Examples include vampire-specific effects for players, or Maurice’s “thieving” attacks

Report bugs here! Thank you in advance!

Oops! Untimely death of many souls (CDO)..

We had a slight misunderstanding, which unfortunately lead to deletion of many of your online characters from the Trunk/Unstable version on CDO.

We are very sorry and will add a security check to the scripts – promised!

Whisper ‘Farewell’ when you leave, Gimli

Very recently, something happened in the Crawl world. All the mountain dwarves are gone. Part of the player base revolted, so here are some words to explain the inexplicable.

For quite a while it was realised that MD, HO and Mi are too close to each other than is good for well-differentiated variety. In other words, developers agreed that cutting a species of the three would be an improvement. This was not urgent; that’s why it isn’t announced on the 0.10 development plan or anywhere else. However, it is also not a big change, so when we got the details ready in a session or two, we commenced with the wipeout.

First, theme. Hill Orcs are sacrosanct by Beogh’s protection. Even if you don’t like the orc god, there is no way we would get rid of HO as a player species. Choosing between MD and Mi, the lot hit the former. The reasons are less forcing than with HO, but are reasons nonetheless: Mi has a monster equivalent whereas MD has not (the monster dwarves are deep dwarves, akin to deep elves being the monster elves). Mi has an ancient mythos behind it (Minos, Crete, the labyrinth) as well as a portal vault in the game. MD on the other hand is the archetypical Tolkien-style dwarf, which in my book is a severe demerit.

Second, aptitudes. Removing a species does not happen in empty space. It might have impact on nearby species, and it certainly did so here. A table of the old and new aptitudes for Mi, HO and old MD is at the end of this text. The summary is this: new Minotaurs approached MD in certain areas (e.g. Armour is 2, also Stabbing, Traps & Doors, Evocations). Hill Orcs got additional magical competence.

Third, to dispel a myth. We didn’t use winning rates, or number of games played in order to make a decision.

Fourth, history. Over the course of DCSS, the following species had to resign: HD, GE, El, Gn, OM (Hill Dwarf, Grey Elf, Elf, Gnome, Ogre Mage). Of these, OM merged with Og into a more interesting species; the others left for the same reason MD goes now: lack of differentiation. On the other hand, some species were added over the years: Vp, DD, Fe (Vampire, Deep Dwarf, Felid). 0.10 will probably feature Octopodes. None of these are defined by aptitudes alone (but note that new Ogre is an exception!), which makes for additional complexity but also diversity. Note that species tweaking goes beyond adding and removing: Draconians and Demonspawns were changed (and will probably see further changes), and with some luck and effort, 0.10 will see more interesting Demigods.

An empty entry means no change from the old version of the species.

        Arm Ddg Sth Stb Shd T&D   Inv Evo        HP  MP   Exp
--------------------------------------------------------------
Mi old   +1  +1  -2   0  +1  -1    -1  -3        +1  -2   140
Mi new   +2          -1  +2   0        -1                 130
MD       +3  -1  -3  -2  +2  +1     0  +1        +1  -1   130
HO old   +1  -2  -2  +2  +1   0     0   0        +1  -1   100
HO new                             +2                 0      

        Fgt SBl LBl M&F Axs Pla Stv  UC   Thr Slg Bws Crb
----------------------------------------------------------
Mi old   +2  +2  +2  +2  +2  +2  +2  +1    +1  +1  +1  +1
Mi new       +1                             0
MD       +2  +1   0  +2  +2  -1  -1   0    -1  -1  -2  +1
HO old   +2   0  +1  +1  +2  +1  -1  +1     0  -1  -1  -1
HO new                                                   

        Spc Coj Hex Cha Sum Nec Trl Trm   Fir Ice Air Ear Poi
--------------------------------------------------------------
Mi old   -3  -3  -3  -3  -3  -3  -3  -3    -3  -3  -3  -3  -3
Mi new           -4  -4              -2                -2
HO old   -3   0   0  -1   0   0  -2  -3     0   0  -2   0  -1
HO new   -2                                +1  -1                  +3 Int, -1 Str
MD       -3  -1  -2  -2  -2  -3  -2  -1    +2  -2  -2  +2  -2

Skill Training

There is a new change to the skill training in trunk. You don’t have to practise skills to learn them anymore, you can select them starting right at level 0. On the other hand, you need to have some means of training a skill to be able to select it.

To train a weapon skill, you need to carry a weapon of the appropriate type, but you don’t have to wield it. For ranged weapons, carrying a launcher is enough, no need to have missiles.
For armour, you need to wear any armour with an evasion penalty (at least leather). For shields you need to be wearing one. If you can cast condensation shield or have the divine shield ability, that works too.
Spell schools can be trained as soon as you have a spell of the school memorised (whatever the success chance). You can train evocations if you carry any evocable item (no need to wear jewellery or wield rods). For Invocations you can train it if you have a divine ability that uses it.
Fighting, UC, throwing, dodging, stealth, stabbing, T&D and spellcasting can always be trained, there’s no restrictions on them.

Another recent change was made regarding skill levels. You now gain benefit from partial skill levels. This is why it is now displayed with a decimal in the skill screen. For example, casting a dual school spell with both skills at 2.5 is the same as having one skill at 2.0 and the other at 3.0, while it used to be the same as having both at 2.0. You gain a spell slot when spellcasting reaches 2.5, and another when it reaches 3.0.

For those not familiar with the 0.9 skill system, let me recap the changes that were made. XP pool has been removed. When you gain XP, it is immediately spread across the activated skills. The amount of XP attributed to each skill depends on the training percentage. In manual mode, your actions are ignored and XP is spread evenly across all activated skills. In automatic mode, the training percentages depend on which skills you have used recently.
You can also set a skill to focus (marked with *). Doing so will train the skill twice as fast (relative to others of course). In auto mode, if the skill has a very low training percentage, setting it to focus will raise it to around 20% instead of doubling.

Two options have been added:
default_manual_training: if you like to play in manual mode, set this to true and the skill training mode will default to manual instead of auto.
skill_focus: if you don’t want to set skills to focus, set this option to false. This will revert the behaviour to the simple disable/enable toggle, instead of the 3 states disable/enable/focus. If you want to change it in-game, set this option to toggle and you’ll be able to change it from within the skill screen.

As usual, please report any bug you run into on mantis. If you want to comment on the change, there’s a thread at the tavern.
Happy crawling!

Galehar

Vote your favourite implementable

There is a new thread in the Tavern, dealing with Implementables. It’s a good place to indicate what features you’d like to see – of the list of current Implementables on Mantis, but you can also lobby for other features beyond that.

Implementable voting

Comments Off

OSX Builds back on Track!

I’m happy to announce that OSX builds of Dungeon Crawl Stone Soup are available again!

The Downloads page lists 0.9 builds of the Console and Tiles version now, and also we will be able to provide more regularly updated builds of the current Development Builds.

Thank you very much to GreatZebu, who volunteered to provide OSX builds for the foreseeable future!

WebTiles got a Map!

Edlothiol has been working on adding new features to WebTiles:

  • Mini-Map is in!
  • Permanent login via cookies!
  • Browser sizes no longer matter!
  • Browser versions don’t matter either anymore!
  • Sprint and Tutorial available now, too!

The Mini-Map is shown and working now, alas it cannot be used yet to initiate a travel. During login you have the choice to stay logged in via cookies. Also, spectators no longer need to resize their browser when watching someone. The game always adjusts to the browser size of the player and spectator independently. Additionally, the websocket protocol was updated to support Firefox 4, 5 and 6.

And last but not least, the game-mode Sprint and the Tutorial are now playable via WebTiles, too!

I was told there are more features in the making – so stay tuned! Also, webtiles code has been merged into the official master branch.

Head over to its website and give it a try!

WebTiles and Online Player Status

I’m happy to announce that we can now offer an online version of “Tiles”!

We call it WebTiles for now and it serves version 0.8 of Dungeon Crawl Stone Soup. Right in time for the unofficial tournament!

Edlothiol announced his great idea with working code on the mailing-list a few weeks back, and even though it’s still beta-quality in the aspects of features (mini-map missing, inventory-tab, etc), it’s fully playable and there have even been the first 4 wins by players testing it!

There is a slight draw-back: It needs a fairly modern browser which supports a technology called WebSockets:

More: Read the rest of this entry…

Packages for Debian-based OSes

Thanks to Kilobyte, we are now also offering packages for Debian-based operating systems (Debian, Ubuntu, Mint, etc). For now there are three architectures supported: i386, amd64 and armel.

Add one of the lines from below to your /etc/apt/sources.list:

Stable release:        deb http://crawl.develz.org/debian crawl 0.8
Development version:   deb http://crawl.develz.org/debian crawl trunk

Additionally you should download and install our signing key to prevent warnings and to verify the packages:

wget http://crawl.develz.org/debian/pubkey -O - | apt-key add -

The available packages to apt-get are named: crawl, crawl-tiles

We’re working on getting the packages of the development version updated as regularly as the Windows binaries that we’ve been offering for a while already.

A Glimpse Into the Future: the 0.8 pre-release

If you’ve been following the Stonesoup development, you might have noticed the recent shift of activity from longterm development to shortterm bugfixing, as well as a switch of trunk to version 0.9; the reason being the release of 0.8 that is currently slated for April 24.

The recent changes include the incorporation of the unicode branch, which fixes a number of issues with non-ASCII path names etc., bringing Ashenzari up to speed, and the aforementioned gazillions of bug fixes. In a concerted effort of several developers, we’ve managed to close 100+ bug reports on our bug tracker over the last couple of weeks, which is quite a feat, let me tell you. Of course, we wouldn’t have been able to do that if they hadn’t been reported in the first place. So, here’s a large thank you to our diligent reporters! :)

What follows is the list of changes in the 0.8 pre-release branch currently available on CDO (a206725), meaning they’ll be included in the stable release.

More: Read the rest of this entry…

Playtesting: Introducing the new tutorial, and other changes

Currently, the guys at Oulu University (Finland) are running a usability project involving DCSS like they already did last year. We got a truckload of detailed feedback and great ideas the last time around, so I’m eager to see what they find this time. In preparation of this project (well, I’d been meaning to do it anyway, but this way there was a deadline), I overhauled the tutorial — once again.

You see, one of the first things I did when I started coding for Stonesoup was to create an in-game tutorial with situational triggers. Last year’s UP team created a new tutorial from scratch, so the old one was renamed to Hints mode. The idea was to use a fixed map with fixed puzzles and explanations. We had been planning to do something like that anyway, so we were glad when someone took up the task.

More: Read the rest of this entry…

A Playtesting Post to Ring in the New Year

A week into the new year, and still no playtesting post? That’s completely unacceptable!

You already know about the big Armour unnerfing, and also about the the new skill menu, so what else is new?

Well, for one, there have been so many updates to the Zot Defence minigame that, this time around, I had to put them into a subheading of their own. We’ve got a truckload of new tiles. Lots of crash bugs introduced, and even more resolved. Oh, and the noise propagation has been changed to produce pretty pictures. Well, that and to make it less likely to wake up monsters behind several layers of walls.
More: Read the rest of this entry…

New skill menu

The skill menu has been completely rewritten in 0.8. New features are:

  1. Aptitudes are always displayed.
  2. You can press * to view all skills.
  3. Crosstrain bonus and antitrain malus are displayed as aptitude bonus/malus.
  4. You can navigate the menu with a cursor. It is disabled by default. Just press enter or a directional key (arrow or numpad) to enable it.
  5. When toggling a skill with enter, the cursor automatically move to the next skill. This allows you to quicky toggle several consecutive skills.

Tiles

  1. Mouse support for selecting skills and pushing the buttons at the bottom.
  2. Skill icons (thanks to Denzi for drawing them!). You need a window height of at least 702 pixels. You can disable them by setting the tile_menu_icons option to false.

Transfer knowledge. This is the last ability of Ashenzari, the new cursed god. It allows you to transfer skill points from one skill to another. The interface is integrated in the new skill menu. The transfer isn’t instantaneous, points are transferred each time you gain XP.

  1. Preview: when selecting a skill as the source or destination of the transfer, the new level at which it will be raised or lowered is displayed.
  2. Transfer progress: During the transfer, the skill menu will show the transfer progress by default. You can change view with “!”.

Come to the Tavern if you have any comments about it.

Galehar

Recent heavy armour changes

If you ask me, heavy armour is the most important topic for 0.8. It doesn’t need to be restored to its former overpowered glory, but the fact that wrapping a piece of bedsheet around you provides better defence than a plate mail set is a bit sad. And you get spells on top of that.

So, here are some recent changes: More: Read the rest of this entry…

Ashenzari, curses god

0.8 will feature a new god, called Ashenzari. The goals when designing the god were twofold:

  • Provide (some) divinations, as the spell school got axed in 0.7.
  • An introverted/laidback god: many deities ask for a lot attention by the player, e.g. praying, sacrificing, training Invocations. There was demand for a god who is not like that.

The current incarnation meets both goals. Here is a list of properties: More: Read the rest of this entry…

So what’s been happening in 0.8 development?

On returning from yet another break at Crawl development, one of the first things I always do is try to find out what I’ve missed. Now this would have been much easier if there had been any recent Playtesting blog posts, but unfortunately this was not to be. Then again, since I’m already rummaging through the commit log, I might as well share my findings. You guys love to read these lists, right?

So here’s the gargantuan listing of what’s been going on in 0.8 development. Enjoy!

More: Read the rest of this entry…

RC3 for 0.7.0

The third release candidate for 0.7.0 is out, addressing issues with piety gain, slime wall damage, and other miscellaneous fixes.

Mac and Windows binaries are on the development builds page as usual.

When filing bug reports on Mantis, please attach your save games if you have them. Also, please make your bug reports as detailed as possible to help us find and fix bugs before release.

Second release candidate for 0.7.0

0.7.0-rc2 is out, fixing many of the instabilities and other bugs in the first release candidate.

Please pick up Mac and Windows builds for 0.7.0-rc2 on the development builds page. The new Windows installer is also available directly from the development builds page now.

First release candidate for 0.7.0

The first release candidate for 0.7.0 is here, featuring slick new tiles, a new Sprint map from the strange and terrible Chapayev, Demonspawn with fancy new mutations and chrome wheels, and a new tutorial with Extra Bling (TM).

There’s also a detailed list of changes if you enjoy that kind of thing.

Mac and Windows builds for 0.7.0-rc1 are available from the development builds page as usual.

We’re testing a new Windows installer for Crawl from kilobyte, and we’d appreciate feedback from Windows users.

Please file all bug reports on Mantis as usual.

Tile Changes in 0.7

Let her paint an inch thick

If you haven’t been paying close attention (or you happen to be one of those backwards, curmudgeonly console players), you may have missed the boatload of new tile art going into 0.7. New dungeon! New monsters! New trousers! By my count, there were almost 300 modified or added tiles in this release.

This post is an overview of what you can expect to see when you start playing the shiny new version in a week or few.

A lot of this art has come from the ever-prodigious Poor Yurik (who you can thank for the new dungeon look, the spriggans, the kobolds, the goblins, the fabulous elephants, &c &c). However, there’s also a ridiculous amount of thanks for Denzi, coolio, Porkchop, LoginError, minmay, KiloByte, and others as well.
More: Read the rest of this entry…