Progress
Moderators: winston, another_commander
-
- Quite Grand Sub-Admiral
- Posts: 6683
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
Many thanks. Test #17 has been inserted in the Material Test Suite. I have used a "master" gloss value of 0.8 in order to showcase the effect a bit better.
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Progress
In the latest build, a change has been made to the
commsMessageReceived
world event. Now, if the player.commsMessage
function is called, the commsMessageReceived
will fire, but with a null value for the sender
parameter. This unifies all communications received by the player, but any script that implements commsMessageReceived
will need to check for a null value before accessing the sender
parameter, otherwise an error could occur.Re: Progress
Are there any plans for updating the system star?
and perhaps the citylights with on/off menu option
and perhaps the citylights with on/off menu option
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Progress
In the latest Oolite builds, we've added access to the shipyard of each station. Use the
The Javascript Station wiki page has been updated with details on each of these properties/methods.
shipyard
property to view a list of ships currently available at the station, use the addShipToShipyard
method to add a ship you define, and the removeShipFromShipyard
method to remove a ship. The Javascript Station wiki page has been updated with details on each of these properties/methods.
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Progress
In the next nightly is the ability to limit star and nebula textures to particular galaxies, providing the opportunity to make galaxies more visually unique.
At the same time, in order to make the merging of star and nebula textures more logical and consistent, they are now being merged on the "texture" key. Therefore, if an OXP overrides the "oolite-nebula-1.png" definition in a "nebulatextures.plist" file (for instance, adding a galaxy or changing the probability), they can be confident this change has been applied. To allow for the same texture to appear in multiple galaxies, an optional "key" property can be added to the dictionary, which will take the place of the "texture" property when merging the arrays.
To demonstrate this, use the following in place of the current nebulatextures.plist (or put it into your AddOns folder), which will allocate one nebula image per galaxy.
If no "galaxy" property is set, existing behaviour should be unchanged.
At the same time, in order to make the merging of star and nebula textures more logical and consistent, they are now being merged on the "texture" key. Therefore, if an OXP overrides the "oolite-nebula-1.png" definition in a "nebulatextures.plist" file (for instance, adding a galaxy or changing the probability), they can be confident this change has been applied. To allow for the same texture to appear in multiple galaxies, an optional "key" property can be added to the dictionary, which will take the place of the "texture" property when merging the arrays.
To demonstrate this, use the following in place of the current nebulatextures.plist (or put it into your AddOns folder), which will allocate one nebula image per galaxy.
Code: Select all
(
{
texture = "oolite-nebula-1.png";
probability = 1.0;
galaxy = 0;
},
{
texture = "oolite-nebula-2.png";
probability = 1.0;
galaxy = 1;
},
{
texture = "oolite-nebula-3.png";
probability = 1.0;
galaxy = 2;
},
{
texture = "oolite-nebula-4.png";
probability = 1.0;
galaxy = 3;
},
{
texture = "oolite-nebula-1.png";
key = "nebula1-gal4";
probability = 1.0;
galaxy = 4;
},
{
texture = "oolite-nebula-2.png";
key = "nebula2-gal5";
probability = 1.0;
galaxy = 5;
},
{
texture = "oolite-nebula-3.png";
key = "nebula3-gal6";
probability = 1.0;
galaxy = 6;
},
{
texture = "oolite-nebula-4.png";
key = "nebula4-gal7";
probability = 1.0;
galaxy = 7;
}
)
- Redspear
- ---- E L I T E ----
- Posts: 2687
- Joined: Thu Jun 20, 2013 10:22 pm
- Location: On the moon Thought, orbiting the planet Ignorance.
Re: Progress
Nice Thanks
- phkb
- Impressively Grand Sub-Admiral
- Posts: 4830
- Joined: Tue Jan 21, 2014 10:37 pm
- Location: Writing more OXPs, because the world needs more OXPs.
Re: Progress
In the next nightly is the handling of a new plist file: equipment-overrides.plist.
This is designed to allow OXP authors to more easily update existing equipment items without needing to copy the entire equipment.plist entry in order to do so. Also, it reduces the potential conflicts where two OXP's want to update the same equipment item. It doesn't solve the issue of two OXP's wanting to update the same properties of said equipment item - the last overrides file will still be the winner here, which is the same for the shipdata-overrides file.
The format of the equipment-overrides.plist is slightly different to the equipment.plist file by necessity. A sample file is shown, where some (but not all) of the core pulse laser properties are being updated:The biggest difference is that this is a dictionary of dictionaries file (similar to the shipdata-overrides.plist file), where the equipment key is the primary dictionary key. techlevel, price, short and long descriptions are now keys, along with all the other settings.
This is designed to allow OXP authors to more easily update existing equipment items without needing to copy the entire equipment.plist entry in order to do so. Also, it reduces the potential conflicts where two OXP's want to update the same equipment item. It doesn't solve the issue of two OXP's wanting to update the same properties of said equipment item - the last overrides file will still be the winner here, which is the same for the shipdata-overrides file.
The format of the equipment-overrides.plist is slightly different to the equipment.plist file by necessity. A sample file is shown, where some (but not all) of the core pulse laser properties are being updated:
Code: Select all
{
"EQ_WEAPON_PULSE_LASER" = {
techlevel = 7;
price = 50000;
short_description = "Laser Pointer";
long_description = "A simple, all purpose (but weak) laser. Only useful for irritating pirates.";
available_to_all = YES;
weapon_info = {
color = "whiteColor";
};
};
}
- Redspear
- ---- E L I T E ----
- Posts: 2687
- Joined: Thu Jun 20, 2013 10:22 pm
- Location: On the moon Thought, orbiting the planet Ignorance.
Re: Progress
Awesome
Thanks phkb... and thanks for the example too
With a bit of luck I might get to do some oxp updating soon.
-
- Quite Grand Sub-Admiral
- Posts: 6683
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
Just a quick note to let you know that there has been a visual improvement on the atmosphere shader. Now, when close to the planet, you can see a blue haze at the very edge of the atmosphere. 5000 words equivalent below (planets shown are Lave and Anlama):
-
- Quite Grand Sub-Admiral
- Posts: 6683
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
Thanks to Commander_X, we now have the possibility to specify normal and specular maps for our custom planets in Oolite. The specular maps go into the normal maps' alpha channel and should represent seas as values close to 1.0 and land as values close to 0.0. To enable them in your planetinfo.plist, just use the key
And you should get something like this:
Again, many thanks to Commander_X (and I am terribly sorry I forgot to credit you in commit 938d49e that got this feature in).
texture_normspec
like this:
Code: Select all
texture_normspec = "gal-1-Lave_ns.png";
And you should get something like this:
Again, many thanks to Commander_X (and I am terribly sorry I forgot to credit you in commit 938d49e that got this feature in).
-
- ---- E L I T E ----
- Posts: 675
- Joined: Sat Aug 09, 2014 4:16 pm
Re: Progress
No worries! Happy to see this in!
-
- Quite Grand Sub-Admiral
- Posts: 6683
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
In tomorrow's nightly...
Illumination mapping on custom planets is now a thing. The illumination map should get embedded in the alpha channel of the planet's diffuse map. Low alpha values indicate high illumination and vice versa.
To see what this is all about first hand, this OXP will turn Lave into Earth. You should be able to see something akin to what is seen in the above screenshots. Use it with the nightly from commit 3b91106 or later.
https://drive.google.com/file/d/1AUqAPa ... sp=sharing
Illumination mapping on custom planets is now a thing. The illumination map should get embedded in the alpha channel of the planet's diffuse map. Low alpha values indicate high illumination and vice versa.
To see what this is all about first hand, this OXP will turn Lave into Earth. You should be able to see something akin to what is seen in the above screenshots. Use it with the nightly from commit 3b91106 or later.
https://drive.google.com/file/d/1AUqAPa ... sp=sharing
-
- Quite Grand Sub-Admiral
- Posts: 6683
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
The city lights discusssion was split to its own topic in order to keep minimum clutter in the Progress thread.
-
- Quite Grand Sub-Admiral
- Posts: 6683
- Joined: Wed Feb 28, 2007 7:54 am
Re: Progress
There has been a sloght modification in our shaders recently, but unfortunately no nightly binary was generated for it yet. Planet, ships and atmosphere shaders can now define lightsource radiance and scene exposure multipliers. This enables better control of the lighting in the game although, at this first step, the values are hardcoded. Increasing the scene lighting has the immediate effect of making everything more visible and easily distinguishable (and probably more realistic, too).
The two macros controlling this are MULTIPLIER_LIGHTSRCRADIANCE and MULITPLIER_EXPOSURE. By default they are currently both set to 1.0 so you will not see any difference to what we had till now. But you can experiment with them and see how the lighting changes while those two are adjusted. Example below:
Default settings (MULTIPLIER_LIGHTSRCRADIANCE 1.0, MULITPLIER_EXPOSURE 1.0), same as we've always had until now:
With MULTIPLIER_LIGHTSRCRADIANCE at 4.0 and MULITPLIER_EXPOSURE at 2.5 in both oolite-default-shader.fragment and oolite-default-planet.fragment. The lightsource (sun) now emits four times more light than before, while the increased exposure allows for more distinguishable details on the dark side of objects:
Although there is currently no nighly build containing this change, you can easily download the new shaders from these links:
https://raw.githubusercontent.com/Oolit ... t.fragment
https://raw.githubusercontent.com/Oolit ... r.fragment
https://raw.githubusercontent.com/Oolit ... e.fragment
and copy them in the latest available nightly Resources/Shaders folder.
The multipliers are not limited. Setting the light source radiance too high will result in saturation of almost all colors. Use them wisely.
The two macros controlling this are MULTIPLIER_LIGHTSRCRADIANCE and MULITPLIER_EXPOSURE. By default they are currently both set to 1.0 so you will not see any difference to what we had till now. But you can experiment with them and see how the lighting changes while those two are adjusted. Example below:
Default settings (MULTIPLIER_LIGHTSRCRADIANCE 1.0, MULITPLIER_EXPOSURE 1.0), same as we've always had until now:
With MULTIPLIER_LIGHTSRCRADIANCE at 4.0 and MULITPLIER_EXPOSURE at 2.5 in both oolite-default-shader.fragment and oolite-default-planet.fragment. The lightsource (sun) now emits four times more light than before, while the increased exposure allows for more distinguishable details on the dark side of objects:
Although there is currently no nighly build containing this change, you can easily download the new shaders from these links:
https://raw.githubusercontent.com/Oolit ... t.fragment
https://raw.githubusercontent.com/Oolit ... r.fragment
https://raw.githubusercontent.com/Oolit ... e.fragment
and copy them in the latest available nightly Resources/Shaders folder.
The multipliers are not limited. Setting the light source radiance too high will result in saturation of almost all colors. Use them wisely.
- Redspear
- ---- E L I T E ----
- Posts: 2687
- Joined: Thu Jun 20, 2013 10:22 pm
- Location: On the moon Thought, orbiting the planet Ignorance.
Re: Progress
Awesome! I look forward to playing with this