00:08:39 -!- ZChris13 has joined ##crawl-dev
00:24:30 -!- XB7 has left ##crawl-dev
00:38:04 <Gretell> Windows development builds on CDO updated to: 0.8.0-a0-5851-gcdf0e57
00:54:31 <Gretell> Unstable branch on CDO updated to: 0.8.0-a0-5851-gcdf0e57 (32)
01:22:20 -!- XB7 has joined ##crawl-dev
01:23:13 -!- XB7 has left ##crawl-dev
01:24:46 -!- Clatch has joined ##crawl-dev
01:59:16 -!- elliptic has quit [Ping timeout: 250 seconds]
02:03:14 -!- valrus has quit [Remote host closed the connection]
02:16:48 <ekiM> Meep.
02:16:49 <Henzell> ekiM: You have 1 message. Use !messages to read it.
02:16:53 <ekiM> !messages
02:16:56 <Henzell> (1/1) greensnark said (5h 11m 15s ago): Nice going on the Lua macro. I'd be happy to help debug issues.
02:19:25 <ekiM> !tell greensnark (: Thanks very much. Here's where I got up to last night: http://pastebin.com/9xq0wRCp
02:19:25 <Henzell> ekiM: OK, I'll let greensnark know.
02:23:34 <Zaba> moin
02:23:49 <Zaba> greensnark, ping
02:34:50 <Zaba> greensnark, what do you think of having two tags, primary and secondary, with 'secondary' being somehow implicitly set when none of them are specified?
02:35:15 <Zaba> greensnark, then the dungeon builder could simply select vaults by tags (first try primary, and, faiilng that, layout, + some amount of secondaries)
02:35:44 <Zaba> greensnark, of course, there are problems like, what to do with PLACE? And how many secondary vauilts should be built?
02:39:46 -!- monqy has quit [Quit: hello]
02:46:01 -!- Clatch has left ##crawl-dev
02:46:41 -!- aze5 has quit [Ping timeout: 255 seconds]
02:48:02 -!- casmith789 has quit [Ping timeout: 255 seconds]
02:55:03 <Keskitalo> ekiM: That looks cool!
02:59:58 -!- ZChris13 has quit [Quit: ChatZilla 0.9.86.1 [Firefox 3.6.15/20110303024726]]
03:00:18 <Keskitalo> The undead using Vampire Draining should clearly get "You feel unlife coursing back into your body!"
03:02:48 -!- Neovangl1st has joined ##crawl-dev
03:03:37 <Keskitalo> Hmh, lantern of shadows graphical effect is not great usability-wise. Could something ala the berserk red film change be done?
03:04:42 -!- Neovanglist has quit [Ping timeout: 252 seconds]
03:18:43 <due> Keskitalo: Leda's and Tornado need a new effect too :/
03:26:54 -!- Twinge_ has joined ##crawl-dev
03:28:10 -!- galehar has joined ##crawl-dev
03:28:14 -!- Twinge has quit [Read error: Connection reset by peer]
03:31:14 <Keskitalo> Hmm, Henzell reports "entered an Ice Cave (Vault:4)" but Gretell reports "entered and Ice Cave (IceCv)"
03:31:20 <Keskitalo> greensnark: poke? ^
03:33:02 <due> Hm.
03:33:07 <due> Is it the same report?
03:33:22 <due> !lg * br.enter=icecv
03:33:23 <Sequell> Unknown selector: br.enter
03:33:26 <due> !lm * br.enter=icecv
03:33:33 <Keskitalo> Nope, Henzell's retport is just more informative.
03:33:38 <Sequell> 2154. [2011-03-21] IonFrigate the Reanimator (L16 SENe) entered an Ice Cave on turn 48508. (D:19)
03:33:39 <due> Might be!
03:33:49 <due> Oh!
03:34:03 <due> It might be a regression then, unless Gretell isn't passing the right info -- or being passed.
03:34:18 <due> 0.7 at least passes the right entry-point to the milestone.
03:34:28 <due> It's possible there's a regression. I don't remember if I coded that fix or if someone else did.
03:37:24 <Keskitalo> Heh, it looks like my easy/hard ice cave selecting is not working in actual games. I probably should have tested that properly.
03:40:08 -!- ais523 has joined ##crawl-dev
03:46:08 <Keskitalo> (I failed to test creating the entry vaults at the interesting depths; the easy/hard switch does work when a easy/hard portal is created)
03:46:34 <Keskitalo> I possibly should have used you.in_branch rather than you.branch?
03:49:35 <Zaba> yes
03:49:52 <Zaba> you.branch is clua, you.in_branch is dlua
03:51:13 <Keskitalo> As in "client lua", vs "dungeon lua"? What is the difference in this casE?
03:51:20 <Keskitalo> you.subdepth is fine?
03:51:25 <Zaba> dungeon lua is what you use in .des files
03:52:15 <Zaba> but wait, I might be confused here as well
03:52:15 -!- eith has joined ##crawl-dev
03:52:30 <Zaba> Keskitalo, oh, you.branch is a function
03:52:49 <Zaba> you compare it with strings, that doesn't work :P
03:53:21 <Zaba> you need to call it
03:53:32 <Zaba> so you.branch() == ..., and you.subdepth() >= ...
03:54:33 <Zaba> and yes, that should work in dlua, too, no need for you.in_branch
03:56:23 <Zaba> or well.
03:56:48 <Zaba> greensnark, is you_clib supposed to be accessible from dlua?
03:57:20 <Zaba> greensnark, because it seems to work.. but it's clua!
04:07:51 <galehar> Keskitalo: I like the idea of a sewer with clinging monsters. If you think it would be more balanced with cockroach and geckos than spiders, I don't mind. Also, more clinging monsters = more use of the clinging code = more bug reports which is good.
04:08:33 <kilobyte> casmith789: you forgot about the freaking doubling of damage-per-time, which makes the brand better than anything but special cases like qblades of pain by a large margin
04:09:42 <kilobyte> casmith789: among brands with damage multiplier the max is holy wrath which is +75% against some enemies only.  Speed was +100% against everything.
04:10:22 <ekiM> I think clua is accessible from dlua but not vice versa.
04:10:58 <kilobyte> ekiM: anything else would be a bug
04:10:59 <Zaba> ekiM, seems like that's the case, yeah
04:11:13 <Zaba> which makes me wonder about the purpose of the partly overlapping functions, like you.in_branch
04:11:42 <ekiM> Keskitalo: Thanks!
04:48:42 -!- Pseudonut has quit [Remote host closed the connection]
05:02:09 -!- upsy has joined ##crawl-dev
05:02:41 <Keskitalo> duhhh, functions()
05:02:43 <Keskitalo> Zaba: Thanks
05:02:57 <Keskitalo> I'm not sure when I'll be able to push the fix, anyone who'd like to do that?
05:03:20 <Keskitalo> galehar: I don't know about balanced, but they're existing monsters and thematic for sewers
05:03:26 <Zaba> Keskitalo, I can push it
05:03:28 <Keskitalo> and make sense for clinging
05:03:31 <Keskitalo> Zaba: Many thanks!
05:04:05 <Zaba> do you have a patch?
05:05:12 <Keskitalo> ah, no.. the offending lines would be 46, 47, 53,53 and 55 in icecave.des
05:05:38 <due> Zaba: it would make sense to update most of the item table functions to be combined rather than separate
05:05:43 <due> but ... motivation :)
05:05:45 <Keskitalo> 53, 54 instead of 53, 53 of course
05:05:55 <Zaba> okay, I'll fix it
05:05:59 <Keskitalo> thank you
05:08:29 <CIA-45> 03zaba * rbc9b51bd2c8a 10/crawl-ref/source/dat/des/portals/icecave.des: icecave.des: Fix calls to you.branch and you.subdepth.
05:08:40 <CIA-45> 03zaba * r9c2531986618 10/crawl-ref/source/dat/des/builder/layout.des: Make the call to spotty_map guaranteed in layout_misc.
05:23:50 <ekiM> i - +1 robe of the Mutiny {rElec rPois}
05:23:57 <ekiM> The things found on D:3 while testing Lua...
05:40:07 -!- evilmike has quit []
05:44:54 -!- MakMorn has quit [Ping timeout: 255 seconds]
05:50:02 <greensnark> Keskitalo: Henzell reports oplace if available for portal vaults
05:50:05 <Henzell> greensnark: You have 1 message. Use !messages to read it.
05:50:09 <Keskitalo> It'd be very useful for monitoring Ice Cave activity if Gretell did so too!
05:50:09 <due> Ooooo, oplace!
05:50:09 <greensnark> Gretell is always a bit behind the curve because the code is completely different. I should split the announcement core out into a module that both share
05:50:09 <Keskitalo> Ah, okay.
05:50:10 <greensnark> !lm * cdo br.enter=icecv
05:50:10 <greensnark> Does that work
05:50:10 <Sequell> 1005. [2011-03-21] evilmike the Warrior (L15 HOGl) entered an Ice Cave on turn 28669. (D:13)
05:50:10 <greensnark> !lm * cdo br.enter=icecv s=oplace
05:50:11 <Sequell> 1005 milestones for * (cdo br.enter=icecv): 110x IceCv, 73x D:14, 66x D:16, 58x Lair:7, 52x Lair:6, 51x D:15, 49x D:18, 44x Vault:3, 43x D:17, 43x Vault:2, 30x Vault:1, 30x Vault:4, 27x D:20, 24x Vault:5, 23x D:19, 22x Vault:7, 22x Lair:8, 20x Vault:6, 20x Lair:1, 20x Elf:2, 18x D:11, 17x Elf:3, 16x Elf:4, 15x D:12, 15x Lair:4, 15x Lair:3, 14x Lair:2, 12x D:13, 11x Elf:5, 9x Elf:6, 9x Orc:2, 7x La...
05:50:49 <greensnark> Looks like the usual case of accumulating ice caves at the top of their depth range
05:50:55 <Keskitalo> yeah
05:51:07 <Keskitalo> Picking the depths at game start would be <3
05:51:08 <greensnark> Which may be what you want, dunno :)
05:51:19 <greensnark> Ah, so it isn't what you want :)
05:51:20 <Keskitalo> Not really, easiness is decided by depth
05:51:29 <Zaba> greensnark, could that picking of depths on startup be used for placing branch entries?
05:51:30 <Keskitalo> So, much more easy caves
05:51:40 <greensnark> Zaba: Yes
05:51:54 <Keskitalo> too little ice fiends
05:51:54 <Zaba> that'd be lovely
05:52:04 <greensnark> For anything that the game wants to decide about dungeon structure at a) start of game b) start of level building
05:52:07 <Zaba> although I believe startdepth of branches is used for some other things, aside from dungeon generation; how'd we handle that?
05:52:12 <greensnark> including temples, etc.
05:52:37 <greensnark> Well, it would be easy to make branches first-class structures accessible from Lua
05:52:40 <greensnark> branch defs are simple
05:53:01 <greensnark> Although bloody enum handling is less so, so moving all branch defs to Lua will have to wait :P
05:53:09 <ekiM> 'sup greensnark.
05:53:13 <greensnark> Modifying start depths of branches from Lua should be easy, though
05:53:20 <greensnark> ekiMaceous
05:53:35 <greensnark> Got that macro working?
05:53:42 <ekiM> Yus!
05:54:08 <greensnark> Yay
05:54:32 <ekiM> For Sif and for staff (with autowielding of a staff of channeling in inventory, with a prompt if cursed). It also prompts at each stage of hunger to check you want to keep going.
05:54:32 <Zaba> greensnark, so what do you think of having 'primary' and 'secondary' vault tags, with the latter being implicit if neither is specified? Then dungeon building would basically be, "pick vault by 'primary' tag, or build a layout.  Then build vaults with the 'secondary' tag."
05:55:11 <greensnark> Zaba: Sounds good
05:55:28 <Zaba> greensnark, the two immediately visible problems are: How to handle PLACE: and how many secondary vaults to build?
05:55:57 <greensnark> Well, when searching for primary vaults, you'd first look for vaults by PLACE, then random vaults by depth
05:56:11 <greensnark> When looking for secondary vaults, again by PLACE, CHANCE, then DEPTH
05:56:11 <ekiM> One teensy thing to pick your brains about, in http://pastebin.com/1uQZTdnp if I don't include line 123 then after the first iteration Crawl says it's not ready to process more keys yet.. even though that line isn't doing anything. I don't think I understand how to yield properly. :p
05:57:05 <greensnark> Ah, the mpr that you mentioned earlier
05:57:14 <greensnark> It looks like a Crawl bug, actually
05:58:10 <greensnark> Lua macros that yield between turns isn't exactly a common code path, so I wouldn't be surprised if it's just code rot
05:58:20 <due> MmmrottyMcRot.
05:59:44 <ekiM> Alright, thanks. I'll just spam blank lines for now, I guess!
05:59:56 -!- Zaba has quit [Read error: Operation timed out]
06:00:20 <Keskitalo> using COLOUR: . = blue will colour randomly spawned traps blue as well.. I was wondering, if it'd be tricky to do "KFEAT: . = floor colour:blue tile:frozen_floor" or something
06:00:26 -!- Zaba has joined ##crawl-dev
06:02:17 <greensnark> Keskitalo: But you want the traps to be blue when undiscovered, and change to their normal colour when discovered
06:02:32 <greensnark> So all that's needed is to clear the colour mask on the trap when it's discovered
06:11:31 <Keskitalo> ach, true
06:18:15 <CIA-45> 03greensnark * r035ddf802c84 10/crawl-ref/source/l_crawl.cc: Fix crawl.process_keys() refusing to run when called from DELAY_MACRO (ekiM).
06:29:30 -!- galehar_ has joined ##crawl-dev
06:48:20 -!- Textmode has quit [Ping timeout: 255 seconds]
06:55:08 -!- casmith789 has joined ##crawl-dev
06:56:40 -!- ais523 has quit [Read error: Operation timed out]
06:58:54 -!- ais523 has joined ##crawl-dev
07:05:01 -!- syllogism has joined ##crawl-dev
07:05:32 -!- edlothiol has joined ##crawl-dev
07:06:55 -!- galehar_ has quit [Remote host closed the connection]
07:07:26 -!- edlothiol has quit [Read error: Connection reset by peer]
07:07:34 -!- edlothiol has joined ##crawl-dev
07:09:58 -!- edlothiol has quit [Read error: Operation timed out]
07:13:59 -!- ais523 has quit [Read error: Connection reset by peer]
07:18:02 -!- ais523 has joined ##crawl-dev
07:33:59 -!- Mu_ has joined ##crawl-dev
08:01:00 -!- edlothiol has joined ##crawl-dev
08:07:02 -!- edlothiol has quit [Quit: edlothiol]
08:07:12 -!- edlothiol has joined ##crawl-dev
08:12:44 <Ashenzari> deletion of clouds on taking stairs is abusable (https://crawl.develz.org/mantis/view.php?id=3626) by KiloByte
08:30:26 <CIA-45> 03MarvinPA * r07b2554d9e5b 10/crawl-ref/source/ (ghost.cc monster.cc): Improve random pan lords
08:30:37 <CIA-45> 03MarvinPA * rf055b79ccaa9 10/crawl-ref/source/ (item_use.cc main.cc skills2.cc skills2.h): Remove misleading messages about weapon str/dex weighting
08:30:37 <CIA-45> 03MarvinPA * rb39dc91a6bb9 10/crawl-ref/source/ (item_use.cc item_use.h player-equip.cc player.h): Warn when equipping armour with a penalty caused by low strength
08:34:07 -!- Cryp71c has joined ##crawl-dev
08:35:55 -!- edlothiol has quit [Ping timeout: 252 seconds]
08:36:39 <Cryp71c> Rawr
08:36:44 <Cryp71c> !messages
08:36:45 <Henzell> (1/1) Cryp71c said (9h 39m 48s ago): https://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:species:lava_orc
08:41:12 <Cryp71c> Eronarn: admitedly, the status of lava orcs looks pretty good, from what I can see on that wiki. If for nothing else, it extends the new "temperature" mechanic, which is neat and may open new doors.
08:44:47 -!- edlothiol has joined ##crawl-dev
08:50:02 <Zaba> re
08:50:16 <Cryp71c> re?
08:51:28 -!- edlothiol has quit [Ping timeout: 252 seconds]
08:54:17 <Cryp71c> MarvinPA: btw, I know you said you didn't have much experience with the fight code, just trying to get a well-rounded idea of stuff to work into planning the new system.
08:54:38 <Cryp71c> MarvinPA: so if you have any ideas for effects that seem difficult to implement under the new system, add them to the wiki or let me know.
08:54:49 <MarvinPA> sure :)
08:55:06 <MarvinPA> i think the main one that springs to mind is an easier implementation of spines and similar effects, for both players and monsters
08:55:14 <Cryp71c> I'd rather have too many ideas to implement than too few (and miss out on a more clean implementation)
08:55:18 <MarvinPA> which you already mentioned i believe
08:58:20 -!- edlothiol has joined ##crawl-dev
08:59:38 -!- Twilight13 has quit [Ping timeout: 252 seconds]
09:01:31 -!- edlothiol has quit [Client Quit]
09:03:23 <kilobyte> Cryp71c: what about dual weapons?  The version planned for 4.1 but only stubbed was to: 1. allow using single-handed, 2. if wielded two-handed, you have a chance of two weaker attacks instead of one.
09:05:24 -!- edlothiol has joined ##crawl-dev
09:05:46 <kilobyte> we have such gems as dire flails that are utterly useless, and lajatangs which are supposed to be good but have low maxdelay (ie, little skill needed) as the only perk -- with worse damage than some 1-handers
09:06:07 <Cryp71c> kilobyte: I can add that to the list, that would be quite nice. I've also added parrying, which I think should apply (maybe even be its own skill?) if you're reasonable amount of both strength and dexterity (and would also apply for dual-wielders)
09:09:47 -!- edlothiol has quit [Ping timeout: 240 seconds]
09:12:26 <CIA-45> 03kilobyte * r0ba5a2a4ac73 10/crawl-ref/source/dat/des/variable/float.des: Don't try to place lemuel_elevator on first and last level of a branch.
09:12:37 <CIA-45> 03kilobyte * r3f8890cf5d21 10/crawl-ref/source/dat/des/builder/dummy.des: Give deep parts of the main dungeon better chances for a primary vault.
09:12:38 <CIA-45> 03kilobyte * r12f39ce99fd6 10/crawl-ref/source/dat/des/variable/traps.des: Don't block off branches with grates.
09:12:38 <CIA-45> 03kilobyte * r5cc9a1fdff16 10/crawl-ref/source/branch-data.h: Forbid rock from masquerading as stone/metal/slime.
09:12:39 <CIA-45> 03kilobyte * r7c140cb419c9 10/crawl-ref/source/ (command.cc main.cc wiz-dgn.cc wiz-dgn.h): A wizmode command (& ^R) to recreate the current level.
09:12:42 <CIA-45> 03kilobyte * r320bc3138a82 10/crawl-ref/source/dat/des/variable/float.des: Let vaults in Zot spawn more often.
09:12:42 <CIA-45> 03kilobyte * rf7c4fac53a8d 10/crawl-ref/source/dat/des/branches/hells.des: Remove some commented out junk.
09:12:43 <CIA-45> 03kilobyte * r37c64b2702b9 10/crawl-ref/source/dat/des/branches/zot.des: Make console Zot rock consistent with tiles (and not stony).
09:13:17 <MarvinPA> nice, more big vaults in late D?
09:13:54 <Zaba> kilobyte, um
09:14:01 <Zaba> there's a better way to do those dummies
09:14:17 -!- edlothiol has joined ##crawl-dev
09:14:27 <kilobyte> Zaba: you mean, the second layer?
09:14:27 <ais523> hmm, what's lemuel_elevator?
09:14:40 <kilobyte> ais523: <> in glass
09:15:26 <Zaba> kilobyte, you can have CHANCE: 0 : 0 (D:26-27), 0 : 5000 (D:24-25), 0 : 7500 (D:20-23), 0 : 8888
09:15:35 <ais523> ah, that one
09:15:46 <kilobyte> ah,  nice
09:15:47 <Zaba> kilobyte, no need to make a separate vault for each chance
09:16:07 -!- edlothiol has quit [Client Quit]
09:16:19 <Zaba> kilobyte, that also lets us merge the Swamp dummy vault into the generic one
09:16:48 <kilobyte> and the ugly second dummy
09:16:55 <Zaba> yeah
09:19:51 -!- ais523 has quit [Read error: Connection reset by peer]
09:21:13 -!- ais523 has joined ##crawl-dev
09:21:46 <kilobyte> should I replace the CHANCE: line, or will you do that?
09:29:29 -!- elliptic has joined ##crawl-dev
09:30:08 <Zaba> kilobyte, i will do it if you don't :>
09:32:02 -!- edlothiol has joined ##crawl-dev
09:36:22 <kilobyte> mapstat shows a lot of gems like this (just remember to disable forest_0.8 first)
09:37:24 <kilobyte> not sure what to do to Zot:5, the selection of regular vaults there is exceedingly narrow
09:38:57 <ais523> well, non-minivaults would have issues being placed, I imagine
09:39:13 <ais523> does the level need non-orb-chamber vaults? and if so, what sort of thing should they be?
09:40:31 <kilobyte> currently, there's just lemuel_zot_upstairs (a line of Zot traps you can at most blink over) and grate trap which I just enabled
09:41:10 <kilobyte> all other regular vaults are limited to Zot:*-4
09:41:39 <st_> that orb of fire lake vault can be on zot:5, it's great
09:41:52 <MarvinPA> and the electric golem cage
09:42:22 <MarvinPA> i used the orb of fire lake for my orb destruction, although i think it might've been on zot:4
09:42:28 <MarvinPA> !lm . type=orb.destroy
09:42:30 <Sequell> 1. [2010-08-05] MarvinPA the Backstabber (L20 SpEn) destroyed the Orb of Zot (Zot:5)
09:42:34 <MarvinPA> ahah nope
09:43:16 <Ashenzari> Xom's Almanac of @player_death@ (https://crawl.develz.org/mantis/view.php?id=3627) by Ragdoll
09:43:25 <kilobyte> lemuel_lake_of_fire is a mini vault
09:43:52 <kilobyte> primary_mini_dummy (67.00%), mini_dummy (19.55%),
09:43:52 <kilobyte> lemuel_baited_zot_trap (4.56%), lemuel_flame_loot_1 (2.31%),
09:43:52 <kilobyte> lemuel_lake_of_fire (2.26%), lemuel_golem_globe (2.21%), nrook_zot_tub (2.11%)
09:44:23 <ais523> hmm, and why /wouldn't/ Xom gift books with metasyntactic variables in them on occasion?
09:44:26 <CIA-45> 03MarvinPA * r3e5ff7a7dd9f 10/crawl-ref/source/religion.cc: Don't let Yred gift Eidolons anymore
09:44:30 <st_> zot tub, best vault.
09:44:40 <kilobyte> don't doubt Xom
09:45:03 <ais523> someone go and add Xom's Tome on Insert Name Here to the random bookname lists
09:45:56 -!- TGQiglaf has joined ##crawl-dev
09:46:15 <TGQiglaf> so crusader's name is seen as misleading, right?
09:46:24 <TGQiglaf> imo it should be changed to "man-at-charms"
09:46:53 <ais523> TGQiglaf: that's a NetHack-quality pun
09:46:55 <ais523> worse, actually
09:47:18 <TGQiglaf> if nethack used that pun I would be playing it right now
09:47:24 <ekiM> What are you talking about ais523.
09:47:51 <ais523> ekiM: "man-at-charms"
09:53:51 <galehar> TGQiglaf: beware. Somebody probably added it to slash'em.
09:54:02 * bhaak creates a "delete puns from nethack" facebook group
09:54:48 <ais523> does Crawl have any puns?
09:55:01 <ais523> and is keeping it pun-free a deliberate design philosophy?
09:55:21 <bhaak> the name is a pun on its own compilation
09:55:27 <Adeon> what kind of self-respecting game doesn't have puns?
09:55:28 <TGQiglaf> MSH is sort of a pun
09:55:42 <TGQiglaf> it's also a terrible pop culture reference (hey guys this spell has the same name as a song)
09:56:33 -!- TGQiglaf has quit [Quit: Page closed]
09:56:54 <ekiM> Crawl has puns.
09:57:11 <bhaak> but you need to be at least as old as dpeg to know that MSH is a pun
09:59:15 <Cryp71c> how old's dpeg?
09:59:33 <greensnark> Over 9000 years old
09:59:50 <greensnark> He's really a bristlecone pine in disguise
10:00:01 <bhaak> when he first played nethack he liked it! that's how old he is!
10:00:20 <ais523> bhaak: in that case I'm that old, too
10:00:40 <bhaak> ais523: I'm not surprised :-)
10:03:00 <Eronarn> < ais523> does Crawl have any puns?
10:03:02 <Eronarn> boring beetle
10:03:04 <Eronarn> chief of staff
10:03:32 <ais523> I didn't realise "boring beetle" was a pun, but I'll give you the other one
10:03:44 <greensnark> boring beetle <3
10:04:20 <ais523> "You hear a grinding noise. You're getting bored of this"?
10:04:30 <kilobyte> Zaba: what's the point in Swamp being excepted from regular vault dummies if there are no regular vaults there at all?
10:05:55 <Zaba> kilobyte, no idea
10:06:10 <Zaba> greensnark, any idea? :P
10:06:38 <greensnark> There used to be some swamp vaults, dunno
10:06:45 <greensnark> I don't remember why :P
10:07:04 <greensnark> Does swamp have its own dummy or something
10:07:13 <kilobyte> apparently no
10:07:13 <Zaba> kilobyte, that '!Swamp' in primary_dummy can be removed, I guess
10:07:17 <greensnark> Wretched rsync takes hours just to fetch ttyrec file list from cao
10:07:34 <kilobyte> except for dummy_balancer_other which hits everything but D
10:07:43 <Eronarn> there was an awesome vault i got in swamp once that was just a pillar of rock with a few thousand gold next to it in a single pile
10:07:52 <kilobyte> (that's moot for Swamp because of no regular vaults)
10:07:57 <greensnark> !players
10:07:58 <Henzell> 21 players: hxy, chowder, snoopy, Stossel, dazguss, nuc, russell, mindloss, moramartin, rizdon7777, ledneh, tortfeasor, VZ, nerdbeard, silvous, Arafel, Clouseau, qoon, cosinusvux, MrWerewolf, qubitsu
10:08:04 <greensnark> Ack, why are so many players on cao :P
10:08:12 <Zaba> kilobyte, ...wait, there might be vaults in float.des/etc. that can go in Swamp
10:08:24 <Ashenzari> Alter the new Speed Brand text (https://crawl.develz.org/mantis/view.php?id=3628) by XuaXua
10:08:28 <kilobyte> mapstat shows none
10:08:44 <Zaba> kilobyte, ah, only minivaults
10:09:49 <kilobyte> if you don't have updated mapstat, http://angband.pl/tmp/mapgen.log (since it takes ~20 mins to generate)
10:10:14 <greensnark> Looks like all minvaults are restricted to a very few branches
10:10:54 <greensnark> So only those 2-3 minivaults in swamp.des, I guess
10:11:25 <Zaba> mapstat accounts for 'extra' vaults, right?
10:11:37 -!- edlothiol has quit [Ping timeout: 252 seconds]
10:12:23 <Eronarn> kilobyte: wrt dual weapons: it would make sense for them to have good weapon effects, but worse damage than two-handers, and only get those effects when wielded with two hands
10:12:26 <greensnark> mapstat builds a bunch of levels and sees what vaults are used. That uses the regular dungeon builder so it finds extras, etc.
10:12:39 <kilobyte> vaults that are _not_ restricted to an explicit list of branches cause problems...  For example, there was a crasher bug that I kludged around by making it bail out after thousands of tries (don't remember the details).
10:12:40 <greensnark> mapstat also tries to calculate the odds of each vault at each level, which is code that may bitrot
10:13:31 -!- edlothiol has joined ##crawl-dev
10:15:02 <Napkin> oh, "speed" branded weapon do less damage now?
10:15:10 <Napkin> moin moin!
10:15:36 <kilobyte> Eronarn: 2h staff damage: common 7, rare 14.  Axe damage: common 17, rare 20.  That's your worse damage, already there.
10:16:11 <kilobyte> Napkin: 80% of what they did before.
10:16:38 <Napkin> is that reflected in the info screen?
10:17:13 <kilobyte> ie, to use common numbers: vorpal +12.5%, flaming/freezing +25%, speed +60%, holy +75%
10:17:13 <Napkin> *description screen of the weapon
10:17:36 <MarvinPA> elliptic was saying yesterday that since it's applied before AC, it makes things like sabres of speed significantly worse without having as much of an impact on the crazy randarts like exec axes of speed
10:17:37 <kilobyte> (2*80%)
10:17:53 <kilobyte> so, do you think it's an overnerf?
10:18:08 <Eronarn> kilobyte: well, you can't directly compare those two because the staffs are much faster
10:18:09 <MarvinPA> i'm not entirely sure since i don't know exactly how it all works, but perhaps
10:18:19 <kilobyte> if so, please revert or reduce.  We don't have time to balance it if it's contentious.
10:18:42 <Eronarn> better would be comparing it to, say, a broad axe
10:18:42 <MarvinPA> true, yeah
10:18:45 <Eronarn> ??broad axe
10:18:45 <Henzell> broad axe[1/1]: Hand and a Half Axe (Damage 14, Acc -2, Delay 160%).
10:18:47 <Eronarn> ??lajatang
10:18:48 <Henzell> lajatang[1/1]: Big brother to the quarterstaff. 14 damage, -3 accuracy, 140 speed, double handed. Slashing. Double-handed means extreme penalties for using with shields!
10:19:12 <kilobyte> Eronarn: broad axe is 1-handed
10:19:15 <Napkin> could the true damage and delay be shown on speed weapons?
10:19:21 <Eronarn> no, it's 1.5 handed
10:19:31 <Napkin> if that's not the case already..
10:19:56 <Eronarn> i forget exactly how the speed mods work for shields for 1.5/double handers, but broad axe is a lot more comparable to lajatang than battleaxe, regardless
10:20:16 <kilobyte> Eronarn: with enough skill, the penalty goes away, and the current fad is to use the smallest shield possible
10:20:20 <Eronarn> it is definitely an issue that the top-tier staff weapon caps out so early though
10:20:46 <Eronarn> i just don't think lajatangs are bad per se, they're quite good early on, they just don't hold up
10:20:52 <Eronarn> it'd be nice to get several new staff base types
10:21:09 <kilobyte> Eronarn: an idea: staff sling (fustibale)
10:21:17 <Eronarn> that'd be cute
10:21:25 <Eronarn> there's also demonic sceptre currently mostly untapped
10:21:40 <Eronarn> iron-shod staves
10:21:44 <Eronarn> halfstaff, longstaff
10:22:13 <Eronarn> and if lajatang itself counts as a staff rather than a polearm, there are other exotic things that could be used
10:22:15 <kilobyte> it had better range than regular slings but was significantly slower; it could serve as a melee weapon too
10:22:23 <Eronarn> like a sodegarami
10:22:58 <kilobyte> if we s/better range/more damage/, all of that is well-defined for Crawl
10:23:12 <Eronarn> yeah
10:23:16 <Eronarn> though it'll break ranged combat even further, heh
10:24:24 <Eronarn> might be nice to get a demon axe in there, too, just for symmetry's sake
10:24:38 <kilobyte> why?  It would be weaker both to slings and to staves.  The former because it's damage-to-time what counts, the latter because the slingy part interferes with melee.
10:24:47 <kilobyte> ??obsidian axe
10:24:48 <Henzell> obsidian axe[1/1]: A +12, +15 broad axe of chopping that mesmerises you whenever a monster is in sight. +3 Str, SInv, always recurses, sometimes summons a friendly demon (2, 3 or 4) when you kill stuff. Also cures confusion when you're mesmerised.
10:25:01 <Eronarn> i mean as a base type
10:25:01 <MarvinPA> weapon classes don't need to be symmetrical :P
10:25:32 <kilobyte> having "demon foo" for everything would be boring
10:25:33 <ais523> are slings broken atm?
10:25:47 <Eronarn> kilobyte: ranged combat is... very strange, and hard to calculate damage for
10:25:56 <MarvinPA> axes being more heavily skewed towards two-handers seems reasonable, too - since weapon types are pretty poorly differentiated at the moment it's at least something that makes a difference
10:25:56 <Eronarn> upping base damage could definitely make it even more OP
10:26:00 <ais523> also, you could simulate better range by adding a slight piercing effect, allowing it to hit the second monster in line of fire as well as the first
10:26:13 <Eronarn> MarvinPA: make executioner's axe a demon weapon imo :P
10:26:50 <kilobyte> no one uses two-handers these days
10:27:02 <st_> already is, executioners are demons :)
10:27:10 <MarvinPA> well, non-casters do
10:27:16 <ais523> what's mesmerisation (e.g. from the obsidian axe) defined with reference to?
10:27:17 <kilobyte> st_: take a glance at their tile and description
10:27:19 <Eronarn> st_: yes, there's a pan vault that makes use of the pun
10:27:32 <Eronarn> ais523: any enemy presumably
10:27:44 <Eronarn> maybe nearest one?
10:27:49 <Eronarn> who knows!!
10:29:00 -!- Twilight13 has joined ##crawl-dev
10:29:28 <kilobyte> Eronarn: yeah, I slipped it through dpeg inside a bigger patch before we had the git dev explosion
10:30:04 <kilobyte> there's that proposed unique executioner...
10:30:07 <st_> kilobyte: we need executioner's scythes
10:30:18 <Eronarn> i don't think executioners actually need to use exe axes
10:30:21 <Eronarn> kind of like:
10:30:25 <Eronarn> ??spriggans knife
10:30:28 <Henzell> the spriggans knife[1/1]: This knife was made by Spriggans, or for Spriggans, or possibly from Spriggans. Anyway, it's in some way associated with those fey folk. +4EV, +4Dex, It increases your resistance to enchantments. It makes you much more stealthy.
10:31:44 <st_> the new ! toggle for quotes/descriptions is nice
10:32:09 <upsy> a scythe is an execution weapon?
10:32:15 <Eronarn> no
10:32:24 <Eronarn> a scythe is a reaping non-weapon
10:33:01 <st_> executioners are made of them apparently
10:33:12 <Eronarn> oh, here's an idea
10:33:37 <Eronarn> give the temp-death-channel effect to the reaping brand (so it makes a ghostly thing from them, but still leaves a corpse)
10:33:43 <kilobyte> http://gitorious.org/crawl/crawl/blobs/master/crawl-ref/source/rltiles/dc-mon/demons/executioner.png
10:33:58 <kilobyte> doesn't look like a creature who could possibly wield a weapon
10:34:01 <Eronarn> and let it work on summons (if reaping kills them, their body poofs, but their spirit still remains for the duration of the summon)
10:34:10 <upsy> i thought they used weapons
10:34:15 <ais523> is this an attempt to buff reaping?
10:34:32 <ekiM> I thought they were made out of weapons.
10:34:33 <Eronarn> then give reapers reaping on their attack, in addition to their weapon brand
10:35:52 <kilobyte> but just look at this sweet guy: http://gitorious.org/crawl/crawl/blobs/master/crawl-ref/source/rltiles/UNUSED/monsters/ignacio.png
10:36:04 <Eronarn> ais523: well, i think it'd be more interesting than reaping, at least
10:36:09 <Eronarn> not sure how much of a buff it is
10:36:23 <ais523> it seems like an uninteresting effect in the hands of monsters
10:36:28 <ais523> but I suppose regular reaping is too
10:36:49 <kilobyte> what exactly can monsters reap?
10:36:55 <Eronarn> kilobyte: beogh
10:37:01 <kilobyte> yeah, and nothing else
10:37:09 <Eronarn> ais523: if it worked on summons - clearly cannot happen with zombies, but could wiht spirits - it might come up more often
10:37:10 <upsy> was that tile ever used or do people just make them for things that don't exist
10:37:22 <ais523> do summoners really need a nerf?
10:37:30 <upsy> ??ignacio
10:37:32 <Henzell> I don't have a page labeled ignacio in my learndb.
10:37:35 <ais523> !lg * s=char
10:38:02 <ais523> what's popular is probably a good guide to what's good, as on average, players will play what's perceived to be easy, unless they're looking for a challenge
10:38:05 <Eronarn> it's a buff to reapers, not a nerf to summoners specifically
10:38:08 <kilobyte> upsy: it's a proposed unique, however, the tile was posted on a hosting site I know to be unreliable so I copied it in to be safe
10:38:10 <Eronarn> reapers are wimps
10:38:13 <Sequell> 960040 games for *: 45941x DEWn, 34088x MDFi, 22632x SpEn, 21573x DSCK, 17324x DEWz, 15707x MfCr, 15168x SETm, 14272x DECj, 12409x MiBe, 11984x DEFE, 11013x HOFi, 10894x DETh, 10824x HOPr, 10581x DSFi, 10564x MuNe, 10473x HEWz, 10441x TrBe, 10285x DEEn, 10002x DSWn, 9001x SpAs, 8686x DESt, 8108x DEAr, 7900x MuWz, 7898x HECr, 6728x SpSt, 6459x MDBe, 6301x MDPa, 6174x DSCr, 6079x DSNe, 5987x MiFi, 5...
10:38:20 <MarvinPA> summoners are good but tedious, mostly
10:38:30 <ais523> well, it's a monster buff that only affects one sort of character type
10:38:35 <ais523> also, DEWn? seriously?
10:38:45 <MarvinPA> mega startscumming
10:38:51 <upsy> !lg * s=char name!~~sebi
10:39:16 <Sequell> 870442 games for * (name!~~sebi): 34087x MDFi, 22632x SpEn, 21573x DSCK, 17317x DEWz, 15707x MfCr, 15114x SETm, 14272x DECj, 12409x MiBe, 11984x DEFE, 11013x HOFi, 10824x HOPr, 10581x DSFi, 10564x MuNe, 10472x HEWz, 10441x TrBe, 10001x DSWn, 9001x SpAs, 7900x MuWz, 7888x HECr, 6725x SpSt, 6459x MDBe, 6301x MDPa, 6174x DSCr, 6079x DSNe, 5987x MiFi, 5974x DSBe, 5636x HEPa, 5264x DSGl, 5026x HuFi, 49...
10:39:36 <Eronarn> ais523: heck, it'd be a buff if you extended the effect to death channel
10:40:01 <Eronarn> summoners using it could rely on each of their living summons creating a new spawn when dying
10:40:03 <MarvinPA> summoners don't cast death channel usually :P
10:40:17 <ais523> necro/summoning are a little redundant
10:40:21 <ais523> which is arguably bad
10:40:35 * kilobyte haunts ais523.
10:40:42 <ekiM> Is "Rox"anne a pun?
10:40:48 <ais523> ekiM: oh right, it is
10:40:56 <kilobyte> ekiM: eh, why?
10:41:01 -!- valrus has joined ##crawl-dev
10:41:04 <ekiM> kilobyte: Rocks, earth mage.
10:41:06 <ais523> not only that, but the exact same pun was made in Pok茅mon third generation
10:41:14 <kilobyte> it's a quite popular name
10:41:18 <ais523> (you can tell it's a pun there, because the Rock gym leader has been an awful pun in every single generation)
10:41:19 <Eronarn> @??chuck
10:41:19 <Gretell> Chuck (16C) | Speed: 10 | HD: 18 | Health: 120 | AC/EV: 14/2 | Damage: 45 | Res: 06magic(96), 12drown | Chunks: 07contaminated | XP: 3023.
10:41:37 <Eronarn> @??iron giant
10:41:38 <Gretell> the iron giant (10C) | Speed: 10 | HD: 22 | Health: 220 | AC/EV: 18/2 | Damage: 60 | Flags: !sil | Res: 06magic(117), 05fire, 02cold, 03poison, 12drown | Chunks: 07contaminated | XP: 7793 | Sp: iron shot (3d37), iron elementals.
10:41:53 <Eronarn> irony elementals
10:42:53 <Zaba> @??stone giant
10:42:53 <Gretell> stone giant (15C) | Speed: 10 | HD: 16 | Health: 65-108 | AC/EV: 12/2 | Damage: 45 | Res: 06magic(85), 12drown | Chunks: 07contaminated | XP: 2026.
10:54:22 -!- ais523 has quit [Ping timeout: 252 seconds]
10:54:28 -!- ais523 has joined ##crawl-dev
10:57:24 -!- Zaba has quit [Ping timeout: 246 seconds]
11:06:06 -!- ais523 has quit [Read error: Connection reset by peer]
11:06:14 -!- Zaba has joined ##crawl-dev
11:07:54 -!- ais523 has joined ##crawl-dev
11:09:21 -!- valrus has quit [Remote host closed the connection]
11:23:55 -!- ais523_ has joined ##crawl-dev
11:25:41 -!- ais523 has quit [Ping timeout: 252 seconds]
11:26:09 <Eronarn> 12:25 < ekiM> New Earth title: Rockstar.
11:26:12 -!- ais523_ is now known as ais523
11:26:56 -!- Twilight13 has quit [Ping timeout: 250 seconds]
11:28:11 -!- Twilight-1 has joined ##crawl-dev
11:28:35 <Cryp71c> Alrighty, what have I missed?
11:33:28 <Eronarn> Cryp71c: you should make a wiki page for the fight.cc thing or something
11:33:41 <MarvinPA> there is one
11:33:44 <Eronarn> maybe a flowchart, if you have access to one of those nifty code analyzer things
11:33:52 <MarvinPA> fight rewrite, i think
11:34:36 <Eronarn> oh, good
11:35:06 <Cryp71c> Eronarn: I already did :)
11:35:33 <Eronarn> Cryp71c: looks pretty good
11:35:50 <Eronarn> one major thought of mine is that there are some major issues when you 'jump' from one scope to another
11:36:03 <Eronarn> like: what happened in one attack affecting what happens in the next attack
11:36:03 <Cryp71c> I'm about to create a class method list of attacker / defender methods as they are now and then another for what I want them to look like post-rewrite.
11:36:17 <Eronarn> or what happens in hurt() being affected by what happened during the attack that caused the hurt()
11:36:18 <Cryp71c> Eronarn: specific example of an effect that does that?
11:36:35 <Eronarn> Cryp71c: ok, for my trample patch (this will take a few lines)
11:36:46 <Cryp71c> > 3 lines, pastebin pl0x
11:37:08 <Eronarn> right now, trample kicks in if a) they have a valid trample location b) you hit them c) they are alive after hurt() gets called
11:37:25 <Cryp71c> This is for player trample, or monster trample?
11:37:30 <Eronarn> i wanted to change this so that c) was not a factor: they would be trampled even if they were killed during the attack (with the status quo, if a trampler kills something, it stays put)
11:37:31 <Cryp71c> (I thought monster trample already existed)
11:37:34 <Eronarn> both
11:37:38 <Eronarn> player trample exists, for dragonform
11:37:55 <ais523> it'd make sense for tramples to not move the corpse, really
11:37:58 <Eronarn> this is a patch to modify trmaple behavior
11:38:07 <Eronarn> ais523: it doesn't, in mine :)
11:38:10 <ais523> crushing something underfoot is more interesting then pushing them back in such a way they drop dead
11:38:22 <Eronarn> but the trampler moves into the square the corpse was in
11:38:41 <ais523> ah, that's also correct
11:38:45 <Eronarn> also lets you trample untrampleable things, like statues, if you kill them during your attack
11:38:54 <ais523> for monsters at least, IIRC there was some debate about players
11:39:02 -!- edlothiol has quit [Ping timeout: 255 seconds]
11:39:06 <Eronarn> the idea is: trample = an attack where you move into their square, and you only bounce back to yours if there's no room in that square for you at the end of your attack
11:39:13 <Eronarn> room is generated by either pushing them out or killing them
11:39:27 <Eronarn> anyways
11:39:48 <Eronarn> this proved to be very difficult because the monster was already dead after hurt()
11:40:27 <Eronarn> hurt() is not in melee_attack so it doesn't have the same class variables describing the nature of the current attack
11:40:57 <Eronarn> there's something similar with MF_EXPLODE_KILL; it's a flag that has to be set on the monster before hurt() gets called, to pass in that information
11:41:41 <Eronarn> ideally, there would be a unified combat framework that all damage occurs in
11:42:04 <Cryp71c> As a related note, hurt should either be a method of attacker/defender, or a method of the attack (or both). I think right now its just a method of the attacker/defender?
11:42:13 <Eronarn> i think also we should consider having a queue, of sorts, rather than applying effects all-at-once
11:42:25 <Eronarn> Cryp71c: remember, hurt() gets used everywhere stuff gets hurt
11:42:40 <Eronarn> it's unrelated to fight.cc
11:43:10 <Cryp71c> Well, if its a method of actor, it should inherit downwards to attacker/defender.
11:43:18 <Cryp71c> But still be universally available for other situations.
11:43:36 <Eronarn> Cryp71c: it's available, but attacker/defender don't carry melee_attack
11:43:46 <Cryp71c> correct
11:43:56 <Eronarn> it's not an issue of it being unavailable, it's an issue of it being poorly integrated with other information one might need to actually properly process what happens when something gets hurt
11:44:27 <Eronarn> having one central point that all HP damage goes through is a good idea, but it needs to be far more flexible
11:45:15 <ais523> the way NetHack's source does it, IIRC, is for combat functions to return an indication of if the monster they refer to is still alive
11:45:21 <ais523> and then the caller has to handle death effects
11:45:30 <ais523> but I'm not sure that works too well either
11:45:32 <Cryp71c> What about having "attack" be a member variable of the actor class that is changed for each attack that occurs as necessary
11:45:53 <ais523> (that is, death effects depending on the attack, rather than just on the monster)
11:45:56 <Cryp71c> (where melee_attack and ranged_attack inherit from "attack")
11:46:07 <Eronarn> Cryp71c: here's what i'd like to see:
11:46:09 <ais523> ouch, that's basically passing params in global variables, just disguised
11:46:37 <Cryp71c> ais523: thats all class-based accessibility is, if you take that perspective.
11:46:55 <Cryp71c> Imo (at least at first glance) it doesn't seem that terrible.
11:47:21 <ais523> normally you can work out how sane something like that is by considering its effect on parallelism
11:47:34 <ais523> e.g., what if you want the same actor to do two attack simultaneously on different processors?
11:47:42 <ais523> ofc, you don't, but it serves as a good sanity check
11:48:23 <Eronarn> actor class has an 'action' field with a pointer to an 'action' class. 'action' is like melee_attack but more generalizeable. it can contain multiple 'subactions'. 'action' gets called with some initializing information, such as the target (the 'defender'). it then generates each subaction in turn,
11:48:38 <Eronarn> like how it currently calls the attack function multiple times if something makes multiple attacks
11:48:43 <ais523> oh, I see
11:48:50 <ais523> I assumed "actor" was the player or monster performing the actoin
11:48:51 <ais523> *action
11:48:55 <Eronarn> subaction information is *stored*, however, so that in subaction 3 you have all the variables from 1 and 2 available
11:48:55 <ais523> I think it makes sense if that's what it's doing
11:49:21 <Eronarn> thus, you can tell if something was trampled on a previous attack, and abort to attack something else. or whatever
11:49:23 <greensnark> actor is currently independent melee_attack, and it should remain that way
11:49:35 <greensnark> ais523 is right
11:50:04 <ais523> it's so hard making general comments about coding without knowing if they apply in the specific case
11:50:15 <greensnark> You can have the concept of a current action if you like, but don't make it a member of the actor class
11:50:48 <greensnark> ais523: I like your example of how not being parallelizable is a good example of code smell
11:51:02 <Cryp71c> Eronarn: an action stack, essentially, such that you can continue to push onto the stack and access the previous list of actions to determine a pattern.
11:51:29 <Eronarn> Cryp71c: yes
11:51:34 <ais523> greensnark: it's probably the simplest test of whether something is more global than it should be
11:51:40 <greensnark> Yep
11:51:53 -!- ais523 has quit [Read error: Connection reset by peer]
11:52:11 <Cryp71c> Eronarn: I think this action stack, if it directly ties into attacks (the melee_attack / ranged_attack) directly contradicts what greensnark / ais are saying, correct?
11:52:17 -!- ais523 has joined ##crawl-dev
11:52:30 <greensnark> I'm saying don't stuff this action instance or stack into the actor class
11:52:35 <Eronarn> Cryp71c: what they're saying is to not have it tied in with actor
11:53:50 <Eronarn> i'd have a pointer to an actor's action, or a defender's being-acted-on, in actor - but i'm also not a good coder, so that doesn't mean it's right
11:54:26 <ais523> I think it's possibly backwards; putting a pointer to the attacker and defender in the action would make more sense
11:54:29 <greensnark> actor shouldn't have members for this kind of thing at all
11:54:34 <ais523> (although in C++, you have issues of destructor order)
11:54:41 <greensnark> What ais523 said
11:54:42 <ais523> (and I'm not sure how Crawl deals with those)
11:54:57 <ais523> are monsters deallocated upon death? or later?
11:55:00 <greensnark> melee_attack currently refers to the attacker and defender actors, your hypothetical action class would do the same
11:55:09 <greensnark> ais523: monsters are not deallocated at all
11:55:20 <greensnark> Crawl has a fixed array of monster instances; they're reused, never destroyed
11:55:30 <ais523> err, right
11:55:37 <ais523> I should have guessed it was something insane like that
11:55:49 <ais523> I feel for you, inheriting code that works like that
11:55:52 <greensnark> Actually, it's pretty sane to have a monster limit
11:55:59 <Cryp71c> Pointing to attacker and defender within the action would make stringing a series of actions by a player attacking different monsters rather cumbersome
11:56:10 <ais523> (fwiw, NetHack's solution is to replace monsters with placeholders until the end of the turn, then clear them all up at once)
11:56:19 <ais523> and I agree that monster limits are sane
11:56:37 <greensnark> Once you've accepted that monster limits are sane, how Crawl stores monsters is hardly insane :P
11:56:52 <greensnark> Somewhat wasteful, but not incredibly so
11:57:00 <ais523> well, I suppose it's the choice between being forced to have a monster limit, and having one through choice
11:57:08 <Cryp71c> greensnark: given the desire to track an actor's movements over the last 2 or 3 turns so as to determine effects like "Charging", how would you go about storing that action stack?
11:57:35 <Cryp71c> You can't store it in relation to an attack, since there isn't one yet.
11:57:41 <ais523> also, hmm, I wonder if there are bugs if you're very near the limit, relating to overwriting one monster with another while there are still pointers to it?
11:57:44 <ais523> I'll have to look into that
11:57:58 <greensnark> There are probably edge cases near the limit, but not from overwriting monsters
11:58:21 <greensnark> There've been occasional bugs from code trying to create monsters and not bothering to check if they got the monster they ordered, etc.
11:58:35 <Eronarn> 12:54 < ais523> I think it's possibly backwards; putting a pointer to the attacker and defender in the action would make more sense
11:58:44 <Eronarn> that should be the case too
11:59:03 <Cryp71c> Eronarn: that should be the case for what?
11:59:13 <Eronarn> right now, if you're inside the attack, you know who the attacker and defender are - that's good
12:00:24 <Eronarn> the issue is passing the attacker off to other functions which have no idea that it's an attacker. granted, this is actually proper for an object, but it's also quite limiting in a codebase like crawl where the structure isn't set up to handle finding that out in alternative ways
12:00:26 -!- edlothiol has joined ##crawl-dev
12:01:29 <ais523> "it's an attacker" doesn't really make sense, though, to be relevant in a function that isn't to do with attacking
12:01:35 <greensnark> Eronarn: If you're calling a function and giving it an actor and then the function tries to turn around and see if the actor's involved in an attack, then the function should probably have been given the attack in the first place
12:01:37 <ais523> what if two monsters attack each other, which one's the attacker?
12:03:03 <greensnark> What is the sound of one hand clapping
12:03:06 <Cryp71c> greensnark: you mean as a parameter, or that the function should've been a method of the attack's class?
12:03:17 -!- ais523 has quit [Remote host closed the connection]
12:03:17 <Eronarn> ais523: consider the case of a monster attacking another monster, and then the second monster parries as a full attack requiring to-hit rolls and such - that's two separate actions
12:03:50 <Eronarn> greensnark: well, yes
12:04:03 <Eronarn> the issue is that there's a lot of functions where knowing that would be beneficial
12:04:29 <CIA-45> 03kilobyte * rb4b87243ef28 10/crawl-ref/source/ (artefact.cc artefact.h spl-book.cc): Fix placeholders in Xom's book gift names.
12:04:41 <Eronarn> and they can't necessarily just be moved into the 'attack' class, since e.g. hurt() is used outside of attacks
12:04:55 <Eronarn> and it'd be a bear to pass in that as an optional parameter in all of the relevant functions
12:05:04 -!- edlothiol has quit [Ping timeout: 250 seconds]
12:06:31 <greensnark> Well, if you're doing a fight.cc rewrite, a few other functions are going to attract rewrites as well
12:06:37 <Eronarn> 'a few', heh
12:06:39 <greensnark> Including hurt()
12:07:10 <Eronarn> yeah, i'm just looking at this from a perspective of 'how can we avoid rewriting every spell in crawl' :P
12:08:04 <Eronarn> hm... is C++ smart enough to know the difference between this.hurt() (inside of an attack) and hurt() if there's attack::hurt() and hurt()?
12:08:09 <ekiM> If you-rewrite them all you can please take the opportunity to make their damage be generally of the form XdY!
12:08:21 <greensnark> XdY+Z
12:08:37 <greensnark> Yes, C++ allows you to specify the function you want with the scope resolution operator
12:09:15 <Eronarn> that'd be one way to go about it. keep hurt() the way it is, but write attack::hurt(), and gradually try and make more stuff generate attacks and then call attack.hurt()
12:09:18 <greensnark> Anyway, good this fight.cc rewrite is on its own branch :)
12:09:55 <Eronarn> or maybe make hurt() a wrapper for new blank attack, fill in as much stuff as it can with the poor amount of data available, and then attack::hurt()
12:10:17 <Cryp71c> greensnark: :) I'd like to make sure it becomes more than just its own branch, so you're continued patience with my inexperience with the combat mechanics would be <3
12:10:43 <greensnark> Eronarn: hurt() already takes a bunch of parameters, just create an attack class that can be initialized with just those parameters
12:11:24 <greensnark> Cryp71c: your/you're fail :P
12:12:28 <Cryp71c> greensnark: indeed, It happens frequently.
12:12:30 <Eronarn> oh, one thing i'd like to see: don't actually kill monsters until an action is completely done
12:13:10 <Eronarn> remove them from the grid, give XP, process death events, whatever - but keep the rest of their info around for a bit
12:13:49 <greensnark> That should be easy enough
12:14:05 <Eronarn> yes, and it'd make several things less of a hassle
12:14:27 <greensnark> Looking at hurt(), it should probably become a member of the hypothetical attack class anyway
12:14:45 <Eronarn> greensnark: it's called for spells and such too though
12:14:50 <greensnark> It's doing a whole bunch of things that shouldn't be part of the actor interface
12:14:58 -!- edlothiol has joined ##crawl-dev
12:15:06 <Eronarn> which is of course not insurmountable, but it does add some extra quirks
12:15:10 <ekiM> Just put everything in stuff.cc.
12:15:46 <greensnark> Eronarn: That's not a problem: it's a simple function call with a few parameters, so you can create a simple attack object for those params
12:16:07 <greensnark> Monster creation used to use a whole bunch of functions each taking ~10 parameters
12:16:10 <Eronarn> right, that's what i meant by having hurt() (the current one) become a wrapper for it - to generate such an object
12:16:26 <greensnark> Before mgen_data
12:16:45 <Eronarn> anyhow, I actually have a job in real life. time to go do it
12:17:02 <greensnark> Crazy American timezones :P
12:17:17 <Eronarn> it's actually 1:15 here, I get to set my own hours though :)
12:17:46 <greensnark> I'm just waiting for my cao ttyrec rsync to finish so I can free up space and go to bed
12:18:00 -!- edlothiol has quit [Client Quit]
12:18:08 -!- edlothiol has joined ##crawl-dev
12:18:10 <greensnark> !players
12:18:12 <Henzell> 21 players: chowder, dazguss, Tenaya, Stossel, AzureAngel, theDC, firemonkey, perf, russell, Clouseau, mindloss, moramartin, Zeor, MrWerewolf, nerdbeard, Arafel, Tijol, dyzzy, qoon, qubitsu, Witch
12:18:18 <greensnark> I hadn't realsed so many people still play 0.7
12:18:31 <greensnark> cao had 1.3G free this morning, it's already down to 570M
12:18:34 <Cryp71c> greensnark: so a new attack class is obviously part of this new system, I think it'd be beneficial to subclass it out to melee_attack, ranged_attack, and magic_attack (in an ideal world) with overloadable methods as necessary.
12:19:13 <greensnark> Cryp71c: That doesn't sound unreasonable :)
12:19:17 <Cryp71c> Does that make sense, based on your knowledge of the current condition of attacks?
12:19:20 <greensnark> But yeah, keep things simple to start with
12:19:25 <Cryp71c> Yeah.
12:19:32 <greensnark> I'd suggest not trying to add an inheritance hierarchy at this point
12:20:07 <Cryp71c> greensnark: its hard not to XD, each thing the rewrite should support seems to imply that the rewrite should start at a lower level.
12:20:14 <greensnark> Using a base attack + melee_attack is good, but don't go into the others now :P
12:20:22 <Cryp71c> Otherwise, I'll write code in fight.cc that I'm going to re-write once I get attacks implemented in an inheritable fashion.
12:20:27 <Eronarn> yeah, finish melee_attack before we even *start* ranged attack
12:20:34 <Cryp71c> ah, right. I can live with that.
12:21:00 <Cryp71c> So would hurt be a permanent wrapper for attack::hurt(), or just until the full combat scheme of *_attack is implemented?
12:21:12 <Eronarn> the latter, presumably
12:21:30 <Cryp71c> k brb
12:21:32 <Eronarn> might effectively become permanent since a lot of random stuff calls hurt()
12:21:42 <greensnark> actor::hurt() is trying to do too many things that the actor class has no business doing, so eventually it would go away
12:21:48 <Eronarn> clouds, miscasts...
12:25:07 <greensnark> Wretched rsync is slow :(
12:28:32 <Cryp71c> So what about traps, for example, would they just spawn an instance of melee_attack (since traps are melee)? Do melee_attack, ranged_attack, and magic_attack cover all our bases?
12:29:04 <greensnark> For now
12:29:14 <greensnark> I suggest you don't worry overmuch about all this architecture stuff
12:29:32 <greensnark> Put down a list of things you want to do that the current system makes hard to do
12:29:44 <greensnark> And figure out how you want to solve those things
12:30:12 <Cryp71c> greensnark: that's what I'm doing.
12:30:25 <greensnark> Oh? The wiki page looked thin on details
12:30:28 <Cryp71c> The list of "things new system should support" is up on the wiki.
12:30:35 <greensnark> Got a link?
12:30:46 <Cryp71c> https://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:fight_rewrite
12:30:54 <Cryp71c> In the "New system capabilities"
12:31:29 <Eronarn> Cryp71c: converting mechanical traps to melee_attack woldn't be so bad. but, definitely code it first
12:31:40 <Eronarn> overplanning can kill projects
12:33:25 <Cryp71c> Eronarn: I understand, the main issue is that I'm trying to rush my knowledge of the combat system up to you and greensnarks by asking lots of questions so I don't spend a week digging through code when I could've spent a few hours asking questions as they come to me (and then using those answers in the planning, since there's no reason in wasting that knowledge and it only takes a moment to write it down))
12:33:47 <Cryp71c> (so long as you guys don't mind answering questions or giving me your perspective)'
12:34:40 <greensnark> You'll have to spend time figuring out the existing code anyway
12:35:03 <greensnark> Because you don't want to break the existing combat math
12:35:25 <greensnark> Frst clean up, move to the cleaner attack model
12:35:28 <greensnark> Then make changes
12:35:51 <greensnark> This is pretty important for something that affects so much of the game
12:36:20 <greensnark> !players
12:36:21 <Henzell> 17 players: chowder, Stossel, AzureAngel, Kautzman, Clouseau, dyzzy, mindloss, moramartin, Ninvader, Luterac, Witch, MrWerewolf, nerdbeard, qoon, Arafel, Sylvius, qubitsu
12:36:29 <greensnark> !players -ea
12:36:32 <Henzell> 8 active players: Kautzman (L10 MDPa @ D:11, T:12766), Clouseau (L9 SETm @ D:7, T:7873), dyzzy (L7 DECj @ D:5, T:4552), Ninvader (L6 DrTm @ D:4, T:5584), Luterac (L5 MfCr @ D:4, T:3886), Witch (L5 NaWz @ D:4, T:4616), qoon (L3 HEWz @ D:3, T:4065), Sylvius (L2 HERe @ D:2, T:1447)
12:36:50 <greensnark> Impressive how fast ttyrecs chew up space
12:38:38 <kilobyte> they can be optimized pretty well
12:39:34 <greensnark> I think the dgl ttyrec just writes changes as they arrive, though
12:39:42 <greensnark> Haven't looked at the code
12:40:39 <greensnark> Hey, maybe the next few days I could upgrade the dgl on cao
12:40:43 <kilobyte> it does... and ncurses already optimize writes quite well
12:40:55 <greensnark> Given that we'll soon have some space
12:41:13 <greensnark> cao seems to be burning about 1M of ttyrec every 10s
12:41:30 <Cryp71c> That's a lot.
12:41:33 <kilobyte> however, tty codes are damn wasteful
12:41:34 <Cryp71c> Or at least seems like a lot.
12:42:03 <kilobyte> they are still in the land of 1970 terminals :(
12:43:29 <greensnark> I wish I had a long-term plan for these ttyrecs
12:43:34 <kilobyte> I guess that _un_optimizing could be good: I imagine giving every frame as a whole to bzip2 can let compress the thing a lot better, since it can access previously written data, unlike ncurses
12:44:27 <greensnark> That's an interesting theory
12:44:53 <greensnark> Sounds to me like that'd still produce bigger files, though
12:45:39 <greensnark> Btw, when you're doing the unicode changes, how about fixing dgl so spectating ttyrecs doesn't involve finding a screen clear and working from there :)
12:45:46 <kilobyte> bigger uncompressed ones, certainly
12:45:47 -!- edlothiol has quit [Ping timeout: 240 seconds]
12:45:55 <greensnark> Should be simple with your termrec libtty
12:45:58 <kilobyte> greensnark: of course
12:46:25 <kilobyte> there's a more pressing issue, too: currently you can't watch someone with a bigger terminal than yours
12:46:34 <kilobyte> it breaks down pretty nastily
12:47:12 <kilobyte> a pannable view would be easy to implement
12:48:52 <greensnark> Wait, there are people with bigger terms than you? :P
12:49:14 <greensnark> Heh, someone on cao with a 179x40 term
12:49:19 <Eronarn> eew
12:49:31 <greensnark> Oh, and a 191x58 too
12:51:47 <kilobyte> beh, that's crippled strip monitors for you
12:52:20 <kilobyte> 4x3 is too wide already, so what people do?  Get them wider!
12:52:32 <greensnark> Hehe
12:55:33 <kilobyte> labelling monitors with different aspect ratio with nothing but diagonal length should be banned.  Clueless people see two monitors, both with same listed spec but one is not only cheaper but also advertised as better.  Noticing it's a good deal smaller would require a modicum of math or common sense.
12:57:16 <Cryp71c> kilobyte: eh, imo monitors should be required to be labeled with diagonal length, maximum resolution (either total screen or per-unit-of-width) and a ratio.
12:59:27 <Cryp71c> greensnark: I see in melee_attack, we're storing things like can_do_unarmed, body armor penalties, to-hit penalties, etc. Shouldn't those just be fetched from the *attacker or *defender?
12:59:51 <greensnark> Cryp71c: They are fetched from the attacker/defender, just stored to save recalculation
13:00:21 <greensnark> Also: it is impossible to get 4x3 monitors these days, everything is widescreen
13:00:43 <Cryp71c> right...just seemed...odd to me. I guess one of those things that is bad in theory but has advantages in practice.
13:00:45 <greensnark> And it's bloody hard to get anything better than 1920x1080 at a reasonable price
13:01:23 <Cryp71c> greensnark: unless I"m on a huge, HUGE monitor, 1920x1080 is almost always a high enough resolution for me, otherwise things get hard to see (and I have young, reasonably good eyes, let alone for someone older with poorer sight)
13:01:59 <greensnark> I like my vertical resolution!
13:02:12 <greensnark> 1920 is fine: 1080 sucks
13:02:22 <Cryp71c> greensnark: do you know what that attack_number is for? I find references to it, can see where its passed in under initialization of a melee_attack, but can't actually find anything using it.
13:02:45 <greensnark> I think attack_number is used to count off the attacks for things like hydras
13:03:00 <greensnark> Also it is used to select the current attack for monsters in general
13:03:07 <greensnark> Since monsters have four attacks
13:03:25 <greensnark> *up to 4
13:03:39 <Cryp71c> greensnark: shouldn't each head have its own attack, rather than depend on melee_attack to handle those special cases?
13:03:51 <greensnark> It probably should
13:04:12 <greensnark> sorear wanted to split melee_attack so you used one attack object per discrete attack
13:04:22 <greensnark> Whereas right now it's one attack per melee round
13:04:27 <Cryp71c> k, I didn't know if there would be a big performance hit for treating each of up to the 4 normal attacks as a separate instantiation of the attack class.
13:04:31 <greensnark> i.e. one attack object for all the attacks in a melee round
13:05:06 <greensnark> Instantiating objects, etc. is negligible overhead compared to the game logic in general
13:06:32 <Cryp71c> greensnark: "i.e. one attack object for all the attacks in a melee round" that's how it works right now, correct? (not how it should work when we're done)
13:07:01 <greensnark> !tell Napkin Do you have your CDO maintenance scripts in a nice little git repo I can rip off? :D
13:07:01 <Henzell> greensnark: OK, I'll let Napkin know.
13:07:24 <greensnark> !tell Napkin I want to upgrade dgl on cao and setup your scripts for 0.8 trunk
13:07:24 <Napkin> greensnark :)
13:07:24 <Henzell> greensnark: OK, I'll let Napkin know.
13:07:24 <Henzell> Napkin: You have 3 messages. Use !messages to read them.
13:07:29 <greensnark> Oh, you're here
13:07:33 <greensnark> !coffee Napkin
13:07:34 * Henzell hands Napkin a mug of caff� macchiato, brewed by the Serpent of Hell.
13:07:47 <Napkin> unfortunately not - since they are kinda spread all over the system already ;D
13:07:53 <greensnark> Cryp71c: Yeah, it'd be better to have one attack object per attack
13:07:58 <Napkin> thanks! :)
13:08:06 <greensnark> Napkin: Noooooo, you should version them!
13:08:07 <Napkin> what are you interested in?
13:08:26 <greensnark> Well, first I want to upgrade dgl, probably tomorrow
13:08:28 <Napkin> well, the "baking" script is in git
13:08:41 <greensnark> Then I'd like to set up CDO-style trunk builds with automagic savefile copying
13:08:56 <Napkin> but not the script called via sudo to install, savegame manipulation, etx
13:09:09 <greensnark> And I really don't want to roll my own, I'd prefer to use yours since you've debugged and tested them thoroughly :)
13:09:31 <greensnark> Napkin: Can you put them all in a repo and symlink them if you need them to live in different directories?
13:09:32 <Napkin> sure thing, but i will have to guide you through them
13:09:46 <greensnark> CDO scripts repo would be great
13:10:00 <Napkin> that won't help much, greensnark
13:10:14 <Napkin> they have hardcoded filesystem positions, etc
13:10:19 <greensnark> Oh
13:10:30 <greensnark> But that's just the paths to dgldir and stuff, right?
13:10:32 <Napkin> and need settings for sudo.. and, and, and
13:10:39 <greensnark> Oh right, the sudo thing
13:10:54 <Napkin> what would you like to do?
13:10:59 <Napkin> put them on cao?
13:12:02 <Napkin> then, the structure of the chroot is quite important
13:12:18 <Napkin> i could guide you through it though, of course
13:12:42 <Napkin> and create the repository - but that would mean a text-file with every file to explain where it belongs to and why ;)
13:13:04 <Napkin> it has.. become a MONSTER!
13:13:08 <greensnark> Hehe
13:13:15 <greensnark> But you should have version control!
13:13:29 <Napkin> still haven't started moving to the new server! now guess why ;D
13:13:32 -!- ais523 has joined ##crawl-dev
13:13:38 <Napkin> dinner! o/
13:14:18 <greensnark> Enjoy!
13:15:45 <Cryp71c> greensnark: an item_def pointer can access everything about a weapon, correct? Including its randart properties, whether its an unrand (and its entry number), etc. ?
13:16:21 <greensnark> Yes
13:18:23 <Cryp71c> excellent. Also, do monsters have shield / body armor EV penalties, or is that just the player?
13:20:20 <greensnark> Don't recall, check the code
13:20:37 <greensnark> It would make sense for them to have EV penalties
13:25:42 <Cryp71c> greensnark: they don't, it would seem...at least its not in monster::melee_evasion
13:26:10 <Cryp71c> Which seems...odd
13:26:26 <Cryp71c> Since I doubt heavy armor impedes the use of their weapons, either.
13:27:12 <MarvinPA> monsters are cheaters
13:27:25 <MarvinPA> orc wizards cast just fine in crystal plate mail, etc :P
13:28:27 <Cryp71c> MarvinPA: and thats probably not the worst thing, since monsters are typically weaker than players, but post-rewrite, monster should mirror player very closely, so both players and monsters should have those penalty methods, even if the monster's return 0, imo.
13:30:15 <CIA-45> 03dolorous * ra6aecdefb461 10/crawl-ref/source/dat/descript/ability.txt: Tweak wording and punctuation.
13:39:49 <Cryp71c> greensnark: presently, calculate_to_hit is an attack method, shouldn't it be an actor/attacker method (to-hit may be altered for a particular attack, but the base to-hit value should be retrievable from the attacker), correct?
13:40:02 <Cryp71c> I feel at times my perspective on the code is not actually the way it truely is, thus..my many questions.
13:41:33 <greensnark> You could go either way since to-hit is a function of both the attacker and the attack in question
13:42:12 <greensnark> I'd say keep it in the melee_attack
13:42:50 <Cryp71c> greensnark: I think I'll plan on it being a function of the attacker with the likelihood that I'll have an adjust_to_hit (or a calc_to_hit) in the attack which makes modifications as necessary to the to_hit values.
13:43:27 <Cryp71c> greensnark: having the base value in attacker (actor) allows for one other potential feature of the new system: calculating weapon effectiveness with various weapons without having to be in combat.
13:43:40 <Cryp71c> Whether we decide to implement that is irrelevant, its that I want the potential to be there.
13:43:43 <greensnark> You don't have to be in combat to create a melee_attack instance
13:44:21 <Cryp71c> greensnark: no, but if we're having to in order to fetch and display some information, we've likely got a wierd (if not bad) implementation.
13:44:56 <greensnark> You're displaying stats on melee attacks; it doesn't seem particularly onerous to require that you create instances of melee_attack when doing so
13:46:02 <Cryp71c> I suppose so, that is reasoanble I guess, I just percieve to_hit to be a function dependent on the attacker (its not that to_hit varies widely from one attack to another with the same weapon [if you remove the random aspect, which we inject to provide combat variance]).
13:46:54 <Cryp71c> So if we concede that physics are constant in the accuracy of an individual swinging a particular object, then the chance of them hitting another object of fixed evasional capacity is also (fairly) fixed.
13:47:03 <Napkin> greensnark: you'll need all scripts (not binaries) from /var/lib/dgamelaunch/{bin,sbin}, the script and config from ~crawl/source/crawl-git/, the scripts from ~crawl/bin, the sqlite dbs from /var/lib/dgamelaunch/*.db3 and the sudo entries
13:47:06 <Cryp71c> Which means its not a function of a given attack, but a function of the attacker.
13:47:51 <Napkin> i may be able to put that in a repository
13:48:20 <greensnark> Napkin: Thanks!
13:48:37 <Napkin> but honestly, writing the docs would be hell of a job
13:49:00 <greensnark> Napkin: I'm not worried about docs, I'll just ask you questions if I run into issues :)
13:49:02 <Napkin> will create that repository tomorrow at work though ;)
13:49:16 <greensnark> I mainly want a repo because doing any kind of nontrivial code without source control == scary
13:49:55 <greensnark> Cryp71c: I imagine to-hit is a function of at least attacker + attack + weapon, if any + armour + shield
13:50:24 <greensnark> You could put that in actor if you want to. The thing with object modeling is that there are many ways to do the same thing
13:50:50 <greensnark> So do what you think is right... if it doesn't work out well, you can always go back and change it
13:51:20 <greensnark> It's not possible to get a good design until you have a good feel for the code you'll need to write
13:51:46 <greensnark> So go with a design that feels reasonable, and be prepared to come back later when you encounter complexiy on the ground
13:51:58 <greensnark> Trying to set up a perfect design up front is just a waste of time
13:52:02 <Napkin> problem is, that the scripts in ~crawl/source/crawl-git/ are already in their the repository of crawl
13:52:19 <greensnark> Napkin: Those are build scripts for Crawl, right?
13:52:23 <Napkin> yes
13:52:25 <greensnark> Do they have to be in the crawl repo at all?
13:52:37 <Cryp71c> greensnark: well, building the attack class atm.
13:52:37 <greensnark> Well, for now, it's fine that they are :)
13:52:38 <Cryp71c> So we'll see
13:52:41 <Napkin> now - yes
13:52:53 <Napkin> didn't want an additional subfolder when i started
13:53:01 <greensnark> But I think being in the crawl repo also forces you to do the merge base and other stuff, right
13:53:19 <Napkin> and, their state is highly volatile, depending on the crawl repository
13:53:35 <greensnark> Ok, one sec, my dog is howling at the moon and it's past midnight, I need to haul her into the house
13:53:40 <Napkin> different for 0.7, for 0.6 and changes for trunk quite often ;)
13:53:49 <Napkin> hehe
13:54:19 <Napkin> *depending on the crawl branch
13:55:03 <greensnark> Ah, right
13:56:53 <Napkin> well, we'll manage somehow
13:57:02 <Napkin> also, there is an permission issue
13:57:10 <Napkin> root, dgl, crawl
13:57:20 <TGWi> bhaak: yes, young people don't know who beatles are
13:57:21 <TGWi> :(
13:57:57 <TGWi> also isn't dpeg like 30 max
13:58:24 <Napkin> beep - wrong
13:58:53 <greensnark> dpeg is as old as the hills
13:59:04 <TGWi> the extremely new hills
13:59:10 <ekiM> dpeg has always been.
13:59:51 <greensnark> No words were laid on stream or stone, when dpeg woke and walked alone.
14:00:14 <CIA-45> 03MarvinPA * r289229c3ac78 10/crawl-ref/source/spl-damage.cc: Don't allow cancelling out of chain lightning with ally prompts
14:03:10 <Cryp71c> greensnark: brand-application should be the same regardless of ranged, melee, or magic attacks, should they not? (If they differ, they should have their own brand)
14:05:04 <greensnark> There's no common code currently, and at least for magic it doesn't sound like there'll ever be
14:05:21 <greensnark> You could argue for similar code for melee/ranged brands, but it's a bit of a stretch even so
14:06:06 -!- monqy has joined ##crawl-dev
14:06:29 <greensnark> In general: worry about melee attacks for now
14:09:27 <bhaak> TGWi: i don't dpeg's exact age but after meeting him in person and if he's really 30 max then he didn't age well :-)
14:09:46 <TGWi> :P
14:10:36 <greensnark> !tell dpeg < bhaak> TGWi: i don't dpeg's exact age but after meeting him in person and if he's really 30 max then he didn't age well :-)
14:10:37 <Henzell> greensnark: OK, I'll let dpeg know.
14:11:27 <greensnark> dpeg has the heart of a child
14:11:38 <greensnark> I don't know where he keeps it, though. He tells me it isn't in a jar on his desk.
14:14:00 <TGWi> well, just checked again and jpeg claimed 27 on tavern
14:14:08 <TGWi> I'm revising my estimate to "like 40 max"
14:14:32 <greensnark> What, jpeg claimed dpeg is 27?
14:14:35 <TGWi> upon reflection that might have been a 27 joke
14:14:38 <TGWi> jpeg claimed to be 27
14:15:05 <bhaak> I also don't really know the beatles but my parents do
14:15:16 <bhaak> although they really were rollings stones fans
14:15:30 <bhaak> to me it's just old people making noise
14:15:42 <TGWi> say that to your parents
14:15:44 <greensnark> I like "Paint it Black"!
14:15:56 <greensnark> And if that makes me old, fuck yeah, it's good to be old sometimes
14:16:10 <bhaak> I did and they just shook their heads :)
14:17:14 <bhaak> i remember thinking when we recreated my father's music collection on CD that most of the stuff he listened to in his teens was thankfully forgotten nowadays
14:17:38 <greensnark> Most of the stuff teenagers listen to nowadays would be best forgotten already
14:17:52 <greensnark> But I'm told dpeg is a Lady Gaga fan, so old age doesn't always bring wisdom :P
14:18:39 <TGWi> do you often have conversations with dpeg about lady gaga?
14:18:48 <greensnark> Every day.
14:18:50 <bhaak> old age doesn't automatically implies taste :)
14:18:52 <TGWi> me too
14:18:53 <greensnark> We rarely mention anything else
14:19:01 <bhaak> so, you are fans, too?
14:19:07 <greensnark> Hehe
14:19:19 <greensnark> TGWi is just angling to get another q unique in Crawl
14:19:27 <TGWi> lady qaga
14:19:30 <greensnark> Lady Quagga, presumably
14:19:33 <TGWi> hehehe
14:24:24 -!- dpeg has joined ##crawl-dev
14:24:51 <bhaak> i like kesha, so i'm hipper than you are!
14:26:38 <elliptic> !tell kilobyte Re: speed brand nerf -- you've said +60% a few times as a value for speed brand now, but I wonder if you realize that that's only the case for a few weapons... speed brand always rounds up when it halves delay, so it is really only +33% on short blades and +40% on two-handers... and that's against 0 AC stuff
14:26:40 <Henzell> Maximum message length is 300 characters. Eschew verbosity, Gladys!
14:26:54 <Cryp71c> can you imagine a situation in which - during an attack - either the attacker/defender is BOTH not visible AND not invisible?
14:27:21 <greensnark> Yeah, monsters fighting out of LOS
14:27:27 <greensnark> *out of player LOS
14:27:44 <greensnark> Assuming you're talking about visibility wrt playermessaging
14:28:14 <greensnark> !learn add bhaak Likes kesha
14:28:15 <Henzell> bhaak[5/5]: Likes kesha
14:28:20 <TGWi> :D
14:28:39 <elliptic> !tell kilobyte about the speed nerf: you've said +60% a few times as a value for speed brand now, but that's only rarely the case... speed brand always rounds up when it halves delay, so it is only +33% on sbl and +40% on two-handers... and that's against 0 AC
14:28:39 <Henzell> elliptic: OK, I'll let kilobyte know.
14:28:54 <TGWi> dpeg: evening!
14:29:04 <TGWi> we were just talking about your lady gaga addiction
14:29:08 <greensnark> You're just saying that to get him to check his messages
14:29:36 <greensnark> dpeg: There are proposals for a Lady Quagga unique
14:29:48 <Eronarn> 15:26 <+Cryp71c> can you imagine a situation in which - during an attack - either the attacker/defender is BOTH not visible  AND not invisible?
14:29:52 <Eronarn> blindness
14:30:11 <Eronarn> attacker is not invisible, but also not visible to the defender
14:30:13 <bhaak> !learn del bhaak[5]
14:30:13 <Henzell> Deleted bhaak[5/5]: Likes kesha
14:30:20 <bhaak> !learn add bhaak Likes ke$ha
14:30:20 <Henzell> bhaak[5/5]: Likes ke$ha
14:30:25 <greensnark> Hahahaha
14:30:47 <TGWi> an important distinction to make
14:30:57 <Cryp71c> dpeg: rawr
14:31:10 <elliptic> !tell kilobyte And the vast majority of speed brand weapons that generate are short blades, so the speed brand nerf mainly is just a short blade nerf... and they don't need it. I'm all in favor of doing something about speed brand, but the change you made doesn't look right on its own
14:31:10 <Henzell> elliptic: OK, I'll let kilobyte know.
14:34:15 <MarvinPA> elliptic: i mentioned it earlier and kilobyte said to revert or reduce the change if it's excessive, i imagine it's probably best not to do loads of untested balance changes if 0.8 is hopefully close
14:34:33 <elliptic> yeah
14:34:38 <MarvinPA> did you have a suggestion to nerf speed but so it'd still be useful on sbl?
14:34:47 <elliptic> a simpler change would be to remove speed on non-sbl non-staves
14:34:50 <MarvinPA> i forget what the other ideas were, other than just reducing the speed increase
14:34:59 <MarvinPA> yeah, maybe so
14:34:59 <TGWi> 1.5* and div_rand_round
14:35:02 <TGWi> imo
14:35:22 <elliptic> leave it as it is on sbl and staves, remove it as a possibility for hell knight weapons and randarts that aren't sbl or staves
14:35:35 <Eronarn> why not just leave it on randarts
14:35:38 <elliptic> would address some problems without causing any balance issues
14:35:39 <Eronarn> it's okay if they're super powerful
14:35:46 <elliptic> eronarn: well, they show up a lot with trog gifts currently
14:35:52 <TGWi> also yeah, randarts being good isn't really a problem imo
14:35:56 <Eronarn> elliptic: change the weighting, then
14:36:06 <Eronarn> unless you mean they show up a lot just by virtue of trog giving a lot of gifts
14:36:11 <elliptic> one of kilobyte's worries was that playing trog is all about waiting to be gifted a speed weapon
14:36:23 <elliptic> changing trog gift code or whatever would be a possibility instead, yeah
14:36:26 <TGWi> weighing speed against probably-crappy base type and inability to enchant is interesting
14:36:28 <monqy> TGWi: or don't bother with rounding at all, leave delay unchanged, and give double-attacks
14:36:30 <elliptic> but regardless hell knights shouldn't have them
14:36:33 <TGWi> speed nerf isn't urgent imo
14:36:34 <MarvinPA> definitely a good idea to remove it as a hell knight thing, yeah
14:36:36 <monqy> (this is an interface improvement)
14:36:45 <TGWi> monqy: div_rand_round should be used anyway
14:36:56 <monqy> for delay in general right
14:37:07 <TGWi> yes
14:37:18 <TGWi> also, always forever
14:37:37 <Cryp71c> As it relates to speed, I think double-attacks is a good idea, since it prevents the character from attacking once, then taking another action before the monster attacks (such as quaffing a potion) essentially risk-free.
14:37:59 <Cryp71c> Or dance-attacking, if that's still possible.
14:38:01 <dpeg> greensnark: there is no shortage of insane proposals
14:38:01 <Henzell> dpeg: You have 4 messages. Use !messages to read them.
14:38:36 <dpeg> !messages
14:38:36 <Henzell> (1/4) Eronarn said (3d 44m 35s ago): https://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:species:lava_orc
14:38:38 <dpeg> !messages
14:38:38 <Henzell> (1/3) Cryp71c said (3d 14m 42s ago): Rawr: https://crawl.develz.org/wiki/doku.php?id=dcss:brainstorm:fight_rewrite
14:38:40 <dpeg> !messages
14:38:40 <Henzell> (1/2) dpeg said (20h 8m 39s ago): Look at Dorokhloe at some time (loot,holy set).
14:38:42 <dpeg> !messages
14:38:43 <Henzell> (1/1) greensnark said (28m 7s ago): < bhaak> TGWi: i don't dpeg's exact age but after meeting him in person and if he's really 30 max then he didn't age well :-)
14:38:50 <greensnark> :)
14:39:21 <dpeg> Thank Trog I have better age estimators in my neighbourhood.
14:39:50 <dpeg> !tell dpeg Look at Dorokhloe.
14:39:50 <Henzell> dpeg: OK, I'll let dpeg know.
14:42:21 <elliptic> !tell kilobyte A suggestion for what to do about speed brand for the moment with 0.8 so close: remove it from hell knights and uniques, maybe remove it from randarts that aren't sbl/staves as well (though that's really only a problem with trog gifts), leave the mechanics of speed brand the same for now
14:42:21 <Henzell> elliptic: OK, I'll let kilobyte know.
14:45:22 <ekiM> It's fun when Agnes gets a lajatang of speed!
14:46:41 <dpeg> kilobyte: elliptic's proposal looks reasonable for 0.8. We don't want to cull the brand without thorough discussion, and the proposal keeps speed interesting for stabbers/short blades while nerfing the abusers.
14:46:41 <Henzell> dpeg: You have 1 message. Use !messages to read it.
14:47:33 <greensnark> The 0.8 wiki page talks about a ranged combat balance item: is that done, or one of the postponed items?
14:48:09 <dpeg> good question, I don't know
14:49:23 <greensnark> Ok, I'll move the ranged-combat-balance item to the postponed list
14:49:49 <dpeg> thank you
14:50:46 <MarvinPA> i took a look at the blowgun/throwing stuff a while ago since that was on the plan too, but i wasn't really sure where to start in terms of tweaking the formulae
14:51:35 <greensnark> Needles are a separate issue in themselves
14:52:31 <MarvinPA> yeah
14:53:07 <greensnark> So holy monsters are currently used only in zigs, right?
14:53:11 <greensnark> Apart from their test vaults
14:53:15 <MarvinPA> not even there
14:53:38 <dpeg> it's okay... 0.8 w/o holies means we have more content for 0.9, no problem
14:54:24 <MarvinPA> some of the holies show up in zotdef i think but nowhere else
14:55:37 <greensnark> If they're going to be zig only they're probably ok for inclusion, I guess
14:55:41 <greensnark> Well, zig+zotdef
14:56:06 <Gretell> Uileat (L4 OgBe) ERROR in 'fixedvector.h' at line 72: range check error (-1 / 52) (D:3)
14:57:02 <greensnark> Ok, anybody working on stuff for 0.8 that isn't on https://crawl.develz.org/wiki/doku.php?id=dcss:planning:0.8_features should totally add it to that page now
14:57:51 <greensnark> And anybody working on any items on that list, please update that item's status
14:58:15 <greensnark> This "new unarmed aux special damage" would be bleeding from claws and the like?
14:58:33 <MarvinPA> yeah
14:58:49 <MarvinPA> it feels like it's been in for forever, maybe it was added just after 0.7 though?
14:59:15 <greensnark> Yeah, rob's comment on it is dated 09-2010
14:59:45 <MarvinPA> i remember comments on how weird it was that claws can make enemies bleed but not huge axes or swords, at least :P
15:00:07 <greensnark> IV claws
15:00:49 <MarvinPA> huh, what's "monster vs player speed synchronisation"?
15:01:09 <MarvinPA> oh, move delay and things like that?
15:01:40 <greensnark> I'm not sure
15:01:57 <Cryp71c> Do you have to format commit messages to 80 col or will that happen automagically?
15:02:13 <greensnark> Cryp71c: Wrap them in your editor.
15:02:20 <greensnark> I tend to use long first lines for CIA though :P
15:02:34 <greensnark> "CIA made me do it"
15:02:47 <Cryp71c> greensnark: yeah player bleed effects have been in for several months, I never implemented weapon-bleeding though, because RL beckoned.
15:03:03 <Cryp71c> (or monster vs player bleeding)
15:03:37 <greensnark> Ok, so probably disable-worthy for 0.8
15:03:49 <greensnark> Does it hurt Fe not to have bleeding claw attacks
15:03:56 <greensnark> (not that it matters, just curious)
15:04:05 <Eronarn> antaeus is bleed-able!
15:04:42 <MarvinPA> probably not, bleeding does something like 3% of maxhp damage
15:04:51 <monqy> 3% of current hp
15:05:14 <monqy> 9% or some such for powerbleeding
15:05:17 <MarvinPA> oh, tukima's ball isn't on there
15:05:26 <MarvinPA> that should probably be looked at or removed as a player spell or something
15:05:39 <greensnark> Oh, that's the multiple weapon tukima thing, right
15:06:14 <greensnark> Ok, if claw damage is negligible I'm totally moving re-evaluation of that to the postponed list
15:06:27 <MarvinPA> sounds good
15:06:29 <Cryp71c> greensnark: its negliglbe, FE aren't unbalanced by lacking bleed.
15:07:09 <dpeg> greensnark: yes, go ahead
15:07:36 <Cryp71c> Is there anyway to get a graphical (or pseudo-graphical) display of the current state of my commit tree for a particular branch? I want to make sure that my rebasing hasn't fouled anything up.
15:07:39 <Eronarn> MarvinPA: see also darkness
15:07:43 <MarvinPA> ah yeah
15:08:15 <MarvinPA> summon hydra/dragon aren't on there either, those seem like they're fine though
15:09:39 <Eronarn> yeah
15:09:41 <Eronarn> also leda's
15:09:43 <MarvinPA> can you fire conjurations out of LOS with darkness?
15:11:24 <Cryp71c> MarvinPA: I don't think so, IIRC I was told a long while back that the targeting fixes applied by someone prevented that.
15:11:43 <MarvinPA> ah yeah
15:12:56 <Eronarn> what about stuff like shatter, clouds, summons...
15:12:58 <Cryp71c> If I'm on my branch (with no unstaged changes), and "git rebase origin/master" it should rewind my branch's changes, update to master/HEAD, then replay my commits on top of HEAD, correct?
15:13:12 <Cryp71c> (presuming there are no collisions in the code)
15:13:22 <MarvinPA> bah, there must be a better way of the wiki handling multiple people editing at once than locking the page :(
15:13:40 <Cryp71c> MarvinPA: new product: SVNWiki with automerge!
15:13:47 <Cryp71c> For those pages you really want to update simultaneously.
15:13:49 <MarvinPA> heh
15:14:09 <Cryp71c> Anyone on my git question?
15:14:30 <Cryp71c> Its been a while since I've worked with it to any significant degree.
15:14:40 <Cryp71c> Would love to not foul up my branch's commit tree.
15:14:58 <MarvinPA> i'm no expert but i think that's right, yeah
15:15:21 <greensnark> Cryp71c: Yes
15:15:34 <greensnark> Cryp71c: But if you're publishing your branch on gitorious, do not rebase it
15:15:51 <greensnark> i.e. rebasing is fine for branches that are purely local
15:15:51 <Cryp71c> greensnark: :( grrr, I have to undo that rebase.
15:16:14 <greensnark> Once you start publishing your changes, you don't want to rebase commits unless they're local
15:16:57 <Cryp71c> Doesn't rebasing stuff now help when rebasing my branch into master later down the road?
15:17:09 <Cryp71c> Or is the clutter in the commit history not worth it?
15:17:39 <greensnark> Rebasing is good to keep history free of merge commits
15:18:20 <greensnark> But as I said: once you've pushed a commit on a branch, if you suddenly rebase and push a new set of commits, anybody who's using that branch will get a rude surprise when they try to pull
15:18:58 <greensnark> Where you can use rebase is: you're working on master, you create a few new commits, then rebase onto origin/master: only your new commits are rebased, which is fine
15:19:35 <greensnark> Where you don't want to use rebase: you're working on branch foo, create commits, push branch foo to gitorious, work some more, create more commits on branch foo, then *rebasing onto origin/master is bad news*
15:19:53 <greensnark> You can rebase your local commits on foo onto origin/foo just fine though
15:20:16 <Eronarn> 16:13 <+MarvinPA> bah, there must be a better way of the wiki handling multiple people editing at once than locking the page :(
15:20:20 <Eronarn> google wave code was opensourced
15:20:21 <Eronarn> get to it
15:20:33 <greensnark> Is it still locked? :)
15:21:02 <greensnark> Yeah, the locked pages thing is annoying
15:21:44 <greensnark> Etherpad had nice collaborative editing that was also more lightweight than Wave
15:26:28 <CIA-45> 03Cryp71c 07unified_combat_control * r20107310e512 10/crawl-ref/source/ (attack.cc attack.h fight.cc): Add attack class framework
15:26:38 <Cryp71c> Rar! It has begun.
15:27:23 <dpeg> !coffee Cryp71c
15:27:25 * Henzell hands Cryp71c a cup of caff� macchiato, brewed by Snorg.
15:27:50 <Cryp71c> The biggest fear I have is getting this starting stuff implemented, setting melee_attack to inherit from attack, and everything compiles, but nothing works :P
15:28:03 <dpeg> hehe
15:29:13 -!- edlothiol has joined ##crawl-dev
15:29:27 -!- edlothiol has quit [Client Quit]
15:29:42 -!- edlothiol has joined ##crawl-dev
15:43:37 -!- ZChris13 has joined ##crawl-dev
15:45:16 <Ashenzari> Strange behaviour with felids on background selection menu (https://crawl.develz.org/mantis/view.php?id=3629) by flowsnake
15:45:36 -!- valrus has joined ##crawl-dev
15:47:18 -!- galehar_ has joined ##crawl-dev
15:48:45 <Cryp71c> Should constants pertaining to a .cc file be declared at the top of that .cc file (such as the case with fight.cc) or in the .h file (as is the case in various other circumstances) ?
15:50:51 <monqy> at least with functions, the way I've seen crawl do it is declare in the header if other .cc files will want to use them, and keep then in the .cc file otherwise
15:51:09 <monqy> not sure how it handles constants though
15:51:41 -!- varmin has quit [Remote host closed the connection]
15:51:47 -!- varmin has joined ##crawl-dev
15:55:05 -!- casmith789 has quit [Ping timeout: 255 seconds]
15:55:46 -!- casmith789 has joined ##crawl-dev
15:57:38 -!- MarvinPA_ has joined ##crawl-dev
16:00:41 -!- MarvinPA has quit [Ping timeout: 260 seconds]
16:02:09 <Cryp71c> Whew, nearly have the basics setup for having melee_attack inherit from the base attack class.
16:02:41 <galehar_> Cryp71c: no formal rules. If the constant (or define) is used throughout the file, I would declare it in the header. If it's used just for a couple of function, I would declare in the .cc, before the functions.
16:09:44 -!- syllogism has quit []
16:09:49 -!- ZChris13_ has joined ##crawl-dev
16:13:01 <Cryp71c> k I'm out, I"ll be back tonight....or tomorrow.
16:13:02 -!- Cryp71c has quit [Quit: Leaving]
16:14:11 -!- ZChris13 has quit [Ping timeout: 264 seconds]
16:14:13 -!- MarvinPA_ is now known as MarvinPA
16:14:14 -!- ZChris13_ is now known as ZChris13
16:21:12 -!- MakMorn has joined ##crawl-dev
16:23:12 <CIA-45> 03Cryp71c 07unified_combat_control * r36dc4a416cb0 10/crawl-ref/source/ (attack.cc attack.h): Additional development of attack.cc, reording of class functions in attack.h
16:38:42 <Keskitalo> go Cryp71c!
16:52:55 <galehar_> And here comes the new Ashenzari.
16:54:16 <CIA-45> 03galehar * r095afaccfeca 10/crawl-ref/source/ (9 files): Ashenzari also warns about monsters' wands.
16:54:24 <monqy> does the skill boosting mess with acquirement
16:54:27 <CIA-45> 03galehar * r86f7879f2428 10/crawl-ref/source/ (godpassive.cc godpassive.h player.cc): New ash passive ability: boost low skills when not wearing uncursed items.
16:54:28 <CIA-45> 03galehar * r8cad4c36862d 10/crawl-ref/source/player.cc: Remove Ashenzari XP bonus.
16:54:29 <CIA-45> 03galehar * rf32d692534f7 10/crawl-ref/source/ (abl-show.cc skills2.cc): Nerf Ashenzari transfer knowledge.
16:54:29 <CIA-45> 03galehar * r6fc4cd90c732 10/crawl-ref/source/godconduct.cc: Halves Ashenzari piety gain.
16:56:17 <galehar_> monqy: no. It works like heroism.
16:58:22 <MarvinPA> so can you get your low skills boosted just by taking off uncursed items?
16:58:43 <galehar_> yes
16:58:48 <galehar_> run around naked, it works
16:58:51 <MarvinPA> hm
16:59:21 -!- ZChris13 has quit [Quit: Reconnecting鈥
16:59:25 <MarvinPA> seems weird not to use the same mechanic as boundedness
16:59:39 <galehar_> dpeg's design ;)
17:00:03 -!- ZChris13 has joined ##crawl-dev
17:00:31 <galehar_> Before anyone asks, I'll fix the skill menu tomorrow (you can't see you base level).
17:02:45 <MarvinPA> the boost to 6 sounds very useful for casters wanting to generalise, anyway
17:03:12 <casmith789> sounds good for gaining new weapon skills too
17:03:26 <casmith789> it's kind of like oka heroism but for all skills and only right at the start and permanent
17:03:42 <MarvinPA> could be a little annoying for those who don't want to curse their weapon
17:03:57 -!- ZChris13 has quit [Client Quit]
17:04:11 -!- ZChris13 has joined ##crawl-dev
17:05:14 -!- evilmike has joined ##crawl-dev
17:06:16 <ekiM> They'll have to make do with 5.
17:06:23 <galehar_> MarvinPA: yes, current Ash is designed to be played fully bounded I guess. We agreed with dpeg to go with that for 0.8, even if it has drawbacks and to try to address it in the next version.
17:06:26 -!- ZChris13 has quit [Client Quit]
17:06:32 -!- ZChris13 has joined ##crawl-dev
17:06:33 <ekiM> Or is it none at all?
17:06:42 -!- ZChris13 has quit [Client Quit]
17:06:48 -!- ZChris13 has joined ##crawl-dev
17:06:57 <galehar_> ekiM: you'll have to unwield to get the bonus.
17:07:59 <galehar_> I guess animate skeleton will be popular :)
17:08:40 <galehar_> and you don't need to invest in any skill to cast it.
17:09:12 <ekiM> Ahh, but staff of channeling is so cool. qq
17:10:04 <galehar_> well, I guess that's the point of the conduct too.
17:10:16 <ekiM> Yep!
17:10:18 <evilmike> I use animate skeleton on ashenzari characters
17:10:54 <galehar_> I think it hurts hybrids the most, which is interesting. Force you to choose your side.
17:10:55 <evilmike> and I got the idea from other people. So it seems to be popular already
17:11:16 <Jordan7hm> once you get enough piety you can drop the weapon boundedness anyway
17:11:24 <Jordan7hm> was what I always found at least
17:11:25 <evilmike> keep it for the xp boost, I say
17:11:32 -!- ZChris13 has quit [Client Quit]
17:11:37 <evilmike> you get +12.5% just for having a weapon bound
17:11:42 <galehar_> he could gift you the book of cantrips :)
17:11:50 <MarvinPA> presumably that's why piety gain was reduced and the xp boost removed :P
17:12:18 <st_> don't really get why transfer knowledge was made worse
17:12:38 <galehar_> it's just more expensive.
17:13:12 <st_> but why?
17:13:32 <galehar_> so that the choice of what to reskill is more crucial.
17:14:06 <galehar_> anyway, I have to sleep
17:14:12 <galehar_> bye
17:14:47 <MarvinPA> night
17:14:48 <st_> I never use transfer knowledge before the endgame anyway, and abyss is infinite piety...
17:15:12 <st_> not sure if anyone does anything but get more fighting early/mid
17:15:35 <MarvinPA> i used it early to get a whole bunch of evoc for staff of earth this game
17:15:42 <Jordan7hm> I had a really good HEBe
17:15:50 <Jordan7hm> that I dropped trog to go with ash
17:15:50 <MarvinPA> other than that though yeah, just moving junk skills into fighting
17:15:54 <Jordan7hm> and pumped spellcasting
17:16:08 <Jordan7hm> so that by zot he was a caster with wicked fighting skills
17:16:16 <Jordan7hm> splatted him in pan due to stupid though
17:16:25 -!- galehar_ has quit [Remote host closed the connection]
17:16:56 <dpeg> back
17:16:58 <Jordan7hm> I've done that a couple times, I find it pretty effective (dropping trog is way too easy)
17:17:26 <st_> was this before the change to giants wading in water
17:17:31 <dpeg> MarvinPA: wanna talk about Ash skill boost? I can explain.
17:17:57 <MarvinPA> sure, i'm not against how it was implemented or anything, it just struck me as a little odd :P
17:18:42 <MarvinPA> thinking about it, it's probably quite a useful/powerful effect so having a reasonably tough requirement for it seems good
17:19:39 <dpeg> MarvinPA: We urgently needed something **good** to have players at least think about cursing more than necessary for piety purposes.
17:19:48 -!- |eith| has joined ##crawl-dev
17:20:52 <dpeg> In another stroke of brilliance (insert irony as desired) it occurred to me that having a binary reward could be good -- i.e. not somerthing like boundedness, which somehow continuously increases with cursed gear.
17:21:09 <dpeg> I feel that in this way there are more interesting choices for the player to make.
17:21:25 <dpeg> MarvinPA: Do you also wonder about the effect itself?
17:21:33 <dpeg> !tell galehar You are my hero!
17:21:34 <Henzell> dpeg: OK, I'll let galehar know.
17:21:58 <MarvinPA> hm, i vaguely followed the discussions where it was proposed but i can't remember the exact reasoning behind it
17:22:35 -!- eith has quit [Ping timeout: 264 seconds]
17:22:50 <dpeg> MarvinPA: if we reward all skills (and perhaps let players choose them), players are naturally led to boost a few, most probably really high ones.
17:22:59 * greensnark proposes "bondage" as a term to replace "boundedness"
17:23:03 <dpeg> This is not only against the spirit, it's also less interesting gameplay-wise.
17:23:03 -!- ais523 has quit [Read error: Connection reset by peer]
17:23:06 <dpeg> greensnark: +1
17:23:14 <greensnark> I knew you'd like it :P
17:23:23 <greensnark> You were bound to
17:23:28 <dpeg> "You are fully covered in bondage and rely on Ashenzari to move across the room."
17:23:40 <MarvinPA> yeah, boosting low skills seems good gameplay-wise and still a strong effect
17:23:44 <dpeg> dpeg ****** - bound, tied and gagged
17:23:45 <MarvinPA> and nice and passive, too :)
17:23:55 <casmith789> dpeg: players are naturally led to boost many, not high skills. Crawl doesn't reward few high skills as much as many low skills.
17:24:08 <MarvinPA> anyway i have an ash character in progress so i'll have a play with it soon, i imagine
17:24:42 <ekiM> I better clear some hells before CDO updates. :F
17:24:51 <dpeg> MarvinPA: exactly, wanted to keep going when greensnark interrupted. One bit I had in mind aboud Ashenzari was tactical inflexibility coupled with broad strategical appeal. Reskilling is one of them (more below), but the skill boost is too: it won't do you much good very late, but it will be noticeable in between.
17:24:56 <greensnark> @whereis ekiM
17:24:56 <Gretell> ekiM the Sorcerer (L27 MuWz), a worshipper of Ashenzari, saved in Hell on 2011-03-21 after 301536 turns.
17:25:03 <greensnark> Aha, another disciple of bondage
17:25:22 <ekiM> What else.
17:25:39 <greensnark> Bonded Farmer
17:25:50 <greensnark> I need an adjective form
17:25:50 -!- Fangorn_ has joined ##crawl-dev
17:25:56 <greensnark> Apart from "bound"
17:25:58 <ekiM> Serf? :p
17:26:09 <dpeg> casmith789: we agree they'd rather boost a middling weapon skill (gaining the first six levels is cheap) or a middling/high magic skill? (Completely discarding Fighting and Spellcasting, of course.)
17:26:15 <ekiM> Indentured.
17:26:50 <casmith789> I'm not sure we're talking about the same thing. Are we talking about gaining exp or gaining levels?
17:26:51 <greensnark> !lm ekiM ash muwz s=rune
17:27:12 <dpeg> casmith789: gaining a boost to skill levels.
17:27:21 <Sequell> 6 milestones for ekiM (ash muwz): 1x decaying, 1x icy, 1x slimy, 1x barnacled, 1x abyssal, 1x silver
17:27:49 <casmith789> oh, then naturally you'd want it on higher skills because it takes more exp (well if the skills are not both over 14)
17:27:52 <greensnark> !lm ekiM ash muwz s=rune x=max(turn)
17:28:01 <dpeg> casmith789: okay, so we agree :)
17:28:32 <Sequell> 6 milestones for ekiM (ash muwz): 1x icy [285052], 1x abyssal [266303], 1x slimy [262064], 1x silver [229830], 1x barnacled [144460], 1x decaying [89985]
17:28:32 <dpeg> highlights two problems with the current system, but I don't like how he is blamed for something that's faulty somewhere else: (a) Not all skills are equal. In particular, some skills are not worth being trained to the maximum -- that should be taken care of anyway (slowly, skill by skill); (b) there is too much xp in the game. I don't have a ready solution for (b), but I hope we'll get ideas over time.
17:28:53 <dpeg> Jordan7hm: Hi! Great to see you here.
17:29:02 <ekiM> greensnark: Testing autochannel probably ate up a lot of turns in there somewhere. :P
17:29:13 <casmith789> there is too much exp in the game? hmm. Do you think so?
17:29:20 <dpeg> Absolutely.
17:29:21 <ekiM> Also resting for 20000 turns or so to cure hell stat drain!
17:29:43 <Jordan7hm> hey dpeg
17:29:50 <dpeg> If we cut all the optional branches it might actually be okay, especially with the recent cuts in levels.
17:30:02 <dpeg> But the additional branches destroy all semblance of balance.
17:30:19 <dpeg> Jordan7hm: Great vaults, thank you very much. I like your portal vault concept, too.
17:30:46 <dpeg> Jordan7hm: Something like an Arena was briefly speculated about on the portal vaults wiki page, did you see it?
17:32:09 <Jordan7hm> yeah, the one that involved betting?
17:32:14 <dpeg> Jordan7hm: I think so, yes.
17:32:20 <evilmike> when I skip optional stuff (elf, most of zot, sometimes crypt) I usually wind up ascending at around level 23 or 24, I actually find it hard to reach 27 sometimes (probably a good thing)
17:33:01 <dpeg> evilmike: yes. I think plain 3-runers (with Elf, without Slime) should only make it to XL 27 on Zot:5, if at all (i.e. Exp 100 species). This seems to work out mostly.
17:33:08 <evilmike> but doing tomb, or clearing zot, or spending a while in pan, or doing a zig can boost xp to insane levels. A regular 3 rune game seems to have enough xp though
17:33:29 <casmith789> I guess I skip zot which is where most of the exp is
17:33:32 <dpeg> Jordan7hm: I think one of my ideas (could easily been of someone else) was that there are two factions and you join one. Could be more interesting, at least sometimes.
17:33:36 <casmith789> so I lose quite a few levels there
17:33:45 <evilmike> doing tomb early can let you reach level 27 without even having cleared anything deeper than the entrance to vaults
17:34:02 <dpeg> I guess we need to nerf everything.
17:34:13 <casmith789> sounds like a change for .9
17:34:23 * dpeg hands out nerf hammers to everyone.
17:34:26 <Eronarn> buff monsters, nerf players
17:34:31 <casmith789> let me run megabat in peace :(
17:34:45 <dpeg> casmith789: megabat?
17:34:54 <casmith789> !streak megabat
17:34:55 <Sequell> megabat has 8 consecutive wins (TrFi, MDBe, SpEn, DDNe, MiGl, MfIE, DGCj, SEEE), and can keep going!
17:34:56 <greensnark> Just change branches so the entrance seals the moment you enter the branch until you get the rune
17:35:05 <casmith789> my alt 100% account
17:35:12 <dpeg> While we have some devs in here plus Eronarn: could someone look into Eronarn's trampling patch?
17:35:37 <greensnark> Wasn't that a trampling megapatch
17:35:47 <greensnark> I'll take a look sometime tomorrow/day after
17:35:47 <Eronarn> it didn't change that much
17:35:49 <dpeg> casmith789: you know that the existence of streakers is used to prove that the game is too soft? :)
17:35:55 <dpeg> Only partially joking, actually.
17:35:56 <Jordan7hm> yeah I think the two faction idea could have a place - in terms of theme within the general concept, it would fit well with Oka in particular
17:36:02 <Eronarn> it mostly just shifts some stuff around, and passes some stuff into hurt()
17:36:04 <dpeg> greensnark: cool, many thanks.
17:36:07 <Eronarn> (this is one of the things hard to do in the current system)
17:36:24 <casmith789> If I were doing what elliptic was, I wouldn't be on 100%
17:36:30 <casmith789> (playing random combos)
17:36:32 <Eronarn> the 'shove stuff to the side' change is not in, but is trivial to code (just means you need to choose a different location to push them to) - was waiting on feedback as to whether we want it
17:36:36 <greensnark> Do we have a plan for the needle brands thing on the 0.8 page, or is that another postponee
17:36:43 <dpeg> Jordan7hm: there could also be the inevitable good (or just normal) vs evil battle. Followers of good gods have no choice then, of course.
17:36:59 <greensnark> I don't like that needles can affect things like golems, but I'm also woefully out of touch with the state of affairs
17:37:12 <Eronarn> greensnark: i think they can't affect totally nonliving any more
17:37:15 <Eronarn> but still demons and stuff
17:37:20 <MarvinPA> they can
17:37:25 <MarvinPA> you can paralyse orbs of fire :(
17:37:28 <Eronarn> oh, okay
17:37:35 <greensnark> Yeah, that's just weird
17:37:49 <casmith789> you can needlestab everything
17:37:50 <dpeg> casmith789: oh, I believe the game is too hard for long streaks with random viable combos. Thank god, otherwise we'd be screwing up quite badly.
17:37:50 <MarvinPA> i'm not keen on it either but i never used ranged combat/needles so i can't comment on the balance and such really
17:38:08 <casmith789> dpeg: take out the word viable, and elliptic is on ~75%
17:38:24 <dpeg> I propose to make that 0.9 stuff. Needles can have a good place in the game, but we need more thought and discussion on the matter.
17:38:31 <greensnark> !streak hyperelliptic
17:38:32 <MarvinPA> !gamesby hyperelliptic
17:38:32 <Sequell> hyperelliptic has 6 consecutive wins (DrFE, SEPr, MuHu, HuWz, KeIE, DEEn) and has won their last 2 games (DGNe, MfAM).
17:38:33 <Sequell> hyperelliptic has played 29 games, between 20110128 and 20110317, won 21 (72.4%), high score 2224117, total score 31711581, total turns 1725480, total time 150:13:35.
17:38:37 <dpeg> Are needles abused so much that we need a quick stop for 0.8?
17:38:40 <Eronarn> can we just use rPois for it? +++ = totally immune to needles, ++ = very resistant, + = somewhat resistant
17:38:41 <casmith789> No
17:38:42 <greensnark> dpeg: No
17:38:49 <evilmike> hardly anyone actually uses needles
17:38:51 <greensnark> Hardly anyone uses them that I can see
17:38:51 <casmith789> you need throwing 27 for them to be useful really
17:38:52 <MarvinPA> they're not abused very often, it's just amusing when they are :P
17:39:03 <evilmike> some people go for 27 throwing and try to needle stab the hell/pan bosses, but that can end badly
17:39:09 <casmith789> you have basically no chance of paralysing orbs of fire without decent throwing
17:39:19 <dpeg> Okay, let's wait with the needles. No need for another front.
17:39:23 <greensnark> Let's postpone needles
17:39:28 <due> Why is paralysing orbs of fire with 27 Throwing an issue?
17:39:32 * greensnark brings out the postpone hammer.
17:39:34 <dpeg> due: Hi!
17:39:44 <casmith789> yeah, I think throwing should have a reason for existing
17:40:08 <dpeg> casmith789: sure, and it will be possible to do it right. Just needs thought and talk.
17:40:14 <greensnark> It's just that you don't expect needles to work on nonliving things
17:40:32 <Eronarn> i don't see an orb of fire as having any weak points
17:40:32 <greensnark> If needles have a note saying they're magical and affect everything I'd stop worrying
17:40:51 <Eronarn> or anything other than fire, fire, and more fire
17:40:54 <due> That's a change we cna make then.
17:40:59 <dpeg> greensnark: your solution for branches was not serious, I think, but I've wondered along these lines.
17:40:59 <greensnark> But the default mental model of needles poisoning things with circulatory systems doesn't quite mesh with golems and orbs of fire
17:41:21 <greensnark> dpeg: Actually, a large reason why the midgame is so easy/tedious is because of branch skimming
17:41:32 <dpeg> greensnark: I absolutely agree.
17:41:33 <due> Sure -- but I don't think that's a reason to disallow the effect, just a reason to change the flavour/effect to allow it.
17:41:34 <greensnark> People do Snake:1-4, go elsewhere, etc.
17:41:42 <evilmike> if branches locked you in, I would just postpone doing them until I was sure I could steamroll everything without any worries
17:41:48 <evilmike> ie not enter snake until like level 20
17:41:50 <dpeg> The pendulum is boring, and the food clock way too weak to hepl.
17:42:02 <due> Otherwise needles are totally useless except for certain points in the game and so nobody will use them and we may as well delete them.
17:42:03 <greensnark> evilmike: Sure, but that forces you to go do more dangerous levels
17:42:08 <casmith789> oh right, yes it just doesn't make sense going into an area if you're way underleveled
17:42:10 <dpeg> evilmike: it would lead to more tough decisions than now, I am sure.
17:42:15 <Eronarn> one possible solution would be that branch ends get harder the longer you wait before doing them
17:42:32 <casmith789> Eronarn: longer? how? turncount?
17:42:38 <due> Eronarn: not really possible
17:42:41 <dpeg> Eronarn: possibly use the time between "enter branch" and "now".
17:42:43 <greensnark> If you postpone Snake until you're level 20, that's fine: you lose the items and xp from Snake:1-4 until then
17:42:59 <Eronarn> due: howso?
17:43:12 <casmith789> if it's based off turncount then autoexplore will be junk
17:43:17 <due> Eronarn: Where do you define the point that someone decides to start doing the level?
17:43:18 <dpeg> Rationale: by entering [branch] you've alerted everyone that trouble is around. Etc.
17:43:25 <Eronarn> dpeg: issue with enter branch is that you can get penalized unncessarily if you have, say, a unique camping on a level
17:43:26 <due> When they dip into Snake:5?
17:43:27 <evilmike> also, there's a lot of variability in branch end vaults
17:43:38 <evilmike> swamp particularly
17:43:48 <greensnark> That's also fine
17:43:49 <evilmike> variability in difficulty, I meant to say
17:43:56 <greensnark> The midgame is too damn easy
17:44:03 <greensnark> Snake/Swamp in particular :P
17:44:08 <dpeg> greensnark: We are trying to improve by making it shorter.
17:44:16 <ekiM> Shoals is good.
17:44:23 <greensnark> Yes, but as long as branch skimming is trivial and a no-brainer, people will do it
17:44:28 <Eronarn> due: possibly starting from when you find the level the branch is on, or something
17:44:28 <dpeg> greensnark: of course.
17:44:29 <ekiM> Make Snake and Swamp good and D:10-20 more interesting.
17:44:35 <greensnark> This is really a pretty fundamental midgame flaw
17:44:37 <casmith789> actually shoals is the only one I don't branch skim
17:44:38 <Eronarn> absolute is not good; when you enter the branch is also not good
17:44:49 <casmith789> oh swamp too but it's boring
17:45:05 <MarvinPA> snake is the only midgame branch i do some of early, shoals is hard and swamp is tedious :P
17:45:06 <greensnark> The game's a lot more fun when you do the branch to the end right when you find it for Snake/Swamp/Shoals, but there's no incentive to the player to make them do that
17:45:19 <ekiM> Any serious turncount clock is going to penalize people not playing in boring but optimal speed-wise ways. :\
17:45:21 <dpeg> I have confidence everything will turn out well, simply because we're aware of the problem.
17:45:44 <Eronarn> ekiM: it doesn't have to be a linear turncount clock
17:45:45 <dpeg> Okay, so what about greensnark's proposal then? No clocks, just a simple rule.
17:45:51 <Jordan7hm> greensnark: I'd argue that it's more fun
17:45:53 <greensnark> dpeg: Hey, my solution isn't serious :P
17:45:57 <Jordan7hm> if it were more fun people would do it that way
17:45:58 <Eronarn> look at the OOD timer, for example - you don't have to 'play fast' to get around it
17:46:03 <casmith789> locking people in? that sounds bad.
17:46:06 <Eronarn> yet it does successfully discourage scumming
17:46:10 <greensnark> Jordan7hm: No, people tend to do what they think is safe
17:46:26 <Eronarn> have difficulty start where it's at now; stay there for, say, 10k turns
17:46:26 <Jordan7hm> because dying isn't fun if you don't feel the situation was fair
17:46:29 <greensnark> Players will grind if they think it benefits them
17:46:31 <Eronarn> after you find the branch, or whatever
17:46:39 <dpeg> Jordan7hm: most people hate Hive (moreso with four levels) but still do it diligently and patiently :)
17:46:56 <casmith789> I like hive :(
17:46:57 <Jordan7hm> people skip labs
17:46:59 <Eronarn> and after that grace period, only then does it start ramping up - presumably with a cap on how high it can
17:47:00 <greensnark> I've lost count of the number of people who map Shoals entirely and then drown, for instance, just because they think they'll miss items otherwise :P
17:47:04 <dpeg> Jordan7hm: those wimps :)
17:47:14 <dpeg> greensnark: priceless!
17:47:20 <Jordan7hm> hive is a situation where the value is higher than the aggravation
17:47:29 <Eronarn> since the point is just to try to make people do branches earlier, not to make the branches always be hard (if you come back way way way later on an uberchar, no need to try to balance for that)
17:47:31 <greensnark> Hive rewards mindless tedium with food
17:47:32 <casmith789> labs are just a puzzle that doesn't fit in crawl followed by loot
17:47:35 <greensnark> And items
17:47:40 <dpeg> Jordan7hm: that's a very subjective assessment. I skip Hive whenever I can.
17:47:54 <Jordan7hm> you value the food less than the aggravation
17:47:58 <monqy> Jordan7hm: not necessarily, but that sort of comparison shouldn't even happen
17:47:58 <Eronarn> casmith789: one suggestion was made to have the mino be super buff and wandering
17:48:03 <Eronarn> that might be interesting
17:48:11 <ekiM> Hive is fun and takes like five minues.
17:48:13 <Jordan7hm> I don't disagree, I'm just saying that people will generally do what's fun (dying being not fun)
17:48:13 <greensnark> The lab could be more active
17:48:17 <casmith789> I agree with ekiM
17:48:28 <Eronarn> (also, make him able to move around, so that even if you tele when you spot him he'll catch up with you fast)
17:48:28 <due> What is greensnark's suggestion?
17:48:31 <MarvinPA> labs show up quite early now, to the point where the minotaur can be an actual threat
17:48:35 <MarvinPA> which is nice at least
17:48:36 <greensnark> I don't have a serious suggestion
17:48:38 <Jordan7hm> removing the teleport trap end vault from the lab
17:48:40 <dpeg> casmith789: (a) some people like labs, (b) they have been around forever, (c) they have been improved considerably, (d) at most one per game now. Case closed?
17:48:40 <Jordan7hm> would be suggestion #1
17:48:45 <due> Jordan7hm: Why?
17:48:46 <Eronarn> Jordan7hm: oh god seriously, yessss
17:48:52 <Jordan7hm> nothing like finishing the stupid lab
17:48:55 <evilmike> the minotaur is also pretty frightening if it picks up a rod
17:48:55 <Jordan7hm> to have to restart
17:49:03 <Eronarn> it's a terrible, unfun, spoiler-rewarding vault
17:49:06 <due> Hm.
17:49:08 <Jordan7hm> its the only vault that makes me want to go into the .des files to spoil myself
17:49:18 <Eronarn> all it wastes is a bit of your time, it's not any appreciable amount of food
17:49:19 <dpeg> It was a lot of fun making those lab vaults, I tell ya!
17:49:30 <Jordan7hm> lab could use more cooler stuff
17:49:39 <Jordan7hm> more small monster vaults, small features
17:49:39 <dpeg> Jordan7hm: Details!
17:49:44 <Eronarn> minotaur packs
17:49:44 <Jordan7hm> I'll work on some
17:49:47 <casmith789> I enjoyed the first couple of labs. And I enjoyed the one today, because I had great fun blasting through the walls with LRD
17:49:53 <greensnark> Eronarn: Lich minotaurs
17:49:54 <casmith789> I think labs would be more fun if they had no maprot
17:49:56 <dpeg> greensnark: can you ramp up the mutation rate of labyrinths?
17:50:01 <evilmike> there should be a minotaur surrounded by blade traps with beef jerky all over the floor
17:50:06 <greensnark> Hehe
17:50:08 <greensnark> I like it
17:50:14 <Eronarn> really though: make the minotaur very buff and wandering
17:50:21 <greensnark> dpeg: Why not
17:50:24 <Eronarn> with special code to make him always able to catch up with you
17:50:24 <Jordan7hm> I hadn't played much .6 or .7 and I did notice that the lab has more stuff now than it used to (though maybe just my perception)
17:50:24 <dpeg> Eronarn: sounds good to me.
17:50:25 <monqy> on labs, the mazier Hells are kind of like labs except they actually pressure the player to go fast, have good challenge, etc.
17:50:28 <Jordan7hm> the glass walls and stuff
17:50:31 <dpeg> greensnark: do it! I can't :)
17:50:54 <greensnark> I'll get to it tomorrow
17:50:55 <Eronarn> it would turn lab into 'this place is trivial to solve, but you might run into the minotaur, and he's likely to be unkillable'
17:50:59 <ekiM> I agree with casmith789.
17:51:01 <greensnark> Tonight I'm just waiting for my cao backup to finish
17:51:12 <Eronarn> which means you are committing yourself to have to use some unknown amount of your escape items
17:51:22 <Eronarn> or get into a very tough fight
17:51:22 <monqy> except for hell banishment, of course. speaking of hell banishment, if there's a good implementable about it, I'm willing to code
17:51:29 <dpeg> ekiM: without maprot you'd just autoexplore?
17:51:31 <Eronarn> monqy: 'remove it'
17:51:38 <monqy> Eronarn: yes but how
17:51:49 <evilmike> didn't someone suggest forbidding banishment in hell entirely?
17:51:50 <casmith789> dpeg: which outlines the problem with labyrinths
17:51:54 <Eronarn> monqy: just specialcase it for now, it doesn't add anything to the game to be randomly banished while standing around in hell
17:51:57 <evilmike> ie from weapons, random effects, the spell
17:51:59 <monqy> Eronarn: special-casing miscasts from hell effects to remove banishment? special-casing banishment in hell?
17:52:00 <dpeg> casmith789: I don't have a problem with labyrinths.
17:52:10 <casmith789> the interface is ruining the player's labyrinth play
17:52:12 <Eronarn> monqy: miscast, for now
17:52:13 <ekiM> Labyrinths should play more like those bits in House of Leaves.
17:52:14 <greensnark> We should use more braided mazes
17:52:19 <dpeg> Who among devs is fine with removing hell banishment? I am.
17:52:24 <Eronarn> monster banishment in hell isn't anything worse than monster banishment anywhere else late game
17:52:35 <casmith789> hell banishment is nothing like labyrinth maprot
17:52:37 <greensnark> +1 Hell banishment removal
17:52:38 <Jordan7hm> hell banishment makes little sense
17:52:39 <Eronarn> (which is to say, it definitely still has problems)
17:52:51 <MarvinPA> banishment as a hell effect wouldn't be missed, yeah
17:53:00 <dpeg> The main problem, to me, is that the Abyss is like a resting place if you're doing hells.
17:53:04 <Jordan7hm> removing it makes hell much less annoying and eliminates a reprieve
17:53:05 <greensnark> But I'd retain the banishment as the miscast effect
17:53:05 <evilmike> it's a nuisance, and actually helps you
17:53:11 <dpeg> greensnark: yes, sure
17:53:13 <casmith789> oh right we were actually changing the subject
17:53:17 <ekiM> Hell + Abyss are separate planes in my mental flavor map. And the Abyss is too easy if you're doing a Hell.
17:53:22 <evilmike> I mentioned this somewhere else, but hell banishment is basically "return to the start of the map, be fully healed, and get some loot"
17:53:41 <casmith789> evilmike: and waste 5000 turns on your speedrun :)
17:53:43 <Jordan7hm> + spend 10 minutes doing something boring
17:53:44 <Eronarn> dpeg: abyss with the lovecraftian-ish monsters; but they only come out to play once you've been there longer amounts of time, or gotten the abyssal rune, or have pissed off Lugonu
17:53:51 <dpeg> monqy: seems we gladly accept a patch that removes hell banishment but keeps the miscast effect :) 2:0
17:53:53 <monqy> I remember I tried poking around making hell effects get their own miscast type and then special-casing it not to banish, but there was a bit of ugliness since there was another special-case in the code and they didn't stack well
17:54:02 <Eronarn> and i mean 'longer amounts of time' in the per-game sense, not per-trip sense
17:54:09 <dpeg> Eronarn: for making Abyss harder?
17:54:11 <Eronarn> i.e., if you spend 50k turns in the abyss, it starts from 50k later
17:54:13 <Eronarn> yes
17:54:19 <dpeg> Eronarn: yes, something like this.
17:54:31 <monqy> which is why I liked the idea of making banishment attempts in hell generally do something special, like fail but open up a malign gateway
17:54:36 <monqy> was that galehar's idea? I forget
17:54:45 * Eronarn has plans to write up a panlord-level random abyss monster generator
17:54:46 <greensnark> That's a nice idea
17:54:51 <due> I'm fine with removing hjell banishment
17:54:58 <dpeg> 3:0
17:55:10 <due> It's boring and tedious and one of the reasons I don't do hell.
17:55:23 <dpeg> monqy: are you willing to take that up? (I am only happy when I know a good idea is with someone.) Bonus points for malign gateways.
17:55:50 <monqy> malign gateways are good?  I'll look into doing it like that
17:55:51 <due> Hjell = like Hell, only in Norway
17:55:53 <Eronarn> eh, banishment is fine in hell other than the hell effect i think
17:56:04 <due> Eronarn: that's what I meant
17:56:05 <dpeg> due: it is Helvete, I think.
17:56:08 <ekiM> What else banishes in hell anyway?
17:56:14 <casmith789> miscasts
17:56:17 <due> dpeg: Fjord joke :)
17:56:20 <Eronarn> distortion, casters with it
17:56:20 <evilmike> usually the player trying to escape in a panic
17:56:23 <casmith789> summ and tloc
17:56:38 <greensnark> Eronarn: We're referring to hell effect banishment here
17:56:40 <dpeg> self-banishment, but that is always cheap, unless you belong to Lugone
17:56:54 <monqy> only problem I think is lugonu self-banishment, yeah; would it be reasonable to special-case this to work and not make a malign gateway?
17:56:54 <greensnark> It's not like banishment from other sources is common in Hell
17:57:18 <greensnark> monqy: I'd say make only hell miscast effects do special banishment
17:57:39 <monqy> hm
17:57:40 <dpeg> what greensnark says
17:57:47 <Eronarn> add malign gateway as a miscast effect; if hell effect miscast rolls banishment, instead it does malign gateway
17:57:49 <due> monqy: Oh, just edit hell miscast banishment
17:57:50 <Eronarn> done
17:58:02 <due> Eronarn: elegant!
17:58:04 <dpeg> where "special banishment" == "cast malign gateway"
17:58:13 <monqy> ok
17:58:16 <Eronarn> it should really be a miscast anyways
17:58:22 <dpeg> Eronarn: true
17:58:28 <due> monqy: malign gateway should be doable as a non-monster spell too
17:58:43 <monqy> mg as a miscast for both summ and tloc?
17:58:50 <Eronarn> it'd make sense, yeah
17:58:55 <due> ??malign gateway
17:58:55 <Henzell> malign gateway[1/1]: Summons a portal through which an eldritch tentacle emerges. Depending on spell power, it will be friendly for a number of turns, before turning hostile, or the portal closes and it is severed, whichever happens first (either way, it will turn hostile). Level 7 Summ/Tloc found in the Book of Demonology. 1/3 chance of draining a point of int.
17:58:57 <dpeg> Out of whose twisted, bizarre brain did the idea of MG evolve anyway? Looks like Mu?
17:59:09 <greensnark> Far too many people around here obsessed with tentacles
17:59:10 <due> dpeg: Think it was Mu
17:59:11 <Eronarn> it was planted there by the beings beyond space and time
17:59:25 <Eronarn> greensnark: you forgot a 'not'
17:59:37 <Eronarn> well, 'are not', anyhow
17:59:38 <dpeg> greensnark: MG is really cool to watch.
18:00:04 <greensnark> Yes, writhing tentacles have a certain something.
18:00:08 <Mu_> yeah MG was my idea :P (and none of my work)
18:00:17 <due> greensnark: a 'je ne sais qois'?
18:00:27 <greensnark> due: Right
18:00:38 <due> :D
18:00:42 <ekiM> More cool effects please! I was really impressed with MG and IOoD. Among others.
18:00:46 <due> greensnark: I am making palak daal tonight.
18:01:06 <greensnark> !learn add itsmu Malign gateway was his idea
18:01:06 <Henzell> itsmu[5/5]: Malign gateway was his idea
18:01:15 <due> dpeg: homunculus absolutely won't be finished for 0.8 -- possibly not even 0.9, but I think that's okay
18:01:17 <greensnark> due: Have fun :)
18:01:29 <greensnark> I'm not a huge fan of palak, but it's pretty popular :)
18:01:46 <greensnark> At least you're not making palak paneer, there is some hope for you :P
18:01:52 <dpeg> due: don't worry. Let's try to finish the holies for 0.9, ideally complete with Zig monster set, and Pan level.
18:03:01 <greensnark> Frying pan level
18:03:26 <due> greensnark: actually, it was the first curry I came across which didn't seem totally tomato based
18:03:35 <due> I am not really a fan of paneer
18:04:00 * greensnark hates paneer.
18:04:07 <dpeg> re: branch hopping. Let's all thinkg about the matter some more, okay脽
18:04:30 <greensnark> Yes!
18:05:03 <greensnark> D:1-9: best part of Crawl
18:05:15 <dpeg> 1.0 is around the corner, need to beat Crawl into something hardy with our nerf hammers by then.
18:05:22 <greensnark> What, really?
18:05:28 <dpeg> Of course not :)
18:05:28 <greensnark> Aren't we going to 0.10 after 0.9
18:05:34 <due> greensnark: I totally agree, actually. D:1-9 is my favourite part of the game.
18:05:35 <dpeg> Has never been settled.
18:05:39 <greensnark> Or we could do hexadecimal numbering
18:05:39 <due> greensnark: Early portal vaults, early uniques, etc.
18:05:49 <ekiM> You need a rune to go past D:15. Or Have some big levels that are TOUGH and all the downstairs are in the middle on D:15.
18:06:06 <greensnark> The new stuff in early dungeon is great
18:06:07 <MarvinPA> oh hey requiring a rune at some point in the midgame is an interesting one
18:06:08 <ekiM> Early orc castles.
18:06:17 <dpeg> MarvinPA: I agree.
18:06:21 <evilmike> that idea is the best one yet
18:06:22 <Jordan7hm> one issue is when you end up with crappy unique floors in branches
18:06:25 <greensnark> Plus the fact that you're far more constrained in the amount of dungeon you can retreat to safely while still farming xp
18:06:36 <due> hm
18:06:39 <greensnark> Once you hit the Lair, you get a huge increase in the amount of dungeon you can farm
18:06:39 <Jordan7hm> with multiple tough uniques
18:06:54 <monqy> need a rune to leave Lair
18:06:56 <due> we could make further descent past a certain point require a rune, and access to the "other" of the threee primary branches also require a rune
18:07:03 <greensnark> monqy: Something like that!
18:07:06 <Jordan7hm> you either go back or move forward, and moving forward means that retreat could be blocked off
18:07:07 <due> or, a rune to enter vaults!
18:07:22 <Jordan7hm> which makes most people retreat and switch branches
18:07:27 <MarvinPA> a rune to enter vaults might work, especially with late D now having bigger (nastier) vaults
18:07:29 <monqy> I love getting a rune before leaving Lair -- one of the best things in the game
18:07:52 <due> Jordan7hm: that happens very rarely
18:07:54 <evilmike> locking people out of branches is better than locking people into them, I think
18:07:57 <MarvinPA> to enter Vaults, that is
18:08:22 <MarvinPA> monqy: winning lairless is the other best thing :P
18:08:26 <monqy> yes!
18:08:30 <dpeg> asking for one rune in the first half of dungeon is good, as is asking for another for Vaults
18:08:52 <Jordan7hm> due: I'd say it happens most games
18:08:57 <greensnark> ack, cao down to 160M :P
18:09:02 <monqy> dpeg: so long as it doesn't lock people out of challenge games
18:09:04 <casmith789> due: the occurance is not that rare, in my experience. You get levels with Aizul, Agnes and Nikola and as a result switch until later.
18:09:07 <greensnark> I might actually have to take down telnet until this backup is done
18:09:14 <ekiM> Ahh a rune to enter the vaults and a sharp spike in difficulty of the main dungeon sounds very cool. Especially if the difficulty is implemented by cool levels like Forest or whatever. Also I got the River of Lethe in my last win, that is old and super cool.
18:09:19 <due> hm
18:09:21 <Jordan7hm> the only games I find it doesn't happen are games where I die too soon :)
18:09:31 <greensnark> ekiM: Yeah, Lemuel classic that :)
18:09:38 <due> casmith789: Does it actually or are you just only remembering the instances where it does?
18:09:41 <greensnark> I think he put Maud in there
18:09:42 <MarvinPA> ekiM: kilobyte bumped up the chances of getting vaults like that in the late dungeon now
18:09:42 <casmith789> not saying this is a bad thing.
18:09:55 <dpeg> monqy: I don't worry about challenge games. We design for ordinary games, players will make their challenges themselves.
18:09:57 <due> Lethe <3
18:10:01 <Jordan7hm> perhaps gearing multiple uniques to generate moreso in the main dungeon
18:10:06 <Jordan7hm> rather than in branch levels
18:10:13 <MarvinPA> so it's likely that you'll get 2 or 3 big late D vaults in most games, which is pretty awesome
18:10:17 <due> Jordan7hm: Which branches are issueous?
18:10:21 <casmith789> due: I will investigate.
18:10:26 <due> We can icnrease their individual weights.
18:10:29 <due> dummy weights, rather
18:10:30 <ekiM> No amnesia traps anymore though. :P
18:10:58 <monqy> dpeg: maybe I should have been more specific with what I meant to say: "so long as it doesn't too strictly enforce a single order"
18:10:58 <dpeg> ekiM: we could use maprot for Lethe, though
18:11:13 <due> Time to go out, bye!
18:11:17 <dpeg> monqy: sure sure, but I think there is still enough content to let players react.
18:11:20 <dpeg> due: bye!
18:11:25 <ekiM> How about on D:15 there is a "castle" with a "drawbridge" and 5-9 scrolls of acquirement in the corner towers.
18:11:34 <greensnark> Hehe
18:11:36 -!- |eith| has quit [Ping timeout: 252 seconds]
18:11:37 * due pushes ekiM into the moat.
18:11:39 <MarvinPA> heh
18:11:41 <dpeg> cool apart from the drawbridge :)
18:11:54 <greensnark> And if you fall through a trapdoor you land in the Vestibule
18:12:29 <greensnark> Where Geryon will be suitably impressed if you scribble random words starting with "E" on the floor
18:12:31 <dpeg> Ideally, the dungeon levels would look different before and after the checkpoint
18:12:54 <greensnark> You: "Eigenvector" Geryon: Aaaargh!
18:13:02 <dpeg> <3
18:13:04 <ekiM> Yeah, my actual idea is: how about a level on D:15 that is pretty damn tough (not sure what the flavor is but "castle' might be a placeholder..) and to progress to the deep dungeon with the different difficulty and style you either have to beat that level, or use  a rune to open a shortcut.
18:13:45 <greensnark> Yes, it'd be nice to have some milestones in the main dungeon
18:14:19 <monqy> I was thinking more about malign gateway as a miscast and it seems a bit problematic: what about when there's not enough space to make one? Would hiding in closed spaces to avoid it be too abusable?
18:14:21 <ekiM> (I realize i have been inspired a little bit by NH here, hence the joke, but... I think it could help with the midgame blues)
18:14:27 <dpeg> By the way, this would also explain the idea of "rune" = "some sort of key" quite well.
18:14:43 <casmith789> the scrolls of acquirement should be in a chest, and there should be 4 dragons locked behind doors leading into rooms with different types of loot, the whole area filled with vault guards and 5 shaft traps
18:14:50 <dpeg> monqy: well, you get other miscasts then, no?
18:14:58 <dpeg> Stop it!
18:15:08 <dpeg> No more references to this lame and sad excuse of a game!
18:15:19 -!- dpeg is now known as kickpeg
18:15:26 <MarvinPA> heh
18:15:27 -!- blackflare has quit [Ping timeout: 252 seconds]
18:15:30 <casmith789> that's a bit sad, calling crawl lame :( I rather like it
18:15:40 <greensnark> casmith789: That's crazy talk
18:16:09 <kickpeg> Also no jokes about the crippled, disabled and crawling part of humanity.
18:16:12 <ekiM> Also the random portals to hell and pan are a bit... random. How about large vaults to access them?
18:16:29 <ekiM> And much fewer.
18:16:32 <kickpeg> ekiM: entry portals to Abyss, Hell, Pan are cool, suire.
18:16:40 <casmith789> well there are only 2 to pan iirc?
18:16:46 <greensnark> Just need someone to create entry vaults
18:16:59 <greensnark> An added bonus of entry vaults will be livening up the dungeon that contains the vault
18:17:16 <ekiM> Right!
18:17:35 <monqy> dpeg: on getting different miscasts, right, but is the potential to avoid a specific miscast worrisome?
18:18:23 <kickpeg> Everyone here knows that speech, tiles, vaults can be created even by the braindead, illiterate, lobomotised and otherwise handicapped populace. And we'll take most everything.
18:18:58 <MarvinPA> i keep meaning to try my hand at some vaults
18:19:06 <ekiM> Well I am all of those things, maybe I will look into it. :P
18:19:09 <greensnark> kickpeg: That ... didn't sound very complimentary :)
18:19:11 <MarvinPA> since i go on about how much i want d:27 vaults so often
18:19:12 <kickpeg> MarvinPA: you're a coder, you can do better :)
18:19:15 <casmith789> MarvinPA: make sure you don't go to vault 8
18:19:19 <MarvinPA> haha :P
18:19:21 <ekiM> Once I got autochannel and autofight up to scratch.
18:19:23 <kickpeg> monqy: no, I don't think so. What are the other Tloc/Sum miscast effects?
18:19:34 <greensnark> MarvinPA: dpeg is afraid of programmers who design vaults, actually
18:19:47 <greensnark> Because they don't put in enough glass
18:20:08 -!- bf has joined ##crawl-dev
18:20:14 <kickpeg> Well, our coders are sensible, sensitive, literate with living brains -- they're the pinnacles of mankind!
18:20:17 <greensnark> Also while he's changed his nick, you can safely reference him as dpeg and he won't even notice!
18:20:24 <kickpeg> Only that they don't value glass enough.
18:20:27 <greensnark> dpeg only reads lines where he's nickpinged
18:20:32 <casmith789> dpeg: tloc high level is instant teleport/damage/confusion, masses of damage (distortion unwield effects), glow; summ high level is summon hostile 1s
18:20:38 <greensnark> Oh wait, he's cheating and reading everything!
18:20:44 * kickpeg sends everyone a metric ton of glass.
18:20:59 <ekiM> Argh dpeg is a different color now, confusing!
18:21:06 -!- kickpeg is now known as dpeg
18:21:12 <dpeg> monqy: given that, don't worry about players trying to skip MG.
18:21:15 <evilmike> how hard should d:27 vaults be, should they contain all zot portals, etc etc?
18:21:24 <evilmike> that sounds like an interesting thing to attempt
18:21:46 <monqy> kickpeg: tloc 3 is high damage, damage&tele&confusion, banishment, or high glow; summ 3 is permanent small abomination, permanent 1, a few abjurable common demons, or banishment
18:21:51 <greensnark> You'd just use downstairs that get fixed up as Zot portals, iirc
18:22:10 <MarvinPA> evilmike: my vision of them is either for some big-ish vaults that contain all the zot portals and are reasonably dangerous (nasty late D monsters or maybe some draconians)
18:22:12 <Eronarn> 19:13 < ekiM> Yeah, my actual idea is: how about a level on D:15 that is pretty damn tough (not sure what the flavor is but "castle' might be a placeholder..) and to progress to the deep dungeon with the  different difficulty and style you either have to beat that level, or use  a rune to open a shortcut.
18:22:17 <monqy> dpeg: of course, some of these miscast effects being trivial isn't a problem with making a really nasty one
18:22:18 <Eronarn> maybe this could be the Vaults entrance?
18:22:19 <greensnark> And it depends on the vault: you get to decide if you want to include all the portals in it
18:22:19 <MarvinPA> or someone suggested using serial vaults too
18:22:23 <evilmike> difficulty comparable to v:8?
18:22:28 <dpeg> evilmike: Lemuel made a number of D:27->Zot vaults that contained all stairs but I randomised them.
18:22:37 <Eronarn> i mean, appearing on the same level as the Vaults entrance
18:22:44 <MarvinPA> to have a bunch of smaller vaults containing the zot entrances spread around the floor
18:22:50 <evilmike> lemuel_castle can show up in late D with draconians in it, it's terrifying
18:22:54 <casmith789> drac castle I had this game which seems pretty hard. I decided to clear it even though it wasn't necessary
18:22:54 <greensnark> dpeg: Really? I don't remember seeing such vaults?
18:23:09 <greensnark> I mean late D vaults, yes, but not vaults that were designed for D:27
18:23:12 <dpeg> greensnark: oh, I do. Some of them have an agreeable amount of oklobs.
18:23:17 <dpeg> I just think they are too rare.
18:23:24 <ekiM> Eronarn: and you can either have found a rune to "unlock the vaults" (which makes sense, kinda), or beat the "castle" to go further in the dungeon?
18:23:31 <casmith789> dpeg: all those vaults got a massive boost to how often they appear recently
18:23:45 <Mu_> the monster density is so high with lemuel castle that it does become incredibly difficult when it's full of draconians, and the death drakes makes it even worse
18:23:45 <monqy> dpeg: particularly, the high damage, abjurable common demons, and permanent small abom seem trivial.  the permanent 1 is probably usually less nasty than a malign gateway, too
18:23:45 <casmith789> I think the chance is 1/4 per level after D:20 or similar
18:23:53 <casmith789> (now)
18:23:53 <Eronarn> ekiM: maybe, it's something to think of anyways
18:24:04 <dpeg> casmith789: I know, and I am very glad that kilobyte did that.
18:24:20 <monqy> "probably" because it's highly situational
18:24:24 <dpeg> monqy: not sure, with MG you have more time to react.
18:24:32 <monqy> hm
18:24:43 <monqy> I guess I'll try my hand at implementing it, then
18:24:51 <dpeg> monqy: in any case, it'll be an improvement -- yay :)
18:25:25 <monqy> another concern: the miscast switches aren't structured very well for special cases and rerolling; it might be good to redo them
18:25:58 <ekiM> Re-write Crawl in Python imo.
18:26:05 <monqy> heheheh
18:26:18 <Eronarn> rewrite crawl in haskell
18:26:27 <monqy> I'm rather partial to haskell, myself
18:26:28 <monqy> scheme too
18:26:56 <ekiM> There's docs for making vaults right?
18:27:05 <Jordan7hm> yeah
18:27:38 -!- edlothiol has quit [Ping timeout: 255 seconds]
18:27:49 <Jordan7hm> the documentation seems partially outdated though, I couldnt get some of the stuff in the docs to work even by directly copying it (renamed obviously)
18:27:49 <ekiM> Cool.
18:28:13 <evilmike> the documentation seems up to date except for serial vaults and maybe some of the really advanced stuff I dont know about
18:28:49 <greensnark> For the complicated stuff, it's best to use existing vaults to guide your implementation
18:28:52 <evilmike> although the stuff Jordan7hm is making falls under "really advanced stuff"
18:29:25 <ekiM> Serial vaults?
18:29:38 <Jordan7hm> yeah that's what i found greensnark
18:29:40 <greensnark> "Serial vault" is a bad name for it :P
18:29:51 <monqy> my wacky first idea at miscast restructuring: a structure for representing each miscast school/severity set; this structure is a list of function pointers and each function returns a boolean (true on success); for miscast effect determination, call a random function in the list and reroll on failure
18:29:55 <greensnark> ekiM: Vault clusters: one vault places a bunch of similarly themed vaults
18:29:55 <ekiM> Corny.
18:29:57 <Jordan7hm> I think what would help is a listing of lua functions you can use, rather than having to source dive
18:30:03 <Jordan7hm> I'll work on one eventually
18:30:08 <monqy> what's crawl's policy on function pointers?
18:30:24 <greensnark> Jordan7hm: That stuff should be generated automatically to prevent it rotting
18:30:44 <greensnark> There's a vague general plan to use a doxygen preprocessor, but nobody's gotten to it yet
18:30:56 <greensnark> monqy: What polcy? Use it if it helps
18:31:09 <st_> there are a lot of existing hell entry vaults that could be used
18:31:11 <Jordan7hm> yeah that would be better
18:31:16 <Jordan7hm> but something is better than nothing :)
18:31:19 <monqy> greensnark: sounds good
18:31:49 <monqy> any simpler ideas for restructuring miscast effect switches?
18:32:03 <MarvinPA> oh huh, there's some hell entries that never appear?
18:32:04 <greensnark> Wait, function pointers for miscast effect switches?
18:32:20 <monqy> yeah
18:32:20 <Jordan7hm> I spent a couple hours just testing out the function that i grabbed from the various l_.cc files to figure out what the arguments were, but someone probably shouldnt have to do that to make semi-complicated vaults
18:33:03 <monqy> I'm kind of used to functional programming; sometimes I forget how ugly that sort of deal is in C :(
18:33:05 <greensnark> monqy: Oh right, to choose the individual effects easily
18:33:19 <monqy> I actually completely forgot C++ doesn't have lambdas
18:34:02 <dpeg> How do I easily search for a commit whose message contains a particular string?
18:34:03 <greensnark> C++0x ftw
18:34:14 <st_> MarvinPA: they appear, but not specifically on the floors where hell portals spawn
18:34:19 <CIA-45> 03dpeg * r71a0489bda46 10/crawl-ref/source/dat/des/portals/spider.des: Add two new Spider portal vault maps by 7hm (#3555).
18:34:28 <MarvinPA> ah, weird
18:35:11 <greensnark> dpeg: git log --grep=Spider
18:35:18 <dpeg> thank you
18:35:22 <greensnark> Or do what I do and just 'git log' and search in less using /
18:35:28 <monqy> oh I was thinking piping to grep but that works too
18:36:27 -!- ekiM has quit [Quit: Leaving.]
18:38:46 <monqy> probably easier in C++ just to put a do...while loop around the switches
18:39:01 <monqy> and a far less drastic change
18:39:30 -!- Cryp71c has joined ##crawl-dev
18:39:33 <Cryp71c> rawr
18:40:15 <Cryp71c> Downloading linux, I can't dev DCSS in windows, I can't and I WON'T!
18:40:38 -!- bf has quit [Ping timeout: 276 seconds]
18:40:43 <greensnark> !players
18:40:45 <Henzell> 16 players: TempMfCr, chowder, Tenaya, VicViper, domo, mindloss, Ninvader, moramartin, perf, undersol, Arafel, nerdbeard, Pyrusette, rizdon7777, Blackmore, qubitsu
18:40:59 <TGWi> windows or bust
18:41:50 <dpeg> Cryp71c: few people can, it seems :)
18:42:05 <dpeg> VicViper, those memories
18:42:05 <greensnark> I used to use my Windows work machine for Crawl :P
18:43:45 -!- OG17 has quit []
18:43:57 <dpeg> Jordan7hm: serial vaults are carefully explained, just turn to section N in advanced.txt :P
18:44:08 <dpeg> And of course not under the name "serial vaults".
18:44:19 <Jordan7hm> I haven't even looked at serial vaults :)
18:45:37 <dpeg> But weren't you the one who remarked that they're not documented? What else is missing or dated?
18:45:49 -!- bf has joined ##crawl-dev
18:46:42 <Jordan7hm> not the serial vaults in particular - I'll have to look through it again, but I had something recently when I was trying to set up the arena portal... copied the explanation code directly and it didn't work, adjust the wording and it did.  I'll take a look to see if I can find the exact part
18:47:28 <dpeg> thank you
18:48:08 -!- edlothiol has joined ##crawl-dev
18:49:21 <TGWi> evilmike: serial vaults are easy, they don't even need documentation
18:49:45 <evilmike> I was mostly curious about abyss serial vaults
18:50:19 <evilmike> when I have more time I'll just figure out out by experimenting, though
18:50:53 <evilmike> dpeg suggested a while ago somewhere that serial vaults in the abyss would be interesting, I think they would be (mostly for scenery)
18:54:39 <greensnark> Did those tile issues in the abyss get fixed
18:54:44 -!- OG17 has joined ##crawl-dev
18:56:16 <dpeg> evilmike: I believe that serial vaults, even if only furniture, can give appeal to an otherwise rather bland landscape. That was my main motivation behind serial vaults at least. The applications about serial oklobs etc. are then lovely corollaries.
18:56:37 <Cryp71c> doh! Forgot I don't have a cd-rom drive on this sytem.
18:57:14 <Mu_> i made a serial vault themed around blood and gore but wasn't sure whether to push it or not :P
18:57:47 <greensnark> Ah, the glories of ##crawl
18:57:53 <dpeg> Mu_: of course!
18:57:59 <greensnark> I see elliptic has joined the crowd in proclaiming that the early game is too hard
18:58:00 <dpeg> greensnark: what is it脽
18:58:00 <TGWi> how does vault generation even work in abyss
18:58:06 <elliptic> greensnark: what no
18:58:08 <greensnark> And TGWi is being a fuckwit as usual
18:58:09 <elliptic> that's not what I said
18:58:13 <TGWi> <3 greensnark
18:58:23 <elliptic> at all
18:58:28 <dpeg> Our elliptic? He must be a schizophrenic then, for over here he is always on the good side.
18:58:41 <greensnark> Sorry < elliptic> except that you won't get early game nerfed because dpeg already hates the idea of streaks
18:58:48 <greensnark> Sounded like it, maybe I was misreading you
18:58:56 <elliptic> that wasn't a statement that I want early game nerfed
18:59:02 <upsy> he also said "I don't really have an opinion on the matter"...
18:59:08 <elliptic> as you might have guessed given my previous statement
18:59:16 <greensnark> But every hypothetical discussion in ##crawl-dev getting conflated into the devs-hate-players on ##crawl is pretty annoying
18:59:19 <elliptic> I was just trying to get tgwi to stop complaining :P
18:59:30 <greensnark> elliptic: Ok, sorry, I did misread you
18:59:41 <greensnark> My bad
18:59:43 <TGWi> more like "a dev believes the game should hate players"
19:00:17 <dpeg> I think I spelled out in detail in the pas-de-faq.
19:00:23 <TGWi> not liking aspects of a game is not a personal attack on people who add new features and have little to nothing to do with the problem
19:01:08 <dpeg> I don't hate streaks, but if players can win streaks, that's an indication something is wrong. We've been to generous with the winning margin.
19:01:13 <greensnark> TGWi: Sorry, but you chased the fuckwit theme really hard over in ##crawl just now. You have some way to go working that off :P
19:01:47 <dpeg> Truth to be told, TGWi is not the most constructive participant over here either.
19:01:55 <greensnark> Oh, he can be
19:02:07 <dpeg> Must be when I am off :)
19:02:11 -!- upsy has quit [Read error: Connection reset by peer]
19:02:37 <TGWi> when it's only eronarn and me? of course
19:02:38 <TGWi> :P
19:02:42 <monqy> pardon me, but is it reasonable for failed miscast banishment (it also fails when already in the abyss) to degrade into malign gateway, and on failing that, reroll?
19:02:51 <TGWi> monqy: go away we're hating me
19:02:56 <monqy> :(
19:02:57 <dpeg> monqy: sure!
19:03:05 <greensnark> monqy: Looks fine
19:03:10 * greensnark hates TGWi some more.
19:03:12 <dpeg> monqy: also, you're the only one who does not have to apologise. You're on topic.
19:03:38 <elliptic> does miscast banishment fail anywhere except in abyss?
19:03:46 <monqy> it fails from hell effects now
19:03:59 <greensnark> Hell miscast banishment is slated to go
19:04:09 <elliptic> really? okay
19:04:43 <elliptic> I always thought people complained too much about hell miscast banishment, but I'm certainly not attached to it either...
19:05:09 -!- upsy has joined ##crawl-dev
19:06:19 -!- pointless_ has joined ##crawl-dev
19:11:13 <dpeg> time to go, cheers
19:11:15 -!- dpeg has quit [Quit: leaving]
19:22:38 -!- pointless_ has quit [Ping timeout: 240 seconds]
19:22:40 -!- pointless__ has joined ##crawl-dev
19:22:42 -!- pointless__ is now known as pointless_
19:26:59 <monqy> is casting malign gateway with a dummy monster the best way to make one?
19:28:46 -!- edlothiol has quit [Quit: edlothiol]
19:29:18 -!- upsy has quit [Read error: Connection reset by peer]
19:29:32 <elliptic> malign gateway in hells actually sounds a little strange to me for flavor reasons if I understand the malign gateway flavor correctly
19:30:27 <elliptic> since it isn't exactly aligned with hells and I'm not sure the hell lords would really want tentacles poking into their lands
19:30:41 <elliptic> but I might be wrong
19:33:17 -!- upsy has joined ##crawl-dev
19:37:11 <st_> the voice that speaks to you in hell is the starspawn abomination, it's canon
19:38:29 <elliptic> oh okay ;)
19:48:27 -!- Cryp71c has quit [Read error: Connection reset by peer]
20:06:42 <Ashenzari> Abyssal Knights cannot Depart Abyss in Zot Defense. (https://crawl.develz.org/mantis/view.php?id=3630) by Gigalith
20:08:58 -!- Adeon has quit [Remote host closed the connection]
20:09:18 -!- Adeon has joined ##crawl-dev
20:11:29 -!- pointless_ has quit [Quit: ChatZilla 0.9.86.1 [Firefox 3.6.7/20100713130626]]
20:20:34 -!- valrus_ has joined ##crawl-dev
20:20:41 -!- valrus_ has quit [Remote host closed the connection]
20:20:47 -!- valrus_ has joined ##crawl-dev
20:44:19 <CIA-45> 03kilobyte * r9878742b9564 10/crawl-ref/source/ (abl-show.cc ng-setup.cc religion.cc): ZotDef: no Abyss with Lugonu.
20:44:25 <CIA-45> 03kilobyte * r350b47dd68d2 10/crawl-ref/source/ (fight.cc item_use.cc mon-act.cc): Temporarily halve the speed brand nerf.
20:49:13 -!- ZChris13 has joined ##crawl-dev
20:53:49 -!- ZChris13 has quit [Ping timeout: 250 seconds]
20:54:37 -!- Mu_ has quit [Quit: Defecator, may everything turn out okay so that you can leave this place.]
20:54:51 -!- edlothiol has joined ##crawl-dev
20:59:23 -!- edlothiol has quit [Ping timeout: 246 seconds]
21:08:53 -!- ZChris13 has joined ##crawl-dev
21:17:04 <Ashenzari> spriggans have no food in ZotDef (https://crawl.develz.org/mantis/view.php?id=3631) by KiloByte
21:18:15 <CIA-45> 03kilobyte * r206b326da850 10/crawl-ref/source/book-data.h: Disable Tukima's Ball as a player spell.
21:18:28 -!- ZChris13 has quit [Quit: ChatZilla 0.9.86.1 [Firefox 3.6.15/20110303024726]]
21:24:14 <CIA-45> 03kilobyte * r1079d134e06b 10/crawl-ref/source/dat/des/portals/spider.des: Whitespace and alignment fixes.
21:29:06 -!- ZChris13 has joined ##crawl-dev
21:32:16 -!- Cryp71c has joined ##crawl-dev
21:32:45 <Cryp71c> :( my linux installation failed to install the bootloader for some reason, but I had work to do so I had to reboot....now I have to install grub manually
21:32:47 <Cryp71c> grrrr
21:37:24 -!- Cryp71c has quit [Read error: Connection reset by peer]
21:43:07 -!- upsy has quit [Quit: Leaving]
21:49:54 <monqy> due: what's the best way to create a hostile malign gateway? cast the spell with a dummy monster?
21:53:16 -!- Clatch has joined ##crawl-dev
21:54:46 -!- TGWi has left ##crawl-dev
21:56:12 -!- ZChris13 has quit [Quit: Reconnecting鈥
21:56:19 -!- ZChris13 has joined ##crawl-dev
22:02:44 -!- casmith789 has quit [Ping timeout: 255 seconds]
22:04:47 -!- casmith789 has joined ##crawl-dev
22:54:20 -!- TGWi has joined ##crawl-dev
23:06:05 -!- Zaba has quit [Ping timeout: 246 seconds]
23:06:19 -!- ZChris13 has quit [Ping timeout: 248 seconds]
23:12:46 -!- Zaba has joined ##crawl-dev
23:17:21 <elliptic> kilobyte: given how you felt about berserk hunger requirements being inconsistent, want to change cloak of darkness? currently it is unusable at hungry for some reason
23:17:51 <TGWi> that cloak should be glowless or something
23:17:54 <TGWi> atm it's pretty weak
23:18:16 <kilobyte> no one ever uses it
23:18:17 <TGWi> otoh I've never found it with evo
23:18:24 <elliptic> I've been using it a lot my current game
23:18:30 <TGWi> how much does it cost?
23:18:32 <TGWi> like 3?
23:18:49 <elliptic> people do use it or ring of invis when they find it on a stabber without the spell
23:19:07 <elliptic> I don't know how large the hunger cost is, but certainly not large enough to forbid using it at hungry
23:19:18 <TGWi> the cloak is just a ring in cloak form though
23:19:19 <TGWi> afaik
23:19:32 <elliptic> I don't know whether the ring has the same hunger restriction
23:19:35 <TGWi> whereas boots of lev, say, are way fancier than the ring
23:19:42 <elliptic> but the spell and potion do not have a hunger restriction
23:19:58 <elliptic> I agree that the cloak isn't the best item, but the hunger restriction is still silly
23:20:09 <kilobyte> all evokables do
23:20:30 <elliptic> except amulet of rage doesn't any more, right? or did you leave that in?
23:20:37 <TGWi> evokable invis, you mean?
23:20:40 <TGWi> or does lev and stuff also have it
23:20:47 <elliptic> lev can be used at hungry
23:20:55 <elliptic> so I guess kilobyte just meant invis
23:22:06 <monqy> !tell due For implementing hostile malign gateway as a miscast effect, what do you think the best way to create one would be? cast the spell with a dummy monster?
23:22:07 <Henzell> monqy: OK, I'll let due know.
23:23:07 <elliptic> here's a crazy idea... actually make cloak of darkness evoke for darkness
23:23:12 <elliptic> rather than invis
23:23:29 <TGWi> how about permanent darkness
23:23:41 <elliptic> it would have to be a limited form of darkness, of course, so as not to be too overpowered
23:23:53 -!- valrus has quit [Remote host closed the connection]
23:24:09 <elliptic> permanent LoS reduction could work also I guess
23:24:11 <TGWi> darkness is a buff you want to have before seeing things
23:24:24 <TGWi> "optimal" play is to keep it up always, which is annoying
23:24:37 <TGWi> permanent los reduction by 12.5% or whatever
23:24:38 <TGWi> imo
23:24:40 <kilobyte> elliptic: good idea
23:25:04 <elliptic> yeah, permanent LoS reduction by 1 square (except it is multiplicative) sounds reasonable
23:26:14 <CIA-45> 03kilobyte * rd35ab41f5e90 10/crawl-ref/source/abl-show.cc: Remove the satiation requirements from evokable invis.
23:33:08 -!- valrus has joined ##crawl-dev
23:40:09 -!- Sequell has quit [Remote host closed the connection]
23:41:51 -!- Sequell has joined ##crawl-dev
23:41:53 <greensnark> !lg jarmok win 1 -ttyrec
23:41:56 <Sequell> 1. jarmok, XL27 OMWz, T:173250: http://termcast.develz.org/crawl.akrasiac.org/ttyrecs/jarmok/ 2006-12-25.22:04:22.ttyrec.bz2 2006-12-26.13:46:50.ttyrec.bz2 2006-12-26.18:19:26.ttyrec.bz2 2006-12-26.23:16:36.ttyrec.bz2 2006-12-27.12:46:59.ttyrec.bz2 2006-12-27.15:33:53.ttyrec.bz2 2006-12-27.17:13:01.ttyrec.bz2 2006-12-27.21:19:30.ttyrec.bz2 2006-12-28.21:07:38.ttyrec.bz2 2006-12-28.23:12:20.ttyrec....
23:44:00 <greensnark> !lg jarmok win 1 -ttyrec
23:44:00 <Sequell> 1. jarmok, XL27 OMWz, T:173250: http://termcast.develz.org/cao/ttyrecs/jarmok/ 2006-12-25.22:04:22.ttyrec.bz2 2006-12-26.13:46:50.ttyrec.bz2 2006-12-26.18:19:26.ttyrec.bz2 2006-12-26.23:16:36.ttyrec.bz2 2006-12-27.12:46:59.ttyrec.bz2 2006-12-27.15:33:53.ttyrec.bz2 2006-12-27.17:13:01.ttyrec.bz2 2006-12-27.21:19:30.ttyrec.bz2 2006-12-28.21:07:38.ttyrec.bz2 2006-12-28.23:12:20.ttyrec.bz2 2006-12-29....
23:47:34 <greensnark> !lg * Tomb 1 --tyrec
23:47:34 <Sequell> Malformed argument: --tyrec
23:47:38 <greensnark> !lg * Tomb 1 -ttyrec
23:47:48 <Sequell> 1. jarmok, XL27 SEWz, T:145617: http://termcast.develz.org/cao/ttyrecs/jarmok/ 2006-12-20.12:38:47.ttyrec.bz2 2006-12-20.14:09:57.ttyrec.bz2 2006-12-20.16:59:30.ttyrec.bz2 2006-12-20.17:22:31.ttyrec.bz2 2006-12-20.20:31:03.ttyrec.bz2 2006-12-21.12:08:30.ttyrec.bz2 2006-12-21.14:23:35.ttyrec.bz2 2006-12-21.22:12:08.ttyrec.bz2 2006-12-23.18:00:26.ttyrec.bz2 2006-12-23.21:07:54.ttyrec.bz2 2006-12-23....
23:47:57 <greensnark> !lg * Tomb 1 -tv
23:47:58 <Sequell> 1. jarmok, XL27 SEWz, T:145617 requested for FooTV.
23:48:00 <TGWi> greensnark: will reavers be returning as brawnjurers?
23:48:23 <greensnark> !lg * Tomb 1 -tv
23:48:23 <Sequell> 1. jarmok, XL27 SEWz, T:145617 requested for FooTV.
23:48:57 <greensnark> TGWi: Sounds unlikely
23:49:02 <TGWi> :(
23:49:10 <greensnark> They were more like wimpjurers anyway
23:49:40 <TGWi> pawnjurers
23:49:55 <TGWi> yawnjurers
23:50:02 <TGWi> yes, those
23:51:01 <TGWi> and now they're gonejurers :(
23:51:11 <TGWi> I'm done
23:56:40 <greensnark> Just how much space does CDO use for all the crawl versions it hosts
23:57:38 <TGWi> does it ever get rid of old installations?
23:57:40 <greensnark> Oh hey, CDO /var is tiny
23:58:06 <greensnark> TGWi: Yes, but only if all players have transferred their saves to newer versions
23:58:27 <greensnark> If some players haven't there's another script that can force-transfer the saves but that's only run manually
23:59:41 <greensnark> Napkin: All dgl stuff on CDO lives under /var, right?