ger-space / kerbal-konstructs Goto Github PK
View Code? Open in Web Editor NEWKSP Mod: Kerbal Konstrucs
KSP Mod: Kerbal Konstrucs
We currently gererate over 14MB/s of garbage for drawing the mapicons of groundstations. This is higher than anything else.
Cache the search results for GroundStations and Launchsites when "MapIconDraw.Open" is called. (override .Open())
De-Linq the foreach loop und draw groundstations
or clean it up.
I think I found a bug in career mode. Whenever I tried to recover a vessel from any purchased KK facility (in my case i tried with Lodnie Isles and Polar Research Center from the KerbinSide package) the crew are not recovered and the parts refund is 0, not matter the facility has a recovery factor. The worse part is when I tried to launch another mission I noticed that the crew status is missing in action! I have checked and I'm pretty sure it is related to the recovery method used in Kerbal Konstruct.
Objects can be made to show up if I add them to body.surfaceobjects.
disable mapview, when not open
does not show up in LS selector, when not open.
extend the launchsite editor
the show open facilities is the same problem as in drawing GroundStations.
There was a bug back in December that is reported as fixed but here is a report on an issue I found yesterday:
I have a clean install of 1.2.2. I installed RealSolarSystem via CKAN (so it gets the dependencies) and manually installed the latest KK and KSC Floodlights. They do not appear. When I attempt to use Ctrl-K in the launch view (trying to find them to re position them), nothing appears. The mod window itself on the main screen does come up, but Ctrl-K does not work there either.
I removed the RSS directories and dependencies without changing anything else and KK works fine. I can go to the launch view and hit Ctrl-K and am able to move the Floodlight towers around.
So the only thing in place causing the failure is the core RSS needs which includes:
Real Solar System 12.0.0
Module Manager 2.7.6
Kopernicus 1.2.2-5
Modular Flight Integrator 1.2.4.0
Textures (8192 size)
No other mods installed.
Required changes:
Add an module to an static model, which can play an sound:
features:
audioclip = string
loop = yes | no
min distance= float (as per unity audisource)
max distance = float (as per unity audisource)
volume = float
As my replacement project for all Kerbin-Side statics I want a to use Substance Painter for texturing and I want more maps (glossiness and emissive at the same time) supported.
I need to change the shader at object load and set the missing texture maps the same time.
All needs to be controlled by a new model-config like "useUnityShader = true"
Some links, so I don't forget where to look for
http://answers.unity3d.com/questions/368303/changing-shaders-of-a-gameobject-via-script-1.html
http://answers.unity3d.com/questions/845757/what-are-the-property-names-in-the-new-unity-5-sta.html
Opened an issue with them as well, but game crashes right after main loading screen, just before the main menu. Fresh install of the game.
Mod installed directly from a fresh clone of the git repo.
Implement a central window Renderer and remove the old spagetti code from OnGUI
This is partial done.
Some bases are next to each other instead of being a single base, e.g., bio-dome and research stations at north pole. They can share facilities and need to be bought separately. It's weird considering it's impossible to create a new base within 100km of another.
Fixes:
1.1 give configurl object to spawnInstances function and extract configpath
1.2 extend the StaticObject Class with cfgfile attribute
1.3 fill the cfgfile attribute in spawnInstances
3.1 When doing a single modelsave, load the old instance configuration in an array and save only these.
2.1 create an own save function which scans the Static Database for all instances for thier origin and group them there.
2.2 save new objects without old cfg to group-modelcfg-clone.cfg with pointername in the KK-exportdir, or try to find an cfg-file with same group and model (best)
use default save and load mechanism to gain persistence
This should fix the kosmodrome ground vanishing sortly after launch.
This could also reduce the load at updatedb(), when a goup is in range.
formular to test:
N= objects in group
centerpos = oldcenterpos* (n/(n+1)) + newpos/(n+1)
With an object to respawn any defined group of config objects as an new one with the kerbin-default sphere spreading.
Very often the same facilities appear twice on the list of operational facilities. However, correct facility is shown/updated when opening it, so it's not game-breaking, just confusing.
This could be used at a prototype for a new config mechanism, which stores the attribute-types dynamic at startup in a dictionary.
the references might be hidden in body.pqsSurfaceObjects
look at DebugStuff Code how to get the object under the mouse.
to make KK more compatible with kopernikus mods, use terrainheight as a reference and not sealevel.
A static Module which allows to replace textures and shaders of a static, as the std KSP shaders are limited to three maps only.
The Groundstations could be used as RemoteTech&CommNet groundstations.
perhaps also with a limited range around bases (60 km for runnway and 30 for pads)
The whole StaticObject.SetActive (updateCache etc) stuff might be overkill and could be removed, if the PQSController is able to set the visiblility of the Object.
We only need to trigger the updateTexture calls (which might be done somewhere else)
needs to be fixes as soon the reqrite is done.
the easy fix of not setting "SpaceCenter.instance" could have broken the StageRecovery addon,
SR uses SpaceCenter.instance, to get the distance to the KSC, so it should now allways use the nearest one provided by KK
Either:
that way mods could be setup with lat,lon and altitude instead of some strange vectors.
Needed Changes:
Support of double values as config parameters.
1.1 Rewrite the Configuration Management
1.1.1 Write a migration function
1.1.2 fix the Object Instance loader logic
1.1.3 check for all other references
add the new loader logic and print out a warning, when only the old one can be used.
Migrate the KerbinSide packages.
Meta tracker for all changes for better performance
In KK 1.2.0.1 with KSP 1.3.1 StaticObjectUpdate is called twice as often as the Update method. (same with KK 1.2.0.0 and KSP 1.3.0)
One "Debug.Log" for Update and one for StaticObjectUpdate.
#53 is related, I made it so StaticModule can stop their logic while StaticObjectUpdate act crazy. Didn't understand it was a bug at the time.
Report originally made here
all fuel tanks an mines/rafineries cannot transfer their contens to the vessel (KSP 1.2 changed resource transfers)
When the window with office building is open the funds generate insanely fast, regardless of time acceleration (around 10000 funds/second when fully staffed, or a few thousand/second with a few kerbals). This makes it impossible to use offices in a non-cheaty way.
Looks like RSS breaks the KK loader and other stuff, which thinks we are on Kerbin.
Replace all calls of SetActiveRecursively with SetActive and check there the .isActive flag to match new-State.
remove all Instances of SetActive* calls from StaticGroup and use the ones from StaticObject.
Make the SpaceCenter Camera move to the selected Launchbase.
Make the Base selector available in SpaceCenter.
Optional: Open the editor when selecting a Launchsite.
Basic the same as #18 only visible to the rest
the PQS must be added to body.pqsSurfaceObjects
function in StaticObject.spawn
provide an patch loader for orphaned mods. That way unusable configurations can be overwritten by patches, without modifying license protected packages.
this can be made a Monobehaviour just like in RemoteTech source.
Also add body<CelestialBody> to the LaunchSite structure and use this in the drawing loop.
move variable declarations out of the loop, to reduce garbage collection
public void OnGUI() { if (Event.current.type == EventType.Repaint && MapView.MapIsEnabled)
Make all variables local to the class. no more external show_something stuff.
Map-icons
ToolTip
MouseOver
Make a ScenarioModule for the most FacilityManagement, or a seperate GameLoader, for ConfigFile Parsing and Placement of Statics.
let firt MM reload the database and then replace all statics.
migh come handy for some modders.
these are called every second, so there are much improvements.
the Code is partial implemented, but cannot be used because the KSC has no PQSController setup or something like that. The Launchpad and Runway where allways throwing errors in MapView and are now filtered out for that reason.
Things ToDo:
Make the field body Type:CelestialBody available in the Launchsite structure.
Use the launchsite structure array and the geoposition for the MapIcon drawings.
Files affected: LaunchSiteManager and MapIconManager
the function should be no longer be needed, as all StaticModules and KKFacilities contain the statcInstance paramenter when created.
if not: remove workaround.
Disable all updates calls when the editor is open, so objects can be moves out of the visiblility range.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.