Jump to content

Slmod- multiplayer server mod for new mission logic functionality


Recommended Posts

I did my first editing with your MOD for a MP mission, and it is a really improvement for MP. It will take some times, before i understand every function and how i can use it, but i hope you will release some example missions.

 

Is there an option to ingress the time of showing the task list with "slmod.add.task" function?

 

I like it, looking forward for the AFAC stuff from your video.... :thumbup:

Playing: F-16C

Intel i7-13700KF, 64GB DDR5 @5600MHz, RTX 4080 ZOTAC Trinity, WIN 11 64Bit Prof.

Squadron "Serious Uglies" / Discord-Server: https://discord.gg/2WccwBh

Ghost0815

Link to comment
Share on other sites

Hi,

chat messages commands:

SHOW TASK LIST and follow instructions!

 

salute

 

Remember, I added the "-stl" short cut. Saying "SHOW TASK LIST" still works, but so does "-stl" and "-STL".

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

I did my first editing with your MOD for a MP mission, and it is a really improvement for MP. It will take some times, before i understand every function and how i can use it, but i hope you will release some example missions.

 

Is there an option to ingress the time of showing the task list with "slmod.add.task" function?

 

I like it, looking forward for the AFAC stuff from your video.... :thumbup:

 

Right now there is no way to change this, but by the end of today (at least, today where I live) the ability to change the display mode and display time of tasks and the task list will exist, because I will finish version b 5.3 today and upload it.

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

Right now there is no way to change this, but by the end of today (at least, today where I live) the ability to change the display mode and display time of tasks and the task list will exist, because I will finish version b 5.3 today and upload it.

 

nice, Speed!:pilotfly:

ARMA 3 SUPPORTER

I7 2600K/ P8P67/ 2x 120GB SSD OCZ Agility 3/ 32GB DDR3/ MSI GTX680 Twin Frozr II /WIN 8 Pro 64-bit/ HOTAS WARTHOG™/ TIR5/ G19

Link to comment
Share on other sites

Alright... here is the new version. Please let me know if you have problems with it. It seems to be fine on my end.

 

FILES ATTACHED BELOW. IF YOU NEED INSTALL INSTRUCTIONS, SEE THE FIRST POST (now edited with updated file links). I will finish updating the first post in this thread tomorrow, but for now, the file links in the install instructions on the first post should all now point to the files from this post.

 

Beta 5.3's major changes are:

-Added the parallel options system

-Added functions to change the display modes and display times of the parallel tasking system; similar functions exist for the parallel options system.

 

Some bug fixes/tweaks:

-fixed a bug with the log daemon where it would error out and stop passing commands

-fixed a bug where Slmod could get hung up trying to execute a dostring with a Lua error in it and stop working normally

-Units are now nearly always (except in very small missions) exported every 5-6 seconds from the export Lua environment- this change effects the reliability of several functions when reporting events on players who died recently.

