Jump to content

Kolyma

Members
  • Posts

    90
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Kolyma

  1. Do you know how I might go about overriding these values on a per-skin livery basis? I'm trying to make a livery skin for a DCS model that does not support an external specular map and just uses these the values from the edm json like you've described here. Instead of mod'ing the entire DCS install by changing this json file, which would affect all skins for the model, I wonder if I can put something in the livery directory, maybe in the description.lua. So far my searches and experiments have not found a way.
  2. I think what is happening here is that the DCS Su-25T model does not support an external specular map. For models that do support an external specular map, inside their *.edm files are references to specMapValuebut the edm file for the Su-25T does not contain this entry, just a bunch of specPower specFactorentries, which are likely just global lighting values and do not allow for pixel-level specular values. I'm no 3DS Max or model expert, but I guess the Su-25T model is very basic and hasn't been updated in a while. Even the freely included TF-51 includes external specular map support...
  3. Wonder if there is some way to just use the standard external specular map, like for example with the F-5E-3description.lua has content like {"F-5E3_nose", 2 ,"f-5e3_nose_cap_spec",false}; {"F-5E3_nose", 0 ,"f-5e3_nose_cap",false}; where 2 is a slot for the specular map file (green & pink image). But when I try the same thing in an Su-25T file {"fuz-center", 2, "SU39-fuz-center-PAINT1-DEF-01-SPEC", false}, {"fuz-center", 0, "SU39-fuz-center-PAINT1-DEF-01", false}, Nothing changes. Even if I make an error or leave the specular image file out, there's no "missing texture" default texture when viewed in modelviewer. I'd like to make a few shiny skins for some friends but don't really want to mod their DCS install besides just dropping a new livery in savedgames. I looked at the *.json files for the Su-25T, Su-39, and F-5E-3. While I see why overwriting the Su-25T one with Su-39 info changes lighting, that just makes slight specular lighting changes without using an external specular map file. The content of the F-5E-3 json doesn't seem helpful.
  4. Is there a way to leave these placeholder aircraft out of the F2 looky-see circle of aircraft?
  5. What does immortal/invisible actually do? Because I have those setcommand entries on my units but I can still F2 around to them and it appears possible to destroy them. I must have something silly simple not enabled.
  6. Interesting. The testing map we're using has air and ground units. Can't replicate the lag with the extras added but as soon as we run the exact same map without the extras, we get stop-lag. Somewhere there has to be someone who's made engineering-level of detailed analysis about why this happens and how to mitigate. I totally understand a contributing factor could be dynamically spawning units that are NOT currently active in the server. This seems to be what's happening. In our test map, we've got several different kinds of AI units that can be spawned from different areas, but not all types are always active due to random'ing. Seems the stop-lag happens when an AI AC is spawned of a type that is not currently operating in the map. Think it also does it for client slots. Most of my observations so far have been about AC although we've made the same changes for the dynamic ground units.
  7. Yeah, I saw the old thread and bumped it. Nothing else came up with Google search right away and I had decided to finally look into how to mitigate this issue after on-again / off-again attempts at playing around with servers and scripts. The stop-lag when spawning dynamic units was/is a real pain. Depending on where you are in flight it's either a minor distraction or a one, two, three frame slam into the ground kind of problem. Anyway, I converted my main script from delayed-activated only style to uncontrolled ramp-slotted + delayed-activated controllable & client style units and ran the server for a few hours. Seems for those of us on it that the stop-lag was gone. Need to try Winston_60's suggestion of using statics instead of ramp-parked units. Something bad about having airbase slots taken with defunct units just to correct dynamic spawns stop-lag. That would make more sense
  8. Hey thanks for this info. Really helped. I was getting lag with any of the scripting engines. Your suggestions made sense and helped with dynamic spawning new units without lag, regardless of late activation of other kinds of breugelcraft.
  9. Oh geez, looks like after today's update that "fixed" our F10 menu, now whenever I open any mission in DCS the game CTD's. EDIT: does it with my 3-screen setup and switching to single screen. Feels like we've entered a house-of-cards series of patches last couple of weeks
  10. Got it man. I'm just a 54-post lurker wanting to get the most out of my buck. Kind of oblivious to whatever drama is afoot with aftermarket keys. I buy on sales almost 100% the past 5 years...Looking forward to the Sept one and if my prior years calcs are correct, one in Oct and then Holiday sale. Maybe the Sept is the Oct sale this year
  11. I don't agree. And I don't find your tone helpful at all. I suppose it's good you advertise what you have to sell.
  12. I dunno if there's a lot of mischievous intent in the thread here so far. Most of us are probably spending more on this sim, considering peripherals and modules, than any other piece of software we own. It is indeed totally valid to ask what happens with duplicate license purchases and the possible options. What does happen in the tally of modules I own if I purchase a multi-pack containing a module I already own? All-in-all, between my son and I, plus a non-profit youth cadet program I command, I have 7 copies (and login accounts) of DCS world with various levels of module parity. Previously I've asked ED about bulk discounted purchase of modules for non-profits but got a reply they didn't do that. Shame because those kinds of offers are generally available. Heck, Google gives us an unlimited Google Org account for free and we've got over 1,000 usernames with TB's & TB's of drive space used. </rant>
  13. Dangit I want to be First Post on this one! Thanks for the thread merge, admin. Nice to clean up things. Here's the segment of my display config. I haven't been using a separate file. graphics_section.lua
  14. Does anyone know if this is possible now with online activation? I want to get the 4-pack and give 2 of the helos I already have to a 2nd account of mine. Possible?
  15. Goofy F10 map symbols zoomed & distorted After today's update, this is what I get on the in-game F10 map. In the ME it's fine. I'm using 3 screens 5760x1080
  16. "never interfere with the enemy while he is in the process of making a mistake" In other news, thanks for the fix RAZBAM. Let's get on with point track and CTD when ship helo pad landings... EDIT: CTD on non-carrier ships fixed---yippee on to the Normandy!
  17. Still a problem, correct? 9 months+ on this problem?
  18. Thankfully I only paid $35 for this half-baked, rarely-updated, AV-8B. We'll have DCS 4.0 (Open beta early access alpha version) before the AV-8B is "complete"
  19. Yeah the operational part with flight plans and persistent respawning is in moose rat, but last I checked, they only support a predefined library of user-created template units in the ME that are hidden and then cloned to spawn. I was spawning completely non existent units that were completely random configurations. In math terms, in order to get the same diversity of units you would have to define an unreasonable number of templates to get a similar variety. Like 100,000+ templates. I explained this a while back to flightcontrol but he got stuck on a repetitive "doesn't make sense* chorus. LOL, I gave up trying to explain and just tabled the idea for now. The difficult part is building a dynamic array of the available DCS aircraft, liveries, and skins from the filesystem and then feed iit into a random generator. From what I found, there was no way to access the DCS builtin library of this databases from a script running in the LUA scripting engine, so something must be built. In my clunky original script, I just cut N pasted from DCS source Lua files the relevant areas of each aircraft and poured them into my script. Still the effect was pretty cool. I even had the way points for start and end of runway so when the stupid runways got clogged, planes would soawn at one end of the runway and fly to the end before going off to their first real way point. I'd just put it on fishtank mode on a view of a particular airbase and my cat would sit there swatting at the meyhem
  20. I had it working a few months back with the last version of 1.5. I've been looking to move the features over to Moose, which shouldn't be too hard; just need to extend the low-level unit creation functionality. I haven't had the time lately. Moose currently only supports static hidden template unit definitions, not full on dynamic creation of units with dynamic liveries, skins, and such. My original script gave you everything like that and was a blast to watch run out for a few hours. I left my 3 giant screens up like a fishtank in my office during the day while DCS raged against itself and I worked on other stuff.
  21. Before I get into making something that might already exist, do we have a comprehensive, general-use, tool with tableShow -like features but instead of this kind of data: [env][mission][failures] = table: 000000007F3C6BE0 { [env][mission][failures][pp_damage_EmergMaxTempr] = table: 000000007F3C6C30 { [env][mission][failures][pp_damage_EmergMaxTempr][hh] = 0, [env][mission][failures][pp_damage_EmergMaxTempr][prob] = 100, [env][mission][failures][pp_damage_EmergMaxTempr][enable] = false, [env][mission][failures][pp_damage_EmergMaxTempr][mmint] = 1, [env][mission][failures][pp_damage_EmergMaxTempr][id] = pp_damage_EmergMaxTempr, [env][mission][failures][pp_damage_EmergMaxTempr][mm] = 0, }, [env][mission][failures][FWD_TANK_LEAK] = table: 00000000CCD75CF0 { [env][mission][failures][FWD_TANK_LEAK][hh] = 0, [env][mission][failures][FWD_TANK_LEAK][prob] = 100, [env][mission][failures][FWD_TANK_LEAK][enable] = false, [env][mission][failures][FWD_TANK_LEAK][mmint] = 1, [env][mission][failures][FWD_TANK_LEAK][id] = FWD_TANK_LEAK, [env][mission][failures][FWD_TANK_LEAK][mm] = 0, }, [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE] = table: 00000000CCD75D40 { [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE][hh] = 0, [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE][prob] = 100, [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE][enable] = false, [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE][mmint] = 1, [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE][id] = CTRL_RUDDER_ROD_MAJOR_DAMAGE, [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE][mm] = 0, }, We can get only API-level summary: [env][mission][failures] { [env][mission][failures][pp_damage_EmergMaxTempr] [env][mission][failures][FWD_TANK_LEAK] [env][mission][failures][CTRL_RUDDER_ROD_MAJOR_DAMAGE] [env][mission][failures][xx][hh], [env][mission][failures][xx][prob], [env][mission][failures][xx][enable], [env][mission][failures][xx][mmint], [env][mission][failures][xx][id], [env][mission][failures][xx][mm], }, Basically I'm looking for something that dumps a table and returns only it's structure and possible values, not enumerate every single value entry. Grimes, since you made the online API reference, I'm wondering if used a tool to distill that info from tableShow or went through the dump by hand?
  22. Ok great, that answers a lot. So from just a cursory first look, there are at least 2 undocumented C functions. They might not be actually useful or anything, but I was trying to see if I could find anything novel. getDrawArgumentValue ["Unit"]["getDrawArgumentValue"] = "function: 0000000080418010, C function", cancelChoosingCargo ["Unit"]["parentClass_"]["cancelChoosingCargo"] = "function: 000000007750BBA8, C function", So to confirm, we don't have any current back-and-forth collaborations with ED persons about enhancing Lua scripting capabilities? And yeah, I saw the DCS_controlAPI.txt and Scripts/Export.lua portion. That's when I first had the thought that maybe the Lua environments being exposed to each of those 3 purposes might be different. I suppose without knowing more there might be some value/function in one _G that is not available in another _G. So maybe mission scripts could have increased capabilities by some kind of out-of-band "bridge" between those various standard DCS scripting interfaces. That leads me to what I thought might be useful to make: I suppose right now we don't have a general-use tool that will dump _G recursively and find all the C function parameters and return values? From what you describe Grimes, the current info about that was either given to you to start or after questioning ED, or from your own trial and error. I think I might be able to make us a tool that would be able to pull a complete set of this info on demand by querying the associated dlls for function prototypes. Then we could run it in any of the scripting environments to see if anything new had been added/removed but unannounced. Then there is this kind of possibility to explore the idea even further to add novel scripting features (3 part series): http://stan-bobovych.com/2017/06/10/hooking-lua-part-1
  23. Thanks for info. I can see the nested tables and understand how to walk that recursively. When I see stuff like this, I know where to go to learn more (EventHandlers.lua): ["world"]["addEventHandler"] = "function: 000000000029DFF0, defined in (3-5) Scripts/World/EventHandlers.lua But I'm curious for the these kinds of C functions how I determine what their expected parameters are and the return value. How might I proceed chasing that? ["world"]["getPlayer"] = "function: 000000007481A5A0, C function", One of the reasons for trying to better understand this for me is I want to see if the _G scan result is the same for these ME mission scripts as all the other places where we add scripts, like the slmod and place where the DCS-BIOS pulls it's info. That, plus I'd also like to try to hook other C dlls and explore whether completely novel features could be added to scripts. I've done this kind of work on C# .Net games, which was kind of easy if you know how .Net works and that it leads directly to obtaining "source code" through reflection. With DCS, it's all C dll's and still possible, just a little more difficult. The first part is understanding how the existing Lua scripting engine interfaces with these "C function" 's listed in showTable. ...If there's a better existing place to post questions like this, please let me know. If I should start a new thread, just let me know that.
  24. Grimes, what do you use to enumerate this data from within DCS Lua? I know about the showTable function and I've been playing with snippets but I'm curious if you've poked around in the various metatables? How often have we found "new" stuff just "appear" in the scripting API or change/add something on an existing item after a patch?
×
×
  • Create New...