Skip to content

0.23 Development and Release Plan

gammafunk edited this page Jan 28, 2019 · 47 revisions

This page is for managing short and middle term development planning. Features on this page are considered major or significant improvements. General bugfixing does not need to go here although major bugs could end up in a "tasks for completion" section once we near a release. Features are divided into sections based on their stage of completion or planning. Each feature should have the names of any devs who are actively working on, planning, or responsible for the feature and who realistically think they'll be able to finish it in time for the release date.

See the Future Version Ideas page and Old Release Plans pages for ideas, moving entries here as necessary.

General TODO

This is a list of tasks that generally need to be completed for any release to happen.

  • Release schedule - Feature Freeze 27 January. Release Feb 6. Tournament start Feb 8.
  • Mantis administration - closing and/or fixing hundreds of old bugs and FRs

Tasks for completion

These are features not yet int trunk which have which should have a simple path to implementation and where there isn't any known disagreement of the benefits. If any of these turn out to be more complicated or warrant more discussion, they can be moved to the Under Consideration section.

Merge Datafiles

alexjurkiewicz PR converts species definitions to datafiles. The code is in a ready-to-go state, and all servers have the new pyyaml dependency. What is needed is a team member who understands the patch well who can be on-hand (preferably at the same time as alexjurkiewicz) post-merge to put out any fires that might arise. ebering has set a tentative flag day of 11pm UTC Jan 19 to do this. Done!

Merge PR 599 (advil, aidanh, ebering)

This has been brought in as branch and rebased pr-599-rebase. In the discussion on the PR aidanh indicates that the result is mostly ready to go, up to a few small tweaks. ebering is in the process of completing this, but would appreciate help. Done!

Merge PR 801 (aidanh)

This PR implements a long desired interface feature: summoner highlighting. aidanh has reviewed it and changes matching the review were made but not all of them.

Merge floraline’s webtiles improvements

  • PR 791 Adds a header that allows webtiles to run behind an SSL terminating proxy. This is a feature achieved a different way in webtiles-changes. Considering the age of our Tornado and the difficulties reported by people trying to set up https webtiles it would be good to add
  • PR 800 Adds an option to disable gzip. This patch is now ready to go.
  • PR 910 Adds a change email address form. Something currently available in dgl, finally come to webtiles.

Done!

Auxiliary pane in the religion screen

The Nemelex and Beogh plans below would benefit greatly from additional information being made available in ^. Hepliakqana and Wu Jian wedge extra information into the Powers tab that could be put in a separate pane and elaborated on. To address these needs, it would be nice to refactor that screen to permit a per-god "extra" screen, and then implement the mentioned interfaces in terms of this "extra" pane. PR 931 has the seeds of this, ebering is building on them in a branch. PR 944 has this mostly implemented, with a few remaining todos. Done!

Grammar support for beam names

At a bare minimum, zap names in zap data should be made into a method like actor names. Verb support is also desired, but the verb might depend on the actor, so this could be significantly more complicated.

Testing and feedback

These are features which have been implemented in some fashion and are in trunk builds for testing / feedback / polishing. They are likely to be included in the release if they are ready by that stage.

Unrand Review and Revision (gammafunk, ebering)

Some of these changes are already in, having landed in 0.22. Some are still in the design phase, and some are currently in trunk for testing and feedback. See the Unrand Review page for details.

God tweaks

  • Minor Destruction Acid Beams The acid effect has been nerfed to do damage closer to that of the fire effect.
  • Ely Pacification Success Display Show the chance of pacification succeeding in the targeter like a hex. This was accomplished by some simplifying changes to the pacification formula.
  • Ash trap detection This has become exploration trap immunity.

Items

  • Blowgun success chance: Now that hexes, hex wands, and pacification all display the chance to affect, it's probably time for needles to have this information too.

Portals

  • gammafunk's Labyrinth Rework has been merged, with the portal being renamed to "Gauntlet". The wiki page summarizes the changes nicely.
    • Still desired: more layout maps (ebering has some in progress)

Spells

  • Nerf Confusion (for players). It's effectively an instant kill if it's landed, but is annoying to actually gain the kill. Monsters now (like players) get a one in three chance of moving normally (though their actions are still severely restricted).

Traps

ebering's trap overhaul has been merged. Summary changes:

  • Traps are now revealed
  • Alarm traps now always target the player
  • New trap: dispersal trap, blinks everything that can see the trap
  • On revealing a tile the player has a chance of triggering a trap effect, rolled with equal weight from shaft, alarm, and teleportitis teleport. If the roll is unavailable for some reason, nothing happens (no re-rolling).
  • Still desired: some vaults that make use of dispersal traps.
  • Full details can be found in the pull request
  • Net traps now always target the player
  • Mechanical traps (other than nets) have been removed from Tomb and Zot, where they weren't doing much

Goldify Nemelex Decks

newnemelex has been merged. Summary changes:

  • Deck rarity is gone, as are decks the item
  • The player has three abstract decks that nemelex deals to periodically, with a max of 13 in escape and summoning, and 26 in destruction
  • Stack five creates a fourth abstract deck, the player can have only one at a time
  • Ability costs and behaviors are adjusted
  • the Velocity card no longer has an actively harmful effect

Killer Klown Revamp (gammafunk)

Killer Klowns have been reworked mostly according to the writeup in Killer Klown rework.

Under Consideration

These features are not yet in trunk but are being actively worked on or considered by one or more devs (but still may not make it into the next release or any release for that matter).

Gods

Sif Muna Brainstorm

Take a look at Sif Muna. Piety (perception wise, if not the rate), and further mechanical distinction from Veheumet. (ebering)

Beogh Follower Menu (ebering)

Use the follower list created for PR 944 (or at least the code) to improve the ui for gifting to named followers. It should be a menu, not a targeter.

Differentiate Beogh's recall into three abilities (working names, maybe don't want to be too heavy with the Orc Jesus theme):

  • Recall Evangelists: Recall your best (by HD/xp) four orcs.
  • Recall Disciples: Recall your named orcs. (Maybe limit 12?).
  • Recall the Horde: Everyone.

Currently for permanent allies in crawl, especially orcs, micromanagement is worth doing but painfully tedious. The goal of providing these abilities is to give a Beogh player a thematic method of ally management, to further distinguish Beogh from Yred, but without providing a "ultra micromanage each orc" interface.

Longterm Organizational Projects

  • Migrate live pages from docu wiki to here Brannock made an effort to resurrect the docu wiki for 0.20, but the "kudzu" nature is I (ebering) think a detriment. 0.21 was wiki'd on GitHub, and 0.22 skipped (oops).
  • Better leverage GitHub tools PRs have already worked much better than mantis for patch management. The GH wiki and projects features are mostly unused, but could be helpful in de-kudzuing development. This is a "would be nice" todo, the structure of development means they're often not needed.
    • Something related would be to update documentation in docs/develop (needs doing on its own) and where appropriate convert to markdown and link via the readme to make our repository more inviting for new contributors.
  • Handle PRs Promptly There are a lot of stale PRs that are uncommented on. While ##crawl-dev is the preferred discussion point, we should aim to invite community contributors to ##crawl-dev to discuss their changes there, and make a point of including a summary of ##crawl-dev discussion in comments.
  • Remove Lightli An outstanding need persisting over many outstanding versions
You can’t perform that action at this time.