Page 3 of 10

Re: Galactic Almanac OXP - Beta 1

Posted: Sun Sep 19, 2021 9:31 pm
by Cholmondely
Very much enjoying the Hesperus legal saga! You have a wicked sense of humour, sir!

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 20, 2021 12:53 am
by LittleBear
Thanks.

I'm a bit short of Oolite time atm, but would you mind just testing something for me with the Stranger stations which are currently unamed.

Bear with me as I'll just have to give a quick summary of what these two OXZs are doing and how the Galactic Almanac works with either OXZ installed.

The two OXZ are multulaty exclusive so if you have System Redux installed then you can't have Planetary Systems and visa versa.

Each OXZ is doing basically the same thing. Both use a peudo-random number so that each allways adds X planets and Y moons to a given system. For both OXZs this number is the same for all players of the game at any given system. The number of planets and moons present will be different though for a player with Planetary Systems installed than for a player with System Redux installed. For all players with System Redux installed it will be X and Y (and always X and Y) and for all players Planetary Systems installed the number will be A and B (and always A and B).

For example, the Screen Shots on the Wiki Page show Lave with System Redux and Mugh's old (but still fully functional) Lave.oxz installed.

As you can see, System Redux has added 1 Moon and 1 Planet to Lave. This will be true for all players of the game with System Redux installed. If you hike up the settings you can cause system redux to add hundreds of planets if you like. The same planets and moons will be added for all players of the game with the same setting for Maximum Planets and Moons. This shows System Redux running with the Default Settings. Murgh's Lave OXP has added the special moon, which as it's a special planet (and as Mugh's OXP was written before display names could be set) it would normally appear as undefined. I've therefore manually set it to Basta and given it the special class of Nomadic Moon to fit Status Que. Everything else in the system is however being automatically named by the OXZ's script.

With Planetary Systems installed you might (by chance) also have 1 planet and 1 moon added. Or the number might be different and with Planetary Systems it might be 3 planets and 1 moon. But the number is always the same for each OXZ set up.

The way the Galactic Almanac sorts out this rather confusing possibility storm is that it simply assignes the first object of each type to appear in the game from a consitant list in the script file. So for all players the first moon to be added by either System Redux, Planetary Systems (or any future OXZ which adds planets or moons) at Lave will always and for all players be called "Arcadia". The first Planet at Lave will always be called "Imperious". The Almanac will just keep reading from its list of 20,000 odd names in order for each additional moon or planet added. If you add more than 20,000 planets and moons to a system they would all be named but moon 20,001 would have the same name as moon 1.

Planets and Moons are easy to cater for and the Almanac will always name these can be automatically detected for as planets, moons or gas giants. I could do the same thing for stations, by just checking for the role station or the scan class station. But that would be no fun as then all stations would be named in a similar style regarless of whether they are Military Bases, wretched hives of scum and villany, taxi stations or home to mad money lending monks. So the Almamanc check the type of station to assign it a name in a suitable style.

Ok. Now on to how System Redux and Strangers world deal with orbital stations to the planets / moons they add. They do the same thing but again with differnt station types.

If you play with System Redux installed then the companion station adding OXZ is Extra Stations for Extra Planets. Again you can't install this if you have Planetary Systems installed.

Extra Stations for Extra Planets rolls its own peudo-random number each time it detects a planet. Its dice depend on tech level as well, so even with three planets present System Redux might only add 1 station, but the maxium it can add to that particular system would be 3 (as only three planets are present). As it's dice are peudo random for all players, the number of stations added is always the same for all players of the game with system redux and extra stations for extra planets installed. The Almanac contains a list of just over 8,000 names for stations added by System Redux and it assines them in just the same way. It reads though it's list and assines each station the next name in the list. So the names are the same for all players of the game.

The effect therefore is if you are playing with System Redux / Extra Planets installed then your planets, moons and the stations orbiting them are all being named. If you have Strangers World installed your planets and moons are being named, but your stations orbiting OXZ planets are not. However the OXZ already contains a list of 8,000 names which could be assigned to the Strangers World stations (with no conflict as you are on one set up or the other). They are not been seen because I just need to add an OR command to the script assigning them. So my script will read if station type = extra stations for extra planets role OR type each stangers world role to fix that. Players on Strangers World will then see the same names assined to the stations which orbit their planets as players with system redux see. Just need the role!

Could you.

Dock at some of the Strangers World stations and save your game.

Open your save file file and seach for docked_station

You'll see some text like this:-

Code: Select all

 <key>docked_station_position</key>
    <array>
	<real>-47125.27734375</real>
	<real>-48630.8828125</real>
	<real>381142.640625</real>
    </array>
    <key>docked_station_role</key>
    <string>coriolis</string>
 
All i need to know really is what it says in the docked_station_role key.

Just in case he's used several roles, could you just fly about a bit and post the names of the roles. If they are all the same then it's just that one role to add to the list in the OXZ's script to fix this.

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 20, 2021 1:08 am
by Cholmondely
LittleBear wrote: Mon Sep 20, 2021 12:53 am
Could you.

Dock at some of the Strangers World stations and save your game.

Open your save file and search for docked_station

You'll see some text like this:-

Code: Select all

 <key>docked_station_position</key>
    <array>
	<real>-47125.27734375</real>
	<real>-48630.8828125</real>
	<real>381142.640625</real>
    </array>
    <key>docked_station_role</key>
    <string>coriolis</string>
 
All i need to know really is what it says in the docked_station_role key.

Just in case he's used several roles, could you just fly about a bit and post the names of the roles. If they are all the same then it's just that one role to add to the list in the OXZ's script to fix this.
Umm... I've so far never managed to save a game at one of Stranger's stations (or at a goodly number of the other stations either...): The F2 screen rarely gives me that option for stations which are not the "main orbital stations", and certainly not for his (except for the ones which replace main orbitals in high TL systems: KHS-2R, KHS-4R & KHS-8R).

I will get back to you with the results for some of those in a couple of days, but I fear that since they replace the main orbitals that the exercise will tell you little new.

If it helps, the markets are different for KOS-M, KOS-P & KHS. KOS-P has high prices for precious metals/gems & raw mineral goods, and low prices for its supplies of computers and machinery. KOS-M has low prices for precious metals and raw mineral goods. KHS is in the middle (as it is the main orbital station for the system).

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 20, 2021 2:09 pm
by LittleBear
Hmm. If they were the main station then they would be named as the main station. Oolite will only allow one station in the system to be the main station. Every other station is added as an OXZ station, so he will be adding them by a custom role as this is the only way to add stations. You can replace the main station with a custom station (as OXZ such as Torus, Globe Stations) but this is still the Main Station and so Torus stations are named with the name for that system. If you do not have Torus installed then it'll be a Isoheadron Station named "Echo of Eternity" (or whatever) if you have torus installed then it'll be a Torus Station named "Echo of Eternity". If Stranger is adding stations rather than just replacing the main stations, then those will have a custom role. I could just assign it by name. And that might be a bit better as then I could specify custom pools for stations with different chractistics.

If you fly about a bit and post the name of each of his stations (exactly as it appears on the screen when you ID target it), then I can just assine the pool based on a station with that name. There is a difference between name and display name. The name is the objects real name given by the author in his name = "My special station"; bit of his ship data. The almanac doesn't change this, it just changes the display name (what the player sees). This is to avoid breaking any other OXZ which might test for a station's name rather than role. But it is also that as I have left the real names the same, I can assign pools by real name. ;-)

