message/jsonmessage/speak mechanics break formatting when using parameters
Summary
Describe the bug encountered in detail.
Steps to reproduce
paste skill from Current behavior into skill file, test cast the testdialogue mechanic.
Current behavior
example: this breaks formatting bc no double quotes
testdialogue:
Skills:
- skill:npcspeak{dialogue=ree with spaces and your parent's used car} @self
npcspeak:
Skills:
- speak{offset=0.6f;radius=200;maxlinelength=22;lineprefix="&<skill.dialoguecolor|3>";message="&<skill.dialoguecolor|3> <skill.dialogue|no dialogue set!>";chatprefix=&<skill.namecolor|b><caster.name><&co> ;duration=80} @self
this breaks formatting bc it forwards <&sp> and other escaped chars as raw output
testdialogue:
Skills:
- skill:npcspeak{dialogue="ree with spaces and your parent's used car"} @self
npcspeak:
Skills:
- speak{offset=0.6f;radius=200;maxlinelength=22;lineprefix="&<skill.dialoguecolor|3>";message="&<skill.dialoguecolor|3> <skill.dialogue|no dialogue set!>";chatprefix=&<skill.namecolor|b><caster.name><&co> ;duration=80} @self
Intended correct behavior
when using double quotes on mechanics such as message, json, title, etc for skill parameters, it should correctly format the message.
testdialogue:
Skills:
- skill:npcspeak{dialogue="ree with spaces and your parent's used car"} @self
npcspeak:
Skills:
- speak{offset=0.6f;radius=200;maxlinelength=22;lineprefix="&<skill.dialoguecolor|3>";message="&<skill.dialoguecolor|3> <skill.dialogue|no dialogue set!>";chatprefix=&<skill.namecolor|b><caster.name><&co> ;duration=80} @self
**Server log file**
N/A (Lumine Server)
**Debug log snippet**
N/A (Lumine Server)
**Proposed fixes**
an alternative could be to define a skill parameter as a string with an argument perhaps, to get this behavior. Similar to how you can define an "if null" value.