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.
Assignee Loading
Time tracking Loading