Jump to content

Is MOOSE Dead? 2022 version.


Pikey
Go to solution Solved by Delta99,

Recommended Posts

This is our yearly mission statement and achievement wrap-up post. This continues in the theme of:


Discord developments

As of December, there are over 2160 Discord Community members. This is up y-o-y from 2021 by 600 contributors. Over 400 participants contribute 5 or more separate messages.
From 2020 we can count double growth.

The top ten list of Discord contributors is here taken by the MEE bot:

image.png
One of our two main developers, AppleEvangelist, is almost single-handedly propping up other contributions to the Discord, to show that your questions are answered by a developer (as long as they are answerable and on topic). We are all very grateful for the time he and everyone else that contributes give up of their free time to help.

Frank had a clean out of the Intro section and updates the #FAQ and we now have a dedicated Moose Discord bot that parses logs and offers advice when it sees log parses.


GitHub statistics

Master branch commits 2015-2022 (green)

image.png
File size December 2022 - 8.7MB
File size June 2020 - 5.9MB
Over 4600 commits, 46 releases, to master branch from 33 people

Yearly over 1MB of growth in code. 1MB = over 1 million characters a year! Thats a lot of fingers on keyboards!

MOOSE is a community project, the code is open source and we very much appreciate all participation. We have participants in many ways, by committing code or documentation updates, by responding to people's questions in Discord and online, by providing feedback and suggestions and even just asking questions to stimulate interest. MOOSE was originally created by Sven (Flightcontrol) in 2015 and is now over 7 years old and we can see from above that maintenance of it continues regularly. For interest, Flightcontrol ceased development at the beginning of 2019, FunkyFranky began developing on MOOSE in 2018 and AppleEvangelist began in 2021. We welcome any new developers, no matter how small the contribution.

The above statistics are relevant to the main branch. There are two main branches, Main and Develop and the primary difference right now is that the Ops AUFTRAG hierarchy classes are only available in Develop (more on that later). This slightly distorts figures as the commit rate to Develop can be higher due to the extra classes.

These are the commits for this year:

image.png

As you can see, if MOOSE is dead, it's going to need a stake through the heart at the very least.


Class developments

2022 was an excellent year for innovation!

New classes, additions and fixes:
Ops.FlightControl. This class provides Audio Air Traffic Control just like AIRBOSS class, to land installations. We've iterated on basic sound files to utilise @Ciribob's excellent Text-To-Speech and deliver audio messaging via SRS direct to your ears. https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/OPS.FlightControl.html

Ops.Playertask. This class supersedes previous Task classes by providing a framework for players to have a task system give them things to do in a mission based on automatic discovery or manual provision on any single unit or group of units and including scenery. This amazing class also uses our modern, localisable, Text-To-Speech system from Google. https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Ops.PlayerTask.html

Ops.AWACS. This class can guide and direct both AI and player clients together, in multiplayer, to intercept trespassing enemy planes in defined friendly airspace using Google TTS over SRS for the messaging delivery. We use NATO brevity as much as is possible within the remits of simulating a Human controller (anchoring is nigh impossible and simplifications to process are required). This would typically replace crude text to screen for BRAA and attempt to provide realistic engagement using human like voices for targetting allocation with a number of reality and era options. Whilst it won't exceed a human attempting to provide a AIC job, it better than any other scripting solution out there and represents a world-class solution not seen in any other simulation to date.

