Jump to content

Known Scripting Engine Issues


Grimes

Recommended Posts

Not sure about destroying clients.

 

There is no isExist function for units, so it is only relevant to groups.

The right man in the wrong place makes all the difference in the world.

Current Projects:  Grayflag ServerScripting Wiki

Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread)

 SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum

Link to comment
Share on other sites

  • 2 weeks later...

Hello,

 

Sorry for my noob questions:

 

I've tried playing some missions from DCS 1.2.16 (which use "mistv3_7_48.lua") under DCS Open beta 1.51 and after I load the same mist file into the open beta on those missions, I get an error on desktop regarding the script.

 

The first listed issue within the open beta is "27372 - Initialization Script File fails to run. Notes: The Do Script box should work, its just not running init script files." and might be regarding the problem that I experience.

 

1. Does the note tell that the mission should be working fine if everything's alright within the script box even if there is no script file being initialized and so because I try to initialize the mentioned script file I get the problem?

 

2. If I may need to initialize a newer version of MIST file in order to have the dead groups respawned (that's all I need the script for), will the MIST V55 work and how will I be able to download the MIST V55 from the link in the first post? Do I need to sign up on "Github.com" or what should I do in order to download this script file?

 

Many thanks!


Edited by Maverick Su-35S

When you can't prove something with words, let the maths do the talking.

I have an insatiable passion for helping simulated aircraft fly realistically!

Sincerely, your correct flight model simulation advisor!

Link to comment
Share on other sites

1. Does the note tell that the mission should be working fine if everything's alright within the script box even if there is no script file being initialized and so because I try to initialize the mentioned script file I get the problem?

 

2. If I may need to initialize a newer version of MIST file in order to have the dead groups respawned (that's all I need the script for), will the MIST V55 work and how will I be able to download the MIST V55 from the link in the first post? Do I need to sign up on "Github.com" or what should I do in order to download this script file?

 

 

1. If there is any script file for the initialization script, the file won't be run. If there is raw text in the box, it will run that. However that box is limited to a maximum number of characters and is to small to contain all of the mist code. I think the limit is something like 16,000 characters. Mist is approx 200,000, so it needs to be run as a do script file.

 

2. You just need to run the mist code once, it doesn't matter when it is loaded as long as its loaded before any script that utilizes it is run. Simply make a trigger Mission Start> Time Less> Do Script File(mist.lua) and it will work just fine. The initialization script area runs the script during mission load. Specifically its there to contain any functions or data for other scripts to reference that also run during mission load.

The right man in the wrong place makes all the difference in the world.

Current Projects:  Grayflag ServerScripting Wiki

Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread)

 SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum

Link to comment
Share on other sites

1. If there is any script file for the initialization script, the file won't be run. If there is raw text in the box, it will run that. However that box is limited to a maximum number of characters and is to small to contain all of the mist code. I think the limit is something like 16,000 characters. Mist is approx 200,000, so it needs to be run as a do script file.

 

2. You just need to run the mist code once, it doesn't matter when it is loaded as long as its loaded before any script that utilizes it is run. Simply make a trigger Mission Start> Time Less> Do Script File(mist.lua) and it will work just fine. The initialization script area runs the script during mission load. Specifically its there to contain any functions or data for other scripts to reference that also run during mission load.

 

Thanks Grimes,

 

Ok, so I should use the Do Script File! I was using Do script (as it was set for DCS 1.2.16) by initializing the "mistv3_7_48.lua" and only applying the needed command in the Do script box (if not group 'xxx', then mistrespawnGroup 'xxx'...end or something like that).

 

I later found that although I get an error sound and message about the script when it activates, it still does the job like nothing happened, so I might leave it as it is even if the error shows up every time or I will try creating a ".lua" file in which to write the respawn command and run it using Do Script File as you suggest!

 

Thanks again, good day!

When you can't prove something with words, let the maths do the talking.

I have an insatiable passion for helping simulated aircraft fly realistically!

Sincerely, your correct flight model simulation advisor!

Link to comment
Share on other sites

  • 2 weeks later...

Hello!

 

99% of my script content for my MP server relies, of course, on monitoring players and thus, I am still stuck by this bug:

'31682 - Client groups not accessible in multiplayer.'

 

I am wondering if there were some news about this issue or if the associated number is a way to follow this issue somewhere.

I hear more or more that the 1.5 is 'close' but updates after updates I don't see that much infos about the scripting aspect of the game.

 

Since, I am speaking about player monitoring, I am also still wondering about how the multiseat will be handled, script side. Any news on this side?

 

On the cool side, I am happy with the update fonts in DCS 1.5 that allows me to use more complexe characters in the info popup.:thumbup:

 

Thanks!

Mirknir

My old server:

The Thread

Link to comment
Share on other sites

'31682 - Client groups not accessible in multiplayer.'

 

I am wondering if there were some news about this issue or if the associated number is a way to follow this issue somewhere.

I hear more or more that the 1.5 is 'close' but updates after updates I don't see that much infos about the scripting aspect of the game...

 

I very much would like exactly the same!

 

 

 

 

 

 

 

 

:)

Link to comment
Share on other sites

Is it possible that this bug is related to the missing or malisious function "getPoint"???

 

I was creating a mission wich uses this function quit often but the SSE stops with errors.....very disapointing.... :(

Red Flood.miz

dcs_logs.zip

My Rig: Windows 11 Pro, Intel i7-13700k@5.4GHz, 64GB DDR5 5200 RAM, Gigabyte Z790 AORUS Elite AX, 1TB Samsung EVO 970, RTX4080, Thrustmaster HOTAS WARTHOG + Saitek Pro Flight Pedals, LG 32" 4K 60FPS, ACER 30" 4K 60FPS GSync Display, HP Reverb G2 V2

Link to comment
Share on other sites

getPoint works with other objects, it appears to be bugged with airbases on Nevada. Which is not that surprising since several functions that deal with getting info on the world simply don't work at the moment.

The right man in the wrong place makes all the difference in the world.

Current Projects:  Grayflag ServerScripting Wiki

Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread)

 SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum

