Join us at the Oolite Anniversary Party -- London, 7th July 2024, 1pm
More details in this thread.

Development: Arachnid SB

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: winston, another_commander

User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Development: Arachnid SB

Post by Simon B »

Image

Arachnid
Please find arachnid.oxp.tar.gz containing a moderately complete oxp for an impractical ship.

The idea is to create a ship which is flawed, but a must-have. It needs to be fun to fly - and work around the flaws.

Feedback wanted.
If anyone knows how to get the fwd laser starting on the hull without cutting the model up, do tell. Meantime I'm in the process of cutting the model and reworking the oxp. Final version out soon.

Currently working on - getting rid of panda-effect skin, reworking to NZ spider styles: Avondale, Katipo and Wolf.

Features:
Very fast, moderate maneuverability, low cargo, low thrust = long stopping distance, flimsy. Sports a highly textured HUD.

The oxp file includes wavefront files and a blank texture template so modify as you will.

All is licensed under GNU GPL v3 or later - sources in the "Sources" directory.
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Re: Development: Arachnid SB

Post by Commander McLane »

Simon B wrote:
If anyone knows how to get the fwd laser starting on the hull without cutting the model up, do tell.
The weapon_position_foo keys for shipdata.plist are broken since at least 1.70. As a result all laser exit points are currently at "0, 0, outermost z-value of your ship" (or "outermost x-value of your ship, 0, 0" for side lasers). So currently the only way is to model your ship in a way that its nose is exactly positioned at x=0 and y=0.

Or, of course, hope for a fix in 1.72.
User avatar
TGHC
---- E L I T E ----
---- E L I T E ----
Posts: 2157
Joined: Mon Jan 31, 2005 4:16 pm
Location: Berkshire, UK

Post by TGHC »

Have a thought for us poor aged non techies old chap, can this be extracted like an ordinary zip file, I really like the look of this ship.
The Grey Haired Commander has spoken!
OK so I'm a PC user - "you know whats scary? Out of billions of sperm I was the fastest"
User avatar
Gunney_Plym
Dangerous
Dangerous
Posts: 64
Joined: Wed Jun 25, 2008 12:22 pm
Location: Sol 3, mostly.

Post by Gunney_Plym »

The method I've used to produce off center firing points is to create a very small sub-entity and mount a laser on that. The technique was originally nicked from the Imperial Courier model but also used by several others.

By using the small sub-entity it doesn't have to be a consideration when designing the ship, only when defining the shipdata.plist.

PS Nice design, calls to mind the Cylon's from the new Battlestar Galactica.
Gunney.

"In space nobody cares if you scream"

Wiki Page : http://wiki.alioth.net/index.php/User:Gunney_Plym
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6570
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

Having seen it in game, I can confirm it is definitely Cylon design :-)
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

TGHC wrote:
Have a thought for us poor aged non techies old chap, can this be extracted like an ordinary zip file, I really like the look of this ship.
Legacy system eh?

According to MS, WinZip can handle tarballs. Failing that, 7Zip is supposed to work. Dunno what Mac uses. Probably WinZip these days... it's bean about a decade since I've had much to do with any proprietary-model system.

Ships about to update - but I'd kinda like to get shaders down first. Also, one of the models is refusing to render it's pontoons - no idea why not.
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Re: Development: Arachnid SB

Post by Simon B »

Commander McLane wrote:
Simon B wrote:
If anyone knows how to get the fwd laser starting on the hull without cutting the model up, do tell.
The weapon_position_foo keys for shipdata.plist are broken since at least 1.70. As a result all laser exit points are currently at "0, 0, outermost z-value of your ship" (or "outermost x-value of your ship, 0, 0" for side lasers). So currently the only way is to model your ship in a way that its nose is exactly positioned at x=0 and y=0.

Or, of course, hope for a fix in 1.72.
That would be consistent - cutting the ship up worked. The current version, the "legs" are seperate models. The obj file has a reddish-brown specular on the material which is quite nice. I gather this is done in the game with shaders?

Anyway, you'll notice the blue+grill behind the wings, I want a light blue glow an that :)
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

another_commander wrote:
Having seen it in game, I can confirm it is definitely Cylon design :-)
I'll have to contradict you - the original was an attempt to model a Shadow Battlecrab from B5. Turned out to be too annoying to skin - though I could probably do it now by using sub-entities.

The next incarnation had eight legs - but it looked like a bunch of bananas - so I cut it to two, and removed a knuckle, and reduced the poly count - opting for Oolite's light interpolation (smooth=true).

