On an xmlspawner I can spawn necklace/attributes.nightsight/1 and it will spawn a necklace with nightsight property.
If I put the same as the same as an autoreward/true/rewardstring/necklace/attributes.nightsight/1 the quest gives me a plain necklace at completion and the questholder says attributes.nightsight is not recognized.
Surely this is possible! What am I doing wrong?
when you assign the rewardstring, you should use the literal string operator '@' like this
autoreward/true/rewardstring/@necklace/attributes.nightsight/1
otherwise it will try to actually parse the string and process it as part of the entry.
Without the '@' operator, what it did was to set the rewardstring to "necklace", and then tried to set 'attributes.nightsight' to 1 on the questholder.
With the '@' operator it just assigns the rewardstring the value of "necklace/attributes.nightsight/1"
from xmlspawner2.txt
QUOTE |
- Added a literal modifier for setting of property values with otherwise invalid chars. Preceding a property value with the '@' sign will cause the remainder of the line to be assigned as the value. This can be used to assign strings that contain otherwise illegal chars such as the '/'. For example, to set the new Rewardstring property on a quest object you might use the spawn spec "questnote/name/blazequest/Rewardstring/@GIVE/<longsword/name/Blazer/weaponattributes.hitfireball/50>" this would set the Rewardstring property on the questnote to the string "GIVE/<longsword/name/Blazer/weaponattributes.hitfireball/50>". When combined with the new substitution delimiters, a reward spawner could read the Rewardstring property and spawn the string that it contained by using the spawn spec "{GETONCARRIED,blazequest,Rewardstring}" which would then become the spawn spec "GIVE/<longsword/name/Blazer/weaponattributes.hitfireball/50>".
|
Thanks Arte. I wasn't clear that the @ sign was always needed. I saw it in an tutorial for a bag holding the reward, so I miss understood.