Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Floodkiller
May 31, 2011

MOST UP TO DATE GOONCRAWL WEBTILES AT CKO AND CPO! CHECK SECOND POST FOR MORE!



What is Dungeon Crawl?

Dungeon Crawl is a popular, free roguelike game focusing on tactics, balance, variety and a lasting challenge. A roguelike is generally a turn-based RPG, with an emphasis on randomly generated worlds, a high depth of play, huge menageries of monsters, and some MacGuffin you have to dig up and escape with. Most roguelikes use ASCII characters for graphics, though an increasing number utilize graphical tiles, like Crawl. Roguelikes are usually very tough to beat, and death is often permanent: once you're dead, you're dead. The original version of Dungeon Crawl was released by Linley Henzell in 1997, but the version most are familiar with is Dungeon Crawl: Stone Soup.

This has all of the elements of a classic roguelike, but avoids the major annoyances and monotonous requirements present in many of them. It makes playing the game a natural experience, without "gotcha" deaths that demand an encyclopedia of knowledge. Everything you need to know to survive is present in each turn, whether it be through careful observation, making use of the resources you've collected and learned, or referring to the help by pressing "?" if you're not sure what each key does yet.

Crawl is great because it demands attention to survive, but skips or automates a lot of the boring stuff that slows down similar games. New changes always have reasoning based in fun or balance. When you die, it's usually because you overestimated your strength, took a chance, and lost. You'll learn from each death; you will die early and often. When the game smiles upon you with some really good items and luck, hubris often becomes your worst enemy. Although the game is heavily dependent on luck, victory is always possible even if you are getting the short stick at every turn. Veteran players can streak wins together with random characters.



So how do I play?

Although Stone Soup is still the most well-known version, many communities (including us) have started making their own forks: versions that split off of Stone Soup and started making their own changes based on their own opinion of what the game should be. Depending on your interests, you may be interested in one of the following (if you want something else mentioned here, PM me wherever you find me with the info):

Dungeon Crawl: Stone Soup
The original New Coke. Stone Soup aims for:
  • challenging and unpredictable gameplay, with an emphasis on tactical skill
  • meaningful decisions (no no-brainer, works-every-time-with-every-character play choices)
  • grinding is unnecessary
  • a simplified and elegant interface, with a helpful tutorial and mouse support for new players
  • clarity of design (playable without the need for external spoilers)
  • thematic consistency (no lightsaber-wielding orcs)
  • replayability and lasting challenge (with optional branches, multiple race/background/god choices, and optional challenges)
  • proper use of out-of-depth monsters
Recent versions of Dungeon Crawl: Stone Soup have gotten flak from many communities (including us) that more is being removed than added and from valuing the design philosophy over player input, but it is still actively developed with plenty of useful quality of life and bug fixes (in addition to the content changes) daily.
Online:
Other servers and instructions for joining via SSH/Telnet (with a client such as KiTTY or PuTTY) are available here: How to play Online.

Offline:
If you prefer a lagless experience offline, you can Download Crawl for Windows, Max OSX, Linux and Android.


Gooncrawl
A democratic fork for Something Awful! See the second post for more info.
Online:
Offline:
Stable releases (currently v1.0, ~8 months old)- https://github.com/Floodkiller/crawl/releases/
Development-

Hellcrawl
Hellcrawl ramps up the removals that Stone Soup normally does to a radical extreme, aiming to streamline the game to a much shorter and more intense experience.
Tavern thread
Online:
Offline:
Stable releases- https://github.com/Hellmonk/hellcrawl/releases
Development- https://github.com/Hellmonk/hellcrawl


X-Crawl
Another democracy styled fork, created and voted on by players on the CXC Discord server.
Tavern thread
CXC Discord
Online:
Offline:
Stable releases- https://github.com/Vajrapani/X-Crawl/releases
Development- https://github.com/Vajrapani/X-Crawl


Bloatcrawl 2
Bloatcrawl 2 expands on Bloatcrawl, adding a total of 69 new species and backgrounds to the game. Play a Butterfly Inheritor!
Online:
  • CPO: Australia
  • CKO: NYC, USA
Development (completed, but you can still compile from source here)- https://github.com/Hellmonk/bloatcrawl2/blob/master/README.md

Gnollcrawl
DCSS, but you are XL 1 and every enemy is a gnoll.
Online:
Stable releases- https://github.com/Dracunos/gnollcrawl/releases
Development (completed, but you can still compile source from here)- https://github.com/Dracunos/gnollcrawl/

