Using of software programmable macros in competitive games

Discussion about the game and its default mods.
maceman
Posts: 65
Joined: Thu Apr 20, 2017 7:49 pm

Re: Using of software programmable macros in competitive games

Post by maceman » Tue Aug 28, 2018 3:30 pm

Also if you need to micro early, you don't get as long to queue up whatever you need, and sometimes forget that you need to save time later to queue proper and stop producing for ages.

AMHOL
Posts: 74
Joined: Wed Jul 20, 2016 7:24 pm

Re: Using of software programmable macros in competitive games

Post by AMHOL » Tue Aug 28, 2018 4:16 pm

anjew wrote:
Tue Aug 28, 2018 2:51 pm

[...]
AMHOL wrote:
Tue Aug 28, 2018 2:25 pm
My analogy stands, the point was that it's not a fair fist fight when someone turns up with a shotgun...
That's not a fistfight[...]
That's the point...

User avatar
anjew
Posts: 499
Joined: Sat Nov 08, 2014 4:16 am

Re: Using of software programmable macros in competitive games

Post by anjew » Tue Aug 28, 2018 10:25 pm

AMHOL wrote:
Tue Aug 28, 2018 4:16 pm
anjew wrote:
Tue Aug 28, 2018 2:51 pm

[...]
AMHOL wrote:
Tue Aug 28, 2018 2:25 pm
My analogy stands, the point was that it's not a fair fist fight when someone turns up with a shotgun...
That's not a fistfight[...]
That's the point...
So ORA is no longer a video game when someone uses a macro?
Sure its not fair if everyone isn't aware but pressing f1 and f2 isnt the most important part of the game and you know this because you still play people who use macros. Would you really get into a fist fight with someone if you knew they were allowed to use a shotgun?

User avatar
WhoCares
Posts: 256
Joined: Mon Feb 13, 2017 11:28 pm

Re: Using of software programmable macros in competitive games

Post by WhoCares » Tue Aug 28, 2018 10:41 pm

Still preparing my own thread but here some infos.

People think that macro can acomplish anything but the game itself is a huge limitation for external scripting. Some of the features i'm coding suffer a huge impact from the hability of the game to receive and accept lots of input at a time. At one point, I'm sometine considering it would be faster for someone with some training to do it manually than the script I'm coding. And yet I'm still limited to scripts trigged by key and depending of a timing wich in case of lag that can occure in multi prevents for long term automation. I scripted on only 1 key an entire 5 min game in pitfight with all you need to do, building placement, unit managing, cap of the derrick and the hospital, the first expansion, eco sliding ... even micro of the ore trucks. just by pressing 1 key and being spectator for the rest (you can still interact as you please) .everything timed precisely. On skirmish it works like a charm. Once you reach online server ..... all the timing go to garbage from any latency the internet will insert leading this to be totally unusable.

It has been some month I have a new key mapping with lots of interesting feature coded and still don't use them. I played 3 games yesterday (I have only played 6 in one month) and on those game, aside the unit production macro, i used once a patrol script (and forgot about it, nothing happend on that part of the map) some "autodeploy on waypoint" (on only one key) for the conyard because it feels awesome to work around the stupidity of how it has to be done right now. And .... that would be it. The rest of tyhe feature stayed untouched because i simply don't think to use them.

I'm gonna rework my whole scripting file to make an automatic anouncement for my opponenet that I will (try, if my fucking brain remembers to) use advanced scripting and at the gg time, it will display in "chatbox" a list of what script has been used and how often. Maybe that way i'll finally get feedback on the real impact on the game and my opponents will know exactly what they were playing against.

Once i get that "counter and display" thing up, i'll start the thread relating all the feature i coded and start to gather feedback from the people who will be kind enought to play me. ofc, in the thread i will not release in full access files or code leading people to be able to use the features right away. I'll just explain the mechanism i coded maybe illustrated by some little video.

My objective is to reveal what scripting and macro can allow a player to do. It will allow people to make their own mind on what is good and should be in the game itself (someone talked about a general cancelation of an entire prod tab on 1 key ? I have that one coded and working already), what is fun but useless and what is clearly op and should be "banned". It'll give people who want to make rules about it material to work with.

