To all SSC Station occupants
Thank you for the donations over the past year (2024), it is much appreciated. I am still trying to figure out how to migrate the forums to another community software (probably phpbb) but in the meantime I have updated the forum software to the latest version. SSC has been around a while so their is some very long time members here still using the site, thanks for making SSC home and sorry I haven't been as vocal as I should be in the forums I will try to improve my posting frequency.
Thank you again to all of the members that do take the time to donate a little, it helps keep this station functioning on the outer reaches of space.
-D1-
I had installed boot camp and Windows 7 on my iMac to play Pioneer but my graphics card didn't cut it and the HDR and Shader visuals didn't work so well.
With the release of 10.1 (11 doesn't load at all btw on OS 10.6) I am finally seeing what the rest of you have been seeing!!!!! Loving your work. Thankyou!!!!!!!!!
I like the 'Friendly' mod of the panel and am starting to enjoy flying around.
LONG TERM Frontier player. Played it back in the day on my Amiga 2000, finally when UAE came to OS X, played the Amiga version again. There was a 48 hour window on iPhone where an app called iDOS got approved and I was lucky enough to buy it, so now I regularly play Frontier on my iPhone - mostly catching the train. Actually in the handheld format the PC graphics still stand up well enough I reckon and you can customise the iDOS touch panels to whatever you like so I've got a perfect rig for flying my Asp. The game continues to amaze me at the things it offers up at times.
2 Questions:
Q1: Why did you change engine control from F7 to F5?? Which would be fine except you changed Hyperspace from F8, to F7!!!! I keep going to switch from Manual to Autopilot or kill the engines and then WHAM! I've jumped systems!!! Ha ha. Other than that, I like the enhancements and the ship flies remarkably well, love being able to bank and roll. Just wondering what the reasons were and if you can re-map the keys yourself??
Q2: Where's Charon?!!!
It's been great seeing this project take leaps and bounds, congratulations to all involved.
Welcome to the forums. We're glad you're enjoying Pioneer!
Your problem with 11 not working on OS X 10.6 might be issue #254. Alpha 12 will be out at the end of the week and this should be taken care of.
I don't actually know why its different to Frontier; this was done long before my time. Anybody got a good idea?
Some keys can be remapped via the settings screen, and I think a few more by editing the config file directly. The eventual goal will be that all keys can be remapped but we're not there yet.
Hey yeah! If you'd like to contribute the little fellow, edit data/systems/p00p00/00_sol.lua and then send us a patch 😉
Thanks! 😀
Hiya,
Wow I never knew I could contribute like that. The concept behind using LUA is brilliant. I couldn't program in C to save my life, but having grown up with QuickBASIC, Excel VBA, Hypertalk and Revscript, that looks like something I could actually do.
As a hack job and to test I had the concept right I copied the code for Saturn's moons renamed it Plutos_Moons and deleted everything but Rhea and renamed Rhea 'Charon'. Sure enough when I flew out to Pluto, there was 'Charon' although way too far away from Pluto.
I could actually make Charon accurate if I can get a grasp on the variables that I am dialing in. If anyone can share a link...
The one thing it doesn't mention is about how the fixed-point thing works. f(1,100) is basically the same as writing 0.001 (that is, 1/100) but in a way that is guaranteed to be accurate across all three platforms Pioneer works on. Its a bit weird but not hard once you get used to it.
With the release of 10.1 (11 doesn't load at all btw on OS 10.6) I am finally seeing what the rest of you have been seeing!!!!! Loving your work. Thankyou!!!!!!!!!
Hi trumpet,
I'm responsible for the OSX port (sorry about alpha 11) - one of the difficulties that I've been having is not having a large mac user base to test on ('it works on my machine' just doesn't cut it sometimes 😆 ). The error isn't a coding error, it is more of a packaging error.
I've been away for a bit due to personal reasons, but I'm back now and will hopefully fix the osx package in time for alpha12. There is also quite alot of stuff to catch up on as well (the other devs have been rather busy coding new stuff!!)
It's great to have another OSX user. 🙂
Look forward to seeing 12 Philby and thanks for making the effort!
I am not sure if this is kosher to paste this here, but Robn, I had a go at Charon. I am pretty sure I dialed in most of the data for it right. The size is right, I think it's orbiting marginally closer than it is in real life, and in real life it's like the moon as in one side is always facing the Earth.
According to Wikipedia (by way of a KM to AU converter) the Semi Major Axis should be: 0.00011722091978314111
I had it at f(117, 10000000 ) but that meant the two bodies were touching so clearly wrong. I am not quite sure how the numbers correlate or what the f stands for so was mostly extrapolating from comparisons between Mars Wikipedia data and the numbers in the LUA for Mars. If anyone has five minutes to explain how the numbers work - especially for Semi Major Axis, I can probably get Charon working right. If I can get a grip on how the numbers work I can probably also add Nix and Hydra to.
Whatever the case, I think I have got Charon reasonably close to how it should be and it was very nice flying out there and seeing it [and watching Pluto rise and set from its surface].
best wishes
Trumps
:govtype('EARTHDEMOC')
:short_desc('The historical birthplace of humankind')
:long_desc([[Sol is a fine joint]])
local sol = CustomSBody:new('Sol', 'STAR_G')
:radius(f(1,1))
:mass(f(1,1))
:temp(5700)
local mercury = CustomSBody:new('Mercury', 'PLANET_TERRESTRIAL')
:radius(f(38,100))
:mass(f(55,1000))
:temp(340)
:semi_major_axis(f(387,1000))
:eccentricity(f(205,1000))
:inclination(math.deg2rad(7.0))
:rotation_period(f(59,1))
:axial_tilt(math.fixed.deg2rad(f(1,100)))
:metallicity(f(9,10))
:volcanicity(f(1,2))
:atmos_density(f(0,1))
:atmos_oxidizing(f(0,1))
:ocean_cover(f(0,1))
:ice_cover(f(2,100))
:life(f(0,1))
local venus = CustomSBody:new('Venus', 'PLANET_TERRESTRIAL')
:radius(f(95,100))
:mass(f(815,1000))
:temp(735)
:semi_major_axis(f(723,1000))
:eccentricity(f(7,1000))
:inclination(math.deg2rad(3.39))
:rotation_period(f(243,1))
:axial_tilt(math.fixed.deg2rad(f(26,10)))
:metallicity(f(1,2))
:volcanicity(f(8,10))
:atmos_density(f(93,1))
:atmos_oxidizing(f(1,1))
:ocean_cover(f(0,1))
:ice_cover(f(0,1))
:life(f(0,1))
local earth = CustomSBody:new('Earth', 'PLANET_TERRESTRIAL')
:radius(f(1,1))
:mass(f(1,1))
:temp(288)
:semi_major_axis(f(1,1))
:eccentricity(f(167,10000))
:rotation_period(f(1,1))
:axial_tilt(math.fixed.deg2rad(f(2344,100)))
:height_map('earth.hmap')
:metallicity(f(1,2))
:volcanicity(f(1,10))
:atmos_density(f(1,1))
:atmos_oxidizing(f(8,10))
:ocean_cover(f(7,10))
:ice_cover(f(7,10))
:life(f(9,10))
local earth_starports = {
CustomSBody:new('Shanghai', 'STARPORT_SURFACE')
:latitude(math.deg2rad(31))
:longitude(math.deg2rad(-121)),
CustomSBody:new('Mexico City', 'STARPORT_SURFACE')
:latitude(math.deg2rad(19))
:longitude(math.deg2rad(99)),
CustomSBody:new('London', 'STARPORT_SURFACE')
:latitude(math.deg2rad(51))
:longitude(0),
CustomSBody:new('Moscow', 'STARPORT_SURFACE')
:latitude(math.deg2rad(55))
:longitude(math.deg2rad(-37.5)),
CustomSBody:new('Brasilia', 'STARPORT_SURFACE')
:latitude(math.deg2rad(-15.5))
:longitude(math.deg2rad(48)),
CustomSBody:new('Los Angeles', 'STARPORT_SURFACE')
:latitude(math.deg2rad(34))
:longitude(math.deg2rad(118)),
CustomSBody:new('Abraham Lincoln', 'STARPORT_ORBITAL')
:semi_major_axis(f(100,100000))
:rotation_period(f(1,24*60*3)),
}
local moon = {
CustomSBody:new('Moon', 'PLANET_TERRESTRIAL')
:seed(191080)
:radius(f(273,1000))
:mass(f(12,1000))
:temp(220)
:semi_major_axis(f(257,100000))
:eccentricity(f(549,10000))
:inclination(math.deg2rad(5.145))
:rotation_period(f(273,10))
:axial_tilt(math.fixed.deg2rad(f(668,100)))
:volcanicity(f(0,1)),
{
CustomSBody:new('Lunar City', 'STARPORT_SURFACE')
:latitude(math.deg2rad(19))
:longitude(math.deg2rad(99)),
},
}
local mars = CustomSBody:new('Mars', 'PLANET_TERRESTRIAL')
:seed(3)
:radius(f(533,1000))
:mass(f(107,1000))
:temp(278)
:semi_major_axis(f(152,100))
:eccentricity(f(933,10000))
:inclination(math.deg2rad(1.85))
:rotation_period(f(1027,1000))
:axial_tilt(math.fixed.deg2rad(f(2519,100)))
-- XXX composition copied from earth until there's a way to indicate terraformed
:metallicity(f(4,5))
:volcanicity(f(2,10))
:atmos_density(f(3,5))
:atmos_oxidizing(f(8,10))
:ocean_cover(f(38,100))
:ice_cover(f(678,1000))
:life(f(15,100))
local mars_starports = {
CustomSBody:new('Cydonia', 'STARPORT_SURFACE')
:latitude(math.deg2rad(-29))
:longitude(math.deg2rad(124)),
CustomSBody:new('Olympus Mons', 'STARPORT_SURFACE')
:latitude(math.deg2rad(30))
:longitude(math.deg2rad(-37)),
CustomSBody:new('Mars High', 'STARPORT_ORBITAL')
:semi_major_axis(f(5068,100000000))
:rotation_period(f(11,24)),
}
local mars_moons = {
CustomSBody:new('Phobos', 'PLANET_ASTEROID')
:radius(f(21,10000))
:mass(f(18,100000))
:temp(233)
:semi_major_axis(f(6268,100000000))
:eccentricity(f(151,10000))
:inclination(math.deg2rad(1.093))
:rotation_period(f(11,24))
:metallicity(f(4,5))
:volcanicity(f(3,4)),
{
CustomSBody:new('Phobos Base', 'STARPORT_SURFACE')
:latitude(math.deg2rad(5))
:longitude(math.deg2rad(-5)),
},
CustomSBody:new('Deimos', 'PLANET_ASTEROID')
:radius(f(12,10000))
:mass(f(25,1000000))
:temp(233)
:semi_major_axis(f(1568,10000000))
:eccentricity(f(2,10000))
:inclination(math.deg2rad(0.93))
:rotation_period(f(30,24))
:metallicity(f(2,5))
:volcanicity(f(0,1)),
{
CustomSBody:new('Tomm\'s Sanctuary', 'STARPORT_SURFACE'),
},
}
local jupiter = CustomSBody:new('Jupiter', 'PLANET_GAS_GIANT')
:seed(3)
:radius(f(11,1))
:mass(f(3178,10))
:temp(165)
:atmos_density(f(2,1))
:atmos_oxidizing(f(8,10))
:semi_major_axis(f(5204,1000))
:eccentricity(f(488,10000))
:inclination(math.deg2rad(1.305))
:rotation_period(f(4,10))
:axial_tilt(math.fixed.deg2rad(f(313,100)))
local jupiter_moons = {
CustomSBody:new('Io', 'PLANET_TERRESTRIAL')
:radius(f(286,1000))
:mass(f(15,1000))
:temp(130)
:semi_major_axis(f(282,100000))
:eccentricity(f(41,10000))
:inclination(math.deg2rad(2.21))
:rotation_period(f(177,100))
:metallicity(f(7,10))
:volcanicity(f(1,1))
:atmos_density(f(1,10))
:atmos_oxidizing(f(8,10))
:ocean_cover(f(0,1))
:ice_cover(f(1,1000))
:life(f(0,1)),
{
CustomSBody:new('Dante\'s Base', 'STARPORT_SURFACE')
:latitude(math.deg2rad(-0.5))
:longitude(math.deg2rad(26.2)),
},
CustomSBody:new('Europa', 'PLANET_TERRESTRIAL')
:seed(5)
:radius(f(245,1000))
:mass(f(8,1000))
:temp(102)
:semi_major_axis(f(441,100000))
:eccentricity(f(9,1000))
:rotation_period(f(355,100))
:ocean_cover(f(8,10))
:ice_cover(f(9,10))
:atmos_density(f(1,12))
:metallicity(f(4,5))
:volcanicity(f(0,1)),
{
CustomSBody:new('Clarke\'s Station', 'STARPORT_ORBITAL')
:semi_major_axis(f(12,500000))
:rotation_period(f(1,24*60*3)),
},
CustomSBody:new('Ganymede', 'PLANET_TERRESTRIAL')
:radius(f(413,1000))
:mass(f(25,1000))
:temp(110)
:semi_major_axis(f(72,10000))
:eccentricity(f(13,10000))
:inclination(math.deg2rad(0.2))
:atmos_density(f(1,14))
:rotation_period(f(72,10)),
{
CustomSBody:new('Enki Catena', 'STARPORT_SURFACE')
:latitude(math.deg2rad(84))
:longitude(math.deg2rad(96)),
},
CustomSBody:new('Callisto', 'PLANET_TERRESTRIAL')
:radius(f(378,1000))
:mass(f(18,1000))
:temp(134)
:semi_major_axis(f(126,10000))
:eccentricity(f(74,10000))
:inclination(math.deg2rad(0.192))
:rotation_period(f(167,10)),
CustomSBody:new('Discovery Base', 'STARPORT_ORBITAL')
:semi_major_axis(f(7,1000))
:rotation_period(f(11,1)),
}
local saturn = CustomSBody:new('Saturn', 'PLANET_GAS_GIANT')
:radius(f(9,1))
:mass(f(95152,1000))
:temp(134)
:semi_major_axis(f(9582,1000))
:eccentricity(f(557,10000))
:inclination(math.deg2rad(2.485))
:rotation_period(f(4,10))
:axial_tilt(math.fixed.deg2rad(f(2673,100)))
local saturn_moons = {
CustomSBody:new('Titan', 'PLANET_TERRESTRIAL')
:radius(f(400,1000))
:mass(f(225,10000))
:temp(94)
:semi_major_axis(f(82,10000))
:eccentricity(f(288,10000))
:inclination(math.deg2rad(0.34854))
:atmos_density(f(10,1))
:rotation_period(f(15945,1000)),
{
CustomSBody:new('Oasis City', 'STARPORT_SURFACE')
:latitude(math.deg2rad(18.4))
:longitude(math.deg2rad(196)),
CustomSBody:new('Port Makenzie', 'STARPORT_SURFACE')
:latitude(math.deg2rad(1))
:longitude(math.deg2rad(14)),
CustomSBody:new('Daniel\'s Haven', 'STARPORT_ORBITAL')
:semi_major_axis(f(12,500000))
:eccentricity(f(50,1000))
:rotation_period(f(11,9)),
},
CustomSBody:new('Rhea', 'PLANET_TERRESTRIAL')
:radius(f(12,100))
:mass(f(39,10000))
:temp(81)
:semi_major_axis(f(441,100000))
:eccentricity(f(126,100000))
:inclination(math.deg2rad(0.345))
:rotation_period(f(452,100))
:atmos_density(f(1,10)),
CustomSBody:new('Iapetus', 'PLANET_TERRESTRIAL')
:radius(f(1155,10000))
:mass(f(3,10000))
:temp(115)
:semi_major_axis(f(238,10000))
:eccentricity(f(29,1000))
:inclination(math.deg2rad(15.47))
:rotation_period(f(7932,100)),
CustomSBody:new('Dione', 'PLANET_TERRESTRIAL')
:radius(f(881,10000))
:mass(f(328,1000000))
:temp(87)
:semi_major_axis(f(252,100000))
:eccentricity(f(22,10000))
:inclination(math.deg2rad(0.019))
:rotation_period(f(2737,1000)),
}
local uranus = CustomSBody:new('Uranus', 'PLANET_GAS_GIANT')
:radius(f(4,1))
:mass(f(145,10))
:temp(76)
:semi_major_axis(f(19229,1000))
:eccentricity(f(444,10000))
:inclination(math.deg2rad(0.772))
:rotation_period(f(7,10))
:axial_tilt(math.fixed.deg2rad(f(9777,100)))
local uranus_moons = {
CustomSBody:new('Titania', 'PLANET_TERRESTRIAL')
:radius(f(1235,10000))
:mass(f(5908,10000000))
:temp(70)
:semi_major_axis(f(2913,1000000))
:eccentricity(f(11,10000))
:inclination(math.deg2rad(0.34))
:rotation_period(f(87,10))
:atmos_density(f(1,10)),
CustomSBody:new('Oberon', 'PLANET_TERRESTRIAL')
:radius(f(1194,10000))
:mass(f(5046,10000000))
:temp(75)
:semi_major_axis(f(39,10000))
:eccentricity(f(14,10000))
:inclination(math.deg2rad(0.058))
:rotation_period(f(135,10)),
CustomSBody:new('Umbriel', 'PLANET_TERRESTRIAL')
:radius(f(92,1000))
:mass(f(2,10000))
:temp(75)
:semi_major_axis(f(178,100000))
:eccentricity(f(39,10000))
:inclination(math.deg2rad(0.128))
:rotation_period(f(4144,1000)),
CustomSBody:new('Ariel', 'PLANET_TERRESTRIAL')
:radius(f(908,10000))
:mass(f(226,1000000))
:temp(60)
:semi_major_axis(f(1277,1000000))
:eccentricity(f(12,10000))
:inclination(math.deg2rad(0.26))
:rotation_period(f(252,100)),
}
local neptune = CustomSBody:new('Neptune', 'PLANET_GAS_GIANT')
:radius(f(38,10))
:mass(f(17147,1000))
:temp(72)
:semi_major_axis(f(30104,1000))
:eccentricity(f(112,10000))
:inclination(math.deg2rad(1.768))
:rotation_period(f(75,100))
:axial_tilt(math.fixed.deg2rad(f(2832,100)))
local neptune_moons = {
CustomSBody:new('Triton', 'PLANET_TERRESTRIAL')
:radius(f(2122,10000))
:mass(f(359,100000))
:temp(38)
:semi_major_axis(f(2371,100000))
:eccentricity(f(16,1000000))
:volcanicity(f(3,10)) -- Cryovolcanos!
:inclination(math.deg2rad(156.885))
:rotation_period(f(141,24))
:atmos_density(f(1,10)),
{
CustomSBody:new('Poseidon Station', 'STARPORT_ORBITAL')
:semi_major_axis(f(12,500000))
:rotation_period(f(11,7)),
},
CustomSBody:new('Nereid', 'PLANET_ASTEROID')
:mass(f(519,1000))
:temp(50)
:semi_major_axis(f(3685,100000))
:eccentricity(f(75,100))
:inclination(math.deg2rad(32.55))
:rotation_period(f(115,240)),
CustomSBody:new('Proteus', 'PLANET_ASTEROID')
:radius(f(310,10000))
:mass(f(710,1000))
:temp(51)
:semi_major_axis(f(786,1000000))
:eccentricity(f(53,100000))
:inclination(math.deg2rad(0.524))
:rotation_period(f(1122,1000)),
}
local pluto = CustomSBody:new('Pluto', 'PLANET_TERRESTRIAL')
:radius(f(18,100))
:mass(f(21,10000))
:temp(44)
:semi_major_axis(f(394,10))
:eccentricity(f(249,1000))
:inclination(math.deg2rad(11.88))
:rotation_period(f(153,24))
:axial_tilt(math.fixed.deg2rad(f(296,10)))
local pluto_starports = {
CustomSBody:new('Hades', 'STARPORT_SURFACE')
:latitude(math.deg2rad(84))
:longitude(math.deg2rad(96)),
}
local pluto_moons = {
CustomSBody:new('Charon', 'PLANET_TERRESTRIAL')
:radius(f(9,100))
:mass(f(2,10000))
:temp(44)
:semi_major_axis(f(217,10000000))
:eccentricity(f(220,10000))
:inclination(math.deg2rad(119.5))
:rotation_period(f(6,10))
:axial_tilt(math.fixed.deg2rad(f(668,100)))
:volcanicity(f(0,1)),
}
s:bodies(sol, {
mercury,
venus,
earth,
earth_starports,
moon,
mars,
mars_starports,
mars_moons,
jupiter,
jupiter_moons,
saturn,
saturn_moons,
uranus,
uranus_moons,
neptune,
neptune_moons,
pluto,
pluto_starports,
pluto_moons,
})
s:add_to_sector(0,0,v(0.5,0.5,0))
I had it at f(117, 10000000 ) but that meant the two bodies were touching so clearly wrong
You have one too many 0s 🙂 (117,1000) is 0.117 so (117,1000000) is 0.000117 and (117, 10000000) like you used, would give 0.0000117 . To be sure just divide your first number by your second.
And for now I would copy other planetary (not orbital) values from Europa as the terrain currently used for Europa would make a good Charon.
This has now been fixed and should be done for Alpha12 - thanks for letting us know (we need more mac testers!!)
At last! I've been asking and asking for Charon, but nobody ever listens. 😆
Of course, I could have learned how to do it myself, but I didn't. I'm glad you did, trumpet. I love the way everybody just finds something that needs doing and does it! 😀
Legend S2odan! That was a big help.
So here's my attempt at Charon, Nix and Hyrda.
:govtype('EARTHDEMOC')
:short_desc('The historical birthplace of humankind')
:long_desc([[Sol is a fine joint]])
local sol = CustomSBody:new('Sol', 'STAR_G')
:radius(f(1,1))
:mass(f(1,1))
:temp(5700)
local mercury = CustomSBody:new('Mercury', 'PLANET_TERRESTRIAL')
:radius(f(38,100))
:mass(f(55,1000))
:temp(340)
:semi_major_axis(f(387,1000))
:eccentricity(f(205,1000))
:inclination(math.deg2rad(7.0))
:rotation_period(f(59,1))
:axial_tilt(math.fixed.deg2rad(f(1,100)))
:metallicity(f(9,10))
:volcanicity(f(1,2))
:atmos_density(f(0,1))
:atmos_oxidizing(f(0,1))
:ocean_cover(f(0,1))
:ice_cover(f(2,100))
:life(f(0,1))
local venus = CustomSBody:new('Venus', 'PLANET_TERRESTRIAL')
:radius(f(95,100))
:mass(f(815,1000))
:temp(735)
:semi_major_axis(f(723,1000))
:eccentricity(f(7,1000))
:inclination(math.deg2rad(3.39))
:rotation_period(f(243,1))
:axial_tilt(math.fixed.deg2rad(f(26,10)))
:metallicity(f(1,2))
:volcanicity(f(8,10))
:atmos_density(f(93,1))
:atmos_oxidizing(f(1,1))
:ocean_cover(f(0,1))
:ice_cover(f(0,1))
:life(f(0,1))
local earth = CustomSBody:new('Earth', 'PLANET_TERRESTRIAL')
:radius(f(1,1))
:mass(f(1,1))
:temp(288)
:semi_major_axis(f(1,1))
:eccentricity(f(167,10000))
:rotation_period(f(1,1))
:axial_tilt(math.fixed.deg2rad(f(2344,100)))
:height_map('earth.hmap')
:metallicity(f(1,2))
:volcanicity(f(1,10))
:atmos_density(f(1,1))
:atmos_oxidizing(f(8,10))
:ocean_cover(f(7,10))
:ice_cover(f(7,10))
:life(f(9,10))
local earth_starports = {
CustomSBody:new('Shanghai', 'STARPORT_SURFACE')
:latitude(math.deg2rad(31))
:longitude(math.deg2rad(-121)),
CustomSBody:new('Mexico City', 'STARPORT_SURFACE')
:latitude(math.deg2rad(19))
:longitude(math.deg2rad(99)),
CustomSBody:new('London', 'STARPORT_SURFACE')
:latitude(math.deg2rad(51))
:longitude(0),
CustomSBody:new('Moscow', 'STARPORT_SURFACE')
:latitude(math.deg2rad(55))
:longitude(math.deg2rad(-37.5)),
CustomSBody:new('Brasilia', 'STARPORT_SURFACE')
:latitude(math.deg2rad(-15.5))
:longitude(math.deg2rad(48)),
CustomSBody:new('Los Angeles', 'STARPORT_SURFACE')
:latitude(math.deg2rad(34))
:longitude(math.deg2rad(118)),
CustomSBody:new('Abraham Lincoln', 'STARPORT_ORBITAL')
:semi_major_axis(f(100,100000))
:rotation_period(f(1,24*60*3)),
}
local moon = {
CustomSBody:new('Moon', 'PLANET_TERRESTRIAL')
:seed(191080)
:radius(f(273,1000))
:mass(f(12,1000))
:temp(220)
:semi_major_axis(f(257,100000))
:eccentricity(f(549,10000))
:inclination(math.deg2rad(5.145))
:rotation_period(f(273,10))
:axial_tilt(math.fixed.deg2rad(f(668,100)))
:volcanicity(f(0,1)),
{
CustomSBody:new('Lunar City', 'STARPORT_SURFACE')
:latitude(math.deg2rad(19))
:longitude(math.deg2rad(99)),
},
}
local mars = CustomSBody:new('Mars', 'PLANET_TERRESTRIAL')
:seed(3)
:radius(f(533,1000))
:mass(f(107,1000))
:temp(278)
:semi_major_axis(f(152,100))
:eccentricity(f(933,10000))
:inclination(math.deg2rad(1.85))
:rotation_period(f(1027,1000))
:axial_tilt(math.fixed.deg2rad(f(2519,100)))
-- XXX composition copied from earth until there's a way to indicate terraformed
:metallicity(f(4,5))
:volcanicity(f(2,10))
:atmos_density(f(3,5))
:atmos_oxidizing(f(8,10))
:ocean_cover(f(38,100))
:ice_cover(f(678,1000))
:life(f(15,100))
local mars_starports = {
CustomSBody:new('Cydonia', 'STARPORT_SURFACE')
:latitude(math.deg2rad(-29))
:longitude(math.deg2rad(124)),
CustomSBody:new('Olympus Mons', 'STARPORT_SURFACE')
:latitude(math.deg2rad(30))
:longitude(math.deg2rad(-37)),
CustomSBody:new('Mars High', 'STARPORT_ORBITAL')
:semi_major_axis(f(5068,100000000))
:rotation_period(f(11,24)),
}
local mars_moons = {
CustomSBody:new('Phobos', 'PLANET_ASTEROID')
:radius(f(21,10000))
:mass(f(18,100000))
:temp(233)
:semi_major_axis(f(6268,100000000))
:eccentricity(f(151,10000))
:inclination(math.deg2rad(1.093))
:rotation_period(f(11,24))
:metallicity(f(4,5))
:volcanicity(f(3,4)),
{
CustomSBody:new('Phobos Base', 'STARPORT_SURFACE')
:latitude(math.deg2rad(5))
:longitude(math.deg2rad(-5)),
},
CustomSBody:new('Deimos', 'PLANET_ASTEROID')
:radius(f(12,10000))
:mass(f(25,1000000))
:temp(233)
:semi_major_axis(f(1568,10000000))
:eccentricity(f(2,10000))
:inclination(math.deg2rad(0.93))
:rotation_period(f(30,24))
:metallicity(f(2,5))
:volcanicity(f(0,1)),
{
CustomSBody:new('Tomm\'s Sanctuary', 'STARPORT_SURFACE'),
},
}
local jupiter = CustomSBody:new('Jupiter', 'PLANET_GAS_GIANT')
:seed(3)
:radius(f(11,1))
:mass(f(3178,10))
:temp(165)
:atmos_density(f(2,1))
:atmos_oxidizing(f(8,10))
:semi_major_axis(f(5204,1000))
:eccentricity(f(488,10000))
:inclination(math.deg2rad(1.305))
:rotation_period(f(4,10))
:axial_tilt(math.fixed.deg2rad(f(313,100)))
local jupiter_moons = {
CustomSBody:new('Io', 'PLANET_TERRESTRIAL')
:radius(f(286,1000))
:mass(f(15,1000))
:temp(130)
:semi_major_axis(f(282,100000))
:eccentricity(f(41,10000))
:inclination(math.deg2rad(2.21))
:rotation_period(f(177,100))
:metallicity(f(7,10))
:volcanicity(f(1,1))
:atmos_density(f(1,10))
:atmos_oxidizing(f(8,10))
:ocean_cover(f(0,1))
:ice_cover(f(1,1000))
:life(f(0,1)),
{
CustomSBody:new('Dante\'s Base', 'STARPORT_SURFACE')
:latitude(math.deg2rad(-0.5))
:longitude(math.deg2rad(26.2)),
},
CustomSBody:new('Europa', 'PLANET_TERRESTRIAL')
:seed(5)
:radius(f(245,1000))
:mass(f(8,1000))
:temp(102)
:semi_major_axis(f(441,100000))
:eccentricity(f(9,1000))
:rotation_period(f(355,100))
:ocean_cover(f(8,10))
:ice_cover(f(9,10))
:atmos_density(f(1,12))
:metallicity(f(4,5))
:volcanicity(f(0,1)),
{
CustomSBody:new('Clarke\'s Station', 'STARPORT_ORBITAL')
:semi_major_axis(f(12,500000))
:rotation_period(f(1,24*60*3)),
},
CustomSBody:new('Ganymede', 'PLANET_TERRESTRIAL')
:radius(f(413,1000))
:mass(f(25,1000))
:temp(110)
:semi_major_axis(f(72,10000))
:eccentricity(f(13,10000))
:inclination(math.deg2rad(0.2))
:atmos_density(f(1,14))
:rotation_period(f(72,10)),
{
CustomSBody:new('Enki Catena', 'STARPORT_SURFACE')
:latitude(math.deg2rad(84))
:longitude(math.deg2rad(96)),
},
CustomSBody:new('Callisto', 'PLANET_TERRESTRIAL')
:radius(f(378,1000))
:mass(f(18,1000))
:temp(134)
:semi_major_axis(f(126,10000))
:eccentricity(f(74,10000))
:inclination(math.deg2rad(0.192))
:rotation_period(f(167,10)),
CustomSBody:new('Discovery Base', 'STARPORT_ORBITAL')
:semi_major_axis(f(7,1000))
:rotation_period(f(11,1)),
}
local saturn = CustomSBody:new('Saturn', 'PLANET_GAS_GIANT')
:radius(f(9,1))
:mass(f(95152,1000))
:temp(134)
:semi_major_axis(f(9582,1000))
:eccentricity(f(557,10000))
:inclination(math.deg2rad(2.485))
:rotation_period(f(4,10))
:axial_tilt(math.fixed.deg2rad(f(2673,100)))
local saturn_moons = {
CustomSBody:new('Titan', 'PLANET_TERRESTRIAL')
:radius(f(400,1000))
:mass(f(225,10000))
:temp(94)
:semi_major_axis(f(82,10000))
:eccentricity(f(288,10000))
:inclination(math.deg2rad(0.34854))
:atmos_density(f(10,1))
:rotation_period(f(15945,1000)),
{
CustomSBody:new('Oasis City', 'STARPORT_SURFACE')
:latitude(math.deg2rad(18.4))
:longitude(math.deg2rad(196)),
CustomSBody:new('Port Makenzie', 'STARPORT_SURFACE')
:latitude(math.deg2rad(1))
:longitude(math.deg2rad(14)),
CustomSBody:new('Daniel\'s Haven', 'STARPORT_ORBITAL')
:semi_major_axis(f(12,500000))
:eccentricity(f(50,1000))
:rotation_period(f(11,9)),
},
CustomSBody:new('Rhea', 'PLANET_TERRESTRIAL')
:radius(f(12,100))
:mass(f(39,10000))
:temp(81)
:semi_major_axis(f(441,100000))
:eccentricity(f(126,100000))
:inclination(math.deg2rad(0.345))
:rotation_period(f(452,100))
:atmos_density(f(1,10)),
CustomSBody:new('Iapetus', 'PLANET_TERRESTRIAL')
:radius(f(1155,10000))
:mass(f(3,10000))
:temp(115)
:semi_major_axis(f(238,10000))
:eccentricity(f(29,1000))
:inclination(math.deg2rad(15.47))
:rotation_period(f(7932,100)),
CustomSBody:new('Dione', 'PLANET_TERRESTRIAL')
:radius(f(881,10000))
:mass(f(328,1000000))
:temp(87)
:semi_major_axis(f(252,100000))
:eccentricity(f(22,10000))
:inclination(math.deg2rad(0.019))
:rotation_period(f(2737,1000)),
}
local uranus = CustomSBody:new('Uranus', 'PLANET_GAS_GIANT')
:radius(f(4,1))
:mass(f(145,10))
:temp(76)
:semi_major_axis(f(19229,1000))
:eccentricity(f(444,10000))
:inclination(math.deg2rad(0.772))
:rotation_period(f(7,10))
:axial_tilt(math.fixed.deg2rad(f(9777,100)))
local uranus_moons = {
CustomSBody:new('Titania', 'PLANET_TERRESTRIAL')
:radius(f(1235,10000))
:mass(f(5908,10000000))
:temp(70)
:semi_major_axis(f(2913,1000000))
:eccentricity(f(11,10000))
:inclination(math.deg2rad(0.34))
:rotation_period(f(87,10))
:atmos_density(f(1,10)),
CustomSBody:new('Oberon', 'PLANET_TERRESTRIAL')
:radius(f(1194,10000))
:mass(f(5046,10000000))
:temp(75)
:semi_major_axis(f(39,10000))
:eccentricity(f(14,10000))
:inclination(math.deg2rad(0.058))
:rotation_period(f(135,10)),
CustomSBody:new('Umbriel', 'PLANET_TERRESTRIAL')
:radius(f(92,1000))
:mass(f(2,10000))
:temp(75)
:semi_major_axis(f(178,100000))
:eccentricity(f(39,10000))
:inclination(math.deg2rad(0.128))
:rotation_period(f(4144,1000)),
CustomSBody:new('Ariel', 'PLANET_TERRESTRIAL')
:radius(f(908,10000))
:mass(f(226,1000000))
:temp(60)
:semi_major_axis(f(1277,1000000))
:eccentricity(f(12,10000))
:inclination(math.deg2rad(0.26))
:rotation_period(f(252,100)),
}
local neptune = CustomSBody:new('Neptune', 'PLANET_GAS_GIANT')
:radius(f(38,10))
:mass(f(17147,1000))
:temp(72)
:semi_major_axis(f(30104,1000))
:eccentricity(f(112,10000))
:inclination(math.deg2rad(1.768))
:rotation_period(f(75,100))
:axial_tilt(math.fixed.deg2rad(f(2832,100)))
local neptune_moons = {
CustomSBody:new('Triton', 'PLANET_TERRESTRIAL')
:radius(f(2122,10000))
:mass(f(359,100000))
:temp(38)
:semi_major_axis(f(2371,100000))
:eccentricity(f(16,1000000))
:volcanicity(f(3,10)) -- Cryovolcanos!
:inclination(math.deg2rad(156.885))
:rotation_period(f(141,24))
:atmos_density(f(1,10)),
{
CustomSBody:new('Poseidon Station', 'STARPORT_ORBITAL')
:semi_major_axis(f(12,500000))
:rotation_period(f(11,7)),
},
CustomSBody:new('Nereid', 'PLANET_ASTEROID')
:mass(f(519,1000))
:temp(50)
:semi_major_axis(f(3685,100000))
:eccentricity(f(75,100))
:inclination(math.deg2rad(32.55))
:rotation_period(f(115,240)),
CustomSBody:new('Proteus', 'PLANET_ASTEROID')
:radius(f(310,10000))
:mass(f(710,1000))
:temp(51)
:semi_major_axis(f(786,1000000))
:eccentricity(f(53,100000))
:inclination(math.deg2rad(0.524))
:rotation_period(f(1122,1000)),
}
local pluto = CustomSBody:new('Pluto', 'PLANET_TERRESTRIAL')
:radius(f(18,100))
:mass(f(21,10000))
:temp(44)
:semi_major_axis(f(394,10))
:eccentricity(f(249,1000))
:inclination(math.deg2rad(11.88))
:rotation_period(f(153,24))
:axial_tilt(math.fixed.deg2rad(f(296,10)))
local pluto_starports = {
CustomSBody:new('Fort Hades', 'STARPORT_SURFACE')
:latitude(math.deg2rad(84))
:longitude(math.deg2rad(96)),
}
local pluto_moons = {
CustomSBody:new('Charon', 'PLANET_TERRESTRIAL')
:radius(f(10,100))
:mass(f(2,10000))
:temp(44)
:semi_major_axis(f(117,1000000))
:eccentricity(f(420,10000))
:inclination(math.deg2rad(119.5))
:rotation_period(f(6,10))
:axial_tilt(math.fixed.deg2rad(f(668,100)))
:volcanicity(f(0,1)),
CustomSBody:new('Nix', 'PLANET_ASTEROID')
:radius(f(100,10000))
:mass(f(519,1000))
:temp(44)
:semi_major_axis(f(325,1000000))
:eccentricity(f(420,10000))
:inclination(math.deg2rad(119.5))
:rotation_period(f(24,10)),
CustomSBody:new('Hydra', 'PLANET_ASTEROID')
:radius(f(110,10000))
:mass(f(710,1000))
:temp(44)
:semi_major_axis(f(786,1000000))
:eccentricity(f(420,10000))
:inclination(math.deg2rad(0.524))
:rotation_period(f(38,10)),
}
s:bodies(sol, {
mercury,
venus,
earth,
earth_starports,
moon,
mars,
mars_starports,
mars_moons,
jupiter,
jupiter_moons,
saturn,
saturn_moons,
uranus,
uranus_moons,
neptune,
neptune_moons,
pluto,
pluto_starports,
pluto_moons,
})
s:add_to_sector(0,0,v(0.5,0.5,0))
The semi major axis/orbit are correct for these bodies. Sizes are 'pretty close' and the finer details? Well... I need to get the hang of everything a bit more.
Say does anyone's have excel spreadsheet for converting Kilometers or AU into the number format that Pioneer uses? You know what I mean? Where for example you type in 63.87 km radius and it spits out the pioneer number f(100, 1000) or whatever it is. Because that's the biggest barrier for me. it took a lot of trial and error to get Nix and Hyrda close to what they are size wise in real life. (sorry. not a numbers person)
If there was some tool like that I could go to town adding celestial bodies... The Solar System is a truly amazing place...
Its simple division - 63.87 is 6387/100, so f(6387,100).
Radius is specified in multiples of Earth's radius (which Pioneer defines as 6378135m) so you need to divide. Wikipedia tells me that Charon's radius is 603.5km or 603500m, so 603500/6378135 = 0.095, which is 95/1000, so f(95,1000). That's slightly smaller than what you have (f(10,100), or 10/100, or 0.1).
(Wikipedia also conveniently says the radius is "0.095 Earths", so you can just borrow that number, but it helps to know where it comes from).
Other values use different units, for example mass is in Earth masses, semi-major axis length (effectively orbital radius) is in AU, etc. It all comes down to an appropriate multiplier.
I added your Charon to a branch I was working on last night: https://github.com/s20dan/pioneer/tree/planets
It was too late for alpha 12 but it will be in the next one as well as saturn with rings, finally 😉
Happy hunting for seeds... I doubt that on every arch you will have rings. Several open issues already exists for this so I will just stop here.
The updated seeds for Saturn, Uranus and Netptune that get the rings correct have been added for alpha 12 and have been confirmed working on Linux and Windows.
