Any one of you heard about the Shift+moving + UPGRADE SPAMMING HOTKEY bug?
Of cause it only affects units which can move while they have multiple upgrade level in themself.
for example:
Space marine SHIFT HOLD THE ENTIRE TIME + MOVE, now the player press fast a hotkey to upgrade dmg or what ever
He will get every upgrade but only pay the same price.
Its like, the upgrade effect that increase the upgrade cost itself is skipped by that.
Wait, but the unit being moved is the same that can upgrade... itself? sounds like a really specific bug that could, possibly, be very easily fixed with validators for the upgrade buttons, just don't show them while the unit is upgrading, or force the uncommandable flag via behaviours.
Yes, the Unit being moved is the same that upgrade itself :)
The Upgrade is instant. There is no waiting time for it until its done. So i guess the first solution is not working?
The Thing is, usually, when the unit is in action for example moving, and you just press the hotkey for the upgrade, it will stop his action and the upgrade will be done. But by shift move and pressing the hotkey all the time. The Upgrade effect itself which includes the effect of increasing the cost itself wont increase the cost, but upgrade the dmg.
What do you mean with force uncommandable flag via behaviours?
I tried to add a upgrade time of 1 sec (even when actually i dont want it at all!)
then i added a validator for the upgrade that you can only use it when its not in progress. But it doesnt work
The Unit just moves and when it reaches his target, it will upgrade one after another for the same minerals without increasing the cost itself.
Anyone can help?
To me this seem like a Starcraft 2 mechanics problem. I Heard that this problem or bug happens on some other arcade games too....
If there is no way i can fix it, i will need to move the upgrades from the unit itself to a building which is reachable via hotkey. But this is the last thing i do want
for my game.
The issue is with the cost queue logic since the upgrade upgrades its own cost after research so queuing it before can ignore that cost change.
Try reducing the queue size to 1 and giving it a 0.0625 second research time. This will mean that only 1 upgrade can be researched per frame and that only 1 upgrade can be queued for research at any time.
Another approach would be to trigger the upgrade cost in the form of a custom UI button (press to upgrade).
You could also add a protection trigger to fix it. It detects if you try and queue up using shift 2 or more of the same research order and then forces the unit to stop (showing an error message). Not the best solution but still better than nothing.
Sadly the first solution doesnt work. I tried it already. There is only 1 Slot for the unit to upgrade at the same time there is no waiting list for more upgrades. I did also add 1sec research time. But it doesnt help. The bug does appear the same way.
Mh so i have to create triggers for each Unit. I have different heros with different upgrades. So i need to create round about 50 Triggers to make each check a different upgrade. Kinda sucks but i dont have any other idea.
Of cause i could, change my upgrade system and do it like Blizzard did it. But this means that there is only 1 max upgrade for each single main upgrade and i need to create for example 30 single dmg upgrades and conditions and add them all one by one into the unit, this is more then a pain in the ass and takes way to much time.
I will try the trigger thing next days and post my results...
Mh so i have to create triggers for each Unit. I have different heros with different upgrades. So i need to create round about 50 Triggers to make each check a different upgrade. Kinda sucks but i dont have any other idea.
Or just use 1 trigger? I do not see why 50 would be required as a single trigger in a data fed system could handle many upgrades.
Alternatively you could add the protection trigger I described (cancel all orders if you try and queue upgrades with shift).
Check the "transient" flag. It'll make the upgrade go off instantly regardless of what orders the unit has, making it impossible to queue them.
I think it will still queue them in the case of a lag burst since then the unit will receive/execute multiple orders for the ability on the same deterministic frame (which seems to be the issue).
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hey Guys...
Any one of you heard about the Shift+moving + UPGRADE SPAMMING HOTKEY bug?
Of cause it only affects units which can move while they have multiple upgrade level in themself.
for example:
Space marine SHIFT HOLD THE ENTIRE TIME + MOVE, now the player press fast a hotkey to upgrade dmg or what ever He will get every upgrade but only pay the same price.
Its like, the upgrade effect that increase the upgrade cost itself is skipped by that.
Any solutions?
Wait, but the unit being moved is the same that can upgrade... itself? sounds like a really specific bug that could, possibly, be very easily fixed with validators for the upgrade buttons, just don't show them while the unit is upgrading, or force the uncommandable flag via behaviours.
@gundrust: Go
Hey thanks for your reply!
Yes, the Unit being moved is the same that upgrade itself :)
The Upgrade is instant. There is no waiting time for it until its done. So i guess the first solution is not working?
The Thing is, usually, when the unit is in action for example moving, and you just press the hotkey for the upgrade, it will stop his action and the upgrade will be done. But by shift move and pressing the hotkey all the time. The Upgrade effect itself which includes the effect of increasing the cost itself wont increase the cost, but upgrade the dmg.
What do you mean with force uncommandable flag via behaviours?
I tried to add a upgrade time of 1 sec (even when actually i dont want it at all!) then i added a validator for the upgrade that you can only use it when its not in progress. But it doesnt work
The Unit just moves and when it reaches his target, it will upgrade one after another for the same minerals without increasing the cost itself.
Anyone can help?
To me this seem like a Starcraft 2 mechanics problem. I Heard that this problem or bug happens on some other arcade games too....
If there is no way i can fix it, i will need to move the upgrades from the unit itself to a building which is reachable via hotkey. But this is the last thing i do want for my game.
Soooo pleeease any one have an idea?
The issue is with the cost queue logic since the upgrade upgrades its own cost after research so queuing it before can ignore that cost change.
Try reducing the queue size to 1 and giving it a 0.0625 second research time. This will mean that only 1 upgrade can be researched per frame and that only 1 upgrade can be queued for research at any time.
Another approach would be to trigger the upgrade cost in the form of a custom UI button (press to upgrade).
You could also add a protection trigger to fix it. It detects if you try and queue up using shift 2 or more of the same research order and then forces the unit to stop (showing an error message). Not the best solution but still better than nothing.
@ImperialGood: Go
Hey Imerpail :)
Sadly the first solution doesnt work. I tried it already. There is only 1 Slot for the unit to upgrade at the same time there is no waiting list for more upgrades. I did also add 1sec research time. But it doesnt help. The bug does appear the same way.
Mh so i have to create triggers for each Unit. I have different heros with different upgrades. So i need to create round about 50 Triggers to make each check a different upgrade. Kinda sucks but i dont have any other idea.
Of cause i could, change my upgrade system and do it like Blizzard did it. But this means that there is only 1 max upgrade for each single main upgrade and i need to create for example 30 single dmg upgrades and conditions and add them all one by one into the unit, this is more then a pain in the ass and takes way to much time.
I will try the trigger thing next days and post my results...
Or just use 1 trigger? I do not see why 50 would be required as a single trigger in a data fed system could handle many upgrades.
Alternatively you could add the protection trigger I described (cancel all orders if you try and queue upgrades with shift).
Check the "transient" flag. It'll make the upgrade go off instantly regardless of what orders the unit has, making it impossible to queue them.
I think it will still queue them in the case of a lag burst since then the unit will receive/execute multiple orders for the ability on the same deterministic frame (which seems to be the issue).