just want to state the obvious:
x3 SE scripting is MUCH BETTER (!!!) than scripting in an "xml-based laguage"
some might say, X3 SE is / was xml-based, but that's not what it looked like IN THE EDITOR, the "thing" that scripters use to script
replacing "the editor" with visual web developer, then you have X3 MD scripting (one of the most un-readable code on the X-planet)
replacing "the editor" with X3 SE, then you have the kind of scripting we all want: "readable", "procedual" code, you know what instructions take place immediaely (like void do_something(void); ), and what takes its time (@fly to sector xyz)
the point is:
it doesnt matter how the code will be represented (xml, binary, lua style, whatever), we want a tool to be able to code "conveniently"
that way, maybe lucike would come back, help egosoft to creating a better game ...
in my opinion, keep the xml-based stuff, but give us a tool which we can use to code "conveniently", that means without having to type:
Code: Select all
<action> do.something() >
<timing>0</timing>
</action>
<action> do.something().else() >
<timing>@#f*ck_ing_after.do.something()</timing>
</action>
Code: Select all
do.something ... arg1, arg2, ...
do.something.else ... arg1, arg2, ...
@do.something.timeconsuming: skipwaitinguntilcompleted=false... arg1, arg2, ...
-------------------------------------------------------
since this topic is about "UI and scripting" and X-games are "event-driven":
give us the possibility to structure our own "menu", no matter how, but most likely xml-based code to tell the engine:
---> open background rectangle x=... y=... width=... height=... color=0xFFAA00FF
Code: Select all
<label name="whatever">
<position x=... etc youknowwhat />
</label>
<button name"anotheruniquenme" callback="mycallbackfile.xml" />
a menu script could then look like:
Code: Select all
$menuhandle = open menu: name: "mycustommenu.xml"
if ($menuhandle)
@wait for menu: $menuhandle // makes this script wait until <menu_closed> event
end
//just respond here or handle the input in a callback script
-------------------------------------------------------
by the way:
editing while playing is IMPORANT, but doesnt have to be an ingame editor, but we want to be able to test the scripts immmediately while coding, <ALT> + <TAB> -ing quickly isnt a big problem, but having to restart / reload a game is kind of a problem (imho)