I do have designs based on the cylon raider... but I want to find a timing for the flashers so I can get them to scan back and forth first.

I like what shaders on max does to the arachnid model.
For the new models, I've kept the bone-look for one, but reduced the "panda effect" burn around the rear vents. (I havn't figured what those are supposed to be yet - exposed witchdrives?)

Image
So the bone one is dubbed "Avondale" after the spiders I used to live with, and represents the standard commercial model.

Image
There is a dark one with a red stripe dubbed "Katipo" after spiders I grew up with. The NPC version sports twin fwd beam lasers, which must give it an energy hit. So we're more likely to see this as a bounty hunter.

Image
There is a brown one dubbed "wolf" for no good reason. More of a scout - perhaps the NPC can use thargoid scanners?

However - I've researched (pronounced "stolen") the supercobra AI for these. It may be a bit aggressive, but then, sitting in one of these you're gonna feel aggressive.

* Caution - the new oxp is much bigger than the old one - I'll trim it and update the site.
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

I hope you are talking about the new supercobraAI, the original one was certainly anything but. :?

And--you guess it--there is of course already a ship named 'Wolf'.
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

Commander McLane wrote:
I hope you are talking about the new supercobraAI, the original one was certainly anything but. :?
Me too ... I'm as guilty of leaving versioning info off these things as anybody. I slap myself of the wrist.
And--you guess it--there is of course already a ship named 'Wolf'.
So many cool names already taken. Another which comes to mind is "Vampire" - and you're going to tell me that'staken too...

I'm being careful with the shipdata though, the ship is called Arachnid, of which, there is a variant called "wolf". In the shipdata it is designated >arachnid-wolf< and the shipyards will list one - Arachnid "Wolf" - like that.

Once again Stupendous Man saves the day!
The crowds go wild!

I've trimmed the oxp so only relevant files are present in tho tarball. The pngs are already compressed so there's not much I can do about that without dropping quality. Perhaps I could put tho sources in a different archive? (GPL v2 is stricter about source distribution than v3).

On the lighting effects...
Looks like I want to fiddle with materials.

***
sanity check:

diffuse_map=the-regular-skin.png;
shininess=128;
specular=1,0,0,1
emission_map=emission-texture.png


should do for the effect in the images.
presumably in the shipsdata.plist dict for the object being modelled.
the emmission map is black everywhere except over the rear vents - where they are blue in the stripes??? (Thats a very large amount of nothing... but how else to get the vents to glow? Didn't I see the imp navy ships glow the same way I want? I'll go look...)
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
Griff
Oolite 2 Art Director
Oolite 2 Art Director
Posts: 2479
Joined: Fri Jul 14, 2006 12:29 pm
Location: Probably hugging his Air Fryer

Post by Griff »

Excellent ship!
Materials would definately work for what you want to do, if you'd like to have a bash at using shaders instead an excellent OXP to work from is Svengali's "Vector OXP",
https://bb.oolite.space/viewtopic.php?t=4634
It has some really cool shader effects built into it and the best bit is, to get them working just need to supply 1 extra "effects map"!
In this case, you need to colour the effects map like this:

The amount of RED in a pixel controls the engine exhaust glow effect - this glow effect ramps up and down depending on the current speed of the ship