Bit surprised you couldn't save. I've been flying around and docking at a lot of OXZ stations and the only one I seem to remember not being able to save at was the planet fall one.

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 20, 2021 5:42 pm
by Cholmondely
Can't dock and save at Stranger's non-KHS stations, or at Sothis (Sothis TC was alright), or at Diso B, Nuits, Naval Sector Commands, CZGFs, SLAPUs, BioSpheres, Liners etc.

Just at Main Orbitals, Rock Hermits, Constores & secondary Superhubs.

Another AppleMac issue with immaterial semi-colons?

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 20, 2021 11:23 pm
by montana05
Cholmondely wrote: Mon Sep 20, 2021 5:42 pm
Can't dock and save at Stranger's non-KHS stations, or at Sothis (Sothis TC was alright), or at Diso B, Nuits, Naval Sector Commands, CZGFs, SLAPUs, BioSpheres, Liners etc.

Just at Main Orbitals, Rock Hermits, Constores & secondary Superhubs.

Another AppleMac issue with immaterial semi-colons?
No, to save on a station it needs to be added when the game loads up, a lot of the older stations are added when the player enters the system or launches.

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 20, 2021 11:32 pm
by montana05
Cholmondely wrote: Mon Sep 20, 2021 5:42 pm
Can't dock and save at Stranger's non-KHS stations, or at Sothis (Sothis TC was alright), or at Diso B, Nuits, Naval Sector Commands, CZGFs, SLAPUs, BioSpheres, Liners etc.

