Skip to content

Commit

Permalink
v 1.6.0 - new Carrier Operations module
Browse files Browse the repository at this point in the history
- new veafCarrierOperations2 module that uses Moose.AIRBOSS
- updated Moose to latest #develop branch version
- corrected a bug in veafRadio (forGroup and Secured options were not combinable)
- added a VeafDynamicLoader script to help with dynamic mission scripts loading (for development, see VEAF-Open-Training-Mission and VEAF-Demo-Mission)
- some minor cleanups and bug corrections
  • Loading branch information
davidp57 committed Apr 6, 2020
1 parent ee7daae commit 340bcad
Show file tree
Hide file tree
Showing 9 changed files with 1,643 additions and 617 deletions.
116 changes: 116 additions & 0 deletions buildTRADMission.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
@echo off
set MISSION_NAME=TR_AD_Caucasus_One
set MISSION_PATH=..\735th_Training_AirDefense_Mission
set SECURITY_DISABLED_FLAG=true
set VERBOSE_LOG_FLAG=true
set LUA_SCRIPTS_DEBUG_PARAMETER=-debug
echo.
echo ----------------------------------------
echo building %MISSION_NAME%
echo ----------------------------------------
echo.

rem -- default options values
echo This script can use these environment variables to customize its behavior :
echo ----------------------------------------
echo VERBOSE_LOG_FLAG if set to "true", will create a mission with tracing enabled (meaning that, when run, it will log a lot of details in the dcs log file)
echo defaults to "false"
IF [%VERBOSE_LOG_FLAG%] == [] GOTO DefineDefaultVERBOSE_LOG_FLAG
goto DontDefineDefaultVERBOSE_LOG_FLAG
:DefineDefaultVERBOSE_LOG_FLAG
set VERBOSE_LOG_FLAG=false
:DontDefineDefaultVERBOSE_LOG_FLAG
echo current value is "%VERBOSE_LOG_FLAG%"

echo ----------------------------------------
echo LUA_SCRIPTS_DEBUG_PARAMETER can be set to "-debug" or "-trace" (or not set) ; this will be passed to the lua helper scripts (e.g. veafMissionRadioPresetsEditor and veafMissionNormalizer)
echo defaults to not set
IF [%LUA_SCRIPTS_DEBUG_PARAMETER%] == [] GOTO DefineDefaultLUA_SCRIPTS_DEBUG_PARAMETER
goto DontDefineDefaultLUA_SCRIPTS_DEBUG_PARAMETER
:DefineDefaultLUA_SCRIPTS_DEBUG_PARAMETER
set LUA_SCRIPTS_DEBUG_PARAMETER=
:DontDefineDefaultLUA_SCRIPTS_DEBUG_PARAMETER
echo current value is "%LUA_SCRIPTS_DEBUG_PARAMETER%"

echo ----------------------------------------
echo SECURITY_DISABLED_FLAG if set to "true", will create a mission with security disabled (meaning that no password is ever required)
echo defaults to "false"
IF [%SECURITY_DISABLED_FLAG%] == [] GOTO DefineDefaultSECURITY_DISABLED_FLAG
goto DontDefineDefaultSECURITY_DISABLED_FLAG
:DefineDefaultSECURITY_DISABLED_FLAG
set SECURITY_DISABLED_FLAG=false
:DontDefineDefaultSECURITY_DISABLED_FLAG
echo current value is "%SECURITY_DISABLED_FLAG%"

echo ----------------------------------------
echo MISSION_FILE_SUFFIX (a string) will be appended to the mission file name to make it more unique
echo defaults to the current iso date
IF [%MISSION_FILE_SUFFIX%] == [] GOTO DefineDefaultMISSION_FILE_SUFFIX
goto DontDefineDefaultMISSION_FILE_SUFFIX
:DefineDefaultMISSION_FILE_SUFFIX
set TIMEBUILD=%TIME: =0%
set MISSION_FILE_SUFFIX=%date:~-4,4%%date:~-7,2%%date:~-10,2%
:DontDefineDefaultMISSION_FILE_SUFFIX
set MISSION_FILE=.\build\%MISSION_NAME%_%MISSION_FILE_SUFFIX%
echo current value is "%MISSION_FILE_SUFFIX%"

echo ----------------------------------------
echo SEVENZIP (a string) points to the 7za executable
echo defaults "7za", so it needs to be in the path
IF [%SEVENZIP%] == [] GOTO DefineDefaultSEVENZIP
goto DontDefineDefaultSEVENZIP
:DefineDefaultSEVENZIP
set SEVENZIP=7za
:DontDefineDefaultSEVENZIP
echo current value is "%SEVENZIP%"

