Workflow to store missions in git ? - ED Forums
 


Notices

Reply
 
Thread Tools Display Modes
Old 02-14-2020, 01:22 AM   #1
bswift
Junior Member
 
Join Date: Feb 2019
Posts: 11
Default Workflow to store missions in git ?

So .miz files are basically compressed archives.

Is there a setting somewhere to have the unarchived structure remain? I'm not sure if storing these in git makes sense - if a buddy and I make mods to these will the diffs make any sense? Lua files seem like it'd be easy to mangle it.

Is the best option to just.... save file copies with a different name?
bswift is offline   Reply With Quote
Old 02-14-2020, 02:10 AM   #2
Rudel_chw
Veteran
 
Join Date: Nov 2013
Location: Antofagasta, Chile
Posts: 5,738
Default

Quote:
Originally Posted by bswift View Post
Is the best option to just.... save file copies with a different name?
I keep my saved games\dcs\missions folder on the cloud, where I have automatic versioning (I use MS OneDrive, but Dropbox and Google Drive are similar)

__________________
For work: iMac mid-2010 of 27" - Core i7 870 - 6 GB DDR3 1333 MHz - ATI HD5670 - SSD 256 GB - HDD 2 TB - macOS High Sierra
For Gaming: 27" Monitor - Ryzen 1500X - 32 GB DDR4 2400 - MSI GTX970 - SSD 1.25 TB - HDD 10 TB - Windows 10 Pro - Thrustmaster HOTAS Cougar - Oculus Rift CV1
Mobile: iPad Pro 12.9" of 256 GB
Rudel_chw is offline   Reply With Quote
Old 02-14-2020, 10:08 PM   #3
davidp57
Member
 
Join Date: Jul 2011
Location: Metz, France
Posts: 448
Default

https://veaf.github.io/VEAF-Mission-Creation-Tools/
__________________
Zip - VEAF

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum
If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !
davidp57 is offline   Reply With Quote
Old 02-17-2020, 12:19 PM   #4
Pikey
Veteran
 
Pikey's Avatar
 
Join Date: Sep 2009
Location: Reading, UK (GMT)
Posts: 4,078
Default

Quote:
Originally Posted by bswift View Post
So .miz files are basically compressed archives.

Is there a setting somewhere to have the unarchived structure remain? I'm not sure if storing these in git makes sense - if a buddy and I make mods to these will the diffs make any sense? Lua files seem like it'd be easy to mangle it.

Is the best option to just.... save file copies with a different name?

Depends on the storage mechanism. For Google Drive, it synched and would retain previous versions without decompressing, but only make available these fo rhte account owner. However I see most serious people use Git and assemble the mission from its components manually. Seems a bit complex, I do not use that mechanism, but plenty do.
__________________
___________________________________________________________________________
SIMPLE SCENERY SAVING * SIMPLE GROUP SAVING * SIMPLE STATIC SAVING * PLAYLIST
===========
Pikey is offline   Reply With Quote
Old 02-19-2020, 01:19 PM   #5
davidp57
Member
 
Join Date: Jul 2011
Location: Metz, France
Posts: 448
Default

Actually, the problem with cooperative editing is that, each time you save the mission in the DCS editor, the lua files inside the .miz get shuffled (lines change their order, ids change, etc.)
That's why we introduced a normalizer in our workflow.
Then, once the mission is normalized, you can save it as a different name, copy it to a cloud, backup it, or store it on a version control system such as git ; name your poison
__________________
Zip - VEAF

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum
If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !
davidp57 is offline   Reply With Quote
Old 02-19-2020, 08:03 PM   #6
Pikey
Veteran
 
Pikey's Avatar
 
Join Date: Sep 2009
Location: Reading, UK (GMT)
Posts: 4,078
Default

