IDEAS FOR RYZOM


Macro's actions: back to the previous state

Having actions done in parallel is usually good, in a game, so that you haven't to wait for one completion (which can even delay, depending on server's load or lag) to take profit of the next action.
But can be a nightmare when you try to do some things in sequence and the next closely depends on the previous -__-"
(btw: no way to insert a delay too, for the same reason)

I bet to modify the actual execution engine (to permit serial execution also, when requested) can be difficult, so I renew the request to have some "relative" actions, which won't have to wait for the execution's end, but which are temporary also, so that one haven't to call in a next one to restore a previous state (which, btw, will be executed before needed for sure).

e.g. (on my previous examples)
macro "heal me"
* Actions: TempSelect shortcut bar 1
* Actions: Run shortcut 2 (e.g. heal self)
end of macro: I'm back into actionbar 2

logic: as I called in a "temp" action, the execution of the next one will trigger the end of the action (Select shortcut bar, in the example) and revert to the previous state (previous shortcut bar which we started from, internally (temporary) saved by TempSelect).
This way, the TempSelect haven't to wait for the (next) action (heal) completion, but can revert the actionbar just after starting it.

And now... some little (ASCIIart) timeline simulation :D

actual behaviour

.-- Select shortcut bar 1 <=== the macro starts
! (the shortcut bar 1 is selected, as the switch is immediate)
'-- (the Select shortcut bar ends)

.-- Run shortcut 2
!
.-- (the shortcut 2 starts)
'!- (the Run shortcut action ends) <=== the macro ends
.!
...
.!
.! (the heal action is still executing)
.!
...
.!
.'- (the heal action ends)
(you 're still into shortcut bar 1)

wanted behaviour

.-- TempSelect shortcut bar 1 <=== the macro starts
! (the shortcut bar 1 is selected, as the switch is immediate)
!
.-- Run shortcut 2
!!.-- (the shortcut 2 starts)
!'!-- (the Run shortcut action ends)
!-!-- (the TempSelect auto-restores the previous actionbar)
'-!-- (the TempSelect shortcut bar ends) <=== the macro ends
..!
...
..!
..! (the heal action still is executing)
..!
...
..!
..'- (the heal action ends)
(you 're now into shortcut bar you started with)
Show topic
Last visit Wednesday, 27 November 20:01:13 UTC
P_:G_:PLAYER

powered by ryzom-api