Giter VIP home page Giter VIP logo

kerbal-konstructs's Introduction

Kerbal Konstructs

What is it?

Kerbal Konstructs add static objects to the different worlds of KSP. It contains some new gameplay elements like new air bases, air-races, landing guides and interactive objects like fuel stations. The mod includes a set of assets, which can be used with the provided ingame editor to create new bases.

Kerbal Konstructs is a reimplementation of the popular KerbTown mod by Razchek. medsouz's original goal was to remain completely compatible with KerbTown asset packs while also providing optimizations that are not present in the original mod. The goal of this fork is to provide new features as well as optimisations without concern for KerbTown compatibility. This fork abandons KerbTown but I acknowledge and credit the contributions.

Dependencies

Custom Prelaunch Checks

FAQ

What about AlphaAsh?

AlphaAsh has given us (the KSP-RO team) permission to continue development on Kerbal Konstructs and to redistribute the Kerbal Konstructs assets.

Old FAQ by AlphaAsh

Why not just contribute to KerbTown?

KerbTown is very dead. If the original authors of that mod choose to continue it, I may pursue merging this fork back in. I probably won't. This will just keep going on its merry way.

What about medsouz?

This is a fork of his work and I(AlphaAsh) consider medsouz a friend. His involvement with this fork and my relationship with him and our collaboration or the future of it isn't something you need to worry about.

Why should I use this instead of KerbTown?

You can use whatever you prefer.

However, asset packs for either mod won't necessarily work together seamlessly anymore as I am not remotely trying to maintain full compatibility with KerbTown.

License

Kerbal Konstructs Plugin (when not stated otherwithe in the class-file) The MIT License (MIT)

Copyright (c) 2015-2017 Matt "medsouz" Souza, Ashley "AlphaAsh" Hall, Christian "GER-Space" Bronk, Nikita "whale_2" Makeev, and the KSP-RO team.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Static Assets Artwork & Models Copyright (c) 2014-2016, Ashley Hall and Alpha Strike Games All rights reserved.

Redistribution and use in source and binary forms, without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Addendum 1: You may modify the contents for personal use but may not re-distribute modified versions of the content without obtaining permission first. Contact Ashley Hall on the KSP forums, PMing the user AlphaAsh.

Addendum 2: This work may not be re-distributed, modified or un-modified in a 'mod pack'.

Addendum 3: If re-distributing, no financial or other form of profitable gain should be made from this work, directly or indirectly. No advertising of any sort may be included in the redistribution or at any point of redistribution.

Addendum 4: Contributions from collaborators may be licenced separately, except where such licence conflicts with this licence. Conflicts will be handled by the collaborators when they occur.

kerbal-konstructs's People

Contributors

alphaash avatar ger-space avatar jonnyothan avatar lghassen avatar li0n-0 avatar nathankell avatar reesewilson avatar ryanc55 avatar siimav avatar stonesmilegit avatar whale2 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

kerbal-konstructs's Issues

Not displaying statics in KSP 1.12.5

With just Kerbal Konstructs, Kerbin Side Remastered, Tundra, and Omega's static set, none of the statics display at all. The plugin is working to some extent as the UI is there.

Loading of STATIC assumes .cfg file and .mu file location to match, making it impossible to load .mu from GameData/Squad

A config file like the one below would be what a user expects to load from the absolute path specified here.

STATIC
{
	mesh = Squad/Parts/Utility/Lights/Assets/light_04.mu
	module = Part
	static = true
	animationName = 
	DefaultLaunchPadTransform = 
	author = Lack
	title = Real Runway Light
	category = Airbases
	cost = 0
	manufacturer = Meowdy
	description = it's a light?
	name = light_04
	DefaultFacilityType = None
	Instances
}

However, instead the error [ERR 16:45:05.635] KK: LoadModels: Could not find //Squad/Parts/Utility/Lights/Assets/light_04.mu! is thrown and no model is loaded. Note the strange double slashes at the start of the path.
@JonnyOThan and I have traced this issue to likely stem from

model.prefab = GameDatabase.Instance.GetModelPrefab(model.path + "/" + model.mesh);

trying to load the model, where model.path is the path to the config file and model.mesh is the literal name target defined for mesh = ... in the KK STATIC config. As the config file here lies directly in GameData, model.path becomes a /, causing the odd // in the error message (which uses the same piece code as is passed into GetModelPrefab). GetModelPrefab appears to be incapable of ignoring extraneous slashes and fails to find the model.

A workaround of putting the config file into it's own folder and using mesh = ../Squad/Parts/... also does not work as relative path traversal does not seem to be implemented in GameDatabase.GetModelPrefab.

As such, it is not possible to load any model not within the same folder tree as the .cfg file, or any folder if the .cfg file lies directly in GameData.

There also is another minor implementation oddity where a path that contains a ., but no .mu at the end would be truncated in the wrong spot by:

if (model.mesh.Contains('.'))
{
model.mesh = model.mesh.Substring(0, model.mesh.LastIndexOf('.'));
// model.settings = KKAPI.loadConfig(conf.config, KKAPI.getModelSettings());
}

