diff --git a/EUI_Modpack_Converter/EUI_Modpack_Converter.pyproj b/EUI_Modpack_Converter/EUI_Modpack_Converter.pyproj
index 29f55684e59659e850f990541cc54fb0712fc998..74411fdbd075c262cc244d8fb7c18758613a5412 100644
--- a/EUI_Modpack_Converter/EUI_Modpack_Converter.pyproj
+++ b/EUI_Modpack_Converter/EUI_Modpack_Converter.pyproj
@@ -4,7 +4,7 @@
     <SchemaVersion>2.0</SchemaVersion>
     <ProjectGuid>ea28d07f-cd43-45d1-b01d-1eeeb360d215</ProjectGuid>
     <ProjectHome>.</ProjectHome>
-    <StartupFile>converter_new_WIP.py</StartupFile>
+    <StartupFile>converter.py</StartupFile>
     <SearchPath>
     </SearchPath>
     <WorkingDirectory>.</WorkingDirectory>
@@ -24,7 +24,7 @@
     <Content Include="Process.txt" />
   </ItemGroup>
   <ItemGroup>
-    <Compile Include="converter_new_WIP.py" />
+    <Compile Include="converter.py" />
     <Compile Include="converter_legacy.py" />
   </ItemGroup>
   <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Python Tools\Microsoft.PythonTools.targets" />
diff --git a/EUI_Modpack_Converter/converter_new_WIP.py b/EUI_Modpack_Converter/converter.py
similarity index 53%
rename from EUI_Modpack_Converter/converter_new_WIP.py
rename to EUI_Modpack_Converter/converter.py
index 0bbbf6df6b10cf6e11794beaf035fb2625b93299..6de6a3384a7c09557bfb0ed5f7833b1206659917 100644
--- a/EUI_Modpack_Converter/converter_new_WIP.py
+++ b/EUI_Modpack_Converter/converter.py
@@ -1,6 +1,6 @@
 ########################################################################
 #                                                                      #
-# © 2021 - MPL 2.0 - Rsge - v2.0.1                                     #
+# © 2021 - MPL 2.0 - Rsge - v2.1.0                                     #
 # https://github.com/Rsge/Civ-V-EUI-Modpack-Converter                  #
 #                                                                      #
 # WINDOWS ONLY!                                                        #
@@ -33,6 +33,7 @@ vanilla_packs_folder = "zz_Vanilla_Versions"
 # Imports
 import os
 import winreg as wr
+import os.path as p
 from os.path import join as j
 from glob import glob as g
 import subprocess
@@ -54,10 +55,6 @@ def error(msg):
     input("Press Enter to exit. . .")
     exit(1)
 
-# Get file name
-def get_file_name(file, get_folder = False):
-    return file.split(os.sep)[-1]
-
 # Get 7-zip install dir
 def get_szip_dir():
     key_location = r"SOFTWARE\7-Zip"
@@ -86,11 +83,13 @@ def get_civ_install_dir():
 print("Configuring variables...")
 # Names
 modpack_folder_name = "MP_MODSPACK"
+preservation_extension = ".orig"
+load_tag = "ContextPtr:LoadNewContext"
+unit_panel_tag = "LuaEvents.UnitPanelActionAddin"
+unit_panel_insert_marker = "--Insert ContextPtr for modded unit panel buttons here\n"
 eui_cuc_file_names = ["CityBannerManager.lua",
                       "CityView.lua",
                       "Highlights.xml"]
-load_tag = "ContextPtr:LoadNewContext"
-unit_panel_tag = "LuaEvents.UnitPanelActionAddin"
 unit_panel_file_name = "UnitPanel.lua"
 ige_compat_file_name = "IGE_Window.lua"
 # Paths
@@ -103,20 +102,21 @@ modpack_path = j(base_path, modpack_folder_name)
 mods_path = j(modpack_path, "Mods")
 ui_folder_path = j(modpack_path, "UI")
 # Files
-files_ext = j("**", "*.lua")
-base_ui_files = j(base_path, "..", "UI", files_ext)
-gnk_ui_files = j(base_path, "Expansion", "UI", files_ext)
-bnw_ui_files = j(base_path, "Expansion2", "UI", files_ext)
+file_ext = "*.lua"
+file_ext_recursive = j("**", file_ext)
 vanilla_eui_zip_path = j(vanilla_packs_path, vanilla_eui_zip)
 modded_eui_zip_path = j(base_path, modded_eui_zip)
