diff --git a/addon.xml b/addon.xml
index be588cd..400369a 100644
--- a/addon.xml
+++ b/addon.xml
@@ -1,6 +1,6 @@
 
 
+    name="Backup" version="1.6.7~beta1" provider-name="robweber">
   
     
     
@@ -89,8 +89,8 @@
 		resources/images/screenshot3.jpg
 		resources/images/screenshot4.jpg
     
-    Version 1.6.6
- - fixed issue with backup rotations not working properly
+    Version 1.6.7
+ - fixed issue with RunScript not launching Advanced Editor in some cases
 
   
 
diff --git a/changelog.md b/changelog.md
index 4cb189d..eb8df80 100644
--- a/changelog.md
+++ b/changelog.md
@@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.
 
 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 
+## [Unreleased](https://github.com/robweber/xbmcbackup/compare/matrix-1.6.5...robweber:matrix)
+
+### Fixed
+
+- fixed issue when using ```RunScript()``` within settings to launch Advanced Editor
+
 ## [Version 1.6.6](https://github.com/robweber/xbmcbackup/compare/matrix-1.6.5...robweber:matrix-1.6.6) - 2020-03-15
 
 ### Fixed
diff --git a/default.py b/default.py
index d1a7267..bef946a 100644
--- a/default.py
+++ b/default.py
@@ -1,7 +1,37 @@
-import xbmc
 import xbmcgui
+import xbmcvfs
 import resources.lib.utils as utils
 from resources.lib.backup import XbmcBackup
+from resources.lib.authorizers import DropboxAuthorizer
+from resources.lib.advanced_editor import AdvancedBackupEditor
+
+# mode constants
+BACKUP = 0
+RESTORE = 1
+SETTINGS = 2
+ADVANCED_EDITOR = 3
+LAUNCHER = 4
+
+
+def authorize_cloud(cloudProvider):
+    # drobpox
+    if(cloudProvider == 'dropbox'):
+        authorizer = DropboxAuthorizer()
+
+        if(authorizer.authorize()):
+            xbmcgui.Dialog().ok(utils.getString(30010), '%s %s' % (utils.getString(30027), utils.getString(30106)))
+        else:
+            xbmcgui.Dialog().ok(utils.getString(30010), '%s %s' % (utils.getString(30107), utils.getString(30027)))
+
+
+def remove_auth():
+    # triggered from settings.xml - asks if user wants to delete OAuth token information
+    shouldDelete = xbmcgui.Dialog().yesno(utils.getString(30093), utils.getString(30094), utils.getString(30095), autoclose=7000)
+
+    if(shouldDelete):
+        # delete any of the known token file types
+        xbmcvfs.delete(xbmcvfs.translatePath(utils.data_dir() + "tokens.txt"))  # dropbox
+        xbmcvfs.delete(xbmcvfs.translatePath(utils.data_dir() + "google_drive.dat"))  # google drive
 
 
 def get_params():
@@ -13,6 +43,7 @@ def get_params():
                 if(args.startswith('?')):
                     args = args[1:]  # legacy in case of url params
                 splitString = args.split('=')
+                utils.log(splitString[1])
                 param[splitString[0]] = splitString[1]
     except:
         pass
@@ -24,12 +55,13 @@ def get_params():
 mode = -1
 params = get_params()
 
-
 if("mode" in params):
     if(params['mode'] == 'backup'):
-        mode = 0
+        mode = BACKUP
     elif(params['mode'] == 'restore'):
-        mode = 1
+        mode = RESTORE
+    elif(params['mode'] == 'launcher'):
+        mode = LAUNCHER
 
 
 # if mode wasn't passed in as arg, get from user
@@ -49,15 +81,30 @@ if(mode != -1):
     # run the profile backup
     backup = XbmcBackup()
 
-    if(mode == 2):
+    if(mode == SETTINGS):
         # open the settings dialog
         utils.openSettings()
-    elif(mode == 3 and utils.getSettingInt('backup_selection_type') == 1):
-        # open the advanced editor
-        xbmc.executebuiltin('RunScript(special://home/addons/script.xbmcbackup/launcher.py, action=advanced_editor)')
+    elif(mode == ADVANCED_EDITOR and utils.getSettingInt('backup_selection_type') == 1):
+        # open the advanced editor but only if in advanced mode
+        editor = AdvancedBackupEditor()
+        editor.showMainScreen()
+    elif(mode == LAUNCHER):
+        # copied from old launcher.py
+        if(params['action'] == 'authorize_cloud'):
+            authorize_cloud(params['provider'])
+        elif(params['action'] == 'remove_auth'):
+            remove_auth()
+        elif(params['action'] == 'advanced_editor'):
+            editor = AdvancedBackupEditor()
+            editor.showMainScreen()
+        elif(params['action'] == 'advanced_copy_config'):
+            editor = AdvancedBackupEditor()
+            editor.copySimpleConfig()
+
     elif(backup.remoteConfigured()):
 