-data passed in from the log daemon erased once the number of characters exceeds a certain limit, done to minimize hard drive access time (shouldn't be a noticeable improvement, but hey, every little bit helps).

 

Quick overview of the new functions (I will release a quick reference guide updated for beta 5.3 within the next day)

 

 

slmod.add_option(number id, string description, number flag)

-add an option to the option list for both coalitions

 

slmod.add_red_option(number id, string description, number flag)

-add an option to the option list for red coalition

 

slmod.add_blue_option(number id, string description, number flag)

-add an option to the option list for blue coalition

 

slmod.remove_option(number id)

-remove option with id from both coaltions' option lists.

 

slmod.remove_red_option(number id)

-remove option with id from red coalition's option list.

 

slmod.remove_blue_option(number id)

-remove option with id from blue coalition's option list.

 

slmod.show_option_list()

-show the option list for both coalitions, could be useful when you want to give a "head's up" that an option list exists

 

slmod.show_red_option_list()

-show the option list for red coalition, could be useful when you want to give a "head's up" that an option list exists

 

slmod.show_blue_option_list()

-show the option list for blue coalition, could be useful when you want to give a "head's up" that an option list exists

 

slmod.set_POS_output(number display_time, string display_mode, string coa)

-set the option list's display mode and display time for the coaltion specified by coa.

 

NEW FUNCTIONS TO CONTROL TASKING SYSTEM OUTPUT:

 

slmod.set_PTS_list_output(number display_time, string display_mode, string coa)

-set the tasking list's display mode and display time for the coaltion specified by coa.

 

slmod.set_PTS_task_output(number display_time, string display_mode, string coa)

-set the display mode and display time for tasking messages for the coaltion specified by coa.

 

 

I am also uploading a number of testing/example missions.

Mission 1: Basic Parallel Tasking System - very simple parallel tasking system demo

 

Mission 2: Slmod Parallel Options System - parallel options system demo mission

 

Mission 3: PTS and POS composite mission - a bit more complicated demo mission that uses both the parallel tasking and parallel options systems

 

Mission 4: LOS-based tasking - uses the units_LOS function to assign tasks to the parallel tasking system. If friendly ground forces go line of sight to enemies at a range of less than or equal to 10km (IIRC), then a task is added for that enemy group.

server.lua

slmodbeta5_3.lua

MissionScripting.lua

Slmod Beta 5_3 for A-10C.zip

1-Slmod Basic Parallel Tasking System (PTS).miz

2-Slmod Parallel Options System (POS).miz

3-Slmod PTS and POS composite example.miz

4-Slmod LOS-based tasking.miz

servman_server.lua

FIXED Slmod beta 5.3 For Servman 3_0_1 and A-10C.zip


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

Is the AFAC strike working in your slmod version 5.3?

 

No, sorry, that's for the next major update, version 6 (which, assuming this version proves to be as reliable as I am hoping it will be, will NOT be called a "beta", it will be called "Slmodv6"). This was just a minor update to fix some bugs and, while I was at it, release the parallel options system. While I could have half-assed AFAC and done it two months ago, but I'd rather do it right, as once I've made something I'm committed to supporting it. Anyway, it shouldn't be too much longer before I and ready with version 6... my guess is 3-4 weeks (not a Falcon 4 3-4 weeks, I mean really, 3-4 weeks). I'm very glad I waited because I've in the meantime learned how to do some things I didn't know how to before & patch 1.1.1.0 broke or changed a few things I was going to use.


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

Alright... here is the new version. Please let me know if you have problems with it. It seems to be fine on my end.

 

Thanks for you work! I just tested the POS. Works fine. :thumbup:

At first i've misunterstood the parallel options system. I thought it would enable items on F10 list (clientside). ;) But i guess this can only be delivered by ED .. if they could...? :noexpression:

 

Anyway looking forward to v6 :)

Link to comment
Share on other sites

:cry: I had been looking forward

 

Sorry if I ever gave the wrong impression. The AFAC functions have always been intended for the next major release after version beta 5. The point of this release was to solve the bugs and issues found, and release the parallel options system which was completed. I'd rather not make everyone wait months to get a fix on a bug, not when it's so easy to release a new version.

 

Anyway, implementing the AFAC and SAR functions are both very complicated tasks that will likely require me to use an object oriented programming approach. Slmod has so far been solely implemented through functions. Other parts of the code could benefit from an OO approach. Anyway, this means I will have to hit the Lua manual again for a while and play around till I know all the ends and outs of OO Lua.

 

The aircraft you are commanding needs to accept either MGRS or LL coordinates, probably to an arbitrary level of precision.

 

The aircraft you are commanding needs to be able to drop a bomb and return to station

 

The aircraft you are commanding needs to keep track of its ammo and tell you/RTB when its out

 

The aircraft you are commanding needs to reply to you through chat, read back your coordinates, let you know when it drops a bomb, etc.

 

You need to be able to tell the aircraft you are commanding to abort an attack run

 

You need to be able to query an aircraft you are commanding and get its ammo state

 

You need to be able to tell the aircraft you are commanding to reposition to a different orbit location

 

The aircraft you are commanding needs to check requested air strike coordinates to ensure that they fall within its AO (area of operations)

 

Commands to and from AI aircraft likely need to be private chat messages to everyone who is "checked in" with that aircraft.

 

There is a massive quanity of stuff that needs to be done, really. I don't want a half-assed set of AFAC functions, I want to do it right and that will take some time.

 

I also will need to create multiple chat interpreter functions, so that coordinates and commands do not have to be in some exact format. For example, to make it user friendly, it needs to interpret all of these chat messages as the exact same command:

 

-Ford 11, request airstrike at: 38T KM 45921 34923

-Ford 1 1, RAS 38T KM 45921 34923

-Ford 11 ras 38T KM4592134923

-ford11 ras 38tkm4592134923

-FORD11RAS38TKM4592134923

 

So yea. I know how to do all of the above stated stuff, but like I said, it will just take some time. Luckily, I've created the all foundation code so that I can get started within the next few days. In the meantime, if you want to play around with the test AFAC function, then

 

1) Uncomment lines 458 through 461 of slmodbeta5_3.lua

 

2) Create a mission with a unit named "F-15E" in it. For consistency's sake, make it an F-15E. Give it some GBU-31s.

 