Quote:
Originally Posted by davidp57 View Post
Actually, the problem with cooperative editing is that, each time you save the mission in the DCS editor, the lua files inside the .miz get shuffled (lines change their order, ids change, etc.)
That's why we introduced a normalizer in our workflow.
Then, once the mission is normalized, you can save it as a different name, copy it to a cloud, backup it, or store it on a version control system such as git ; name your poison
Out of interest, which ones get changed? The mission file is an indexed table, not something that generally changes. Something else?
__________________
___________________________________________________________________________
SIMPLE SCENERY SAVING * SIMPLE GROUP SAVING * SIMPLE STATIC SAVING * PLAYLIST
===========
Pikey is offline   Reply With Quote
Old 02-20-2020, 04:00 PM   #7
davidp57
Member
 
Join Date: Jul 2011
Location: Metz, France
Posts: 448
Default

Actually, the mission file is one of the files that gets modified when saving in DCS editor. The data in the table is not always sorted in the same way, therefore it's difficult to diff correctly from one update to the next.


Our normalizer sorts the data arbitrarily before saving it in the lua file.
__________________
Zip - VEAF

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum
If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !
davidp57 is offline   Reply With Quote
Old 02-23-2020, 11:39 PM   #8
Targanon
Junior Member
 
Join Date: Jul 2017
Location: Brisbane, QLD, Australia
Posts: 84
Default

just out of interest what is a normalizer ? how does it work?
__________________
Targs,

Spoiler:

GTX 1080ti Gigabyte, Asus Hero XI, Intel 9900KF @4.2MHz, 32g DDR4@3200Mhz, 4x 1Tb SSD 1x 400g m.2mvme drive(boot), 28" Samsung 3840x2160 @80Hz, Saitek X-56 Throttle/Warthog Stick and Saitek Pro Flight Pedals.
windows 10 64

Moduls
Spoiler:

F-14 Tomcat
F-16C Viper
F/A-18C Hornet
AV-8B Night Attack
F-5E Tiger II
M-2000C
L-39 Albatros
C-101 Aviojet
UH-1H Huey
SA342 Gazelle
A-10C Warthog
Flaming Cliffs 3
Black Shark 2

DEDi MP [62AW] The Blackbirds Brisbane
Targanon is offline   Reply With Quote
Old 02-24-2020, 03:50 PM   #9
davidp57
Member
 
Join Date: Jul 2011
Location: Metz, France
Posts: 448
Default

Hi Targanon,

The mission file (.miz) written by DCS mission editor is actually a ZIP archive containing lua files (and more).
The main lua file is aptly named mission and contains a huge lua table describing all the objects in the mission.

Unfortunately, LUA tables have no inherent order; therefore each time even a small modification happens in the editor, the mission file is shuffled randomly, making it almost impossible to see what was actually changed in the mission.

This process of generating a report showing the difference between two versions of a file is very important in version control. This shuffling makes merging work from different sources impossible.

We at VEAF have developped a set of tools, including a script that sorts the lua table in the mission file according to arbitrary rules.

This way, when something is changed in the editor, the (sorted) file can be compared with the (sorted) previous version and it is easy to see what has changed.

You can read more about this here.
__________________
Zip - VEAF

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum
If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !
davidp57 is offline   Reply With Quote
Old 02-26-2020, 01:59 PM   #10
Worrazen
Senior Member
 
Join Date: Oct 2014
Location: Slovenia
Posts: 1,262
Default

Maybe there'll be a brand new mission file format with the new Mission Editor update.

Also I'm not fond of extension-less filenames Even tho it's just a label, I went "yuck" when I first saw that on linux, never liked it ever since.
__________________
Specs: Win10 x64 1607/14393, 1440p@75"32 - CPU: Intel Core i7 3820 @ 4.0GHz - GPU: Radeon RX 480 8GB - RAM: 32 GB, DCS SSD Samsung 860 EVO 250GB, Saitek Cyborg X/FLY5 joystick.
Modules: A-10C, F/A-18C, Mig-21Bis, M-2000C, AJS-37, WW2AP, CA, FC3.
Terrains: NTTR, Normandy, Persian Gulf
Worrazen is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT. The time now is 06:26 PM. vBulletin Skin by ForumMonkeys. Powered by vBulletin®.
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.