Page 1 of 2

[RELEASE] Repair Bots v2.11

Posted: Mon Aug 24, 2020 4:43 pm
by dybal
There's a new version of [EliteWiki] Repair Bots OXP, v2.11, available on the Expansion Manager and here.

Changes:
  • introduced Repair System Light, with 5 charges taking 1 TC of cargo space, and Recharge 5-Pack;
  • introduced energy cost while repairing, with minimum of one energy bank to work;
  • assorted bug-squashing.
The Repair System Light version is meant for smaller ships where the 2t cargo penalty is too much...it can be installed on larger ships, but there's a price penalty versus the standard version.

In terms of game balance, this OXP is all in player's favour, even with the cargo space penalty, so I introduced an energy cost while repairs are being effected... it's still not enough to balance things, but it helps: the player now has to be aware of player's ship energy recharge capabilities before going into combat while the Repair System is busy repairing things.

[RELEASE] Repair Bots v2.12

Posted: Sun Sep 13, 2020 6:20 am
by dybal
Repair Bots v2.12 is available on the Expansion Manager and here.

Changes:
  • Checks for repair controller existence before starting the repair system.
This fixes a bug that considered the Repair System as damaged when it wasn't installed and tried to repair it, costing energy in the process.

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Sep 13, 2020 1:40 pm
by Cholmondely
Dybal,

I'm just curious (and utterly ignorant of these matters) - but roughly how difficult would it be to craft a more realistic repair system where
i) you can choose what the bots repair first
ii) the time taken differs according to what is damaged and the amount of damage done
iii) one could have an separate control panel (for a second player who could then handle these matters as the ship's engineer).
iv) or it was fixable (or partly fixable) by the player himself (botless!) with the tools kept on the bridge, some engineering knowledge and a dash of handwavium.

Would this be a major modification, or would it be relatively minor?

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Sep 13, 2020 3:58 pm
by dybal
Cholmondely wrote: Sun Sep 13, 2020 1:40 pm
Dybal,

I'm just curious (and utterly ignorant of these matters) - but roughly how difficult would it be to craft a more realistic repair system where
i) you can choose what the bots repair first
ii) the time taken differs according to what is damaged and the amount of damage done
iii) one could have an separate control panel (for a second player who could then handle these matters as the ship's engineer).
iv) or it was fixable (or partly fixable) by the player himself (botless!) with the tools kept on the bridge, some engineering knowledge and a dash of handwavium.

Would this be a major modification, or would it be relatively minor?
(i) That's already in the plans, but it will be one more primeable equipment, and there will have to be some cons to balance it;

(ii) Making the time range (there should be a random factor there) dependent on the equipment TL and cost is feasible and interesting - I will put it in the TODO list, but the current version has a version of it: the equipments have repair probabilities based on TL (or scriptInfo defined by the equipment creator), and Repair Bots keeps trying to repair until it succeeds, no matter how many attempts it takes, so I high TL equipment is prone to take several attempts and a longer time to repair; damage in the core game is "binary": it's damaged or it isn't, and right now the OXPs that managed to get around that, like Shield Cycler, made equipments that Repair Bots cant' repair.

(iii) I'm not sure of all you mean here... expanding Repair Bots to allow the player to pick and choose what should be repaired from the damaged equipment will need a MFD to show the damaged equipment and chosen repairing options, but that will have to be shown in the HUD for the player to interact with by priming the control equipment and using the activate and mode keys (that's the part I have to give some thought yet), but... second player?

(iv) This is possible too: create a list of equipments that, based on some criteria, like low TL, would be fixed by the crew if some circumstances where met: low speed, no maneuvering, green condition, spare parts and tools (that would need a repair pack to be purchased); that would complement nicely the (i), since one of the cons I have in mind is needing twice as much nanobots to repair in directed mode, so a 10-Pack recharge would repair only 5 equipments.

