An R-Type inspired ship would probably be some sort of leisure atmospheric craft. I wouldn't get into a huge vulnerable glass tube and then into vacuum :]
You know which game had memorable little spriteships?
Star Control 2 (missing the flagship there...). 😎
For cool spaceship ideas in this vain you should really check out Prometheus Spawning Grounds... although, some of his art is a little, erm... girls pants showing... BUT if you scroll about 1/3rd of the way down there's totally awesome (and BIG style) spaceships
why not use the embed feature?
version 2 of the "Defender I", scale reduced to ~30m diameter, but feel free to tweak the ship by your own flavor.
and a extra ship...
SW-XWA Scout LG-RP ("Supa Fighter")
[/hr]
for those who like some SW ships as "real" models
http://www.spacesimcentral.com/forum/viewtopic.php?f=2&t=2173
i updated my conversion of darksabres millenium falcon somewhat, here's the result.
the model is somewhat lightened and the package includes a updated squad color model (allows to call it as a function) and the SW-XWA sub-models (actually not needed by this model, but for completeness and other Star Wars models that will follow).
[attachment=796:2011-06-16_165212.jpg]
I've read through the 3D modelling guide ( http://pioneerspacesim.net/wiki/index.php?title=3D_Modelling ) but can't find quite what I'm looking for.
Sometimes when starting a new game you get an Eagle which uses the material colours to affect the colouring of your ship, but not always.
Is this down to the definition of the materials in the models lua file? If so can you tell me where?
Andy
Is this down to the definition of the materials in the models lua file? If so can you tell me where?
Thats down to the selector() function which gives different ship colours based on reg numbers.
set_material('top', .1,.3,.05,1,.4,.4,.4,50)
set_material('bot', .63,.7,.83,1,1.26,1.4,1.66,30)
use_material('top')
call_model('eagle_lrf_v0',v(0,0,0),v(1,0,0),v(0,1,0),1)
else
if select2 < 51 then
set_material('top', .1,.3,.05,1,.4,.4,.4,50)
set_material('bot', .63,.7,.83,1,1.26,1.4,1.66,30)
use_material('top')
call_model('eagle_lrf_v1',v(0,0,0),v(1,0,0),v(0,1,0),1)
else
if select2 < 76 then -- cv
set_material('top', get_arg_material(1))
set_material('bot', get_arg_material(0))
use_material('top')
call_model('eagle_lrf_v0',v(0,0,0),v(1,0,0),v(0,1,0),1)
else
if select2 > 75 then
set_material('top', get_arg_material(1))
set_material('bot', get_arg_material(0))
use_material('top')
call_model('eagle_lrf_v1',v(0,0,0),v(1,0,0),v(0,1,0),1)
end
end
end
end
Argh those blocks of 'End' really grate me 🙂 Thats my obssessive compulsive side shining though 😉
Anyway notice how material selection is different based on values returned by the selector funtion?
But bear in mind that selector function has a few problems with it, most notably of those is that it seems to be the cause of inconsistent colours for ships between the three platforms.
Yes that's what I was looking for. Some of them don't use the LmrParams values. Got it. 🙂
EDIT: fixed my typo 🙂
Hm, I was thinking of variable station colors based on the system seed so they'd be consistent. Now I'm thinking I can do it using the station name instead, which is actually much better! Unfortunately, I'm at work right now and won't be able to mess with it for 30 hours or so.
marcel,
check the selector function,
you can alter it easy to your needs and implement it to the stations script.
since you don't have symbols in a stations name you can forget the most of the original script and simply convert the string to numbers (it's that long ago, i nearly forgot how i did it 😉 )
this converts the stations name to numbers
tonumber(get_arg_string(0),36)
"36" is the base, or in other words, you can restrict here how many alphanumerical symbols are translated to numbers, "36" stands for the whole alphabet simply.
possible numbers will be left unchanged, a "space" or any other symbol will make troubles of course, then we need a more complex translation.
easiest would be to use only the first three letters in the name and hope that they will never contain anything else then alphanumerical (no ' , -, "space", or such).
tonumber((string.sub(get_arg_string(0),1,3),36)
this will only use the first three letters of the stations name, maybe that's safer to use (four letters might work to, i guess a ' wont appear in between the first four letters of a name, except maybe one is named i.e. "xxx's", three is really safe, as long nothing is named "xx's").
a replacement isn't very useful in this case, because you won't know where a possible non alphanumerical symbol will appear (unlike the ships registration, where the dash is always the third symbol).
you could use this number already for your different preset materials, but it will have different length perhaps.
it's better to use math.random to generate a number with a given length, so you will know in which range the selection has to be.
to get a seed you can use with math.random use it this way
math.randomseed(tonumber((string.sub(get_arg_string(0),1,3),36))
right below generate now the random number from the seed, i.e.
local my_no = math.random(0,100)
the math.random function will use now the above seed to generate a quasi random number between 0 and 100
then use a if request to specify the materials, i.e.
if my_no < 50 then
set_material('hull', .5,.5,.5,1,.3,.3,.3,10)
else
set_material('hull', .1,.75,.75,1,.3,.3,.3,10)
end
you can make a function of that and put it in front of the stations script.
math.randomseed(tonumber(string.sub(get_arg_string(0),1,3),36))
my_no = math.random(0,100)
end
the result of the call
my_number()
is
my_no
while "my_no" is now any number between 0 and 100
use it now with the above described if request in the dynamic part of the models script.
make sure that this is only called above LOD1 (because arguments won't be passed to the collision mesh, it will return then "nil" and halts the process), means
my_number()
if my_no < 51 then
set_material('hull', .5,.5,.5,1,.3,.3,.3,10)
else
set_material('hull', .3,.7,.6,1,.3,.3,.3,10)
end
end
alternatively you could also use the random stuff where the "my_number()" call stands, instead to create the function "my_number".
(don't forget to list the material "hull" in the info section under "materials = {...},")
i hope that works, i haven't made it proof.
report if it didn't works, and what was probably the error message, then i will check what can be done against that.
---
the idea to use the original seed isn't bad, but the modules arguments won't be available for models, that's why i had to find a different method for the ships variations i.e. (textures or preset colors).
to use the "name" (string(0)), was the easiest and safest way.
in certain cases this is sad, because i.e. i can't request the cities name from a building, which i would have liked to for the factory's name like "ACME bolts and nuts, division (city name), or it's neither possible to give the chappel a name by name generation (i.e. St. Morton).
it's possible to use "os.clock" for this, unfortunately the name will change then each time you enter the system.
i guess to make it possible to request the systems initial seed or better the cities name* to generate a random number from it, would be a nice extra for buildings (* makes it possible to cover both, a name for industrial and other buildings, i.e. "xxx city hall" and a random number for extras or variations of a building).
terrestrial spaceports will allow a get_arg_string(0), it's possible to use the cities name on a spaceport to.
Thanks a lot Gernot! This would have taken me weeks to figure out on my own. I used to do similar string and random number stuff in BASIC years ago, but lua does things a bit differently. I'll report back after I've had time to mess with this. 😀
Ok, here's my idea. I'm using the first two letters of the station name, so even a name like Ty's Landing will work.
936 --random station colors
937 math.randomseed(tonumber((string.sub(get_arg_string(0),1,2),36))
938 local red = math.random(0,1)
939 math.randomseed(tonumber(red))
940 local green = math.random(0,1)
941 math.randomseed(tonumber(green))
942 local blue = math.random(0,1)
943 math.randomseed(tonumber(blue))
944 local shiny = math.random(0,1)
945 set_material('hull', red,green,blue,1,red,green,blue,shiny)
When I do a Luaedit syntax check I get:
"C:\Program Files...\data\models\space...':')' expected near ',' (937)
There's obviously a syntax error here. I've been unable to figure it out. Any ideas?
Mismatched parens, try:
"Syntax checked successfully!"
I was counting those and trying to match them up 🙄 Thanks robn!
Maybe it's because you Southern folks are upside-down on the globe, like those Australians. 😉 All the blood rushes to your heads. We Northern folks, however have the blood rushing from our heads. 😕
No wonder this planet is so mixed up. 😆
Let me get this straight. Winter began on the midwinter solstice?
Southern hemisphere winter is 1 May to 31 July. Solstice is related to the high/low point of the sun in the sky, and falls around the middle of winter and the middle of summer (midwinter and midsummer solstice, respectively). The related event for autumn (fall) and spring is the equinox, when the centre of the sun is in the same plane as the Earth's equator.
-- Rob, thoroughly enjoying a southern hemisphere winter in Melbourne 😡
Well, it was to disambiguate from the one at midsummer.
I use the definitions provided by the local weather bureau: http://www.bom.gov.au/climate/glossary/seasons.shtml
Summer - the three hottest months December, January and February.
Autumn - the transition months March, April and May.
Winter - the three coldest months June, July and August.
I wasn't aware of it being counted differently in other parts of the world but I have never actually looked into it.
I think the seasons are all out of whack anyways. In Scotland the weather has always been a bit mad (if you dont like it just wait 5 minutes and it will change to something else 😆 ), but lately it's been more crazy than usual. It's more like spring here rather than summer 😕
Incidentally, if weather modelling ever makes it into Pioneer, remember and set Scotland's to "total random" 😆
Seasons are based on the amount of sunlight in hours and angle of the sun, and not on temperature, its merely a by-product.
Otherwise Spring would often be summer and vice-versa.
🙂 The whole of the UK is like this, although maybe not quite so mad as you unlucky northerners, but its still completely barmy in the south.
For example our spring so far had been far hotter than summer by a large difference, however over the weekend we had the most random heatwave with temps in excess of 32degrees, and now its back to being overcast and stormy. And as I write this, here comes the rain.... 😉
So, you don't actually live in the virgin islands then Dan? 😀
This question interests me, too.
[attachment=811:Virgin Islands.jpg]
Hehe, no I just liked the flag, and being completely unpatriotic I chose it 😉
Although technically my country's flag is not available; there's no St. George's cross. 😉
hmm yeah in its absence, I just haven't chosen one.
I did wonder why someone who lives in paradise would want to spend free time inside working on software. 😎