-
Posts
464 -
Joined
-
Last visited
Content Type
Profiles
Forums
Developer Articles
KSP2 Release Notes
Everything posted by philotical
-
didn't I answer this allready? http://forum.kerbalspaceprogram.com/threads/94011-RESOLVED-Unity-animation-Play-Problem?p=1422843&viewfull=1#post1422843 I assume, you try to play animation from the wrong gameobject/model.. you still need to loop through them as I said back then.. (with evil's code snippet, you can find out in what go/model) The downside is the animation state will not be as expected.. so if you run the scan-animation, the deploy will allways be at "end"-state => deployed Some one posted a plugin last week that shall fix that issue.. but I didn't follow up after initial post..
-
https://raw.githubusercontent.com/Anatid/XML-Documentation-for-the-KSP-API/master/Assembly-CSharp.xml <member name="F:CelestialBody.ocean"> <summary> Whether this planet has an ocean at "sea level" </summary> </member> the sea level is just a number arbitrarly defined, if the answer to above question is no, the sea level is not much more than a number.. No one tried to hypotethise, what you thought - you where quite clear in OP. Greys told you that your assumption is wrong and explained why it's likely to get the wrong assumption, I confirmed that it's wrong. Now it's actually just up to you to believe it :-) Consider this: Could it be, that you got lost in a futile question because KSP/Unity is confusing in all details? It is as simple as we described - no mysteries attached in this case.. PS: the get component I mentioned, is an alternative (more complicated) way to reach the same - if you query for OcenFX (iirc) you can get the same confirmation Does it or does it not have the water effect at sea level.. ...but the sea level does not otherwise affect the flight as far as I understand the matter
-
there is no superimposed sphere, the ocean is an effect object - not a solid sphere You can check for it's presence with get component. as sarbian suggested. If that is not present, you can land on any spot on the body. No matter what altitude it has. The proof are submarines and underwater rovers.. you can drive down to 1800meter below sealevel on kerbin if your rover does not float. I wouldn't call that a superimposed solid sphere.. the answer is therefore "yes" - but actualy greys answer was allready quite clear on this? HTH
-
Can't get a simple plugin to load?!
philotical replied to pixartist's topic in KSP1 C# Plugin Development Help and Support
afaik GUI only works inside of public void OnGUI() { } afaik print should work aswell I suggest to use FixedUpdate instead of OnUpdate for the repeated work.. And - just to be certain.. you are aware, that a part module only works if loaded with a part? you must add it to a cfg file and it has to be loaded for those log entrys to show up.. other than that, I don't see a problem with your code.. -
LCARS Natural Cause Inc. - The Star Trek Universe
philotical replied to philotical's topic in KSP1 Mod Development
Thank's Teto! (link sent a few days back..) Well - the POC mission works now! here some preview the code that processes the mission is a dirty test and has to be rewritten completely.. The clip is just to show what it might look like, proof that it'll work and (partially) show how it will work ..so be patient :-) -
LCARS Natural Cause Inc. - The Star Trek Universe
philotical replied to philotical's topic in KSP1 Mod Development
I've reached a huge MileStone!! The mission creation is complete and stable. I might add minor stuff and GUI changes - but it's at least in beta stage. I've added story modes that allow for automatic background missions, that start autmatically if your position meets a certain requirement. Here is an example for such a mission.. NCIMISSION { story_type = AutomaticBackgroundStory title = Warp Plasma at BadLands filename = WarpPlasmaAtBadLands description = Challenging resource Mission for a good pilot. You will need a storage capability for Warp Plasma on your ship. creator = Philotical url = missionSteps = 0 REQUIREMENTS { LIST { REQUIREMENT { id = 1 name = BadLands description = A menacing phenomenon that can tear your ship appart part_idcode = BadLands egg_idcode = part_egg_modes = science,alien,reputation } } } PERSONALITIES { LIST { PERSONALITY { name = Station: Science idcode = science description = LCARS-Station: Science portrait = } } } EQUIPMENTS { LIST { EQUIPMENT { name = Bussard Collector idcode = BussardCollector description = gathers a defined resource while in range icon = LCARS_NaturalCauseInc/NCIAssets/Icons/NCIEquippment_BussardCollector resource = WarpPlasma distance_threshhold = 4000 part = BadLands egg = science artefact1 = textline = artefact2 = } EQUIPMENT { name = Iso Flux Detector idcode = IsoFluxDetector description = finds a defined gameObject by messuring the distance to vessel icon = LCARS_NaturalCauseInc/NCIAssets/Icons/NCIEquippment_IsoFluxDetector resource = distance_threshhold = 10000 part = BadLands egg = science artefact1 = textline = artefact2 = } } } ARTEFACTS { LIST { } } SEALDEAL { SealDeal_messageID = CloseDeal_messageID = GAIN { cash = 0 reputation = 0 science = 0 objects = } } STEPS { STEP { id = 1 locationtype = distanceLower location_part = BadLands location_egg = conversation_trigger_distance = 1 location_distance = 50000 sealdeal_textID = 0 next_step = 3 stepStart_messageID = none stepEnd_messageID = none GUIBUTTON { buttontext1 = textID = 0 } CONVERSATION { personality = } MESSAGES { MESSAGE { messageID = 1 messageType = eMail loopMessage = False message = The long range sensors have detected a dense pocket of Warp Plasma inside the BadLands. I suggest we move in closer to investigate! title = Sir, There is Warp Plasma ahead! sender = science sender_id_line = Station: Science reports receiver_type = Station receiver_code = Bridge priority = 3 Encrypted = False encryptionMode = decryption_artefact = reply_sent = False REPLYOPTIONS { REPLY { buttonText = No (reject Mission) replyCode = step replyID = 3 } REPLY { buttonText = Agreed (accept Mission) replyCode = step replyID = 2 } } } } JOBS { JOBLIST { JOB { jobID = 1 isStepEnd = False jobtype = distanceLower target = object distance = 50000 NCI_object = BadLands NCI_egg = NCI_artefact = jobStart_messageID = none jobEnd_messageID = 1 } JOB { jobID = 2 isStepEnd = True jobtype = distanceGreater target = object distance = 80000 NCI_object = NCI_egg = NCI_artefact = jobStart_messageID = none jobEnd_messageID = none } } } } STEP { id = 2 locationtype = distanceLower location_part = BadLands location_egg = conversation_trigger_distance = 1 location_distance = 20000 sealdeal_textID = 0 next_step = 3 stepStart_messageID = none stepEnd_messageID = none GUIBUTTON { buttontext1 = textID = 0 } CONVERSATION { personality = } MESSAGES { MESSAGE { messageID = 1 messageType = eMail loopMessage = False message = Please open the NCI Console and activate the Iso Flux Detector. As soon as we are in range, it will guide us to the pocket. Go as close as possible to the pocket. title = Sir, the IFD could help us now sender = science sender_id_line = Station: Science reports receiver_type = Station receiver_code = Bridge priority = 3 Encrypted = False encryptionMode = decryption_artefact = reply_sent = False REPLYOPTIONS { } } MESSAGE { messageID = 2 messageType = eMail loopMessage = False message = It seems to be moving fast, maybe the storms pull it with them, we need our best man at the helm now. Try to get much closer and try to hold that distance. title = We have found the Pocket Sir! sender = science sender_id_line = Station: Science reports receiver_type = Station receiver_code = Bridge priority = 3 Encrypted = False encryptionMode = decryption_artefact = reply_sent = False REPLYOPTIONS { } } MESSAGE { messageID = 3 messageType = eMail loopMessage = False message = Activate the Bussard Collectors and hold that distance. Or get even closer for a higher production. title = We are spot on! sender = science sender_id_line = Station: Science reports receiver_type = Station receiver_code = Bridge priority = 3 Encrypted = False encryptionMode = decryption_artefact = reply_sent = False REPLYOPTIONS { } } MESSAGE { messageID = 4 messageType = eMail loopMessage = False message = It seems the IFD lost the contact - we are too far away.. What shall we do? title = We have lost the Warp Plasma Deposit Sir! sender = science sender_id_line = Station: Science reports receiver_type = Station receiver_code = Bridge priority = 3 Encrypted = False encryptionMode = decryption_artefact = reply_sent = False REPLYOPTIONS { REPLY { buttonText = Let's go (End Mission) replyCode = step replyID = 3 } REPLY { buttonText = Try again (Restart Mission) replyCode = job replyID = 2 } } } } JOBS { JOBLIST { JOB { jobID = 1 isStepEnd = False jobtype = distanceLower target = object distance = 20000 NCI_object = NCI_egg = NCI_artefact = jobStart_messageID = none jobEnd_messageID = 1 } JOB { jobID = 2 isStepEnd = False jobtype = distanceLower target = egg distance = 5000 NCI_object = BadLands NCI_egg = science NCI_artefact = jobStart_messageID = none jobEnd_messageID = 2 } JOB { jobID = 3 isStepEnd = False jobtype = distanceLower target = egg distance = 1000 NCI_object = BadLands NCI_egg = science NCI_artefact = jobStart_messageID = none jobEnd_messageID = 3 } JOB { jobID = 4 isStepEnd = False jobtype = distanceGreater target = egg distance = 10000 NCI_object = BadLands NCI_egg = science NCI_artefact = jobStart_messageID = none jobEnd_messageID = 4 } JOB { jobID = 5 isStepEnd = True jobtype = distanceGreater target = object distance = 80000 NCI_object = BadLands NCI_egg = NCI_artefact = jobStart_messageID = none jobEnd_messageID = none } } } } STEP { id = 3 locationtype = distanceGreater location_part = BadLands location_egg = conversation_trigger_distance = 1 location_distance = 100000 sealdeal_textID = 0 next_step = 1 stepStart_messageID = none stepEnd_messageID = none GUIBUTTON { buttontext1 = textID = 0 } CONVERSATION { personality = } MESSAGES { } JOBS { JOBLIST { JOB { jobID = 1 isStepEnd = True jobtype = distanceGreater target = object distance = 110000 NCI_object = BadLands NCI_egg = NCI_artefact = jobStart_messageID = none jobEnd_messageID = none } } } } } } The mission starts on it's own if you go closer than 50Km to the badlands. The science station will inform you about a sensor result regarding WarpPlasma in the badlands. This is the moment, where the player decides if he want's to play that story right now or not. If he confirms, the story starts and you will get advise on how to proceed from your science station. If the player declines or ignores it, the fall back logic (achieved with the step-jobs in step 2 and 3) will move the mission silently into the retart position. It's all in the config - see if you can follow the logic.. Now on to the game-driver.. I estimate that I can play the first proof of concept mission within 2 days.. Contributing: Anyone who is intrested in writing missions alllready, can apply here for an alpha download of NCI and the mission creator. It would be highly appreciated since the more config files I have to read, the easier the developpment of the game-driver will be. The abillity to test different scenarios while developing is really helpfull guys.. so if you have the time, apply please.. thanks.. -
Multiple Animations on part
philotical replied to raidernick's topic in KSP1 Modelling and Texturing Discussion
does that mean, that animations run independantly - so if I open door 2, door one will not be changed? I mean if you have the door1 on frame 1-100 and door2 on frame 100-200, if you run the door2 animation, door1 will allways be at it's end state. that's annoying - does your code solve that issue? maybe a ingnorant question.. sorry... -
my 2 cents, maybe someone finds it usefull.. from what I can tell, convex does only one thing different then "normal" mesh collider: It prevents the object from falling through the ground/terrain.. So in case of your box, you'd need only some seperated corner peaces as convex and the rest could be a simple mesh-collider that can easely be concave without problems.. just eight square boxes, one at each corner, would be minimum.. if you land on a hilltop, it can look awekward if the hill shifts through a large wall peaces, so just slap some flat square colliders in the center of each side.. they don't need to span the whole area - just 1 sqare meter in the middle. I've made complete star trek ships with several decks and had only 8 or 9 tiny convex colliders at logical points to stay above terrain mesh collider work for ship2ship collisions and for EVA as advertized - no issues.. I'm not sure if this is the best way to go - but that is what I figured as working in the last few weeks..
-
true.. but I've grown used to the methode: private bool isReady() { if (HighLogic.LoadedSceneIsEditor || this.vessel == null) { return false; } if (this.vessel != FlightGlobals.ActiveVessel) { return false; } return true; } void FixedUpdate() { if (!isReady()) { return; } //do stuff }
-
if you have classname : PartModule use void FixedUpdate() { for me that works.. edit: that happens if you go to eat between page reloads lol I'm too late..
-
Create an orbit above current orbit
philotical replied to m1nd0's topic in KSP1 C# Plugin Development Help and Support
I see.. lot's of guess work.. I can't help much more from remote.. - I' also just guessing.. but don't give up.. good luck.. -
Create an orbit above current orbit
philotical replied to m1nd0's topic in KSP1 C# Plugin Development Help and Support
In NCI, I do fixed height orbits that way: myVessel.orbitDriver.orbit = Orbit.CreateRandomOrbitAround(SelectedBody, minAlt, maxAlt); myVessel.orbitDriver.orbit.LAN = OrbitLan; myVessel.orbitDriver.orbit.argumentOfPeriapsis = OrbitW; if you set min and max alt only 1 meter apart, it usually gives an orbit quite where you wanted - precision is about 30-100 meters from what I can tell.. HTH -
Oh I see where you are getting at.. as a work around for the limiting KSP procedures on partload, one could make a list of stuff to rename (pics, mu, cfg, and dlls), force the game to close, start a batch that does the renaming and restarting the game with allready selected save.. that way, the "unloading", that happens after the tediouse loading time can be prevented by not loading them in the first place. That unloading is btw done by KSP itselfe - check logs - every X frames, the garbadge collecter runs and unloads unused assets.. does really not save any time at game load.. in other words, it still solves a problem that does not exist.. the better way to solve the "existing" problem could be the auto renaming - although it's a messy workaround it could work. at least on windows - not sure if mac has batch files..
-
I would really love this to work.. but it probbably can't.. you are walking in a good direction - but I'm not sure there is a place to arraive there.. at the time you select the save file, the addon loader is allready through.. all parts/plugins are allready in the memory.. since THIS is the actual problem that needs to be solved (lag because of ram and gameload crashes because of too many mods) - this plugin does not serve it's purpose right now.. - sorry to be so blunt :-) I mean if my lag does not go away, I might aswell show the parts in editor - becaue if they are just hidden but still lag my game, why would I wan't them to be hidden? Also with your plugin, the only way to get B9 out my memory for one save is to remove it physically from gamedata. I was thinking a few minutes how to solve this - but I guess since KSP loads all parts before you select the save, it might be a futile excercise to try.. you would need to restart the game load after selecting your plugins - and then this setting would affect all save games.. the only "real" way to have it work with current KSP would be a standalone application, that will rename files (dll => dll.txt, same for pics and cfg, and models) so they wont load.. but I'm sure, this is not what you intended to code.. Or: KSP needs to have a hook point prior the part loader and the part loader has to run after the save game select or this will never work I'm afraid.. correct me if I'm wrong guys..
-
Editor UNDO Ship Construct
philotical replied to Diazo's topic in KSP1 C# Plugin Development Help and Support
Although I guess you allready considered this and have a good reason for not using that methode.. but if you could live with a dirty trick, you could allways listen for the undo key combination and consider this an event. it's not .... but it should work stable I think.. -
. .
-
Thanks :-) Official anouncment: Teto delivered me the promised science texts for the tricorder and even some captainslogs - also those will be put to good use.. I've tried to give him some reputation.. but: "You must spread some Reputation around before giving it to Teto again" I did a week ago allready for something else.. Those science texts will stay confidential until LCARSMarkII will be released.. the currently online beta's don't include them by now - sorry.. As soon as I update the first post, I will add a "credits" section to show some gratitude to the people who helped me here. Teto and (ofcourse) StaVision will be on it! MJY will also be mentioned for all the bug reports he sent me in the beginning of the mod.. MarkII Progress report: The message system is working! features: - receive status messages from the ship - receive messages from outside - like NCI story elements - send/receive messages to/from all LCARS ships in the save file - receive encrypted messages - attempt to decrypt messages that can come several encryption modes/levels.. Not all messages can be decrypted propperly - some have errors or are made with an unknown codex All that adds a lot of mystery-options to NCI stories Talking about stories.. Are any hobby writers here? NCI needs stories.. head over to that thread and volunteer please.. All star trek stories welcome.. the more I have, the more I know whty to implement in the code.. Tell me what kind of stories NCI should be able to do by writing one! I'll post an example script today...
-
LCARSMarkII Progress: - Powersystems done - Damage Controll done - Repair Teams done - Main ODN Junction done - Plugin System done yesterday I was bored from coding so I created the "Space Cruiser Aurora" as seen in the episode "The Way to Eden" TOS season 3. (original http://en.memory-alpha.org/wiki/Class_J_starship) it will fit 33 Kerbals including the pilot. she needs now a plugin for the workstations. Also the IVA is still missing.. but other then that, she's done..
-
Where to learn c#
philotical replied to peachoftree's topic in KSP1 C# Plugin Development Help and Support
I haven't a tut or so to offer.. but http://msdn.microsoft.com/library/ is ofcourse allways in my serps Also http://www.dotnetperls.com is delivered by google reguarly if I search something hth -
Look if you want to help but not want to code, There are some tasks that don't need coding but still are important.. 1. I need science texts for LCARS and tricorder.. StarVision once offered to wrtie them - but it seems he has changed his focus and priorities.. 2. NCI needs stories and missions.. I'm sure you could write some.. intrested :-) Both needs no coding - but both is essential.. I can give you more details and explanation once you volontier To answer your question - to code for a game means to have all the power a devine beeing would have.. I can make the grass violet and the kerbals yellow if I want to.. That is what can be done with coding.. FAR,DRE,KAS,Kethane,Karbonite,BDArmory - alll that and more.. To use a quote from SpongeBob Squarepants: "IMMMMMAAAAAAGGGGIIIIINNNNNAAAAAATTTTIIIOOOONNNN" (BBcode does not allow to spawn the required rainbows - sorry) Oh I see - thanks - helpfull info.. I'll fix/test that in future versions..
-
[Solved] Airlock collider strangeness.
philotical replied to StarVision's topic in KSP1 Mod Development
TT wrote once this: Hatches Box colliders typically MUST overlap the collider for the model, and the models collider must overlap the ORIGIN of the model (0,0,0). You might get away with either of these but if you get "Hatch obstructed" bug, not following those is probably the cause. It didn't help me with my hatches, because KSP is not consistant in that.. In one model it worked (shuttle), for th next, I had to make the hatch collider that big, that it'selfe overlaps the origin (belerophon).. no clue why - but just try around with the collider size.. The code that checks if it's a valid hatch is buggy and inconsistant to say the least..