(ii) is minor, I can get it done fairly quickly (testing takes longer), but (i+iii and iv) are major changes (that's why I haven't started on (i) yet... I want to conclude some of the things I started before tackling it).

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Sep 13, 2020 7:37 pm
by Cholmondely
dybal wrote: Sun Sep 13, 2020 3:58 pm
Cholmondely wrote: Sun Sep 13, 2020 1:40 pm
Dybal,

I'm just curious (and utterly ignorant of these matters) - but roughly how difficult would it be to craft a more realistic repair system where
i) you can choose what the bots repair first
ii) the time taken differs according to what is damaged and the amount of damage done
iii) one could have an separate control panel (for a second player who could then handle these matters as the ship's engineer).
iv) or it was fixable (or partly fixable) by the player himself (botless!) with the tools kept on the bridge, some engineering knowledge and a dash of handwavium.

Would this be a major modification, or would it be relatively minor?
(i) That's already in the plans, but it will be one more primeable equipment, and there will have to be some cons to balance it;

(ii) Making the time range (there should be a random factor there) dependent on the equipment TL and cost is feasible and interesting - I will put it in the TODO list, but the current version has a version of it: the equipments have repair probabilities based on TL (or scriptInfo defined by the equipment creator), and Repair Bots keeps trying to repair until it succeeds, no matter how many attempts it takes, so I high TL equipment is prone to take several attempts and a longer time to repair; damage in the core game is "binary": it's damaged or it isn't, and right now the OXPs that managed to get around that, like Shield Cycler, made equipments that Repair Bots cant' repair.

(iii) I'm not sure of all you mean here... expanding Repair Bots to allow the player to pick and choose what should be repaired from the damaged equipment will need a MFD to show the damaged equipment and chosen repairing options, but that will have to be shown in the HUD for the player to interact with by priming the control equipment and using the activate and mode keys (that's the part I have to give some thought yet), but... second player?

(iv) This is possible too: create a list of equipments that, based on some criteria, like low TL, would be fixed by the crew if some circumstances where met: low speed, no maneuvering, green condition, spare parts and tools (that would need a repair pack to be purchased); that would complement nicely the (i), since one of the cons I have in mind is needing twice as much nanobots to repair in directed mode, so a 10-Pack recharge would repair only 5 equipments.

(ii) is minor, I can get it done fairly quickly (testing takes longer), but (i+iii and iv) are major changes (that's why I haven't started on (i) yet... I want to conclude some of the things I started before tackling it).
Thank you for getting back to me.

The idea of repair bots which randomly choose which items they repair makes no sense to me. Who would devise such a thing? And why? Who would sell it? Who would buy it?

Repair bots randomly cannibalising less useful pieces of equipment to repair more important pieces makes a lot more sense. Or even cannibalising another broken piece: the Selezen v2.11 capacitor can be adapted from the broken port Beam Laser to fix the aft Military Laser.

Or try this: Presumably in the early days of repair-bottery the bottologists devised bots which repaired one thing only - such as the early Aegidian bots which only repaired the first Aegidian-manufactured advanced space compasses - but not the later models, or the Dyballic or Cholmondolian Space Compasses with different parts and different wiring. Then, maybe Dybal Space Manufacturies produced a bot which fixed both Dyballic and Aegidian models - but not those ghastly Cholmondolian ones. The second generation of Dybalistic bots also fixed Dyballonian Beam Lasers. Etc, etc.
The complexity would be beautifully byzantine - and gloriously balance out the banal simplicities of choosing lasers simply based on range, damage dealt out, laser temperature rise and cost. It would probably also be a palpitating nightmare to write the suite of relevant .oxps - and take forever to do so.

iii) merely follows a thread I read some months ago about having multiple players crew one ship. https://bb.oolite.space/viewtopic.ph ... t=multiple.

