CobaltWolf / Bluedog-Design-Bureau

Stockalike parts pack for Kerbal Space Program
https://forum.kerbalspaceprogram.com/index.php?/topic/122020-131mostly-functional-141-bluedog-design-bureau-stockalike-saturn-apollo-and-more-v142-%D0%B0%D1%82%D0%BB%D0%B0%D1%81-1feb2018/
126 stars 143 forks source link

Questions about RemoteTech #1544

Closed Aebestach closed 2 months ago

Aebestach commented 2 months ago
Rodg88 commented 2 months ago

RemoteTech compat is a community maintained patch, so feel free to PR a fix

Aebestach commented 2 months ago

I have completed the adaptation of the Pods and am now re-adjusting the antenna. I noticed that some dishes with a communication range of 100G are even omnidirectional, which seems a bit unrealistic?

Another question is, https://github.com/CobaltWolf/Bluedog-Design-Bureau/blob/master/Gamedata/Bluedog_DB/Compatibility/RemoteTech/Remotetech_ProbesNew.bak this file doesn't seem to do anything?

Rodg88 commented 2 months ago

Looks like it was probably disabled due to being in-progress/unfinished? No idea why tho, maybe the original author is around on the forums still to ask

Aebestach commented 2 months ago

It should be the abandoned content, all for the core module to configure the antenna

Aebestach commented 2 months ago

Does 1.14 have additional antennas compared to 1.13?

Rodg88 commented 2 months ago

There'll be some, at least mariner '69, and viking orbiter. then maybe x15 internal transmitters

You can make a patch that adds a dummy value to a part if it doesn't have a RT module, then search the MM configcache to see any matching parts

Aebestach commented 2 months ago

1545 Currently, there is a common configuration for all components with communication modules, but it may need to be adjusted again. When the new version is released, I will submit a PR to fix it again.

Rodg88 commented 2 months ago

@Aebestach I mentioned in the the PR, which I've already accepted now, but if you can also update for other 1.14 parts before the release that'd be ideal. That way we don't need to wait for another update for it to be included.

Aebestach commented 2 months ago

OK, thanks, but I may need to compare which new components have been added to see if they need to be configured separately.

Aebestach commented 2 months ago

Can you add a CrewCapacity field to all new components (Pods)? Because now RT configuration needs to use this attribute, if there is no such attribute, i need to write it separately one by one. If you can add this attribute, the general writing method is applicable to 1.14

Rodg88 commented 2 months ago

Off the top of my head the main new ones would be: ProbeExpansion/Viking/bluedog_Viking_Orbiter_highGainAntenna ProbeExpansion/Viking/bluedog_Viking_Orbiter_lowGainAntenna ProbeExpansion/Viking/bluedog_Viking_Orbiter_SolarPanel_Relay ProbeExpansion/Mariner/bluedog_Mariner69_HighGainAntenna ProbeExpansion/Mariner/bluedog_Mariner69_LowGainAntenna ProbeExpansion/Mariner/bluedog_Mariner71_HighGainAntenna ProbeExpansion/Mariner/bluedog_Mariner71_LowGainAntenna ProbeExpansion/Mariner/bluedog_Mariner71_SolarAntenna

the stats on those haven't really had a balance check yet though, but shouldn't change too much.

Also Surveyor omni antennas just got merged into one part (just visual variants): ProbeExpansion/Surveyor/bluedog_Surveyor_Omni

And you should be able to check against other fields for crew capacity checks, like HAS:[@MODULE[ModuleCommand]:HAS[#minimumCrew[>0]]] for pods vs HAS:[@MODULE[ModuleCommand]:HAS[#minimumCrew[0]]] for probes.

Or even check for the INTERNAL key of the stock ModuleDataTransmitter module instead like: HAS:[@MODULE[ModuleDataTransmitter]:HAS[#antennaType[INTERNAL]]]

What exactly do you need the crew capacity check for? If it's for replacing the internal antennas, it's probably best to use the last option and directly check for the module you're replacing.

Aebestach commented 2 months ago

The original RT configuration uses minimumCrew to check, but I think this method seems not perfect (For example, when checking minimumCrew, some manned cabins have minimumCrew=0), because it does not perform well when dealing with manned modules with independent antennas (I think that modules with independent antennas will have enhanced communication capabilities after activating the antenna, rather than the default 3km communication range of RemoteTech), so I used CrewCapacity to distinguish between unmanned cores and manned modules.

Rodg88 commented 2 months ago

Also checking ~CrewCapacity[>0] will match parts that don't have a positive crew capacity too