00:06:32 -!- upsy has joined ##crawl-dev 00:22:07 -!- TGWi has quit [Read error: Connection reset by peer] 00:29:16 -!- dnr has quit [Quit: Leaving] 01:54:45 -!- ZChris13 has quit [Quit: Page closed] 02:13:45 -!- monky has quit [Quit: hello] 02:48:06 -!- galehar has joined ##crawl-dev 03:10:59 -!- Textmode has quit [Ping timeout: 260 seconds] 03:14:14 -!- Pseudonut has quit [Remote host closed the connection] 03:19:22 Seems I forgot to reduce invisibility casting noise 03:19:33 I put its noise at 2 on the wiki 03:19:51 is that enough or should I make it silent? 03:25:58 Make it silent, in my opinion. 03:26:02 The glow it gives off is a massive enough issue. 03:31:41 ok 03:35:32 -!- Noom has quit [Ping timeout: 255 seconds] 04:32:04 -!- Mu_ has joined ##crawl-dev 05:12:27 moin 05:17:38 hi zaba 05:18:02 what's up 05:25:21 due: your message about the guy against "capitol hill development process" made my day :) 05:25:35 bhaak: i... forget what i said. 05:25:38 i was kind of kissed off. 05:25:42 ... pissed off, even. 05:25:48 Haha, Capitol Hill development 05:26:22 yeah. 05:26:38 Someone made a very amusing and totally "don't have a clue whatI'm talking about" post. 05:26:49 SIWOTI syndrome 05:27:08 SIWOTI? 05:27:16 http://xkcd.com/386/ 05:27:47 :) Oh. 05:27:53 I was about crawl development though. 05:28:10 ... IT. Damn it. 05:30:15 Hi, I just registered to say that discussion about game Development should be allowed since is such a hot topic and pretty much every thing that'll get discussed will be related in some form. Its ok it doesn't have a subforum but I think it would be cool if you could discuss anything crawl related, if you would want to get the developers to modify something you know where to reach them. 05:30:21 Besides, if this will be "the" Crawl forum, why wouldn't the devs come here? This place is much more user friendly so it would get many more visitors than the wiki, who knows what conclusion may come out of discussions with many users? 05:30:28 "why wouldn't the evs come here? This place is much more user friendly"! 05:31:32 I wish forums could use nice CSS themes 05:31:45 The new forum has that ugly-is-cool thing that is so common with web forums 05:32:18 Anyway, I wouldn't get upset over random chatter like that, that's classic siwoti :P 05:32:20 I hate web forums. :/ 05:32:32 Well, I was in a bad mood. 05:32:40 due: +1 05:33:16 Oh, and I filled out group registration stuff. 05:33:41 It might be a few months before it's done though, ther'es apparently quite a back log. 05:35:11 heh.. I don't really like web forums, either 05:35:27 due: Someone wants to know why there are scrolls as loot in volcanoes :P 05:35:35 Something about scrolls catching fire :P 05:35:37 I wish forums could use reader-independent technology, you know like usenet :) 05:35:45 bhaak, yeah 05:35:51 and like mail, irc, ... 05:35:56 greensnark: for the same reason potions spawn in ice caves 05:36:11 kilobyte: You're telling the wrong person :P 05:36:26 what I miss most is sensible thread handling and decent killfile/filter possibilites 05:37:04 it's sad nntp is dead 05:37:30 of course nntp is dead, it's not xml-based! 05:37:51 greensnark: "mwa. ha. ha." 05:38:18 bhaak, neither is the web 05:38:47 I don't think a "development thread" in that forum hurts. As long as people don't think it will magically be added to the game. 05:39:02 bhaak: agree 05:39:21 Zaba: yeah, HTML was based on the one thing worse than XML, SGML, before it all went down the tag soup 05:39:48 yeah, and html5 has its own parsing rules 05:40:12 I have a book on SGML somewhere. 05:40:15 Do not ask me why. 05:40:57 if people want to talk, let them talk. Usually not much comes from talk alone (I'm so glad there are no "how can we improve nethack's score system" threads in RGRN anymore. Probably because the other people also noticed that they just went in circles) 05:41:18 -!- TGWi has joined ##crawl-dev 05:42:21 03kilobyte * re8f337ecb75b 10/crawl-ref/source/mon-data.h: Give Wiglaf the same speed as other dwarves. 05:42:23 Zaba: I don't understand why they didn't just used XML for html5. A little more strict syntax is so much more helpful in debugging and parsing, and almost nobody writes HTML by hand anymore and if they do, they can write valid XML 05:42:27 03kilobyte * r9d8151a73bb9 10/crawl-ref/source/makefile: Default SAVEDIR to ~/.crawl for installs to /usr or under. 05:42:28 03kilobyte * rc5507f3ba5e8 10/crawl-ref/source/makefile: Don't use setgid, don't chown/chmod at all save for DGL's installation. 05:42:30 Has anyone used DynIst? 05:42:41 Er. Dyninst. 05:43:06 bhaak: the W3C wanted to move solely to XHTML and abandon HTML, but that didn't fly 05:43:59 bhaak, xml parsing is probably too strict for real-world purposes 05:44:02 kilobyte: maybe the failed XHTML2 was the problem. But that was not XML to blame, but that the W3C screwed up by going the wrong way 05:44:27 xhtml2 had good ideas 05:44:48 bhaak: "nobody writes HTML by hand anymore"? Uh... I'd say that generators are pretty dead, at most it's hand-written PHP/etc templates. 05:45:09 unfortunately, html5 had more hype 05:45:38 which tend to be buggier than Ballmer's pet skunk 05:45:43 Zaba: not really. close your tags, all attributes must be enclosed in quotes, if you use other tags, tell us the namespace. It's not really that much different compared to plain HTML4. Of course it can get more complicated if you want 05:46:13 kilobyte: I mean static content. Templates and dynamic content is not really "by hand" 05:47:14 I mean, tags themselves tend to be written by hand rather than selecting a text and clicking "bold" 05:47:25 did anybody know, that galehar has great ideas? "Add a mind flayer player race!" and "A spell to walk on the ceiling would be great!" the latter one is really cool 05:47:35 which leads to syntactically incorrect files 05:47:51 add a levitation spell 05:47:57 TGWi: <3 05:48:05 * due sits on kilobyte. 05:49:03 !tell galehar On SA: "So anybody :) over the new skills interface and tiles in trunk. sooo good." 05:49:03 greensnark: OK, I'll let galehar know. 05:49:27 oh, greensnark! 05:49:32 galehar: yellow drac turns into golden dragon with dragon form? 05:49:36 Haha: "I've been playing Crawl for a good year now and I know that, when I'm elderly, I will only remember one thing about this game: Nessos is a DICK" 05:49:36 can you kill the pubkey you have for me in your github? 05:49:44 due: Sure 05:49:47 greensnark: thanks <3 05:49:48 hmm 05:49:56 it seems like it would be better to make up a fake "acid dragon" for them to imitate 05:49:59 it prevents me frojm using it in my own account so i just made a new one 05:50:04 but i thoguht i would ask anyway. 05:50:05 you don't have to actually add a monster version 05:50:57 due: Oh, didn't know that 05:51:02 kilobyte: if you have syntactically incorrect files, you are told immediately. If the parser is not strict, you first have to realize that something is wrong. Which might be much later or even never. 05:51:18 due: Key removed 05:51:41 and grey draconian should be more like a mini iron dragon than a bone dragon, but that's another issue 05:51:42 Danke! 05:51:47 Yes, I didn't know that either 05:51:56 I tried to add it and it went "OMG THIS IS ALREADY IN USE :)" 05:52:38 bhaak: that would just mean people saying "this new browser is broken, it doesn't accept my page that works in IE!" 05:53:22 even if they declare the version tag (by copy&paste from some random place) 05:57:47 kilobyte: huh? I don't think a html5 page that uses features from html5 looks unbroken in an older IE. 05:59:41 I mean people are going to use a random header they've seen somewhere no matter if they need it or not 06:02:03 I'm a nethackish developer. I don't mind if people shot themselves more often in the feet 06:02:43 especially if it means that there is more valid code/pages out there 06:04:34 -!- TGWi has quit [Read error: Connection reset by peer] 06:33:01 -!- syllogism has joined ##crawl-dev 06:36:01 hmm, oh great.. 06:38:15 greensnark, I wonder what is supposed to be the behaviour of special room placement in _roguey_level 06:38:28 greensnark, right now, it tries to force the special room to be placed in one of already generated rooms, but.. it doesn't 06:39:14 greensnark, so the actual behaviour is that the special room is placed in the normal manner by _special_room, that is, at random coordinates 06:53:57 ...and one of the rooms built by _roguey_level gets uselessly marked by special walls and floor 06:54:12 hmm. 07:03:27 greensnark, it's pretty easy to restore the apparently intended behaviour 07:08:02 -!- Zaba has quit [Ping timeout: 255 seconds] 07:18:54 -!- Zaba has joined ##crawl-dev 07:20:16 back 07:20:16 galehar: You have 1 message. Use !messages to read it. 07:20:23 !messages 07:20:23 (1/1) greensnark said (1h 31m 20s ago): On SA: "So anybody :) over the new skills interface and tiles in trunk. sooo good." 07:20:40 greensnark: I didn't do that. jpeg did. 07:20:48 and I agree, it's great :) 07:21:24 -!- Amonchakad has joined ##crawl-dev 07:22:21 hmm. 07:39:19 -!- Amonchakad has quit [Quit: When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net] 07:42:41 03kilobyte 07unicode * rbf51478a1c49 10/crawl-ref/ (399 files in 40 dirs): Merge branch 'master' into unicode 07:45:27 03zaba * r2cc29e612a67 10/crawl-ref/source/dungeon.cc: dungeon.cc: Shorten _builder_by_type somewhat. 07:45:30 03zaba * r1a99076688b4 10/crawl-ref/source/dungeon.cc: dungeon.cc: Move some duplicated code from _roguey_level into a separate function. 07:45:31 03zaba * r173c58d67294 10/crawl-ref/source/dungeon.cc: Only pick coordinates and build a special room when it isn't marked as created. 07:45:32 03zaba * r709837c551e5 10/crawl-ref/source/ (dungeon.cc dungeon.h): Reduce stair placement code duplication by using dgn_place_stone_stairs. 07:46:55 hopefully 709837c551e5 doesn't break things, but my testing tells me that if it does, it must be very subtle 07:47:47 bah, no one cares about stairs anyway :p 07:48:09 people may use the Portal spell for something for once 07:48:11 well... _builder_basic is used much more commonly than all that code anyway :P 07:48:50 so, like 70% of the dungeon will still have correctly placed stairs even if I've screwed something up :P 07:51:41 it's ok, we'll use hatches if we have to 07:51:59 galehar, hatches are affected by that change :P 07:52:12 what about shaft? 07:52:16 shafts are not 07:52:25 so, we'll use the shaft then :) 07:52:28 speed diving 07:52:49 so, does anyone oppose to having melded armour keep their ponderousness? 07:52:55 because I'm coding it 07:56:49 by the way, there's a problem with cursed weapons 07:57:12 any transform lets you get rid of them for free 07:57:43 before, spider form and vampire bat were exceptions, but I accidentally removed even that when getting rid of cursed armour block 07:58:13 that's a great abuse if you worship ash 07:58:22 you get to change weapon without uncursing it 07:58:23 yeah -- it even keeps the curse 07:59:13 melding seems wrong for weapons. Should we prevent the transform? 07:59:13 I wonder what to do. Reverting means just that you need a level 4 spell instead of a level 3 one. 07:59:48 or the cursed weapon jump back in your hand when you turn back :) 08:00:01 perhaps... I'd prefer melding or that 08:00:24 which _is_ melding for all practical purposes :p 08:11:45 or it keeps sticking to your paw/leg/whatever. You can't use it, and it gives you malus to movement and unarmed combat. 08:16:34 -!- MarvinPA has joined ##crawl-dev 08:25:13 03kilobyte 07ench-split * r51cf88caa650 10/crawl-ref/ (408 files in 40 dirs): Merge branch 'master' into ench-split 08:25:25 03kilobyte 07ench-split * rdc2de1536dc5 10/crawl-ref/source/abl-show.cc: Use Hex instead of Ench miscasts as costs in ZotDef. 08:25:27 03kilobyte 07ench-split * r6753a003a6b7 10/crawl-ref/source/skills2.cc: Add proper skill titles for the new schools. 08:32:45 a = b; if (a > c) a = c; is the same as a = std::min(b, c);, isn't it? 08:34:46 seems so 08:37:48 -!- Cryp71c has joined ##crawl-dev 08:38:01 Morning 08:38:49 moin Cryp71c 08:40:33 definitely make it re-stick 08:40:53 if the transformation has hands, they just keep wielding it; if it doesn't, it melds rather than 'falls away' 08:41:23 Eronarn, I don't suppose you're familiar with map_knowledge? 08:41:30 no 08:41:53 grrr! it doesn't seem I can find anyone who is 08:41:53 :( 08:51:53 messages when you try to passwall into deep water or lava 08:51:54 You sense a large body of water on the other side of the rock. 08:52:00 You sense an intense heat on the other side of the rock. 08:52:08 does that seem right to you? 08:52:55 yeah 08:53:03 03kilobyte 07ench-split * r11214880ea80 10/crawl-ref/source/spl-data.h: Return Ench (well, Hex) to Polymorph Other, lower it to level 4. 08:53:17 -!- Noom has joined ##crawl-dev 08:53:27 Paracelsus approves, it matches the theme of 4 classical elements perfectly 08:53:58 oops wrong... I meant a thousand ancient and medieval authors 08:54:15 Paracelsus did only elementals as "spirits" of elements 08:56:09 kilobyte, do you (by change) have experience / knowledge with map_knowledge? I've gotten to the point where I'm about to have to start commenting out code down a huge chain of possibilities to see if I can find out where the code I"m looking for is actually happening. 08:56:15 by chance* 08:57:06 I have a clue but no experience 08:58:23 I'm trying to allow antennae to detect invisible monsters when they're within LOS, but the player does not have sInvis. When I implemented antennae, I used the leftover code from divinations (set_detected_monster()) which was implemented to do the opposite of what I'm trying to do 08:59:24 I think some code will clear these monsters away 09:00:49 Right, I'm trying to find that code, but tracing it down is my problem, thus my deterioration to commenting stuff out and seeing if I can track it down -_- 09:03:40 No worries, I'll find it eventually. 09:06:40 set_terrain_visible() 09:06:51 cell->flags &=~ (MAP_DETECTED_MONSTER | MAP_DETECTED_ITEM); 09:07:18 but while you're there, it would be better to get rid of that flag altogether 09:07:45 we'd need to anyway if we are to implement different tiers of monsters for Ashenzari 09:08:13 for items it's already redundant since I had to give it a proper item for tiles 09:17:03 different tiers of monsters for Ashenzari? 09:17:33 trivial|easy|tough|hard 09:18:21 so you get told if that monster behind corner is popcorn or something that can splatter you on the walls 09:19:40 ah, gotcha. Well if I remove that MAP_DETECTED_MONSTER flag I'm not sure how best to implement the detection that exists in a fashion that is congruent with its current implementation for Antennae. 09:22:47 I'd add MONS_DETECTED_MONSTER and friends 09:36:19 kilobyte, were you saying that cell->flags &=~ (MAP_DETECTED_MONSTER | MAP_DETECTED_ITEM); was responsible for removing detected monsters in visible terrain? (I've commented out that line, and the behavior continues, so it must be only one piece of that implementation) 09:37:01 hrm, possible... :( 09:40:19 03kilobyte * r81b57146a165 10/crawl-ref/source/ (9 files in 5 dirs): Remove monster SpWr, add SpBe. Coolio forced us by adding the tile. 09:58:16 it occurs to me that forest could actually be a good replacement for hive, since spriggans = justification for tons of fruit lying around 10:09:32 -!- ahpla has quit [Read error: Connection reset by peer] 10:09:48 -!- ahpla has joined ##crawl-dev 10:14:00 -!- ahpla has quit [Ping timeout: 240 seconds] 10:21:13 -!- ahpla has joined ##crawl-dev 10:37:58 -!- galehar has quit [Quit: Page closed] 10:47:44 -!- eith has joined ##crawl-dev 11:29:47 -!- monky has joined ##crawl-dev 11:32:11 -!- blabber has joined ##crawl-dev 11:33:47 I wonder, under what conditions is sqldbm used? 11:44:35 -!- Textmode has joined ##crawl-dev 11:48:56 and.. why is pandemonium monster generation handled so differently.. 11:54:25 bloody, bloody hell, I'm confused. 11:56:18 Not hell, pandemonium :D 11:56:26 well, yes 11:56:33 I need somebody with good knowledge of the code, really 11:57:10 I need somebody to enumerate the problems that http://sprunge.us/MUdg introduces :P 11:58:03 because pan levels seem to be normally populated to me 12:01:28 oh wait, I know 12:01:51 it's actually pretty obvious, after following the complicated codepaths that things take 12:01:53 nevermind :P 12:01:55 -!- Siber has quit [Quit: Whoa! Partial hit!] 12:02:18 You're welcome :D 12:03:27 I'm still inclined to go like "bloody hell", though 12:03:30 ignorance is bliss 12:03:39 bloody pandemonium 12:04:49 pick_random_monster makes a distinction between abyss/pan and normal dungeon which, in the light of how mon-pick.cc functions can work with both equally well, seems rather pointless to me. 12:05:29 well, mons_rarity would need only a slight adjustment to work with pan 12:05:55 or.. actually, no 12:08:30 it could be made to work with it, though. 12:17:38 -!- blackpenguin has quit [Ping timeout: 255 seconds] 12:34:27 -!- eith has quit [Quit: sleep] 12:34:43 -!- eith has joined ##crawl-dev 12:34:44 -!- blackpenguin has joined ##crawl-dev 12:57:17 03zaba * rd07da882096c 10/crawl-ref/source/dungeon.cc: _roguey_level: Remove duplication in inner room placement code. 12:57:28 03zaba * r745041f62fc9 10/crawl-ref/source/dungeon.cc: _roguey_level: Simplify the bounds check by using std::min. 13:14:34 -!- galehar has joined ##crawl-dev 13:16:17 lol to asian crawler :) 13:18:23 -!- blabber has quit [Quit: leaving] 13:24:36 -!- syllogism has quit [Ping timeout: 250 seconds] 13:27:06 -!- syllogism has joined ##crawl-dev 13:37:31 got anyone from .kr here? 14:14:20 -!- TGWi has joined ##crawl-dev 14:33:41 random thought: it could be nice if berserk lasted longer if you're taking damage while berserking 14:41:05 would make sense 14:50:21 -!- elliptic has joined ##crawl-dev 14:56:45 sorear, hehe, trying to respond to that asian emailer, eh? 15:09:57 -!- upsy has quit [Quit: Leaving] 15:46:33 -!- eith has quit [Ping timeout: 245 seconds] 15:58:46 -!- Cryp71c has quit [Quit: Leaving] 16:01:17 -!- Raaf has joined ##crawl-dev 16:01:49 Hello 16:02:09 03galehar * rcbe136d14691 10/crawl-ref/source/spl-data.h: Make casting invisibility silent. 16:02:11 im new to this, is this the room where i can ask about dungeon crawl? 16:02:11 03galehar * r05fe7e372a82 10/crawl-ref/source/fight.cc: Always remove the helpless fake enchantment after the attack. 16:02:12 03galehar * r94c34f2b72dc 10/crawl-ref/source/ (player-equip.cc player.cc): Make armour keep its ponderousness when melded. 16:02:13 03galehar * r258aa44bb485 10/crawl-ref/source/player.cc: Fix merfolks and grey draconians being able to swim in all forms. 16:02:24 03galehar * re48f0affebc3 10/crawl-ref/source/aptitudes.h: Change kenku aptitudes to air +3 and earth -3. 16:02:51 sure 16:03:03 you're probably looking for ##crawl, unless the questions pertain to development 16:03:25 is the error Major version mismatch 0 (want 27) fixeble 16:03:32 for my savefile 16:03:34 oh kk tnx 16:03:43 oh errors go here 16:03:50 at leat I'm pretty sure they do 16:03:52 least 16:04:17 have you upgraded crawl and trying to load an old savefile? 16:04:28 no windows crashed 16:04:33 while i was playing the save file 16:05:01 hmm corrupted save file :( 16:05:09 so thats gone? 16:05:53 I don't know. You can try to post it on mantis, maybe it's not that bad. 16:06:02 But I can't promise anything 16:06:05 what is mantis? 16:06:11 our bug tracker 16:06:33 https://crawl.develz.org/mantis/main_page.php 16:06:36 tnx 16:16:32 -!- Pseudonut has joined ##crawl-dev 16:19:23 -!- due has quit [Remote host closed the connection] 16:21:11 -!- Jude has joined ##crawl-dev 16:24:08 -!- Zaba has quit [Ping timeout: 255 seconds] 16:25:05 -!- Raaf has quit [Quit: Page closed] 16:26:09 windows crashed, save file corrupted (https://crawl.develz.org/mantis/view.php?id=2905) by Raaf 16:35:06 -!- Zaba has joined ##crawl-dev 16:38:23 aha 16:38:37 ".chr" 16:38:55 Raaf is playing an old version with multi-file saves 16:39:13 we switched to single files *specifically* for crash robustness 16:39:25 I'll wait for kilobyte to do the final closing 16:42:03 that file he submitted is a bunch of zeros 16:42:25 as far as I know this is NTFS' usual failure mode during crashes 16:42:45 that sounds pretty fail 16:43:02 what a failure of a failure mode 16:43:03 (ha-ha) 16:46:05 most journaling filesystems behave better, but the situation isn't that rosy there either 16:51:27 sorear: in the current implementation, there is a guarantee for robustness against crashes of Crawl (and the code seems sound, at least after some stress testing), but not against crashes of the system itself. I mean, such a guarantee is available but is currently disabled. 16:52:03 a fsync() can lead to a pause of several seconds on a busy server like CDO 16:52:28 03galehar * ra2f37a319d5d 10/crawl-ref/source/ (player.cc player.h): Add a "permanently" boolean parameter to is_feat_dangerous. 16:52:31 03galehar * r811fb110a121 10/crawl-ref/source/spl-other.cc: Prevent passwalling into deep water and lava if it would kill you. 16:52:32 03galehar * r7108fa947adb 10/crawl-ref/source/teleport.cc: Make blink use is_feat_dangerous to exclude cells. 16:52:35 03galehar * re83a522ce6f3 10/crawl-ref/source/spl-transloc.cc: Make teleport use is_feat_dangerous to exclude cells. 16:53:12 I remember people ranting about how sucky ext4 was because open, write, close, rename, crash could leave you with an empty file if you didn't sync the write 16:53:25 I guess it's not that bad if ntfs does it 16:53:35 (wait, seriously? ntfs isn't journalled?) 16:53:44 sorear: perhaps you can suggest something. I do this: keep the old version both of the chunks ("files") and directory all the time, writing new ones into unused parts of the file 16:54:00 the problem is with switching the directory during commit 16:54:27 it's done by updating the header at the start of the file -- it's overwritten with a pointer to the new directory 16:55:09 this requires two write barriers: one after writing all data but before actually updating the header, one after 16:55:31 there's generally no way to do a barrier other than fsync() which is overkill 16:55:41 kilobyte: SQLite requires two fsync() calls per COMMIT 16:55:54 if they can't do it better, I doubt we can 16:56:10 I guess it does it the same way then -- it's the natural way to do. 16:57:17 I can think of solutions without any fsync() at all but the best I came up was MASSIVELY complex -- requiring coding an entire journaled log and checksumming blocks of the file 16:57:31 since the filesystem may reorder writes 17:00:46 sorear: I guess I should re-enable fsync()s then, at least on Windows, right? 17:10:15 who made the dcss icon? 17:10:45 -!- Zaba has quit [Ping timeout: 272 seconds] 17:13:52 TGWi: not sure, but if you want to mess with it, we have a SVG version of it now 17:14:06 which is somehow still not committed 17:14:45 kilobyte: I was going to hack together an unread posts / no unread posts indicator for the forums 17:14:46 well... 17:14:51 I don't need the svg 17:20:18 kilobyte: if you haven't done so already, you should read the documentation on sqlite.org 17:20:39 they have a huge amount to say about implementing reliable journalling on an uncooperative OS 17:21:07 -!- Zaba has joined ##crawl-dev 17:22:13 oh dammit, 0.7 did use a temp file plus rename approach 17:22:30 if that fails, I doubt there's anything we can really do :( 17:23:17 -!- galehar has quit [Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630]] 17:23:25 can paint make transparent images or do I have to install a real image editor? 17:25:55 guess not, damn 17:26:57 What I'd like to see: Transactional file I/O 17:27:20 kilobyte: temp file + rename will fail if the system reorders the rename before the data write 17:27:29 you need a fsync 17:33:09 people keep mulling over a barrier() syscall that would fix all such woes without that performance nightmare which is fsync() 17:33:20 but sadly there's no actual action on that :( 17:34:41 -!- syllogism has quit [] 17:42:59 kilobyte: in the bowels of ext3fs, a write barrier is accomplished by queuing the second write in the completion handler for the first 17:43:05 can the same be done in userland? 17:43:05 03kilobyte * r5f6c2d3dee17 10/crawl-ref/source/spl-other.cc: When passwalling into something deadly not water not lava, throw an error message. 17:43:07 03kilobyte * r65cf2bb0693c 10/crawl-ref/source/package.cc: Except for public servers, ensure robustness against filesystem crashes. 17:46:53 I have never read the bowels of ext3 (or any filesystem code below the VFS), so I don't know... but that sounds interesting 17:47:59 really, what most programs need is a way of ensuring any past writes to file A are no less durable than future writes to file B (usually A=B) 17:49:04 even with ideal filesystems, fsync() fundamentally destroys performance 17:50:10 and with ext3 (non ideal), you get gems like a fsync() on a small file blocking any writes for two minutes (slow flash with lots of IO) 17:50:26 I mean any writes for the entire filesystem 17:51:38 a write barrier would be useful, sure, but ... it's way lower level than Crawl needs 17:51:56 wait... I misread what you said. I thought you meant a fsync after a fsync... if you mean what I think now, it sounds correct and exactly what is needed. 17:52:06 I mean, yes, you can implement condition variables with LOCK CMPXCHG, but why? 17:52:31 what's so bad about write barriers? They are _higher_ level than fsyncs. 17:52:47 but far lower level than commit_transaction 17:53:00 (at least userspace write barriers, not necessarily those internal to a filesystem) 17:53:10 what we want is for either all of the writes to be durable, or none of them 17:54:26 unless the filesystem does transactions by itself, it's enough to ensure ordering 17:55:04 with certain devices that write in large blocks, preferably <= ordering 18:01:06 -!- valrus has joined ##crawl-dev 18:02:23 You are right... except for blocky flash, there is nothing to gain from not hiding writes after the barrier until the ones before succeed. 18:03:00 at least ensuring the handler manages to do its thing before the write head moves to the next sector 18:04:15 if someone requests a writeout (fsync(), sync_file_range(), etc), it's a matter of nudging the earlier writes 18:06:23 I notice OCS still has maprot 18:06:25 what's with that? 18:07:27 not sure. It's limited to the current level so it's tactical and thus not utterly unacceptable, but still... 18:07:35 it's not tactical 18:07:41 it's interface screw 18:07:43 at least dropping spells is abusable 18:07:48 doh, right 18:08:03 workable around with notes or a bot, indeed 18:08:22 even if it weren't workable around it would still be far more annoying than it is relevant 18:08:23 or ttyrecs or mapfile from dumps 18:08:54 ok, so it has to go 18:09:13 https://crawl.develz.org/mantis/view.php?id=1721 18:09:26 making you forget spells seems pretty bad too now that amnesia isn't unlimited 18:09:48 MarvinPA: what i want to do with brainfeed is make it a temporary lock on a spell 18:10:01 I've been saving OCS for cheap selective amnesia since the 0.3 days 18:10:18 if you get brainfed, and have a spell memmed, you may have it locked out and unable to be cast 18:10:19 ocs doesn't have brain feed but sure 18:10:27 I think zot traps can maprot too 18:10:28 it does int damage 18:10:40 it is not currently using brainfeed but it could be replaced by it 18:10:54 it's more int damage than brainfeed 18:11:00 ??div miscast 18:11:00 I don't have a page labeled div_miscast in my learndb. 18:11:04 ??divinations miscast 18:11:04 I don't have a page labeled divinations_miscast in my learndb. 18:11:08 yes, doesn't have to work out exactly the same though 18:11:09 brain feed should be buffed btw 18:11:31 i'm more interested in preserving the general tactical effects of the OCS rather than the specific numbers 18:11:39 did the div miscasts entry get removed or did I just forget its name 18:11:52 ??divination miscast 18:11:52 divination miscast[1/1]: 1: maprot/confuse 2: (d3 int loss / maprot) and confuse 3: (forget spell / maprot / 3-5 int loss) and confuse 18:12:01 Eronarn: how would that lock out expire? 18:12:02 in this case: very risky to be around; can kill you by int damage over time; can prevent you from using your spells for some time 18:12:16 -!- Cryp71c has joined ##crawl-dev 18:12:21 kilobyte: it could be independently, or it could be tied to the int damage you took from brain feed 18:12:21 Evening 18:12:30 Cryp71c: meow! 18:12:35 the latter would mean restore abilities would be a LOT more valuable to casters than currently 18:12:41 since a fair amount of stuff brainfeeds 18:12:52 Eronarn: I meant, timed or until you re-read it 18:13:17 not until re-read, that's just boring imo. and makes you run back to your stash for turncount++ 18:13:32 so does timed 18:14:14 kilobyte: well, you can mash 5; or you could quaff restab; or it could be a very limited duration (a few hundred turns) not tied to the statloss 18:14:20 clearly it should be until the next levelup 18:14:41 sorear, I don't suppose you know anything about map_knowledge? 18:14:54 how about 18:15:00 brain feed steals one spell until the caster dies 18:15:04 i don't think we should encourage people to rush back to their stash to re-mem spells though, it sucks with OCS (personally, i forget that i'm affected by it) 18:15:14 subsequent uses of brain feed reduce int 18:15:19 TGWi: that could be interesting except it'd still need to time out because of summons, abyss, etc. 18:15:45 it would justify having a longer timeout, though 18:15:56 sure, just make it time out when the caster dies 18:15:58 brain feed deletes one random spell, adds the spell to a FORGOTTEN SPELL LIST 18:16:09 while you have a forgotten spell list, 'M' doesn't work 18:16:13 level ups clear the list 18:16:16 that's really brutal 18:16:27 requiring level up is very very bad 18:16:36 and restricting M use 18:16:47 Level up is a nice catch-all for having a spell stolen and the creature being abyssed or fall down a serires of say, shafts. 18:16:48 I like my idea 18:16:56 i like both effects, but restricting M use is a much more severe effect 18:17:01 I rather like level up OR killing the caster 18:17:18 and what of level 27 chars? 18:17:21 restricting M does sound problematic, but it also makes brain feed rather dangerous. 18:17:22 there may be room for two effects, though 18:17:33 TGWi, eh, details :D 18:17:33 TGWi: same mechanic as felids gaining lives over xl27 presumably 18:17:45 yeah, there's virtual levels psot-27 18:17:51 although if you hit the xp cap... 18:17:59 meh 18:18:37 "expire after caster death or N turns" is fine 18:18:49 where N is a few hundred 18:19:51 TGWi, expire after X casts? 18:19:59 what? 18:20:34 a few hundred would be ok... a single or two '5's are fine, it's only prolonged waits that would be equivalent to scumming 18:20:38 5'ing a few times would instantly restore your spell list, what if the brain feed effect expires after a certain number of spell casts, to help reduce scumming (or at the very least, increase the effective cost of scumming turns) 18:21:05 keep self from levelling up to 27 with draining; easily level self up after getting brainfed 18:21:19 (only works once) 18:21:38 perhaps do this for earlier levels too to make it slightly more reusable 18:21:55 kilobyte, having to wait isn't usually dangerous under normal circumstances, and can be made trivially safe by going up a floor, it would be nice to see a solution which isn't so easily made trivial; imo. 18:21:57 my suggestion is fine imo 18:22:13 that too... it's not really an issue with felids since you do have a buffer and not levelling makes you lose lives you'd accumulate 18:22:16 (concept stolen from dtsund's felid gripe) 18:24:13 Cryp71c: 100-200 turns would often expire before you can even get to stairs 18:24:31 hrm, apparently I'm missing packages, can't compile without zlib, yet I know its installed...hrm. 18:24:50 Cryp71c: zlib or zlib-dev? 18:24:50 the idea is that you just kill the caster 18:24:54 honestly 18:25:00 kilobyte, right, just saying something that isn't just "hurp de durp, 5 5 5, brain fed gone!" would be nice 18:25:05 no 18:25:07 instead of some goofy spell thing, why not just make brain feed drain enough int to care about, eg a third of current 18:25:16 forgetting a spell ranges from crippling to ignorable 18:25:28 OG17, lots of other effects already drain int, kind of boring effect. 18:25:29 huge int drain is really really annoying 18:25:37 as new cboe proves 18:25:52 OG17: that would mean a massive amount of waiting the stat drain, especially now that you regain only one point 18:25:55 especially since it's often tempting to just wait it out to regen in lichform 18:26:15 I keep forgetting that changed, that should really be reverted 18:26:17 but yeah 18:26:21 kilobyte, I have zlib1g installed 18:26:36 Cryp71c: that's the library, you need the headers as well 18:26:41 gah 18:26:47 not that cboe is any better with that though 18:27:05 it's still super powerful, yeah 18:27:23 libz-dev on Debian, something similar elsewhere 18:27:25 any better with restoring lost int, I mean 18:28:22 MarvinPA: cboe? 18:28:52 omg, screw this netbook, compiling a file object every 3 seconds... 18:29:09 crystal ball of energy 18:31:44 kilobyte, thanks btw, that got me goin. 18:39:05 i think the best is probably something like: brain feed locks out a spell and does some int damage; further attempts do more int damage but only one spell can be locked out per feeder; killing the caster recovers the spell but not the int; the spell also recovers if you restore all of the brainfeed int damage 18:39:13 this should feel fairly natural to players 18:40:20 Sounds fine to me 18:40:47 it's good 18:40:54 -!- Cryp71c has quit [Quit: Leaving] 18:41:43 OG17: gaining all the points at once was a bit weird; if it needs to be changed back it should just regenerate faster 18:42:57 what about bigger losses and much bigger regeneration? 18:43:00 yeah the current formula is a bit slow i think 18:44:08 with the current formula deterioration 1 eventually results in actual losses 18:47:01 WTF... Windows doesn't have fsync() 18:47:59 monky: well, on average deterioration 1 balances out natural stat regeneration 18:48:23 it is essentially a balanced random walk 18:48:30 elliptic: I noticed my deterioration 1 games become imbalanced 18:48:42 imbalanced in what sense? 18:48:50 elliptic: yeah, but it's capped at your actual stat and if it hits 0 you die 18:48:56 so there is some imbalance there 18:49:01 tgwi: right, so you'll die eventually 18:49:12 but that would be true even if you doubled the rate of regeneration 18:49:12 imbalanced in comparison to natural stat regeneration 18:49:35 the expected time to die from deterioration 1 with no restore ab is ridiculously long unless you have a really low stat 18:50:05 if recovery rate varied with amount rotted, it would average at slightly below normal 18:50:06 idk 18:50:24 of course, but I thought the intention of deterioration 1 was to keep a steady deficiency but no active loss 18:50:25 rather, it could average at slightly below normal 18:50:44 monky: there is this thing called randomness 18:51:01 monky: unless you're a DD or a late-game Vp 18:51:33 making recovery rate proportional to the amount of stat lost is a reasonable idea, though 18:52:10 that would effectively undo the gradual recovery change 18:52:17 good riddance, I'd say 18:52:32 kilobyte: yeah, but it would be a smoother version 18:52:51 yeah, and that's better than the original state 18:53:08 :) 18:53:37 could accompany this with a buff to stat loss from non-rot sources 18:53:51 shadows and brain feed and stuff that never matters 18:55:22 a buff to what stats actually do would be a buff to stat loss, as well 18:55:31 -!- Noom has quit [Ping timeout: 240 seconds] 18:55:47 well, losing 1/13 of your dex is not going to be substantial anyway 18:55:49 as I see it 18:56:16 right 18:57:28 all I'm concerned with is that having meaningful stat loss available as a tactical effect is a lot more interesting than having the loss be a semipermanent effect as currently 18:57:44 I agree 18:58:09 especially since all that does is inflate the value of some consumables that would be useful regardless with tactical loss, except in a more interesting manner, as the current one is more for convenience than anything else 18:59:39 "drink a potion to avoid waiting around for hundreds of turns" vs "drink a potion to be cast a spell to stay alive" 18:59:47 able to cast 19:04:02 yes, it's definitely better if !ra is a tactical thing 19:06:39 TGWi: it is going to be substantial if it accumulates. Like, in Abyss trips. 19:07:11 but then, you'd have to have very low int in the first place 19:07:32 requiring a person constantly be exposed to stat drain for a long time to make it matter is not really making it matter 19:08:29 if you can get rid of it by resting, it should be tactical (ie larger losses and faster regeneration) 19:12:09 making stats matter more would also be nice 19:12:13 see str/dex weighting 19:13:27 str/dex weighting should apply to attack rate 19:14:00 no, not simply as such 19:14:17 and get rid of the damage/acc thing 19:17:36 or don't, even; but it makes sense to apply it to attack rate 19:18:05 str lets you swing burlier weapons faster and dex lets you swing smaller weapons faster 19:18:29 -!- Mu_ has quit [Quit: Defecator, may everything turn out okay so that you can leave this place.] 19:20:35 TGWi: the attack damage/rate systems both suck and we shouldn't bother making small tweaks 19:23:21 stat weighting just limits weapon selection by armor choice and removes a lot of freedom. See also: weapon moves 19:23:47 weapon moves (that are tied to weapon skill) is a good thing 19:23:57 unless of course the crawl of the future has players that want to dump a bunch of points into using a weapon that 19:24:00 er 19:24:17 bunch of points into a stat that just lets them use a weapon 19:24:33 weapon skill is good yes do this 19:24:46 right 19:25:17 the stat weightings should more affect which kind of weapon you're using rather than which class 19:25:42 there should be dextrous maces/flails, and big choppy shortblades (think meat cleaver) 19:26:24 if you're having equivalent dex and str options for every weapon type there's no point in doing it at all 19:26:37 no, not equivalent 19:27:15 then you're linking weapon selection to armor again 19:27:17 Eronarn: whips 19:27:28 a dex mace should feel different from a dex axe; but also a dex mace should feel different from a str mace 19:27:51 but generally, class determines stat 19:28:00 which is not a bad thing IMO 19:28:07 it is possible to have a weapon system that works in such a manner, but it will require more forethought than just 'stat weighting reduces speed now' 19:28:49 kilobyte: they should be weighted more towards one than the other but i think there should be at least one weapon in each for melee (possible exception: staves) 19:29:04 what would a dex axe look like? 19:29:10 side note, it'd be nice if there were more than two martial staves 19:29:17 and more than one sling and crossbow 19:29:25 what if there were hand crossbows? 19:29:26 MarvinPA: well do you mean in crawl or historically 19:29:29 and less than dozens of maces 19:29:33 in crawl i suppose 19:29:48 need a sling that fires large rocks 19:30:07 hand axe, hatchet, tomahawk, etc. - any kind of smaller axe. or you could turn to more exotic weapons 19:30:50 wait, is your system just "let's give every weapon class a great mace and a demon whip"? 19:31:02 no 19:31:23 the beefiest, baddass-est str weighted thing should be a mace or an axe 19:31:32 and maces/axes should have more beefy, badass str-weighted things 19:31:40 they do 19:31:55 yes, i'm not really proposing a tremendous departure here :P 19:32:04 but why would you ever go dex axes in that case 19:32:06 the primary differences would be shortblades and polearms i think 19:32:31 MarvinPA: if your race has good axe apt, and your char has good dex? :P 19:32:34 marvin you can look at the weapon moves wiki page for that, if you haven't seen it 19:33:09 unless it was deleted 19:33:10 !apt axe 19:33:11 Axes: Dr: 0, Dr[black]: 0, Ce: -1, DD: 1, DE: -2, DG: -1, DS: -1, Gh: -1, Dr[green]: 0, Dr[grey]: 0, Ha: -1, HE: -2, HO: 2!, Hu: 0, Ke: 1, Ko: -1, Mf: -2, Mi: 2!, Dr[mottled]: 0, MD: 2!, Mu: -2, Na: 0, Og: -3*, Dr[pale]: 0, Dr[purple]: 0, Dr[red]: 0, SE: -2, Sp: -2, Tr: -2, Vp: -1, Dr[white]: 0, Dr[yellow]: 0 19:33:37 there are some cool ideas there but i don't think weapon moves would be enough to make you use a worse weapon than you could be doing 19:33:44 no 19:33:55 that's why adding more Stuff to the speed/damage equations is a bad idea 19:34:44 we should be compressing the range of damage output, if anything, and differentiating more on effects than on raw damage output 19:34:46 I meant the part where I said what you said and learned about something 19:35:43 03kilobyte * rad52bb3dd9f2 10/crawl-ref/source/ (syscalls.cc syscalls.h): Add an implementation of fsync() for Windows. 19:35:45 also that I think things are much more important than they actually are without making any claims regarding their importance and/or actually say that it's a minor effect 19:36:02 Eronarn: compressing damage output would make upgrading your weapon less relevant 19:36:15 kilobyte: good 19:36:37 why don't you think that's important for a melee character 19:38:18 right now there's far too much focus on finding an 'endgame' weapon imo; if katanas were say 5% better than alternatives that might be nothing more than a funny quirk of human psychology 19:38:27 but they are actually way better 19:39:33 this is bad because it means you need to know how crawl's combat system works to perform anywhere close to optimal; this is bad because it discourages using most randart weapons; this is bad because it discourages using EW scrolls until you find the weapon you want to use the rest of the game 19:39:45 that's how a fighter progresses though? It's not like you can ride throw flame into zot 19:40:07 all you need to know is to use the best weapon you can use 19:40:08 yeah, it's kinda weird that currently someone can find a +12 +12 falchion of whateverwhatever with loads of resists but then ##crawl has to tell them that it's actually a pretty awful melee weapon 19:40:27 Eronarn: it stops having no progress past xl8 or so. It stops a number of no-brainers. 19:40:27 it's a great caster weapon though! 19:40:59 MarvinPA: also how you could stumble into a vault filled with cool looking rare weapons with only minor variations on stats and not realize that one of them is way way better because of some arcane calculation 19:41:01 see also: most unrandarts being awful because they have weak base types 19:41:12 (and *rage) 19:41:24 eronarn: if the variations are only minor, then one of them won't be way way better 19:41:43 what you just said is nonsense 19:41:48 also it would be fantastic if the game made the base damage/slaying vs bonuses difference clear as day 19:42:04 elliptic: something like 1 point of damage more, 20% delay less is going to seem not that big a deal to starting players 19:42:11 it'd be cooler to fix that sort of thing than to make all weapons do the same damage 19:42:12 but it will make a pretty big difference in damage output 19:42:18 OG17: I was going to say that but just adding the damage bonus to base damage would probably be too godo 19:42:19 good 19:42:43 eronarn: not that huge a difference, certainly not enough to outweigh all other factors 19:43:04 a randart katana is not always better than a randart demon blade 19:45:40 -!- Pseudonut has quit [Remote host closed the connection] 19:45:45 btw OG17: i'm not saying that weapons should all do the same damage, just that they should be more competitive than right now 19:45:56 some weapons are just absurdly bad 19:46:22 eronarn: it seems reasonable to me that fighters shouldn't just enchant up the first weapon an orc drops 19:46:52 well, in M&F there are great maces, demon whips, eveningstars, and GC/GSC that are all good 19:47:05 axes and pla have pretty clear-cut hierarchies though 19:47:31 well, demon whips are better than eveningstars (and more common) 19:47:49 yeah but not that much better 19:47:57 TGWi: broad axes are far weaker than war axes unless you pump your Shields skill 19:47:58 quite a bit better, actually 19:48:00 and there are holy scourges but fuck tso 19:48:04 elliptic: no, but also some weapons have really weird drop rates 19:48:05 eveningstars are relatively weak 19:48:10 kilobyte: what 19:48:14 that's not true 19:48:32 war axes are terrible, broad axes are always better unless you want to use a large shield with no shield skill 19:48:37 which isn't a good idea for other reasons 19:48:52 war axes are as slow as broad axes, so they're always worse surely 19:48:52 with middling shields broads win, of course 19:49:01 kilobyte: everyone uses bucklers to start 19:49:19 what if scythe had more base damage (and sigmund had as much less) 19:49:23 if you find one 19:49:39 and bardiches were changed somehow, idk 19:49:40 then no one would use scythes 19:49:44 kilobyte: they aren't rare, and are guaranteed in elf 19:49:46 I mean like 18 19:49:47 TGWi: it'd still be bad because 200% delay 19:49:49 scythes exist as flavor for two monsters 19:49:50 we could call them bardiches 19:50:12 or reduce the delay since monsters seem to ignore that anyway 19:50:19 by the time you get to Elf, your Shields skill is going to be decent enough to not bother 19:50:23 actually, pla has demon tridents and bardiches so idk 19:50:29 ??demon trident 19:50:29 demon trident[1/1]: A roses-sunshine-and-happy-bunnies weapon, molded by fire and brimstone. (Hand-and-a-half medium Polearm; Dam 14 Acc +1 Delay 13). Blessable to trishula. 19:50:31 ??bardiche 19:50:31 bardiche[1/1]: This polearm is an enormous combination of pike and battle axe. Damage 18, accuracy -6, delay 200, damage type: chopping. Was called lochaber axe in earlier versions. Will always be called lochaber axe in cbus's heart. 19:50:42 pla could use buffing halberd and glaive a bit 19:50:48 since they are simply awful 19:50:49 how do you get "pla" from "polearms" 19:50:51 and a number of splats teached me Elf is not a place where you can healthily dive 19:50:56 OG17: it's the ingame abbreviation 19:51:04 not an answer 19:51:08 PoLeArms 19:51:13 plarms 19:51:15 kilobyte: I duck into elf:1 for a buckler all the time 19:51:16 plarms 19:51:21 snap 19:51:22 usually without using a shield at all until then 19:51:32 bardiche could use a buff too 19:51:35 -!- Jude is now known as due 19:51:36 ??trident 19:51:36 trident[1/1]: A hafted weapon with three points at one end. (Hand-and-a-half medium Polearm; Dam 10 Acc +3 Delay 13) 19:51:38 ??demon trident 19:51:38 demon trident[1/1]: A roses-sunshine-and-happy-bunnies weapon, molded by fire and brimstone. (Hand-and-a-half medium Polearm; Dam 14 Acc +1 Delay 13). Blessable to trishula. 19:51:44 the difference between these is sorta goofy 19:51:47 elliptic: well, you duck into Pan too 19:51:55 kilobyte: bardiche is already better than a battleaxe or great mace with max skill 19:52:05 kilobyte: I meant on serious chars 19:52:11 you don't need to dive elf to get a buckler 19:52:16 it'd be nice if there was a one-handed polearm that was decent too, yeah 19:52:19 you just duck in and kill a few 19:52:20 apparently there's no reason to use a halberd over a trident, which seems sort of off 19:52:32 decent until finding a demon trident that is 19:52:35 marvinpa: trident is pretty good 19:52:49 trident is baller 19:52:56 yeah, i guess most of my merfolk just stick with their starting weapon until a demon trident shows up 19:53:02 still seems a bit weird 19:53:24 mf shouldn't really start with trident 19:53:27 buff spears if necessary 19:53:42 differentiation with damage type would be another nice thing 19:54:08 buffing halberd and glaive is good though 19:54:11 like making piercing work better for merfolk attacking things in water 19:54:19 no 19:54:25 yes 19:54:26 do you really think that's going to happen in crawl 19:54:57 OG17: sure, if we can figure out a decent system for it 19:55:47 you like things way too complicated 19:58:08 maybe we should propose something feasible first 20:17:28 Reaching weapons can reach two squares diagonally with !-targeting (https://crawl.develz.org/mantis/view.php?id=2906) by MarvintheParanoidAndroid 20:18:11 maybe reaching should be able to reach two squares diagonally without !-targeting 20:18:44 maybe los should be square 20:18:46 it should, yes 20:19:04 also clouds shouldn't be able to be placed anywhere in LOS with ! 20:19:08 still 20:19:20 marvinpa: you also forgot to mention that monsters can reach two squares diagonally 20:19:24 oh yeaeh 20:19:25 yeah* 20:19:37 still? 20:19:38 clearly monsters know how to exploit this bug 20:19:41 monky: yes 20:20:01 fun though it has been to abuse every time i have memorised a cloud spell in the last few months :P 20:20:51 reaching being sqrt(5) not sqrt(8) is a bug, according to comments and enums 20:21:14 it's only because targetting uses beam code, which is pretty limited 20:22:21 you know, these range issues would be a lot simpler with square los 20:24:02 actually, after someone raged about Sting being "broken" in 0.7, I think I know what's the real cause of the sentiment for squarelos 20:24:24 ? 20:24:38 you mean that people don't like circular ranges? 20:24:51 not circular ranges, reduction of ranges 20:24:52 don't be ridiculous 20:25:16 did you just transform the majority of everybody into powergamers? 20:25:17 how deft 20:25:19 it hurts both players and monsters, but you don't notice monsters not being able to cast that often 20:25:33 are you using a straw man? how deft 20:25:36 kilobyte: what bothers me is that ranges aren't reduced when you approach things along cardinal directions 20:26:09 trying to cast a spell and being told you can't cast is infuriating 20:26:13 but they are when you approach things along diagonals 20:26:33 kilobyte: right, and with circular range it is quite difficult to compute whether something is in range 20:26:37 0.7 caused an over 25% reduction of effective ranges 20:26:47 do you really think this is the objection 20:26:49 max metric is much easier to compute than euclidean metric 20:26:57 are you ignoring me and continuing to misrepresent the opinion of the majority of everybody 20:26:58 how deft 20:27:11 so people don't know whether they are in range without a lot more work 20:27:23 try spells of range 6: in 0.6 in most cases you can cast them immediately 20:27:46 remember when squarelos was on cdo with even shorter ranges 20:27:50 while it is infuriating, I dislike it out of its impurity 20:27:56 maybe I'm wacky though 20:27:58 since you either see "oh, this monster is sleeping, I managed to sneak up on it, cool" or it moves a step towards you 20:28:59 and a bug in 0.5-0.6 made most ranges longer than in the spell sheets 20:29:10 kilobyte: what is a spell sheet 20:29:24 so people didn't experience the bulk of the 0.5 range nerf 20:29:31 and is this "bug" square ranges? 20:29:36 since I'm pretty sure that wasn't a bug 20:29:43 elliptic: I mean, tables... like spl-data.h or any sheet you derive from it 20:30:01 kilobyte: spells show their range in the Z screen 20:30:03 the bug is ranges being longer diagonally 20:30:05 those ranges were correct 20:30:08 that's not a bug! 20:30:31 the problem is, the ranges were changed to the SMALLEST possible one, not the average one 20:30:32 I'll bet that no player ever thought that was a bug 20:30:45 compare with circular ranges 20:30:45 that's fixed by having spells stop at los anyway, there's no correlation 20:31:07 which caused most spells reduced from "effectively full LOS" to something smaller 20:31:50 kilobyte: I'll agree that circular LoS + square ranges had its own problems 20:32:09 but I don't think that people dislike circular ranges because they are smaller 20:32:14 if you're being serious about this you're a lot more distanced from reality on this topic than I thought 20:32:17 they dislike them because they are harder to visualize 20:32:22 look over the objections, this doesn't come up 20:32:34 Nightstalker LOS reduction does not apply correctly (https://crawl.develz.org/mantis/view.php?id=2907) by 78291 20:32:35 also because they're inconsistent and lead to strange abuses 20:32:55 also because you can dance around monsters to jump in and out of range 20:32:58 inconsistencies and abuses which are often irreconcilable 20:33:01 that was one abuse, yes 20:33:03 (also because it's conceptually offensive) 20:33:10 yeah, dancing around monsters to jump in and out of range is bad 20:33:22 OG17: how claiming that "most spells were effectively full LOS" is "distanced from reality"? 20:33:26 the fact that conjurers run away from monsters so that they will be in range is... weird 20:33:56 kilobyte: in that this is *completely irrelevant* to anything anyone has said 20:34:13 it is when you attribute that to why people are against .7's setup 20:34:36 kilobyte: I think that criticizing the 0.5/0.6 system is a poor way of defending 0.7, given that people haven't been suggesting going back to 0.5/0.6 20:35:25 they were suggesting something that effectively increases ranges of all spells 20:35:41 square LoS doesn't increase range of all spells 20:35:50 you're latching this argument onto a completely separate one 20:35:52 please stop this 20:35:52 kilobyte: which does not imply that the reason we want it is to increase spell ranges 20:36:10 then count area in range/area not in range 20:36:20 that's not a relevant metric 20:36:30 square LOS dramatically increases that percentage 20:36:47 area in range: not the same as range at all 20:36:51 not even close 20:36:53 is your entire argument based on pulling metrics out of a hat? 20:37:06 this and "errors" 20:37:06 which is why it infuriates people less with that regard -- but that can be done just as well by bumping the ranges and not suffering distortions 20:37:13 haha 20:37:20 kilobyte: does it? a radius 6 circle still has area equal to (3/4)^2 times that of a radius 8 circle 20:37:37 just like a radius 6 square has area equal to (3/4)^2 times that of a radius 8 square 20:37:41 lemme count 20:38:20 the boundary might be a little different depending on exactly how you count things and exactly what your radius is for your circles, but it should be pretty similar 20:38:23 increasing ranges wouldn't make me any happier about circular los (and circular ranges) 20:38:37 squarelos, squarerange 20:38:39 square supremacy 20:38:45 you've failed to register every last bit of input that anyone's given on this issue and instead support your deathgrip with bizzare nonissues 20:38:51 why can't you be mistaken here? 20:39:59 everyone is against this, almost literally, save for the seeming apathy of the rest of the team 20:40:34 it's incredibly disheartening 20:41:45 well, a handful of people have voiced aesthetic objections to square LoS, which is certainly a defensible point of view 20:42:00 it's a subjective and reversible argument 20:42:31 and not one that should stand in the way of actual gameplay improvement 20:42:32 some had aesthetic objections, yes, and those largely died off when people actually played with it 20:42:33 but there are serious gameplay issues with circular LoS and circular range that should be admitted 20:43:29 compromise 20:43:33 one half of your LOS is square 20:43:36 one half is round 20:43:40 and we add in facing 20:45:20 che: 169/225 (75.1%), euc: 121/213 (56.8%) 20:45:40 pretty a significant difference 20:45:47 are you still going on about that? 20:45:53 kilobyte: what are those numbers? 20:46:14 the area in range for square vs circular LOS 20:46:16 also, current LoS is much less than 213 squares 20:46:21 so that can't possibly be right 20:46:45 how "much less"? 20:46:54 oh, sorry 20:47:03 I missed that you didn't pick radius 8 square 20:47:06 you cheater 20:47:26 you did radius 6 square inside radius 7 square 20:47:33 not radius 6 square inside radius 8 square 20:47:45 this just in: different ratios are different 20:47:47 or even radius 5 square inside radius 7 square, which is what it was in testing on CDO 20:47:57 augh this is so dumb 20:48:07 could we move on to actual issues please 20:48:08 radius 5 square inside radius 7 square would be 121/225 20:48:17 i am tempted to go find the squareLOS code and go fix it just to get you both to stop talking about it 20:48:22 Eronarn: <3 20:48:23 most spell ranges are unmodified 20:48:25 which is 53.8% 20:48:26 Eronarn: <3 20:48:34 elliptic: <3 20:48:38 kilobyte: range 6 was made into range 5 in rob's implementation 20:48:49 for a couple spells 20:48:57 crawl's spells are perfect and must remain inviolate 20:48:58 but anyway, this is a demonstration of how rob's implementation actualy decreased range!!!!!! 20:49:04 so people should hate it 20:49:06 but they didn't 20:49:19 I would check, but I won't dirty myself even cloning that branch 20:49:22 kilobyte: range 4 and higher were all reduced by 1 20:49:39 kilobyte: remind me what your objection is 20:49:43 range 1 and 2 spells weren't reduced, but at that range the ratio is irrelevant 20:49:46 (don't include "errors" in your answer) 20:50:04 and range 3 spells don't exist aside from flame tongue at partial power, I believe 20:50:21 anyway, the ratios are clearly close enough that this argument is invalid 20:50:22 TGWi: what I meant this time is that spell ranges were drastically reduced from 0.6 to 0.7 20:50:33 oh, that's just irrelevant then 20:51:25 also, did you just notice elliptic talking there? 20:52:40 also everything about how percentage of covered squares has nothing to do with why squarelos is preferable 20:52:57 also that it's not a good measure of range 20:55:29 again, do you remember when cdo tested squarelos and spells all had flat-out shorter ranges due to shortened view distance? Do you remember any outcry to go back to circles from that? 20:55:31 I don't 20:55:50 kilobyte: just out of curiosity, did you test out square LoS yourself when it was on cdo? 20:56:51 yes, I did 21:19:36 03dolorous * r68590ac461c1 10/crawl-ref/source/mon-data.h: Add formatting fix. 21:21:05 03kilobyte * r08eac1b97d00 10/crawl-ref/source/spl-damage.cc: Nerf Tornado duration somewhat. 21:21:15 03kilobyte * r5981167d5c79 10/crawl-ref/source/mutation.cc: Fix some mutations not having effect immediately. 21:21:56 03kilobyte * r2391693a7547 10/crawl-ref/source/mutation.cc: Fix comments. 23:38:31 -!- Pseudonut has joined ##crawl-dev 23:51:28 -!- TGWi has left ##crawl-dev 23:59:07 -!- upsy has joined ##crawl-dev