steamSummerMinigame icon indicating copy to clipboard operation
steamSummerMinigame copied to clipboard

Auto fire wh not caring about cool down updated

Open shadghost opened this issue 10 years ago • 13 comments

Auto fire wh not caring about cool down updated

shadghost avatar Jun 18 '15 05:06 shadghost

I believe TryAbility() includes a client sided check of if an ability is on cooldown and does not take active Like New's into account. Use triggerAbility() as in #272 instead.

blole avatar Jun 18 '15 05:06 blole

in javascript consle: document.getElementById('abilityitem_' + 27).childElements()[0]

Produces:

shadghost avatar Jun 18 '15 06:06 shadghost

Or if you want to test it, on a boss mod 500 level use this:

setInterval(function(){g_Minigame.m_CurrentScene.TryAbility(document.getElementById('abilityitem_' + 26).childElements()[0])}, 100);

(refresh to remove that)

shadghost avatar Jun 18 '15 06:06 shadghost

Yeah, that does not work as well for me as: setInterval(function(){g_Minigame.m_CurrentScene.m_rgAbilityQueue.push({'ability': 26})}, 100); which is what triggerAbility() does.

blole avatar Jun 18 '15 06:06 blole

NOTE: works as is, does not work with s().

shadghost avatar Jun 18 '15 06:06 shadghost

Just tested this PR, resulted in many WH being used on non 00 levels.

ryantheleach avatar Jun 18 '15 06:06 ryantheleach

Increasing the delay may fix that On Jun 17, 2015 11:58 PM, "Ryan Leach" [email protected] wrote:

Just tested this PR, resulted in many WH being used on non 00 levels.

— Reply to this email directly or view it on GitHub https://github.com/wchill/steamSummerMinigame/pull/274#issuecomment-113056328 .

shadghost avatar Jun 18 '15 06:06 shadghost

I think my change in #272 is much simpler and less error prone than adding a timer.

blole avatar Jun 18 '15 07:06 blole

Using a timer just for this is crazy, this can be implemented much more simply by just adding {'ability': 26} to the queue 10 times.

welwood08 avatar Jun 18 '15 07:06 welwood08

The server most likely ignores more than 1 ability use per tick anyway, since the client side complains if you TryAbility.

welwood08 avatar Jun 18 '15 07:06 welwood08

I've tried adding multiple in the queue, but only one is used. Is there a limit per tick on the server side, or a limit per request we send or something, if so, could we send more requests to use wormholes even faster than once per second?

blole avatar Jun 18 '15 07:06 blole

Only 1 request to use abilities is sent to the server per second, regardless of queueing all 10 at once or queueing them 100ms apart - the setInterval adds no extra magic. If it's already known that queueing them all at once doesn't work, then queueing them at 100ms intervals clearly also won't work.

As for there being a server-side limit of 1 per tick, that's what I'd expect - but you never know considering the other bugs there have been. All I can say is that for a while I was sending commands as soon as I received a response to the previous command, never saw any benefit and all I got was eventual 503 status errors from the server.

welwood08 avatar Jun 18 '15 07:06 welwood08

It's per request, or at least not limited by ticks. I just ran

setInterval(function(){g_Minigame.m_CurrentScene.m_rgAbilityQueue.push({'ability': 26})}, 500);

on 5 slaves, clicked on "Like New" manually once, and it used up 16 wormholes. Now the question is, how do you do that without the trouble of slaves?

blole avatar Jun 18 '15 08:06 blole