The amount of GREEN in a pixel controls the laser heat effect, for the players ship ramps up and down with the current laser temperature and can be used to give the effect of gun barrels glowing red hot or heat spreating from the gun onto the hull plating. For non-player ships (which don't have a concept of laser-temperature) the heat effect ramps from 100% to 0% for each firing cycle, creating more of a 'flash' effect than a gradual heat build up effect.

The amount of Blue in a pixel controls a constant glow effect, used for illuminating cockpit windows, hull lights etc - this would be used to control the blue glowing areas on your ship.

If you don't want engine glows, laser heat glows on your ship, simply leave out any red or green colour values from your effects map

I've whipped up an example effects map for your oxp, i hope you don't mind:
Image
this is what it looks like using the shaders in vector.oxp:
Image
These shots are from Rendermonkey, which is a free shader development program from AMD, the first pic shows the ship with all effects (engine & laser heat, and constant glow) at maximum, the second pic is the same except the main light source has been switched off so we can see the glow effects a bit better, and the third picture is the same except that a line in the fragment shader code as been altered to double the constant glow effect (i thought the glow as a bit too subtle using the default shader)

Painting your own effects map can be a bit confusing especially if you try and split an image into seperate colour channels, you just end up with a series of greyscale images that can be confusing to work with, well it always gives me headaches anyway! but there is a much simpler way of working, just create seperate layers for each colour 'channel' stack them above your usual texture map (diffuse map) and work by paining only red in teh red layer, blue in the blue layer and green in the green layer. When it comes time to save out your final effects map, just switch off the visibility of the diffuse map and a "save as.." so you can save out a copy of your effects map .png

Rather than clutter up your thread, I've posted an example image of this workflow over in the shaders outpost thread in the expansion pack sub-forum
https://bb.oolite.space/viewtopic.ph ... &start=217
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

Commander McLane wrote:
I hope you are talking about the new supercobraAI, the original one was certainly anything but. :?
I noticed it was the old AI. Even worse: It has as name "superCobraAI.plist". This way the last loaded AI will overwrite the first.

In this specific situation is no harm done. I have not changed the file "superCobraAI.plist", but added a new "superCobraJSAI.plist". This way I use the old AI with legacy Oolite versions and with 1.71 a script will switch the AI to the new one with JS functions. This new AI will not be as easy portable as the old one, because it also needs a JS script and its own additions in shipdata.

But in general: Make your AI names unique because identical names will overwrite each other.

Further I noticed you only use default roles like trader, pirate etc. These ships will get a AI assigned by the system, belonging to their role. This way the supercobraAI will never be used. By the way, this supercobraAI is nothing more than an old trader AI with some added comms messages.

I also noticed a role of "scavenger" with the wolf. This means it will sometimes be launched by stations to scoop up debris. But, you did not give it a scoop to actually do the scooping. This way they will just bounce against the debris. When you are lucky the debris explodes, when not it will keep bouncing against the debris.
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Sounds nice, Griff - 'excellent OXP' - but the truth is that I've stol.., err misus.., eeh used Ahrumans code from the ShadyCobra.oxp. For the Vector I have modified the fragment shader a little bit, but when I made it I even didn't understood anything - chinese GLSL :-) and tried a lot of variations. This has changed in the meantime and the next release of the GRS-Station (buoyRepair.oxp) has some new shaders. Simple things, but I think they will improve the station. And there I've used only one map per entity. So a extra 'effects map' isn't necessary here. And to reduce the amount of used memory all pics are 24Bit with 256 colors again - even if Ahruman says that this doesn't have any influence, because Oolite uses them as RGBA maps :-).

And Griff - you have already shown how to combine maps - this and a lot of your other work is outstanding!!
SimonB: take a look in Griff's station- and ships- oxps. There (and in Ahrumans examples) you can find a lot of nice stuff.

BTW: The next Vector-Release will come the next days with the old shader stuff - there was no reason to change it - as a mission-oxp and the next buoyRepair is nearly finished too (with Erics cool scripting) so it will come very soon too - I think - but we have to test it a little bit more before dropping this bomb.
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

Great response guys - this is what FOSS development is all about, and why I posted unfinished work.

I now have a much better idea of what I'm doing, and problem 2 (glow effects) have been solved.

I'm still nutting out how to get that specular effect to work.
Now to go look at those ships...

I note - the laser does not exit the points of the legs - sorry grif - but that's OK. It should exit front and center. Including the katipo I guess, since the leg models are off-center. (Need to correct this - low priority.)

The ai type is not set in the current oxp, so I can delete that. As mentioned, it is not actually used. The supercobra, I learn, has a script to generate npc instances of the ship.

Right now - need to set the specular property of the hull ... or otherwise set a reflection color.
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
User avatar
Simon B
---- E L I T E ----
---- E L I T E ----
Posts: 836
Joined: Thu Oct 23, 2008 5:54 am
Location: Red Beach NZ
Contact:

Post by Simon B »

um - grif - nice oxps dude, but you use Openbox for hosting...

and I'm getting:

Code: Select all

This user is not allowed to use direct links.
Please email [email protected] for support

To download this file, please visit: http://www.box.net/shared/gej970qtqj
Is "this user" you or me?

Anyway, it should be possible for me to go into the directory and just grab the file irregardless of the interface - eg. if you browse to http://www.hbclinux.net.nz/oolite/ you get a directory list - for some reason, openbox don't want me getting files this way.

I don't seem to have blocked any javascript on that page - maybe a third party wants a cookie? Maybe I have to sign up?
Simon Bridge
[re2dux] [neolite]
"Everything is perfect down to every last flaw..."
HBT: The Book of Verse - Principia Discordia
Post Reply