Page 1 of 1

Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 11:05 am
by ADCK
I had one of them epiphany thingamajigs, a kind of idea not for the game itself, but to simplify OXP making.

I was thinking of making some sort of program for creating simple plist's without all the hassle of coding plists. Specifically shipdata.plists.

What I had in mind is a program where you enter the stats of a ship into a GUI and it saves them to a specific plist, it would have to be fairly big to fit all the fields into it though. It could also be used to edit current plists of course, dunno if I could get it to read both languages used.

I haven't done any programming like that in years and wouldn't know where to start... But I think it could be done.

It would save OXP makers time worrying about things like errors cause of putting the wrong symbol in the wrong place, and possibly open up OXP making to more people, specifically those that don't know how to code and/or have no intention of learning.

So good/bad idea? Or not worth the effort? Or not even possible due to something obvious I'm overlooking?
Or worse has it already been done and I've been making plists the hard way all this time? :P
What do you think?

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 11:42 am
by Staer9
ADCK wrote:
What I had in mind is a program where you enter the stats of a ship into a GUI and it saves them to a specific plist, it would have to be fairly big to fit all the fields into it though. It could also be used to edit current plists of course, dunno if I could get it to read both languages used.
I had a similar idea once apon a time...
ADCK wrote:
So good/bad idea?
Oh yes, very good idea

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 12:24 pm
by Svengali
A good idea .-)

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 12:50 pm
by Disembodied
Might it even be possible to build in some suggested design parameters, based around the Cobra III? Nothing to actually prevent people designing what they want, but something that at least lets people see where their ship stands in relation to a baseline? Maybe even something that suggests a price?

Or even – if this idea is a goer – have some categories, e.g.

Light Fighter (using e.g. Mamba as baseline)
Heavy Fighter (Asp)
Light Trader (Moray)
Medium Trader (Cobra III)
Heavy Trader (Python)
Bulk Carrier (Anaconda)

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 1:30 pm
by DaddyHoggy
And Disembodied adds a flourish to what was already looking like a cracking idea.

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 2:25 pm
by Pluisje
ADCK wrote:
I was thinking of making some sort of program for creating simple plist's without all the hassle of coding plists. Specifically shipdata.plists.

What I had in mind is a program where you enter the stats of a ship into a GUI and it saves them to a specific plist, it would have to be fairly big to fit all the fields into it though. It could also be used to edit current plists of course, dunno if I could get it to read both languages used.
Have you considered a plist editor? Macs are shipped with one, and a quick google reveals windows version(s). Linux seems harder (for me) to find, but I can't imagine they are unavailable.

It still would require a complete shipdata.plist to start with. All 88 (!) possible ship key should be present, to be edited easily.

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 2:29 pm
by Smivs
Pluisje wrote:
It still would require a complete shipdata.plist to start with. All 88 (!) possible ship key should be present, to be edited easily.
I think this is the real problem with this otherwise good idea. It would be horribly complicated.
I think like most OXP-ers, I never write a plist from scratch, but rather adapt another, similar one - using it as a template. This does make the task fairly quick and simple.

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 3:24 pm
by Staer9
Pluisje wrote:
Have you considered a plist editor? Macs are shipped with one, and a quick google reveals windows version(s). Linux seems harder (for me) to find, but I can't imagine they are unavailable.
I tried one for windows and it was absolutely rubish, it wouldn't let me put in different values and even when the plist was perfectly fine it would say "parse failed" everytime I tried to save it. However this is not what I thought he meant because a plist editor is just a text editor that will only open files ending with .plist, a plist maker is (in my opinion) an aplication that shows changable values with an breif explanation of what it is, with an easily understandable layout that will create plist files, not edit them.

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 5:53 pm
by DaddyHoggy
Many years ago I built a GUI in Tcl/Tk, that had user selectable boxes filled with default values that when the user hit "Finished" created a text/token based config file for a combat model I used at University. It sounds like you want something similar.

