Strange. After shifting v-vars to +1, the script run well on Heroes of Might Not Magic, but the same issue happened on All for One (RoE scenario). x coordinate was wrong on one of the obelisk (returned -1).
Things are getting confusing. The v-var for x coordinate was set in !!UN:U, why it has to change before !!PO:S?
I tried with v3/v4/v5, problem's gone, but still wondering the reason of it.