diff --git a/LICENSE.md b/LICENSE.md index 196bd20d..4fd6c662 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,26 +1,19 @@ **Copyright Overview** -* Models and textures of connector, ports, winches and magnet parts was created by Winn75, who retains the copyright. -* Models and textures of containers, bays, strut, pipe and pylon was created by zzz, who retains the copyright. -* Models for all remaining parts were created by KospY, who retains the copyrights. -* Config files, shaders, source code and compiled binaries are under copyright retained by KospY. +- Models and textures of connector, ports, winches and magnet parts was created by Winn75, who retains the copyright. +- Models and textures of containers, bays, strut, pipe and pylon was created by zzz, who retains the copyright. +- Models for all remaining parts were created by KospY, who retains the copyrights. +- Config files, shaders, source code and compiled binaries are under copyright retained by KospY. + -**YOU MAY**: -- Distribute your own parts using the following part modules: - - `KASModuleGrab` - - `KASModuleContainer` - - `KASModulePartBay` - - `KASModulePort` +**YOU MAY :** + +- Distribute your own parts using any part modules included in KAS. +- Distribute fixes in case of a compatibility problem with a new version of KSP (.dll only). - Distribute video, screenshots or other media portraying unmodified versions of KAS in action. -- Distribute modified or unmodified versions of the KAS plugin source code on condition that a link to this license is included. +- Distribute modified or unmodified versions of the KAS plugin source code on condition that a link to this license is - included. - Modify KAS in any way for personal use. - Request a waiver of any of these terms. + -**All other rights are reserved.** In particular, **YOU MAY NOT**: -- Distribute unmodified versions of KAS, in part or whole. -- Distribute modified versions of KAS, in part or whole, including the packaged models, textures, plugins, part configurations and any other component, with exception of plugin source code. -- Use models, animations, textures or other assets from KAS, including by reference. -- Use components of the KAS plugin, including parts and part modules, except where explicitly allowed. -- Distribute a byte patch or other difference file or patcher intended to modify KAS files without directly distributing them. -- Use any part of the KAS source or package, or other KAS branding, for any commercial purpose. -- Relicense any part of KAS. +**All other rights are reserved.** diff --git a/MM_Science.cfg b/MM_Science.cfg new file mode 100644 index 00000000..b39df588 --- /dev/null +++ b/MM_Science.cfg @@ -0,0 +1,15 @@ +@PART[*]:HAS[@MODULE[KASModuleGrab],@MODULE[ModuleScienceExperiment]]:FOR[KAS] +{ + @MODULE[KASModuleGrab]:HAS[#storable[true]] + { + %stateless = false + } +} + +@PART[*]:HAS[@MODULE[KASModuleGrab],@MODULE[ModuleScienceContainer]]:FOR[KAS] +{ + @MODULE[KASModuleGrab]:HAS[#storable[true]] + { + %stateless = false + } +} diff --git a/MM_Squad.cfg b/MM_Squad.cfg new file mode 100644 index 00000000..121f45ea --- /dev/null +++ b/MM_Squad.cfg @@ -0,0 +1,489 @@ +@PART[KAS_ContainerBay1]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.40, -0.10) + evaPartDir = (0,0,-1) + attachNodeName = bottom + attachOnPart = True + attachOnEva = False + attachOnStatic = True + attachSendMsgOnly = False + } +} + +@PART[linearRcs]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.21) + evaPartDir = (0,0,-1) + dropAtGroundPos = false + dropPartPos = (0.0, -0.1, -0.65) + dropPartRot = (0.0, 90.0, 0.0) + addPartMass = true + storable = true + storedSize = 4 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[RCSBlock]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.18) + evaPartDir = (0,0,-1) + storable = true + storedSize = 6 + attachOnPart = True + attachOnEva = True + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[roverWheel2]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.48, -0.14) + evaPartDir = (0,-0.3,-1) + storable = true + storedSize = 30 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[batteryPack]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.15) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[spotLight1]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.15) + evaPartDir = (0,0,-1) + storable = true + storedSize = 8 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[spotLight2]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.15) + evaPartDir = (0,0,-1) + storable = true + storedSize = 8 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[ladder1]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, -0.03, -0.1) + evaPartDir = (0,0,-1) + storable = true + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[telescopicLadder]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, -0.07, -0.34) + evaPartDir = (0,0,-1) + storable = true + storedSize = 25 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[telescopicLadderBay]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, -0.07, -0.34) + evaPartDir = (0,0,-1) + storable = true + storedSize = 30 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[solarPanels1]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.22) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[solarPanels2]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.22) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[solarPanels3]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.22) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[solarPanels4]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.22) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[solarPanels5]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.12, -0.14) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False} +} + +@PART[rtg]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.10) + evaPartDir = (0,0,-1) + storable = true + storedSize = 20 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[seatExternalCmd]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.15) + evaPartDir = (0,0,-1) + storable = true + storedSize = 20 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[smallRadialEngine]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.12, -0.14) + evaPartDir = (0,0,-1) + storable = true + storedSize = 15 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[radialEngineMini]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.15) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[radialRCSTank]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.29) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 30 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[xenonTankRadial]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.15) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 25 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[strutCube]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.11) + evaPartDir = (0,0,-1) + storable = true + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[sensorAccelerometer]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.12) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[sensorBarometer]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.12) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[sensorGravimeter]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.12) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[sensorThermometer]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.12) + evaPartDir = (0,0,-1) + storable = true + stateless = false + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[commDish]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.35) + evaPartDir = (0,0,-1) + storable = true + storedSize = 10 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[mediumDishAntenna]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.15, -0.18) + evaPartDir = (0,-0.15,-1) + storable = true + storedSize = 8 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[longAntenna]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.00, -0.09) + evaPartDir = (0,0,-1) + storable = true + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} + +@PART[parachuteRadial]:FOR[KAS] +{ + MODULE + { + name = KASModuleGrab + evaPartPos = (0.0, 0.09, -0.23) + evaPartDir = (0,0,-1) + physicJoint = true + storable = true + storedSize = 5 + attachOnPart = True + attachOnEva = False + attachOnStatic = False + attachSendMsgOnly = False + } +} \ No newline at end of file diff --git a/Parts/cPort1/cPort1.cfg b/Parts/cPort1/cPort1.cfg index e689034f..6eb8a759 100644 --- a/Parts/cPort1/cPort1.cfg +++ b/Parts/cPort1/cPort1.cfg @@ -16,7 +16,7 @@ node_stack_top = 0.0, 0.0362, 0.0, 0.0, 1.0, 0.0, 0 node_stack_bottom = 0.0, -0.0400, 0.0, 0.0, 1.0, 0.0, 0 node_attach = 0.0, -0.04, 0.0, 0.0, -1.0, 0.0 -cost = 200 +cost = 350 category = Utility subcategory = 0 title = Radial connector port diff --git a/Parts/cPort2/cPort2.cfg b/Parts/cPort2/cPort2.cfg index 5f82dc0a..5d67c886 100644 --- a/Parts/cPort2/cPort2.cfg +++ b/Parts/cPort2/cPort2.cfg @@ -15,7 +15,7 @@ mesh = portStack1.mu node_stack_top = 0.0, 0.00082, 0.0, 0.0, 1.0, 0.0, 0 node_stack_bottom = 0.0, -0.0424, 0.0, 0.0, 1.0, 0.0, 0 -cost = 200 +cost = 450 category = Utility subcategory = 0 title = Stack connector port (0.5m) diff --git a/Parts/container1/container1.cfg b/Parts/container1/container1.cfg index 7bcbebd3..5bb73697 100644 --- a/Parts/container1/container1.cfg +++ b/Parts/container1/container1.cfg @@ -18,7 +18,7 @@ rescaleFactor = 0.50 node_stack_bottom = 0.0, -0.3968, 0.0, 0.0, 1.0, 0.0, 0 // --- editor parameters --- -cost = 680 +cost = 550 category = Utility subcategory = 0 title = Container Type A diff --git a/Parts/container2/container2.cfg b/Parts/container2/container2.cfg index 5d44b509..a8d01457 100644 --- a/Parts/container2/container2.cfg +++ b/Parts/container2/container2.cfg @@ -18,7 +18,7 @@ rescaleFactor = 0.50 node_stack_bottom = 0.0, -0.7596, 0.0, 0.0, 1.0, 0.0, 0 // --- editor parameters --- -cost = 680 +cost = 700 category = Utility subcategory = 0 title = Container Type B diff --git a/Parts/hookSupport/hookSupport.cfg b/Parts/hookSupport/hookSupport.cfg index 134b9ec1..e4c578a2 100644 --- a/Parts/hookSupport/hookSupport.cfg +++ b/Parts/hookSupport/hookSupport.cfg @@ -15,7 +15,7 @@ mesh = hookSupport.mu node_stack_top = 0.0, 0.0264, 0, 0.0, 1.0, 0.0, 0 node_stack_bottom = 0.0, -0.1493, 0, 0.0, 1.0, 0.0, 0 -cost = 200 +cost = 150 category = Utility subcategory = 0 title = Hook Support diff --git a/Parts/hook_anchor/anchor.cfg b/Parts/hook_anchor/anchor.cfg index 077f60bb..3fc678ca 100644 --- a/Parts/hook_anchor/anchor.cfg +++ b/Parts/hook_anchor/anchor.cfg @@ -15,7 +15,7 @@ mesh = anchor.mu node_stack_top = -0.0, 0.05606, -0.0, 0.0, 1.0, 0.0, 0 -cost = 200 +cost = 250 category = Utility subcategory = 0 title = Anchor diff --git a/Parts/hook_grapplingHook/grapplingHook.cfg b/Parts/hook_grapplingHook/grapplingHook.cfg index 14e7de15..3ce9e7ea 100644 --- a/Parts/hook_grapplingHook/grapplingHook.cfg +++ b/Parts/hook_grapplingHook/grapplingHook.cfg @@ -16,7 +16,7 @@ scale = 1 node_stack_top = -0.0, 0.05606, -0.0, 0.0, 1.0, 0.0, 0 node_attach = 0.0, -0.0651, 0.0, 0.0, -1.0, 0.0 -cost = 500 +cost = 700 category = Utility subcategory = 0 title = Grappling hook diff --git a/Parts/hook_magnet/magnet.cfg b/Parts/hook_magnet/magnet.cfg index b23424ef..398805cb 100644 --- a/Parts/hook_magnet/magnet.cfg +++ b/Parts/hook_magnet/magnet.cfg @@ -16,7 +16,7 @@ scale = 1 node_stack_top = -0.0, 0.1005, -0.0, 0.0, 1.0, 0.0, 0 node_attach = 0.0, -0.0021, 0.0, 0.0, -1.0, 0.0 -cost = 500 +cost = 1100 category = Utility subcategory = 0 title = Electro-Magnet diff --git a/Parts/pipe1/pipe1.cfg b/Parts/pipe1/pipe1.cfg index bf0bda2a..ae7d4fc2 100644 --- a/Parts/pipe1/pipe1.cfg +++ b/Parts/pipe1/pipe1.cfg @@ -16,7 +16,7 @@ mesh = pipe1.mu node_stack_bottom = 0.0, -0.0578, 0.0, 0.0, 1.0, 0.0, 0 node_attach = 0.0, -0.0578, 0.0, 0.0, -1.0, 0.0 -cost = 200 +cost = 250 category = Utility subcategory = 0 title = Pipe end point diff --git a/Parts/strut1/strut1.cfg b/Parts/strut1/strut1.cfg index 4663ace8..33194e1e 100644 --- a/Parts/strut1/strut1.cfg +++ b/Parts/strut1/strut1.cfg @@ -14,7 +14,7 @@ mesh = strut1.mu node_attach = 0.0, -0.0315, 0.0, 0.0, -1.0, 0.0 -cost = 200 +cost = 150 category = Utility subcategory = 0 title = Strut end point diff --git a/Parts/winch1/winch1.cfg b/Parts/winch1/winch1.cfg index 15d9dae4..6349b090 100644 --- a/Parts/winch1/winch1.cfg +++ b/Parts/winch1/winch1.cfg @@ -17,7 +17,7 @@ node_stack_front = -0.155, 0.00, -0.241805, 0.0, 0.0, 1.0, 0 node_stack_top = 0.0, 0.1, 0.0, 0.0, 1.0, 0.0, 0 node_stack_bottom = 0.0, -0.1, 0.0, 0.0, 1.0, 0.0, 0 -cost = 800 +cost = 350 category = Utility subcategory = 0 title = Horizontal stack winch (0.5m) @@ -57,7 +57,7 @@ MODULE evaGrabHeadDir = (0,0,1) evaDropHeadPos = (0.05, 0.01, -0.16) evaDropHeadRot = (180.0, 0.0, 0.0) - lockMinDist = 0.08 + lockMinDist = 0.12 lockMinFwdDot = 0.90 } diff --git a/Parts/winch2/winch2.cfg b/Parts/winch2/winch2.cfg index 8e899bad..b2c57f0b 100644 --- a/Parts/winch2/winch2.cfg +++ b/Parts/winch2/winch2.cfg @@ -17,7 +17,7 @@ node_stack_bottom = 0.0, -0.2850344, 0.0, 0.0, 1.0, 0.0, 0 node_stack_top = 0.0, 0.1, 0.0, 0.0, 1.0, 0.0, 0 //node_attach = 0.0, 0.1, 0.0, 0.0, 1.0, 0.0, 0 -cost = 800 +cost = 600 category = Utility subcategory = 0 title = Vertical stack winch (0.5m) @@ -60,7 +60,7 @@ MODULE evaDropHeadRot = (180.0, 0.0, 0.0) ejectEnabled = true ejectForce = 20 - lockMinDist = 0.08 + lockMinDist = 0.12 lockMinFwdDot = 0.90 } diff --git a/Parts/winch3/winch3.cfg b/Parts/winch3/winch3.cfg index eba5d293..a1c32b9b 100644 --- a/Parts/winch3/winch3.cfg +++ b/Parts/winch3/winch3.cfg @@ -59,7 +59,7 @@ MODULE evaDropHeadRot = (180.0, 0.0, 0.0) ejectEnabled = true ejectForce = 20 - lockMinDist = 0.08 + lockMinDist = 0.12 lockMinFwdDot = 0.90 } diff --git a/Parts/winch4/winch4.cfg b/Parts/winch4/winch4.cfg index b0f72c9d..eb580242 100644 --- a/Parts/winch4/winch4.cfg +++ b/Parts/winch4/winch4.cfg @@ -58,7 +58,7 @@ MODULE evaDropHeadRot = (180.0, 0.0, 0.0) ejectEnabled = true ejectForce = 20 - lockMinDist = 0.08 + lockMinDist = 0.12 lockMinFwdDot = 0.90 } diff --git a/Plugin/CompatibilityChecker.cs b/Plugin/CompatibilityChecker.cs index ccae1421..09098a00 100644 --- a/Plugin/CompatibilityChecker.cs +++ b/Plugin/CompatibilityChecker.cs @@ -53,8 +53,8 @@ public static bool IsCompatible() \*-----------------------------------------------*/ const int compatibleMajor = 0; - const int compatibleMinor = 23; - const int compatibleRevision = 5; + const int compatibleMinor = 25; + const int compatibleRevision = 0; return (Versioning.version_major == compatibleMajor) && (Versioning.version_minor == compatibleMinor) && (Versioning.Revision == compatibleRevision); diff --git a/Plugin/KAS.csproj b/Plugin/KAS.csproj index e77711df..b929d0b8 100644 --- a/Plugin/KAS.csproj +++ b/Plugin/KAS.csproj @@ -30,10 +30,14 @@ 4 - + + ..\..\..\Games\KSP\KSP_Data\Managed\Assembly-CSharp.dll + - + + ..\..\..\Games\KSP\KSP_Data\Managed\UnityEngine.dll + @@ -63,9 +67,8 @@ - IF EXIST "D:\ServerFolders" xcopy "$(TargetPath)" "D:\ServerFolders\Softwares\SyncFolder\KSP_0.20\GameData\KAS\Plugins\" /Y -IF EXIST "c:\games\KSP" xcopy "$(TargetPath)" "c:\games\KSP\GameData\KAS\Plugins\" /Y -IF EXIST "D:\games\KSP" xcopy "$(TargetPath)" "D:\games\KSP\GameData\KAS\Plugins\" /Y + IF EXIST "D:\games\KSP" xcopy "$(TargetPath)" "D:\games\KSP\GameData\KAS\Plugins\" /Y +IF EXIST "E:\games\KSP" xcopy "$(TargetPath)" "E:\games\KSP\GameData\KAS\Plugins\" /Y