-        if(mode == backup.Restore):
+        # if mode was RESTORE
+        if(mode == RESTORE):
             # get list of valid restore points
             restorePoints = backup.listBackups()
             pointNames = []
@@ -90,6 +137,7 @@ if(mode != -1):
             else:
                 backup.restore()
         else:
+            # mode was BACKUP
             backup.backup()
     else:
         # can't go any further
diff --git a/launcher.py b/launcher.py
deleted file mode 100644
index 4494ac4..0000000
--- a/launcher.py
+++ /dev/null
@@ -1,58 +0,0 @@
-# launcher for various helpful functions found in the settings.xml area
-import sys
-import xbmcgui
-import xbmcvfs
-import resources.lib.utils as utils
-from resources.lib.authorizers import DropboxAuthorizer
-from resources.lib.advanced_editor import AdvancedBackupEditor
-
-
-def authorize_cloud(cloudProvider):
-    # drobpox
-    if(cloudProvider == 'dropbox'):
-        authorizer = DropboxAuthorizer()
-
-        if(authorizer.authorize()):
-            xbmcgui.Dialog().ok(utils.getString(30010), '%s %s' % (utils.getString(30027), utils.getString(30106)))
-        else:
-            xbmcgui.Dialog().ok(utils.getString(30010), '%s %s' % (utils.getString(30107), utils.getString(30027)))
-
-
-def remove_auth():
-    # triggered from settings.xml - asks if user wants to delete OAuth token information
-    shouldDelete = xbmcgui.Dialog().yesno(utils.getString(30093), utils.getString(30094), utils.getString(30095), autoclose=7000)
-
-    if(shouldDelete):
-        # delete any of the known token file types
-        xbmcvfs.delete(xbmcvfs.translatePath(utils.data_dir() + "tokens.txt"))  # dropbox
-        xbmcvfs.delete(xbmcvfs.translatePath(utils.data_dir() + "google_drive.dat"))  # google drive
-
-
-def get_params():
-    param = {}
-    try:
-        for i in sys.argv:
-            args = i
-            if('=' in args):
-                if(args.startswith('?')):
-                    args = args[1:]  # legacy in case of url params
-                splitString = args.split('=')
-                param[splitString[0]] = splitString[1]
-    except:
-        pass
-
-    return param
-
-
-params = get_params()
-
-if(params['action'] == 'authorize_cloud'):
-    authorize_cloud(params['provider'])
-elif(params['action'] == 'remove_auth'):
-    remove_auth()
-elif(params['action'] == 'advanced_editor'):
-    editor = AdvancedBackupEditor()
-    editor.showMainScreen()
-elif(params['action'] == 'advanced_copy_config'):
-    editor = AdvancedBackupEditor()
-    editor.copySimpleConfig()
diff --git a/resources/settings.xml b/resources/settings.xml
index efa5c41..d6b3a7a 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -147,7 +147,7 @@
             2
           
           
-            RunScript(special://home/addons/script.xbmcbackup/launcher.py,action=authorize_cloud,provider=dropbox)
+            RunScript(script.xbmcbackup,mode=launcher,action=authorize_cloud,provider=dropbox)
           
         
       
@@ -160,7 +160,7 @@
             2
           
           
-            RunScript(special://home/addons/script.xbmcbackup/launcher.py,action=remove_auth)
+            RunScript(script.xbmcbackup,mode=launcher,action=remove_auth)
           
         
       
@@ -252,7 +252,7 @@
             1
           
           
-            RunScript(special://home/addons/script.xbmcbackup/launcher.py,action=advanced_editor)
+            RunScript(script.xbmcbackup,mode=launcher,action=advanced_editor)
           
         
         
@@ -262,7 +262,7 @@
             1
           
           
-            RunScript(special://home/addons/script.xbmcbackup/launcher.py,action=advanced_copy_config)
+            RunScript(script.xbmcbackup,mode=launcher,action=advanced_copy_config)