01:06:35 rampaging not working with wu powers is intentional, but actually i think id rather see wu powers overriding rampaging rather than the status quo 01:21:33 Experimental (bcrawl) branch on underhound.eu updated to: 0.23-a0-3570-gb561bb485a 02:45:10 Monster database of master branch on crawl.develz.org updated to: 0.26-a0-663-g36e8fdb655 03:36:03 Fork (bcrawl) on crawl.kelbi.org updated to: 0.23-a0-3603-ge1cc4b0452 03:36:43 Fork (bcadrencrawl) on crawl.kelbi.org updated to: 0.22.1-3037-g8fa475448c 03:52:07 Would mainline be interested in this one? It's a minor tiles thing. https://github.com/Bcadren/crawl/commit/360fdf9f3995a178326566ae5674775850a8c824 06:52:58 -!- amalloy is now known as amalloy_ 08:13:55 03gammafunk02 07* 0.26-a0-664-gc8b27b8: A themed vault with boulder beetles 10(18 hours ago, 1 file, 89+ 0-) 13https://github.com/crawl/crawl/commit/c8b27b8fc157 08:35:57 Unstable branch on crawl.kelbi.org updated to: 0.26-a0-664-gc8b27b8fc1 (34) 09:41:57 the code has a dozen "using namespace std;". is it a good idea to remove those lines and add std:: back to vector, deque etc? 09:42:41 CrawlCycle: FWIW I think the vanilla devs are mostly awake later 09:43:07 "vanilla devs" 09:43:58 CrawlCycle: that's a question you might want to ask advil or aidanh; they're a bit more up to date on the use of C++ wrt the current standards we use 09:44:27 but I strongly suspect our current use of namespace is due to legacy reasons; we have some older online servers using older compilers 09:46:30 what are those old compilers? 09:46:44 those "using namespace std;" seems to be not optional. 09:47:10 I mean they are not in a block of #ifdef 09:47:48 if a compiler can recognize "using namespace std;", it should recognize "std::vector", "std::string", and "std::deque". 09:47:59 CrawlCycle: we're looking to require C++17, but are stuck supporting C++11 09:48:13 yeah, but we have some weird namespace usage of our own 09:48:34 advil is more familiar with these issues, and he's generally around now, so he might give you an answer in a bit 09:48:56 thank you. this is the first time that I read the code. 09:49:37 my you emerge with your sanity intact 09:50:03 by the way, jetbrain's ide has experimental support for Makefile now 09:50:08 https://blog.jetbrains.com/clion/2020/06/makefile-projects-in-clion/ 09:50:19 i am using a trial of clion to read the code. 09:50:46 it seems to work for the crawl and monster target in the Makefile. 09:52:10 well that's good; we don't really offer official support for any IDEs/editors and only worry about compilers. The devs use various things ranging from vim to sublime text 09:52:38 Most are using linux (possibly in a VM) or OSX 10:37:10 yeah a global using namespace std was a decision galehar made way back when solely for code prettification reasons, most style guides (including the official c++faq) do recommend against it 10:38:51 if you'd like to do the grunt work to add std:: everywhere, id tentatively be happy to merge such a patch, especially since some of the worst offenders (like explicit iterator types) have been obviated by c++11 features long ago 11:03:50 do you want one commit per .h - .cc file pair or one big commit for all files? 11:04:24 %git 770bcbd1844b 11:04:24 07galehar02 * 0.12-a0-208-g770bcbd: Use std namespace. 10(8 years ago, 394 files, 7870+ 8315-) 13https://github.com/crawl/crawl/commit/770bcbd1844b 11:05:18 I probably wouldn't choose this for a new project but I have to say that writing `std::string` a million times sounds super annoying now 11:20:41 putting it all in one commit would definitely be best because there are so many, be sure you understand that it's a huge project in time and work if not complexity 11:21:28 advil seems to not like the idea 11:21:49 ... surely there are other things that would yield greater replies for that time and effort? 11:21:57 well, I'm not opposed to it, I'm not sure it's going to be worth it 11:22:17 removed std:: seems like a whole lot easier than adding it back in, and that commit I linked was gigantic 10 years ago 11:22:47 I would definitely advocated for `using std::string;`, `using std::vector;` and maybe a few others 11:22:50 *advocate 11:41:50 i could remove all "using namespace std", then add template using vector = std::vector 11:42:04 then refactor vector to something like std____vector 11:42:14 then mass replace all std____vector to std::vector 11:42:29 but I won't try to touch this now. 12:00:39 how about adding doxygen documentation? do you want one comitt per entity (such as enum class abflag in ability.cc) or one comitt per file? 12:01:36 do you consider some entities self-explanatory and don't need doxygen doc? 12:01:57 one commit per entity sounds like it'd be pretty nuts, but I'd defer to codebase management experts there 12:10:06 Not a lot of pull request just document the code. When I search for "documentation", "doc", or "doxygen" among pull requests, most of those change the code and add documentation to the changes. 12:20:45 yeah, because so much of the code is old and uncommented, usually what happens is someone will add a comment along the way while refactoring or changing something 12:24:01 Is it possible to trigger a lua triggerable when the player picks up a rune within the vault in question? 12:26:41 aMcNicky: yes, but it doesn't sound like a good idea, unless there's more context we need here 12:27:33 rune vaults are not a thing where you'd want per-vault spoilers like that; we like to keep spoilery lua triggers to a limited number of very optional vaults 12:28:32 that's a fair point - would it be better received if the spoilery aspect was more cosmetic in nature and not the kind of thing that would end a run? 12:28:33 CrawlCycle: for a little while years ago I was trying to doxygen document every function I changed, but I gave that up after a while, because it does translate to a lot of extra effort per commit 12:29:10 it's better, but those sorts of things are going to tend to create player confusion ("this weird thing happened when I picked up the rune...does this mean anything") 12:29:35 it's a bit difficult to avoid player confusion with those lua triggers in general, unfortunately, regardless of whether they are cosmetic 12:29:46 it's effectively just an attempt at environmental storytelling. Some good-for-nothings are using the power of a rune for necromancy experiments - you remove the rune and it 'de-powers' a few tiles. 12:29:47 since suddenly the game works differently than what players expect 12:29:52 not really a gameplay impact as such 12:30:18 yeah, that's fair 12:30:22 yeah, probably not the best place for something like this; we've *tended* to keep spoilery one-off effects in weird portal vaults, especially wizlabs 12:30:37 because "weird person X doing weird experiment" is a natural fit for there 12:30:45 and there's just a history of putting weird lua things in those portals 12:31:01 but you'll also find them in some volcanoes and ice cave maps (notably also portals) 12:31:56 understood, yeah fair enough. I'll remove the spoilery stuff from this vault. Maybe the idea I had as you say would better suit a wizlab submission at a later date 12:33:03 a new wizlab would always be welcome, just be advised that making a good one with a gimmick (e.g. level mechanic) that actually works well and creating an entire encompass map is a good deal of effort 12:33:17 compared to, say, a rune vault, although rune vaults certainly take a good deal of effort as well 12:33:54 you could also try something slightly smaller in scope like a ossuary, sewer, volcano, ice cave, maybe even a gauntlet map if there's something that works with that portal concept 12:34:23 understood :) I too wouldn't want to see half-baked content making it in of course! 12:34:46 ...half-baked...spriggan baker...!!! 12:34:54 lol 12:35:54 it may fit a sewer theme fairly well actually, let me finish work on this end vault first and maybe some of the slightly more out-there lua could find its way into a sewer submission 12:36:33 yeah, I'm not sure we actually have any sewer maps that have a cute lua gimmick; one thing I'd say about these things is try to make them as natural/intuitive to the player as possible 12:37:32 in terms of it being obvious as to what happened and how you'd expect the player to react 12:37:56 printing messages can help, but the less explanation required the better 12:38:11 is there a way to cause the trigger to also force_more on the player so they press enter and can't miss it? Though perhaps an effect which requires that to be the case is by its very nature not a good effect 12:38:48 I think messages styled as a god message would go on the god message channel, but I don't think this will force_more by default 12:39:01 and yeah that's been a historical problem with these triggers, although that can depend on the context 12:39:43 if they are otabbing through a level and step into some vault and a voice booms out with exposition that reveals critical information, it's useless if they happen to hit 'o' and autoexplore doesn't even take them into the vault 12:40:24 but if your trigger is somethere where the player can't really miss it because e.g. they're in a constrained space on a smallish encompass map, that's less a problem 12:40:59 I'm not sure you can do a force_more, but we don't do that in any of our triggers historically 12:41:02 the first time i was in the fleshworks (tiles), i idled for a couple dozen minutes while trying to figure out why there weren't any doors, and if this bug had happened to anyone else 12:41:10 players aren't very smart! 12:41:23 you can kind of get that implicitly if you, say, create some monsters in a cloud of smoke! 12:41:23 change some tiles and they might spend a week googling 12:41:29 because now autoexplore is unsafe 12:42:16 let me show you two maps 12:43:08 !vault wizard_prison 12:43:08 Can't find wizard_prison. 12:43:13 !vault evilmike_wizard_prison 12:43:14 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/des/variable/large_themed.des#L940 12:43:37 !vault ragdoll_tomb_raider 12:43:37 1/1. https://github.com/crawl/crawl/blob/master/crawl-ref/source/dat/des/variable/float.des#L2779 12:44:02 former drops a bunch of walls formerly holding monsters in "prisons" when a door is opened 12:44:24 and a silent spectre sees you because said door is open, moving into teleporter, teleporting away 12:44:51 removing a field of silence, and the monsters are all "wizard" monsters with spells that can cast now 12:44:55 that's helpful, thanks. Yeah I'd mainly been using the wizlab.des file to get up to speed on using lua so other examples will be useful 12:45:02 the lua part is only dropping the wall 12:45:23 the spectre part generally just works because of normal monster AI 12:45:32 that's cool 12:45:41 oh 12:45:46 the second one no longer has lua! 12:45:54 bad example I guess, since it "locked" the player in before 12:46:08 right, wizlab.des has some, as does volcano.des 12:46:44 there are not many examples left outside of portal vaults 12:47:21 thanks for your help 13:06:23 Unstable branch on crawl.akrasiac.org updated to: 0.26-a0-664-gc8b27b8 (34) 15:19:58 -!- aidanh_ is now known as aidanh 16:52:32 -!- cjm__ is now known as cjm 17:26:07 Is it ok to use this style of documentation? "/// \brief Ability bit mask" 17:27:19 It is shorter for documenting each value of an enum. 17:27:57 For example, "none = 0x00000000, ///< Clears all ability bit flags" 18:25:16 Unstable branch on underhound.eu updated to: 0.26-a0-664-gc8b27b8fc1 (34) 19:13:11 03gammafunk02 07* 0.26-a0-665-gefeb406: A boulder beetle transporter vault 10(13 minutes ago, 1 file, 44+ 0-) 13https://github.com/crawl/crawl/commit/efeb40611938 19:17:05 Unstable branch on crawl.kelbi.org updated to: 0.26-a0-665-gefeb406119 (34) 19:39:39 CrawlCycle: if you mean triple slashes, that is in use in the code already so go ahead 19:40:44 \brief specifically isn't used much in the comments though, i think it's more useful when looking at generated docs which afaik people don't do so much (or at least i don't) 19:47:19 thanks. 20:06:29 there are definitely plenty of triple slashes 22:43:29 do you guys like the Ability_List[] in ability.cc? 22:44:04 I am trying to document ability.cc 22:44:27 and I am kind of surprise that the Ability_List[] table can't use any negative number 22:44:40 or that will cause problems 22:44:45 and it isn't documented 23:03:13 an integer piety cost of 30 in the table means roll a 16-sided dice and subtract the result by 1 23:03:46 wait. I'm really out of my mind. why would anyone want a negative cost that is charged immediately upon use of the ability?! 23:04:23 but i would at least expect 1d30 instead of 1d16 if i see 30 in the table. 23:27:08 bigboi69 (L15 MiBe) Crash caused by signal #6: Aborted (D (Sprint))