00:12:45 greensnark: daily? 00:13:20 wow 00:14:45 :-O 00:17:18 Unstable branch on crawl.akrasiac.org updated to: 0.8.0-a1-30-g5809cc5 (32) 00:26:53 -!- valrus_ has joined ##crawl-dev 00:26:54 that about +90mb per day 00:33:27 Tossi (L2 NaBe) ERROR in 'format.cc' at line 204: Stack underflow in string "0*+" (D:1) 00:35:06 -!- valrus_ has quit [Remote host closed the connection] 00:41:50 -!- ais523 has quit [Remote host closed the connection] 00:44:27 -!- ZChris13 has quit [Remote host closed the connection] 00:47:25 -!- Pseudonut has joined ##crawl-dev 01:55:51 -!- Jordan7hm has quit [Ping timeout: 252 seconds] 02:09:42 -!- Jordan7hm has joined ##crawl-dev 02:17:00 -!- Pseudonut has quit [Remote host closed the connection] 02:33:23 -!- galehar has joined ##crawl-dev 02:38:09 Good morning! 02:38:53 I think I'll be pretty inactive for some time. Nice to leave a commit that messed up some enums as my latest and greatest though. :P 02:51:34 -!- elliptic has joined ##crawl-dev 03:04:30 :) 03:08:01 morning! 03:22:21 Adeon: do you read c-r-c? bmh is interested in talking to you about RNG 03:22:57 er. 03:23:03 Adeon: c-r-d, not c-r-c, oops 03:32:59 Unstable branch on CDO updated to: 0.8.0-a1-30-g5809cc5 (32) 04:00:12 they talked about it yesterday 04:00:16 and moin due! :) 04:06:51 You feel a surge of power! 04:06:51 You extend your transformation's duration. 04:06:51 _You feel yourself come back to life. 04:06:52 kilobyte: You have 1 message. Use !messages to read it. 04:07:52 shouldn't it be at least one turn, with #########. power? 04:11:02 greensnark: I think having features such as lava orcs kept on a branch when they're (mostly) code-ready is quite pointless. They're far less intrusive than octopodes, so it'd be cheaper effort-wise to just merge them into trunk and drop if they won't make it 04:12:17 greensnark: just like blue_anna's stuff: there was a merge and a [partial] drop -- and incidentally, parts that did have our effort put in survived (deep dwarves, monsters using rods, monsterizing some spells, ...) 04:18:46 -!- upsy has joined ##crawl-dev 04:24:23 kilobyte: any idea what could be causing this: https://crawl.develz.org/mantis/view.php?id=3733 04:30:21 I recently messed with that code... 04:30:38 sorry for not investigating your report earlier, got distracted 04:31:14 the string would have to be not zero terminated 04:32:47 ... or a non-closed tag 04:33:33 I don't think we have the latter anywhere, though 04:34:41 do you have a way to reproduce this crash? 04:34:52 or the core? 04:40:18 it just crashes on start 04:40:23 everytime 04:40:42 but only in debugging mode 04:41:44 I mean, if I make a debug build and start normally it works fine, it's when I run it under gdb that it crashes. 04:42:56 -!- due has quit [Read error: Connection reset by peer] 04:52:34 03kilobyte * r935a756f6a80 10/crawl-ref/source/libutil.cc: Report an error but don't crash when wrapping unterminated tags. 04:53:19 this machine at work 1. can't run tiles, and 2. is very slow, so debugging right now might be tricky. Could you check if with this commit it gives an error message instead of crashing? If not, I'll check if msysgit's distribution is binary compatible with Debian's mingw. 04:58:52 ok 05:04:31 -!- jooosa has joined ##crawl-dev 05:04:35 -!- joosa has quit [Read error: Connection reset by peer] 05:04:53 -!- jooosa is now known as joosa 05:15:48 -!- due has joined ##crawl-dev 05:20:14 I've uploaded the screenshot of the starting menu on mantis 05:21:18 And here's what happen when I debug it. After the first tag has been removed, it goes back in the "remove tag" loop on line 758 and clear to the end of the line 05:22:54 I think there's missing brackets at 759 05:23:48 uuhm... duh 05:28:22 restoring them causes mis-wrapping of ^O on narrow terminals again, though 05:41:57 -!- eith has joined ##crawl-dev 05:51:29 it also fixes #3732 06:00:19 03galehar 07stone_soup-0.8 * re2ec09b6339e 10/crawl-ref/source/items.cc: Prevent ice form from picking items at the bottom of deep water. 06:00:28 03kilobyte 07stone_soup-0.8 * raec5c96d3c3e 10/crawl-ref/source/godwrath.cc: Don't crash on old saves in Ashenzari penance. 06:00:41 03j-p-e-g 07stone_soup-0.8 * r79bfa6d92e2d 10/crawl-ref/source/ (abl-show.cc player-act.cc player.h transform.cc transform.h): Fix #2395: Disallow ending forms/levitation if it would cause drowning. 06:00:42 03galehar 07stone_soup-0.8 * rd29616fd36ee 10/crawl-ref/source/transform.cc: Fix clinging status not updated properly when switching out of spider form. 06:00:46 03galehar 07stone_soup-0.8 * rf9b22d758d7d 10/crawl-ref/source/directn.cc: Fix a crash when the player thinks the monster has a wand but it doesn't. 06:00:50 03j-p-e-g 07stone_soup-0.8 * r733e7ad26295 10/crawl-ref/source/ (food.cc invent.cc): Fix #3319: Don't prevent butcher swap with temporary distortion brand. 06:01:02 03galehar 07stone_soup-0.8 * r63cfcdb4d615 10/crawl-ref/source/ (actor.cc actor.h terrain.cc): Allow spider form to scramble out of deep water by clinging to a wall. 06:01:19 03kilobyte 07stone_soup-0.8 * rcee0bb4eedd2 10/crawl-ref/source/rltiles/dc-mon/animals/jumping_spider.png: dolphin's tile for jumping spiders. 06:01:47 -!- jpeg has joined ##crawl-dev 06:01:50 03j-p-e-g 07stone_soup-0.8 * r5462e0c0e8a8 10/crawl-ref/source/player-equip.cc: Fix #3217: equipping sInv artefact not reactivating autopickup. 06:01:58 03kilobyte 07stone_soup-0.8 * rb5a52ef3c8ff 10/crawl-ref/source/dat/descript/ability.txt: Remove a no longer valid description of Vp bat form and cursed gear. 06:02:07 03galehar 07stone_soup-0.8 * r9ddad0f7418e 10/crawl-ref/source/ (godpassive.cc items.cc): Ashenzari: fix some dropped and useless items being autopickuped up. 06:02:20 03MarvinPA 07stone_soup-0.8 * re899d8c0e41f 10/crawl-ref/source/spl-other.cc: Don't display a success message when aborting sublimation of blood at full mp 06:08:34 !tell MarvinPA the stasis thing looks okay to me, but have you considered victory dancing? (I think that was the reason for having prompts) 06:08:35 jpeg: OK, I'll let MarvinPA know. 06:11:52 jpeg: I just won a 15-runer + Zig victory dancing at any opportunity (well, at least until 27 Air + necromutation). It might be tedious but gives a _huge_ benefit. Thus, we need to get rid of it. 06:12:19 and I think I have a plan 06:13:01 I agree, but I got a lot of flack when I disallowed fulsome distillation without corpses, a while ago 06:13:07 0.9 at least though, of course 06:13:20 yeah, this is because people want that huge benefit 06:13:23 which is why I'm asking if it's a new team policy 06:14:08 as long as victory dancing is in, there's little point in making it more tedious 06:14:24 true 06:14:29 so what's the plan? 06:15:57 let's allow people to tag a skill or skills (a third state on the menu, but it might be done differently) -- if there are any, all your free xp instantly goes into those skills 06:16:35 any restrictions? 06:17:16 -!- edlothiol has joined ##crawl-dev 06:17:17 to prevent this from giving you a benefit other than redirecting xp, the old-style training ("automatic") would look at skills you practiced before 06:17:46 for restrictions, we may demand you to know a spell with a school you're training 06:18:14 but not much more -- since you already can victory dance any skill 06:18:18 can you train a skill at level zero? 06:18:45 train spellcasting without actually casting? fighting without melee? 06:18:57 at level zero, not sure 06:19:32 well, I guess it's sorta pointless to train spellcasting if you don't actually use magic - except for raising mp 06:19:38 right now, especially with no pool cap, you just turn off all other skills and then victory dance in a safe place 06:19:45 same for fighting and hp, but something is planned for that, right? 06:20:04 jpeg: you can still use fulsome to victory dance, though 06:20:16 heh, I've never even came close to the pool cap 06:20:17 fighting is balanced for people _not_ victory dancing 06:20:27 upsy: yeah because my change was reverted :) 06:20:30 and if you do, you get a large edge over those who don't 06:20:58 the only thing I victory dance is T&D 06:21:18 if you have xp in the pool and see popcorn monsters, you can kill them in melee 06:21:20 oh and blink, I guess 06:22:10 I think I agree with the analysis on the Tavern that the problem with fighting is that it gives hp 06:22:16 in fact, this KeAE killed like 95% enemies in melee, even after I stopped caring about dancing, and tornadoing only Pan lords or several 1s at once 06:22:25 if it didn't do that, only players actually using fighting for combat would need to victory dance 06:22:59 kilobyte: so you did it to preserve mp or whatever, that's fine 06:23:59 the skill should be really named "mettle" since it has hardly any effect other than giving hp 06:24:14 I don't think a skill should be used for that 06:25:05 using strength instead would be an improvement, but I do think the hp gains should be species-dependent and governed by xl 06:25:59 if we keep the fighting skill, it should *only* matter for fighting prowess (accuracy, damage output, speed) 06:26:15 well, with Ashenzari you have no way to refill mp (crystal balls of energy are not an option since they drop your int from 35 to 10 every a few uses, staves of channeling are prevented by cursed weapon), and merely keeping Lich Form up takes most of natural regeneration 06:26:40 so you want pure conjurers to have as much hp as berserkers then? 06:28:01 if it's a TrCj, sure :) 06:29:06 a TrCj would have more hp than a DEBe, which is perfectly fine to me 06:29:10 challenge combos and all that 06:29:37 to me, it makes sense someone who trained physical combat can take blows a lot better than those who didn't 06:30:32 a RL example: a lazy programmer vs a programmer who exercises vs a lumberjack 06:31:05 it does make sense, but if it means that the programmer needs to victory dance body building, then that's bad 06:31:20 of course, this wouldn't even be a problem if there wasn't so much xp around 06:31:46 it probably isn't much of a problem until people start victory dancing for the endgame (Pan and zigs) 06:31:46 that's why I'm proposing removing victory dancing outright and letting the player decide how much xp they want to sacrifice for physical resilience 06:32:21 hmm, I have some weird line break in the dungeon overview screen: 06:32:29 Tomb (0/3) Crypt:2 Dis (0/7) Hell Geh (0/7) Hell 06:32:30 Coc (0/7) Hell Tar (7/7) Hell Zot (0/5) 06:32:31 D:27 06:32:34 --- 06:32:45 -!- syllogism has joined ##crawl-dev 06:32:49 Even though "Hell" and "D:27" have the same length 06:33:29 you tend to victory dance all the time... having more hp means you're more likely to survive until late game 06:33:52 jpeg: for HP, I suggested using (fighting^2)/5 instead of (fighting*XL)/5. Compensate by turning racial HP growth linear. It would discourage casters to VD fighting, because you'd need to invest a lot to really see any difference. 06:34:10 Napkin: a known regression, it was fixed but there's breakage with colour 06:34:21 galehar: it's a good compromise, I guess 06:34:21 roger 06:34:53 kilobyte: I haven't cherry-picked any of your recent string commits because all those bug reports intimidate me :/ 06:35:24 kilobyte: I like your plan for skill training. We should have a toggle on the skill menu between automatic and manual. We start by implementing manual as you described. Then we change automatic mode to use previous training instead of exp pool. 06:35:42 kilobyte: does your proposed system mean that you can train skills without ever using them? 06:35:51 galehar: so you'd reduce the hp in early game _twice_: everyone, including berserkers, would see little until 4-5th rune, and then the linear gains would reduce midgame xp even more 06:36:05 upsy: just like you can currently do 06:36:19 ...good point 06:36:45 kilobyte: no, change the racial HP so it keeps the initial rate. 06:36:48 galehar: victory dancing fighting would _still_ give you benefits 06:37:06 but it would require significant skill investment. 06:37:42 including midgame meleers 06:38:32 here is an example of a human who trains fighting on skill per level up to level 10 and then stops 06:38:33 https://spreadsheets.google.com/pub?hl=en&hl=en&key=0AqvhLOPFHpiMdHFJd3h1NTVlU0ZqREVrWEk5SVAzU2c&output=html 06:39:28 I haven't had the time to try more examples yet 06:41:15 anyway, does anyone have a problem with including MarvinPA's latest commit into 0.8? (stasis preventing teleporting outright, rather than prompting) 06:43:29 jpeg: hard to say... it makes regular play somewhat better while making victory dancing more tedious 06:44:13 right, and I haven't played enough to tell how much this would affect gameplay 06:44:26 I don't think I ever used stasis, even 06:45:18 galehar: it seems totally wrong... no one victory dances fighting early and then stops. 1. it gives you little early on (quadratically), your version would make that even more pronounced (cubic), 2. early on you want your primary skills up as soon as possible, it's in the midgame and late game when you can spare some xp 06:46:07 if you don't need fighting for anything else, doesn't it make more sense to invest xp in damage output (spellcasting, stabbing, whatever)? 06:46:37 jpeg: a must near giant eyes, sphinxes and to a far lesser extent other paralyzers, of little user elsewhere 06:47:14 that's because the skill is ill-named 06:47:55 don't most casters VD fighting to level 10 because it's cheap and gives 50 HP? 06:47:58 it's nearly solely about combat defense rather than offense 06:48:32 galehar: if they do, not at xl 10 certainly 06:49:06 oh yeah, I oversimplified with the training rate, but it doesn't really matter 06:49:28 the result of a cubic gain would be utter worthlessness of the skill overly on 06:50:00 especially if you factor in the fact that weapon skills sharply increase in power early and very slowly later 06:50:27 galehar: most casters just train fighting as they go along, really. Some people wind up with 1 or 0, others get high amounts. there are some people who literally vd it (by say, meleeing summons) but they are in the minority. most people just melee regularly 06:50:42 this is just what I have seen from observing people play, reading logs, conversation, etc 06:50:57 it would reduce the HP gain when fighting < XL. 06:51:18 The reduction would be higher at XL 27, but that's why it's compensated by higher racial HP 06:52:50 racial HP is a different issue, but dpeg already proposed changing fighting to give a percentage bonus rather than a fixed one 06:56:30 It's not a different issue. Both need to be addressed at the same time. We can base fighting HP an racial HP, but we already have the fighting aptitude to differentiate species. 06:57:23 I suspect the fact that racial HP growth getting slower at high level is because fighting HP is linear with XL. 06:57:39 returning to the issue of fighting on pure casters: the problem you're trying to fix is solely because of victory dancing 06:58:15 well, we need to address it before we allow automatic training. 06:59:14 why? We can use automatic training right after 0.8 stabilizes. 06:59:30 so that crutch wouldn't be needed 06:59:48 (and other cases, like Fulsome being castable with no corpse, and so on) 06:59:52 -!- galehar_ has joined ##crawl-dev 07:00:57 but wouldn't everyone keeps fighting on, because it's easy and cheap to gain some HP? 07:01:36 precisely 07:01:53 people have to train something 07:01:56 maybe it would be enough to nerf the fighting aptitude for some species 07:02:02 that's a different issue: with monsters doing 100+ hp damage to you, everyone needs basic hp 07:02:26 that's why my proposal also includes raising racial HP 07:02:33 casmith789: if fighting is a no-brainer for everyone, that's a large problem 07:02:40 -!- galehar has quit [Ping timeout: 252 seconds] 07:02:59 we might as well get rid of it and increase hp automatically (i.e. racial hp) 07:03:12 galehar: you're conflating moving part of gains from fighting to base with changing the curve of fighting's effectiveness 07:03:41 it isn't 07:03:42 jpeg: it's a radical proposal but could remove this whole issue 07:04:21 I'm not sure it _is_ a nobrainer, but kilobyte's arguments hint that it might be for the more expert players 07:04:42 The only char I have trained fighting without a weapon skill was one of ash 07:05:13 or we could go dpeg's route and decrease xp all around to make the choices more important 07:05:13 the two go hand-in-hand imo 07:05:26 jpeg: I think that allowing people to choose between being frail and powerful or of medium strength and somewhat less powerful is a good thing 07:05:49 precisely because of it being a choice 07:06:09 as long as it's not a no-brainer: "I don't want to be one-shotted by a single Dispel Undead" 07:06:40 actually that statement tells me they were using their brain 07:06:57 so what's wrong with galehar's suggestion? increase racial hp, and make further gains via fighting more expensive 07:07:15 I approved galehar_'s suggestion when he first proposed it 07:07:23 that should both reduce the need for training fighting and make the decision less clearcut 07:07:24 seems like a good route to go 07:07:35 -!- galehar_ is now known as galehar 07:07:57 I'll wikify it 07:07:59 jpeg: the first part is fine, the second not really 07:08:10 why? 07:08:32 because it would make training fighting early on a waste of xp 07:08:42 an even worse waste than it already is 07:08:57 ah, because of the curve? 07:08:58 may as well get a few ranks, they're cheap 07:09:13 yes they're not as good - otoh they're ridiculously cheap 07:09:19 I didn't really understand that part 07:09:33 casmith789: sure, but not before you get your weapon to mindelay or that spell you want castable 07:09:43 I do see your point though and atm it is a good idea to get your weapon to mindelay 07:09:47 kilobyte: so you'd be okay with a linear (or percentage) gain per level, but each level being more expensive than it's now? 07:10:20 to make fighting more useful: reduce base to_hit (which also makes accuracy more relevant overall) 07:10:23 jpeg: there is a linear system atm until about xl14 where it becomes flat 07:10:35 I'd prefer "less effective" rather than "more expensive", but yeah 07:10:59 jpeg: your proposal could be done by dropping everyone's fighting apt by 2 or something 07:11:15 (mostly because expense would mean multi-Zig chars are even more powerful than they are currently) 07:11:21 this to me would weaken pure melee 07:11:33 kilobyte: the game is not based around multi zig chars 07:11:44 casmith789: spellcasting _already_ has that! 07:11:57 yes but it isn't in the apts 07:12:03 well, needing to reach level 20 for what's currently at level 10 (overgeneralization) does sound more expensive to me 07:12:04 put it in the apts and make it transparent 07:12:16 casmith789: yeah, but note that "less effective" and "more expensive" is about the same until you hit a cap 07:12:19 why does spellcasting 0 actually mean spellcasting -2 07:12:21 ... and weakens endgame chars, which is probably a bonus 07:13:23 so yes, "less effective" does sound a bit better "more expensive" 07:13:27 but that's details 07:13:29 casmith789: on one hand: skill 15 w/ cheap apt, giving the same benefit as skill 10 w/ tough apt 07:14:02 ok, so let's forget endgame chars for a bit 07:15:32 what we have currently: small base hp + lots from fighting. Deep Elf: 93 hp with 0 fighting, 238 with 27. 07:16:01 well you'd expect a DEFi to have a lot of hp endgame 07:16:10 compared to a DECj 07:16:17 both numbers being 0/27 to not argue about quadratic/cubic for now 07:16:49 it seems to me that we all agree that the numbers are too extreme, right? 07:17:01 casmith789: I guess the problem comes with endgame DECj that raise fighting anyway (because it's cheap and they have the xp) 07:17:13 kilobyte: right 07:17:37 Cj should have more than a single crystal spear / dispel undead can take -- and this is why players victory dance fighting 07:17:41 well jpeg this is because the early levels are too good which is what galehar's proposal fixes 07:17:58 it'd be better if it was something like 120 with 0 fighting, 200 with 27 07:18:00 DECj should probably have about 120hp imo yes 07:18:20 jpeg: yeah! 07:18:23 okay, 200 might be a bit low :P 07:18:54 120 is too high for a decj 07:19:04 even if we give them 238 maxhp, it means moving gains from fighting to base 07:19:09 especially with 0 fighting 07:19:24 syllogism: shh, we're discussing the principle 07:19:25 unless you nerf other things simultaneously 07:19:36 jpeg: casmith789 isn't, trust me 07:20:00 syllogism: of course, we'd nerf them, but we're looking at WHY people victory dance that skill 07:20:07 syllogism: well, I am - don't have a clue about numbers :) 07:20:26 I mean an endgame decj should have about 120hp 07:20:41 whether this comes from fighting or not 07:20:44 we're talking xl 27 here, right? 07:21:01 probably, de have a decent exp apt 07:21:04 I say: the reason is: 1. you absolutely need to be able to survive a big spell, 2. you get it cheaply 07:22:23 so instead of galehar's "small early, big late" curve, I'd leave it as-is or even flatten it, but greatly decrease the percentage fighting brings you 07:22:37 kilobyte: sounds good to me 07:22:41 less complex code, too 07:22:53 kilobyte: that would be a fighting buff 07:23:16 casmith789: why, if you get lower gains overall? 07:23:17 I mean an all-out buff 07:23:30 casmith789: buff or nerf? Sounds like a pure nerf to me. (or rather, a buff to non-fighting chars) 07:23:37 ah, yeah, of course 07:23:42 I didn't mean fighting, sorry. 07:24:09 an all-out buff to all chars is easy to balance other ways 07:24:42 I wouldn't say easy 07:25:44 -!- Cryp71c has joined ##crawl-dev 07:25:51 Morning 07:25:52 we'd probably need to reduce available xp if we reduce the need for victorydancing fighting 07:25:59 syllogism: what would you say about, for example, an increase to the numbers in skill_cost_needed()? 07:26:13 jpeg: exactly that 07:26:15 come to think of it, there's probably an overabundance of xp already 07:26:23 something like that can work, but would require quite a bit of testing and there might be some unintended consequences 07:26:29 what with all those portal vaults and minivaults stuffed with monsters 07:26:31 (reducing the nominator, increasing the denominator -- same thing) 07:26:43 like certain characters being too weak in certain portition of the game; probably not considering how easy the game generally is 07:26:58 well there is an explosion of vaults in .8 which contain a large amount of exp compared to .7 07:27:31 we are trying to reduce available xp by shortening branches, but it's probably not enough 07:27:40 jpeg: reduce exp gained from lategame monsters imo 07:27:43 .8 is essentially stay alive long enough to put xp into nearly anything you want, .7 felt more like "spec right, or not have enough xp to get what you want" 07:28:01 (regardless of apts) 07:28:02 casmith789: I'm afraid I made things worse by upping the chances for large vaults in deep D. It makes the game more interesting, sure, but also brings more xp. 07:28:07 the exp system needs work anyway 07:28:34 Are we still considering the removal of the exp pool to be something of value? 07:29:00 Cryp71c: it makes the whole thing more obvious 07:29:06 there is a not quite linear skill exp usage from 1-13 and then the skill cost doubles at 14 and remains the same 07:29:11 jpeg: the presence or removal? 07:29:15 but probably does reduce the tedium in victorydancing 07:29:16 Cryp71c: victory dancing rather than the exp pool, but yeah 07:29:21 Cryp71c: the removal 07:30:01 Cryp71c: earlier I described a proposal to completely eliminating victory-dancing by making it a matter of saying "yes, I want all xp to be put into skill X" 07:30:24 -!- Jordan7hm has quit [Ping timeout: 246 seconds] 07:30:36 I agree with casmith on reducing xp from certain lategame monsters, some of them are unusually high. Compare vault guards vs orc knights for instance 07:30:43 or just look at the amount of xp acid blobs give 07:30:53 The proposal I made ages ago about keeping track of your last X actions and dividing earned xp into each category of your last X actions still seems to be to have potential. The biggest issue is that in order for the less commonly used events (such as traps or stealth) to take effect, they would need a heavier weight compared to more frequently performed actions (such as weapon use or casting) 07:30:54 @??vault guard 07:30:54 vault guard (10@) | Speed: 10 | HD: 13 | Health: 53-91 | AC/EV: 1/13 | Damage: 20 | Flags: sense invisible | Res: 06magic(52) | Chunks: 07contaminated | XP: 1374. 07:30:56 @??orc knight 07:30:57 orc knight (10o) | Speed: 10 | HD: 9 | Health: 46-88 | AC/EV: 2/13 | Damage: 25 | Res: 06magic(36) | Chunks: 07contaminated | XP: 682. 07:31:23 Cryp71c: that's the other part of kilobyte's suggestion :P 07:31:32 jpeg: kilobyte: ah :P 07:31:46 Cryp71c: it is trivially gameable by ensuring you have enough of those actions for a skill you want 07:32:01 Cryp71c: my idea is to have an "automatic" and a "manual" mode 07:32:31 Cryp71c: so to train armour you get hit 9 times by a rat before killing it? :) 07:32:33 in the automatic mode, the game increases skills it thinks you use 07:32:34 kilobyte: more deliberate control could be beneficial, so long as its not as elaborate and time consuming as some of the other exp management suggestions we've heard in the past. 07:33:19 kilobyte: the main problem is you don't really want skill gain of things you use in the midgame 07:33:26 Cryp71c: yeah, this is why I'd make this a matter of flipping a switch on the skill screen 07:33:40 casmith789: you could be more elegant than that in incrementing the counters for some skills (such as dodging and armor) with weighting based on your armor usage (eg, even if you dodged the rat a bunch of times, if you're wearing chain mail you get some exp put into armor) 07:34:15 early game yes, but not midgame. You want to train other skills so you have more spells/options 07:34:43 for instance I victory dance invocations to 10 with makhleb because using his summoning abilities before then is almost suicidal 07:35:28 kilobyte: keeping a tally of your recent actions also doesn't always fix victory dancing, it just fixes pre-combat victory dancing (which might deter it, since pre-combat victory dancing could get annoying) 07:35:41 s/fixes/changes it 07:36:03 Cryp71c: yeah, this is why I'm proposing that manual mode 07:36:18 casmith789: yeah the tally system doesn't cover all the bases, so some alternative means (like kilo's manual mode) are warrantable. 07:36:21 in any case you'd want to victory dance, you go to flip that switch 07:36:50 kilobyte: the only limitation I can think of is that if you're in manual mode, you must have a skill activated (eg, no turning everything off to pool huge amounts of exp) 07:36:51 erm... 07:36:58 this automatic mode seems equivalent to leaving all skills on 07:36:58 But that kind of goes without saying. 07:37:02 kilobyte: we can also have a 3 mode switch: off, simple, double. That way, you can easily select 2 skills and have a 33% / 66% repart. Might be useful to have 3 rather than 2. More would be overkill. 07:37:32 some draconion walked into my miscast poisonous cloud and now i'm under penance from TSO? 07:37:43 don't miscast 07:37:59 oh god spiders :( 07:38:04 -!- Napkin has left ##crawl-dev 07:38:09 casmith789: it sort of is, but when you walk into a trap with 5k exp in your pool, you won't find yourself with T&D skill you didn't want. 07:38:16 03j-p-e-g * rff519cd151a0 10/crawl-ref/source/map_knowledge.cc: Fix #3356: clearing the map having no effect in Tiles. 07:38:19 casmith789: I proposed a 3 mode switch, you can still turn off a skill and get the rest automatically 07:38:42 "get the rest"? 07:39:00 casmith789: have exp allocated to all other skills normally (under this tally system) 07:39:09 ah 07:39:12 kilobyte: I propose you're still referring to a tally system, but with the ability to disable some skills? 07:39:17 s/propose/presuming 07:39:20 so really it's changing off/on to off/on/double 07:39:20 galehar: a mere multiplier means you will still want to victory dance 07:39:55 this sounds like it is edging towards off/on/double/instant 07:40:01 casmith789: no, it's off/"according to practice"/"all of it" 07:40:12 oh I see 07:40:31 yes, both modes would instantly assign everything you get 07:40:33 casmith789: using a tally system, I'm not sure one could argue for the need of an exp pool since xp is allocated upon its earn. 07:40:44 I see 07:40:51 that would probably be nice 07:41:07 would it dump your xp pool into the skill, or just divert all xp you gain into it? 07:42:04 evilmike: divert all xp you gain. There would be no xp pool 07:42:07 Cryp71c: we had a nice proposal before but it was quickly reverted since it's damn hard to tell which skills are practiced more. T&D is exercised 2-3 orders of magnitude less than weapon skills, yet it is done with a full pool. 07:42:21 kilobyte: no I mean in manual mode. When you select 2 skills, you might want a 1/3 - 2/3 repart instead of 50-50. 07:42:34 galehar: ah, I see 07:42:45 kilobyte: right, even with a tally system you'd need to weight some skills in order for their rarity to earn a reasonable amount of xp when everything is divided up 07:42:56 galehar: might make sense, I just wonder about complexity 07:43:27 The manual mode should not be any more complicated than the current system, and more simple is preferrable. 07:43:41 Since current skill management is less difficult, more time consuming and tedius. 07:43:42 Cryp71c: if I implemented what I'm currently thinking of right now, the exp pool would be still present but hidden. It would merely feed the weights of the automatic mode. 07:44:16 03j-p-e-g 07stone_soup-0.8 * r14b307e63d35 10/crawl-ref/source/map_knowledge.cc: Fix #3356: clearing the map having no effect in Tiles. 07:44:22 about the interface, I see one main automatic/manual toggle. Then in automatic, you can enable and disable skills, as now, and in manual, you have a 3 mode switch. 07:44:30 kilobyte: so your proposal does not automatically disperse xp into the appropriate skills (based on the tally counts and weighting) immediately when its earned? 07:44:41 kilobyte: and if not, whats gained by not immediately allocating xp as its earned? 07:44:44 galehar: ooooh.... now that's better than my 3-mode switch 07:44:53 Cryp71c: it does 07:45:07 kilobyte: so what need do you see for a pool, again? 07:45:20 With the removal of the xp pool, we gain one line at the top. I can add more switches on the bottom. 07:45:23 galehar: what are those 3 modes in manual for, then? 07:45:55 Cryp71c: because it's hard to know that T&D should be exercised that hundred of times more than weapon 07:46:30 it'd be nice to do it better, of course 07:47:25 Cryptic: off/simple/double. So you can select 2 skills and have 1/3 - 2/3 repartition. 07:47:28 kilobyte: well as an action is preformed we can scale it up automatically (so instead of just incrementing T&D because we stepped in a trap, we can increment T&D by 1 * predetermined_T&D_weight) 07:47:35 we had lots of discussion on this matter for the last couple of years though, including one that was actually in the game, and it failed miserably :( -- this is why I'm considering the lame way of hidden weights 07:47:57 Cryp71c: no, fixed weights don't work because there are skills where usage varies 07:48:08 galehar: so double is 2 skills, simple is 1 skill, what's off? no xp is allocated? 07:48:17 like, there are Tmut spells you spam and ones you use once in a while 07:48:29 kilobyte: scale spells with their level? 07:48:52 Cryp71c: yeah, since current behaviour of turned off skills means you victory dance the rest to avoid wasting xp 07:48:53 Cryp71c: no. In manual mode, you select n skills. But you can choose some to count as double. 07:50:33 galehar: ah with the 3-mode switch you're talking about each skill having the possibility of being in 1 of three different modes. I thought you were talking about 3 "Modes of manual-xp allocation" (in general, not per-skill) 07:51:08 yes, that's it 07:51:27 kilobyte: a tally system seems to have potential in theory but may be problematic on implementation because of caveats like spell spamming / scaling. 07:51:55 Unless we can establish a very elegant (and not convoluted) scaling system that is universally applicable. 07:54:07 I think we should first implement the manual mode. It's easier and everyone will use it anyway. Then, we can implement the automatic mode and slowly fine tune it. 07:55:46 galehar: are you invisioning this as an exp-pool-less implementation where xp is allocated as its earned based on whats on/off/double ? 07:56:12 yes 07:56:33 what kilobyte suggested 07:57:27 (sorry, worked) 07:58:04 Cryp71c: that's why I think a tally system would be too hard to do for now 07:58:41 but implementing a manual system with leaving the automatic one as-is would make everyone go manual because they get their skills faster 07:59:36 kilobyte: if we remove exp pool for a manual system, we should make sufficient changes to the current automatic system to bring it to an exp-pool-less implementation as well. 07:59:55 One should not use the pool while the other ones does. 08:00:14 s/ones/one; s/One/One xp allocation system 08:00:17 thus, I'd leave the xp pool internally, but training a skill from it would only shift the weights towards the skill trained 08:01:04 Hrm. 08:01:19 that is: the manual system would use galehar's *1/*2, while the automatic one would use a count of assignments from the pool 08:01:40 complex, but the player don't see it as it's just an implementation detail 08:02:25 you don't need to game the system since you can just tell it what you want 08:03:55 most players: "I want the game to do something reasonable, I don't know/want to know which skill I should train now". Power players: "I want to train skill X". 08:04:34 I can live with that, but it should be a TODO to at least try to remove the exp pool, imo. 08:06:15 sure! 08:07:04 what I'm saying is not "the xp pool is good, long live xp pool", but "there's no viable replacement for it, all proposals tried failed" 08:07:06 it may need to be kept internally for stuff like the potion/card of experience 08:07:31 or they could be removed 08:07:37 they don't really add to the game imo 08:07:56 well, the skill effect is new, so that could be reverted 08:08:05 jpeg: why not just say "oh, you killed an orb of fire: 15k xp into skills" then "oh, you drank this potion: 20k xp into skills" 08:08:05 hi jpeg! 08:08:27 or that, right 08:08:49 but that only works if the player has picked a skill to train automatically 08:09:21 it's a minor detail, though 08:10:03 jpeg: whether using automatic or the manual mode, we should always require at least one skill to be on when we fully deprecate the xp pool. 08:10:04 I don't worry too much about internal stuff as long as the pool no longer turns up on the screen :) 08:10:27 manuals would become worthless, good riddance 08:10:32 indeed. 08:10:38 When I acquire books, I don't want a manual! 08:10:39 :P 08:11:09 the Sage card would need reworking: power 2 and 3 is ok, what about power 1? Should it be purely detrimental? 08:11:55 kilobyte: I don't think so, its fairly annoying waiting out the effect if you get something entirely useless. 08:13:01 we can remove gameability by making it last for X exp (X = Y% of exp-per-current-level) rather than X turns 08:13:27 the question is whether we want a bad card 08:13:47 kilobyte: I think so, sage is in what? Wonders? are there even any bad cards in Wonders? 08:13:54 ??sage card 08:13:54 sage card[1/3]: Gives you the "Sage" status, which lasts randomly 200-2000 turns, and causes 50% of all incoming XP to be multiplied a bit (1 + .5*card power) and put towards one skill (same the whole time). The skill is selected randomly, weighted towards those you know better (the weight is based on card power, and at 0 is completely random). 08:13:56 lots of bad cards 08:14:03 ??deck of wonder 08:14:04 I don't have a page labeled deck_of_wonder in my learndb. 08:14:05 ??deck of wonder 08:14:05 I don't have a page labeled deck_of_wonder in my learndb. 08:14:05 ??deck of wonders 08:14:06 deck of wonders[1/2]: Cards include: Potion, Focus, Shuffle (rare, ornate+ only), Experience, Wild Magic, Helix, Sage, Alchemist (0.8). To get Nemelex to gift wonders, sacrifice potions, scrolls, wands and permafood. 08:14:07 sorry. 08:14:41 kilobyte: will you (or anyone else, really) put the results of this discussion on the wiki? plenty of interesting topics: manual training, fighting, skills, xp reduction, xp pool - easy to lose track 08:15:08 A deck should have at least a few (but not more than half) potentially bad effects so that non-nemelex (or any low-evoc char) should be wary of drawing cards willy-nilly. 08:15:41 yeah... fighting being a shout fest, manual training mostly ok, xp reduction only a vague concept 08:16:20 On a nemelex-related note, are his messages and gifting process still fairly cryptic, or have changes been made to him? I could never figure out the process by which he gifts things and how / when to sacrifice stuff. 08:16:42 there are changes 08:17:06 you can control nemelex stuff on the ^ screen 08:17:45 goodie, next char will be a nemelexite. 08:18:18 It's a little bit hard to find though, you gotta press ^, then !, then toggle which kinds of decks you want (on a screen where you might not assume such an option exists) 08:19:29 Regarding the code, what do you guys think is the best place to implement a stub class method? Monsters.cc has some pure-virtual methods its inheriting from actor (body armor penalty, etc.) that monsters always have a 0 on. I can either 1) make actor's definition not pure-virtual and have the default implementation always return 0 (overloadable in player class). 2) Implement the stub functions with return 0 in monster.h O 08:19:30 R 3) Declare the stub functions in monster.h like every other method but define them in monster.cc. 08:20:07 evilmike: what happens if I sacrifice items for a deck I've turned off? I still get piety, and the weight of that deck might get incremented to become my highest weighted deck? 08:20:44 if you disable (for example) decks of destruction, you simply won't sacrifice stuff that goes towards that deck. So pray over a weapon and nothing happens 08:21:38 ah. 08:21:52 kilobyte: your input on my code-question is highly appreciated. 08:21:57 jpeg: yours as well, if you have time. 08:23:34 Cryp71c: I'd say it's a matter of preference, functionally it's about the same 08:23:48 it would have any meaning only if we got a third actor class 08:23:55 correct 08:24:41 kilobyte: regarding actor classes, would it be possible to define a fake actor to use in cloud agents? 08:24:49 kilobyte: see https://crawl.develz.org/mantis/view.php?id=3301 08:27:07 There are tons of pure virtual actor methods that you'd have to define for a fake-actor, most of which wouldn't apply (not that they couldn't just be stub methods) for cloud agents or god-effects. 08:27:39 There's probably an easier way with regard to the code that generates these effects works, or how KILL_MISC is handled. 08:27:58 KILL_MISC is used if agent == NONE 08:28:41 but we need another case, something like a god actor maybe 08:29:03 where it's not the player's fault if something happens, but it's not a natural effect either 08:29:24 you mean god actor as in god agent (like KILL_GOD) and not as in an actual god actor, correct? 08:29:37 sorry, agent, yes 08:30:19 yeah, I would agree with that. I just saw someone complaining in ##crawl earlier about a poisonous cloud generated by a mis-cast poisoning a draconian and the player got TSO pennance for it. 08:30:21 might be best to keep track of the killer source in the cloud itself, though, now that I think of it 08:30:35 Not exactly the same thing, but its related to that whole scenario. 08:31:07 yes 08:31:30 I think that was changed because miscast clouds used to be autoexcluded (KILL_MISC) 08:31:57 but getting blamed for kills caused by them is worse 08:32:39 the problem is that the former is a very frequent annoyance, while the latter happens rarely 08:33:10 Perhaps there should be a KILL_MISC type agent that doesn't generate autoexclusions (or, more appropriately, a KILL_ agent that is used where KILL_MISC AND an autoexclusion are both appropriate / necessary) 08:33:57 eg, KILL_NATURAL for clouds and other permanent, natural stuff that doesn't get attributed to the player AND gets an exclusion. 08:34:14 right 08:34:15 Where as KILL_MISC would be used for stuff the player can't be blamed for, but doesn't get an exclusion. 08:34:24 sounds good 08:34:39 jpeg: for clouds, the agent can be: 1. you, 2. an actual monster, 3. ANON_FRIENDLY_MONSTER (an ally who died/shifted levels), 4. null; null handles all dead/shifted enemies, gods, environment and the like 08:36:14 having other fakes like ANON_FRIENDLY_MONSTER could work 08:36:16 I now think the real issue is that the killer isn't passed through, but rather decided on based on the agent (you -> kill_you, monster -> kill_mon, anything else -> kill_misc) 08:36:29 for cloud blaming, I mean 08:36:52 jpeg: I _partially_ made this no longer the case. 08:37:22 jpeg: as in: as long as the monster is still alive and on level. If it's not, it reverts to the previous behaviour. 08:37:37 zot traps causing autoexclusions is not such a big deal, but TSO getting upset about miscasts or Xom card effects, is 08:38:11 the actor is "you", right? 08:38:24 yes 08:39:01 I think I changed that back then to get rid of those pesky autoexcludes, but I didn't realize it would affect blaming 08:39:45 ah :( 08:40:04 so we might need a way to tell apart environment and traps/gods 08:40:19 and dead monsters 08:41:28 the only pressing problem are miscasts and god effects 08:41:58 I wonder about this: what if we had fake actors for 1. anon friendlies (like currently), 2. anon hostiles, 3. gods, 4. miscasts, 5. environment 08:42:10 both can be treated as one, because they are both indirectly the player's fault (trap effects, too, I guess) but should not give xp or trigger conducts because they were not deliberate 08:42:28 "anon" stands for "unknown/dead/off-level" 08:42:58 anon friendlies are there for getting xp, right? 08:43:04 yeah 08:43:15 I don't know 08:43:54 Cryp71c pointed out that using fake actors would involve defining loads of virtual methods that aren't ever going to be used for anythign 08:43:56 old cloud tracking cared only about xp, my additions care about xp, obituaries and Yred's damage mirror 08:44:14 and very good additions they are :) 08:44:23 -!- Napkin has joined ##crawl-dev 08:44:27 you're underestimating the opportunities for nasty kludges :p 08:45:06 4500 turns of penance, because some draconian walked into the poisonous cloud, which was caused by a miscast... at least rN+++ was kept in place 08:45:09 Napkin: we're discussing the atrocity of TSO blaming you for miscasts :) 08:45:37 outrageous! ;) 08:45:48 the ANON_FRIENDLY used to be just a magic cookie mindex, it's now a valid index for a fake monster who is alive but without a position or a type 08:45:51 jpeg: if you're dead-set on using a fake-actor, you should might be better off just using a special type of monster. 08:46:19 I'm not, it was just the first idea I had 08:46:21 (eg, one without glyph, attacks, abilities, etc.) 08:46:29 that's a good idea, though 08:46:41 yeah, it seems quite hackish though. I think it will only messy the code more. 08:46:51 Rather than fix the underlying issue of insufficient KILL_ agents. 08:46:58 Cryp71c: there is a problem: many functions still use mindex rather than actor pointers 08:47:09 it'd probably be best to hand the agent into place_cloud() directly 08:47:13 Cryp71c: which often makes sense, especially because of simpler saving 08:47:18 the killer, I mean 08:47:37 rather than set it depending on the agent that does get passed in 08:47:42 kilobyte: right, actor pointers should really be kept to a minimum, only when we're referencing a monster as an actor and not the monster itself in an abstract sense. 08:48:33 Cryp71c: it needs special-casing though... every function that uses a mindex must know about all special values 08:48:36 kilobyte: your statements were serving as arguements against using a fake monster-actor as the killer associated with clouds and whatnot. 08:48:43 correct? 08:49:25 Cryp71c: no, why? mindex or kill_type have loads of flaws 08:50:23 kilobyte: was briefly confused on the side you were taking in your argument 08:53:26 devil's advocate :) 08:54:35 I mean, both things have upsides and downsides 08:55:53 I agree...I'm often swayed by the mantra of "if something seems hackish, its usually an indication of an issue in the underlying code" which approaches problems from a more theoretical, rather than practical, standpoint :) 08:56:18 this is C++, if a pointer goes stale, you get a crash 08:57:06 I miss LPC where the moment you destruct an object, all references to it become 0 08:58:42 I was always bad with pointers and references, in C++ if you destruct an object with pointers/references still in existence, what happens? 08:58:44 on the other hand, a stale mindex is still bad 08:59:23 Cryp71c: if something tries to access it, you get memory corruption or a crash 09:00:06 hmm, how is LPC helping there? if you reference a null-pointer, you also get a crash 09:00:19 Is there a safe way to test for the pointer still being valid before referencing its content? 09:00:52 bhaak: because it's a safe way to test for the pointer still being valid before referencing its content :p 09:01:01 Cryp71c: not in C++ 09:01:15 kilobyte: oh, okay. yes, IF you check :) 09:01:31 That sucks. That seems like quite the obvious thing 09:02:10 Either it should automatically de-reference existing pointers before deallocating the object or provide a safe means by which you can check to see if pointers or references are valid before accessing their content. 09:02:13 you could argue from the other side: if your pointers are not valid, you're program is incorrect 09:02:27 bhaak: well, yeah. That's probably their justification for having it the way it is. 09:02:31 so let it crash (also, performance issues certainly played a role) 09:03:23 LPC 1. will do a runtime rather than a segfault, 2. it doesn't stop the entire program (just this particular call), 3. doing this in a multitasking environment is much easier this way 09:04:16 it's not for protecting you from bugs in your own code, it's for other tasks messing with your objects 09:04:30 hmm, i was not really correct. having a wild pointer doesn't mean that it will crash for certain. 09:04:44 bhaak: yeah, which is _even worse_ 09:05:17 -!- valrus_ has joined ##crawl-dev 09:05:52 Java will silently fail to do what you asked, postponing it only after all other references are deleted, too. Which can be fun with cycles. 09:07:45 hmm... actually, I just realized there's a better solution 09:08:01 i'm not sure what you mean in regards with java 09:08:11 we have three redundant ways to identify a monster: mindex, actor pointer, mid 09:08:17 -!- ais523 has joined ##crawl-dev 09:09:27 currently, mid lookup is slow (since they are only used in 2-3 places), but it could be done much faster 09:10:10 got to go, though... 09:23:41 -!- jpeg has quit [] 10:12:23 I've been looking at shield so long its starting to look like its spelled wrong/wierd. 10:14:01 "weird" 10:14:16 valrus: :) 10:14:19 I'm a programmer, not a speller! 10:14:23 anyone have experience with the marshall/unmarshall stuff in tags.cc? 10:14:48 When was Jiyva removed?! 10:15:12 there's a marshallByte which I was using as are others, but also a marshallInt and a marshallFloat 10:16:00 want to make sure i'm using the right one 10:16:03 Cryp71c: jiyva was not removed 10:16:14 doesn't show up on the ctrl-o screen until you find an altar though 10:17:26 ((actually, for that matter - is a double even the appropriate thing to use in this scenario? will that cause issues somewhere)) 10:18:30 Won! \o/ 10:18:39 grats, Napkin 10:18:49 thx :) 10:21:38 Eronarn: you just choose the marshall function depending on the type of the variable you want to save. 10:23:11 i guess using float should be okay, and there's a function for that, so i'll go change it 10:23:14 thanks 10:23:45 Eronarn: yeah, ##crawl rumour. 10:23:56 Cryp71c: ##crawl is dumb 10:23:59 :) 10:24:04 Don't tell them that. 10:24:07 Might have a mob on your hands. 10:25:04 anyone have suggestions for other stuff to go in this experimental branch? 10:25:11 right now: squarelos, octopodes, lava orcs 10:25:16 are nomes playable yet...? 10:27:29 Eronarn: my fight rewrite, when its done? 10:27:49 Not an experiement, really..more of a test for wierd stuff or crashes. 10:28:33 it'd be nice to get that seeing some testing asap, yeah 10:29:00 i should check that out... it sounds promising but i haven't actually looked at any of the code yet 10:30:22 Its actually turning into a monster of a rewrite, since it involves dozens of player_ methods that really aught to be ambiguized to the actor class and inherited downwards. 10:31:04 But it should set the framework up for future modifications, modularization and ease of maintainability. 10:31:11 the mmm of fight_rewrite! 11:03:29 -!- galehar has quit [Quit: Page closed] 11:21:02 -!- ais523 has quit [Remote host closed the connection] 11:41:44 -!- dazzle has quit [Read error: Operation timed out] 11:43:06 -!- dazzle has joined ##crawl-dev 12:17:04 -!- Guest87739 is now known as neunon 12:17:10 -!- neunon has quit [Changing host] 12:17:10 -!- neunon has joined ##crawl-dev 12:17:46 Ashenzari ^! screen is broken. (https://crawl.develz.org/mantis/view.php?id=3740) by elliptic 12:22:48 "Ashenzari supports your low skills" but he doesn't actually any more... (https://crawl.develz.org/mantis/view.php?id=3741) by elliptic 12:35:53 oh, there's a formating bug in morgue files 12:36:27 --- 12:36:27 It affects your intelligence (+3). 12:36:27 It affects your damage-dealing abilities (+3). 12:36:27 It protects you from cold. 12:36:30 --- 12:36:47 the bottom two lines should be indented too 12:36:55 seems like, all after the first aren't 12:41:51 due: I don't read c-r-c 12:42:07 what is c-r-c anyway 12:42:44 mailing list? 12:42:54 Merfolk don't get a message about invis not working when they step into water. (https://crawl.develz.org/mantis/view.php?id=3742) by elliptic 12:42:55 yes 12:58:32 -!- Jordan7hm has joined ##crawl-dev 13:27:57 -!- eith has quit [] 13:28:10 rock walls in tomb/vestibule (https://crawl.develz.org/mantis/view.php?id=3743) by st 13:28:22 ^ dire issue 13:29:28 -!- eith has joined ##crawl-dev 13:44:06 Adeon: https://lists.sourceforge.net/lists/listinfo/crawl-ref-discuss 13:50:59 -!- valrus__ has joined ##crawl-dev 13:53:46 -!- valrus has quit [Ping timeout: 246 seconds] 14:12:20 -!- ghallberg has joined ##crawl-dev 14:13:24 Hey, I've been reading a bit on the dev-wiki etc. And it seems the next release is quie close. Are we still waiting for the unicode rewrite or is there something else holding it back? 14:16:52 -!- bmh has joined ##crawl-dev 14:16:52 -!- bmh has quit [Changing host] 14:16:52 -!- bmh has joined ##crawl-dev 14:16:55 03galehar * r4511f9b74629 10/crawl-ref/source/libutil.cc: Add missing brackets in libutil.cc 14:16:58 03galehar * r73cc6068d432 10/crawl-ref/source/ (travel.cc travel.h): Fix travel failing to start if standing right next to a cloud. 14:17:18 Oh, that last one is nice. 14:18:09 Adeon: When seeding the rng by array, I'm thinking of XORing successive RNG outputs with the "leftover" contents of the seed array. It should expand our RNG state space arbitrarily without a downside 14:18:25 and also... 14:18:26 -!- bmh is now known as bmh_away 14:28:28 word wrapping in god screens and other places (https://crawl.develz.org/mantis/view.php?id=3744) by st 15:00:23 -!- syllogism has quit [] 15:00:42 -!- ghallberg has left ##crawl-dev 15:28:31 -!- Cryp71c has quit [Quit: Leaving] 15:30:21 03Cryp71c 07unified_combat_control * r2ee2ea6ef1a3 10/crawl-ref/source/ (6 files): Remove player-specific class properties from actor 15:30:39 03Cryp71c 07unified_combat_control * rd54975193e9f 10/crawl-ref/source/ (actor.h monster.cc monster.h player.cc player.h): Add actor::[adjusted|unadjusted]_body_armor_penalty 15:35:09 compiling now... think it should work, the merge went pretty smoothly 15:41:28 yaay, it works 15:49:03 -!- monqy has joined ##crawl-dev 15:49:09 is zotdef actually going to be enabled in the 0.8 release? judging from ragdoll's current game, it is still horribly buggy 15:49:48 (all the monsters stopped moving and he is running around killing hundreds of them) 15:50:17 03galehar * r4288a3c149e2 10/crawl-ref/source/religion.cc: Ashenzari: remove obsolete low skill boost message. 15:58:17 -!- Pseudonut has joined ##crawl-dev 16:00:51 -!- galehar has joined ##crawl-dev 16:03:12 Unstable branch on CDO updated to: 0.8.0-a1-35-g4288a3c (32) 16:06:08 !tell kilobyte I pushed the bracket fix to wordwrap_line. It messes up with ^O again, but fix many other bugs. 16:06:09 galehar: OK, I'll let kilobyte know. 16:06:10 !tell greensnark Branch with lava orcs, octopodes, and... squarelos! :D Message me if there are any issues with it. https://github.com/Eronarn/Crawling-Chaos/tree/experiment_testing 16:06:11 Eronarn: OK, I'll let greensnark know. 16:06:33 eronarn: squarelos really? 16:06:39 yup 16:06:41 <3 16:06:54 <33 16:07:06 not switching to squarelos: the biggest error of them all 16:10:18 Ragdoll (L27 GhMo) ERROR in 'mon-place.cc' at line 1389: invalid monster to place: Ignacio (499) (D:1 (ZotDef)) 16:10:43 nice 16:10:54 Eronarn: is that on your server? 16:11:24 casmith789: it's not right now, no; i could put it up, but the reason i'm sending it to greensnark is that he said he'd put it up on CAO 16:11:39 which would be a lot better because dgl 16:11:40 oh nice 16:11:59 lava orcs could be tested in trunk, but only after 0.8 16:12:00 kilobyte: You have 2 messages. Use !messages to read them. 16:12:20 squarelos could be tested in /dev/null, but only after the heat death of the universe 16:13:03 kilobyte: surely the universe will outlast you and then there will be squarelos everywhere ;P 16:13:51 let me set up my euclidean branch... 16:14:00 Shark (https://crawl.develz.org/mantis/view.php?id=3745) by dolphin 16:14:06 galehar: <3 16:14:34 as long as it isn't the status quo 16:15:01 elliptic: about #3742 what's wrong with the colour of the Invis status light? It doesn't change for other races. 16:15:35 galehar: it doesn't? oh, I thought it did in shallow water... regardless, there is the other half of that BR 16:15:54 about the message when you enter water while invis 16:16:08 yes 16:16:19 I'm fixing the message 16:18:15 03galehar * r206bfd3722d8 10/crawl-ref/source/misc.cc: Fix invisible merfolk not getting the warning when entering water. 16:18:17 elliptic: you mean, the universe will be distorted that way? 16:18:39 elliptic: not something survivable to life as we know it 16:18:54 kilobyte: yes, well, it will be interesting at least :P 16:21:19 elliptic: like, in Tolkien's books... changing the planet from being flat to a ball would kill all life, since getting one of your dimension multiplied but not the others everywhere save on the equator is quite drastic :p 16:22:08 well, it would be a different universe entirely 16:22:18 one in which dcss uses squarelos :P 16:23:51 kilobyte: by the way, what do you think about zotdef? is it going to be part of 0.8? it really shouldn't be because it is horribly, horribly buggy 16:24:25 no one really put any attention to it recently :( 16:24:45 so you might have a good point 16:25:36 I only thought of it because ragdoll was playing it on CDO and it was clearly completely messed up 16:26:01 we didn't have any bug report. Or very few. 16:26:15 I have no idea how difficult the bugs would be to fix but it doesn't seem ready for a stable release... 16:26:21 -!- bmh_away is now known as bmh 16:26:28 galehar: that's because nobody plays it 16:26:56 I guess so 16:27:25 But yeah, we can disable it for 0.8 and keep it active in trunk, in case anyone wants to playtest or debug it. 16:39:03 -!- eith has quit [Ping timeout: 260 seconds] 16:52:54 -!- Suga_H has joined ##crawl-dev 16:54:22 would it be difficult for someone with little coding experience to re-insert old races into a local current build? 16:55:33 probably 16:55:38 which race? 16:55:46 hill dwarves and grey elves 16:56:51 I don't think they had too many special perks, but the code is old. It has changed a lot. 16:57:14 yeah neither had special perks, just some tweaked apts 16:57:28 ??glamour 16:57:28 glamour[1/1]: An ability grey elves recieved in old versions of crawl at xl 5, it tried to confuse, paralyze, charm, scare nearby humanoids. Sucked. 16:57:43 * Suga_H blinks 16:57:50 also... Why? 16:57:55 thats.. interesting 16:57:58 i dont remember that 16:58:28 galehar: i like the idea of slight variants 16:58:47 it makes me sad when i see something removed because it was "too much like ____" when there were slight differences 16:59:36 copy/paste of existing races and tweaking the aptitudes is probably easier than digging up old code. 17:04:02 because apts are different now, ge would be even more similar to de than before 17:04:13 huh 17:04:17 quad damage makes you backlit 17:06:30 upsy: i thought it was that ge was too close to he 17:07:06 * Suga_H shrugs 17:07:55 they seem to be like he in magic, but de in melee 17:12:30 03galehar * rfb6cc5c7886b 10/crawl-ref/source/spl-book.cc: Better error messages for (M)emorisation. 17:14:30 -!- ZChris13 has joined ##crawl-dev 17:16:39 jeepers I sometimes forget how long it takes to build crawl 17:17:15 -!- galehar has quit [Remote host closed the connection] 17:19:33 -!- bmh has quit [Quit: bmh] 17:19:51 @??orange demon 17:19:52 orange demon (043) | Speed: 10 | HD: 8 | Health: 37-67 | AC/EV: 3/7 | Damage: 8, 10 | Flags: 05demonic | Res: 06magic(64), 04rot, 13neg+++, 13torm | Vul: 08holy++ | XP: 416. 17:19:53 @??hellwing 17:19:54 hellwing (154) | Speed: 10 | HD: 7 | Health: 31-59 | AC/EV: 8/10 | Damage: 17, 10 | Flags: 05demonic, evil, fly, regen, !sil | Res: 06magic(56), 03poison, 04rot, 13neg+++, 13torm | Vul: 08holy++ | XP: 390 | Sp: teleport other, animate dead, teleport self. 17:20:02 just noticed this sourcediving - compare the flags 17:26:21 orange demon isn't evil? 17:26:30 and also apparently weaker 17:26:44 or rather, not as strong 17:27:29 Eronarn: quad damage always made you glow, and in versions with coloured light (ie, since when OpenGL support was added in a point release of Quake 2), the glow is blue 17:28:50 heh... hellwing gives less hp even though it's in almost any way stronger 17:29:58 +: more AC/EV, better damage, flies, has spells, regen, rPois. -: minimally less hp. 17:30:07 @??hellwing hd:8 17:30:08 hellwing (154) | Speed: 10 | HD: 8 | Health: 38-68 | AC/EV: 8/10 | Damage: 17, 10 | Flags: 05demonic, evil, fly, regen, !sil | Res: 06magic(56), 03poison, 04rot, 13neg+++, 13torm | Vul: 08holy++ | XP: 551 | Sp: teleport other, animate dead, teleport self. 17:30:10 orange demons poison, not in the stats for whatever reason 17:30:30 anyways, yeah i was just mentioning the evil part 17:30:41 it's kind of weird that all undead get evil but not all demons 17:31:03 @?orange demon 17:31:03 orange demon (043) | Speed: 10 | HD: 8 | Health: 38-66 | AC/EV: 3/7 | Damage: 8, 1004(poison, drain strength) | Flags: 05demonic | Res: 06magic(64) | XP: 416. 17:31:05 even for Zin it doesn't matter, right? 17:31:31 well, i don't know all the places that is_evil is used - most of them are probably catching demons in some other way, or there would've been a bug report about it previously 17:36:31 mon-info.cc:390: warning: left shift count >= width of type <- anyone know what that means, offhand? 17:40:08 Eronarn: uhm, in that line the shift count is 0 17:40:21 not >= the width of any type... 17:42:36 what's the shift count? i added another line, i'm just not seeing how it broke anything 17:49:21 hmm, wait... so your source is different from that, right? 17:49:37 in that case the line number is worthless alone :p 17:53:41 it's just a copy + paste of that line, for a new effect 17:55:28 like so http://pastebin.com/XMjmCmxS 17:57:05 -!- Suga_H has quit [] 17:57:30 and MB_ANTIHALOED is...? 17:58:17 'halo but reversed' - it's for a new monster i'm adding 17:58:20 it's in the enum already 17:59:08 I don't see it, so I guess you added it to that enum 17:59:22 and since there are 64 values anyway, you overflowed the bitfield 17:59:42 ah hah, wouldn't have thought of that 18:00:42 any way to painlessly resolve that, or would the enum need to be restructured totally? 18:00:51 well, the compiler's warning is quite clear 18:00:56 no painless way :( 18:17:55 -!- ZChris13 has quit [Quit: ChatZilla 0.9.86.1 [Firefox 4.0/20110318052756]] 18:19:36 hmm, i guess i can repurpose the haloed one to serve for both 18:21:21 just remember to clean the old bit on save load 18:21:47 (or hope your monster doesn't get merged until the next save version bump) 18:26:17 aw, dang, i can't repurpose it with the way those functions are laid out 18:26:22 oh well, at least it's only a warning 18:27:54 well, "only a warning" that makes any uses of that bit ineffective 18:28:10 unless you are on a 65 bit machine 18:28:54 actually, not even there, since the flags are explicitely defined as uint64_t :p 18:29:38 i can deal with that though, i can leave it in place until i figure out how to best fix it 18:29:47 if i had to comment it out, it not being in the enum would mean commenting out wherever it shows up too 18:31:00 since a bit shift of >= 64 is undefined, in some cases it will trample upon and possibly reuse MB_STABBABLE 18:31:09 but not everywhere 18:47:27 !tell due Hey, I made a new A monster! http://i56.tinypic.com/ny5hd5.jpg http://i54.tinypic.com/2wnn5og.png Think TSO will like it? 18:47:28 Eronarn: OK, I'll let due know. 19:03:17 Eronarn: ie, this is exactly the "dark angel" idea that was floating around, right? 19:04:19 don't recall reading anything like that crawl-specific, but it's a common trope 19:04:56 right now it's a beefy undead with a pain whip and an antihalo - if halo+antihalo in a square, normal lighting 19:05:26 and attacking something that's antihaloed = to-hit penalty, unless you have "nightvision" (currently, this is just having undead or demon holiness) 19:05:55 oh, and it has rHoly, rather than holy vuln 19:06:10 later i'll be giving it some holy desecration / nullification abilities 19:06:56 say... cannot use holy abilities in its presence 19:07:17 -!- elliptic has quit [Ping timeout: 252 seconds] 19:08:07 -!- casmith789 has quit [Remote host closed the connection] 19:42:13 -!- edlothiol has quit [Ping timeout: 260 seconds] 19:50:54 -!- due has quit [Read error: Connection reset by peer] 19:59:37 -!- valrus_ has quit [Remote host closed the connection] 20:11:10 Eronarn: You've named the branch "experiment_testing"? I see you don't work in marketing :P 20:11:32 greensnark: it was 'lava_orc_test' before :P 20:11:48 if i wanted to attract attention i'd name it HOLY_SHIT_SQUARELOS_IS_LIVE_COME_PLAY 20:12:27 squaloctopode 20:13:10 Ugh, this hotel internt connection sucks, looks like 512Kbps 20:13:13 i was surprised squarelos is working okay, i had last heard that there were some problems preventing it from working 20:13:19 but i guess it was just that nobody cared 20:14:00 Well, one person whom I shall not name, but is not megabyte really hated it 20:14:38 Ok, let me do the test build on a box with a decent internet connection 20:19:38 Ye gods, CAO load average 20:19:49 load average: 6.72, 4.45, 3.16 <- not pretty 20:22:02 !players 20:22:03 40 players: Arafel, carwin, rath, LuckyNed, akeidolon, jejorda2, frankhovis, Kautzman, Shovelmint, Ninvader, Dravus, Brittlesworth, DrPraetor, doy, gogul, PoopBridge, Dougy, minmay, Shock, Spoondrift, Tenaya, IonFrigate, permagreen, simonj, hxy, mindloss, rizdon7777, blergbot, aTarkinC, ophanim, Leviathan, Mogra, sorceron, Dalanaf, DarkDrakkon, Konstantin, qubitsu, Pyrusette, gutt, Lifon 20:23:33 !lm doy 20:23:33 3121. [2011-04-07] doy the Martial Artist (L10 DSMo) fell down a shaft to D:12 on turn 14560. (D:9) 20:23:52 !tell doy We're on to you 20:23:52 greensnark: OK, I'll let doy know. 20:39:40 -!- dazzle has quit [Read error: Operation timed out] 20:40:22 Demonspawn Fighter Save crashes.instantly on load. (https://crawl.develz.org/mantis/view.php?id=3746) by Gigalith 20:42:41 -!- dazzle has joined ##crawl-dev 20:44:11 -!- elly_ has joined ##crawl-dev 20:45:02 -!- elly has quit [Quit: leaving] 20:45:05 -!- elly_ is now known as elly 20:52:25 Eronarn: Looks like I have a lot of work to set up an additional auto-save-transfer system for the new branch, so for now I'll install it with no save-migration feature 20:52:42 Which means that the next time save compatibility breaks will be an interesting time :D 20:53:32 -!- due has joined ##crawl-dev 20:56:25 Eronarn: Also, since you've enabled square LOS, are you sure you want the branch to be LO/OP only? 20:58:30 -!- elly has quit [Remote host closed the connection] 20:59:24 -!- elly has joined ##crawl-dev 21:01:40 -!- Hehfiel has quit [*.net *.split] 21:01:40 -!- Zannick has quit [*.net *.split] 21:02:39 -!- upsy has quit [*.net *.split] 21:02:39 -!- MarvinPA has quit [*.net *.split] 21:03:16 -!- upsy has joined ##crawl-dev 21:03:16 -!- MarvinPA has joined ##crawl-dev 21:03:51 -!- Hehfiel has joined ##crawl-dev 21:03:51 -!- Zannick has joined ##crawl-dev 21:06:19 !tell Eronarn Game crashes on reloading saves: http://sprunge.us/TejO 21:06:20 greensnark: OK, I'll let Eronarn know. 21:08:25 hmm, didn't get that behavior on mine 21:08:26 Eronarn: You have 10 messages. Use !messages to read them. 21:08:34 i'll try a make clean and see if i can reproduce it 21:08:53 -!- Cryp71c has joined ##crawl-dev 21:09:05 Evening 21:09:26 also, a non-wiz build, i guess 21:09:42 Crashes on both a normal non-wiz build and a debug build 21:10:07 Looks like a case of adding or removing something from the save code and not making the corresponding change on the load code or vice versa 21:10:15 Did you tweak something there recently? 21:10:25 yeah, i changed temp from an int to a float 21:10:29 maybe i forgot one 21:11:14 That looks ok 21:11:52 Although marshallFloat is itself a train wreck 21:11:55 hmm, nothing else is using it 21:11:59 maybe it's broken and nobody has noticed? 21:12:06 Quite possible 21:12:14 It's implemented in a horrendous way 21:12:24 Do you not see the crash? 21:12:26 marshall float! <3 21:12:26 due: You have 1 message. Use !messages to read it. 21:12:30 !messages 21:12:31 (1/1) Eronarn said (2h 25m 3s ago): Hey, I made a new A monster! http://i56.tinypic.com/ny5hd5.jpg http://i54.tinypic.com/2wnn5og.png Think TSO will like it? 21:12:35 just finished compiling... one sec 21:12:39 !tell Eronarn i cannot look now i will look later! 21:12:40 due: OK, I'll let Eronarn know. 21:13:08 ok, I get a crash now after make clean 21:13:09 Eronarn: You have 11 messages. Use !messages to read them. 21:13:10 didn't before 21:14:52 Reverting the byte -> float thing didn't fix the crash 21:19:04 what's the proper way to save it as a float? is there some float32 like the uint32 stuff? 21:19:55 I don't think the float thing is causing the crash, because backing it out didn't fix the crash for me 21:20:30 The proper way to save a float would be to save it as a hex representation string or one of the other ideas that were tossed around 21:25:27 wonder if i mucked something up when i was merging squarelos in 21:25:41 Eronarn: Where are you saving normal_vision / current_vision 21:25:48 They're being read, but not saved 21:26:12 Right after gift_timeout 21:26:37 greensnark: that's what I just thought of, yeah - I think I might've axed them accidentally during a merge 21:26:51 because these issues definitely weren't happening when i was doing the LO or OP branches, which I tested a lotm ore than squarelos 21:29:33 Yeah, sounds like a hasty fix of a merge conflict tossing the save code 21:30:04 should be fixable, if i can get github's diff to load anyways 21:30:08 i'll ping you when i have it working 21:30:19 Ok, I need to head off now, !tell me and I'll get to it tomorrow 21:47:08 -!- upsy has quit [Quit: Leaving] 21:57:09 !tell greensnark That was it! Works now (tested both squarelos and the merged branch), so pushed to github. btw, might want to refresh gitorious' squarelos with mine, if I didn't make any more mistakes? 21:57:10 Eronarn: OK, I'll let greensnark know. 22:04:14 Oh, cool 22:04:14 greensnark: You have 2 messages. Use !messages to read them. 22:04:21 Let me take it for a spin 22:04:49 So squarelos was actually broken? Interesting, I thought it was some merge conflict that resolved badly 22:05:14 no, it was just that, i think... didn't look back to try and figure out exactly how it happened 22:05:30 Hrm, why is my throwing skill in green and have a +4 next to it? 22:05:36 Cryp71c: crosstraining 22:05:44 (it does with slings iirc) 22:05:52 Eronarn, So - as discussed earlier - you now get a flat bonus to skills that crosstrain? 22:05:59 In addition to the quicker skill gain? 22:06:21 no, the +4 is to apt... unless i'm misunderstanding what you're asking 22:06:29 lots of changes to the skill menu stuff 22:06:47 No, my apt is +3 (its in red) there is also a green +4 next to my apt. 22:07:06 yeah, that's saying your apt is effectively +7 22:07:35 ah, wierd. 22:07:35 k 22:09:19 oh, this is what the lorc temp screen looks like right now - suggestions? http://i54.tinypic.com/15evfpe.png 22:10:20 Do hot lava orcs create steam when they enter water 22:10:38 I mean hot in the temperature sense, not in terms of attractiveness 22:11:04 not yet 22:11:04 Nice screen, btw, but I trust there's an indicator on the main screen for quick checks 22:11:26 yeah, they have a third bar, below the MP bar 22:11:45 "YOU'RE ON FIRE TONIGHT! :D! Oh wait, no, you are, actually, on fire. Did you know?" 22:11:47 also on the A screen, the mutations are colored/ordered in a way to hopefully make it easier 22:54:23 -!- Cryp71c has quit [Read error: Connection reset by peer] 23:10:43 -!- Pseudonut has quit [Read error: Connection reset by peer] 23:16:15 -!- Henzell has quit [Remote host closed the connection] 23:16:53 -!- Henzell has joined ##crawl-dev 23:18:28 -!- Sequell has quit [Remote host closed the connection] 23:19:17 -!- Sequell has joined ##crawl-dev 23:21:30 Eronarn: Done, mostly 23:23:13 awesome! thanks for the work on it; I really don't want to screw around too much with my server, and the current approach is far inferior to dgl 23:23:32 I need to set up better scripts 23:23:56 CDO's upgrade scripts are great, but I'd like to generalise them to handle multiple sandboxes 23:24:03 So lava orcs are a nice candidate for that refactoring 23:25:35 that reminds me, are all those scripts up somewhere public? i want to possibly do a small site for CAO in drupal, similar to what TOME has on their site 23:25:45 with stuff like non-.txt chardumps 23:26:17 (not the upgrade scripts only, i mean, but the various scripts involved in running CAO/CDO) 23:26:23 The CAO scripts are in a repository, but they're nowhere near complete enough to go from scratch to working dgl 23:27:00 The preliminary work is here: https://github.com/greensnark/dgamelaunch-config 23:27:09 But it's very preliminary and very CAO-ey 23:27:18 ah 23:27:48 well, i'll glance at it and see if it has the stuff i'd be looking at (mainly seeing if i'd need any hook-y stuff or whether i can get everything by just running a batch job) 23:31:04 If you keep your dgl setup simple, you mostly need to worry only about the dgl config and the chroot 23:31:50 Chroot is such a pain :( 23:35:19 hjklyubn the Digger (L2 LOEE) ERROR: range check error (18 / 18) (D:1) 23:36:01 The only snag with putting this on CAO is that the crash reports are going to be distracting :) 23:36:17 hjklyubn the Digger (L1 LOEE) ERROR: range check error (18 / 18) (D:1) 23:36:24 able to mute LO ones specifically? 23:36:46 Yeah, I can make Henzell suppress the notifications in here 23:37:06 !lm * crash 23:37:06 784. [2011-04-07] hjklyubn the Digger (L1 LOEE) ERROR: range check error (18 / 18) (D:1) 23:37:08 !lm * crash -log 23:37:09 784. hjklyubn, XL1 LOEE, T:276 (milestone): http://crawl.akrasiac.org/rawdata/hjklyubn/crash-hjklyubn-20110407-043616.txt 23:37:27 if you can funnel them to me or to a logfile somewhere, that'd be handy 23:37:39 Windows development builds on CDO updated to: 0.8.0-a1-37-gfb6cc5c 23:37:56 They'll be logged in the milestones file at http://crawl.akrasiac.org/milestones-lorcs 23:38:00 also like monqy noted it might be good to get this in sequell as a separate version or game 23:38:03 ah, cool 23:38:31 squarelos will probably have the most crash bugs, i've tested lorcs pretty thoroughly 23:40:25 -!- valrus has joined ##crawl-dev 23:40:44 -!- Sequell has quit [Remote host closed the connection] 23:41:08 -!- Sequell has joined ##crawl-dev 23:41:10 -!- Henzell has quit [Remote host closed the connection] 23:41:26 -!- Henzell has joined ##crawl-dev 23:41:39 monqy the Grave Robber (L1 OPNe) ERROR: range check error (18 / 18) (D:1) 23:41:43 oops 23:41:48 Naughty monqy 23:43:00 hjklyubn the Digger (L3 LOEE) ERROR: range check error (18 / 18) (D:3) 23:44:48 -!- Henzell has quit [Remote host closed the connection] 23:45:06 -!- Henzell has joined ##crawl-dev 23:54:36 -!- valrus has quit [Remote host closed the connection]