Tcl/Tk works on Windows and Linux/Unix I don't know about Macs though...

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 8:31 pm
by Thargoid
You could also write something quite similar in something like M$ Excel (sorry, I'm shackled to Windoze). It would be quite easy to create shipdata.plist entries for single ships - the problem would come if you were trying to automagically create multi-ship plists without having to copy/paste/merge files together.

Re: Suggestion - Not for the game, but about utilities.

Posted: Mon Jun 06, 2011 8:40 pm
by Commander McLane
Staer9 wrote:
a plist maker is (in my opinion) an aplication that shows changable values with an breif explanation of what it is
It's not an application, but the "thing that shows changeable values with a brief explanation of what it is" exists forever. It is called "documentation" and is in the Elite Wiki (click HERE for shipdata.plist, and HERE for an index page of all things related to scripting). The game developers have made the effort to document and explain everything, so that OXP developers can use this documentation.

Sure, it's not as convenient as a magic writes-plists-all-by-itself application, but still it tells you everything you need to know about every possible key and its possible values. What more do you want, as far as explanation is concerned?

A plist editor comes in handy, too. Because it is not a simple text editor. A plist editor should give you a mask to manipulate keys and their values, without having to bother about the syntax, because the correct syntax is added by the editor all by itself. At least that's how plist editors on the Mac work. And it would of course be very good to have something similar on the other OS as well.

Re: Suggestion - Not for the game, but about utilities.

Posted: Tue Jun 07, 2011 7:45 am
by CommonSenseOTB
Commonsense idea ADCK! :)

Re: Suggestion - Not for the game, but about utilities.

Posted: Tue Jun 07, 2011 10:57 am
by Staer9
Commander McLane wrote:
It's not an application, but the "thing that shows changeable values with a brief explanation of what it is" exists forever. It is called "documentation" and is in the Elite Wiki (click HERE for shipdata.plist, and HERE for an index page of all things related to scripting). The game developers have made the effort to document and explain everything, so that OXP developers can use this documentation.
You do not seem to realise that I have made several oxp ships, all of which required me to look at the shipdata documentation. I was merely sugesting that if this "magic writes-plists-all-by-itself application" were to come to exsistance it would be good if it gave the casual player the ability to create ship config files easily without having to constantly look at the documentation.

Re: Suggestion - Not for the game, but about utilities.

Posted: Tue Jun 07, 2011 1:53 pm
by Commander McLane
Staer9 wrote:
Commander McLane wrote:
It's not an application, but the "thing that shows changeable values with a brief explanation of what it is" exists forever. It is called "documentation" and is in the Elite Wiki (click HERE for shipdata.plist, and HERE for an index page of all things related to scripting). The game developers have made the effort to document and explain everything, so that OXP developers can use this documentation.
You do not seem to realise that I have made several oxp ships, all of which required me to look at the shipdata documentation. I was merely sugesting that if this "magic writes-plists-all-by-itself application" were to come to exsistance it would be good if it gave the casual player the ability to create ship config files easily without having to constantly look at the documentation.
If someone feels up to writing the application, I'm fine with that. However, my guess is that these sort of someones don't just grow on trees. :wink: Therefore I don't expect it to actually happen.

And I do realize that you have made several OXP ships. I also realize that while in the process of doing so you asked a couple of questions here on the board, the answers to which could have easily been found in the documentation (for instance about subentity-positioning). So I indeed wasn't sure how extensively you have used it so far. I wasn't linking to offend you. :)

For any OXP writer there is simply no way around knowing and using the documentation. Take myself, for instance. I think I can claim to know a thing or two about OXPing. But I still have opened one browser window with more than a dozen tabs of the most important JS documentation pages, shipdata.plist, and the AI documentation all the time. One window for the boards, one window for the Elite Wiki, permanently. I guess other OXP creators have a similar setup.

So if you're into OXPing, that's what I'd advise you to do as well. I doubt, though, that there exist casual players who want to create ship config files, which limits the potential market for an application that would only be able to configure one of Oolite's many configurations. Oolite isn't about poking around in your ship's stats, at least not in my point of view.

Re: Suggestion - Not for the game, but about utilities.

Posted: Tue Jun 07, 2011 3:10 pm
by Thargoid
Commander McLane wrote:
For any OXP writer there is simply no way around knowing and using the documentation. Take myself, for instance. I think I can claim to know a thing or two about OXPing. But I still have opened one browser window with more than a dozen tabs of the most important JS documentation pages, shipdata.plist, and the AI documentation all the time. One window for the boards, one window for the Elite Wiki, permanently. I guess other OXP creators have a similar setup.
Yup, although perhaps not a dozen windows at a time. I tend to be a little more selective about what I'm doing at the time... ;)