I do a lot of ArmA development and at some time I got bugged by doing all the steps to publish a mission file by hand. So I wrote a simple Batch script to automatically upload the file to the game server, my backup folder and my MPMissions cache. If you have a second server for distributing your mission file, you can modify the following script easily. This script is written for ArmA 3, but other games wich use the same principle to write missions should work as well.

I use my mission name plus an incremental counter for each file (eg. MyMission1.altis.pbo, MyMission2.altis.pbo and so on), if you do it different,you have to change the script a bit.

@echo off
title Mission Publisher
set /p version="Please enter a version: "

echo Loading Settings

set gamefile=C:\Users\Johannes\Documents\Arma 3\Dev\mpmissions\MyMission\MyMission%Version%.altis.pbo
set gamefilepath=C:\Users\Johannes\Documents\Arma 3\Dev\mpmissions\MyMission\MyMission.altis\changelog.txt
set backuppath=G:\Backup\Arma Missions
set missioncache=C:\Users\Johannes\AppData\Local\Arma 3\MPMissionsCache

set gamehost=ms52.gamehost.net
set gameuser=User
set gamepw=Password
set gamepath=/mpmissions

echo Copy file to backup folder
copy "%gamefile%" "%backuppath%"
echo Copy file to MP Missionscache
copy "%gamefile%" "%missioncache%"

echo Uploading file to gameserver
echo user %gameuser%> gamehost.dat
echo %gamepw%>> gamehost.dat
echo bin>> gamehost.dat
echo cd %gamepath%>> gamehost.dat
echo put "%gamefile%">> gamehost.dat
echo quit>> gamehost.dat
ftp -n -s:gamehost.dat %gamehost%
del gamehost.dat

echo Done!
pause >nul

Don’t forget to customize the settings at the beginning of the script.

To use it, simply save it as text file with a .bat file extension and double click to run it.