Link to comment
Share on other sites

Ok,

 

thx for the confirmation. Otherwise I would think I'm to dumb for this! :D

My Rig: Windows 11 Pro, Intel i7-13700k@5.4GHz, 64GB DDR5 5200 RAM, Gigabyte Z790 AORUS Elite AX, 1TB Samsung EVO 970, RTX4080, Thrustmaster HOTAS WARTHOG + Saitek Pro Flight Pedals, LG 32" 4K 60FPS, ACER 30" 4K 60FPS GSync Display, HP Reverb G2 V2

Link to comment
Share on other sites

Pretty sure the getgroup functions in MP were down to the early implementation of multiple players per aircraft, not that that helps with timing. There was a Mist message function I found as well that wasn't working in 2.0 (but ok in 1.5) and for the life of me forgot what the details were for reporting, sorry.

 

Noticed a weird one with the mist.respawngroup, if it gets called subsequently some weird things happen, saw an aircraft repeatedly spawn in higher altitudes until in space. It's recrewating this that's so hard to do because we are normally trying to solve other problems we don't want to initially repro.

___________________________________________________________________________

SIMPLE SCENERY SAVING * SIMPLE GROUP SAVING * SIMPLE STATIC SAVING *

Link to comment
Share on other sites

  • 3 weeks later...
Are these bugs going to be tackled someday (soon) by ED?

 

Yep, I am interested to know what's going on with the scripting too.

 

My whole server was relying on knowing the player clients with:

local allPlayerUnits = coalition.getPlayers(coalitionID)

 

Now that the 1.5 has been rushed to released, I can't even keep my server on 1.2 until the 1.5 is fixed.

 

Is there any ETA or workaround for this?

Is ED going to discontinued multiplayer script and keep it for single player only?

 

 

Mirknir

My old server:

The Thread

Link to comment
Share on other sites

  • 2 weeks later...

I think I found something of importance. Function mist.makeUnitTable({'[g]someGroup'}) probably iterates through all group names and will therefore not be reliable in MP because "31682 - Client groups not accessible in multiplayer".

GPU: PALIT NVIDIA RTX 3080 10GB | CPU: Intel Core i7-9700K 4,9GHz | RAM: 64GB DDR4 3000MHz
VR: HP Reverb G2 | HOTAS: TM Warthog Throttle and Stick
OS: Windows 10 22H2

Link to comment
Share on other sites

  • 3 weeks later...

My workaround for 31682

 

Issue: 31682 - 'Client groups not accessible in MP' was bothering me for my server map script.

It broke my player tracking, direct communication and custom radio menu.

 

Problem is:

 

  • From DCS callback, functions and stuff, I always get a Player Unit
  • Then I go fetch information in the associated group using Unit.getGroup but the group is flagged as non existant for client players.
  • Then Group.getID, Group.getCategory, Group.getName will not work.

 

My work-around inspired by what I read here:

 

  • At initialization, I parse the mission description data to build a list of ALL playable units in the map (MIST-style)
  • In this list, I store the corresponding group information I would like to access later, mostly groupID
  • At runtime, if the runtime group info are messed-up, I used the data in my list in place

 

Limitation:

 

  • I still have to find out how to use the dictionary to properly extract names for my table (search for TODO|Dictionary)
  • I am still not sure how to handle 2 players in one plane
  • I 've never tried to track Combined-Arms players as my server doesn't have slots for them

 

 

Ghetto Sample Code

 

 

  • I hope you should be able to use this code in your script with minimal changes

 

 

This work around fixed my problem and I hope this might help some other scripters

Mirknir

My old server:

The Thread

Link to comment
Share on other sites

  • 3 weeks later...

another function doesn't work or better returns always the same sh....

 

SceneryObject.getDescByName()

 

it returns every object to be a building!

My Rig: Windows 11 Pro, Intel i7-13700k@5.4GHz, 64GB DDR5 5200 RAM, Gigabyte Z790 AORUS Elite AX, 1TB Samsung EVO 970, RTX4080, Thrustmaster HOTAS WARTHOG + Saitek Pro Flight Pedals, LG 32" 4K 60FPS, ACER 30" 4K 60FPS GSync Display, HP Reverb G2 V2

Link to comment
Share on other sites

Every time i try something, it is not working due to bugs in DCS 1.5.

 

When are these things going to be fixed. Now i am developing workaround after workaround to get the sim do what i want it to do ...

Sorry to express my frustration a bit here. I know DCS is doing a great job, but the scripting is always the last to be fixed and tuned when new releases come.

 

 

Known Bugs

 

 

27372 - Initialization Script File fails to run. Notes: The Do Script box should work, its just not running init script files.

31682 - Client groups not accessible in multiplayer.

30528 - Group.isExist() returns true if group is dead

28924 - coaltion.getGroups() returns dead groups

29501 - StaticObject.destroy() not functional on cargo objects

29188 - coalition.addGroup cant specify parking spots for aircraft to spawn at

27912 - Object.destroy() not functional on world objects

32145 - Lua Predicate not functional

24826 - Dynamically spawned AI do not display properly in debrief, logbook. (To test new MP interface and messages)

32313 - Clearview option isn't working on trigger.action.outTextForCoalition. Works for the other outText functions.

[TABLE][sIGPIC][/sIGPIC]|

[/TABLE]

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...