Captain Patrick wrote:It doesn't make sense that only the super-rich could afford to listen to music
Actually, the OXP does provide a way to obtain a "pirate" version of the hyperradio.. but you may need to think about where and how you'd find it..
Captain Patrick wrote:Indeed, those skilled at programming can always tweak any OXP to their taste.
My comments apply to this one as it's currently available to everyone else.
Here you go then.. for all the "everyone else's" out there:
Open the Hyperradio OXP, go into the 'Scripts' folder and open
hyperradio.js
in your favourite text-editor (DON'T use Notepad though if you're a Windows user, go with Wordpad, or, better yet,
Notepad++). Scroll down to the function
this.playerBoughtEquipment = function(equipmentKey)
which is on line 137.
Code: Select all
this.playerBoughtEquipment = function(equipmentKey)
{
switch(equipmentKey){
case 'EQ_HYPER_RADIO':
this.hyperRadio = true;
this.hyperradioDuration = Math.floor(20+clock.days);
EquipmentInfo.infoForKey('EQ_HYPER_RADIO_ADD').effectiveTechLevel = 7;
break;
case 'EQ_HYPER_RADIO_ADD':
this.hyperRadio = true;
this.hyperradioDuration += 20;
player.ship.removeEquipment('EQ_HYPER_RADIO_ADD');
missionVariables.TL_FOR_EQ_HYPER_RADIO_ADD = null;
break;
case 'EQ_HYPER_RADIO_PIRATE':
player.ship.removeEquipment('EQ_HYPER_RADIO_PIRATE');
this.hyperRadio = true;
player.ship.awardEquipment('EQ_HYPER_RADIO');
missionVariables.TL_FOR_EQ_HYPER_RADIO_PIRATE = null;
this.hyperradioDuration += Math.ceil(20/Math.log(system.government+2.1));
this.news = 0;
break;
}
};
In the above, you will see three instances of the number '20'. This is the number of days the subscription is active for. Change all three to '60' or '90' or whatever is your preferred value. Note also the part that reads
effectiveTechLevel = 7
. If you change the '7' to '0', the hyperradio will be available at all tech levels.
To change the price of the hyperradio and subscriptions, look in the Config folder of the OXP and open
equipment.plist
for editing.
Code: Select all
(
(7,12000,"HyperRadio™","EQ_HYPER_RADIO","This device connects your ship-systems to the HyperRadio™ stations. By sending it's ID your ship receives a coded hyperwave that is stored into the integrated memory. You are licensed to use this device for a period of 20 days.",
{available_to_all = true; portable_between_ships = true; incompatible_with_equipment = "EQ_HYPER_RADIO_PIRATE";
script = "hyperradio_eq.js"; script_info = {thargoidRepairBotChance = "0.7";};}
),
(99,8000,"HyperRadio™","EQ_HYPER_RADIO_ADD","Additional 20 days more for your HyperRadio™-License with a big and fat discount for our customers. Only available for a short period of time.",
{available_to_all = true; requires_equipment = "EQ_HYPER_RADIO"; incompatible_with_equipment = "EQ_HYPER_RADIO_PIRATE"; conditions = ("systemGovernment_number greaterthan 4");}
),
(99,1000,"HyperRadio™ Social","EQ_HYPER_RADIO_PIRATE","Inofficial HyperRadio™ license. This device connects your ship-systems to the HyperRadio™ stations. Use on you own risk.",
{available_to_all = true; portable_between_ships = true; incompatible_with_equipment = "EQ_HYPER_RADIO_PIRATE";}
)
)
In this instance, the prices are the '12000', '8000' and '1000' values, to 1/10 of a credit.. hence, they mean 1200, 800 and 100 credits respectively. You can change these to whatever price you like.. (e.g. - if you change it to '100', the price will be 10 credits)
Note also the '7' in front of the '12000'. This means it will only be available at TL8 and up. Change this to '0' to make it available at all tech levels. What the '99' in front of the other two prices means, I'm not quite sure, but I'd assume it equates to a zero as well. For completeness, you can edit the descriptions so that they reflect the number of days you've picked as well, rather than leaving them at '20'.
Save your changes, and be sure, when you next start Oolite, to hold down the Shift key until you see the spinning Cobra MkIII. (this forces Oolite to rebuild its' cache)
Note that if/when a new version of Hyperradio is released, after you update it, you will need to re-apply the above changes. I keep a folder which contains copies of all changes I've made to OXPs (along with notes on things like line numbers) so that I can easily re-apply my customisations when necessary.