Hey I'm new to the community & this is my first thread/post, my apologies if this is not the correct place to be asking.
What I'm trying to do is have some sort of system in place where i can add a delay to a units move command, the plan is to figure out each players ping and apply certain delays to certain players to give each player a fairly equal delay. finding the players ping (obviously not thru the editor) and applying the delayed commands conditionally will be no problem for me i just have no idea how to delay the command, whether it be through delaying the actual ability or the issued order. Is it even possible to do?
First things first, welcome to sc2mapster! Feel free to send me a PM if you have any questions or concerns :P
Anyways, onto the actual question. What Eiviyn said would probably work, but there might be a way to do it with triggers. I don't have time right now to test it, but what if you set up a trigger so that whenever a unit receives an order, it's ordered to continue whatever it's previous order was for x seconds, and then ordered the actual order. I'd certainly try a trigger solution first, because it would probably save you a ton of time if you were able to do it. If it doesn't work, what Eivyn said is right.
The bigger issue here is how you plan on finding the ping. You mentioned that you won't be finding ping through the editor, so how do you plan on doing it? Unless you just ask the player, I don't see any way you can handle that. Especially considering that even if you were able to create a 3rd party program and get people to use it, it would violate the Sc2 ToS.
Also, I'm going to move this to the data forum based on Eiviyn's response. You should get some better answers there, since this section is more for general sc2 discussion.
Rollback Post to RevisionRollBack
Feel free to Send me a PM if you have any questions/concerns!
Detecting the lag would be the hard part. Not sure if custom script under triggers might but not sure. There any threads about making leader boards showing lag?
Rollback Post to RevisionRollBack
Contribute to the wiki (Wiki button at top of page) Considered easy altering of the unit textures?
thx for the responses guys, as for what zeldarules28 said i tried that exact method but i couldn't get it to work. it went something like this:
Event: Any unit is issued command "move"
Local Variable: Order1 = triggering order
Condition: Owner of triggering unit = 1
Action: Pick Each Any Unit In Center Of "Field" owned by player 1 and do Actions:
Issue Order To Picked Unit To ???????????? (Replace Existing Orders)
Wait .25 Real time
Pick Each Any Unit In Center Of "Field" owned by player 1 and do Actions:
Issue Order To Picked Unit To "Order1" (Replace Existing Orders)
im not sure how to grab the previous issued order where i have the ???????????. Ive also tried setting Order1 to a Global Variable called Ordered then in a different trigger id use Ordered as the previous issued order then set the new order to Ordered~ and use that in the first trigger to grab the last issues order. i feel it needs to be more specific somehow but im not familiar enough with the editor to do that. would you mind typing out a trigger you think would work??
Also i tried Eiviyns method a little bit but am very unfamiliar with a few things in the data editor, abilities being one of them. Im the type of person whos willing to do it the long way as long as it works well, could you post what to set for an ability to do what i need to do??
As for the ping, the ping equaling would only be something id do between friends, we would know our pings simply by trust, they would tell me their ping and i would adjust the delay for them accordingly in the game. weve played a dodging game for many years on sc1 and bw, and are at the point where any delay difference gives the other guy a major edge
Thanks for your time guys!
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Hey I'm new to the community & this is my first thread/post, my apologies if this is not the correct place to be asking.
What I'm trying to do is have some sort of system in place where i can add a delay to a units move command, the plan is to figure out each players ping and apply certain delays to certain players to give each player a fairly equal delay. finding the players ping (obviously not thru the editor) and applying the delayed commands conditionally will be no problem for me i just have no idea how to delay the command, whether it be through delaying the actual ability or the issued order. Is it even possible to do?
any ideas are more than welcomed!
This isn't going to be pretty.
Replace the move command on every unit with an effect-target ability that issues a move order after a persistent delay.
Make the effect-target ability smartcast on points.
Use catalog value set triggers to adjust the delay on the persistent effect.
You will need to do this for every ability. This will not be a quick job, and I doubt you'll find another way.
@staminized: Go
First things first, welcome to sc2mapster! Feel free to send me a PM if you have any questions or concerns :P
Anyways, onto the actual question. What Eiviyn said would probably work, but there might be a way to do it with triggers. I don't have time right now to test it, but what if you set up a trigger so that whenever a unit receives an order, it's ordered to continue whatever it's previous order was for x seconds, and then ordered the actual order. I'd certainly try a trigger solution first, because it would probably save you a ton of time if you were able to do it. If it doesn't work, what Eivyn said is right.
The bigger issue here is how you plan on finding the ping. You mentioned that you won't be finding ping through the editor, so how do you plan on doing it? Unless you just ask the player, I don't see any way you can handle that. Especially considering that even if you were able to create a 3rd party program and get people to use it, it would violate the Sc2 ToS.
Also, I'm going to move this to the data forum based on Eiviyn's response. You should get some better answers there, since this section is more for general sc2 discussion.
Detecting the lag would be the hard part. Not sure if custom script under triggers might but not sure. There any threads about making leader boards showing lag?
Contribute to the wiki (Wiki button at top of page) Considered easy altering of the unit textures?
https://www.sc2mapster.com/forums/resources/tutorials/179654-data-actor-events-message-texture-select-by-id
https://media.forgecdn.net/attachments/187/40/Screenshot2011-04-17_09_16_21.jpg
thx for the responses guys, as for what zeldarules28 said i tried that exact method but i couldn't get it to work. it went something like this:
Event: Any unit is issued command "move" Local Variable: Order1 = triggering order Condition: Owner of triggering unit = 1 Action: Pick Each Any Unit In Center Of "Field" owned by player 1 and do Actions: Issue Order To Picked Unit To ???????????? (Replace Existing Orders) Wait .25 Real time Pick Each Any Unit In Center Of "Field" owned by player 1 and do Actions: Issue Order To Picked Unit To "Order1" (Replace Existing Orders)
im not sure how to grab the previous issued order where i have the ???????????. Ive also tried setting Order1 to a Global Variable called Ordered then in a different trigger id use Ordered as the previous issued order then set the new order to Ordered~ and use that in the first trigger to grab the last issues order. i feel it needs to be more specific somehow but im not familiar enough with the editor to do that. would you mind typing out a trigger you think would work??
Also i tried Eiviyns method a little bit but am very unfamiliar with a few things in the data editor, abilities being one of them. Im the type of person whos willing to do it the long way as long as it works well, could you post what to set for an ability to do what i need to do??
As for the ping, the ping equaling would only be something id do between friends, we would know our pings simply by trust, they would tell me their ping and i would adjust the delay for them accordingly in the game. weve played a dodging game for many years on sc1 and bw, and are at the point where any delay difference gives the other guy a major edge
Thanks for your time guys!