Just at Main Orbitals, Rock Hermits, Constores & secondary Superhubs.

Another AppleMac issue with immaterial semi-colons?
No, to save on a station it needs to be added when the game loads up, a lot of the older stations are added when the player enters the system or launches. Furthermore, the position needs to be stable, if it changes more than a certain amount of meters you will find yourself back at the main station.

Re: Galactic Almanac OXP - Beta 1

Posted: Fri Sep 24, 2021 12:08 pm
by Cholmondely
LittleBear wrote: Mon Sep 20, 2021 2:09 pm
If you fly about a bit and post the name of each of his stations (exactly as it appears on the screen when you ID target it), then I can just assign the pool based on a station with that name. There is a difference between name and display name. The name is the objects real name given by the author in his name = "My special station"; bit of his ship data. The almanac doesn't change this, it just changes the display name (what the player sees). This is to avoid breaking any other OXZ which might test for a station's name rather than role. But it is also that as I have left the real names the same, I can assign pools by real name. ;-)
Righty-ho!

Issue with the save file role and the targeted name not being identical (and with Stranger's blurb possibly saying something different from both)!:

Data copied from save file, or seen for a second on the viewscreen when station targeted and "r" pressed. Information from Scanner Targeting Enhancement 'box' also given for good measure!

• KHS-2R (Aona)
<key>docked_station_role</key>
<string>kos_kiota2Ring_orbiter</string>

But
Ident system locked onto KHS-2R
STE-box: KHS-2R

• KHS-4R (Xexedi, Onrira)
<key>docked_station_role</key>
<string>kos_kiota4Ring_orbiter</string>

But
Ident system locked onto KHS-4R
STE-box: KHS-4R

• KHS-8R (Ceesxe)
<key>docked_station_position</key>
<array>
<real>-72664</real>
<real>82743.1953125</real>
<real>426530.40234375</real>
</array>
<key>docked_station_role</key>
<string>kos_kiota8Ring_orbiter</string>

But
Ident system locked onto KHS-8R
STE-box: KHS-8R

From Stranger's blurb:
All stationary KHS stations have the roles of main system station (with F3F3 shipyards etc) as well as the usual default F8 system market. KOS orbiters have customised markets, adjusted individually for each type of station.

Stations I can't save at (found at the Ensoreus & the Ceesxe systems):

KOS-P
Ident system locked onto KOS-P
STE-box: KOS-P (on line beneath: 16.319km)

KOS-M
Ident system locked onto KOS-M
STE-box: KOS-M

KOS-RJ
Ident system locked onto KOS-RJ
STE-box: KOS-RJ

KOS-RM
Ident system locked onto KOS-RM
STE-box: KOS-RM

KOS-RS
Ident system locked onto KOS-RS
STE-box: KOS-RS

KOS-RT
Ident system locked onto KOS-RT
STE-box: KOS-RT

Re: Galactic Almanac OXP - Beta 1

Posted: Mon Sep 27, 2021 6:30 pm
by LittleBear
@Cholmondely

Could you take this Beta 1.4 out for a spin?

What it should do is this:

If Strangers World replaces the main station then it should be named as the main station.
If Strangers World adds additional stations then these should all be named using the same names pool as those used by Extra Stations for Extra Planets.

The script is just checking for the letters "KHS-" or "KOS-" (as these are common to all Stranger's Stations) and that the station is NOT the main station.

The name should be the same as the name used by Extra Stations for Extra Planets. I have system redux installed and at Lave System Redux has added a station orbiting one of the OXZ planets. The script has named this "Shadow of Raxxla" as it is the first station added by system redux to Lave. I've spawned a station called "KHS-8R". The script has detected this and named the station "Shadow of Raxxla". In game this could not happen as Stranger's World and Extra Stations for Extra planets could not be installed at the same time (so you would never have two stations with the same name). The use of the same names for both OXZ is deliberate though in order that the names of any extra stations added are the same for all players whether they are playing with Strangers World or System Redux installed. Whilst the Almanac will use the same names for the same system naturally no station might be present with one set up and is on another, but the all stations added will use the same name.

As a test could you fire up a new commander at Lave and check what the stations are called.

If Stranger's World is replacing the main station, then it should still be called "Alalonia Avenged"
If Stranger's World has added any orbitals then the first one should be called Shadow of Raxxla
If Strangers World adds no stations at Lave then the name Shadow of Raxxla would not be used (as there is nothing for the Almanac to name) present.

Link to Beta V1.4

https://app.box.com/s/k0zgy7uhfi75lq9yh5ret98xia9kcx8t

If this works okay I'll update the first post and the Wiki Page with a link to Beta1.4

Code Added by 1.4:-

Code: Select all

if(ship.displayName.indexOf("KHS-") >= 0 || ship.displayName.indexOf("KOS-") >= 0 && !ship.system.mainStation) {
missionVariables.random_station_names_local_stranger_count++;
var strangerGrid  = Math.floor(system.ID+(256 * galaxyNumber));
if (missionVariables.random_station_names_local_stranger_count === 1) var strangerdisplay = extrapool1[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count === 2) var strangerdisplay = extrapool2[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count === 3) var strangerdisplay = extrapool3[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count === 4) var strangerdisplay = extrapool4[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count> 4) {
var strangerstart = Math.floor(missionVariables.random_station_names_local_stranger_count-5);
var strangeradvance = Math.floor(strangerstart*64);
var strangerjumpGrid = Math.floor(strangeradvance+system.ID+(256 * galaxyNumber));
// Look 4 Galaxies ahead (So G1 pairs with G5, G2 with G6 and so on).
var strangerjumpPosition = Math.floor(strangerjumpGrid+1024+missionVariables.random_station_names_local_stranger_count);
var strangerdisplay = extrapool4[strangerjumpPosition &2047];
}
ship.displayName = ship.displayName+" Orbital: "+strangerdisplay;
ship.beacon = ship.displayName;
ship.beaconLabel = ship.displayName; // Add Station Name to the ASC display.  
}
Screen Shot showing Lave with System Redux, but a Stranger's World Station also added.

Image

Re: Galactic Almanac OXP - Beta 1

Posted: Thu Sep 30, 2021 1:01 am
by Cholmondely
LittleBear wrote: Mon Sep 27, 2021 6:30 pm
@Cholmondely

Could you take this Beta 1.4 out for a spin?

What it should do is this:

If Strangers World replaces the main station then it should be named as the main station.
If Strangers World adds additional stations then these should all be named using the same names pool as those used by Extra Stations for Extra Planets.

The script is just checking for the letters "KHS-" or "KOS-" (as these are common to all Stranger's Stations) and that the station is NOT the main station.

The name should be the same as the name used by Extra Stations for Extra Planets. I have system redux installed and at Lave System Redux has added a station orbiting one of the OXZ planets. The script has named this "Shadow of Raxxla" as it is the first station added by system redux to Lave. I've spawned a station called "KHS-8R". The script has detected this and named the station "Shadow of Raxxla". In game this could not happen as Stranger's World and Extra Stations for Extra planets could not be installed at the same time (so you would never have two stations with the same name). The use of the same names for both OXZ is deliberate though in order that the names of any extra stations added are the same for all players whether they are playing with Strangers World or System Redux installed. Whilst the Almanac will use the same names for the same system naturally no station might be present with one set up and is on another, but the all stations added will use the same name.

As a test could you fire up a new commander at Lave and check what the stations are called.

If Stranger's World is replacing the main station, then it should still be called "Alalonia Avenged"
If Stranger's World has added any orbitals then the first one should be called Shadow of Raxxla
If Strangers World adds no stations at Lave then the name Shadow of Raxxla would not be used (as there is nothing for the Almanac to name) present.

Link to Beta V1.4

https://app.box.com/s/k0zgy7uhfi75lq9yh5ret98xia9kcx8t

If this works okay I'll update the first post and the Wiki Page with a link to Beta1.4

Code Added by 1.4:-

Code: Select all

if(ship.displayName.indexOf("KHS-") >= 0 || ship.displayName.indexOf("KOS-") >= 0 && !ship.system.mainStation) {
missionVariables.random_station_names_local_stranger_count++;
var strangerGrid  = Math.floor(system.ID+(256 * galaxyNumber));
if (missionVariables.random_station_names_local_stranger_count === 1) var strangerdisplay = extrapool1[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count === 2) var strangerdisplay = extrapool2[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count === 3) var strangerdisplay = extrapool3[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count === 4) var strangerdisplay = extrapool4[strangerGrid &2047];
if (missionVariables.random_station_names_local_stranger_count> 4) {
var strangerstart = Math.floor(missionVariables.random_station_names_local_stranger_count-5);
var strangeradvance = Math.floor(strangerstart*64);
var strangerjumpGrid = Math.floor(strangeradvance+system.ID+(256 * galaxyNumber));
// Look 4 Galaxies ahead (So G1 pairs with G5, G2 with G6 and so on).
var strangerjumpPosition = Math.floor(strangerjumpGrid+1024+missionVariables.random_station_names_local_stranger_count);
var strangerdisplay = extrapool4[strangerjumpPosition &2047];
}
ship.displayName = ship.displayName+" Orbital: "+strangerdisplay;
ship.beacon = ship.displayName;
ship.beaconLabel = ship.displayName; // Add Station Name to the ASC display.  
}
Screen Shot showing Lave with System Redux, but a Stranger's World Station also added.

Image
Replacing 1.2 with 1.4 and starting a new Jameson at Lave:

01: GalCop Station Buoy: Avalonia Avenged
02: Satellite Telescope: Hephaestus 186
03: COMLR Satellite: Callaghan 157
04: COM Satellite Diaz 186
05: Rock Hermit: Zacela's Greeting
06: Witchpoint Beacon ZF1-007
07: Abandoned Rock Hermit

Lave System currently consist of one star and one planet only. My oxp's include 23 of the Stranger's World suite OXP's (including Stranger's FPO Lave & Orbital Stations).

If I add Murgh's Lave, I then get the Moon (Basta, thank you!) and the following alterations
02 moves from Hephaestus 186 to 386
03 moves from Callaghan 157 to 517
04 moves from Diaz 186 to 326
05 is now COM Satellite Porphyrion 181
06 is now Rock Hermit: Lowell's Exchange
07 is now Abandoned Rock Hermit
08 is now Witchpoint Beacon ZF1-007

Re: Galactic Almanac OXP - Beta 1

Posted: Fri Oct 01, 2021 9:33 am
by Cholmondely
Launched and immediately re-docked. The number of planets increased fourfold, the number of moons tripled!
(I notice that the planets and moons are numbered indiscriminately: Is this a good idea? We normally discriminate mentally between the two, even if the game code does not!)

9 Orbitals:
The main station is indeed Avalonia Avenged. But it stubbornly remains a Coriolis.
The only other station is Lave Academy (Galactic Empress).
The other orbitals are the usual sprinkling of rock hermits, satellites & the witchpoint beacon.

There are no Kiota Orbital Stations from Strangers World present.

What next?

I usually find Ensoreus an excellent hunting ground for SW KOS's.

By the way, I can't get the Almanac's MFD to show. When I cycle my MFDs it never seems to pop up as an option. Does it need registering with HUDSelector as one of the "premium" MFDs?

Re: Galactic Almanac OXP - Beta 1

Posted: Sun Oct 03, 2021 9:24 pm
by Slartibartfast
Hi

i have made only a short test ... very nice :-)

but - is it not a little bit oversized to give any f.....g asteroid a special name?

f.x.: on fight in an asteroid field - i think - that's to much ( useless ) information

matthias

Re: Galactic Almanac OXP - Beta 1

Posted: Tue Oct 05, 2021 11:54 am
by LittleBear
@Cholmondely.
The Almanac does not change the stations or types of stations present in the game, it just names any stations / planets / moons which are present. Unless you have an OXZ installed which changes Lave Station from the default Coriolis then it will be a Coriolis, but with the name assigned by the Almanac to the Lave Main Station. It seems to be working as intended therefore. Similarly with additional stations added by OXZs. The Almanac contains a bank of names for each type of station which could appear for all 2,048 systems in the game. But those names will only be used if an OXZ actually adds a station to that system. As Strangers World does not add any stations to Lave, then none of the names stored in the array for Stranger's stations for Lave are used (but would be if either Stranger or another author added some to Lave in the future).

The MDF is not implemented yet. Although you can buy one there is no code yet to actually run it. As a rough plan, the next versions will be:

1.5 - Add MFD code.
1.6 - Add automatic naming for any station not on the list on the wiki page (except unique stations or where the author has set the Almanac to Off).
1.7 - Add Script Key support for custom names rolled off using the Generator.
1.8 - Add procedurally generated Comms Messages for stations.
1.9 - Add further news broadcasts detailing bugs found in Beta Playtesting.

@Slartibartfast

As (depending on your OXZ set-up) there can be dozens or even hundreds of asteroids present in any given system, naming the asteroids was really a code test to check that the code could handle numerous objects of the same type appearing and assign each one a unique and persistent name. If the code could handle it for hundreds of asteroids, then I knew it would be okay however many planets / moons or stations other OXZs generated.

You can however turn each naming system on or off individually in the settings menu. If you select the Galactic Almanac on the F4 Screen and then select the Settings Menu, you can turn off Asteroid naming as shown in the screen shot:-

Image

Re: Galactic Almanac OXP - Beta 1

Posted: Tue Oct 05, 2021 9:58 pm
by Slartibartfast
Hi LittleBear

...sorry -- maybe i'm blind
You can however turn each naming system on or off individually in the settings menu. If you select the Galactic Almanac on the F4 Screen and then select the Settings Menu, you can turn off Asteroid naming as shown in the screen shot:-
i havn't seen that :(

matthias

Re: Galactic Almanac OXP - Beta 1

Posted: Sun Oct 10, 2021 1:52 pm
by LittleBear
The MFD is now done. In fight Data on the system is shown at the top (name, tech level, government, economy, inhabitants, local star name and number of worlds and stations present). Data on the current object targeted with the ASC is displayed underneath. For natural objects this is the name, class and composition (minerals for rocky moons & planets and a percentage chemical composition for Stars and Gas Giants). For stations and carriers and any ships with beacons its the type of ship / station, name and Manufacturer. Distances update in real time as you fly. Data on Planets and Moons is now added. Still need to add the data for Manufactures of stations, but the code to do it is done. Not released yet as needs a playtest. Some Screen shots of cycling through targets on the ASC:-

Image
Image
Image