This will not work.
Function.Call(Hash._UIPROMPT_SET_TEXT, prompt, Function.Call<string>(Hash._CREATE_VAR_STRING, 10, "LITERAL_STRING", t_text));
because using that native is literally no different than just passing the string it self.
Function.Call(Hash._UIPROMPT_SET_TEXT, prompt, t_text);
_UIPROMPT_SET_TEXT is looking for a valid text label.
Which is the reason why this will work.
string t_text = "WARDROBE_INSPECT_PROMPT";
Function.Call(Hash._UIPROMPT_SET_TEXT, prompt, Function.Call<string>(Hash._CREATE_VAR_STRING, 10, "LITERAL_STRING", t_text));
But this will not work
string t_text = "My Custom String";
Function.Call(Hash._UIPROMPT_SET_TEXT, prompt, Function.Call<string>(Hash._CREATE_VAR_STRING, 10, "LITERAL_STRING", t_text));
If you are going to pass a literal string, Then you must make sure that the literal string matches a valid text label.