[Discussion] Rebirth Tools
Moderators: Moderators for English X Forum, Scripting / Modding Moderators
-
- Moderator (Deutsch)
- Posts: 24970
- Joined: Sun, 2. Apr 06, 16:38
Actually, people did create missions in X3TC and X3AP quite successfully with the Mission Director (all plot and generic missions were created with the MD).RedEclipse wrote:Yes, but people you know won't do X3 complicated mods like mission or ai.
Right, it's basically like an IDE for a programming language.RedEclipse wrote:VWD stands for Visual Web Developer, rigth ?
If it's not working out for you, and you still want to have an own program, I suggest to get in contact with mr.bear. He created the X-Studio (external) Script Editor for the previous X-games and was lately also working on a version supporting MD files. See this post.
Closing the Cat tool with "Exit" button in the bottom left corner works fine for me. Could you please elaborate what you are doing?ICO_hr wrote:When i start XRCatToolGUI.exe it stays forever in my Task Manager and i cant kill it.
Nun verfügbar! X3: Farnham's Legacy - Ein neues Kapitel für einen alten Favoriten
Die komplette X-Roman-Reihe jetzt als Kindle E-Books! (Farnhams Legende, Nopileos, X3: Yoshiko, X3: Hüter der Tore, X3: Wächter der Erde)
Neuauflage der fünf X-Romane als Taschenbuch
The official X-novels Farnham's Legend, Nopileos, X3: Yoshiko as Kindle e-books!
Die komplette X-Roman-Reihe jetzt als Kindle E-Books! (Farnhams Legende, Nopileos, X3: Yoshiko, X3: Hüter der Tore, X3: Wächter der Erde)
Neuauflage der fünf X-Romane als Taschenbuch
The official X-novels Farnham's Legend, Nopileos, X3: Yoshiko as Kindle e-books!
-
- EGOSOFT
- Posts: 11884
- Joined: Fri, 21. May 04, 17:15
-
- Posts: 1269
- Joined: Sat, 11. Sep 04, 16:43
Ok ok, but XML is not a programming language...X2-Illuminatus wrote:Right, it's basically like an IDE for a programming language.RedEclipse wrote:VWD stands for Visual Web Developer, rigth ?
My main tool for my irl work is Visual Studio 2010, 2012, whatever. I'm a C# web/non web dev.
My interface is somehow ready, now the real task is the translation engine... Will speak with Bear soon, like I did in the past, thx.X2-Illuminatus wrote:If it's not working out for you, and you still want to have an own program, I suggest to get in contact with mr.bear. He created the X-Studio (external) Script Editor for the previous X-games and was lately also working on a version supporting MD files. See this post.
"AaaAaaAah ! They're everywhere...", Jane Doe, Freedom Force.
-
- Posts: 1002
- Joined: Fri, 13. Jan 12, 19:09
MD is not an imperative language (it's a declarative one. A bit weird, but ok), so making it a lot like C-alike will create a lot confusion (broken expectations). On the other hand, of course, XML has a lot of obstruction which makes it hard to read (such as 'comment=""' instead of any simple '//').
Problem is that XML is a some kind of compromise between being human-readable and machine-parsable - that's why it sucks, because it's hardly readable AND very expensive to parse anyway. So it's generally wiser to create a DSL and a compiler into simple bytecode instead, if performance is that you care for.
But there comes another problem - XML has this powerful XDT thing which allows you to specify exact types, ranges, values and everything like that. A whole syntax, actually, so any xdt-compatible editor will be able to provide most-of-what-you-expect from IDE services for your "language" almost free. And in case of your homebrew DSL that won't be so easy.
So eventually you are facing the only choice - either you are using one of the well established languages (read: Lua) or you are using XML. Unless you have tons of money you want to spend on writing your own scripting tools, of course.
P.S. Have you tried to use any generic XSL or xml-to-text translator? After all, all changes you need to make are rather trivial (remove extensive "<" and ">", replacing tags with curly braces, replace comment="" with //, etc) - a simple LR1 capable tool should do it.
Problem is that XML is a some kind of compromise between being human-readable and machine-parsable - that's why it sucks, because it's hardly readable AND very expensive to parse anyway. So it's generally wiser to create a DSL and a compiler into simple bytecode instead, if performance is that you care for.
But there comes another problem - XML has this powerful XDT thing which allows you to specify exact types, ranges, values and everything like that. A whole syntax, actually, so any xdt-compatible editor will be able to provide most-of-what-you-expect from IDE services for your "language" almost free. And in case of your homebrew DSL that won't be so easy.
So eventually you are facing the only choice - either you are using one of the well established languages (read: Lua) or you are using XML. Unless you have tons of money you want to spend on writing your own scripting tools, of course.
P.S. Have you tried to use any generic XSL or xml-to-text translator? After all, all changes you need to make are rather trivial (remove extensive "<" and ">", replacing tags with curly braces, replace comment="" with //, etc) - a simple LR1 capable tool should do it.
-
- Moderator (Script&Mod)
- Posts: 14571
- Joined: Sun, 20. Nov 05, 22:45
isnt this just a homebrew solution by Egosoft? iirc officially XML comments are in <!-- comment --> (which i prefer)Night Nord wrote:On the other hand, of course, XML has a lot of obstruction which makes it hard to read (such as 'comment=""' instead of any simple '//').
if not stated otherwise everything i post is licensed under WTFPL
Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter
I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help
Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter
I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help
-
- Posts: 1269
- Joined: Sat, 11. Sep 04, 16:43
@Nigth North
Declarative or not, I don't see the problem. You are very declarative with C/C++/C#/Java aswell but in the Main.
MD more makes me thinks about describing a state machine. If so, let's use VHDL then ? Here's an Hello World:
No way !
I used C/C++ to describe them in my studies ten years ago, there no real problems (but the Switch(true) instruction that I used in Cobol, which is by its only existence saves the Cobol from being crap - this and number handling tbh because floating point op sucks big times if you want my opinion - ).
For exemple <cues> is a Switch(true) then differents cases are cues but there you can put tests in the case (like you do in cobol with an EVALUATE TRUE).
I don't really think loading a save in Rebirth is just reading and parsing xml, if you see what I mean
I think all xml are parsed then compiled and your savefile is used for inputs. That's why loading a save is so long and you can't desactivate a mod ingame, especially those not using savefile...
That a difference with previous X : if I remember, you could ON/OFF mods with a simple save reload in previous, now you can't because the starting points of mod are outside the main engine (content.xml).
As for LR1, one problem at a time. Currently my problem is RT translation design / language gramar design, not syntax analysis yet.
I'm not an expert at this because initially I'm not a real informatician, but I've got a few oldschool tricks in my hat
My exp is :
5 years with Locomotive Basic (Amstrad CPC >>> C64 because Batman, period )
4 years with C
3 years with C++
5 years with Cobol
6 monthes using Java
1.5 years with C# (web)
And lately winforms
I studied electronics, not informatics
Declarative or not, I don't see the problem. You are very declarative with C/C++/C#/Java aswell but in the Main.
MD more makes me thinks about describing a state machine. If so, let's use VHDL then ? Here's an Hello World:
Code: Select all
use std.textio.all;
entity Hello is
end Hello;
architecture Hello_Arch of Hello is
begin
p : process
variable l:line;
begin
write(l, String'("Hello, world!"));
writeline(output, l);
wait;
end process;
end Hello_Arch;
I used C/C++ to describe them in my studies ten years ago, there no real problems (but the Switch(true) instruction that I used in Cobol, which is by its only existence saves the Cobol from being crap - this and number handling tbh because floating point op sucks big times if you want my opinion - ).
For exemple <cues> is a Switch(true) then differents cases are cues but there you can put tests in the case (like you do in cobol with an EVALUATE TRUE).
I don't really think loading a save in Rebirth is just reading and parsing xml, if you see what I mean
I think all xml are parsed then compiled and your savefile is used for inputs. That's why loading a save is so long and you can't desactivate a mod ingame, especially those not using savefile...
That a difference with previous X : if I remember, you could ON/OFF mods with a simple save reload in previous, now you can't because the starting points of mod are outside the main engine (content.xml).
As for LR1, one problem at a time. Currently my problem is RT translation design / language gramar design, not syntax analysis yet.
I'm not an expert at this because initially I'm not a real informatician, but I've got a few oldschool tricks in my hat
My exp is :
5 years with Locomotive Basic (Amstrad CPC >>> C64 because Batman, period )
4 years with C
3 years with C++
5 years with Cobol
6 monthes using Java
1.5 years with C# (web)
And lately winforms
I studied electronics, not informatics
Last edited by RedEclipse on Thu, 27. Feb 14, 20:24, edited 2 times in total.
"AaaAaaAah ! They're everywhere...", Jane Doe, Freedom Force.
-
- EGOSOFT
- Posts: 11884
- Joined: Fri, 21. May 04, 17:15
Not to be a drag but here my 0.02€ in a more straight forward fashion. I could not give a rats bastu which language is more or less readable, both are bad until I learn them (true for most languages anyway). Having been around MD for years now, the xml based coding is the way to go as I'm not going to spent time learning things new just so it looks different. I'd use that time and create content with what we have.
Now from a new user point of view a tool that would benefit people with little patience to wrap their heads around code, would have be in the drag&drop category. Like building blocks, think Mr Bear mentioned this way back. This would make sense to create imo as it clearly would make things more accessible. Creating a tool that does nothing other than rearrange things is imo a waist of time, there are not THAT many programmers codding anyway, so doubt most MD coders would be bothered either way.
Again not trying to discourage anyone here, just giving the feedback from those potentially using it. Fell free to ignore and do what you like.
MFG
Ketraar
Now from a new user point of view a tool that would benefit people with little patience to wrap their heads around code, would have be in the drag&drop category. Like building blocks, think Mr Bear mentioned this way back. This would make sense to create imo as it clearly would make things more accessible. Creating a tool that does nothing other than rearrange things is imo a waist of time, there are not THAT many programmers codding anyway, so doubt most MD coders would be bothered either way.
Again not trying to discourage anyone here, just giving the feedback from those potentially using it. Fell free to ignore and do what you like.
MFG
Ketraar
-
- Posts: 1269
- Joined: Sat, 11. Sep 04, 16:43
"Do a barrel roll".
Drag'n drop where, who, when, for what, etc.
Drag'n drop to do what ?
If you are speaking about the game interface, then ES should release to the lua boys the damned keys to reverse ing. that, please re-read Night Nord on top of page 2, he's got valid questions that could use a reply.
Drag and drop can be learned in a day anyway, when you have access to the mouse handling methods (in C# it was even half a day for me since an interface exists for that), so I'm sorry if people are lazy here and there...
The only real challenge is to make it clean enought for the game industry.
Modders can't do drag'n drop ingame because they :
a - don't have access to input methods (and they can't fix the deadzone aswell), all of inputs from DirectX calls is in lua (searched for that and found joysticks calls so it was a strong clue for me to stop searching for a deadzone variable within the xmls).
b - don't have access to lua menu designing anyway so without an adaptated menu nothing can be done.
c - don't have any documentation on the lua part, including on previous X, where this job could have been done aswell.
atm, the problem is not from the modder side of the horse
For lua, if I remember good enough X2 times, you had to be L5 for that, signing stuff using snail mail etc.
Drag'n drop where, who, when, for what, etc.
Drag'n drop to do what ?
If you are speaking about the game interface, then ES should release to the lua boys the damned keys to reverse ing. that, please re-read Night Nord on top of page 2, he's got valid questions that could use a reply.
Drag and drop can be learned in a day anyway, when you have access to the mouse handling methods (in C# it was even half a day for me since an interface exists for that), so I'm sorry if people are lazy here and there...
The only real challenge is to make it clean enought for the game industry.
Modders can't do drag'n drop ingame because they :
a - don't have access to input methods (and they can't fix the deadzone aswell), all of inputs from DirectX calls is in lua (searched for that and found joysticks calls so it was a strong clue for me to stop searching for a deadzone variable within the xmls).
b - don't have access to lua menu designing anyway so without an adaptated menu nothing can be done.
c - don't have any documentation on the lua part, including on previous X, where this job could have been done aswell.
atm, the problem is not from the modder side of the horse
For lua, if I remember good enough X2 times, you had to be L5 for that, signing stuff using snail mail etc.
"AaaAaaAah ! They're everywhere...", Jane Doe, Freedom Force.
-
- Posts: 28
- Joined: Wed, 26. Jul 06, 18:52
+1RedEclipse wrote:"Do a barrel roll".
Modders can't do drag'n drop ingame because they :
a - don't have access to input methods (and they can't fix the deadzone aswell), all of inputs from DirectX calls is in lua (searched for that and found joysticks calls so it was a strong clue for me to stop searching for a deadzone variable within the xmls).
b - don't have access to lua menu designing anyway so without an adaptated menu nothing can be done.
c - don't have any documentation on the lua part, including on previous X, where this job could have been done aswell.
atm, the problem is not from the modder side of the horse
I keep dreaming about an all new custom UI. You know like WoW where we can customize absolutely every bit of the interface !
-
- EGOSOFT
- Posts: 11884
- Joined: Fri, 21. May 04, 17:15
-
- Posts: 28
- Joined: Wed, 26. Jul 06, 18:52
Why would it only be about MD stuff ? I personally don't really care about that. MD is xml and there is already a boatload of XML editors/IDE out there.Ketraar wrote:Clearly the Discussion was about the MD Tool no? Where did I mention "ingame"?
MFG
Ketraar
I want tools/documentation/api that allow me to change what is not possible right now => UI
-
- Moderator (Deutsch)
- Posts: 24970
- Joined: Sun, 2. Apr 06, 16:38
You obviously talk past each other here. The initial discussion between Ketraar and RedEclipse was clearly about an MD tool (i.e. to help with writing MD code from a programmers point of view, who is used to existing programming languages). Ketraar stated, why he does not think that a new tool would make much sense. And he stated, what he would imagine a new tool for "people with little patience" to look like (cf. "drag and drop"). Then for some reason RedEclipse changed the discussion topic to the game interface and lua files.
Edit: typo.
Edit: typo.
Last edited by X2-Illuminatus on Fri, 28. Feb 14, 12:41, edited 1 time in total.
Nun verfügbar! X3: Farnham's Legacy - Ein neues Kapitel für einen alten Favoriten
Die komplette X-Roman-Reihe jetzt als Kindle E-Books! (Farnhams Legende, Nopileos, X3: Yoshiko, X3: Hüter der Tore, X3: Wächter der Erde)
Neuauflage der fünf X-Romane als Taschenbuch
The official X-novels Farnham's Legend, Nopileos, X3: Yoshiko as Kindle e-books!
Die komplette X-Roman-Reihe jetzt als Kindle E-Books! (Farnhams Legende, Nopileos, X3: Yoshiko, X3: Hüter der Tore, X3: Wächter der Erde)
Neuauflage der fünf X-Romane als Taschenbuch
The official X-novels Farnham's Legend, Nopileos, X3: Yoshiko as Kindle e-books!
-
- EGOSOFT
- Posts: 11884
- Joined: Fri, 21. May 04, 17:15
Wel I dont want anything, I'm rather happy with how things are now. What I did was to give opinion based on user experience and possible new user accessibility. As mentioned Mr Bear was the one with the idea of a MD GUI that would allow to create things block-wise, kinda like drag a "create ship" ship block and it would add all the needed code for it. This sounded like a really beneficial thing, special for new mission creators. No clue if possible at all, but as I said it would be the kind of thing worth doing, in contrast to a GUI that "just" rearranges things differently but would be pretty much the same thing in red.RedEclipse wrote:Okay, so what do you want ? Anything is possible on zombo.com
Well because the discussion at hand was about MD stuff? Not really sure why you get worked up, you can still want other things, no one stopping you.Why would it only be about MD stuff
MFG
Ketraar
EDIT: Ninja'd by X2, getting slow...Thanks X2 for clarifying it so much better.
-
- Posts: 1269
- Joined: Sat, 11. Sep 04, 16:43
Ok ok. It seems Mr Bear goes that direction so the best thing is to look after him. As I saw on his thread, I'm not sure to have the same project as his.
I'd rather work on this now instead of chating around
I'll "talk better" when I'll have something to present which is not the case and a quite long way (for me) from here.
I'd rather work on this now instead of chating around
I'll "talk better" when I'll have something to present which is not the case and a quite long way (for me) from here.
"AaaAaaAah ! They're everywhere...", Jane Doe, Freedom Force.
-
- Posts: 127
- Joined: Tue, 10. Feb 04, 02:08
Since Egosoft provided the XSDs any good XML editor should do for you.docwho83 wrote:Ok in the Mission guide it talks about using Visual web developer. Since it can be set to help by displaying all available tags and attributes.
Has anyone figure out a way to do the same with notepad++ or do I need to pull a copy of vwd?
http://en.wikipedia.org/wiki/Comparison_of_XML_editors
Make sure it says "YES" in the "Autocompletion (using schema.xsd for text)" column to get the benefit of the XSDs Egosoft provided.
Some text editors (like Notepad++) do completion by examining tags you've already used, not by using the XSD rules.
Also the XSD provides a lot more information than just tag names, for example which tags are allowed in which locations, and how many of them you're allowed to have there. What attributes are allowed, and if they need to be text or numbers etc. If you're going to be doing a lot of editing I'd recommend finding a proper XML editor.
-
- Posts: 374
- Joined: Sat, 2. Jan 10, 00:03
I must be missing something because I don't see how providing us with an extraction tool and MD manual is significant. We are already able to extract the game files and MD instructions exist. Granted the MD manual is nice, but these tools hardly seem worth much of a news flash.
Given the insignificance of this announcement (Rebirth tools), I'm wondering why Egosoft doesn't wait until they can give us something worthwhile (like mesh import/export and access to the UI coding)?
I'm also wondering if this is the extent of what we can expect any time soon? If so, it seems too little too late. Haven't we already lost most of the best modders with no hope of bringing them back?
Given the insignificance of this announcement (Rebirth tools), I'm wondering why Egosoft doesn't wait until they can give us something worthwhile (like mesh import/export and access to the UI coding)?
I'm also wondering if this is the extent of what we can expect any time soon? If so, it seems too little too late. Haven't we already lost most of the best modders with no hope of bringing them back?
A wise man once said...nothing. I'm not a wise man, so I speak my mind. You can't trust atoms because they make up everything.
-
- Posts: 28
- Joined: Wed, 26. Jul 06, 18:52
They just release a tool that already exists since day one.Ketraar wrote:Well because the discussion at hand was about MD stuff? Not really sure why you get worked up, you can still want other things, no one stopping you.Why would it only be about MD stuff
.
And it looks like everyone talks about MD which is something we don't need anything to work with.
So yes, I am kind of worked up because there still nothing new about modding.
We still can't work with the UI.
-
- Posts: 1269
- Joined: Sat, 11. Sep 04, 16:43