From 15a4c8439c24f0786e0292a3619c55c56334a076 Mon Sep 17 00:00:00 2001 From: Brayan Camacho <41172298+Chain-BC@users.noreply.github.com> Date: Wed, 7 Aug 2024 14:23:03 -0700 Subject: [PATCH 1/6] Add Spellmasons Module --- spellmasons.kvp | 85 ++++++++++++++++++++++ spellmasonsconfig.json | 48 +++++++++++++ spellmasonsports.json | 9 +++ spellmasonsupdates.json | 152 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 294 insertions(+) create mode 100644 spellmasons.kvp create mode 100644 spellmasonsconfig.json create mode 100644 spellmasonsports.json create mode 100644 spellmasonsupdates.json diff --git a/spellmasons.kvp b/spellmasons.kvp new file mode 100644 index 000000000..23eadc60e --- /dev/null +++ b/spellmasons.kvp @@ -0,0 +1,85 @@ +Meta.DisplayName=Spellmasons Server +Meta.Description=Spellmasons Dedicated Server +Meta.OS=Linux, Windows +Meta.AarchSupport=Native +Meta.Arch=All +Meta.Author=Chain-BC +Meta.URL=https://store.steampowered.com/app/1618380/Spellmasons/ +Meta.DisplayImageSource=steam:1618380 +Meta.ConfigManifest=spellmasonsconfig.json +Meta.MetaConfigManifest= +Meta.ConfigRoot=spellmasons.kvp +Meta.MinAMPVersion=2.5.0.8 +Meta.SpecificDockerImage= +Meta.DockerRequired=False +Meta.ContainerPolicy=Supported +Meta.ContainerPolicyReason= +Meta.ExtraSetupStepsURI= +Meta.AppConfigId=1a088c8c-7fa1-47ce-9a33-003f75905836 +App.DisplayName=Spellmasons Server +App.RootDir=./main/ +App.BaseDirectory=./main/ +App.ExecutableWin=node\node.exe +App.ExecutableLinux=./node/bin/node +App.WorkingDir=Spellmasons +App.LinuxCommandLineArgs= +App.WindowsCommandLineArgs= +App.CommandLineArgs="headless-server-build/src/HeadlessServer.js" +App.UseLinuxIOREDIR=False +App.AppSettings={} +App.EnvironmentVariables={"PORT": "{{$ServerPort}}"} +App.CommandLineParameterFormat=-{0}={1} +App.CommandLineParameterDelimiter= +App.ExitMethod=Kill +App.ExitTimeout=30 +App.ExitString=stop +App.ExitFile=lock +App.HasWriteableConsole=True +App.HasReadableConsole=True +App.SupportsLiveSettingsChanges=False +App.LiveSettingChangeCommandFormat=set {0} "{1}" +App.ApplicationIPBinding=0.0.0.0 +App.Ports=@IncludeJson[spellmasonsports.json] +App.AdminPortRef=ServerPort +App.PrimaryApplicationPortRef=ServerPort +App.UniversalSleepApplicationUDPPortRef=0 +App.UniversalSleepSteamQueryPortRef=0 +App.MaxUsers=0 +App.UseRandomAdminPassword=False +App.RemoteAdminPassword=Password123 +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.RCONHeartbeatMinutes=0 +App.RCONHeartbeatCommand=ping +App.TelnetLoginFormat={0} +App.UpdateSources=@IncludeJson[spellmasonsupdates.json] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=True +App.MonitorChildProcess=False +App.MonitorChildProcessWaitMs=1000 +App.MonitorChildProcessName= +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=Immediate +Console.FilterMatchRegex=\e\[(\d+;)*(\d+)?[ABCDHJKfmsu]|\e\[?[?\>\=\da-z]+ +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex= +Console.AppReadyRegex=^$ +Console.UserJoinRegex=^$ +Console.UserLeaveRegex=^$ +Console.UserChatRegex=^$ +Console.UpdateAvailableRegex=^$ +Console.MetricsRegex= +Console.SuppressLogAtStart=False +Console.ActivateLogRegex= +Console.UserActions={} +Limits.SleepMode=False +Limits.SleepOnStart=False +Limits.SleepDelayMinutes=5 +Limits.DozeDelay=2 +Limits.AutoRetryCount=5 +Limits.SleepStartThresholdSeconds=25 diff --git a/spellmasonsconfig.json b/spellmasonsconfig.json new file mode 100644 index 000000000..fc68f0e54 --- /dev/null +++ b/spellmasonsconfig.json @@ -0,0 +1,48 @@ +[ + { + "DisplayName":"Spellmasons Version", + "Category":"Spellmasons Settings", + "Description":"Set what version of the game to download the server for.", + "Keywords":"server,version", + "FieldName":"ServerVersion", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"ServerVersion", + "IncludeInCommandLine":false, + "DefaultValue":"Manual", + "EnumValues":{ + "Latest":"Latest/Beta", + "Manual":"Custom Version" + } + }, + { + "DisplayName":"Custom Server Version", + "Category":"Spellmasons Settings", + "Description":"Sets what version of the server to download if \"Custom Version\" is chosen under \"Spellmasons Version\".", + "Keywords":"custom,version", + "FieldName":"CustomVersion", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"CustomVersion", + "IncludeInCommandLine":false, + "DefaultValue":"v1.39.1", + "Placeholder":"v1.39.1", + "EnumValues":{} + }, + { + "DisplayName":"Disable Node.js Download", + "Category":"Spellmasons Settings", + "Description":"If set, Node.js will not be downloaded and installed when the server is updated. Saves on bandwidth as it is unnecessary to install it again after the first run.", + "Keywords":"node,nodejs,download,update", + "FieldName":"DisableNodeDownload", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"DisableNodeDownload", + "IncludeInCommandLine":false, + "DefaultValue":"false", + "EnumValues":{ + "False":"false", + "True":"true" + } + } +] diff --git a/spellmasonsports.json b/spellmasonsports.json new file mode 100644 index 000000000..aea5a3cc1 --- /dev/null +++ b/spellmasonsports.json @@ -0,0 +1,9 @@ +[ + { + "Protocol": "Both", + "Port": 9876, + "Ref": "ServerPort", + "Name": "Server Port", + "Description": "Main port used by the game." + } +] diff --git a/spellmasonsupdates.json b/spellmasonsupdates.json new file mode 100644 index 000000000..cdde37f81 --- /dev/null +++ b/spellmasonsupdates.json @@ -0,0 +1,152 @@ +[ + { + "UpdateStageName":"Spellmasons Folder Creation", + "UpdateSourcePlatform":"All", + "UpdateSource":"CreateDirectory", + "UpdateSourceArgs":"{{$FullBaseDir}}Spellmasons", + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && rm -rf * .* && git clone https://github.com/jdoleary/Spellmasons.git .'", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Latest", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && rm -rf * .* && git clone https://github.com/jdoleary/Spellmasons.git . -b {{CustomVersion}}'", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Manual", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"powershell.exe", + "UpdateSourceArgs":"cd {{$FullBaseDir}}Spellmasons; Remove-Item {{$FullBaseDir}}Spellmasons\\* -Recurse -Force; git clone https://github.com/jdoleary/Spellmasons.git .", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Latest", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"powershell.exe", + "UpdateSourceArgs":"cd {{$FullBaseDir}}Spellmasons; Remove-Item {{$FullBaseDir}}Spellmasons\\* -Recurse -Force; git clone https://github.com/jdoleary/Spellmasons.git . -b {{CustomVersion}}", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Manual", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Node.js Download", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"x86_64", + "UpdateSource":"FetchURL", + "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-linux-x64.tar.gz", + "UpdateSourceTarget":"{{$FullBaseDir}}", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false" + }, + { + "UpdateStageName":"Node.js Extract", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"x86_64", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'cd \"{{$FullBaseDir}}\" && rm -Rf \"{{$FullBaseDir}}node/\" >/dev/null 2>&1 && tar xfv node-v20.16.0-linux-x64.tar.gz > {{$FullBaseDir}}AMPSetupLog.txt 2>&1 && mv -v node-v20.16.0-linux-x64 node >> {{$FullBaseDir}}AMPSetupLog.txt 2>&1 && rm node-v20.16.0-linux-x64.tar.gz'", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Node.js Download", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"aarch64", + "UpdateSource":"FetchURL", + "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-linux-arm64.tar.gz", + "UpdateSourceTarget":"{{$FullBaseDir}}", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false" + }, + { + "UpdateStageName":"Node.js Extract", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"aarch64", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'cd \"{{$FullBaseDir}}\" && rm -Rf \"{{$FullBaseDir}}node/\" >/dev/null 2>&1 && tar xfv node-v20.16.0-linux-arm64.tar.gz && mv -v node-v20.16.0-linux-arm64 node && rm node-v20.16.0-linux-arm64.tar.gz'", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Node.js Download", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"FetchURL", + "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-win-x64.zip", + "UpdateSourceTarget":"{{$FullBaseDir}}", + "UnzipUpdateSource":true, + "OverwriteExistingFiles":true, + "DeleteAfterExtract":true, + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false" + }, + { + "UpdateStageName":"Node.js Extract", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C cd \"{{$FullBaseDir}}\" & rmdir /S /Q \"{{$FullBaseDir}}node/\" > NUL 2>&1 & rename node-v20.16.0-win-x64 node > {{$FullBaseDir}}AMPSetupLog.txt 2>&1", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Installing Necessary npm Packages", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'export PATH=$PATH:{{$FullBaseDir}}node/bin && cd \"{{$FullBaseDir}}Spellmasons/\" && \"{{$FullBaseDir}}node/bin/node\" \"{{$FullBaseDir}}node/bin/npm\" i'", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Installing Necessary npm Packages", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C set PATH={{$FullBaseDir}}node;%PATH% && cd \"{{$FullBaseDir}}Spellmasons\\\" && \"{{$FullBaseDir}}node\\node\" \"{{$FullBaseDir}}node\\node_modules\\npm\\bin\\npm-cli.js\" i", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Building Server", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'export PATH=$PATH:{{$FullBaseDir}}node/bin && cd {{$FullBaseDir}}Spellmasons && \"node_modules/.bin/tsc\" --project tsconfig.headless.json --outDir {{$FullBaseDir}}Spellmasons/headless-server-build/ && cp package-lock.json headless-server-build/ && cp public/spellmasons-mods/build/SpellmasonsMods.cjs.js headless-server-build/src/SpellmasonsMods.cjs.js && cd headless-server-build/ && \"{{$FullBaseDir}}node/bin/node\" \"{{$FullBaseDir}}node/bin/npm\" i --omit=dev'", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Buiding Server", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C set PATH={{$FullBaseDir}}node;%PATH% && cd \"{{$FullBaseDir}}Spellmasons\\\" && \"node_modules\\.bin\\tsc\" --project tsconfig.headless.json --outDir {{$FullBaseDir}}Spellmasons\\headless-server-build\\ && cp package-lock.json headless-server-build\\ && cp public\\spellmasons-mods\\build\\SpellmasonsMods.cjs.js headless-server-build\\src\\SpellmasonsMods.cjs.js && cd headless-server-build\\ && \"{{$FullBaseDir}}node\\npm\" i --omit=dev", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + } +] From d8bd70675f47bddc1da9d9ff96aef24c6d161c9b Mon Sep 17 00:00:00 2001 From: Brayan Camacho <41172298+Chain-BC@users.noreply.github.com> Date: Fri, 9 Aug 2024 18:25:52 -0700 Subject: [PATCH 2/6] New Version Released Just changing the default for "Custom Version" to the release candidate, not exact version but it works with the newest non-beta release. --- spellmasonsconfig.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spellmasonsconfig.json b/spellmasonsconfig.json index fc68f0e54..41170d985 100644 --- a/spellmasonsconfig.json +++ b/spellmasonsconfig.json @@ -25,8 +25,8 @@ "IsFlagArgument":false, "ParamFieldName":"CustomVersion", "IncludeInCommandLine":false, - "DefaultValue":"v1.39.1", - "Placeholder":"v1.39.1", + "DefaultValue":"v1-41-rc", + "Placeholder":"v1-41-rc", "EnumValues":{} }, { From 3f86cb9b270e1b450cdf8937f9688625039db675 Mon Sep 17 00:00:00 2001 From: Brayan Camacho <41172298+Chain-BC@users.noreply.github.com> Date: Tue, 13 Aug 2024 13:46:28 -0700 Subject: [PATCH 3/6] Major Rewrite Now updates do not require downloading the whole repository to be downloaded. Some commands have been shortened for readability and and tested on both Windows and Linux to work. It was not a completely clean install of Windows nor Linux so someone else may need to test the module to see if any problems may come up. --- spellmasons.kvp | 170 +++++++++++----------- spellmasonsconfig.json | 96 ++++++------- spellmasonsports.json | 18 +-- spellmasonsupdates.json | 304 ++++++++++++++++++++-------------------- 4 files changed, 294 insertions(+), 294 deletions(-) diff --git a/spellmasons.kvp b/spellmasons.kvp index 23eadc60e..bbe389ccc 100644 --- a/spellmasons.kvp +++ b/spellmasons.kvp @@ -1,85 +1,85 @@ -Meta.DisplayName=Spellmasons Server -Meta.Description=Spellmasons Dedicated Server -Meta.OS=Linux, Windows -Meta.AarchSupport=Native -Meta.Arch=All -Meta.Author=Chain-BC -Meta.URL=https://store.steampowered.com/app/1618380/Spellmasons/ -Meta.DisplayImageSource=steam:1618380 -Meta.ConfigManifest=spellmasonsconfig.json -Meta.MetaConfigManifest= -Meta.ConfigRoot=spellmasons.kvp -Meta.MinAMPVersion=2.5.0.8 -Meta.SpecificDockerImage= -Meta.DockerRequired=False -Meta.ContainerPolicy=Supported -Meta.ContainerPolicyReason= -Meta.ExtraSetupStepsURI= -Meta.AppConfigId=1a088c8c-7fa1-47ce-9a33-003f75905836 -App.DisplayName=Spellmasons Server -App.RootDir=./main/ -App.BaseDirectory=./main/ -App.ExecutableWin=node\node.exe -App.ExecutableLinux=./node/bin/node -App.WorkingDir=Spellmasons -App.LinuxCommandLineArgs= -App.WindowsCommandLineArgs= -App.CommandLineArgs="headless-server-build/src/HeadlessServer.js" -App.UseLinuxIOREDIR=False -App.AppSettings={} -App.EnvironmentVariables={"PORT": "{{$ServerPort}}"} -App.CommandLineParameterFormat=-{0}={1} -App.CommandLineParameterDelimiter= -App.ExitMethod=Kill -App.ExitTimeout=30 -App.ExitString=stop -App.ExitFile=lock -App.HasWriteableConsole=True -App.HasReadableConsole=True -App.SupportsLiveSettingsChanges=False -App.LiveSettingChangeCommandFormat=set {0} "{1}" -App.ApplicationIPBinding=0.0.0.0 -App.Ports=@IncludeJson[spellmasonsports.json] -App.AdminPortRef=ServerPort -App.PrimaryApplicationPortRef=ServerPort -App.UniversalSleepApplicationUDPPortRef=0 -App.UniversalSleepSteamQueryPortRef=0 -App.MaxUsers=0 -App.UseRandomAdminPassword=False -App.RemoteAdminPassword=Password123 -App.AdminMethod=STDIO -App.AdminLoginTransform=None -App.RCONConnectDelaySeconds=5 -App.RCONConnectRetrySeconds=5 -App.RCONHeartbeatMinutes=0 -App.RCONHeartbeatCommand=ping -App.TelnetLoginFormat={0} -App.UpdateSources=@IncludeJson[spellmasonsupdates.json] -App.Compatibility=None -App.SteamUpdateAnonymousLogin=True -App.SteamForceLoginPrompt=False -App.RapidStartup=True -App.MonitorChildProcess=False -App.MonitorChildProcessWaitMs=1000 -App.MonitorChildProcessName= -App.SupportsUniversalSleep=False -App.WakeupMode=Any -App.ApplicationReadyMode=Immediate -Console.FilterMatchRegex=\e\[(\d+;)*(\d+)?[ABCDHJKfmsu]|\e\[?[?\>\=\da-z]+ -Console.FilterMatchReplacement= -Console.ThrowawayMessageRegex= -Console.AppReadyRegex=^$ -Console.UserJoinRegex=^$ -Console.UserLeaveRegex=^$ -Console.UserChatRegex=^$ -Console.UpdateAvailableRegex=^$ -Console.MetricsRegex= -Console.SuppressLogAtStart=False -Console.ActivateLogRegex= -Console.UserActions={} -Limits.SleepMode=False -Limits.SleepOnStart=False -Limits.SleepDelayMinutes=5 -Limits.DozeDelay=2 -Limits.AutoRetryCount=5 -Limits.SleepStartThresholdSeconds=25 +Meta.DisplayName=Spellmasons Server +Meta.Description=Spellmasons Dedicated Server +Meta.OS=Linux, Windows +Meta.AarchSupport=Native +Meta.Arch=All +Meta.Author=Chain-BC +Meta.URL=https://store.steampowered.com/app/1618380/Spellmasons/ +Meta.DisplayImageSource=steam:1618380 +Meta.ConfigManifest=spellmasonsconfig.json +Meta.MetaConfigManifest= +Meta.ConfigRoot=spellmasons.kvp +Meta.MinAMPVersion=2.5.0.8 +Meta.SpecificDockerImage= +Meta.DockerRequired=False +Meta.ContainerPolicy=Supported +Meta.ContainerPolicyReason= +Meta.ExtraSetupStepsURI= +Meta.AppConfigId=1a088c8c-7fa1-47ce-9a33-003f75905836 +App.DisplayName=Spellmasons Server +App.RootDir=./main/ +App.BaseDirectory=./main/ +App.ExecutableWin=node\node.exe +App.ExecutableLinux=./node/bin/node +App.WorkingDir=spellmasons-server +App.LinuxCommandLineArgs= +App.WindowsCommandLineArgs= +App.CommandLineArgs="src/HeadlessServer.js" +App.UseLinuxIOREDIR=False +App.AppSettings={} +App.EnvironmentVariables={"PORT": "{{$ServerPort}}"} +App.CommandLineParameterFormat=-{0}={1} +App.CommandLineParameterDelimiter= +App.ExitMethod=Kill +App.ExitTimeout=30 +App.ExitString=stop +App.ExitFile=lock +App.HasWriteableConsole=True +App.HasReadableConsole=True +App.SupportsLiveSettingsChanges=False +App.LiveSettingChangeCommandFormat=set {0} "{1}" +App.ApplicationIPBinding=0.0.0.0 +App.Ports=@IncludeJson[spellmasonsports.json] +App.AdminPortRef=ServerPort +App.PrimaryApplicationPortRef=ServerPort +App.UniversalSleepApplicationUDPPortRef=0 +App.UniversalSleepSteamQueryPortRef=0 +App.MaxUsers=0 +App.UseRandomAdminPassword=False +App.RemoteAdminPassword=Password123 +App.AdminMethod=STDIO +App.AdminLoginTransform=None +App.RCONConnectDelaySeconds=5 +App.RCONConnectRetrySeconds=5 +App.RCONHeartbeatMinutes=0 +App.RCONHeartbeatCommand=ping +App.TelnetLoginFormat={0} +App.UpdateSources=@IncludeJson[spellmasonsupdates.json] +App.Compatibility=None +App.SteamUpdateAnonymousLogin=True +App.SteamForceLoginPrompt=False +App.RapidStartup=True +App.MonitorChildProcess=False +App.MonitorChildProcessWaitMs=1000 +App.MonitorChildProcessName= +App.SupportsUniversalSleep=False +App.WakeupMode=Any +App.ApplicationReadyMode=Immediate +Console.FilterMatchRegex=\e\[(\d+;)*(\d+)?[ABCDHJKfmsu]|\e\[?[?\>\=\da-z]+ +Console.FilterMatchReplacement= +Console.ThrowawayMessageRegex= +Console.AppReadyRegex=^$ +Console.UserJoinRegex=^$ +Console.UserLeaveRegex=^$ +Console.UserChatRegex=^$ +Console.UpdateAvailableRegex=^$ +Console.MetricsRegex= +Console.SuppressLogAtStart=False +Console.ActivateLogRegex= +Console.UserActions={} +Limits.SleepMode=False +Limits.SleepOnStart=False +Limits.SleepDelayMinutes=5 +Limits.DozeDelay=2 +Limits.AutoRetryCount=5 +Limits.SleepStartThresholdSeconds=25 diff --git a/spellmasonsconfig.json b/spellmasonsconfig.json index 41170d985..bfd0b9532 100644 --- a/spellmasonsconfig.json +++ b/spellmasonsconfig.json @@ -1,48 +1,48 @@ -[ - { - "DisplayName":"Spellmasons Version", - "Category":"Spellmasons Settings", - "Description":"Set what version of the game to download the server for.", - "Keywords":"server,version", - "FieldName":"ServerVersion", - "InputType":"enum", - "IsFlagArgument":false, - "ParamFieldName":"ServerVersion", - "IncludeInCommandLine":false, - "DefaultValue":"Manual", - "EnumValues":{ - "Latest":"Latest/Beta", - "Manual":"Custom Version" - } - }, - { - "DisplayName":"Custom Server Version", - "Category":"Spellmasons Settings", - "Description":"Sets what version of the server to download if \"Custom Version\" is chosen under \"Spellmasons Version\".", - "Keywords":"custom,version", - "FieldName":"CustomVersion", - "InputType":"text", - "IsFlagArgument":false, - "ParamFieldName":"CustomVersion", - "IncludeInCommandLine":false, - "DefaultValue":"v1-41-rc", - "Placeholder":"v1-41-rc", - "EnumValues":{} - }, - { - "DisplayName":"Disable Node.js Download", - "Category":"Spellmasons Settings", - "Description":"If set, Node.js will not be downloaded and installed when the server is updated. Saves on bandwidth as it is unnecessary to install it again after the first run.", - "Keywords":"node,nodejs,download,update", - "FieldName":"DisableNodeDownload", - "InputType":"checkbox", - "IsFlagArgument":false, - "ParamFieldName":"DisableNodeDownload", - "IncludeInCommandLine":false, - "DefaultValue":"false", - "EnumValues":{ - "False":"false", - "True":"true" - } - } -] +[ + { + "DisplayName":"Spellmasons Version", + "Category":"Spellmasons Settings", + "Description":"Set what version of the game to download the server for.", + "Keywords":"server,version", + "FieldName":"ServerVersion", + "InputType":"enum", + "IsFlagArgument":false, + "ParamFieldName":"ServerVersion", + "IncludeInCommandLine":false, + "DefaultValue":"Manual", + "EnumValues":{ + "Latest":"Latest/Beta", + "Manual":"Custom Version" + } + }, + { + "DisplayName":"Custom Server Version", + "Category":"Spellmasons Settings", + "Description":"Sets what version of the server to download if \"Custom Version\" is chosen under \"Spellmasons Version\".", + "Keywords":"custom,version", + "FieldName":"CustomVersion", + "InputType":"text", + "IsFlagArgument":false, + "ParamFieldName":"CustomVersion", + "IncludeInCommandLine":false, + "DefaultValue":"v1.41.6", + "Placeholder":"v1.41.6", + "EnumValues":{} + }, + { + "DisplayName":"Disable Node.js Download", + "Category":"Spellmasons Settings", + "Description":"If set, Node.js will not be downloaded and installed when the server is updated. Saves on bandwidth as it is unnecessary to install it again after the first run.", + "Keywords":"node,nodejs,download,update", + "FieldName":"DisableNodeDownload", + "InputType":"checkbox", + "IsFlagArgument":false, + "ParamFieldName":"DisableNodeDownload", + "IncludeInCommandLine":false, + "DefaultValue":"false", + "EnumValues":{ + "False":"false", + "True":"true" + } + } +] diff --git a/spellmasonsports.json b/spellmasonsports.json index aea5a3cc1..32d51f529 100644 --- a/spellmasonsports.json +++ b/spellmasonsports.json @@ -1,9 +1,9 @@ -[ - { - "Protocol": "Both", - "Port": 9876, - "Ref": "ServerPort", - "Name": "Server Port", - "Description": "Main port used by the game." - } -] +[ + { + "Protocol": "Both", + "Port": 9876, + "Ref": "ServerPort", + "Name": "Server Port", + "Description": "Main port used by the game." + } +] diff --git a/spellmasonsupdates.json b/spellmasonsupdates.json index cdde37f81..acb65dde1 100644 --- a/spellmasonsupdates.json +++ b/spellmasonsupdates.json @@ -1,152 +1,152 @@ -[ - { - "UpdateStageName":"Spellmasons Folder Creation", - "UpdateSourcePlatform":"All", - "UpdateSource":"CreateDirectory", - "UpdateSourceArgs":"{{$FullBaseDir}}Spellmasons", - }, - { - "UpdateStageName":"Downloading Server", - "UpdateSourcePlatform":"Linux", - "UpdateSource":"Executable", - "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && rm -rf * .* && git clone https://github.com/jdoleary/Spellmasons.git .'", - "UpdateSourceConditionSetting":"ServerVersion", - "UpdateSourceConditionValue":"Latest", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Downloading Server", - "UpdateSourcePlatform":"Linux", - "UpdateSource":"Executable", - "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && rm -rf * .* && git clone https://github.com/jdoleary/Spellmasons.git . -b {{CustomVersion}}'", - "UpdateSourceConditionSetting":"ServerVersion", - "UpdateSourceConditionValue":"Manual", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Downloading Server", - "UpdateSourcePlatform":"Windows", - "UpdateSource":"Executable", - "UpdateSourceData":"powershell.exe", - "UpdateSourceArgs":"cd {{$FullBaseDir}}Spellmasons; Remove-Item {{$FullBaseDir}}Spellmasons\\* -Recurse -Force; git clone https://github.com/jdoleary/Spellmasons.git .", - "UpdateSourceConditionSetting":"ServerVersion", - "UpdateSourceConditionValue":"Latest", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Downloading Server", - "UpdateSourcePlatform":"Windows", - "UpdateSource":"Executable", - "UpdateSourceData":"powershell.exe", - "UpdateSourceArgs":"cd {{$FullBaseDir}}Spellmasons; Remove-Item {{$FullBaseDir}}Spellmasons\\* -Recurse -Force; git clone https://github.com/jdoleary/Spellmasons.git . -b {{CustomVersion}}", - "UpdateSourceConditionSetting":"ServerVersion", - "UpdateSourceConditionValue":"Manual", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Node.js Download", - "UpdateSourcePlatform":"Linux", - "UpdateSourceArch":"x86_64", - "UpdateSource":"FetchURL", - "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-linux-x64.tar.gz", - "UpdateSourceTarget":"{{$FullBaseDir}}", - "UpdateSourceConditionSetting":"DisableNodeDownload", - "UpdateSourceConditionValue":"false" - }, - { - "UpdateStageName":"Node.js Extract", - "UpdateSourcePlatform":"Linux", - "UpdateSourceArch":"x86_64", - "UpdateSource":"Executable", - "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'cd \"{{$FullBaseDir}}\" && rm -Rf \"{{$FullBaseDir}}node/\" >/dev/null 2>&1 && tar xfv node-v20.16.0-linux-x64.tar.gz > {{$FullBaseDir}}AMPSetupLog.txt 2>&1 && mv -v node-v20.16.0-linux-x64 node >> {{$FullBaseDir}}AMPSetupLog.txt 2>&1 && rm node-v20.16.0-linux-x64.tar.gz'", - "UpdateSourceConditionSetting":"DisableNodeDownload", - "UpdateSourceConditionValue":"false", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Node.js Download", - "UpdateSourcePlatform":"Linux", - "UpdateSourceArch":"aarch64", - "UpdateSource":"FetchURL", - "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-linux-arm64.tar.gz", - "UpdateSourceTarget":"{{$FullBaseDir}}", - "UpdateSourceConditionSetting":"DisableNodeDownload", - "UpdateSourceConditionValue":"false" - }, - { - "UpdateStageName":"Node.js Extract", - "UpdateSourcePlatform":"Linux", - "UpdateSourceArch":"aarch64", - "UpdateSource":"Executable", - "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'cd \"{{$FullBaseDir}}\" && rm -Rf \"{{$FullBaseDir}}node/\" >/dev/null 2>&1 && tar xfv node-v20.16.0-linux-arm64.tar.gz && mv -v node-v20.16.0-linux-arm64 node && rm node-v20.16.0-linux-arm64.tar.gz'", - "UpdateSourceConditionSetting":"DisableNodeDownload", - "UpdateSourceConditionValue":"false", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Node.js Download", - "UpdateSourcePlatform":"Windows", - "UpdateSource":"FetchURL", - "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-win-x64.zip", - "UpdateSourceTarget":"{{$FullBaseDir}}", - "UnzipUpdateSource":true, - "OverwriteExistingFiles":true, - "DeleteAfterExtract":true, - "UpdateSourceConditionSetting":"DisableNodeDownload", - "UpdateSourceConditionValue":"false" - }, - { - "UpdateStageName":"Node.js Extract", - "UpdateSourcePlatform":"Windows", - "UpdateSource":"Executable", - "UpdateSourceData":"cmd.exe", - "UpdateSourceArgs":"/C cd \"{{$FullBaseDir}}\" & rmdir /S /Q \"{{$FullBaseDir}}node/\" > NUL 2>&1 & rename node-v20.16.0-win-x64 node > {{$FullBaseDir}}AMPSetupLog.txt 2>&1", - "UpdateSourceConditionSetting":"DisableNodeDownload", - "UpdateSourceConditionValue":"false", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Installing Necessary npm Packages", - "UpdateSourcePlatform":"Linux", - "UpdateSource":"Executable", - "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'export PATH=$PATH:{{$FullBaseDir}}node/bin && cd \"{{$FullBaseDir}}Spellmasons/\" && \"{{$FullBaseDir}}node/bin/node\" \"{{$FullBaseDir}}node/bin/npm\" i'", - "UpdateSourceConditionSetting":"", - "UpdateSourceConditionValue":"", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Installing Necessary npm Packages", - "UpdateSourcePlatform":"Windows", - "UpdateSource":"Executable", - "UpdateSourceData":"cmd.exe", - "UpdateSourceArgs":"/C set PATH={{$FullBaseDir}}node;%PATH% && cd \"{{$FullBaseDir}}Spellmasons\\\" && \"{{$FullBaseDir}}node\\node\" \"{{$FullBaseDir}}node\\node_modules\\npm\\bin\\npm-cli.js\" i", - "UpdateSourceConditionSetting":"", - "UpdateSourceConditionValue":"", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Building Server", - "UpdateSourcePlatform":"Linux", - "UpdateSource":"Executable", - "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'export PATH=$PATH:{{$FullBaseDir}}node/bin && cd {{$FullBaseDir}}Spellmasons && \"node_modules/.bin/tsc\" --project tsconfig.headless.json --outDir {{$FullBaseDir}}Spellmasons/headless-server-build/ && cp package-lock.json headless-server-build/ && cp public/spellmasons-mods/build/SpellmasonsMods.cjs.js headless-server-build/src/SpellmasonsMods.cjs.js && cd headless-server-build/ && \"{{$FullBaseDir}}node/bin/node\" \"{{$FullBaseDir}}node/bin/npm\" i --omit=dev'", - "UpdateSourceConditionSetting":"", - "UpdateSourceConditionValue":"", - "SkipOnFailure":false - }, - { - "UpdateStageName":"Buiding Server", - "UpdateSourcePlatform":"Windows", - "UpdateSource":"Executable", - "UpdateSourceData":"cmd.exe", - "UpdateSourceArgs":"/C set PATH={{$FullBaseDir}}node;%PATH% && cd \"{{$FullBaseDir}}Spellmasons\\\" && \"node_modules\\.bin\\tsc\" --project tsconfig.headless.json --outDir {{$FullBaseDir}}Spellmasons\\headless-server-build\\ && cp package-lock.json headless-server-build\\ && cp public\\spellmasons-mods\\build\\SpellmasonsMods.cjs.js headless-server-build\\src\\SpellmasonsMods.cjs.js && cd headless-server-build\\ && \"{{$FullBaseDir}}node\\npm\" i --omit=dev", - "UpdateSourceConditionSetting":"", - "UpdateSourceConditionValue":"", - "SkipOnFailure":false - } -] +[ + { + "UpdateStageName":"Spellmasons Folder Creation", + "UpdateSourcePlatform":"All", + "UpdateSource":"CreateDirectory", + "UpdateSourceArgs":"{{$FullBaseDir}}Spellmasons" + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'git -C {{$FullBaseDir}}Spellmasons pull https://github.com/jdoleary/Spellmasons.git || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons'", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Latest", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'git -C {{$FullBaseDir}}Spellmasons reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}'", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Manual", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C git -C {{$FullBaseDir}}Spellmasons pull https://github.com/jdoleary/Spellmasons.git || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Latest", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Downloading Server", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C git -C {{$FullBaseDir}}Spellmasons reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}", + "UpdateSourceConditionSetting":"ServerVersion", + "UpdateSourceConditionValue":"Manual", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Node.js Download", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"x86_64", + "UpdateSource":"FetchURL", + "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-linux-x64.tar.gz", + "UpdateSourceTarget":"{{$FullBaseDir}}", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false" + }, + { + "UpdateStageName":"Node.js Extract", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"x86_64", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'cd \"{{$FullBaseDir}}\" && rm -Rf \"{{$FullBaseDir}}node/\" >/dev/null 2>&1 && tar xfv node-v20.16.0-linux-x64.tar.gz > {{$FullBaseDir}}AMPSetupLog.txt 2>&1 && mv -v node-v20.16.0-linux-x64 node >> {{$FullBaseDir}}AMPSetupLog.txt 2>&1 && rm node-v20.16.0-linux-x64.tar.gz'", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Node.js Download", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"aarch64", + "UpdateSource":"FetchURL", + "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-linux-arm64.tar.gz", + "UpdateSourceTarget":"{{$FullBaseDir}}", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false" + }, + { + "UpdateStageName":"Node.js Extract", + "UpdateSourcePlatform":"Linux", + "UpdateSourceArch":"aarch64", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'cd \"{{$FullBaseDir}}\" && rm -Rf \"{{$FullBaseDir}}node/\" >/dev/null 2>&1 && tar xfv node-v20.16.0-linux-arm64.tar.gz && mv -v node-v20.16.0-linux-arm64 node && rm node-v20.16.0-linux-arm64.tar.gz'", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Node.js Download", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"FetchURL", + "UpdateSourceData":"https://nodejs.org/download/release/v20.16.0/node-v20.16.0-win-x64.zip", + "UpdateSourceTarget":"{{$FullBaseDir}}", + "UnzipUpdateSource":true, + "OverwriteExistingFiles":true, + "DeleteAfterExtract":true, + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false" + }, + { + "UpdateStageName":"Node.js Extract", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C cd \"{{$FullBaseDir}}\" & rmdir /S /Q \"{{$FullBaseDir}}node/\" > NUL 2>&1 & rename node-v20.16.0-win-x64 node > {{$FullBaseDir}}AMPSetupLog.txt 2>&1", + "UpdateSourceConditionSetting":"DisableNodeDownload", + "UpdateSourceConditionValue":"false", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Installing Necessary npm Packages", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'export PATH=$PATH:{{$FullBaseDir}}node/bin && cd \"{{$FullBaseDir}}Spellmasons/\" && npm i'", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Installing Necessary npm Packages", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C set PATH={{$FullBaseDir}}node;%PATH% && cd \"{{$FullBaseDir}}Spellmasons\\\" && npm i", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Building Server", + "UpdateSourcePlatform":"Linux", + "UpdateSource":"Executable", + "UpdateSourceData":"/bin/bash", + "UpdateSourceArgs":"-c 'export PATH=$PATH:{{$FullBaseDir}}node/bin && cd {{$FullBaseDir}}Spellmasons && \"node_modules/.bin/tsc\" --project tsconfig.headless.json --outDir {{$FullBaseDir}}spellmasons-server/ && cp package-lock.json {{$FullBaseDir}}spellmasons-server/ && cp public/spellmasons-mods/build/SpellmasonsMods.cjs.js {{$FullBaseDir}}spellmasons-server/src/SpellmasonsMods.cjs.js && cd {{$FullBaseDir}}spellmasons-server/ && npm i --omit=dev'", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + }, + { + "UpdateStageName":"Buiding Server", + "UpdateSourcePlatform":"Windows", + "UpdateSource":"Executable", + "UpdateSourceData":"cmd.exe", + "UpdateSourceArgs":"/C set PATH={{$FullBaseDir}}node;%PATH% && cd \"{{$FullBaseDir}}Spellmasons\\\" && \"node_modules\\.bin\\tsc\" --project tsconfig.headless.json --outDir {{$FullBaseDir}}spellmasons-server\\ && copy package-lock.json {{$FullBaseDir}}spellmasons-server\\ && copy public\\spellmasons-mods\\build\\SpellmasonsMods.cjs.js {{$FullBaseDir}}spellmasons-server\\src\\SpellmasonsMods.cjs.js && cd {{$FullBaseDir}}spellmasons-server\\ && npm i --omit=dev", + "UpdateSourceConditionSetting":"", + "UpdateSourceConditionValue":"", + "SkipOnFailure":false + } +] From edb37ab4193b64fbddbf1c03ad1582ab12433e25 Mon Sep 17 00:00:00 2001 From: Brayan Camacho <41172298+Chain-BC@users.noreply.github.com> Date: Tue, 13 Aug 2024 17:04:46 -0700 Subject: [PATCH 4/6] Custom Version Tweak Now it the module should be able to get all the newest releases with no problem, even if the local copy of the repository is outdated. --- spellmasonsupdates.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/spellmasonsupdates.json b/spellmasonsupdates.json index acb65dde1..e28c2b20a 100644 --- a/spellmasonsupdates.json +++ b/spellmasonsupdates.json @@ -10,7 +10,7 @@ "UpdateSourcePlatform":"Linux", "UpdateSource":"Executable", "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'git -C {{$FullBaseDir}}Spellmasons pull https://github.com/jdoleary/Spellmasons.git || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons'", + "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && git pull https://github.com/jdoleary/Spellmasons.git || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons'", "UpdateSourceConditionSetting":"ServerVersion", "UpdateSourceConditionValue":"Latest", "SkipOnFailure":false @@ -20,7 +20,7 @@ "UpdateSourcePlatform":"Linux", "UpdateSource":"Executable", "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'git -C {{$FullBaseDir}}Spellmasons reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}'", + "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && git pull https://github.com/jdoleary/Spellmasons.git && git -C {{$FullBaseDir}}Spellmasons reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}'", "UpdateSourceConditionSetting":"ServerVersion", "UpdateSourceConditionValue":"Manual", "SkipOnFailure":false @@ -30,7 +30,7 @@ "UpdateSourcePlatform":"Windows", "UpdateSource":"Executable", "UpdateSourceData":"cmd.exe", - "UpdateSourceArgs":"/C git -C {{$FullBaseDir}}Spellmasons pull https://github.com/jdoleary/Spellmasons.git || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons", + "UpdateSourceArgs":"/C cd {{$FullBaseDir}}Spellmasons && git pull https://github.com/jdoleary/Spellmasons.git || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons", "UpdateSourceConditionSetting":"ServerVersion", "UpdateSourceConditionValue":"Latest", "SkipOnFailure":false @@ -40,7 +40,7 @@ "UpdateSourcePlatform":"Windows", "UpdateSource":"Executable", "UpdateSourceData":"cmd.exe", - "UpdateSourceArgs":"/C git -C {{$FullBaseDir}}Spellmasons reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}", + "UpdateSourceArgs":"/C cd {{$FullBaseDir}}Spellmasons && git pull https://github.com/jdoleary/Spellmasons.git && git reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}", "UpdateSourceConditionSetting":"ServerVersion", "UpdateSourceConditionValue":"Manual", "SkipOnFailure":false From 156e3d33b8a15fdb12dbc75c6c6a316f7c2e9856 Mon Sep 17 00:00:00 2001 From: Brayan Camacho <41172298+Chain-BC@users.noreply.github.com> Date: Tue, 13 Aug 2024 17:14:42 -0700 Subject: [PATCH 5/6] Please Ignore --- spellmasonsupdates.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spellmasonsupdates.json b/spellmasonsupdates.json index e28c2b20a..df6504d2e 100644 --- a/spellmasonsupdates.json +++ b/spellmasonsupdates.json @@ -20,7 +20,7 @@ "UpdateSourcePlatform":"Linux", "UpdateSource":"Executable", "UpdateSourceData":"/bin/bash", - "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && git pull https://github.com/jdoleary/Spellmasons.git && git -C {{$FullBaseDir}}Spellmasons reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}'", + "UpdateSourceArgs":"-c 'cd {{$FullBaseDir}}Spellmasons && git pull https://github.com/jdoleary/Spellmasons.git && git reset --hard {{CustomVersion}} || git clone https://github.com/jdoleary/Spellmasons.git {{$FullBaseDir}}Spellmasons -b {{CustomVersion}}'", "UpdateSourceConditionSetting":"ServerVersion", "UpdateSourceConditionValue":"Manual", "SkipOnFailure":false From 7f1e8d0cf8f969415d0c3b96385a78c19822291a Mon Sep 17 00:00:00 2001 From: Brayan Camacho <41172298+Chain-BC@users.noreply.github.com> Date: Wed, 25 Sep 2024 12:50:57 -0700 Subject: [PATCH 6/6] New Stable Version Released A new stable version was released recently, so changing spellmasonsconfig.json to reflect this. --- spellmasonsconfig.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spellmasonsconfig.json b/spellmasonsconfig.json index bfd0b9532..c31168065 100644 --- a/spellmasonsconfig.json +++ b/spellmasonsconfig.json @@ -25,8 +25,8 @@ "IsFlagArgument":false, "ParamFieldName":"CustomVersion", "IncludeInCommandLine":false, - "DefaultValue":"v1.41.6", - "Placeholder":"v1.41.6", + "DefaultValue":"v1.43.4", + "Placeholder":"v1.43.4", "EnumValues":{} }, {