echo ----------------------------------------
echo LUA (a string) points to the lua executable
echo defaults "lua", so it needs to be in the path
IF [%LUA%] == [] GOTO DefineDefaultLUA
goto DontDefineDefaultLUA
:DefineDefaultLUA
set LUA=lua
:DontDefineDefaultLUA
echo current value is "%LUA%"
echo ----------------------------------------
rem -- prepare the folders
echo preparing the folders
rd /s /q .\build
mkdir .\build
mkdir .\build\tempsrc

echo building the mission
rem -- copy all the source mission files and mission-specific scripts
xcopy /y /e %MISSION_PATH%\src\mission .\build\tempsrc\
xcopy /y %MISSION_PATH%\src\options .\build\tempsrc\
xcopy /y /e %MISSION_PATH%\src\scripts\mission-specific\*.lua .\build\tempsrc\l10n\Default\

rem -- set the radio presets according to the settings file
echo set the radio presets according to the settings file
pushd scripts\veaf
%LUA% veafMissionRadioPresetsEditor.lua ..\..\build\tempsrc ..\..\%MISSION_PATH%\src\radio\radioSettings.lua %LUA_SCRIPTS_DEBUG_PARAMETER%
popd

rem -- copy all the community scripts
copy .\src\scripts\community\*.lua .\build\tempsrc\l10n\Default
copy .\scripts\community\*.lua .\build\tempsrc\l10n\Default

rem -- copy all the common scripts
copy .\scripts\veaf\*.lua .\build\tempsrc\l10n\Default

rem -- set the flags in the scripts according to the options
powershell -Command "(gc .\build\tempsrc\l10n\Default\veaf.lua) -replace 'veaf.Development = false', 'veaf.Development = %VERBOSE_LOG_FLAG%' | sc .\build\tempsrc\l10n\Default\veaf.lua"
powershell -Command "(gc .\build\tempsrc\l10n\Default\veaf.lua) -replace 'veaf.SecurityDisabled = false', 'veaf.SecurityDisabled = %SECURITY_DISABLED_FLAG%' | sc .\build\tempsrc\l10n\Default\veaf.lua"

rem -- compile the mission
"%SEVENZIP%" a -r -tzip %MISSION_FILE%.miz .\build\tempsrc\* -mem=AES256

rem -- cleanup
rd /s /q .\build\tempsrc

echo.
echo ----------------------------------------
rem -- done !
echo Built %MISSION_FILE%.miz
echo ----------------------------------------
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "veaf-mission-creation-tools",
"version": "1.5.0",
"version": "1.6.0",
"description": "A set of scripts that help set up a dynamic mission",
"main": "readme.md",
"directories": {
Expand Down
59 changes: 59 additions & 0 deletions scripts/VeafDynamicLoader.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
env.info( '*** VEAF-Mission-Creation-Tools SCRIPTS DYNAMIC INCLUDE START *** ' )

local base = _G

__Veaf = {}

__Veaf.Include = function( IncludeFile )
if not __Veaf.Includes[ IncludeFile ] then
__Veaf.Includes[IncludeFile] = IncludeFile
local f = assert( base.loadfile( IncludeFile ) )
if f == nil then
error ("VEAF-Mission-Creation-Tools: Could not load Veaf script file " .. IncludeFile )
else
env.info( "VEAF-Mission-Creation-Tools: " .. IncludeFile .. " dynamically loaded." )
return f()
end
end
end

__Veaf.Includes = {}

if not VEAF_DYNAMIC_PATH then
VEAF_DYNAMIC_PATH = ""
end

-- load the community scripts
--__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/community/mist.lua' )
--__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/community/Moose.lua' )
--__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/community/WeatherMark.lua' )

-- load the VEAF scripts
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veaf.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafAssets.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafCarrierOperations2.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafCasMission.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafCombatMission.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafCombatZone.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafGrass.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafInterpreter.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafMarkers.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafMove.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafNamedPoints.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafRadio.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafSecurity.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafShortcuts.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafSpawn.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafTransportMission.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/dcsUnits.lua' )
__Veaf.Include( VEAF_DYNAMIC_PATH .. '/scripts/veaf/veafUnits.lua' )

-- set the environment in debug mode
env.info( '*** VEAF-Mission-Creation-Tools set the environment in debug mode *** ' )
veaf.Development = true
veaf.Debug = veaf.Development
veaf.Trace = veaf.Development
veaf.SecurityDisabled = veaf.Development
veafSecurity.authenticated = veaf.Development

env.info( '*** VEAF-Mission-Creation-Tools SCRIPTS INCLUDE END *** ' )
Loading

0 comments on commit 340bcad

Please sign in to comment.