Jump to content

Jikahn

Members
  • Posts

    54
  • Joined

  • Last visited

Everything posted by Jikahn

  1. Just replying here in Aug 2022. Installed with CKAN on KSP v1.12.3.3173. This still seems to work perfectly at first glance. I would turn off the navball ghosts in the stock options, but the mod seems to override them regardless.
  2. Words for google searches: thrustmaster 16000 stick kerbal space program ksp crazy haywire extreme target gui broken fix With my Thrustmaster T16000M FCS HOTAS stick the full axis extension values range between -32767 and 32767. That is to say the stick itself only ever outputs from -32766 to 32766 even though the extremes are labled -32767 and 32767. In my case, instead of adding 32768 using 0x8000, I need to add 32766 using 0x7FFF. Edit: I don't know why the device analyzer only shows 32766 at the extremes. I have no deadbands and the physical readouts along with the virtual readouts all show I am reaching the max value. Regardless of the why involving the device analyzer, vebyast is correct, and my code block has been updated to the correct hex value. HOW TO DO THIS without reading this whole thread and getting confused: The code in target.tmh has changed with updates. You should edit the code again and overwrite your custom version of target.tmh after every update just in case. Put the code below or the code above before the first function of your target.tmh file. IDK if different sticks have different extremes. You could always just add a small deadband at both ends. It should look something like this. // This is the code you insert at the beginning short UnityAxis (short TARGETAxis) { /* Move the value entirely into the positive domain */ int intermediate = TARGETAxis; /* Add 36766 which is 0x7FFF in hex and then divide by two */ intermediate = (intermediate + 0x8000) / 2; return intermediate; } // Below is the first function of my target.tmh file at the time of writing. You don't need to insert this, as it is just and example. struct sAxis { char dxmap; char dir; int curvemode; // 0=none, 1=S, 2=J, else=custom char lower, center, upper, curve; // S curve parameters float ab; // J curve parameter, zoom for Scurve char locked; char relative; int trim; int val, relpos; int key[6]; // ou, iu, om, im, od, id } Now you have to change one line buried in that code deep down somewhere so it is time for CTRL+F. Use this or some portion of it: if(index < MOUSE_X_AXIS) DX(index-1+OUT_ID_AXIS, value); replace it with: if(index < MOUSE_X_AXIS) DX(index-1+OUT_ID_AXIS, UnityAxis(value)); The above line is number 646 for me as of this writing. Save your file as something.tmh and put it where your profile files are, or in the same directory as the script file you are about to make. The script and your customized target.tmh have to be in the same directory or where the original target.tmh is. The function name and parameter list where that line resided was int DXSetAxis(int index, int value) at the time of this writing. It's extremely easy to convert a GUI profile to a script, so that will be my contribution. Though in fiddling with this I accidentally learned how to write target scripts. Until then users who can't write scripts can: Make and save the profile with the GUI. Navigate through the profile to the page with "1. Select Control 2. Assign Parameters 3. Select Event" at the top. Make sure you saved. Click view script. That's your script. Copy paste that into a text editor. Close the GUI editor and open the script editor. Save it where you save your profiles, but replace the beginning line include "target.tmh" with include "newfilename.tmh" Not literally newfilename, whatever you named it. I named mine targetMXY.tmh Put that file in the same place you put your new script file. Don't forget to make a new custom target.tmh with every Thrustmaster software update just in case. Make sure you are running the script before you launch KSP when you assign controls in KSP. Want a button to switch to controlling planes to controlling rockets and back? You are probably going to have to read the TARGET script PDF depending on what device you are using. I'm using a stick identified internally T16000. I want button 14, defined B14 internally, to be my switching button. If you want to set up deadbands anywhere in the script without going back to the GUI, you can edit the SetSCuve commands, for example SetSCurve(&T16000, JOYX, 5, 3, 5, 0, 0); creates a deadband of 5 on either extreme and 3 surrounding center position. MapKey(&T16000, B14, SEQ( EXEC("printf(\" Switching to Plane Controls (Twist = Yaw\; X = Roll) \\xa\");" "MapAxis(&T16000, RUDDER, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, RUDDER, 0, 0, 0, 0, 0);" "MapAxis(&T16000, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, JOYX, 0, 0, 0, 0, 0);" ), EXEC("printf(\" Switching to Rocket Controls (Twist = Roll; X = Yaw) \\xa\");" "MapAxis(&T16000, RUDDER, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, RUDDER, 0, 0, 0, 0, 0);" "MapAxis(&T16000, JOYX, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, JOYX, 0, 0, 0, 0, 0);" ) ) ); Much thanks to Jason Melancon and Vebyast for finding and providing answers to problems I'm sure that has plagued many people. You guys are the real MVPs. P.S. Is your stick twist going bonkers like mine was? The fix is simply cleaning the twisting mechanism with 91% isopropyl alcohol. This guy shows you how. Read the comments section for more tips. Here's my script, partially generated by the GUI if anyone is interested. printf simply prints things to the script window. It was useful and i just left it. If you copy this be sure to switch to plane mode before assigning controls. Things will make more sense in the KSP input options window. include "targetMXY.tmh" int main() { Configure(&HCougar, MODE_EXCLUDED); Configure(&Joystick, MODE_EXCLUDED); Configure(&JoystickF18, MODE_EXCLUDED); Configure(&Throttle, MODE_EXCLUDED); Configure(&A320Pilot, MODE_EXCLUDED); Configure(&A320Copilot, MODE_EXCLUDED); Configure(&TCAQuadrant12, MODE_EXCLUDED); Configure(&TCAQuadrant34, MODE_EXCLUDED); Configure(&TCAYokeBoeing, MODE_EXCLUDED); Configure(&TCAQBoeing12, MODE_EXCLUDED); Configure(&TCAQBoeing34, MODE_EXCLUDED); Configure(&T16000L, MODE_EXCLUDED); Configure(&LMFD, MODE_EXCLUDED); Configure(&RMFD, MODE_EXCLUDED); Configure(&TFRPRudder, MODE_EXCLUDED); Configure(&TWCSThrottle, MODE_EXCLUDED); Configure(&TFRPHARudder, MODE_EXCLUDED); if(Init(&EventHandle)) return 1; SetKBRate(32, 50); SetKBLayout(KB_ENG); SetShiftButton(0, 0, 0, 0, 0, 0); MapKeyIOUMD(&T16000, H1U, L_ALT+'w', L_ALT+'w', L_ALT+'w', L_ALT+'w', L_ALT+'w', L_ALT+'w'); MapKeyIOUMD(&T16000, H1D, L_ALT+'s', L_ALT+'s', L_ALT+'s', L_ALT+'s', L_ALT+'s', L_ALT+'s'); MapAxis(&T16000, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); SetSCurve(&T16000, JOYY, 0, 0, 0, 0, 0); MapAxis(&T16000, RUDDER, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); SetSCurve(&T16000, RUDDER, 0, 0, 0, 0, 0); MapAxis(&T16000, JOYX, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); SetSCurve(&T16000, JOYX, 0, 0, 0, 0, 0); MapAxis(&T16000, THR, DX_SLIDER_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); SetSCurve(&T16000, THR, 0, 0, 0, 0, 0); MapKey(&T16000, B14, SEQ( EXEC("printf(\" Switching to Plane Controls (Twist = Yaw\; X = Roll) \\xa\");" "MapAxis(&T16000, RUDDER, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, RUDDER, 0, 0, 0, 0, 0);" "MapAxis(&T16000, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, JOYX, 0, 0, 0, 0, 0);" ), EXEC("printf(\" Switching to Rocket Controls (Twist = Roll; X = Yaw) \\xa\");" "MapAxis(&T16000, RUDDER, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, RUDDER, 0, 0, 0, 0, 0);" "MapAxis(&T16000, JOYX, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);" "SetSCurve(&T16000, JOYX, 0, 0, 0, 0, 0);" ) ) ); printf("\xa Written in part by Nocturnalverse\xa"); printf(" Defaulting to Rocket Controls (Twist = Yaw) \xa"); } int EventHandle(int type, alias o, int x) { DefaultMapping(&o, x); }
  3. Yes, the stock model generates too much lift for wing area. Your planes will also reach higher speeds in FAR than you do in stock.
  4. Planet shine has adjustments for ambient light. In the past, it has been known to conflict with other mods that mess with ambient lighting.
  5. So far so good with the new DLL and I even reinstalled the Jan25 dev version of KJR for IR compatibility.
  6. It's super easy to use, just click "use terrain altitude" and you can literally drag and drop the waypoint exactly where you want to on the body from the map view. Then if you need it at a certain altitude for some reason you can edit that manually.
  7. If you don't want to use a dev version check out Waypoint Manager, I just came back recently from a long break as well and was overjoyed to find this.
  8. If anyone wants the 1.1.6 sunflare back you can DL this edit which simply overwrites the new flare images with the old ones and changes two values in the .cfg file to match the entries from 1.1.6. Replaced .pngs in StockVisualEnhancements/SVE_Scatterer_Sunflares/Sun with the 1.1.6 .pngs In StockVisualEnhancements/SVE_Settings.cfg, replaced entries "flareSettings" and "spikesSettings" entries with the 1.1.6 entries. All the other entries in that section were the same. Edit: Updated for 1.2.1 SVE_OldFlares_for_1.2.1.zip: https://drive.google.com/open?id=0Bz8b-qQdcJUJRGdpS0tYVmxBN0k
  9. Is there any way to turn the sun fog off in the configs? I'm not sure I like it.
  10. I do expect it. I'll point the FAR thread over here. Thanks for looking at it. Stay safe from the storms.
  11. I'm running the latest developement version of FAR, without KJR now, and it's still occuring sporadically but I have a ton of other mods. The next time it happens I'll post another log.
  12. I had it happen with another craft, after removing KJR, but was unable to find reproduction steps. I uninstalled FAR temporarily and it landed fine.
  13. How do I get the custom ComSat contract I set up to appear. I've made sure they are enabled and can cheat it in. Do I have to do a specific mission to make them start appearing? Will they appear on their own? Do they have rep limit? Also, in regard to repair panels, will missions to repair sattelites generate for any sattelite with a panel? Or do they have to be sattelites that are made for contracts?
  14. I've found a bug with the latest version of RealChute/Latest dev version of FAR (Released approx 20 hours ago)/Kerbal Joint Reinforcement 3.3.1. Log and craft file here: https://drive.google.com/open?id=0Bz8b-qQdcJUJcDdXUEYzbUprQWs Video of behavior here: 1. Fresh install of Kerbal Space Program 1.2.2.1622 running 64 bit exe on Windows 7 64 bit. 2. Manually install FAR dev version. Use CKAN 1.22.1-0-g174271a (beta) to install KJR 3.3.1, ModularFlightIntegrator 1.2.4.0, Module Manager 2.7.5, and RealChute Parachute Systems 1.4.2.0 3. Construct the rocket here: a. Add a Mk1 Command pod + Z-1k battery + Science Jr. + 1.25m Service Bay with 2 Mystery Goos inside as shown + 3x Mk1 Crew Cabin b. At this point attach 2 RealChute Radial Chutes exactly centered with the COG. Open the real chute interface via the right parachute. Select Kevlar, change touchdown speed to 5, and parachutes used to 2. Click apply to all symmetry counterparts 3 times. c. Add a TR-18A Stack Decoupler + Rockomax Adapter + 4x Rockomax X200-32 Fuel Tanks + 4x Tail Fins + 2x Launch Clamps 4. Launch. a. Throttle Up to Full b. Activate Stage 2 c. Immediately, without rolling, nose over to heading 270 and 85 degrees pitch. d. At 1000 meters, cut throttle to zero via hotkey, and activate stage 1. e. When verticle speed crosses into the negative activate stage 0 parachutes. f. At 700 feet the parachutes will start to spread out. The parachutes should freak out and the craft will disintegrate. Edit: The behavior doesn't happen when FAR/ModuleFlightIntegrator is excluded and KJR is kept. It doesn't happen when KJR is excluded but FAR is kept. Edit 2: The behavior also doesn't happen when I move the 2 mystery goo outside the service bay. I guess that's the issue. Edit 3: Behavior can be solved by using the vanilla advanced tweakable "Rigid Attachment: On" for the Mystery Goo.
  15. Bug Report: When a ship piece explodes after staging, the ship manifest window disappears and cannot be reactivated. 1. Create a simple ship: pod, tank, swivel engine, decoupler, flea solid booster. 2. Launch it. When the flea runs out eject it via staging. 3. Remain in the area and hear the explosion. 4. Ship Manifest window cannot be opened.
  16. I've often thought about trying my hand at modding KSP, and I think I finally know what I would like to mod. How hard would it be to mod the game so Kerbals simply don't ragdoll? I don't find the mechanic funny anymore, as it most often occurs a times that make no sense. Is this something I would need visual studio for? If I could accomplish that much, I might be able to add more interesting options later on instead of just eliminating them completely.
  17. illmatic, I'll do you one better. Lets remove maneuver nodes because those are complete BS and unrealistic. You should have to calculate your trajectories manually. Also add in an ultra realistic atmosphere with real solar system sizes, and N-body physics. Basically to play the game you would have to have to literally be a rocket scientist. Lets make the game a real simulation and after about 10 years of post graduate education and experience you might actually get something into orbit... providing you are willing to collaborate with large teams of other scientists who also have an extensive education. Don't kid yourself, Kerbal Space Program is never going to even begin to approach reality even with all the "ultra" realism mods. There is a level of realism that even the most hard core among this community would finally say "Ain't nobody got time fo dat." Then no one would be playing the game, because almost everyone who could play the game would actually be helping to launch .... into space IRL. So what I'm trying to say is that there is a sweet spot for everyone in regard to realism. And no two people are ever going to agree on exactly where that spot is. The real goal is to make a game that educates as well as entertains. And if you cross the psychological boundary of "ain't nobody got time for dat", you are going to lose most of your players. Typically ultra realism, even in simulators has been left to modding communities. I don't know where that line is, but it's important to stay on the right side of it.
  18. Here's the output log, toadicus. https://www.dropbox.com/s/du77whlqk0lah2z/output_log.txt?dl=0
×
×
  • Create New...