3) Now when you fly this mission in multiplayer, you should be able to command the unit named "F-15E" to drop bombs on your custom coordinates. Say, "Ford, request JDAM strike at: <UTM zone> <MGRS diagraph> <5-digit easting> <5-digit northing>, such as:

 

Ford, request JDAM strike at: 38T KM 45921 34923

 

if you don't get it exactly right, it won't work.

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

Thanks for you work! I just tested the POS. Works fine. :thumbup:

At first i've misunterstood the parallel options system. I thought it would enable items on F10 list (clientside). ;) But i guess this can only be delivered by ED .. if they could...? :noexpression:

 

Anyway looking forward to v6 :)

 

Using Lua socket, true F10 radio options for clients could probably be delivered by a mod- but EVERYONE would have to have this mod, not just the host. The point of Slmod is the "S" part- server. Slmod is extremely simple for folks flying missions because all you need to do is install it on the person hosting the multiplayer flight. An example of a mod that can't and doesn't work this way is TARS- it has to be installed and used by everyone or no one. It is simply not possible to localize all TARS code to just the server. We get folks who don't fly online for weeks at a time sometimes and then come back online looking for some action. If we're using TARS, we can't talk to them and they can't join in. I'd rather avoid the same kind of situation with Slmod, and try to keep the number of mods that need to be installed and up to date at the minimum. If the requirement of keeping everyone up to date with Slmod was added to the requirement of keeping everyone up to date with TARS, then it would just become a huge hassle. So Slmod will always be something that is only required on the server host. As such, only chat messages can be used for data entry.

 

At the same time, keeping it server-only will limit in some cases certain functionality I would like to add. So over the long term, if I pile up enough really "cool" things that can only be accomplished with a client-side mod as well, then I MIGHT make the switch. It would no longer be "Slmod" at this point, however. But any such switch is pretty far down the road, and not probable anyhow. Right now, the benefits do not justify the costs.


Edited by Speed
  • Like 1

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

I have one problem. 5.3 works fine for me without Servman. :thumbup:

But with Servman it doesnt work.

 

I use Modman.

So I uninstalled slmod-nonservman, installed Servman 301rc1 and then slmod+servman.

 

But also your test missions arent working. Maybe I've forgotten something?

 

 

Using Lua socket, true F10 radio options for clients could probably be delivered by a mod- but EVERYONE would have to have this mod, not just the host.

 

Ah, ok, understood. :)

  • Like 1
Link to comment
Share on other sites

Attention, I messed up on the Servman version, specifically, the servman_server.lua file when I uploaded early this morning. If you downloaded it before the date on this post, you will need to download it again. Sorry. Also, you can see the first post in this thread for download links as well.

Thanks for finding that, sorcer3r!

 

I have one problem. 5.3 works fine for me without Servman. :thumbup:

But with Servman it doesnt work.

 

I use Modman.

So I uninstalled slmod-nonservman, installed Servman 301rc1 and then slmod+servman.

 

 

YOU ARE CORRECT! Thanks for pointing this out.

I messed up on the servman_server.lua file. I am uploading a corrected version now. See the post from this morning, or the first post in the thread, for the correct version of either servman_server.lua or the Modman pack.

 

But also your test missions arent working. Maybe I've forgotten something?

Make sure you are not in single player? Sorry for asking the obvious question, but I've had a couple people report that it wasn't working for them, and the reaosn was they were in single player. Hell, I've made the same mistake myself. :doh: If this isn't the problem, and it still doesn't work with the new Servman Modman pack and/or servman_server.lua I just uploaded, try sending me the dcs.log, the problem will probably be apparent there.


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

looking forward to the new quick ref guide :).

ChromiumDis.png

Author of DSMC, mod to enable scenario persistency and save updated miz file

Stable version & site: https://dsmcfordcs.wordpress.com/

Openbeta: https://github.com/Chromium18/DSMC

 

The thing is, helicopters are different from planes. An airplane by it's nature wants to fly, and if not interfered with too strongly by unusual events or by a deliberately incompetent pilot, it will fly. A helicopter does not want to fly. It is maintained in the air by a variety of forces in opposition to each other, and if there is any disturbance in this delicate balance the helicopter stops flying; immediately and disastrously.

Link to comment
Share on other sites

looking forward to the new quick ref guide :).

 

The quick ref guide is almost done.

 