Bcrawl
A fork of X-Crawl: "X-Crawl development stalled after it replaced all stairs with hatches. I didn't like that, and I had some pull requests sitting around, so I made my own fork."
Tavern thread: https://crawl.develz.org/tavern/viewtopic.php?f=17&t=25940&sid=ad9c94f2381e022b81687c37c94c6b92
Online:
  • CKO
  • (let me know if it is elsewhere)

BcadrenCrawl
Not to be confused with bcrawl
Reddit post: https://www.reddit.com/r/dcss/comments/aumr1f/my_fork_bcadrencrawl_is_up_on_cko/
Online:
  • CKO
  • (let me know if it is elsewhere)

Stoat Crawl
Made by damerell/bloodnok and friends (who also host the cross-server Gooncrawl scoring!)
Tavern post: https://crawl.develz.org/tavern/viewtopic.php?f=17&t=26253
Github: https://github.com/damerell/crawl
Online:
Kimchi
Korean fork, focused on adding content instead of removing it as well as restoring old content.
Github: https://github.com/kimjoy2002/
Online:
CWZ



Why play Online?
  • Spectate live games and chat with the player and others! Check out this list of everyone playing right now, and click "Watch" to see their live game.
  • Progress and settings (rcfile) are saved.
  • Always up-to-date (mostly), with nightly builds available to play.
  • (Stone Soup only) Keep track of your victories, defeats, and all kinds of stats.
  • (Stone Soup only) Participate in tournaments with every new version!



The chats, communities and resources:
  • ##crawl on Freenode - Official Dungeon Crawl IRC. You can chat, ask for help, and get up-to-date information from bots, veterans, and devs.
  • Crawl Wiki - A good source for general information and spoilers. Be wary of the game version displayed on each page; some will be quite outdated!
  • LearnDB - Searchable repository of Dungeon Crawl lore. Almost always up to date & accurate, but sometimes its terseness and in-jokes do it no favors.
  • Knowledge Bot - Uses LearnDB, IRC bots and sprites to provide a very nice search engine for almost anything about the game.
  • The Tavern - Official Dungeon Crawl forum.
  • /r/DCSS - le reddit.
  • ##gooncrawl on Freenode - For a goonier chat.
  • Gooncrawl Discord - nuIRC



Other Stuff:

Earlier threads:
Crawl 0.21(/0.22): Stick a Fork In It
Crawl 0.20: Home of the Frog Dog
Crawl 0.19: Just Riposte (pastebin dump)
Crawl 0.18: Purple Reign
Crawl 0.17: Corn enemies no longer popcorn
Crawl 0.16: Ru asks you to sacrifice your free time! This is a trivial butt
Crawl 0.15: Terrifying, Ever-Gnashing Radulae
Crawl 0.14: You feel energized by your suffering!
Crawl 0.13: FoIE GrAs: You are engorged.
Crawl 0.12: Erolcha banished me and gave me apocalypse crabs
Crawl 0.11: Eight legs and it's not an Octopode: Welcome to Spider
Crawl 0.10: Your tentacles turn into razor-sharp scythe blades
Crawl 0.9: A meow rips itself from your throat
Crawl 0.8: Mennas II Society
Crawl 0.7: The Dying Game
Crawl 0.6: Slouching towards The Abyss
Dungeon Crawl Stone Soup 0.5.0: Now with less Oklob!
Dungeon Crawl Stone Soup 0.4.0
Dungeon Crawl Stone Soup 0.3.0

Floodkiller fucked around with this message at 19:31 on Oct 21, 2022

Adbot
ADBOT LOVES YOU

Floodkiller
May 31, 2011

Gooncrawl is no longer being actively developed, v2.0/WebTiles is the latest version



Gooncrawl

Gooncrawl is a fork that was started by me for Something Awful, in response to wanting to do something productive out of all the doomsaying from recent versions!

Anyone who :justpost:s in the thread is eligible for suggested additons/changes/removals and voting on those suggestions, as well as whether any pull requests or major features from Stone Soup should be merged. After voting, I do my best to code/merge it all for the fun of it! Even if you don't want to contribute to the design process (or are lurking without an account and don't want to pony up the :10bux:) you can still contribute with your own development (artwork, code, vaults, documentation, etc.) through pull requests, play and enjoy the game, and sharpen your pitchforks for whenever "I've gone too far".