-mod_files = j(mods_path, files_ext)
-ui_files = j(ui_folder_path, files_ext)
-eui_files = j(eui_folder_path, files_ext)
+base_ui_files = j(base_path, "..", "UI", file_ext_recursive)
+gnk_ui_files = j(base_path, "Expansion", "UI", file_ext_recursive)
+bnw_ui_files = j(base_path, "Expansion2", "UI", file_ext_recursive)
+mod_files = j(mods_path, file_ext_recursive)
+ui_files = j(ui_folder_path, file_ext)
+eui_files = j(eui_folder_path, file_ext_recursive)
 
 # Global variables
 eui_only = False
-vanilla_ui_files = []
-unit_panel_files = []
+vanilla_ui_file_names = []
+unit_panel_addon_file_names = []
 load_tags = {}
 
 
@@ -136,37 +136,37 @@ while True:
     print("This file doesn't exist, try again.")
 print("")
 
-## Remove previous modpack
-#print("Removing previous modpack and EUI leftovers...")
-#if os.path.isdir(modpack_path):
-#    shutil.rmtree(modpack_path)
-#if os.path.isdir(eui_folder_path):
-#    shutil.rmtree(eui_folder_path)
+# Remove previous modpack
+print("Removing previous modpack and EUI leftovers...")
+if os.path.isdir(modpack_path):
+    shutil.rmtree(modpack_path)
+if os.path.isdir(eui_folder_path):
+    shutil.rmtree(eui_folder_path)
 
 
-## Compile EUI with colored unlocked citizens
-#if not os.path.isfile(modded_eui_zip_path):
-#    print("Creating colored unlocked citizens EUI...")
-#    subprocess.run([szip, 'x', vanilla_eui_zip_path], stdout=null, stderr=null)
-#    for eui_cuc_file_name in eui_cuc_file_names:
-#        eui_cuc_file = g(j(modsave_path, eui_cuc_file_name + "*"))[0]
-#        orig_eui_file = g(j(eui_folder_path, "*", eui_cuc_file_name))[0]
-#        shutil.move(orig_eui_file, orig_eui_file + ".orig")
-#        shutil.copyfile(eui_cuc_file, orig_eui_file)
-#    subprocess.run([szip, 'a', modded_eui_zip, eui_folder_path], stdout=null, stderr=null)
-#else:
-#    # Unzip EUI
-#    print("Unzipping EUI...")
-#    subprocess.run([szip, 'x', modded_eui_zip_path], stdout=null, stderr=null)
+# Compile EUI with colored unlocked citizens
+if not os.path.isfile(modded_eui_zip_path):
+    print("Creating colored unlocked citizens EUI...")
+    subprocess.run([szip, 'x', vanilla_eui_zip_path], stdout=null, stderr=null)
+    for eui_cuc_file_name in eui_cuc_file_names:
+        eui_cuc_file = g(j(modsave_path, eui_cuc_file_name + "*"))[0]
+        orig_eui_file = g(j(eui_folder_path, "*", eui_cuc_file_name))[0]
+        shutil.move(orig_eui_file, orig_eui_file + preservation_extension)
+        shutil.copyfile(eui_cuc_file, orig_eui_file)
+    subprocess.run([szip, 'a', modded_eui_zip, eui_folder_path], stdout=null, stderr=null)
+else:
+    # Unzip EUI
+    print("Unzipping EUI...")
+    subprocess.run([szip, 'x', modded_eui_zip_path], stdout=null, stderr=null)
 
-## Stop here if only EUI should be converted
-#if eui_only:
-#    quit()
+# Stop here if only EUI should be converted
+if eui_only:
+    quit()
 
 
-## Unzip modpack zip
-#print("Unzipping Modpack...")
-#subprocess.run([szip, 'x', j(vanilla_packs_path, modpack_zip)], stdout=null, stderr=null)
+# Unzip modpack zip
+print("Unzipping Modpack...")
+subprocess.run([szip, 'x', j(vanilla_packs_path, modpack_zip)], stdout=null, stderr=null)
 
 
 # Get vanilla UI files
@@ -175,24 +175,24 @@ globbed = g(base_ui_files, recursive=True)
 globbed.extend(g(gnk_ui_files, recursive=True))
 globbed.extend(g(bnw_ui_files, recursive=True))
 for file in globbed:
-    file_name = get_file_name(file)
+    file_name = p.basename(file)
     if not file_name in ui_files:
-        vanilla_ui_files.append(file_name)
+        vanilla_ui_file_names.append(file_name)
 
 # Manage mod files
 print("Managing mod's files:")
 for mod_file in g(mod_files, recursive = True):
