MasterClass: How to OXP (updating SoThisTC)
Moderators: winston, another_commander
- Cholmondely
- Archivist
- Posts: 5367
- Joined: Tue Jul 07, 2020 11:00 am
- Location: The Delightful Domains of His Most Britannic Majesty (industrial? agricultural? mainly anything?)
- Contact:
Re: MasterClass: How to OXP (updating SoThisTC)
Tweaked.
Docked.
Docked.
Comments wanted:
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
Re: MasterClass: How to OXP (updating SoThisTC)
Definitely a new market, but the big question is, how will it differ from the main market? If it follows the main market, then there's little to no profit in zipping between the Sothis and the main station. In that case we're basically expanding the capacity of the main station market. Game wise that makes sense, since Sothis is positioned quite close to the main station and one might assume that the prices would converge.
If the bulk market is wildly different then we're sort of making a cheat.
What is the purpose of the Trade Center? In my original vision, it was a business center with a tweaked speciality cargo market from the new cargoes oxp. Bulk market is for others.
One possibility is to create a small market (low capacity) with some hopefully interesting differences. If you're lucky, you could get a nice price for your luxuries, but the station would only buy 7 units. That would give some flavour and an incentive to visit the station, but would not break game economy. At least not a lot .
- Cholmondely
- Archivist
- Posts: 5367
- Joined: Tue Jul 07, 2020 11:00 am
- Location: The Delightful Domains of His Most Britannic Majesty (industrial? agricultural? mainly anything?)
- Contact:
Re: MasterClass: How to OXP (updating SoThisTC)
According to the statistics, the Sothis is considerably larger than a Coriolis/Ico/Dodo (1.5km/side instead of 1km/side). If the market is minute, and there is no shipyard, what is all that extra space used for?spara wrote: ↑Tue Apr 27, 2021 8:11 amDefinitely a new market, but the big question is, how will it differ from the main market? If it follows the main market, then there's little to no profit in zipping between the Sothis and the main station. In that case we're basically expanding the capacity of the main station market. Game wise that makes sense, since Sothis is positioned quite close to the main station and one might assume that the prices would converge.
If the bulk market is wildly different then we're sort of making a cheat.
What is the purpose of the Trade Center? In my original vision, it was a business center with a tweaked speciality cargo market from the new cargoes oxp. Bulk market is for others.
One possibility is to create a small market (low capacity) with some hopefully interesting differences. If you're lucky, you could get a nice price for your luxuries, but the station would only buy 7 units. That would give some flavour and an incentive to visit the station, but would not break game economy. At least not a lot .
Sothis:
Mass: 2,523,898.88t
Size: 1503 x 1503 x 1589m (radius 1547m)
Ebanks: 390; Recharge: extreme; No laser
Coriolis:
Mass: ?
Size: 1000 x 1000 x 1000
Ebanks: ?
Comments wanted:
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
- montana05
- ---- E L I T E ----
- Posts: 1166
- Joined: Mon May 30, 2016 3:54 am
- Location: lurking in The Devils Triangle (G1)
Re: MasterClass: How to OXP (updating SoThisTC)
Ship production ? Could create a market slightly higher for the oolite-shipyard group, include a shipyard exclusively selling ships produced there and park some of this offers out of the station, ready to get picked up.Cholmondely wrote: ↑Tue Apr 27, 2021 9:06 amAccording to the statistics, the Sothis is considerably larger than a Coriolis/Ico/Dodo (1.5km/side instead of 1km/side). If the market is minute, and there is no shipyard, what is all that extra space used for?
Scars remind us where we've been. They don't have to dictate where we're going.
- Cholmondely
- Archivist
- Posts: 5367
- Joined: Tue Jul 07, 2020 11:00 am
- Location: The Delightful Domains of His Most Britannic Majesty (industrial? agricultural? mainly anything?)
- Contact:
Re: MasterClass: How to OXP (updating SoThisTC)
Then there would be slightly higher demand for alloys, machinery & computers for ship production.montana05 wrote: ↑Tue Apr 27, 2021 9:19 amShip production ? Could create a market slightly higher for the oolite-shipyard group, include a shipyard exclusively selling ships produced there and park some of this offers out of the station, ready to get picked up.Cholmondely wrote: ↑Tue Apr 27, 2021 9:06 amAccording to the statistics, the Sothis is considerably larger than a Coriolis/Ico/Dodo (1.5km/side instead of 1km/side). If the market is minute, and there is no shipyard, what is all that extra space used for?
Unsure whether totally raw unprocessed minerals & radioactives (are they raw & unprocessed) would also be in demand. It would make sense to have factories processing such things in orbit.
Would we need to increase the size of the docking bay? Or introduce another (insect queens only!)?
Comments wanted:
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
- montana05
- ---- E L I T E ----
- Posts: 1166
- Joined: Mon May 30, 2016 3:54 am
- Location: lurking in The Devils Triangle (G1)
Re: MasterClass: How to OXP (updating SoThisTC)
For a large station close to the main station factories would come to my mind. Ship production was an idea to make the location interesting. Offering only some ships but cheaper than at other locations make it worth to visit. However, including only my first ideas would require some additional lessons, so the decision how to proceed is with Master spara.Cholmondely wrote: ↑Tue Apr 27, 2021 9:27 amThen there would be slightly higher demand for alloys, machinery & computers for ship production.montana05 wrote: ↑Tue Apr 27, 2021 9:19 amShip production ? Could create a market slightly higher for the oolite-shipyard group, include a shipyard exclusively selling ships produced there and park some of this offers out of the station, ready to get picked up.Cholmondely wrote: ↑Tue Apr 27, 2021 9:06 amAccording to the statistics, the Sothis is considerably larger than a Coriolis/Ico/Dodo (1.5km/side instead of 1km/side). If the market is minute, and there is no shipyard, what is all that extra space used for?
Unsure whether totally raw unprocessed minerals & radioactives (are they raw & unprocessed) would also be in demand. It would make sense to have factories processing such things in orbit.
Would we need to increase the size of the docking bay? Or introduce another (insect queens only!)?
Coriolis (core):
Mass: 514,483.904 t
Size: 1000 x 1000 x 1034
Ebanks: 25000/64 = 390 / Recharge: extreme
Scars remind us where we've been. They don't have to dictate where we're going.
Re: MasterClass: How to OXP (updating SoThisTC)
The idea of expanding the ship-market is an interesting one. With the current version of Oolite it's possible to tamper with the shipyard. Previously the shipyard just was or wasn't. Maybe there could be a wide selection of ships suitable for interstellar cargo transport available from Sothises? Like Pythons and Boas. Or we could include some ridiculously expensive or fancy ships (like the revised version of SuperCobra from Random Hits or Teretrurus or Imperial trader/courier) to be sold only in Sothises.
All in all Sothis station is huge and there should be some in-game justification for that. Adding a large market to a system is not a good idea because of the game balance. After we've fixed the market, it's of course totally possible to change the market capacity to what ever people want in their own games. A large market should not be a default though.
The game already has a "business" classification for certain goods. I think we'll start with that. We'll create a market with emphasis on those and think about the shipyard later. Less is usually more, so maybe the idea of a shipyard focusing on cargo ships is the most reasonable.
All in all Sothis station is huge and there should be some in-game justification for that. Adding a large market to a system is not a good idea because of the game balance. After we've fixed the market, it's of course totally possible to change the market capacity to what ever people want in their own games. A large market should not be a default though.
The game already has a "business" classification for certain goods. I think we'll start with that. We'll create a market with emphasis on those and think about the shipyard later. Less is usually more, so maybe the idea of a shipyard focusing on cargo ships is the most reasonable.
- montana05
- ---- E L I T E ----
- Posts: 1166
- Joined: Mon May 30, 2016 3:54 am
- Location: lurking in The Devils Triangle (G1)
Re: MasterClass: How to OXP (updating SoThisTC)
I am aware it's going to far but depending on the system economy/tech level different ships could be offered. Focus on freighters in average and on luxury ships in rich systems for example. The logic is basically the same just some additional modifications would be required.spara wrote: ↑Tue Apr 27, 2021 10:29 amThe idea of expanding the ship-market is an interesting one. With the current version of Oolite it's possible to tamper with the shipyard. Previously the shipyard just was or wasn't. Maybe there could be a wide selection of ships suitable for interstellar cargo transport available from Sothises? Like Pythons and Boas. Or we could include some ridiculously expensive or fancy ships (like the revised version of SuperCobra from Random Hits or Teretrurus or Imperial trader/courier) to be sold only in Sothises.
All in all Sothis station is huge and there should be some in-game justification for that. Adding a large market to a system is not a good idea because of the game balance. After we've fixed the market, it's of course totally possible to change the market capacity to what ever people want in their own games. A large market should not be a default though.
The game already has a "business" classification for certain goods. I think we'll start with that. We'll create a market with emphasis on those and think about the shipyard later. Less is usually more, so maybe the idea of a shipyard focusing on cargo ships is the most reasonable.
Btw I am currently "borrowing" from your Random Hits OXP for my drug cartel biospheres, my respect, your collection in descriptions.plist is outstanding.
Scars remind us where we've been. They don't have to dictate where we're going.
Re: MasterClass: How to OXP (updating SoThisTC)
I wish I could take any credit on those. With RandomHits, I just upgraded the OXP to the current standards and adopted the OXP for maintenance. I think it's most likely LittleBear you need to thank for the descriptions, that sort of things seem to be his forte.
- Cholmondely
- Archivist
- Posts: 5367
- Joined: Tue Jul 07, 2020 11:00 am
- Location: The Delightful Domains of His Most Britannic Majesty (industrial? agricultural? mainly anything?)
- Contact:
Re: MasterClass: How to OXP (updating SoThisTC)
If a list of useful annotated .oxp's for dark-siders could be compiled, I could easily integrate it into our wiki.spara wrote: ↑Tue Apr 27, 2021 10:53 amI wish I could take any credit on those. With RandomHits, I just upgraded the OXP to the current standards and adopted the OXP for maintenance. I think it's most likely LittleBear you need to thank for the descriptions, that sort of things seem to be his forte.
Comments wanted:
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
- montana05
- ---- E L I T E ----
- Posts: 1166
- Joined: Mon May 30, 2016 3:54 am
- Location: lurking in The Devils Triangle (G1)
Re: MasterClass: How to OXP (updating SoThisTC)
Pretty difficult to say, it depends on what you are looking for and how deep is your knowledge before. The following list is my personally choice, no offense meant, and I am happy to correct myself in case I made a mistake:Cholmondely wrote: ↑Tue Apr 27, 2021 11:55 amIf a list of useful annotated .oxp's for dark-siders could be compiled, I could easily integrate it into our wiki.
When it comes to graphics (textures, shadows, models) my first choice would be Griff, I do like several other designs, but he is still my No 1
js ? If you know the language probably phkb or cim, once again there are other developers I learned from, Norby or Thargoid for example.
shipdata.plist ? No preference, I found errors in most of them (including mine ), it seems to be the major part where copy & past bugs and typos happen.
My simple suggestion would be to look in as much OXP's as you can/have time, you might don't need it now but in future you (hopefully) remember that somebody fixed already a problem you are facing now.
Scars remind us where we've been. They don't have to dictate where we're going.
Re: MasterClass: How to OXP (updating SoThisTC)
Let's fix the market (F8)
For this we'll ned to tweak shipdata. We are not going to change anything in the Sothis oxp, but let's have a quick look at its shipdata.plist just for fun. The only trace of any market definition is the commented out line saying
In the old days this (no market definition) meant that the main station market definition was copied to the secondary station. That part of the core game changed and novadays the default action is not to have market at all.
Another change from the old days is the change from a very cryptic arrays of numbers to a totally understandable market definitions. If you happen to stumble on my old conversion script from da old market definitions to new market definitions, you'll see the horror.
Let's jump back to SothisTC, our overriding oxp and to the file shipdata-overrides.plist. Oolite works so that it first reads all definitions from all shipdata.plist files around. There's one in the core game resources and up to one in every oxp. After that Oolite reads all the definitions in shipdata-overrides.plist files on top of the previously read definitions. This allows us to create overriding oxps. We can override core definitions, but also other oxps if needed.
The file shipdata-overrides.plist has definitions for "sothis_station" and "kw_buoy". These names must naturally match the ones we are overriding. The first one defines the properties of the station, the second one the buoy. We're currently defining the shipyard to be non existent, renaming the station to "Sothis Trade Center", setting docking clearance to be required, setting station roll to 0.18 to make the station feel more majestic and defining some roles for it.
To make the market work, we need to add some keys and values to "sothis_station". These should do the trick:
Let's go over these.
Market_capacity sets a generic quantity limit for each good. Market_monitored sets the market to follow the laws of GalCop on legality of the goods. More info on these in the wiki: http://wiki.alioth.net/index.php/Shipdata.plist
To understand market_definition we need to understand a bit on the market mechanic in the game. A system has a primary market and secondary markets. The primary market is set in trade-goods.plist file which can be found from the core resources. It defines all trade goods in the game and their characteristics. More info on those in the wiki http://wiki.alioth.net/index.php/Trade-goods.plist. The secondary market is defined with respect to the primary market.
In our market_definition we set all goods with class "oolite-business" to have a price range of 0.9-1.5 times the primary market price. The quantity is a bit more complex. First the quantity on the primary market is scaled to match to secondary market capacity. In this case the calculation would be 15/127*primary. Then that number is multiplied with 0.5-0.9 to ensure some capacity.
All other goods are set to 0 capacity.
After this the market should be "alive" and should offer some selling opportunities. The market is very limited and can naturally be tweaked in any manner. I'm happy to help in tweaking the market to better suit the narrative.
For this we'll ned to tweak shipdata. We are not going to change anything in the Sothis oxp, but let's have a quick look at its shipdata.plist just for fun. The only trace of any market definition is the commented out line saying
// market="nestmarket"
. That most likely means that the shipdata.plist of this OXP was originally constructed on top of another oxp by the same author: Wasps. Wasps actually has that exact same line, but active.In the old days this (no market definition) meant that the main station market definition was copied to the secondary station. That part of the core game changed and novadays the default action is not to have market at all.
Another change from the old days is the change from a very cryptic arrays of numbers to a totally understandable market definitions. If you happen to stumble on my old conversion script from da old market definitions to new market definitions, you'll see the horror.
Let's jump back to SothisTC, our overriding oxp and to the file shipdata-overrides.plist. Oolite works so that it first reads all definitions from all shipdata.plist files around. There's one in the core game resources and up to one in every oxp. After that Oolite reads all the definitions in shipdata-overrides.plist files on top of the previously read definitions. This allows us to create overriding oxps. We can override core definitions, but also other oxps if needed.
The file shipdata-overrides.plist has definitions for "sothis_station" and "kw_buoy". These names must naturally match the ones we are overriding. The first one defines the properties of the station, the second one the buoy. We're currently defining the shipyard to be non existent, renaming the station to "Sothis Trade Center", setting docking clearance to be required, setting station roll to 0.18 to make the station feel more majestic and defining some roles for it.
To make the market work, we need to add some keys and values to "sothis_station". These should do the trick:
Code: Select all
market_capacity = 15;
market_definition = (
{
"type" = "class";
"name" = "oolite-business";
"price_multiplier" = 1.2;
"price_randomiser" = 0.3;
"quantity_multiplier" = 0.7;
"quantity_randomiser" = 0.2;
},
{
"type" = "default";
"capacity" = 0;
}
);
market_monitored = yes;
Market_capacity sets a generic quantity limit for each good. Market_monitored sets the market to follow the laws of GalCop on legality of the goods. More info on these in the wiki: http://wiki.alioth.net/index.php/Shipdata.plist
To understand market_definition we need to understand a bit on the market mechanic in the game. A system has a primary market and secondary markets. The primary market is set in trade-goods.plist file which can be found from the core resources. It defines all trade goods in the game and their characteristics. More info on those in the wiki http://wiki.alioth.net/index.php/Trade-goods.plist. The secondary market is defined with respect to the primary market.
In our market_definition we set all goods with class "oolite-business" to have a price range of 0.9-1.5 times the primary market price. The quantity is a bit more complex. First the quantity on the primary market is scaled to match to secondary market capacity. In this case the calculation would be 15/127*primary. Then that number is multiplied with 0.5-0.9 to ensure some capacity.
All other goods are set to 0 capacity.
After this the market should be "alive" and should offer some selling opportunities. The market is very limited and can naturally be tweaked in any manner. I'm happy to help in tweaking the market to better suit the narrative.
- montana05
- ---- E L I T E ----
- Posts: 1166
- Joined: Mon May 30, 2016 3:54 am
- Location: lurking in The Devils Triangle (G1)
Re: MasterClass: How to OXP (updating SoThisTC)
Sorry to interrupt, promised my last statement for today. When it comes to override the alphabetic order (at least with Windows) is critical. An override starting with "a" will be (again) overridden by an similar override starting with "z" for example. This is based on experience facing problems in the past where I lost (a lot) time to find out why my override didn't work as intended.spara wrote: ↑Tue Apr 27, 2021 1:19 pmOolite works so that it first reads all definitions from all shipdata.plist files around. There's one in the core game resources and up to one in every oxp. After that Oolite reads all the definitions in shipdata-overrides.plist files on top of the previously read definitions. This allows us to create overriding oxps. We can override core definitions, but also other oxps if needed.
Scars remind us where we've been. They don't have to dictate where we're going.
Re: MasterClass: How to OXP (updating SoThisTC)
Alphabetical load order might work in Windows, but not in Linux or OSx. If there are multiple oxps trying to override the same whatever, then that must be dealt in some other fashion like using conflicts in the manager. One trick that can be used, if one is making local overrides, is the fact that oxz:s installed with the manager are read before oxps in the AddOns-folder.montana05 wrote: ↑Tue Apr 27, 2021 1:53 pmSorry to interrupt, promised my last statement for today. When it comes to override the alphabetic order (at least with Windows) is critical. An override starting with "a" will be (again) overridden by an similar override starting with "z" for example. This is based on experience facing problems in the past where I lost (a lot) time to find out why my override didn't work as intended.spara wrote: ↑Tue Apr 27, 2021 1:19 pmOolite works so that it first reads all definitions from all shipdata.plist files around. There's one in the core game resources and up to one in every oxp. After that Oolite reads all the definitions in shipdata-overrides.plist files on top of the previously read definitions. This allows us to create overriding oxps. We can override core definitions, but also other oxps if needed.
- Cholmondely
- Archivist
- Posts: 5367
- Joined: Tue Jul 07, 2020 11:00 am
- Location: The Delightful Domains of His Most Britannic Majesty (industrial? agricultural? mainly anything?)
- Contact:
Re: MasterClass: How to OXP (updating SoThisTC)
1) So if an .oxp is loaded in the Managed AddOns folder it will load first? Or does it need to be an .oxz?spara wrote: ↑Tue Apr 27, 2021 2:00 pmAlphabetical load order might work in Windows, but not in Linux or OSx. If there are multiple oxps trying to override the same whatever, then that must be dealt in some other fashion like using conflicts in the manager. One trick that can be used, if one is making local overrides, is the fact that oxz:s installed with the manager are read before oxps in the AddOns-folder.montana05 wrote: ↑Tue Apr 27, 2021 1:53 pmSorry to interrupt, promised my last statement for today. When it comes to override the alphabetic order (at least with Windows) is critical. An override starting with "a" will be (again) overridden by an similar override starting with "z" for example. This is based on experience facing problems in the past where I lost (a lot) time to find out why my override didn't work as intended.spara wrote: ↑Tue Apr 27, 2021 1:19 pmOolite works so that it first reads all definitions from all shipdata.plist files around. There's one in the core game resources and up to one in every oxp. After that Oolite reads all the definitions in shipdata-overrides.plist files on top of the previously read definitions. This allows us to create overriding oxps. We can override core definitions, but also other oxps if needed.
2) And not for now (we're onto markets), but I don't see your natty images on my Mac. Just as I don't see Cim's images from his ship's manual on my mac. (I did see his images on my windows before the keyboard discombobulated and it gave up the ghost).
Comments wanted:
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?
•Missing OXPs? What do you think is missing?
•Lore: The economics of ship building How many built for Aronar?
•Lore: The Space Traders Flight Training Manual: Cowell & MgRath Do you agree with Redspear?