Page 1 of 1

fan of gales knockback

PostPosted: Thursday, 20th October 2016, 19:51
by minstrel
When fan of gales got the elemental summons removed, the changelog indicates the intention was to buff the knockback:

bcf4d46 | Chris Campbell | 2016-05-28 02:22:48 +0100

Make the lamp of fire and fan of gales not create elementals
And strengthen their other effects - make the fire clouds last longer and
deal more impact damage, and increase the distance of the fan knockback. Also
base knockback distance directly on the wind blast's power rather than on
evocations skill, which affects the Storm card too.


Maybe I'm crazy, but it's felt to me like it's had exactly the opposite effect - I seldom knock anything back more than a tile, and big stuff doesn't move at all.

Wondering if anyone else has noticed this?

Re: fan of gales knockback

PostPosted: Thursday, 20th October 2016, 22:35
by Rast
I dug through the spaghetti for a bit before giving up.

http://s-z.org/neil/git/?p=crawl.git;a= ... 110b55e4fa

evoke_item() used to call wind_blast(&you, player_adjust_evoc_power(you.skill(SK_EVOCATIONS, 10)), coord_def() )
but now it calls wind_blast(&you, player_adjust_evoc_power(you.skill(SK_EVOCATIONS, 15)), coord_def() )

I don't understand what skill() does so I have no idea if that part is a nerf or a buff.

wind_blast() used to call _gale_push_dist(agent, act);
but now it calls _gale_push_dist(agent, act, pow);

_gale_push_dist returns (I think) the distance to push whatever is getting pushed. The part that changed was:
old: dist = player_adjust_evoc_power(1 + you.skill_rdiv(SK_EVOCATIONS, 1, 10));
new: dist = 1 + random2(pow / 20);

skill_rdiv() and player_adjust_evoc_power() were too confusing for me.

So, in conclusion, I have no idea if fan of gales is weaker now.

Re: fan of gales knockback

PostPosted: Thursday, 20th October 2016, 23:36
by duvessa
it is much weaker now, because it doesn't summon elementals anymore

Re: fan of gales knockback

PostPosted: Thursday, 20th October 2016, 23:54
by Rast
Well yeah. But the blowback feels weaker too.

Re: fan of gales knockback

PostPosted: Friday, 21st October 2016, 01:55
by minstrel
Rast wrote:I dug through the spaghetti for a bit before giving up.

...

_gale_push_dist returns (I think) the distance to push whatever is getting pushed. The part that changed was:
old: dist = player_adjust_evoc_power(1 + you.skill_rdiv(SK_EVOCATIONS, 1, 10));
new: dist = 1 + random2(pow / 20);


This looks like the important bit to me too. I looked up the crawl.random2() function here, and it appears to always return 0 for values less than 1.5. Anything above that is rounded to the nearest integer x, and a random integer of 0 to x-1 is returned.

So unless pow is >= 30, distance is always going to be 1, which is effectively 0, since they'll just walk back immediately after you evoke.

At this point my head's spinnning. I don't know a lick of C, so backtracking all the functions to figure out what the values of pow can be has me stumped for now.

Re: fan of gales knockback

PostPosted: Friday, 21st October 2016, 20:31
by Rast
devs pls

Re: fan of gales knockback

PostPosted: Friday, 21st October 2016, 20:34
by Baldu3
Having played a recent evocations heavy character, I had tried to use the elemental evokers as much as i could. Compared to other elemental evokers at very low power fan was just inferior. But at 27 evoc ( i know :/ ) it actually was acceptably usable for its intended purpose of making some room.

I'm not sure at what evocation skill level it went from bad to not bad. Also I probably won't be carrying it again in the future unless it changes again since overall it was less useful less often then most other things I could have been carrying in its place in my inventory.