Oolite Unable To Identify A Property List
Moderators: winston, another_commander
Re: Oolite Unable To Identify A Property List
For a player ship no, only one laser per view.
For an NPC ship, you need to define a sub-entity (with an identity, model etc) and give that the additional laser. You then set the sub-entity up linked to the main ship (via the sub-entities key, where at the moment you have the flashers only) and thus you end up with a ship with multiple lasers in a given direction.
It's not so easy to explain, so I'd recommend looking at an existing example of one to give you the idea. The classic one is the Weeviloid, which you should be able to find on the wiki. But there aer others (Aquatics and TCAT of mine I think both have examples, although those are in openStep rather than XML as I find it much easier as it's more readable and you don't need to worry about so many tag pairs).
For an NPC ship, you need to define a sub-entity (with an identity, model etc) and give that the additional laser. You then set the sub-entity up linked to the main ship (via the sub-entities key, where at the moment you have the flashers only) and thus you end up with a ship with multiple lasers in a given direction.
It's not so easy to explain, so I'd recommend looking at an existing example of one to give you the idea. The classic one is the Weeviloid, which you should be able to find on the wiki. But there aer others (Aquatics and TCAT of mine I think both have examples, although those are in openStep rather than XML as I find it much easier as it's more readable and you don't need to worry about so many tag pairs).
My OXPs via Boxspace or from my Wiki pages .
Thargoid TV
Dropbox Referral Link
Thargoid TV
Dropbox Referral Link
- Mauiby de Fug
- ---- E L I T E ----
- Posts: 847
- Joined: Tue Sep 07, 2010 2:23 pm
Re: Oolite Unable To Identify A Property List
Yeah, the problem I have with xml is that it can be somewhat awkward to read, and can be somewhat prone to syntax errors. I was under the impression that <true/> was an error to begin with, but as you can see I realised that it wasn't in the edit when I found the actual cause of that error. Using the converter is much the same as the other python things that we've been using, namely the console and the Obj2DatTex script. What you need to do is download the script, (presumably you've already done that) and make sure it is in the same folder as the xml file you want to convert. Then, with the standard terminal,
As Svengali says, try and get the rest of the model up and running before we look at extra lasers on subentities, although once you're ready to do that, I'd probably recommend looking at some of Killer Wolf's Vampire ships to see how to do it.
Don't worry, once you've got to grips with it all and finished this, it'll be much easier next time!
cd
into that folder, and run python xml2ns.py NameOfXmlToConvert.plist
If all is successful, you will end up with a new file in the folder called NameOfXmlToConvert.plist-ns, which you then have to rename. Of course, if there are syntax errors in the xml plist, it won't work properly. Which is why I tried converting, reasoning that I could then work out where the syntax errors where, and then would have a slightly more readable plist to try and work out what other problems there might be. Which Svengali seems to have done already!As Svengali says, try and get the rest of the model up and running before we look at extra lasers on subentities, although once you're ready to do that, I'd probably recommend looking at some of Killer Wolf's Vampire ships to see how to do it.
Don't worry, once you've got to grips with it all and finished this, it'll be much easier next time!
Re: Oolite Unable To Identify A Property List
Yes, definitely. I'm sorry if I sounded ungrateful. Thanks for all the excellent help.Svengali wrote:Good job Ironfist and Mauiby.
Thanks for those catches. I'll change, and try to note them for future reference. I have a descriptions.plist. It isn't much, but:Svengali wrote:Some finetuning...
shipyard.plist:
- "EQ_HYPERSPACE_MOTOR" is no Oolite EQ. It may be used in an OXP though.
shipdata.plist:
- has_fuel_injector should be has_fuel_injection.
- The color values in laser_color. Use "whiteColor" instead (upperCase C).
- Delete the hud = default or set a valid value like hud.plist.
- NPCs don't need view_position_x.
- max_cargo is a integer. It's not a bug, but makes things more clear.
- If SunBat-plea is not defined in descriptions.plist remove it from death_actions.
- Spawning explosive_shrapnel via death_actions may fail as it is a external dependency.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SunBat-plea</key>
<array>
<string>Stick it in your ear, Bozo!</string>
<string>Frack!</string>
</array>
</dict>
</plist>
[quote="Svengali"You could use subentities for the left/right lasers, but I'd think before going this way it's better to fix the mentioned problems to avoid trouble .-)[/quote}
That is something I would not enjoy doing, after the work I put into it.
Once again, thank you for your advice. I didn't understand that wingman needed that scan_class. Need to read the HowTo Wiki again....for the millionth time. I guess 100 for bounty IS a bit excessive.Svengali wrote:Last but not least please take a look at the used roles. wingman needs scan_class = "CLASS_POLICE", so use a extra entry for it. And a hunter with bounty = 100 is probably not such a good idea.
Thargoid, I'll check out those ships you mentioned. I would really hate to get rid of the extra lasers, as I put a lot of work into making them. I suppose that's par for the course, though. Thanks a bunch, guys, I'll try running this after the corrections and see what happens.
So when using python, it's the same line for any kind of conversion from one format, to another? If that's so, life has become a bit easier."Mauiby de Fug" wrote:Yeah, the problem I have with xml is that it can be somewhat awkward to read, and can be somewhat prone to syntax errors. I was under the impression that <true/> was an error to begin with, but as you can see I realised that it wasn't in the edit when I found the actual cause of that error. Using the converter is much the same as the other python things that we've been using, namely the console and the Obj2DatTex script. What you need to do is download the script, (presumably you've already done that) and make sure it is in the same folder as the xml file you want to convert. Then, with the standard terminal, cd into that folder, and run python xml2ns.py NameOfXmlToConvert.plist If all is successful, you will end up with a new file in the folder called NameOfXmlToConvert.plist-ns, which you then have to rename. Of course, if there are syntax errors in the xml plist, it won't work properly. Which is why I tried converting, reasoning that I could then work out where the syntax errors where, and then would have a slightly more readable plist to try and work out what other problems there might be. Which Svengali seems to have done already!
As Svengali says, try and get the rest of the model up and running before we look at extra lasers on subentities, although once you're ready to do that, I'd probably recommend looking at some of Killer Wolf's Vampire ships to see how to do it.
Don't worry, once you've got to grips with it all and finished this, it'll be much easier next time!
- Mauiby de Fug
- ---- E L I T E ----
- Posts: 847
- Joined: Tue Sep 07, 2010 2:23 pm
Re: Oolite Unable To Identify A Property List
Well, for the particular scripts you've using, it is, so you don't have to remember too many different things! Themandoman wrote:So when using python, it's the same line for any kind of conversion from one format, to another? If that's so, life has become a bit easier.
python
says what to open the file with, the xml2ns.py
is the file you're running, and the whatever.plist
is the command line argument that you are passing to the script. If you wanted to simply open the script and have a look at it in a text editor, you could use gedit xml2ns.py
Does that help explain the format?Re: Oolite Unable To Identify A Property List
Yes, and I find that I don't have xml2ns.py. I've been Googling it, and looking around the Oolite Wikis, but haven't stumbled upon it yet. I thought I was good at web searching, but getting scripts, and such for Oolite seem to be a challenge for me. I sure appreciate your help. I can't even express how much, as I feel like I'm running through a pitch dark room, sometimes, with oxp making.Mauiby de Fug wrote:Well, for the particular scripts you've using, it is, so you don't have to remember too many different things! Themandoman wrote:So when using python, it's the same line for any kind of conversion from one format, to another? If that's so, life has become a bit easier.python
says what to open the file with, thexml2ns.py
is the file you're running, and thewhatever.plist
is the command line argument that you are passing to the script. If you wanted to simply open the script and have a look at it in a text editor, you could usegedit xml2ns.py
Does that help explain the format?
- Eric Walch
- Slightly Grand Rear Admiral
- Posts: 5536
- Joined: Sat Jun 16, 2007 3:48 pm
- Location: Netherlands
Re: Oolite Unable To Identify A Property List
Yes, that python script by Cdr. Jettison is very useful in converting XML to open step. Actually the conversion itself is a new feature in python 2.6. Just remember that comment in the script also generates errors. It must be an oversight in python's conversion code. When you were looking for the conversion script, look at the bottom of the [wiki]Property_list[/wiki] page.
And when in doubt of using INTEGER, REAL or STRING, just use STRING. That is because Oolite must already know what types to expect. In open step everything are strings and on reading any string values in, Oolite will convert them to the proper type.
And when in doubt of using INTEGER, REAL or STRING, just use STRING. That is because Oolite must already know what types to expect. In open step everything are strings and on reading any string values in, Oolite will convert them to the proper type.
UPS-Courier & DeepSpacePirates & others at the box and some older versions
Re: Oolite Unable To Identify A Property List
Mandoman,
I think the problem with the shipyard.plist file is that in 2 places you have </STRING> the program is sensitive to the case of things so </STRING> is not allowed and needs to be changed to </string>.
You will equally need to be careful of file names under windows FRED.txt and fred.txt are the same but under Linux and Mac and Oolite they are not.
Ironfist
I think the problem with the shipyard.plist file is that in 2 places you have </STRING> the program is sensitive to the case of things so </STRING> is not allowed and needs to be changed to </string>.
You will equally need to be careful of file names under windows FRED.txt and fred.txt are the same but under Linux and Mac and Oolite they are not.
Ironfist
64bit Mint 10 and Win 8 64bit on E8400 at 3.6GHz - ATI HD5750 graphics.
Concentration is the ability to think of absolutely nothing when it is absolutely necessary.
Concentration is the ability to think of absolutely nothing when it is absolutely necessary.
Re: Oolite Unable To Identify A Property List
Thank you for that lead. I was thinking I was going to need to sort through the whole Python xml2lib to find it. What a relief.Eric Walch wrote:Yes, that python script by Cdr. Jettison is very useful in converting XML to open step. Actually the conversion itself is a new feature in python 2.6. Just remember that comment in the script also generates errors. It must be an oversight in python's conversion code. When you were looking for the conversion script, look at the bottom of the [wiki]Property_list[/wiki] page.
And when in doubt of using INTEGER, REAL or STRING, just use STRING. That is because Oolite must already know what types to expect. In open step everything are strings and on reading any string values in, Oolite will convert them to the proper type.
Understood.....now.Ironfist wrote:Mandoman,
I think the problem with the shipyard.plist file is that in 2 places you have </STRING> the program is sensitive to the case of things so </STRING> is not allowed and needs to be changed to </string>.
You will equally need to be careful of file names under windows FRED.txt and fred.txt are the same but under Linux and Mac and Oolite they are not.
Ironfist
I do believe I'm leaving the xml scripting alone, and go with ns. I'm about to test the SunBat.oxp again, so wish me luck.
Re: Oolite Unable To Identify A Property List
OK, I have succeeded in that Oolite now recognizes the SunBat as a property, and therefore it appears in the twirling picture thing after the "Y" is chosen to select an existing commander. It looks beautiful. Awe, if it would only come out in game mode that way. First, all of the perspectives were screwed up really badly. I went back into Blender and found that the whole ship model was out of perspective. When I clicked on "View-Bottom", it showed the top. When I clicked "View-Front", it showed a side. Soooooo, I started flipping and turning the dang thing until I had it facing the right direction, the bottom facing down, the top facing up, and the aft to the back. One problem still, when I click on "View-Right", it shows the left side, and "View-Left" shows the right side. So, I have the front, back, top, and bottom aligned correctly, but the sides are incorrect. Anyone have any idea how I keep all the other angles correct, and change the alignment so the sides are also correct? Do the sides really matter which is which, as long as the other four perspectives are right?
Another thing. When getting view positions, I take it that the positions are based on looking away from the ship, as if looking out of the canopy to the front, back, and sides. How far away from the ship model should I put the view position for the external views, in at/toward the ship?
I had to dump the extra gun placements, because they were keeping the oxp from parsing in the game. That really sucks, because it not only looks cool with the two guns in front, and in back (which showed up beautifully in the twirling model), the fire power would be double.
Oh, and another thing. When I opened up the ship to the game, and went to the property list, it had totally ignored what I had in the shipyard.plist as to what should come standard with the ship. Does anyone know why? Back to the board.
Another thing. When getting view positions, I take it that the positions are based on looking away from the ship, as if looking out of the canopy to the front, back, and sides. How far away from the ship model should I put the view position for the external views, in at/toward the ship?
I had to dump the extra gun placements, because they were keeping the oxp from parsing in the game. That really sucks, because it not only looks cool with the two guns in front, and in back (which showed up beautifully in the twirling model), the fire power would be double.
Oh, and another thing. When I opened up the ship to the game, and went to the property list, it had totally ignored what I had in the shipyard.plist as to what should come standard with the ship. Does anyone know why? Back to the board.
Re: Oolite Unable To Identify A Property List
The SunBat orientation is really screwy. I have tried different settings in Blender to find the correct X, Y, Zs, but it always comes out out of sync. For instance, in the game while I'm actually flying the ship, when I start panning through external views with the "V" key, this is the way it comes out:
Name On The Screen Actual
Aft View Left Side View
Aft Left View Aft Right View
Right Side View Aft View
Front Right View Aft Right View
Front View Right Side View
Front Left View Front Right View
Left Side View Front View
Aft Left View Front Left View
Top View Top View With Ship Pointed To Left Side Of Screen
Bottom View Bottom View With Ship Pointed To The Right Side Of Screen
The exhaust plume isn't even coming form the exhaust points on the ship, and when viewed from the different angles listed above, can be pointing any where but where it should point.
What puzzles me the most is that in Blender the ship is coming out in the right views now, after I adjusted it's orientation, except for the left, and right side views. If anyone has any suggestions, I'm very receptive at all times.
Name On The Screen Actual
Aft View Left Side View
Aft Left View Aft Right View
Right Side View Aft View
Front Right View Aft Right View
Front View Right Side View
Front Left View Front Right View
Left Side View Front View
Aft Left View Front Left View
Top View Top View With Ship Pointed To Left Side Of Screen
Bottom View Bottom View With Ship Pointed To The Right Side Of Screen
The exhaust plume isn't even coming form the exhaust points on the ship, and when viewed from the different angles listed above, can be pointing any where but where it should point.
What puzzles me the most is that in Blender the ship is coming out in the right views now, after I adjusted it's orientation, except for the left, and right side views. If anyone has any suggestions, I'm very receptive at all times.
Re: Oolite Unable To Identify A Property List
Fixed it......almost. I got everything but the exhaust plumes worked out. It is a really great feeling to get this far. Heck, I'm probably talking to myself, but it's 1:15 AM, and I don't care, LOL!!!
Now to get the exhaust plumes right. They appear to be upside down, so I'll have to study that a bit. They say if you talk to yourself, and then answer yourself, that you may be insane. He, he, he.....
Now to get the exhaust plumes right. They appear to be upside down, so I'll have to study that a bit. They say if you talk to yourself, and then answer yourself, that you may be insane. He, he, he.....
- Killer Wolf
- ---- E L I T E ----
- Posts: 2279
- Joined: Tue Jan 02, 2007 12:38 pm
Re: Oolite Unable To Identify A Property List
re orientation :
- Have you ensured the ship is correctly aligned in your modeller before you exported it? I usually just model away then when the ship's finished i pick a front view option in the modeller and rotate the ship until i'm looking at the front, then i go to a side and then a top view, moving the model so that the origin ends up in the approximate centre of the ship.
if you've done all that already, then it's just the numbers in the views that you need tweaking. That, or change the view names so they match what you're seeing!
given the fact the Left view = front of ship, Aft = left of ship etc though, it seems that the model needs rotating 90 degrees before you export it.
- Have you ensured the ship is correctly aligned in your modeller before you exported it? I usually just model away then when the ship's finished i pick a front view option in the modeller and rotate the ship until i'm looking at the front, then i go to a side and then a top view, moving the model so that the origin ends up in the approximate centre of the ship.
if you've done all that already, then it's just the numbers in the views that you need tweaking. That, or change the view names so they match what you're seeing!
given the fact the Left view = front of ship, Aft = left of ship etc though, it seems that the model needs rotating 90 degrees before you export it.
Re: Oolite Unable To Identify A Property List
Yeah, I kind of figured that out the hard way. I went back into blender, realigned the model, and got the coordinates for the exhaust, lasers, view, etc.. The thing I didn't think of until about midnight last night, was the first .dat file I had in the oxp was still reflecting the old measurements, so the ship remained screwed up on the game. When I finally figured it out, I dumped the old .dat file, re-exported the corrected model, and re-converted that .obj file to a new .dat, that reflected the corrected settings. It worked. The SunBat now appears correctly in the game, except for the exhaust plumes. I swear that they are just upside down to what they should be, which makes the two side plumes above the ship way too high, and the center plume slightly elevated above where it should be. I think it was you that said you usually had to play with those settings to tweek them into place. Not sure how to do it, but things are sure looking better otherwise. The ship flies beautifully, and the white laser is stunning. I would still very much like to get all four lasers (two up front, and two at the back) working. Man, what a sight that would be.Killer Wolf wrote:re orientation :
- Have you ensured the ship is correctly aligned in your modeller before you exported it? I usually just model away then when the ship's finished i pick a front view option in the modeller and rotate the ship until i'm looking at the front, then i go to a side and then a top view, moving the model so that the origin ends up in the approximate centre of the ship.
if you've done all that already, then it's just the numbers in the views that you need tweaking. That, or change the view names so they match what you're seeing!
given the fact the Left view = front of ship, Aft = left of ship etc though, it seems that the model needs rotating 90 degrees before you export it.
- Killer Wolf
- ---- E L I T E ----
- Posts: 2279
- Joined: Tue Jan 02, 2007 12:38 pm
Re: Oolite Unable To Identify A Property List
yeah, i often find i have to adjust an X, Y or Z (or several!) by 1 or less repeatedly to nudge something into a good position, due to the fact the modellers i use are way off the same size units Oolite uses. it's a hassle, but worth it when you finally see your ship in game
putting the extra lasers in is just a matter of sticking a couple of tiny subents in place, as i mentioned elsewhere. Personally though, in trying to keep to "realism", i would be concerned about your comment about the wings being so thin - i would take the stance that if they're that thin they couldn't have laser equipment fitted in them. but, it's your ship so make something that you like
putting the extra lasers in is just a matter of sticking a couple of tiny subents in place, as i mentioned elsewhere. Personally though, in trying to keep to "realism", i would be concerned about your comment about the wings being so thin - i would take the stance that if they're that thin they couldn't have laser equipment fitted in them. but, it's your ship so make something that you like
Re: Oolite Unable To Identify A Property List
Another part of the problem was also due to ship orientation. I mean after I got front, aft, bottom, top, port,starboard worked out. The ship was hanging above the grid, and from what I can tell, Oolite goes by center grid alignment in every direction. So, I had to lower the model in Blender so it is now hanging half above, and half below the grid. I think I got it centered, or really, really close to it. Another discovery I made is that X, Y, Z in Oolite does NOT correspond to the same coordinates in Blender. The translation is Oolite X = Blender Y, Oolite Y = Blender Z, and Oolite Z = Blender X. It took me a while to understand that. I noticed it when I brought up an Oolite ship orientation picture chart of a ship as it would appear in Oolite. The X, Y, and Z points were defined clearly with arrows. When I compared the two, just by the chance of needing to try something that might help me with the alignment mess. I knew I was still off in some way, not only due to the way out of place exhaust plumes, but when I fired a missile it came from above my cockpit view, which is just the opposite of where I understand it should. Lowering the ship on the grid, and re-figuring ALL of the X, Y, Z measurements corrected everything but the exhaust plume. The exhaust DID get closer to where it belongs, though. Now it's over to the side of where it should be, and still a little high. I can see that it's going to be the pain in the ass in this project, but something has to be.Killer Wolf wrote:yeah, i often find i have to adjust an X, Y or Z (or several!) by 1 or less repeatedly to nudge something into a good position, due to the fact the modellers i use are way off the same size units Oolite uses. it's a hassle, but worth it when you finally see your ship in game
putting the extra lasers in is just a matter of sticking a couple of tiny subents in place, as i mentioned elsewhere. Personally though, in trying to keep to "realism", i would be concerned about your comment about the wings being so thin - i would take the stance that if they're that thin they couldn't have laser equipment fitted in them. but, it's your ship so make something that you like
Oh, I didn't mount the lasers in the wings. That was someone elses idea, which I noticed wouldn't work without radically changing the wing tips, so I put lasers to each side of the cockpit, and slightly below. Here is a pic of the front:
http://img600.imageshack.us/img600/7099 ... lasers.png
The two rear lasers are on the outer side of the two side exhaust points, about half way between the exhaust and the aft wing tips.