Major Contributors:
Floodkiller - Coding, Project Management, Lazy rear end in a top hat, Mainline Dev Apologist
Patashu - Coding, Fixing Things Flood Broke/Gave Up On
Metoron - Spritework, Removing Awful Programmer Art Flood Made, Generous Dev Update Builds
Araganzar, Hito - Pull Request Processing, Save File Corrupting
Also thanks to anyone else who contributed, as well as to all server admins for hosting it online!

Changelog for v2.0: https://github.com/Floodkiller/crawl/blob/gooncrawl/crawl-ref/docs/gooncrawl/changelog.txt

Other Gooncrawl documents:
https://github.com/Floodkiller/crawl/tree/gooncrawl/crawl-ref/docs/gooncrawl

Where to play (again, since you probably scrolled past it):
Offline:
Stable releases (v2.0, latest trunk build downloads)- https://github.com/Floodkiller/crawl/releases/
Development-
ONLINE SCOREBOARD FOR GOONCRAWL:
Aggregate scoring (hosted by Bloodnok/damerell)
CKO scoring (hosted by Floraline)

Floodkiller fucked around with this message at 19:30 on Oct 21, 2022

Floodkiller
May 31, 2011

Inexplicable Humblebrag posted:

not played crawl in a while, booted up gooncrawl:



what on earth

That's from a while ago in DCSS. Too many people were hitting the wrong stat by accident (usually while doing something else), so now it uses capitals only to confirm that's what you want.

Another big one you will run into: use the Descend Staircase key to pray at altars, since the prayer button was removed.

Floodkiller
May 31, 2011

jerkstoresup posted:

How's the permabuff work going FK? I've been crawling again lately and would drop every other version for Gooncrawl, except Hellcrawl is still the funnest way to play my beloved OpTm.

Still a work in progress, unfortunately.

Floodkiller
May 31, 2011

Arivia posted:

I don't suppose we have an ETA on paralysis not sucking in Gooncrawl? I want to play, but I refuse to play until Paralysis is fixed.

It's not currently on the plan for v2.0, so you'd have to wait until the next voting rounds.

Alternatively, you can always just mod it yourself temporarily (through removal) by finding any source of DUR_PARALYSIS in the code and changing it to always last zero turns (or never even get set).

Floodkiller
May 31, 2011

Gooncrawl updates:
  • Fixed most of the backside implementation stuff for permabuffs (I think). I could push it out quick tonight with Deflect Missiles for testing, but would prefer to get perma-forms in first to make it easier for testing (since I think forms are going to be the buggiest spell to get working).
  • Metoron ported over the Archaeologist background from X-Crawl for a PR, so that's now merged! Changes from X-Crawl's version: they don't get enchanted boots and gloves at the start, but they do get a whip. Mortal enemies: snakes and boulder beetles.

Floodkiller
May 31, 2011

Jon Joe posted:

Alright, the abomination is now fully functional as described. Early game is a little harder than expected due to aptitudes, and there's a graphical bug where your rings won't show up on the character screen (but will still show up in your inventory and on the (P)ut and (R)remove menus), but otherwise everything works as intended! Beware orc wizards.

Floodkiller, do you just want me to submit a pull?

Yeah, if you want to make a pull request, I can remember to include it in the next round of voting (warning: it might take a bit before we get to that depending on how long the remaining items for this version take). It will also run continuous integration on it, so you can check for any build errors that may not have popped up before.

Make sure you make the pull request against fork Floodkiller/crawl, branch gooncrawl. Don't accidentally submit it to mainline crawl!

Floodkiller
May 31, 2011

Mystery Prize posted:

Did Gooncrawl change the way the Abyssal Rune is generated? I've been chilling on Abyss:6 for like 30 minutes of real time and I've yet to see the rune.

Any level below Abyss:5 spawns the rune vaults at the same rate as Abyss:5, I believe.

Floodkiller
May 31, 2011

Gooncrawl update: Couldn't get in the mood to work more on permabuffs this weekend, but I went through some pull requests that got submitted by Jon Joe and Metoron!
-Added Jellifiers, a background that worships Jiyva (thanks, Jon Joe!). Drink the (starting) purple! (please feel free to bikeshed the name, I just merged it as is because I would have gone with Slime Knight but that overlaps the abbreviation SK with Skald)
-Re-added Healer background, which worships Elyvilon (thanks, Metoron!). Be healthy!
-Tweaked the harp of healing from 10+(1*Evocations) to 5+(0.75*Evocations), also from Metoron. I would have gotten around to tweaking it myself as well, and this is close enough to the numbers I was thinking of to keep it relevant in both low and high evocation use without going completely bonkers like it was before.