I am very appreciative of what you do - and how it enhances my enjoyment of the game. I do have better things to do than try and bamboozle you into spending hours of your valuable time making Repair Bots more logical. I was only trying to be imaginative (and see if I could ever dream of doing any of this myself) - what you have already done has added significantly to my pleasure in Oolite.

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Oct 04, 2020 3:38 pm
by dybal
[EliteWiki] Repair Bots OXP, v2.13 is available on the Expansion Manager and here.

Changes:
  • Energy thresholds are now proportional to the ship's maxEnergy and not absolute: repair stops when energry drops to 20% and resumes when it reaches 40%.
  • Self-repair, i.e., repairing the Repair System Controller, consumes 2 charges.
  • New functions for other OXPs to inform Repair Systems that an equipment is disabled, i.e., it's damaged but should not be repaired. This allows OXPs to inhibit Repair Systems actions on a given equipment during a period of time, while the probabilities in the scriptInfo are "hard-coded", i.e., can't be changed by scripts.
This version will not try to repair the Fuel Injectors when Towbar v0.109 disabled them while towing without towbar compatible injectors.

Re: [RELEASE] Repair Bots v2.11

Posted: Mon Oct 05, 2020 9:46 am
by Cholmondely
dybal wrote: Mon Aug 24, 2020 4:43 pm
In terms of game balance, this OXP is all in player's favour, even with the cargo space penalty, so I introduced an energy cost while repairs are being effected... it's still not enough to balance things, but it helps: the player now has to be aware of player's ship energy recharge capabilities before going into combat while the Repair System is busy repairing things.
Is not this attempt at game balance utterly defeated by the newest revision:
[EliteWiki] Repair Bots OXP, v2.13 is available ...
Energy thresholds are now proportional to the ship's maxEnergy and not absolute: repair stops when energy drops to 20% and resumes when it reaches 40%.


Might it not be better in terms of game balance to utterly abolish the energy thresholds and instead allow the player to disable the bots - there's a reason that the cobra has provision for a co-pilot!

Do the npc's also get bots?

Re: [RELEASE] Repair Bots v2.11

Posted: Mon Oct 05, 2020 1:34 pm
by dybal
Cholmondely wrote: Mon Oct 05, 2020 9:46 am
dybal wrote: Mon Aug 24, 2020 4:43 pm
In terms of game balance, this OXP is all in player's favour, even with the cargo space penalty, so I introduced an energy cost while repairs are being effected... it's still not enough to balance things, but it helps: the player now has to be aware of player's ship energy recharge capabilities before going into combat while the Repair System is busy repairing things.
Is not this attempt at game balance utterly defeated by the newest revision:
[EliteWiki] Repair Bots OXP, v2.13 is available ...
Energy thresholds are now proportional to the ship's maxEnergy and not absolute: repair stops when energy drops to 20% and resumes when it reaches 40%.
The problem with absolute energy values is that they don't work well in the lower range of energy capacity - try an Adder start and you will understand what I mean.

Let's look at two extremes: an Adder with maxEnergy=85 and a Barracuda with maxEnergy=512.

In v2.12, both would stop repairs when energy gets down to 64 (1 bank) and resume once it get back to 128 (2 banks); in the Adder, once shutdown by low energy, Repair System would not startup again before docking/launching, and anything would bring its energy level bellow 64 (one use of ECM would bring it bellow 40). Repair System was effectively useless for such ship.