Ops.PlayerRecce. Inspired by Gazelle helo scripts used on MP servers, the Recce class simulates optical detection by the Player which is otherwise impossible to script (because a computer doesn't know what you can see). The class features a number of hooks that can be used to link to other scripting actions -  passing the target, for instance to AI for prosecution.

Ops development. We are now at the end of the second year of Ops development. The Ops classes comprise of the AI Tasking system of "Auftrag", a three tier hierarchy of land, sea and air controlling classes. Over the top are two classes, COMMMANDER for direct execution to a subordinate class, and CHIEF. CHIEF represents the automation of spawning and attacking by an AI commander. These classes have been actively developed and refined since 2020 and represent MOOSE 3.0 in the evolution.

SSE API additions (ToUnit) MOOSE will incorporate most API functions if they work and are useful. Additions from time to time are made by Eagle Dynamics.

Fixes/enhancements: A great deal of work has gone into reducing on-screen messaging and migrating to Google Wavenet voices via Ciribobs TTS executable in the SRS installation. The future of DCS scripting is communicating via radio, not via imaginary writing on your canopy.

L10N: We have begun innovating localised options for language in our code since we have embraced TTS.

MOOSE Usage in DCS Missions

Moose is used by 4YA and Enigma servers and many more, representing many of the large MP servers or 30% of the top ten populated individually named servers. This is quite an achievment given the Administrators are often already technically adept.
Offline, MOOSE is used by @deadlyfishes very popular Through The Inferno (TTI) representing over 82,000 downloads and most of the top ten downloads.

A vast number of administrators discuss MOOSE every week in Discord across the world, even in heavily firewalled countries like China. It is fair to say that MOOSE has had a huge impact on DCS whether realised by the individual consumer, or not.


Legacy classes and supportability statement

865 closed tickets, 19 open
Since many of the MOOSE classes were written by FlightControl it is fair to say that after he ended his contribution in 2019, we were left with a large support deficit that was not feasible to sustain as a hobby. Frank created the OPS classes as a result and we have concentrated development on fresh ideas, because sustaining someone else's hobby is hard enough at a code level.

Here is the current list of "class health".
Use the documentation to understand the class names (develop is used here) https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/index.html

All Tasking classes - Deprecated (known issues) Superseded by Ops.PlayerTask
All AI  - Deprecated (known issues) and superseded by Ops.Auftrag and related Ops.Chief, Ops.Target combinations. No parity with the originals.
All Cargo classes - Superseded by Ops.OpsTransport

Functional classes  (the mixed bag)

Functional.Detection was superseded by Ops.Intel - Intel is simpler and has groupings and decay but not threat. It also hooks.
Functional.MissileTrainer was superseded by Functional.Fox several years ago
Functional.Escort was superseded by Ops.Auftrag (and appropriate task)
Functional.ZoneCaptureCoalition superseded by Ops.OpsZone
Functional.PseudoATC - Developer has indicated that using Ops.FlightControl is prefered
Functional.Suppression - working, best effort support
Functional.Movement - Deprecated, does not work, do not use
Functional. ATC_Ground - limited repairs being made - best effort support

All Ops classes have an active developer owning them.

Wrapper, UTILS, Core are always supported Sound is supported with a nod to more effort going towards converting sounds to Google Text To Speech as static sounds are less scalable.

Supportability definitions

Deprecated - The guidance is to no longer use this class due to one or more known issues. (We never remove classes from Moose)
Superseded - There is an equivalent class that is performing functions that are the same or close enough in design.
"Best Effort" - The owner of the code is no longer supporting this and any volunteer dev is probably going to spend limited time Troubleshooting.
Supported - The developer is active and answering questions.

There are no guarantees or Service Level Agreements on what constitutes "supported". You may check the MOOSE Discord class channel and the history of discussion for a better idea.


Future

MOOSE continues to grow, evolve and innovate. MOOSE and it's community thrive based on the principle that a free community has no barriers. We are agile, useful and relevant to DCS World with a huge majority of DCS customers using MOOSE without even knowing.
If you want to help, please use the code and talk about it here: https://discord.gg/gj68fm969S


FAQ

MOOSE has two main branches (master and develop).
master: https://flightcontrol-master.github.io/MOOSE_DOCS/Documentation/
develop: https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/

Download MOOSE (save as a file.lua):
Release version: https://github.com/FlightControl-Master/MOOSE/releases
Master branch: https://github.com/FlightControl-Master/MOOSE_INCLUDE/tree/master
Develop branch: https://github.com/FlightControl-Master/MOOSE_INCLUDE/tree/develop

As the documentation of MOOSE is created via luadocs on-the-fly from the respective Moose.lua, every class that is in the docs is also in the Moose.lua. 

User Guide
A good place to start is the MOOSE User GUIDE: https://github.com/FlightControl-Master/MOOSE_GUIDES

Youtube
Even though a bit outdated, FlightControls YT channel contains a lot of useful information on MOOSE https://www.youtube.com/channel/UCjrA9j5LQoWsG4SpS8i79Qg/featured Especially the MOOSE for Dummies series is a good way to get your scripting juices flowing https://www.youtube.com/watch?v=ZqvdUFhKX4o

DCS Scripting Environment
All scripts including Moose eventually use the DCS API or Simulator Scripting Engine (SSE) to interact with DCS: https://wiki.hoggitworld.com/view/Simulator_Scripting_Engine_Documentation

DCS Version Info: https://updates.digitalcombatsimulator.com/

LUA Resources - Learning LUA YouTube videos : https://www.youtube.com/playlist?list=PLxgtJR7f0RBKGid7F2dfv7qc-xWwSee2O - Programming In LUA (First Edition): https://www.lua.org/pil/contents.html - The Implementation Of LUA 5: http://www.lua.org/doc/jucs05.pdf

"The best things in life are free"

 


Edited by Pikey
null
  • Like 1
  • Thanks 11

___________________________________________________________________________

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

Link to comment
Share on other sites

Thank you soo much for all the work you guys put into this. It has been a great year and I've learned so much thanks to the help of the moose community. 

  • Like 1

[sIGPIC][/sIGPIC]

AMP WIZARD "Forest Gumble" "When the air becomes electric....It's like a box of chocolates":captain:

Windows 11 Pro 64 bit | Intel Alder Lake i7 12700KF | Asus Prime Z690M Plus D4 | CORSAIR Vengeance LPX 64GB (2 x 32GB) DDR4 3200 | EVGA GTX 1070 SC @1594MHz/4000 MHz 8GB | 1x42" Multi Touch Screen and 1x27" 4k widescreen | Saitek x52 Pro |

Link to comment
Share on other sites

Great writeup Pikey.

Thank you to you and everyone else contributing to Moose and making this such a really awesome tool this is for mission designers and squadrons, wings, servers or other organizations here in the DCS universe.

 

Thank you very much for the effort from myself and the entire 132nd Virtual Wing!

  • Like 2

"When once you have tasted flight, you will forever walk the earth with your eyes

turned skyward for there you have been, and there you will always long to return"

Neck.png

132nd Public documents - Want to apply? - 132nd Youtube channel - 132nd Discord Channel

Link to comment
Share on other sites

  • 2 weeks later...

I'm sorry but I am having trouble navigating Moose. I've been playing with it but just discovered AIRWING, AUFTRAG today.

What I haven't figured out is where I download the Moose.lua version that has AUFTRAG (2.7 dev?).

And is there still a Moose discord? Because all the links I find are invalid 😕

Thanks!

Link to comment
Share on other sites

  • 2 weeks later...
  • Solution
On 1/5/2023 at 3:46 PM, Good Ol 73 said:

I'm sorry but I am having trouble navigating Moose. I've been playing with it but just discovered AIRWING, AUFTRAG today.

What I haven't figured out is where I download the Moose.lua version that has AUFTRAG (2.7 dev?).

And is there still a Moose discord? Because all the links I find are invalid 😕

Thanks!

Moose is alive and well and the Discord is very active: https://discord.gg/AeYAkHP

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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