User avatar
Sleipnir
Posts: 691
Joined: Wed Apr 10, 2002 11:52 pm
Contact:

Re: Using of software programmable macros in competitive games

Post by Sleipnir » Tue Aug 28, 2018 11:02 pm

Reading through the comments in these threads gives me the (maybe unfair) impression that some people are ignoring the basic ideas of sportsmanship. IMO macros can have a place in the game - in casual games, and for people who may have disabilities - but using them in competitive games, unless they have been explicitly allowed, shouldn't be accepted.

This is a management issue, not a technical one: the people running events need to decide on a policy, and participants should be expected to abide by this the same way as any other rule. If players are found to have violated the rules, then disqualify and ban them from future events. Detecting basic macro use is a simple data analysis task on the replay order timings. If somebody goes out of their way to try and cheat a no-macro rule by introducing random timing jitter, then I really don't see how this is any different to using a map hack or other "real" cheats.

User avatar
netnazgul
Posts: 304
Joined: Mon Jul 10, 2017 7:32 am
Location: Minsk
Contact:

Re: Using of software programmable macros in competitive games

Post by netnazgul » Wed Aug 29, 2018 4:22 am

Sleipnir wrote:
Tue Aug 28, 2018 11:02 pm
Detecting basic macro use is a simple data analysis task on the replay order timings.
It's one of those "easy" things noone has yet clearly defined and implemented. And ignoring the fact, that things like bulk ordering infantry (and thus spiking APM) are only a small part of macros.
It's not a problem of policy, we've already stated in RAGL rules that using macros is discouraged. Problem is how to explicitly prove that said player used macros in said game, and hence predefine what behaviour is considered prohibited. Calling names without proofs is a crooked path.

Saying all that - there are several people that successfuly did proper binary parsing of replay orders (json output?).

lawANDorder
Posts: 43
Joined: Tue Oct 24, 2017 3:20 pm

Re: Using of software programmable macros in competitive games

Post by lawANDorder » Wed Aug 29, 2018 6:03 am

(Content was not helpful for the discussion.)
Last edited by lawANDorder on Thu Aug 30, 2018 5:26 pm, edited 1 time in total.

User avatar
ZxGanon
Posts: 117
Joined: Tue Mar 21, 2017 4:40 pm

Re: Using of software programmable macros in competitive games

Post by ZxGanon » Wed Aug 29, 2018 7:14 am

lawANDorder wrote:
Wed Aug 29, 2018 6:03 am
netnazgul wrote:
Wed Aug 29, 2018 4:22 am
It's not a problem of policy, we've already stated in RAGL rules that using macros is discouraged.
Why not explicit say "using macros is disallowed"? Sounds half-assed, IMO.
+1

User avatar
Sleipnir
Posts: 691
Joined: Wed Apr 10, 2002 11:52 pm
Contact:

Re: Using of software programmable macros in competitive games

Post by Sleipnir » Wed Aug 29, 2018 10:05 am

netnazgul wrote:
Wed Aug 29, 2018 4:22 am
And ignoring the fact, that things like bulk ordering infantry (and thus spiking APM) are only a small part of macros.
My observation of the discussion is that this is the only case that people really care about, and that other types of macro don't give anywhere as near a competitive advantage.

If you want to allow production macro use then thats IMO fine, but you really need to make it explicit. Some of these competitive events are starting to rack up serious prize money, so it is really bad form to leave this to each players own morals – discouraged is not banned, and i'm quite sure that some people are 100% fine with being considered a bad sport if it means they can get a $200 prize.

