Jump to content

Home Fries

Members
  • Posts

    3515
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Home Fries

  1. Hi Everyone, I apologize for being radio silent for a while. My day job has been crazy, and I've had other things going on as well. Nothing bad, I assure you, but things are certainly keeping me on my toes. I just wanted to drop in and say that I've hit the stack limit in TARGET for DCS, so there won't be any more modules introduced in CTS version 2. I may be able to implement fixes in this version, but unfortunately nothing that will require additional code. I have a proof of concept for version 3 that uses the DX120 framework, which will significantly reduce the number of keystroke substitutions (and by extension the stack size of the script). I've mentioned this before, but implementing this will not just take time, but it will take large chunks of contiguous time because it's a fundamental change in how profiles are approached. I'd also like to implement the F-16 throttle and button suite, and suddenly 120 DX buttons doesn't seem like a whole lot . Anyway, Version 3 will take some time not only for the framework shift, but because I'll need to migrate profiles individually. I can start with betas and rapid prototyping with the more popular modules, but I'll still need to migrate and baseline the shared routines. Bottom line: none of this will happen until at least June, and then I'm hoping that my schedule slows down for the summer. I haven't really had time to evaluate changes to controllers with patches, so if you find that a patch breaks a profile, please post here or PM me. I'd like to find time to at least fix bugs. Best, HF Please send me your DCS_World.tmc file so I may properly evaluate this.
  2. Thank you for such a great write-up. My goal in this is to allow up to two sticks and two throttles to be connected in the profile, with one being primary and the other secondary (user's choice). For example, someone can use the Warthog throttle with the F-18 Stick as a primary config, with something like HCougar as the secondary config for a F-16 throttle and side stick configuration. I'm hoping to keep this generic to add the new F-16 TQS and the AVA and any other peripherals. Then within the same profile, someone flying the F-18 can use the primary configuration, and then loading the F-16 profile can use the secondary configuration and those axes will be selected for the TM virtual controller. Ideally, the alias is what I would like to do, and you're right that I don't want to modify existing TM libraries because that's a can of worms for both myself and the end user. What I'd really like is in the database config the end user selects controllers for the primary (CJy0 and CTh0) and secondary (CJy1 and CTh1) HOTAS, then for each profile can choose to use the secondary stick or throttle instead of the primary. I also want to create consistent button mapping for both primary and secondary buttons, (so all buttons can be used), with the profile mainly changing axis assignments on the fly. With 120 buttons I can make this happen, and this is part of my strategy going forward to keep the script smaller and allow more expandability against the TM stack limit. Putting the alias into the axis mapping function may be exactly what the doctor ordered, and then I'll better figure out a static button mapping scheme. I'll give this a try.
  3. Ok, I shortened the variable names to 4 characters with the last character being the number 0 or 1 as before. I was still getting the index out of bounds using "alias", but converted the variable to char (dimmed at 15) and I was able to compile without the index error. Problem is now that I cant get the commands to carry, even though it looks like it should work. I'm sure I'm missing a subtlety somewhere. I don't have a lot of experience working with alias/register logic. Here's the new code: char CJy0; char CJy1; char CTh0; char CTh1; //alias CJy0="Joystick"; //alias CJy1="HCougar"; //alias CTh0="Throttle"; //alias CTh1="HCougar"; int main() { Dim(&CJy0, 15); Dim(&CJy1, 15); Dim(&CTh0, 15); Dim(&CTh1, 15); sprintf (&CJy0, "Joystick"); sprintf (&CJy1, "HCougar"); sprintf (&CTh0, "Throttle"); sprintf (&CTh1, "HCougar"); if(Init(&EventHandle)) return 1; // declare the event handler, return on error Test_Init(0); } int Test_Init(int secondary = 0) { if (secondary) { MapAxis (&CJy1, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CJy1, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CTh1, THR_LEFT, DX_THROTTLE_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CTh1, THR_RIGHT, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); } else { MapAxis (&CJy0, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CJy0, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CTh0, THR_LEFT, DX_THROTTLE_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CTh0, THR_RIGHT, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); } } I get a good compile, but no axis response in the Device Analyzer.
  4. Thanks. I'll try it out!
  5. I'm currently working on version 3.0 of my CTS script, and one of the things I want to do to minimize the stack size (for expandability) is to use aliases for each controller set instead of having separate routines for mapping the Warthog, Cougar, F-18 stick, etc. I tried to create the following code as a proof of concept for being able to assign aliases to the already existing aliases of &Joystick, &Throttle, and &HCougar: alias CJoy0="Joystick"; alias CJoy1="HCougar"; alias CThr0="Throttle"; alias CThr1="HCougar"; int Test_Init(int secondary = 0) { if (secondary) { MapAxis (&CJoy1, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CJoy1, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CThr1, THR_LEFT, DX_THROTTLE_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CThr1, THR_RIGHT, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); } else { MapAxis (&CJoy0, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CJoy0, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CThr0, THR_LEFT, DX_THROTTLE_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); MapAxis (&CThr0, THR_RIGHT, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE); } } int main() { Test_Init(0); } The error I get is: Runtime Error: Index out of bounds for: devicedata in GetDeviceData ( line 329 in target.tmh ) and the routine in target.tmh is int GetDeviceData(alias dev) // fill global devdata alias based on device name (joy1, joy2,...) { char t; Dim(&t, 16); strname(&dev, &t); Map(&devdata, &&devicedata[t[3]-'0']); } note: Map(&devdata, &&devicedata[t[3]-'0']); is line 329. I've also tried assigning the CJoy/CThr values as chars (dim 15) and I get the same problem. I'm unsure what needs to be done because my aliases don't seem to map properly to an array. I'm open to any suggestions. Being able to crack this would go a long way to modularizing my code for version 3.0.
  6. Yes, though it may be basic to start. I'm very close to stack limits and I need to start building CTS 3.0 to take advantage of the 120 buttons. Adding a full Phantom profile may break the script.
  7. IMO the ideal solution would be to add a combo box in the ME to either allow both variants (e.g. F-86FC and F-86), or make the slot exclusive to one variant or the other (for servers that want to restrict it to high fidelity). This would give mission builders the flexibility without having to create extra slots for each version. Hopefully ED implements something like this, esp. with the high fidelity MiG-29A coming out as well.
  8. Version 1.41 is up. The flightsuits have been updated to 2.9.x and we now have custom helmets.
  9. Version 1.41 is up. The flightsuits have been updated to 2.9.x and we now have custom helmets.
  10. Version 1.41 is up for both skin packs. The flightsuits have been updated to 2.9.x and we now have custom helmets.
  11. Spud, I was away for a while, and just saw this. It's no doubt due to the new version of TARGET that allows up to 120 buttons. This makes the DX+.tmh file redundant and likely incompatible. I'll need to look at this, so please be patient.
  12. No promises. I'm very near the stack limit of what TARGET will allow. I'm hoping I can get one more module in before I put all my effort into CTS 3.0.
  13. You're in! (Time late 1 week or so)
  14. Yes, the TMC file. Sorry. Also, sorry I took so long to get back. I was away all last week.
  15. Once you have downloaded version.txt (and the version in the OP of this thread is correct), be sure to put it in the CTS\DB folder. You should be prompted to overwrite the original. If this doesn't work, you can always reinstall. As long as you install to the same location, it won't affect your custom profile settings. Please upload your dcs_world.cts file so I may analyze it.
  16. I'll take a look at the Mirage. I haven't looked at the MiG-21 since VAICOM went freeware, so I'll take a look when I get an opportunity. Thanks for the heads-up. No promises; it may be something I need to fix in CTS 3.0. I responded to your PM, but I'll post the answer for everyone else's benefit. I noticed on the hornet in particular that you need longer keypresses than the default 60ms to get something to register. I actually increased the default keypress time for the F/A-18 in particular, though this is something you can adjust in CTS. If you go to the F/A-18C section of the values page, you'll see Keypress Duration for F/A-18 and Delay between Keypresses for F/A-18. These are set to 70 and 80ms respectively, and you can increase them by small amounts to work for your system. Regarding the diff.lua files, the R/N for the kb file is for the orientation of the numeric keypad, where N is for Normal (789 on the top, 123 on the bottom) and R is for Reverse (123 on the top, 789 on the bottom like the UFC itself). The rest of the files are for the specific controllers, e.g. WH for Warthog and HC for HOTAS Cougar. The first 2 MFDs are applied to the TARGET profile integrated into the virtual controller. The MFD3 diff.luas are for if you have a third MFD you can apply that to the individual controller in DCS (TARGET sees only the first 2 MFDs). Remember that the controls menu is a spreadsheet, where the commands are the rows and the controllers are columns, and each controller gets its own assignments (and its own diff.lua).
  17. Everyone, I'm happy to announce that version 2.72 is released, along with a new webhost that should provide better uninterrupted service than my personal NAS. A new installer is available in the original post, as well as an updated version.txt that you can place in your CTS\DB folder. However, if you do not wish to do a full update, you can open your existing version.txt and replace the top line with this entry: http://cts.virtualarmedforces.com/CTS/DCS/CTSversion.txt I would also like to give a special shout out to the Virtual Armed Forces for hosting CTS going forward. This may seem a bit self-serving since I am a member of the VAF, but I cannot appreciate enough their commitment to the storage and bandwidth CTS requires. If you ever want to play PvE multiplayer in a competent, yet relaxed atmosphere, give the VAF a look. You can also see us in the Air Combat Sim Podcast #42!
  18. First, you shouldn't install CTS to your TARGET folder in c:\Program Files (x86). This is a protected folder. Install CTS to someplace like your Documents folder. CTS will find your TARGET install. Next, be sure to compile DCS_World.tmc in the CTS graphical user interface prior to running it. I'm sorry I can't spell this out auf Deutsch. Ich habe 2.5 jahre Deutsch gelernen, aber Ich vergessen!
  19. All, It's been a while, but I'm happy to announce that I have a persistent solution to hosting that takes the CTS content off my NAS and onto the cloud. I would like to thank @VAF [136] Striker of the Virtual Armed Forces (shameless plug) for the storage space. A month ago, I had to change my network solution, and with the new solution I was unable to forward the HTTP port to my NAS, and I refuse to set it up as a DMZ. Once the cloud-based solution is finalized (thanks again, VAF, in another shameless plug), I will upload a new installer EXE as well as an updated version.txt for you to use if you don't wish to reinstall. In the meantime, the latest files are still available on my Google Drive. Just extract the zip files to your CTS folder and they're nested properly to go into the folders they should be in. Merry Christmas and Happy Holidays to everyone!
  20. We are recruiting, and the discord was just updated (we were unaware that the so-called permanent link had expired). We'd love for both of you to stop by our channel and see if we're a fit for you. Full disclosure: activity for our F-14 squadron is currently suspended while we build the F-15E squadron, but we will gladly reopen it for membership with interest like yours. We have one F-14 driver who recently returned. We're also happy to instruct in both pilot and RIO seats.
  21. @Rudel_chw Thank you for doing these missions. They're a great addition to the training regimen!
  22. Discord link updated.\ https://discord.gg/NRaZbcK9nJ
  23. Discord link updated: https://discord.gg/NRaZbcK9nJ
  24. New perma-link Discord link (this time I mean it!) https://discord.gg/NRaZbcK9nJ
×
×
  • Create New...