I would appreciate a fix, as being able to load Squads or other mods .mu files as Statics can be quite helpful, and doing so currently requires the .mu file to be copied, which would violate Squads license. Thanks for giving this a look!

Editing menu issue

The ctrl-k menu doesn't show up on KSP 1.12+. I've read comments on the KSP forum, and others are having the issue. The comments are old, so this probably wont get fixed, but this is rendering thousands of KK dependent mods useless. PLEASE FIX!!

ctrl+K don't work ksp 1.10.1

when i press ctrl+k editor menu doesn't open,i tried to reinstall,install older version and install with ckan but nothing

Failing to find a body should not be a fatal error

22246 [LOG 14:34:42.616] Config(KK_GroupCenter) KerbalKonstructs/NewInstances/KK_GroupCenter_Aion_NewGroup/KK_GroupCenter

102374 [ERR 14:37:21.502] KK: GetCelestialBody: Couldn't find body "Aion"
102375 
102376 [EXC 14:37:21.503] NullReferenceException: Object reference not set to an instance of an object
102377     KerbalKonstructs.Core.GroupCenter.get_dbKey () (at <606f2d28760a4f95aefb47d9a1811d45>:0)
102378     KerbalKonstructs.Core.GroupCenter.Spawn () (at <606f2d28760a4f95aefb47d9a1811d45>:0)
102379     KerbalKonstructs.Core.ConfigParser.LoadAllGroupCenter () (at <606f2d28760a4f95aefb47d9a1811d45>:0)
102380     KerbalKonstructs.KerbalKonstructs.Awake () (at <606f2d28760a4f95aefb47d9a1811d45>:0)
102381     UnityEngine.DebugLogHandler:LogException(Exception, Object)
102382     ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
102383     UnityEngine.GameObject:AddComponent(Type)
102384     AddonLoader:StartAddon(LoadedAssembly, Type, KSPAddon, Startup)
102385     AddonLoader:StartAddons(Startup)
102386     AddonLoader:OnLevelLoaded(GameScenes)
102387     AddonLoader:OnSceneLoaded(Scene, LoadSceneMode)
102388     UnityEngine.SceneManagement.SceneManager:Internal_SceneLoaded(Scene, LoadSceneMode)

If you have leftover stuff in NewInstances that reference bodies that are no longer installed, it basically bricks your install. These should just be skipped with an error message.

mapdecals won't work when size is too small

Hi, so I'm currently working with mapdecals and I often have the problem that they simply stop working if I set the size too small, sometimes this size is 200, sometimes even higher. This is really annoying because I want smaller parts. Thx in advance.

AnimateOnSunrise tags missing?

Wiki says it does, Log says it don't...? Is this a change, and error, or ???

LOG:

[WRN 18:30:05.442] KK: [StaticInstance] Spawn: Field mathHorizontalAngle does not exist in AnimateOnSunRise [WRN 18:30:05.442] KK: [StaticInstance] Spawn: Field horizonAngleOffset does not exist in AnimateOnSunRise [WRN 18:30:05.457] KK: [StaticInstance] Spawn: Field mathHorizontalAngle does not exist in AnimateOnSunRise [WRN 18:30:05.458] KK: [StaticInstance] Spawn: Field horizonAngleOffset does not exist in AnimateOnSunRise [WRN 18:30:05.459] KK: [StaticInstance] Spawn: Field mathHorizontalAngle does not exist in AnimateOnSunRise [WRN 18:30:05.459] KK: [StaticInstance] Spawn: Field horizonAngleOffset does not exist in AnimateOnSunRise

Module in question:
ย 

MODULE { namespace = KerbalKonstructs name = AnimateOnSunRise animationName = KSCFLT02 reverseAnimation = False //True timeWarpAnimation = True mathHorizontalAngle = True horizonAngleOffset = 35 delayLowTimeWarp = 2f delayHighTimeWarp = .1f }

KSP 1.12.x - the ingame editor function does not work correctly

In the recent KSP upgrades to the 1.12 versions, The editor feature of Kerbal Konstructs no longer functions correctly.
When CTL-K is pressed from the flight screen the following occurs:

  • The Statics Editor displays as expected
  • Navigation to the other menu options (Spawn New, Edit MapDecals, Edit Groups, Export, Save) produce either no effect or unexpected actions
  • From the Local instances page if you select one, the edit window either does not display or only a blank grey box appears with no usable functions. This behaviour repeats in the MapDecals and Groups page, if you mange to navigate to them and select an item to edit.

In-Game play appears to be unaffected, existing statics, launch-sites, and facilities appear to be working as they should.

KSP 1.8+ Grass color doesn't save when editing again.

Steps:

Place a static and save it.
Reboot the game
Open the menu and edit the color of said static.
After rebooting the game, you can edit the color of the base but it doesn't save.
After another reboot the old color is back.

Only solotion right now is deleting the old static and replacing it with a new one. But the same issue applies here when saving the new color.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.