Github seems to be having problems recognizing the Healer and Harp of Healing commits at the moment, so only Jellifiers are 'actually' in at the moment. Hopefully it unclogs itself sometime tonight.

Floodkiller
May 31, 2011

Gooncrawl update: spent most of the weekend playing crossworld Ocarina of Time randomizer with a friend, so didn't make much progress on permabuffs again (sorry!). Did more pull requests instead:
-Merged Jester class (courtesy of Metoron!), which is an ex-worshipper of Xom who now follows Nemelex Xobeh and starts with multiple pies. Do not go down on the clown or the clown will go down on you.
-I broke Harp of Healing by accidentally turning the Evocations scaling down to 0, so I fixed that to actually be 0.75 per Evo level. Whoops!

Floodkiller
May 31, 2011

I spent a lot of the weekend helping someone clean up after some storm damage, so nothing really to update. Sorry for the broken record :(

Floodkiller
May 31, 2011

Gooncrawl status update:

Initial batch of permabuffs are now in for testing (finally)! All castable versions of transmutation forms should now be permabuffs (cast once to reserve the MP and keep the form indefinitely, cast again while it is active to release the spell). If nobody notices anything too buggy, I'll start working on converting the other voted spells over to permabuffs as well. Current known bugs: You will get informed multiple times that you lost control of your spells if you untransform from a form that melds your body armor and your shield.

Currently, MP reserved is equal to the spell level of the permabuff without any modifiers AKA you only need to get it castable once and it can be maintained for the spell's level of MP until you change/equip body armor or shields or your max MP can no longer sustain the spell (will drop all permabuffs). If the MP reserved is too little or too low effort for heavy armor after people get their hands on it to mess around, there's a couple things I can insert:
  • Add a modifier to total MP reserved based on some combination of Armor skill/Spellcasting Skill/Encumbrance/Strength (similar to Hellcrawl, but I can't do it on a per-spell basis due to implementing it differently)
  • Change the reserve cost of a spell to be different from the spell level (ex Necromut is a Level 8 spell but could reserve 15 MP)
  • Similar to the one above, change the spells to reserve a percentage of max MP instead of a static value (similar to Path of Exile reserved spells)
  • Any other ideas anyone can think of, as well as any combination of the above+other ideas as well.

As an aside, I forgot to prevent Djinni from worshipping Trog because they are made of magic. Any preference on changing it vs keeping what it currently is anyways?

Floodkiller
May 31, 2011

Aumanor posted:

Deep Elf, purest of blaster casters. Pray for an early Vehu altar.

E: Speaking of blaster casters, can I petition for Gooncrawl to move Buddysphere back to lvl 4? That change is what made me drop conjurers.

E2: Speaking of buddysphere and having checked the wiki, can I petition for Gooncrawl to put Buddysphere back into the conjurations starting book?

Second edit is already done.

Floodkiller
May 31, 2011

Gooncrawl status update:
-Ring of Flames and Regeneration are now permabuffs!
-Xom no longer attempts to give you permabuffs, I think (you would get stuck with it turned on and couldn't turn it back off due to the way I implemented it).

Floodkiller
May 31, 2011

Fhqwhgads posted:

I don't know how the server updates work, when do these go live on CBRO? I love permabuffs and especially as I splat GnSk's I can't wait to run all the permabuffs.

CBRO doesn't daily build it, so Johnstein would have to trigger a manual re-build. I haven't been hanging out on ##crawl-dev recently because my client keeps getting disconnected, so I don't know how active Johnstein currently is. However, I don't really like bugging server admins for updates unless I hit a milestone (like, all planned permabuffs implemented instead of just a couple). If you want to head to there or ##crawl and ask him nicely, I'm sure he would update it though.

CPO and X-Crawl are set up to daily build though, so they should be live with the latest dev version if you want it now.

Floodkiller
May 31, 2011

No Gooncrawl update this weekend, I'll try to push something out tomorrow or Tuesday.

Floodkiller
May 31, 2011

FulsomFrank posted:

Someone with a modicum on compiling knowledge capable of making a build of the latest version with buffs would be greatly appreciated.

Environment setup and personal builds

Release builds (mostly just Step 8)

Floodkiller
May 31, 2011

Gooncrawl status update:
-Infusion and Deflect Missiles are now permabuffs! Slight change to Deflect Missiles: instead of dropping the Deflect effect if you fail the spellpower check, you will instead lose 6 MP when it happens (what the cost of recasting it would be).
-Dispel effects (like cancellation potions and Yara's Unravelling) will now drop permabuffs. Whoops!

Got some holiday time coming up soon, so hopefully I can knock out updates faster than normal whenever I'm not busy with family!

Floodkiller
May 31, 2011

parthenocarpy posted:

what happens if you don`t have 6mp?

You just go to 0 MP.

Floodkiller
May 31, 2011

No updates this weekend, was busy playing the start of the new Path of Exile league. The new shine will probably wear off before next weekend, so I should have more updates then.

Floodkiller
May 31, 2011

Gooncrawl update:
-Re-added Repel Missiles for player casting as a permabuff (in Book of Air, Minor Magic). Be slightly safe from missiles again!
-Changed it so that cancelling a permabuff (recasting the spell while you already have the permabuff) doesn't cost you MP to do so. I wasn't able to do this with any of the Transmutations, but there's an End Transformation button that works just fine for that so whatever.

Floodkiller
May 31, 2011

Gooncrawl update:
-Excruciating Wounds is now a permabuff. Torture your weapons indefinitely!

Updates will likely come a lot faster now that I'm on holiday, but not that fast since I had to get a new laptop after the old one died and it runs like poo poo.

Floodkiller
May 31, 2011

Gooncrawl Updates:
  • Spectral Weapon is now a permabuff (shamelessly stolen implementation from Hellcrawl). I ported over the permabuff mechanics without the balance changes, so everything about it should still be the same aside from needing to hit something first to draw out your weapon.
  • Added an End Permabuffs ability so you don't have to fiddle with armor or recasting everything to drop your buffs.
  • Re-enabled Xom's ability to cast permabuffs now that you can turn them off without the spell.

ExiledTinkerer posted:

Any reckonings on the moving target of late that is bcrawl as the other Lively One alongside Gooncrawl? Or plotting to harvest choice bits from the former into the latter?

https://github.com/b-crawl/bcrawl/releases

Feel free to cherry pick and suggest anything! The only reason there hasn't been another poll yet is because I want this feature list mostly done before calling it good and I update at a glacial pace normally.

Floodkiller
May 31, 2011

Gooncrawl update:
Song of Slaying is now a permabuff. Implementation is similar to Hellcrawl's, in that it will lose bonus over time since the song doesn't end. Left all the other parts of the spell the same for right now.

Only Battlesphere and Ozo's to go for converting and then I can pick something else on the list!

Floodkiller
May 31, 2011

The holiday update train continues! Gooncrawl updates:
  • Battlesphere and Ozo's are now permabuffs, which is everything that passed the vote! Woo!
  • Trog will no longer accept worship if you are currently maintaining permabuffs. Oops.
  • Shining eyes have had Malmutate replaced with Polymorph. Less strategically frustrating, more tactically horrifying!

I'm gonna keep pushing ahead, but still looking for feedback on details for modifying MP reserved for permabuffs past just reserving their spell level.

Edit: Gonna avoid the triple post since conversation is dead at the moment and just put more updates in this post until someone else posts again:
Dec 28th updates:
  • Re-added Recharging ability for deep dwarves. Burn your MP on shotgun wands!
  • Increased cross training bonus from 40% to 60%, which should be a bit more noticeable.

Floodkiller fucked around with this message at 01:29 on Dec 29, 2018

Floodkiller
May 31, 2011

Aumanor posted:

Which version of LRD is gooncrawl using?

The one that still breaks walls.

Edit: Probably not going to be another update until I get back to my main computer, starting to tackle another complicated thing and I'm getting pissed off at this poo poo laptop's speed.

Floodkiller fucked around with this message at 02:39 on Dec 31, 2018

Floodkiller
May 31, 2011

Tollymain posted:

i have a stupid idea and that idea is bringing back berserk rage as a spell


a hex that frenzies enemies, berserks allies, and gives you might+mesmerised+confusion lmao

Other than the last part, that's the Discord spell.

Floodkiller
May 31, 2011

No update this weekend, was distracted with some new games and currently watching AGDQ. I'll see if I can get something out this week during any bad runs.

Floodkiller
May 31, 2011

Wolfechu posted:

Question: If I try to start a gooncrawl game on CPO right now, it hangs on one of the various loading screens for longer than usual, then drops to:


Been happening for a day or so now. I assume that's happening to just me, or someone would have said something. Was I in the middle of a game? Who knows....

If it IS just me, I also assume I should let the server admin know, unless there's some catastrophic bug not letting anyone in. CPO seems to be fine if I try to load trunk or other forks.

The most likely cause is you were in the middle of a game and the save got broken by an update because I skip save compatibility. You'll likely want to contact the admin to wipe your save.

Edit: Definitely this because I just tried to start a game and it worked.

Floodkiller
May 31, 2011

PMush Perfect posted:

I was rewatching, and did you know you got your donation read during the ChexQuest run? I heard "Floodkiller" then instantly remembered this post.

Yeah! I also got one through the queue during Awful block too, which was pretty cool since it's been a couple years since I had one of my donations get read.

My goal this weekend for Gooncrawl is to get the Oka changes in (or as many as I can). I don't really feel the animated weapon gifts are a good idea in terms of how much they are going to kill the player, but I'll try to get them in anyway so people can die to them and agree rather than just discuss it. Also possibly replacing Malmutate on Orbs of Fire to knock that item out for good.

Floodkiller
May 31, 2011

Wolfechu posted:

What does "You lose control of your reserved spells" mean? Got that message when I put a suit of ringmail on in the very early game. I'm assuming it's something to do with some spells being permabuffs in Gooncrawl, but given I was a GrBe, I doubt I'd be casting anything any time soon...

That's me being lazy, patching it now.

Edit: Fixed on GitHub, will take however long it usually takes until servers rebuild to show up there.

Floodkiller fucked around with this message at 05:49 on Jan 19, 2019

Floodkiller
May 31, 2011

Gooncrawl update: Okawaru no longer gives out ammo gifts. Instead, at 3* piety, Okawaru will now make all of the player's ammunition have the returning brand in addition to whatever brand it normally has. Additionally, at 3* of piety and higher Okawaru has a chance to prevent ammunition from being mulched (up to 100% chance to be preserved at 160 piety/6*).

Known bug: Okawaru will technically preserve all ammunition from mulching, not just the player's. I didn't feel like fixing it at the moment because I don't think that's really a big deal in terms of balance, but it does stop me from putting in a message that lets the player know that the ammunition was preserved by Okawaru (because otherwise you will get spammed to hell by enemy archers).

Edit: Also renamed Jellifiers to Slime Apostles like I should have remembered to do in October, whoops.

Floodkiller fucked around with this message at 03:57 on Jan 21, 2019

Floodkiller
May 31, 2011

No update this weekend, spent most of it playing the RE2 remake (which is very fun, by the way).

Floodkiller
May 31, 2011

Still was busy playing through RE2make as well as messing around with Wargroove, but got something small out for a Gooncrawl update:
-The Malmutate spell will no longer mutate the player. Instead, it will cause 1-5 points of stat drain (average 3-4) in each stat (which I'm thinking about adjusting downwards later, depends on the feedback). This change only affects Orbs of Fire, as they are the only remaining monster with Malmutate and I didn't want to bother to rename it in the code at the moment. Other sources of malmutation (standing in mutagenic fog, spell miscasts, Mnoleg melee) will still mutate you.

Floodkiller
May 31, 2011

Internet Kraken posted:

Having done another 15-rune game, my initial excitement has faded away pretty fast. For two versions later, very little seems to have changed. Extended hasn't even been touched. Once again I was mutated by hell glow I couldn't avoid. I really don't get how that doesn't drive other players crazy. It feels so lovely.

I've been playing this game for years. I have almost 100 wins online. I've given a bunch of feedback.

And I'm pretty sure the only suggestion I've made that actually got into the game was a troll Xom vault that spawns a friendly goblin.

I'm feeling powered to spite and the Oka changes are going slow, so I'll see how easy it is to modify Hell effects after I get out of work today and get that v2.0 item out of the way.

Floodkiller
May 31, 2011

Internet Kraken posted:

I have no doubt that its probably very fun and better than normal Crawl at this point. However, I'm addicted to the scoreboard aspect of Crawl. Having all my games tracked is what really motivates me to keep playing since I have clear goals to work towards.


Its not easy. I was reading through the dev logs and apparently changing extended to rework hell effects and the way Pan worked was a goal for 0.21... and nobody did it because it was hard and none of the devs care about making extended fun.

IIRC the reason hell effects aren't easy to modify is because a bunch of them are just forcing miscasts and not actual, unique effects.

code:
/**
 * Choose a random, spooky hell effect message, print it, and make a loud noise
 * if appropriate. (1/6 chance of loud noise.)
 */
static void _hell_effect_noise()
{
    const bool loud = one_chance_in(6) && !silenced(you.pos());
    string msg = getMiscString(loud ? "hell_effect_noisy"
                                    : "hell_effect_quiet");
    if (msg.empty())
        msg = "Something hellishly buggy happens.";

    mprf(MSGCH_HELL_EFFECT, "%s", msg.c_str());
    if (loud)
        noisy(15, you.pos());
}

/**
 * Choose a random miscast effect (from a weighted list) & apply it to the
 * player.
 */
static void _random_hell_miscast()
{
    const spschool which_miscast
        = random_choose_weighted(8, spschool::necromancy,
                                 4, spschool::summoning,
                                 2, spschool::conjuration,
                                 1, spschool::charms,
                                 1, spschool::hexes);

    const int pow = 4 + random2(6);
    const int fail = random2avg(97, 3);
    MiscastEffect(&you, nullptr, {miscast_source::hell_effect}, which_miscast,
                  pow, fail,
                  "the effects of Hell");
}

/// The thematically appropriate hell effects for a given hell branch.
struct hell_effect_spec
{
    /// The type of greater demon to spawn from hell effects.
    vector<monster_type> fiend_types;
    /// The appropriate theme of miscast effects to toss at the player.
    spschool miscast_type;
    /// A weighted list of lesser creatures to spawn.
    vector<pair<monster_type, int>> minor_summons;
};

/// Hell effects for each branch of hell
static map<branch_type, hell_effect_spec> hell_effects_by_branch =
{
    { BRANCH_DIS, { {RANDOM_DEMON_GREATER}, spschool::earth, {
        { RANDOM_MONSTER, 100 }, // TODO
    }}},
    { BRANCH_GEHENNA, { {MONS_BRIMSTONE_FIEND}, spschool::fire, {
        { RANDOM_MONSTER, 100 }, // TODO
    }}},
    { BRANCH_COCYTUS, { {MONS_ICE_FIEND, MONS_SHARD_SHRIKE}, spschool::ice, {
        // total weight 100
        { MONS_ZOMBIE, 15 },
        { MONS_SKELETON, 10 },
        { MONS_SIMULACRUM, 10 },
        { MONS_FREEZING_WRAITH, 10 },
        { MONS_FLYING_SKULL, 10 },
        { MONS_TORMENTOR, 10 },
        { MONS_REAPER, 10 },
        { MONS_BONE_DRAGON, 5 },
        { MONS_ICE_DRAGON, 5 },
        { MONS_BLIZZARD_DEMON, 5 },
        { MONS_ICE_DEVIL, 5 },
    }}},
    { BRANCH_TARTARUS, { {MONS_TZITZIMITL}, spschool::necromancy, {
        { RANDOM_MONSTER, 100 }, // TODO
    }}},
};

/**
 * Either dump a fiend or a hell-appropriate miscast effect on the player.
 *
 * 40% chance of fiend, 60% chance of miscast.
 */
static void _themed_hell_summon_or_miscast()
{
    const hell_effect_spec *spec = map_find(hell_effects_by_branch,
                                            you.where_are_you);
    if (!spec)
        die("Attempting to call down a hell effect in a non-hellish branch.");

    if (x_chance_in_y(2, 5))
    {
        const monster_type fiend
            = spec->fiend_types[random2(spec->fiend_types.size())];
        create_monster(
                       mgen_data::hostile_at(fiend, true, you.pos())
                       .set_non_actor_summoner("the effects of Hell"));
    }
    else
    {
        const int pow = 4 + random2(6);
        const int fail = random2avg(97, 3);
        MiscastEffect(&you, nullptr, {miscast_source::hell_effect},
                      spec->miscast_type, pow, fail,
                      "the effects of Hell");
    }
}

/**
 * Try to summon at some number of random spawns from the current branch, to
 * harass the player & give them easy xp/TSO piety. Occasionally, to kill them.
 *
 * Min zero, max five, average 1.67.
 *
 * Can and does summon bands as individual spawns.
 */
static void _minor_hell_summons()
{
    hell_effect_spec *spec = map_find(hell_effects_by_branch,
                                      you.where_are_you);
    if (!spec)
        die("Attempting to call down a hell effect in a non-hellish branch.");

    // Try to summon at least one and up to five random monsters. {dlb}
    mgen_data mg;
    mg.pos = you.pos();
    mg.foe = MHITYOU;
    mg.non_actor_summoner = "the effects of Hell";
    create_monster(mg);

    for (int i = 0; i < 4; ++i)
    {
        if (one_chance_in(3))
        {
            monster_type *type
                = random_choose_weighted(spec->minor_summons);
            ASSERT(type);
            mg.cls = *type;
            create_monster(mg);
        }
    }
}

/// Nasty things happen to people who spend too long in Hell.
static void _hell_effects(int /*time_delta*/)
{
    if (!player_in_hell())
        return;

    // 50% chance at max piety
    if (have_passive(passive_t::resist_hell_effects)
        && x_chance_in_y(you.piety, MAX_PIETY * 2) || is_sanctuary(you.pos()))
    {
        simple_god_message("'s power protects you from the chaos of Hell!");
        return;
    }

    _hell_effect_noise();

    if (one_chance_in(3))
        _random_hell_miscast();
    else if (x_chance_in_y(5, 9))
        _themed_hell_summon_or_miscast();

    if (one_chance_in(3))   // NB: No "else"
        _minor_hell_summons();
}
Actually, this is all that there is from first glance. I think the minor/major demon summoning are already unique per branch by hell_effects_by_branch's appearance and noise is fine for all of them, and I could probably just hijack MiscastEffect in _random_hell_miscast and hell_effects_by_branch with fake Hell spell schools for the unique stuff.

The most recent release is implementing seeds for seeded runs, which in my opinion is a lot harder and nastier in Crawl's code than this. It's more likely that whoever proposed it got bored and stopped and nobody else was interested.

Floodkiller
May 31, 2011

Shady Amish Terror posted:

Pffhaha. Just learned that if you set down cure mutation and benemut potions and wander off somewhere, they degrade into regular mutation potions. Teaches me for trying to stockpile them. Oh well, lesson learned, that's what mega-Zigs are for. :v:

I think I missed some save compatibility code, I'll fix it after work.

Floodkiller
May 31, 2011

Floodkiller posted:

I think I missed some save compatibility code, I'll fix it after work.

Fixed

Also removed Charms and Hexes from the random Hell miscast effects, which removes the potential for getting glow. This is just a quick change to do, but I still want to look into if they need more trimming and some special effects for each Hell.

Finally, toned down OOF's new Malmutate to only be 1-3 points of stat drain for each stat. I may have just been updating tired and forgot how absolutely lethal 2-5 is per cast on an OOF for any species with low stat bases.

Floodkiller
May 31, 2011

Bogart posted:

Here’s my pitch for Malmutate: it goes back to mutating you but it takes like five~ standard turns to charge and you can interrupt it with any damage. Rocks. Smites. Fireballs, anything. So it’s a wind up that makes him vulnerable and if you can’t get to him or out of range by then, you get zapped.

My goal with Malmutate reform was to take away all forms of enemy based mutation against the player (except Mnoleg, who I left because I think it's okay to leave on a 'boss' monster who only appears in Extended). This leaves mutations as an opt-in system (whether through eating the purple or negative player choices like miscasts or walking into mutagenic clouds).

It's an overkill reform I agree, but it's my big sore point in DCSS so you can't take it from me :colbert:

Adbot
ADBOT LOVES YOU

Floodkiller
May 31, 2011

Internet Kraken posted:

IMO make Neqs, caqs, and OoFs give transient mutations instead. Those are still something you really wanna avoid and it keeps their threat as mutators intact.

Temporary mutations just encourage you to leave whatever dangerous thing you might be doing if you get something annoying, grind it off, and come back for another go. It works in Abyss (and somewhat Pan) because you can't choose to leave to go grind it off somewhere else. Elsewhere it's just the same annoyance that normal Malmutate can be when you get something awful.

I gave Neqoxecs Paralyze as an early game super threat (like they were with Malmutate) that you can more safely ignore in Extended like most other lesser demons at that point. Cacodemons got the Corrosive Smite (at a lower rate of occurrence than entropy weavers) so they double as a support demon that digs out your holes and makes you weaker to other demons and giving rCorr an actual purpose outside of Slime. Shining Eyes got Polymorph for something that can do pretty much nothing to you if they are on their own, but a disaster with any supporting monsters (like most other eyeball monsters). I don't think OOFs getting a stat drain fixes the issue I stated above (same thing, different mechanic), but it's what they already do to undead (but stronger) and I prefer it over permanent/temporary muts so it's better than nothing.

I could have given OOFs an rF- hex, but I thought that was too mean.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply