Ok so don't shoot me for this, but I was FREDding a mission to get acquainted with string variables. It works perfectly in gameplay but both the FRED and FS2 engine spit out this error:
Invalid ship name.
In sexpression: ( when
( not
( destroyed-or-departed-delay
0
"Cargo 1"
)
)
( ship-create
1[]
"GTSG Alastor"
( get-object-x
"Cargo 1"
"<none>"
0
0
-40
)
( get-object-y
"Cargo 1"
"<none>"
0
0
-40
)
( get-object-z
"Cargo 1"
"<none>"
0
0
-40
[...]
(Error appears to be: turret01a)
KERNELBASE.dll! WaitForSingleObjectEx + 152 bytes
kernel32.dll! WaitForSingleObjectEx + 67 bytes
kernel32.dll! WaitForSingleObject + 18 bytes
fs2_open_3_7_0_RC2.exe! <no symbol>
fs2_open_3_7_0_RC2.exe! <no symbol>
I have attached the mission below. You just require mediavps for it.
As for what's in the mission, here's a description:
I wanted to place a cluster of sentries (approx. more than 50.

) around an Arcadia. This was tedious even with using the arguments list so I decided to use string variables and appropriate SEXPs.
Note: I used string variables to name those ships and configure them. (for creating them I used ship-create SEXP).
The error says that turret01a is an invalid turret name. (Actually I used change-turret-weapon SEXP to change the weapons of Alastor to Prometheus S). HOWEVER IT WORKS PERFECTLY IN-GAME.
So I wanted to ask if that event does not give any error when using the arguments way then why does it give using the string way.
Is using string variables a mistake?
Hmm... words don't explain this properly. So playing the mission to troubleshoot it is more helpful. There are not many events just one event in the mission which has to be troubleshooted.
Also sorry for being 'lazy' in FRED.

[attachment deleted by ninja]