I started programming the parent class for commandable air units last night, CmdblAir. Pretty darn easy to use Lua classes, in fact. I also tried out a function that should make it vastly easier for me to implement a "weapons impacting in zone" function. I think I will try to implement a "weapons impacting in zone" in Slmodv6. The primary problem with "weapons impacting in zone" is keeping it from noticeably slowing down the host's computer when lots of things are impacting. I've got several ideas that would greatly improve the performance though, so I'm reasonably sure this is possible to do. Furthermore, even if there is a slight performance hit when like, two or three GAUs are tearing up targets simultaneously, it's easy enough to make it so that the "weapons impacting in zone" functions only run when the mission actually requires them to run, and not all the time. Still, no guarantees, I could run into a major roadblock.

 

Another reason I would like the "weapons impacting in zone" to work is so that we can mark targets with WP and call in AI airstrikes based off of our mark. So when talking to an AI, you might have the option of either giving them coordinates or marking with WP and giving them offsets based off of that :thumbup:


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

Ok, quick reference guide is finished: Slmod Beta 5.3 Quick Reference Guide rev1 (this is the revised version with the chat commands described to operate the parallel options system).


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

Thanks!!!

ChromiumDis.png

Author of DSMC, mod to enable scenario persistency and save updated miz file

Stable version & site: https://dsmcfordcs.wordpress.com/

Openbeta: https://github.com/Chromium18/DSMC

 

The thing is, helicopters are different from planes. An airplane by it's nature wants to fly, and if not interfered with too strongly by unusual events or by a deliberately incompetent pilot, it will fly. A helicopter does not want to fly. It is maintained in the air by a variety of forces in opposition to each other, and if there is any disturbance in this delicate balance the helicopter stops flying; immediately and disastrously.

Link to comment
Share on other sites

Ehm... maybe I didn't saw it, but How I can call the POS list to be shown (except by functions)?

 

-stl also?

ChromiumDis.png

Author of DSMC, mod to enable scenario persistency and save updated miz file

Stable version & site: https://dsmcfordcs.wordpress.com/

Openbeta: https://github.com/Chromium18/DSMC

 

The thing is, helicopters are different from planes. An airplane by it's nature wants to fly, and if not interfered with too strongly by unusual events or by a deliberately incompetent pilot, it will fly. A helicopter does not want to fly. It is maintained in the air by a variety of forces in opposition to each other, and if there is any disturbance in this delicate balance the helicopter stops flying; immediately and disastrously.

Link to comment
Share on other sites

Ehm... maybe I didn't saw it, but How I can call the POS list to be shown (except by functions)?

 

-stl also?

 

Oops, I forgot to add that part of the parallel options system description. I will upload a quick revision to the guide.

 

It's "-sol" to show the option list. Each option is selected by saying "-op#", where # is the number of the option.

 

Edit: A revision to the guide is uploaded below, and is re-linked throughout this topic. The only change is the addition of the chat commands required to operate the parallel options system.

Slmod Beta 5_3 Quick Reference Guide rev1.pdf


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

:D

ChromiumDis.png

Author of DSMC, mod to enable scenario persistency and save updated miz file

Stable version & site: https://dsmcfordcs.wordpress.com/

Openbeta: https://github.com/Chromium18/DSMC

 

The thing is, helicopters are different from planes. An airplane by it's nature wants to fly, and if not interfered with too strongly by unusual events or by a deliberately incompetent pilot, it will fly. A helicopter does not want to fly. It is maintained in the air by a variety of forces in opposition to each other, and if there is any disturbance in this delicate balance the helicopter stops flying; immediately and disastrously.

Link to comment
Share on other sites

:D

 

Yea, well, I had thought it was in there. I remembered typing it up. Maybe it was on a forum post or in one of the example missions, though.

 

Edit: Assuming I get the time, I will be making units_firing and units_hitting example missions this evening showcasing how the functions can be used to

 

1) In example mission one, increase immersion by having the AI correctly call out all their missile launches and kills, each in a different voice

 

2) In example mission two, have human-flown aircraft all call out their weapon launches (for example, the chat message "<player name>: RIFLE!" will appear and the sound file "rifle.wav" will play every time a human launches a Maverick). When a human attacks a friendly unit, the chat message "<player name> YOU'RE ATTACKING FRIENDLIES!!!!" will appear, and the sound file "blue on blue.wav" will play. These two set-ups are ESPECIALLY useful for public servers!!!


Edited by Speed

Intelligent discourse can only begin with the honest admission of your own fallibility.

Member of the Virtual Tactical Air Group: http://vtacticalairgroup.com/

Lua scripts and mods:

MIssion Scripting Tools (Mist): http://forums.eagle.ru/showthread.php?t=98616

Slmod version 7.0 for DCS: World: http://forums.eagle.ru/showthread.php?t=80979

Now includes remote server administration tools for kicking, banning, loading missions, etc.

Link to comment
Share on other sites

  • Recently Browsing   0 members

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