Jump to content

artwhaley

Members
  • Posts

    639
  • Joined

  • Last visited

Everything posted by artwhaley

  1. Mechjeb Docking Port Alignment Indicator KAS KIS Kerbal Alarm Clock KRPC I'll swap out parts mods as my mood and objectives change, but those are the ones I consider 'foundational' to the way I play the game. Honestly, most of those features (except probably KRPC) should be in the game, in my opinion. (not to start that argument, just making my point that I think those mods 'round out' the game to the way I like to play it - making the mundane things automatic and giving data that any space craft would have to have!)
  2. You inspired me to try to help... but... I can't get my Arduino to connect at all. I tried the example from the documentation, and the ones that were posted earlier in this thread. It hangs on the krpc_open line. I downloaded the library through the arduino library manager... copied the example code in... uploaded... I went to KSP and started the server with the default protobuf over serial settings (9600, 8n1), reset my arduino... and... nothing. If I can figure it out (Or if someone else can tell me what I'm doing wrong!) I'll try to hack together a couple of examples of doing stuff... my sketch - #include <krpc.h> #include <krpc/services/krpc.h> void setup() { krpc_connection_t conn; krpc_open(&conn, &Serial); krpc_connect(conn, "Basic example"); krpc_schema_Status status; krpc_KRPC_GetStatus(conn, &status); printf("Connected to kRPC server version %s\n", status.version); } void loop() { }
  3. That said... when the pink box is true, you're not going to get any satisfaction out of winning the higher levels.
  4. And that's your answer - it's NOT fair use until it's decided so by a court, so the forum rules prohibit it. There. You claimed that a screenshot, if it included images of copyrighted material, was illegal to share. And the last bit... here... I don't think you're asking at all. I think you're arguing about what the forum rules should be, even though they've been clearly explained.
  5. I am sure i can CLAIM to be the Easter Bunny, but it won't make me hop any higher. Fair use is not a license. That forum rule specifically requires a license. No dice. Fair use is a defense that may be raised when you're served with a copyright claim suit. And, as you seem to know sometimes and not others - a fair use exception doesn't exist until it's ruled on by a court. So without a court order, I don't think you'd even have grounds to ask for a forum rules exception. Not to mention that the use you're talking about is almost certainly NOT Fair Use. Noncommercial use is not, in and of itself, proof of fair use. Further, if their copyright is properly registered, which I'm going to wager it is, they're not limited to filing suit for actual damages - they can sue for punitive damages. If the copyright had not been filed previous to your appropriation of it, they'd GENERALLY be limited to suing you for, and having to demonstrate, that you'd actually cost them money - either in damage to the brand or in missed licensing fees they would have made if you'd contacted them and purchased a license to use the content. My line of argument is annoyed, because your line of argument is : 1. Very wrong. 2. Presented with the most supreme of confidence. Those two I could ignore... being arrogantly wrong isn't a crime, or 90% of the internet would be in jail for something at some point, myself definitely included. But 3. Dangerous to the community. You presented your 'theories' that screenshots were illegal until the EULA revision, when somehow you construed that Squad asking you for a license to use YOUR IP somehow conferred on you a license to use theirs.... and that it's perfectly okay to steal Squad's models and redistribute them. Both of those ideas are damaging to the community - the first minorly because it might dissuade the sharing of legitmate content that improves the community, and the second MAJORLY because you're encouraging people to steal Squad's models. Which btw, is specifically forbidden in the forum rules too. Under forbidden content - Discussing or facilitating copyright infringement or software theft (software piracy); I came to this thread and offered advice for both your technical and legal issues, and you glibly ignored it... as you are the advice you're getting from others. You will NOT dismiss me from the thread, even after you've gone back and edited the most glaring of the parts I proved you wrong on. For those that come to this thread afterwards... if you have questions about copyright, licensing, intellectual property, or any of the related concepts discussed here... do NOT take advice from random internet people... consult with your attorney. I'm a professional photographer - creating intellectual property, protecting my copyrights, respecting the rights of other IP owners, licensing my work and occasionally selling my copyrights is my day to day job, and my understanding of the topic is based on lengthy conversations with my lawyer. But that still makes what I 'know' of it second hand, and tailored to be specifically applicable to my situation in my jurisdiction. Do I think that means I'm probably right on this matter? Absolutely. But still - before you end up in a legal mess... talk to your lawyer with questions. Because some of the info in this thread is VERY WRONG.
  6. I'm nominating this for most self contradictory forum post of the year... and that's saying something, as there's a lot of competition for that title.. You.... JUST SAID the only way to be sure of fair use is to get sued and win. So... when did you get sued and win over this issue? Are you trolling? Or really this confused? If you don't see the difference between a screenshot which exists for commentary, critique and review and an actual reproduction of the copyrighted work in the same medium (also being used as a game asset)... you don't understand the topic at all. We're talking squad's stuff. I don't know why you'd even mention the GPL. That literally affects NOTHING in this thread. Of course the GPL can't grant something copyright law forbids... because you cannot legally enter a contract to do something illegal. Duh. It's not that copyright law supersedes the GPL - both can exist at the same time... but you can't enter a contract to do something illegal, so WHEN you're violating copyright law, the GPL is not any sort of defense? I don't know why you brought it up. Squad's materials are not GPL. There's no reason to consider it. Also, you're totally backwards on the EULA thing. You are trying to say that... posting a screen shot is fair use of squad's copyright... BECAUSE Squad's new EULA says that posting it here counts as granting them a license? Those are two TOTALLY independent licensing issues. One - your use of squad's models or game engine in your screen shot (which ALMOST CERTAINLY comes under fair use) and two - squad copying the digital file you uploaded and using for other purposes. Which would never be fair use, which is why they asked for (and you granted) a license for them to use it. As for forum policies, well, now you know that I, for one, would report your post as an IP violation. There's your answer. Also, please get some more legal advice- what you've been given was totally backwards. Whether the mods will take that report seriously, I'd ask them directly. And since you're still posting... This... in no way relates to this conversation. That youtube aggressively responds to DMCA requests is irrelevant. They'd rather take things down than be named in the suits to sort it out... that's their prerogative... but it's a business's internal policy - not law. Also... that case has NOTHING TO DO WITH THIS. OF FREAKING COURSE using a song as underscoring in a video is a copyright violation... BUT - posting an excerpt from that song while you reviewed it, or discussed it in a critical context - would create a fair use argument. Once again - this is EXACTLY what I was trying to say earlier - that posting a screenshot can be defended as fair use - you're excerpting the work in a different medium for the purpose of discussing it. Simply duplicating the work or deriving from it is in no way defensible under fair use. If your lawyer told you that... get a new lawyer because this one's tying to get you sued so he can get rich failing to defend you.
  7. Oh cool! I missed that along my path through the thread! Disregard! And awesome tool! I don't know how I've played for 4 years without it!
  8. Actually, is not how it is. Taking a screenshot of your mod in game is NOT equivalent to distributing the object code. THAT is actually what is intended under fair use - because you're deriving a work that COMMENTS on their work. To understand it, remove the mod from the equation. By your interpretation, EVERY SCREENSHOT on the forum would be a violation. EVERY game play video on youtube. Obviously screen shots and screen caps are fair use. In this instance, the .mu is actually playing the role of 'compiled object code' as it's assembled by Unity to bundle the model with the animations and shaders necessary to put it in game. The .blend, or .dae or other native 3D modeling application file would be 'the source.' And all of that makes perfect sense. For an example of using two models to add extra transforms, the tokomak habitats mod includes several parts with multiple docking ports and the model and transforms are in separate .mu's. I'm sure that's not the only one, just one I spotted last week while helping someone with a docking port question. If your one part is essential, I'd take it as an opportunity to make your own part from scratch. Again - it's perfectly legal to borrow squad's texture (you don't distribute it - just point the .cfg file to squad's installed version of it.) so if you want to retain a stock look on your geometry, you can map it to their texture. That's really interesting! I think you came up with a question they hadn't thought about! Technically they SHOULD have to release a license for those images in order for us to distribute them! I wonder if they'll bother responding to you?
  9. You know what would be awesome.. connecting this via KRPC so it could get orbital parameters directly without having to quicksave and find the sfs file, and could place (and execute, if you wanted to) maneuver nodes directly. If you're interested in experimenting with it and want some help, let me know? Matlab can call Python libraries directly, can't it? Though perhaps it's easier to connect via one of the compiled krpc libraries... such as the c++ one, so the end user doesn't have to install so many dependencies? Hmmm.
  10. I USED to know the answers to all of your questions. I'll do what I can to answer some of them. But first I'm going to give the answers to ones you didn't ask! As the guy who spent months putting the SNC Dreamchaser into the game, I'm going to point out that these sorts of parts that only go together one way to build one ship SORT OF miss the spirit of KSP. Most of the joy in the game comes from the lego approach - building a custom craft for a new mission. After I built the dreamchaser... it was really fun to fly it... for a day or two. But then what? And I think most that downloaded it had the same reaction eventually. Oh cool! Fun to launch it! Takes a few tries to land it. Now... nyah. Nothing left to do! I know there were some people who do more role play in their KSP that used it as a crew service ship... but... not that many. None of that is telling you not to build it. I had so much fun building the Dreamchaser. But... if you build it, do it for the fun of making it. Not because you want to churn out a popular mod. That's good advice for ANYTHING you mod though. Do it for you. Don't chase the forum's whims. Now, to actually answer some questions. There are advantages to cutting it up into pieces. Chief among those is the ability to distribute mass, lifting, and control surface numbers to make the thing actually fly in different configurations. Somewhere I've got a TERRIBLE little hacky one part rescue shuttle I built... And the only way to make a single part shuttle controllable was to give it an absurdly powerful reaction wheel so I could just ignore silly things like 'aerodynamics.' It wasn't very fun or realistic to fly. There are also some things that are tough with a single part - making ailerons move in opposition for example. So I THINK you'll want it to be multiple parts. Putting attachment nodes between pieces isn't that hard, and you were going to have to learn to do it anyway to attach the plane to stuff or payloads to the cargo bay, right? For the landing gear and the cargo bay - you just animate the pieces in blender. Then in Unity you name the animation. The collider bounding boxes and wheels are parented to the animated visible pieces, so they move appropriately. When you get to the cargo bay... KSP colliders can't be concave. So instead of making a bowl shaped single collider for the bay, you have to build up the sides and bottoms and doors out of a bunch of simple colliders without hollow areas. All that you need to know exists in tutorials... but... we do need to do some tutorial curation. At the moment if you google the wrong thing you could find someone doing a fantastic tutorial on how to import models into KSP 0.19, when things HAD to be an fbx, and there was only one way to configure attach nodes, and dinosaurs roamed the mun practically. If you persist at it, feel free to shout with questions. I don't remember all of the answers but I can try to point you the right ways. Be prepared- between the outdated tutorials and the fact that some things you'll just have to learn by trial and error there will be frustrations and things you'll have to do over 4 times. It'll take a while. But it's really fun too! I definitely advise that you START with a few simpler pieces before you get into a full space plane! Make sure you can get a fuel tank and an engine into the game... then tack something bigger!
  11. It's common to reuse stock's textures and models in place - i.e. to have your mod reference their files in the gamedata directory so you can duplicate but resize a model, or borrow from a texture. But as far as actually opening, modifying, and then transferring that model which is a mix of your IP and theirs... that's frowned on. A case could be made that it's fair use... but given that it doesn't provide commentary or differ in purpose from the original work... it's just ALSO a space game part... that case wouldn't be cut and dry. That said, there also aren't any actual damages - nobody is NOT buying KSP because they downloaded your part instead - so a law suit would be pretty unlikely anyway, even if they did think your use exceeded what was fair. The culture here is to be SUPER careful when it comes to that sort of thing - not because it's likely that they'll actually start suing mod authors, but because it's more likely that if they're worried about their copyrights they'll just lock down the game to make it impossible, or difficult, to mod. I don't consider that SUPER likely... but Take Two is a big company with a legal division that works hard to protect ALL of their interests. It's not beyond the realm of possibility that a knee-jerk reaction could occur. To answer your actual question - I don't know if it's specifically against a forum rule to do what you've suggested, but my heartfelt advice is 'show us the screenshots of what you make by tweaking squad's models, but wait until you've done something truly original before you actually release it!
  12. LOL. Documentation, like the stickies that still tell you to download Unity freaking 4? Yeah. There's regular rumbling about improving it... but it's a lot of work too. But yes! The blender import/export plugin will totally let you dissect a .mu to try to figure out how it worked!
  13. An empty node is just a point in space with a name, a location and a rotation, essentially. A minuscule amount of data. And all of that data has to be available whether you're using node{} tags or specifying it numerically. When you specify them numerically, KSP just creates the empty game objects for you. There is no performance hit to using node{} tags. I'm not using bold text to yell at you! I promise I'm not upset. But a thing happens on this forum... since so much of what we know about KSP is from trial and error and conjecture since we're not looking at their code. Someone guesses something aloud... and someone else without the knowledge to confirm or refute it repeats it... and then it becomes law for 3 years. lol. Your original post where you admitted to hypothesizing gets forgotten and the other guy's post where he pronounces it with absolute certainty is the one people refer to. So I wanted to make sure that those who come after in this thread saw my refutation! I really can't think of any way around it! But your part making options will be greatly increased if you get used to it! As an alternative to Unity.... I think you COULD also create your file in Blender with the .mu import/export plugin? If you don't know either program... it's a tossup... but if you have some blender experience, thought I'd mention it!
  14. the node{} tag is still supported. Yes, the name of the transform in that node definition refers to a unity game object that's invisible on it's own, but is inserted into the model's .mu file in Unity or Blender. The Node{} definition creates an attachment node that's usable in the VAB to stick things on the part, or to attach the part to other part's snap nodes (green spheres). It's function is identical to the old style where it's all spelled out numerically in the cfg with the string of digits. To document it here, the 4 parameters are the name that KSP will use for it, the transform name as specified in the unity file, the size parameter specifies how big the green sphere is in the VAB when you go to attach it to things. Node size does NOT affect ability to attach - you can connect 0 to 2 all day long, for example. The joint type is always fixed... and I believe changing this does nothing... but we all leave it in the file just in case someday KSP supports other types in node definitions. The way that file defines the docking node still requires transforms in the file, and they'd still need unique names, unfortunately. Nodetype DOES affect what you can connect a docking port to in the flight scene. They must have the same number. 0 for junior, 1 for standard, 2 for sr. other numbers for custom mods. And as shown, you can specify compatibility with multiple sizes the way it's shown there. referenceAttachNode actually tells the docking port which node to use in the VAB for sticking things together, so that you're able to decouple it in flight successfully. Without this, or with the wrong node named, and you won't be able to undock things that leave the VAB attached to your docking port! nodeTransformName is still specifying the unity game object that should be used as the docking port's capture point. In your example it's pointed at the same empty unity object as the main attachment node, but it doesn't have to be! Here's a link to a discussion Cap'n Kipard and I had about the subject -
  15. Moving KSP to the OS SSD would make a big difference, if you can clear up the space on that drive. Moving all those memes to the SSD would also make it faster to access them. Gotta remember what's important.
  16. That case was proving my point - that the license encumbers the person who downloads and modifies the code, not the author. I do find it interesting that the provision had to be handled under contract law - but it still does NOT obligate the author to do anything. They received no consideration, so they are bound by NO contract. That case ALSO was a case where the software was dual licensed and the contention wasn't that they'd simply violated the GPL - it was that since they weren't correctly using the GPL, what they'd done had risen to the point of pirating the commercial licensed version. The argument was that by not living by the GPL they'd tacitly accepted the terms of the commercial license, and the damages they sought were those licensing fees. A case that applies in NO way to what we're doing here. It's not that it's esoteric. I'm a professional photographer - my intellectual property is something I give thought to on a daily basis. Licenses and releases and contracts to protect, assign, and license my copyrights are a huge part of my business activities. I'm not bored by discussion of IP. I'm annoyed by the stirring of the pot without grounds. If you'd like to do this thing, may I recommend /r/legaladvice over on Reddit? Pedantic argument, particularly from a place of ignorance is the official pass time over there! As far as getting shut down... If Take Two's lawyers were to come to the conclusion that they could have some exposure because they haven't sorted the licensing on their API... what is more likely - they assemble a crack team of copyright, software and constitutional attorneys and hammer out a brilliant license? Or they say... "On second thought, lock it down. We don't know what they'd sue us for exactly... but someone might sue?" Their API is OBVIOUSLY released ARR... as is anything that doesn't have other specific license attached. It's my beer until I tell you that you can have it, whether I'm holding it at the moment or not. There's nothing wrong with including that exception. But all of the energy we put into this discussion could have sure produced some sexy new parts.
  17. Amen. Knock it off. I'm pretty level headed and newb friendly, but I'm really wishing I could get some choice words past the moderators right now. You're behaving in a way that is toxic and dangerous to the community. Stop. You should talk to your lawyers about licensing your mods. I think we've made it really clear that NOBODY in the modding community is interested in you getting involved in our licensing. PLEASE STOP.
  18. I'm not weighing back in on that one, but you can look at the main hysteria thread and find where I actually talked to my lawyer about it. Long story short - mountain out of molehill. I'm trying to get out of the rest of this discussion, but another couple of things were just SO WRONG that I couldn't ignore it - LICENSES ARE NOT CONTRACTS. A contract requires certain legal elements - a meeting of the minds, an offer, acceptance, consideration... NONE of those things happen when a piece of code is released into the wild with a license. A GPL license is one sided - the author isn't getting paid or receiving any tangible benefit for allowing others to use their code. It's a grant - they authorize certain kinds of use and prohibit others. They're not BOUND by anything. The USERS are... if they want to continue to use the granted license. It would be pretty unfair (and illegal) to pretend the modder releasing their code had some obligation to anyone, when he wasn't compensated. That's basic contract theory. And further, if it WAS A CONTRACT, what you described is NOT how contracts work. The whole contract isn't suddenly nonexistent because one clause hasn't been fulfilled. Do you think you just get to keep a car without paying for it if they forgot to include one of the trim screws in the cupholder? "I paid for a whole car, you delivered 99% of a car! Breach! The agreement's off!" Lolz. When a suit is brought for breach - the court remedies THAT provision. The rest of the contract is perfectly valid. Nobody is losing their protections under a license because a different section was in question. WHEN a breach suit is brought... the contract isn't ruled valid or invalid... remedy is prescribed to correct the breach. If possible, that remedy should just be fixing the problem. So the court would ask the modder "Well, can you give that user the KSP source code?" And the modder would say "No, I don't have it. Squad doesn't release their code." So specific performance being out... that would leave expectation damages - the judge would look at the user and say "Well, how much money did you lose because he didn't give you the KSP source code?" To which the user would scratch his head and say "Money?" At which point the judge would throw the case right out... because there are no damages. To summarize... Licenses are legally 'releases' not 'contracts.' You cannot breach your own release, because you have ALL the rights. A release is spelling out which of your rights you give to someone else and with what requirements. It comes with no obligations on your part.
  19. To manually set tuning parameters you do have to turn off the autotune feature! As for just getting into orbit - it's not RSS optimized but certainly could be with some tweaking, but you can feel free to rob from my example at - https://github.com/krpc/krpc-library/blob/master/Art_Whaleys_KRPC_Demos/Simple_Launch_Script.py Someone math-y-er than me might be able to figure out a more efficient curve shape... and of course if you have limited engine lights you may want to do something smarter with the logic towards the end of ascent that tries to precisely tune the apoapsis.
  20. Ahhh! So they have to at least create and abandon LIKEABLE ones!
  21. I was NOT referring to @Kerbart when I described the hassles that 'typical' users create when they ignore a mod's warnings! And... I'm just going to put it out here... if someone ever had it out for @linuxgurugamer , all they'd have to do to kill him would be to come here... keep starting mods... and then abandoning them so he has to take them over. Eventually... he's going to have so many of them that he'll forget to eat...
  22. I was going to suggest the same - you could still let autopilot check and maintain pitch. If your rocket 'wants' to fly the curve then it should take very little control input to stay on course, but guidance checks wouldn't be a bad thing either way! But you'd have to mathematically describe your ideal curve. Which is the sort of thing KRPC is great at! You could log pitch, altitude and velocity for several typical launcher configurations flying without guidance and then try to derive an equation to describe them! For my demo script here https://github.com/krpc/krpc-library/tree/master/Art_Whaleys_KRPC_Demos I just used a quadratic shape... and it's not terrible... but I'd love to upgrade to something more efficient! If you really do want to just let pitch to it's thing while AP controls yaw and roll, then you can just set the pitch PID's to zero so there's no control authority. Here's a super quick and dirty example of that I hacked together. Things that aren't totally obvious - The last 10 lines or so are just there to re-enable autotune every 10 seconds and then disable it again. That lets the autopilot keep itself tuned correctly as mass and control torque change over time. I don't know that it's totally necessary, but it seemed like a good idea. #Configure ascent parameters HEADING = 90 ROLL = 0 ALT = 100000 import time import krpc #Setup KRPC conn = krpc.connect() sc = conn.space_center v = sc.active_vessel #Configure initial Autopilot values ap = v.auto_pilot ap.target_pitch_and_heading(90, HEADING) ap.target_roll = ROLL ap.engage() #Launch v.control.activate_next_stage() # Engine Startup #Vertical Ascent while(v.flight(v.orbit.body.reference_frame).vertical_speed < 100): time.sleep(.1) #Pitch Over ap.target_pitch_and_heading(80, HEADING) time.sleep(10) #ap.wait() ought to work here... but it was never unblocking so I cheated for this quick test #Disable pitch guidance ap.auto_tune = False ap.pitch_pid_gains = (0,0,0) #Retune Yaw and Roll AP every 10 seconds nextcalibration = time.time() + 10 while(v.orbit.apoapsis_altitude < ALT): if(time.time() > nextcalibration): ap.target_pitch = v.flight(v.surface_reference_frame).pitch #Lock AP to current Pitch ap.auto_tune = True # Auto tone all controllers time.sleep (.1) ap.auto_tune = False ap.pitch_pid_gains = (0,0,0) #Release Pitch control again nextcalibration = time.time() + 10 time.sleep(.1) v.control.throttle = 0.0 #MECO
  23. The unity DLL's are distributed in the exact same package with KSP. They're not being used as part of a compiler toolchain for unity, because most mod development doesn't require unity's download. They're provided with the game... work with the game's assembly-csharp dll to present a public interface. Again, almost every heading of the FAQ assumes you're writing the calling software and are asking how to link with a non free library. In this case, the bulk of the software is Squad's and THEY'RE loading and invoking methods from the GPL code... so again... they're the ones who have a compliance problem, if anyone does. Also, instead of ratting out the community and putting them on the FSF's radar... you could have used the language from the FAQ you love so much :
  24. I agree about Unity DLLs, but the linking with Kerbal Space Program is the real problem. At the end of the day, this is just the GPL working "as intended". Their aim is to encourage people to release software under the GPL, in this case, they are encouraging the development of a libre space simulator. I'm sorry this conversation's taken a turn for the negative. Mod developers get a lot of criticism and we handle it with varying degrees of grace depending on the moment and context. You're a new poster here and we shouldn't jump down your throat. Let's all try to keep it more civil. That said... I don't feel like you addressed any of my points... How is referencing the assembly-csharp dll any different from referencing the unity ones? They're both downloaded with KSP, in the same directory. Both present interfaces between the inner workings of the game and engine and plugins that reference them. Why would you consider one a system library in this situation, and the other one not? And... again... the language of the GPL is all about using a non GPL library with a GPL program... this is the opposite. KSP is the party that's not in compliance, when it goes loading and calling our methods. But, of course, we can't obligate squad to change their license. So there's no legal traction anywhere. The reason you're getting so much negativity is that the post comes off as making a mountain out of a molehill... we all agree that the chances of any issue developing are NEAR ZERO. Being critical of a group of people who already put in a lot of their free time just to get criticized all the time just rubs people the wrong way. It's good to bring the point up. If you wanted to do something constructive with it... there's a thread somewhere... that i think has been stickied... that is a guide on how to choose a license for your mod. It would be totally appropriate to add to that thread that you think best practice is to include the exception clause as suggested by GPL for projects that need to link with non GPL code. There's no reason that's not great advice. But, as you pointed out, changing the license of Mechjeb would require the agreement and relicensing of 45 people's code. That's not going to happen over something that isn't likely to ever be a big deal, so being critical about it isn't going to get you anywhere. That's why the EFF requires contributors to their projects to either assign copyright or release their code into CC. I'd actually never given that much thought, but now that you've brought it up, I will be making sure I settle that with contributors before I accept PR's going forward! I don't want to be in a situation where I can't change my license without deleting a bunch of code when something DOES come up!
×
×
  • Create New...