In v2.13, in the Adder Repair System will shutdown when energy gets down to 17 and resume when it gets back to 37, and the repair energy cost is half the factory energy recharge rate; in a Barracuda, Repair System will stop when energy gets down to 102 and resume when it reaches 204, but the energy cost is only 1/4 of the factory energy recharge rate. What that means is: a Barracuda can afford to continue battle while repairing, an Adder must break and run if it can as soon as it gets damage... for ships with maxEnergy between those extremes, it remains a judgement call: the player must become aware of all of this and make informed decisions, or be surprised... that's the "con" to balance the "pro" of being able to repair high TL equipment cheaply in low TL systems.
Cholmondely wrote: Mon Oct 05, 2020 9:46 am
Might it not be better in terms of game balance to utterly abolish the energy thresholds and instead allow the player to disable the bots - there's a reason that the cobra has provision for a co-pilot!
I don't know about co-pilots, Oolite is stand-alone, single-player (and I think it would be boring for the second player), but I think allowing the player to turn off Repair System would weaken that "con" I mentioned too much - I plan to make the player-controlled version of Repair System, but it would have other kinds of "cons" to balance it.
Cholmondely wrote: Mon Oct 05, 2020 9:46 am
Do the npc's also get bots?
As it's now, NPCs don't get damaged equipments (so Repair Bots would be useless for them)... I think there were OXPs that did that (inflicted equipment damage to NPCs) in the past, but if so they are lost.

Re: [RELEASE] Repair Bots v2.11

Posted: Tue Oct 06, 2020 8:35 am
by phkb
dybal wrote: Mon Oct 05, 2020 1:34 pm
I think there were OXPs that did that (inflicted equipment damage to NPCs) in the past, but if so they are lost.
Ngalo's NPC Equipment Damage is once of them, and should still be available.

And Ship Configuration has some elements of NPC equipment damage involved (if memory serves!)

Re: [RELEASE] Repair Bots v2.11

Posted: Tue Oct 06, 2020 11:21 am
by Cholmondely
phkb wrote: Tue Oct 06, 2020 8:35 am
dybal wrote: Mon Oct 05, 2020 1:34 pm
I think there were OXPs that did that (inflicted equipment damage to NPCs) in the past, but if so they are lost.
Ngalo's NPC Equipment Damage is once of them, and should still be available.

And Ship Configuration has some elements of NPC equipment damage involved (if memory serves!)
Looks very interesting! Thank you for this.

Re: [RELEASE] Repair Bots v2.11

Posted: Tue Oct 06, 2020 7:43 pm
by dybal
phkb wrote: Tue Oct 06, 2020 8:35 am
dybal wrote: Mon Oct 05, 2020 1:34 pm
I think there were OXPs that did that (inflicted equipment damage to NPCs) in the past, but if so they are lost.
Ngalo's NPC Equipment Damage is once of them, and should still be available.

And Ship Configuration has some elements of NPC equipment damage involved (if memory serves!)
Thanks, phkb! I had hints of it from N-Shields code but no real lead to it.

I will look into it and probably pick it up and integrate with the work I've done on N-Shields (mostly debugging and making it's shipSpawned event handler idempotent, so it could be called to (re)setup things as defensive equipment were awarded to the NPC ship)

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Jul 04, 2021 4:00 pm
by UK_Eliter
Perhaps this is the wrong place to post, and I am unsure who, if anyone, is maintaining the Repair Bots expansion pack, but just now I encountered the following.

Code: Select all

[script.javaScript.exception.notFunction]: ***** JavaScript exception (Repair System 2.13): TypeError: this.$startSelfRepairSystem is not a function
I wonder too whether this error - which I see more frequently than the error above - is related:

Code: Select all

WARNING: Unknown escape code in string: %옠

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Jul 04, 2021 4:11 pm
by Cholmondely
UK_Eliter wrote: Sun Jul 04, 2021 4:00 pm
just now I encountered the following...

Code: Select all

Very pretty!

But ... does it mean anything?

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Jul 04, 2021 4:27 pm
by UK_Eliter
That is how it appears in the log - at least in the editor SublimeText; when I next see the error I'll open the log in a different editor and see whether there is a difference in the characters.

Re: [RELEASE] Repair Bots v2.11

Posted: Sun Jul 04, 2021 5:18 pm
by Cody
Cholmondely wrote: Sun Jul 04, 2021 4:11 pm
UK_Eliter wrote: Sun Jul 04, 2021 4:00 pm
just now I encountered the following...

Code: Select all

Very pretty!

But ... does it mean anything?
It's Thargoid for WTF?