Wie die meisten OBSE-Funktionen ist (wahrscheinlich) auch SetName für einen Gebrauch mit Referenz-, als auch mit Object-ID ausgelegt.
Code:
[Ref-Variable, Referenz].SetName "Name"
sollte genauso funktionieren, wie
Code:
SetName "Name" [Ref-Variable, Base Object]

Wenn beides bereitgestellt wird, also z.B.:
Code:
[Ref-Variable, Referenz].SetName "Name" [Ref-Variable, Base Object]
sollte das Base Object "gewinnen", es würde also so wirken als ob die Referenz gar nicht angegeben wurde.

Ergo: ObjectID:ref kannst du einfach weglassen.



Bei dir sollte das Problem allerdings darin liegen, dass du myself nicht als Variable definiert hast.
Dazu schreibst du irgentwo vor das SetName (ich würde den Anfang des Script nach dem scn und dem ersten Begin-Block empfehlen, jeweils mit Leerzeilen abgegrenzt) einmal ref myself.
Damit das ganze auch funktioniert muss noch irgentwo vor das SetName-Kommando hin: set myself to GetSelf ;(zumindest solange dass ein ObjectScript auf dem gewünschten Object ist).


Zeig mal dein ganzes Script, dann geht die Fehlersuche eigentlich um einiges leichter.