Here are a couple of quick plots generated from a game off GameReplays (I won't name names):

ImageImage
ImageImage

The blue histograms show what I would consider normal (but still pretty fast) behaviour, with the maximum of 4 orders issued in a single net-tick (120ms, so about 30ms between keypresses). The red case shows a player who was issuing repeats of 5xe1, 2xe3 at rates of 24-30 orders a net-tick (~5ms between "keypresses", I suspect rate limited by the OS's event queue). More sophisticated analysis would be possible, but isn't needed in this case.

User avatar
kyrylo
Posts: 188
Joined: Wed Mar 11, 2015 8:46 am

Re: Using of software programmable macros in competitive games

Post by kyrylo » Wed Aug 29, 2018 11:01 am

I feel like I am a little out of the loop here. Could somebody summarise what macros achieve, exactly?
I see some people mention that some macros are more harmful than other. Could we have a list of all of these macros and their impact? Are they possible only if you own a mouse with a lot of buttons such as Logitech G600?

User avatar
WhoCares
Posts: 256
Joined: Mon Feb 13, 2017 11:28 pm

Re: Using of software programmable macros in competitive games

Post by WhoCares » Wed Aug 29, 2018 12:53 pm

production macro infantry/vehicule/pillbox. : script will select the desired tab and add the sequence you coded ex : {[(3 rifle, 1 rocket) x 5] , 1 medic, 1 mecanic} x 5, will produce 1 rocket every 3 rifle and 1 medic and mechanic every 5 rocket (and 15 rifles). in the example this sequence is coded 5 time means 75 rifles, 25 rockets, 5 medics, 5 mecanics, all produced smootlhy without having only rifles at one point or only rocket at one point opr a bunch of useless medics. can apply on vehicule and defence (ex 3 pillbox 1 turret), sometimes handy to have a turret ready instead of the regular pillbox spam.

cancel all production on current opened tab : script will move the cursor on the first square of the build menu of the current tab, issue a shift middle click then move to the next and so on. Up to 9 squares because it is fast but still consumes time and past 9 square those spot are rarely used. coupled with a production macro, in 2 clicks you have your production click cleared and ready to insert the emergency production you desire. IMO it should be something similar and faster in the game itself.

autodeploy mcv : place cursor on desired spot, press one key : sequence : right click, center view on unit, center mouse on screen, hold shift, right click, release shift. (i would never have coded that one if the game allowed to queue this order with shift + "deploy shortcut")

autoregroup : select each group 1 by 1, if a unit in that group is still alife, script will select all unit of that type and regroup them. process is fast up to 3 groups, take 3 times more up to 9.

rework of repair function "instant repair": point the unit, press one of key, script will call repair function, issue a right click, degroup the selecte unit by putting it in group 0 , mouve the mouse few pixel away, left click to unselect the unit and/or remove the repair icon. (same for unpower and sell, ... beware instant sell can cost you a game if you wanted to repair instead)

Draw the perfect path (in amove in playtest): click the key and draw the path of your unit : script will issue a amove command every 50 ms as long as you move the mouse, do nothing if the mouse stay in the same position. allowed me to made a ranger slalom between a line of 5 tesla coil by holding 1 key and moving my mouse.

patrol script (in amove in playtest): select the unit (group of unit)and fire the script. once the script is fired, the 4 first rightclick you will issue will select the patrol points you desire, once the 4th click issued, the script will queue 10 amove on each patrol points you selected. if you want less patrol pôint, left click after the desired amount. only 10 movements because the queuing order is a time consuming process and more than that could backfire as the script does not allow you to interact during the queuing sequence, means if you have a building ready to place, you can lose several seconds in your build order.

superstop : spam 5 time the order stop .... everybody knows why

fast recon : on 1 key cycle between your recorded map spots

rework of the super power, use 1 key to cycle throught your superpower, 1 press = first super power, 2 press, second superpower ... ect , click to fire, right click to cancel. if canceled, the script is reset and if you press you select the first one again, same if you fire the selected super power.

glhf & ggwp script ......

total line of code for all those script exept patrol : 500

line of code for patrol script only : 270 (well, code can be optimized to be shorter but it works and it will not affect performance just cosmetic)

hours spent in coding and trying ..... well a lot

I hope that gives you some pratical info on what can be acheived. consider this as a preview of my thread ^^ (well, i don't have more function right now but i'll detaile and illustrate those ones better and of course incoming ones), i really want to share what i have done (without giving it or releasing it ofc) and advertise on what i'm currently working. I really hope some on the function i coded would be consider as a step to better the ingame function instead of starting some damaging witch hunt.
Last edited by WhoCares on Wed Aug 29, 2018 1:52 pm, edited 1 time in total.

AMHOL
Posts: 74
Joined: Wed Jul 20, 2016 7:24 pm

Re: Using of software programmable macros in competitive games

Post by AMHOL » Wed Aug 29, 2018 1:06 pm

WhoCares wrote:
Wed Aug 29, 2018 12:53 pm
[...]

I hope that gives you some pratical info on what can be acheived. consider this as a preview of my thread ^^ (well, i don't have more function right now but i'll detaile and illustrate those ones better and of course incoming ones), i really want to share what i have done (without giving it or releasing it ofc) and advertise on what i'm currently working. I really hope some on the function i coded would be consider as a step to better the ingame function instead of starting some damaging witch hunt.

This shit is not what the game's about, if that's the experience you want then just spectate AI vs AI matches.

User avatar
WhoCares
Posts: 256
Joined: Mon Feb 13, 2017 11:28 pm

Re: Using of software programmable macros in competitive games

Post by WhoCares » Wed Aug 29, 2018 1:41 pm

AMHOL wrote:
Wed Aug 29, 2018 1:06 pm
This shit is not what the game's about, if that's the experience you want then just spectate AI vs AI matches.
This is the stupidest statement of this thread. Those script are a personal work that are for my pleasure to create them. People using macro in openra right now are limited/limit themselve to production macros for all sort of reason. I'm the only one who brainstormed to try in externally reinvent the wheel in openra. I have no intent to use them to get advantage in "fair" or "competitive" games ... Well not entirely true , i still want to use them in some games vs top players because i want to know if what i coded is really usefull or just dust in the wind but that's another part of the experiment.

You have to make up your mind, you want to set ground rules about something but you feel outraged when someone shows you what you are really trying to see ?

I'm not promoting external use of scripting, i'm just sharing the result of something i enjoyed to do. And if something i coded externally seems usefull apealing. It is an open game, a pull on github can be open to suggest new behaviour/mechanism.

So please don't make a fool of yourself with apocalyptical statement such as "Oh noooo everybody is cheating now, game is doomed".
Last edited by WhoCares on Wed Aug 29, 2018 2:03 pm, edited 1 time in total.

lawANDorder
Posts: 43
Joined: Tue Oct 24, 2017 3:20 pm

Re: Using of software programmable macros in competitive games

Post by lawANDorder » Wed Aug 29, 2018 1:54 pm

WhoCares wrote:
Wed Aug 29, 2018 1:41 pm
AMHOL wrote:
Wed Aug 29, 2018 1:06 pm
This shit is not what the game's about, if that's the experience you want then just spectate AI vs AI matches.
This is the stupidest statement of this thread. Those script are a personal work that are for my pleasure to create them. Other people using macro are limited to production ones for all sort of reason. I'm the only one who brainstormed to try in externally reinvent the wheel in openra. I have no intent to use them to get advantage in "fair" or "competitive" games ... Well not entirely true , i still want to use them in some games vs top players because i want to know if what i coded is really usefull or just dust in the wind but that's another part of the experiment.

You have to make up your mind, you want to set ground rules about something but you feel outraged when someone shows you what you are really trying to see ?

I'm not promoting external use of scripting, i'm just sharing the result of something i enjoyed to do. And if something i coded externally seems usefull apealing. It is an open game, a pull on github can be open to suggest new behaviour/mechanism.

So please don't make a fool of yourself with apocalyptical statement such as "Oh noooo everybody is cheating now, game is doomed".
The problem is that not everyone - this includes myself - can distinguish between someone who wants to try new things and someone who wants to cheat in a competition. It took me a while to recognize that the things you are doing are actually quite interesting and not intended to harm gameplay, on the other hand your macro code can potentially can be used to do so.

I don't know your macro code so I can't say anything about its effectiveness, but it is IMO worth it to start learning more about the OpenRA engine if you really want to improve certain game aspects. OpenRA could need more contributors!
---
This post replaces a post that was more rude than I intended it to be.
Last edited by lawANDorder on Wed Aug 29, 2018 7:02 pm, edited 3 times in total.

SirCake
Posts: 262
Joined: Thu Feb 04, 2016 5:40 pm

Re: Using of software programmable macros in competitive games

Post by SirCake » Wed Aug 29, 2018 2:01 pm

@whocares At least you should not expect any public cheering for trying to hack the game. (And using the hacks, too)
Losing in a game can be frustrating, and losing to a cheater is the worst thing. I’d “shoo you away” if you told me after a game you were using ‘awesome scripts’.

Post Reply