Jump to content

[KSP 1.8.x+] Universal Resource Transfer, V1.0.1


Recommended Posts

k2IpkpM.png

Universal-Resource-Transfer.svgtotal

Universal-Resource-Transfer.svglatest.svg

Introduction:

This is a fork of @Aniruddh's Beamed Power Standalone, updated to allow the transfer and receipt of multiple resources. Here is the original mod's thread:

 

This mod is 1 input -> n outputs. Each and every receiver can have a different output resource, but all transmitters must use the same resource. This is, luckily, fully configurable. All receivers will be compatible with all transmitters, irrespective of their individual resources. The mod comes with a beamed power transmitter, created by @Aniruddh, and two receivers, one for ElectricCharge and one for ThermalPower, courtesy of @JadeOfMaar.

Requires ModuleManager.

 

How does this work:

 There are 4 configurable 'objects'.

  1.  Settings.cfg
    Spoiler

    Settings.cfg currently controls the resource used by transmitters. 

    Spoiler

    BPSettings
    {
        ResourceSettings
        {
            ManagedResource = ThermalPower //The resource transmitted by transmitters
            GUIUnitName = ThP/s //The unit that shows up in transmitter PAW
        }   
    }

  2.   WirelessReceiver
    Spoiler

    If you want to make a part a beamed power receiver, you need to add the WirelessReceiver part module to the part's config file. You can either directly add this to a part's config file, or use a Module Manager patch. The syntax is shown below.

    Spoiler

    MODULE
    {
        name = WirelessReceiver
        recvType = Directional    // either Spherical or Directional
        recvDiameter = 2.5        // in metres, pick an appropriate value
        recvEfficiency = 0.7    // a value between 0.0 and 1.0
        maxSkinTemp = 1200    // these temps determine when the module will shutdown, optional (will default to 1200)
            maxCoreTemp = 900    // optional (will default to 900)

        OutputResource = ThermalPower //The resource outputted by the receiver. Analogous to ManagedResource.

         OutputResourceGUIName = ThP/s //The unit that shows up in the receiver's PAW. Analogous to GUIUnitName

         ConversionRate = 1 //The amount of OutputResource each unit of beamed power becomes. Intended for use when                  ManagedResource ≠ OutputResource 
    }

  3. WirelessSource
    Spoiler

    Unchanged from the original EXCEPT it now uses ManagedResource and displays GUIUnitName in the PAWs. If you want to make a part a beamed power transmitter, you need to add the WirelessSource part module to the part's config file. You can either directly add this to a part's config file, or use a Module Manager patch. It'll looks something like this:

    Spoiler

    MODULE
    {
        name = WirelessSource
        DishDiameter = 10    // in metres, pick a suitable value
        Wavelength = Long    // must be either 'Long'(short microwave) or 'Short'(short ultraviolet)
        Efficiency = 0.8    // value must be in range of 0.0 to 1.0
            maxSkinTemp = 1200    // these temps determine when the module will shutdown, optional (will default to 1200)
            maxCoreTemp = 900    // optional (will default to 900)
    }

     

     

  4. WirelessReflector
    Spoiler

    Completely unchanged from the original. This is a part module for beamed power reflectors. They are the beamed power equivalent to relay antennas. They take power from a source and reflect to a receiver. They are especially useful when having to deal with planetary occlusion. Some reflectors can amplify power received from transmitter, so the receiver gets more power than usual. The syntax for this part module is shown below:

    Spoiler
    MODULE
    {
    	name = WirelessReflector
    	Reflectivity = 0.98		// value between 0.0 and 1.0 , think of this as albedo
    	ReflectorDiameter = 20	// in m
    	
    	// optional parameters
    	CanAmplify = True
    	Efficiency = 0.8	// efficiency of power amplifying
    	wavelength = Long	// wavelength of amplifying, this must match the wavelength of beam from transmitter
    						// if it doesn't, the reflector will not amplify the power.
    	maxSkinTemp = 1200	// these temps determine when the module will shutdown, optional (will default to 1200)
        	maxCoreTemp = 900	// optional (will default to 900)
    }

     

     

This mod does not provide any propulsion parts. That has been deprecated entirely.

This mod is INCOMPATIBLE with Beamed Power Standalone. Uninstall both Beamed Power and its Realistic Wavelengths addon before installing this.

This mod may or may not break vessels that already have beamed power parts. 

Downloads (Github only):

Releases

Source code (Github): 

Source code

Issue tracker (Github): 

Issues

Dev thread:

 

 

 

 

 

Acknowledgements:

Pings:

@JadeOfMaar

@theJesuit

@Overlocker96

 

Edited by KspNoobUsernameTaken
Badges
Link to comment
Share on other sites

@KspNoobUsernameTaken Yo! Congrats on release. :D I got to try this and enjoy it for a bit ...but now the transmitter breaks and is jammed at 0 output. I think that launching multiple transmitter vessels with the same name (and choosing to rename them later in flight) might be exactly what I did to break the mod.

Link to comment
Share on other sites

8 hours ago, JadeOfMaar said:

@KspNoobUsernameTaken Yo! Congrats on release. :D I got to try this and enjoy it for a bit ...but now the transmitter breaks and is jammed at 0 output. I think that launching multiple transmitter vessels with the same name (and choosing to rename them later in flight) might be exactly what I did to break the mod.

Indeed, the mod isn't good with multiple transmitters or receivers that have the same name. It's a byproduct of how it parses the save file.

However, if you change the name, saving to persistence file then switching between a couple vessels should fix it. That basically makes all the vessel reinitialize their transmitter/receiver lists.

 

I'm working on this issue; it is by far the biggest problem the mod still has, but fixing it requires changes to the core save-file parser, which I still don't fully understand.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...