-    mod_file_name = get_file_name(mod_file)
+    mod_file_name = p.basename(mod_file)
     mod_file_short_path = mod_file.removeprefix(mods_path + os.sep)
     # IGE UI compat file
     if mod_file_name == ige_compat_file_name:
         print("\tProviding IGE-EUI-compat...")
-        #shutil.move(mod_file, mod_file + ".orig")
-        #shutil.copyfile(g(j(modsave_path, ige_compat_file_name + "*"))[0], mod_file)
+        shutil.move(mod_file, mod_file + preservation_extension)
+        shutil.copyfile(g(j(modsave_path, ige_compat_file_name + "*"))[0], mod_file)
     # Delete UI overwrite duplicates
-    elif mod_file_name in vanilla_ui_files:
+    elif mod_file_name in vanilla_ui_file_names:
         print("\tRemoving overwriting file \"{}\"...".format(mod_file_short_path))
-        #os.remove(mod_file)
+        os.remove(mod_file)
     # Get unit panel addon files
     else:
         with open(mod_file, 'r') as file:
@@ -200,56 +200,64 @@ for mod_file in g(mod_files, recursive = True):
         for line in lines:
             if unit_panel_tag in line:
                 print("\tDetecting unit panel addon in file \"{}\"...".format(mod_file_short_path))
-                unit_panel_files.append(mod_file_name)
+                unit_panel_addon_file_names.append(mod_file_name)
                 break
 
 
-## Delete useless desktop.ini (Thanks True...)
-#ini_files = re.sub(r"\.\w+$", ".ini", mod_files)
-#for ini_file in g(ini_files, recursive = True):
-#    ini_file_name = get_file_name(ini_file)
-#    if ini_file_name == "desktop.ini":
-#        print("Removing useless desktop.ini (Thanks True)...")
-#        os.remove(mod_file)
-
-
-## Get stuff from UI files
-#for ui_file in g(ui_files):        
-#    ui_file_name = get_file_name(ui_file)
-#    print("Getting tags from " + ui_file_name + "...")
-#    load_tags[ui_file_name] = []
-#    with open(ui_file, 'r') as file:
-#        lines = file.readlines()
-#    for line in lines:
-#        if line.startswith(load_tag):
-#            load_tags[ui_file_name].append(line)
-
-## Insert stuff into EUI files
-#for eui_file in g(eui_files):
-#    eui_file_name = get_file_name(eui_file)
-#    # Base UI files
-#    if eui_file_name in load_tags.keys():
-#        print("Writing tags to " + eui_file_name + "...")
-#        with open(eui_file, 'a') as file:
-#            file.write('\n')
-#            for load_tag in load_tags[eui_file_name]:
-#                file.write(load_tag)
-#    # Modcompat unit panel
-#    elif eui_file_name == unit_panel_file_name and unit_panel_modcompat_needed:
-#        print("Providing EUI-UnitPanel-Modcompat...")
-#        shutil.move(eui_file, eui_file + ".orig")
-#        shutil.copyfile(g(j(modsave_path, unit_panel_file_name + "*"))[0], eui_file)
-
-
-## Move EUI folder
-#print("Moving EUI folder...")
-#shutil.move(eui_folder_path, modpack_path)
-#print("Removing UI folder...")
-#shutil.rmtree(ui_folder_path)
-
-## Zip modpack folder
-#print("Zipping Modpack...")
-#subprocess.run([szip, 'a', modpack_name + "_EUI.7z", modpack_path], stdout=null, stderr=null)
+# Delete useless desktop.ini (Thanks True...)
+ini_files = re.sub(r"\.\w+$", ".ini", mod_files)
+for ini_file in g(ini_files, recursive = True):
+    ini_file_name = p.basename(ini_file)
+    if ini_file_name == "desktop.ini":
+        print("Removing useless desktop.ini (Thanks True)...")
+        os.remove(mod_file)
+
+
+# Get stuff from UI files
+for ui_file in g(ui_files):        
+    ui_file_name = p.basename(ui_file)
+    print("Getting tags from modpack UI's " + ui_file_name + "...")
+    load_tags[ui_file_name] = []
+    with open(ui_file, 'r') as file:
+        lines = file.readlines()
+    for line in lines:
+        if line.startswith(load_tag):
+            load_tags[ui_file_name].append(line)
+
+# Insert stuff into EUI files
+for eui_file in g(eui_files):
+    eui_file_name = p.basename(eui_file)
+    # Base UI files
+    if eui_file_name in load_tags.keys():
+        print("Writing tags to EUI's " + eui_file_name + "...")
+        with open(eui_file, 'a') as file:
+            file.write('\n')
+            for load_tag in load_tags[eui_file_name]:
+                file.write(load_tag)
+    # Modcompat unit panel
+    elif eui_file_name == unit_panel_file_name and len(unit_panel_addon_file_names) > 0:
+        print("Providing EUI-UnitPanel-Modcompat...")
+        unit_panel_load_tags = ""
+        for unit_panel_addon_file_name in unit_panel_addon_file_names:
+            unit_panel_load_tags += "{}(\"{}\")\n".format(load_tag, p.splitext(unit_panel_addon_file_name)[0])
+        shutil.move(eui_file, eui_file + preservation_extension)
+        shutil.copyfile(g(j(modsave_path, unit_panel_file_name + "*"))[0], eui_file)
+        with open(eui_file, 'r') as file:
+            lines = file.readlines()
+        lines[lines.index(unit_panel_insert_marker)] = unit_panel_load_tags
+        with open(eui_file, 'w') as file:
+            file.write("".join(lines))
+
+
+# Move EUI folder
+print("Moving EUI folder...")
+shutil.move(eui_folder_path, modpack_path)
+print("Removing UI folder...")
+shutil.rmtree(ui_folder_path)
+
+# Zip modpack folder
+print("Zipping Modpack...")
+subprocess.run([szip, 'a', modpack_name + "_EUI.7z", modpack_path], stdout=null, stderr=null)
 
 #Finishing up
 quit()
\ No newline at end of file
diff --git a/EUI_Modpack_Converter/converter_legacy.py b/EUI_Modpack_Converter/converter_legacy.py
index e4a2878d72f3e35c5ca92f4c37cc8b2a0e8c39bf..b33239f9ae042f2781d33670256052ce04c4b30a 100644
--- a/EUI_Modpack_Converter/converter_legacy.py
+++ b/EUI_Modpack_Converter/converter_legacy.py
@@ -1,6 +1,6 @@
 ########################################################################
 #                                                                      #
-# © 2021 - MPL 2.0 - Rsge - v1.0.0                                     #
+# © 2021 - MPL 2.0 - Rsge - v1.0.1                                     #
 # https://github.com/Rsge/Civ-V-EUI-Modpack-Converter                  #
 #                                                                      #
 # WINDOWS ONLY!                                                        #
@@ -10,6 +10,42 @@
 #                                                                      #
 ########################################################################
 
+
+#-----------------------------------------#
+# Customize these according to your setup #
+#-----------------------------------------#
+
+# Vanilla EUI file (in vanilla_packs_folder)
+vanilla_eui_zip = "!EUI.7z"
+
+# CUC-version file name of EUI
+modded_eui_zip = "!EUI_CUC.7z"
+
+# Folder containing this scripts project folder and it's needed edited files
+modsave_folder = "zzz_Modsaves"
+
+# Folder containing the vanilla packs
+vanilla_packs_folder = "zz_Vanilla_Versions"
+
+#-------------------------------------------#
+# Maybe you also need to add to these lists #
+#-------------------------------------------#
+
+# Mod files overwriting original UI files, conflicting with EUI
+delete_file_names = ["CivilopediaScreen.lua",
+                     "CityView.lua",
+                     "TechTree.lua",
+                     "TechButtonInclude.lua"]
+
+# Mod files adding new actions to units
+unit_panel_modcompat_file_names = ["EvilSpiritsMission.lua",
+                                   "THTanukiMission.lua"]
+
+#----------------------------------------------------#
+# Don't change anything after here                   #
+# [except if you know what you're doing of cause ;)] #
+#----------------------------------------------------#
+
 # Imports
 import os
 from os.path import join as j
@@ -18,17 +54,12 @@ import subprocess
 import shutil
 import re
 
+# Change to base DLC directory
+os.chdir("../..")
 
 ## Global Values
 print("Configuring variables...")
-
 # Names
-# Customize these according to your setup #
-vanilla_eui_zip = "!EUI.7z" # Vanilla EUI file (in vanilla_packs_folder)
-modded_eui_zip = "!EUI_CUC.7z" # CUC-version file name of EUI
-modsave_folder = "zzz_Modsaves" # Folder containing this scripts project folder and it's needed edited files
-vanilla_packs_folder = "zz_Vanilla_Versions" # Folder containing the vanilla packs
-# Ignore these #
 modpack_folder_name = "MP_MODSPACK"
 eui_cuc_file_names = ["CityBannerManager.lua",
                      "CityView.lua",
@@ -36,23 +67,7 @@ eui_cuc_file_names = ["CityBannerManager.lua",
 load_tag = "ContextPtr:LoadNewContext"
 unit_panel_file_name = "UnitPanel.lua"
 ige_compat_file_name = "IGE_Window.lua"
-# Maybe you also need to add to these lists #
-delete_file_names = ["CivilopediaScreen.lua", # Mod files overwriting original UI files, conflicting with EUI
-                     "CityView.lua",
-                     "TechTree.lua",
-                     "TechButtonInclude.lua",
-                     unit_panel_file_name]
-unit_panel_modcompat_file_names = ["EvilSpiritsMission.lua", # Mod files adding new actions to units
-                                   "THTanukiMission.lua"]
-
-# Don't change from here [if you don't really know what you're doing that is of cause ;)] #
-
-# This only runs with 7zip. If you want to use WinRar you'll have to change the methods yourself - or just download 7zip =P
-szip = r"C:\Program Files\7-Zip\7z.exe"
-
 # Paths
-# Change to base DLC directory
-os.chdir("../..")
 base_path = os.getcwd()
 modsave_path = j(base_path, modsave_folder)
 modpack_path = j(base_path, modpack_folder_name)
@@ -60,11 +75,14 @@ vanilla_packs_path =  j(base_path, vanilla_packs_folder)
 ui_path = j(modpack_path, "UI")
 eui_path = j(base_path, "UI_bc1")
 # Files
+file_ext = "*.lua"
 base_eui_zip_path = j(vanilla_packs_path, vanilla_eui_zip)
 modded_eui_zip_path = j(base_path, modded_eui_zip)
-mod_files = j(modpack_path, "Mods", "**", "*.lua")
-ui_files = j(ui_path, "*.lua")
-eui_files = j(eui_path, "*", "*.lua")
+mod_files = j(modpack_path, "Mods", "**", file_ext)
+ui_files = j(ui_path, file_ext)
+eui_files = j(eui_path, "*", file_ext)
+# This only runs with 7zip. If you want to use WinRar you'll have to change the methods yourself - or just download 7zip =P
+szip = r"C:\Program Files\7-Zip\7z.exe"
 
 # Global Variables
 load_tags = {}
@@ -72,6 +90,12 @@ unit_panel_modcompat_needed = False
 null = open(os.devnull, 'w')
 eui_only = False
 
+# Quitting function
+def quit():
+    null.close()
+    print("Done.\n")
+    input("Press Enter to exit. . .")
+    exit(0)
 
 # Get modpack zip
 while True:
@@ -113,9 +137,7 @@ elif not eui_only:
 if eui_only:
     if os.path.isdir(eui_path):
         shutil.rmtree(eui_path)
-    null.close()
-    print("Done.\n")
-    exit(0)
+    quit()
 
 
 # Unzip modpack zip
@@ -158,14 +180,10 @@ for ini_file in g(ini_files, recursive = True):
 for ui_file in g(ui_files):
     with open(ui_file, 'r') as file:
         lines = file.readlines()
-        
     ui_file_path = ui_file.split(os.sep)
     ui_file_name = ui_file_path[len(ui_file_path) - 1]
-
     print("Getting tags from " + ui_file_name + "...")
-
     load_tags[ui_file_name] = []
-
     for line in lines:
         if line.startswith(load_tag):
             load_tags[ui_file_name].append(line)
@@ -174,7 +192,6 @@ for ui_file in g(ui_files):
 for eui_file in g(eui_files):
     eui_file_path = eui_file.split(os.sep)
     eui_file_name = eui_file_path[len(eui_file_path) - 1]
-
     # Base UI files
     if eui_file_name in load_tags.keys():
         print("Writing tags to " + eui_file_name + "...")
@@ -199,12 +216,5 @@ shutil.rmtree(ui_path)
 print("Zipping Modpack...")
 subprocess.run([szip, 'a', modpack_name + "_EUI.7z", modpack_path], stdout=null, stderr=null)
 
-## Move modpack folder
-#print("Moving Modspack folder")
-#shutil.move(modpack_path, j(base_path, modpack_folder_name))
-
 #Finishing up
-null.close()
-print("Done.\n")
-input("Press Enter to exit. . .")
-exit(0)
\ No newline at end of file
+quit()
\ No newline at end of file