From c09e016002ef63770c1d95db2f9799c9bff0f4b1 Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Wed, 10 Nov 2021 10:51:15 -0800 Subject: [PATCH 1/7] Create README.md --- game_eggs/FoundryVTT/README.md | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 game_eggs/FoundryVTT/README.md diff --git a/game_eggs/FoundryVTT/README.md b/game_eggs/FoundryVTT/README.md new file mode 100644 index 00000000..8176c4dc --- /dev/null +++ b/game_eggs/FoundryVTT/README.md @@ -0,0 +1,7 @@ +# Foundry VTT +Foundry VTT is a standalone application built for experiencing multiplayer tabletop RPGs using a feature-rich and modern self-hosted application where your players connect directly through the browser. + +# Installation +Foundry requires a license. In order to use this egg, you will need to purchase a foundry license, select the linux platform from your profile on the website, and then paste the "Timed URL" into the variable when seting up the server. + +![image](https://user-images.githubusercontent.com/1012176/141174950-840fbf28-37d9-4244-8402-a72821458f41.png) From 251d65fb974b18227a7174d28506ea91b4b9b4ae Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Wed, 10 Nov 2021 10:56:08 -0800 Subject: [PATCH 2/7] Update README.md --- game_eggs/FoundryVTT/README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/game_eggs/FoundryVTT/README.md b/game_eggs/FoundryVTT/README.md index 8176c4dc..1e4fdacf 100644 --- a/game_eggs/FoundryVTT/README.md +++ b/game_eggs/FoundryVTT/README.md @@ -5,3 +5,8 @@ Foundry VTT is a standalone application built for experiencing multiplayer table Foundry requires a license. In order to use this egg, you will need to purchase a foundry license, select the linux platform from your profile on the website, and then paste the "Timed URL" into the variable when seting up the server. ![image](https://user-images.githubusercontent.com/1012176/141174950-840fbf28-37d9-4244-8402-a72821458f41.png) + +Note that this egg only runs the node application. You will need to manage TLS, reverse proxying, etc. on your own. + +# Server Ports +This is a node application and only needs a single port that you will connect to over http(s) From c80e2d30fd7465d6844011a06988aeaef851be15 Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Wed, 10 Nov 2021 11:07:00 -0800 Subject: [PATCH 3/7] Create egg-FoundryVTT.json --- game_eggs/FoundryVTT/egg-FoundryVTT.json | 59 ++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 game_eggs/FoundryVTT/egg-FoundryVTT.json diff --git a/game_eggs/FoundryVTT/egg-FoundryVTT.json b/game_eggs/FoundryVTT/egg-FoundryVTT.json new file mode 100644 index 00000000..ab2244fc --- /dev/null +++ b/game_eggs/FoundryVTT/egg-FoundryVTT.json @@ -0,0 +1,59 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1", + "update_url": null + }, + "exported_at": "2021-11-10T11:06:17-08:00", + "name": "Foundry VTT", + "author": "pterodactyl@demi.cloud", + "description": "Foundry VTT is a standalone application built for experiencing multiplayer tabletop RPGs using a feature-rich and modern self-hosted application where your players connect directly through the browser.", + "features": null, + "images": [ + "ghcr.io\/parkervcp\/yolks:nodejs_17" + ], + "file_denylist": [], + "startup": "node .\/app\/resources\/app\/main.js --dataPath=\"\/home\/container\/data\"", + "config": { + "files": "{\r\n \"data\/Config\/options.json\": {\r\n \"parser\": \"json\",\r\n \"find\": {\r\n \"port\": \"{{server.build.default.port}}\",\r\n \"language\": \"{{server.build.env.FOUNDRY_LANGUAGE}}\",\r\n \"updateChannel\": \"{{server.build.env.UPDATE_CHANNEL}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Server started and listening on port\"\r\n}", + "logs": "{}", + "stop": "^c" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# FoundryVTT install script\r\n#\r\n# Server Files: \/mnt\/server\r\ndeclare -r DIR_ROOT=\"\/mnt\/server\"\r\ndeclare -r DIR_APP=\"${DIR_ROOT}\/app\"\r\ndeclare -r DIR_DATA=\"${DIR_ROOT}\/data\"\r\ndeclare -r ZIP_FILE_NAME=\"foundryvtt.zip\"\r\n\r\nmain() {\r\n apt update\r\n apt install -y wget unzip\r\n\r\n printf \"\\nBuilding directory structure...\\n\"\r\n mkdir -p \"${DIR_ROOT}\/\"{data\/Config,app}\r\n # shellcheck disable=SC2164\r\n cd \"${DIR_APP}\"\r\n printf \"\\nDownloading FoundryVTT files...\\n\"\r\n wget \"${TIMED_URL}\" -O \"${ZIP_FILE_NAME}\"\r\n printf \"\\nunzipping FoundryVTT files...\\n\"\r\n unzip \"${ZIP_FILE_NAME}\" -d \"${DIR_APP}\"\r\n rm \"${ZIP_FILE_NAME}\"\r\n\r\n printf \"\\nGenerating default configuration...\\n\"\r\n cat <\"${DIR_DATA}\/Config\/options.json\"\r\n{\r\n \"port\": 30000,\r\n \"upnp\": false,\r\n \"fullscreen\": false,\r\n \"hostname\": null,\r\n \"localHostname\": null,\r\n \"routePrefix\": null,\r\n \"sslCert\": null,\r\n \"sslKey\": null,\r\n \"awsConfig\": null,\r\n \"dataPath\": \"\/home\/container\/data\",\r\n \"passwordSalt\": null,\r\n \"proxySSL\": false,\r\n \"proxyPort\": null,\r\n \"minifyStaticFiles\": true,\r\n \"updateChannel\": \"release\",\r\n \"language\": \"en.core\",\r\n \"upnpLeaseDuration\": null,\r\n \"world\": null\r\n} \r\nEOF\r\n printf \"Installation Done.\\n\"\r\n}\r\nmain \"@\"", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Timed URL", + "description": "This is required to download the foundry files. Available in your https:\/\/foundryvtt.com\/ profile after you've purchased a license. This link generally lasts for about 5 minutes.", + "env_variable": "TIMED_URL", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|url" + }, + { + "name": "Language", + "description": "As may be expected, this setting configures the localization of the program and can be leveraged by localization modules to ensure that the interface is translated to the language of your choosing wherever possible.", + "env_variable": "FOUNDRY_LANGUAGE", + "default_value": "en.core", + "user_viewable": true, + "user_editable": true, + "rules": "string|max:20" + }, + { + "name": "Update Channel", + "description": "Select what channel you want to use for automatic updates", + "env_variable": "UPDATE_CHANNEL", + "default_value": "release", + "user_viewable": true, + "user_editable": true, + "rules": "string|max:256" + } + ] +} From 6b71e839c838f67e3350368863636882b0eb8aa3 Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Sat, 13 Nov 2021 13:08:43 -0800 Subject: [PATCH 4/7] Update to use new image updated to use suggested ghcr.io/pterodactyl/installers:debian --- game_eggs/FoundryVTT/egg-FoundryVTT.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/game_eggs/FoundryVTT/egg-FoundryVTT.json b/game_eggs/FoundryVTT/egg-FoundryVTT.json index ab2244fc..a61725ca 100644 --- a/game_eggs/FoundryVTT/egg-FoundryVTT.json +++ b/game_eggs/FoundryVTT/egg-FoundryVTT.json @@ -4,7 +4,7 @@ "version": "PTDL_v1", "update_url": null }, - "exported_at": "2021-11-10T11:06:17-08:00", + "exported_at": "2021-11-13T13:06:21-08:00", "name": "Foundry VTT", "author": "pterodactyl@demi.cloud", "description": "Foundry VTT is a standalone application built for experiencing multiplayer tabletop RPGs using a feature-rich and modern self-hosted application where your players connect directly through the browser.", @@ -22,8 +22,8 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n# FoundryVTT install script\r\n#\r\n# Server Files: \/mnt\/server\r\ndeclare -r DIR_ROOT=\"\/mnt\/server\"\r\ndeclare -r DIR_APP=\"${DIR_ROOT}\/app\"\r\ndeclare -r DIR_DATA=\"${DIR_ROOT}\/data\"\r\ndeclare -r ZIP_FILE_NAME=\"foundryvtt.zip\"\r\n\r\nmain() {\r\n apt update\r\n apt install -y wget unzip\r\n\r\n printf \"\\nBuilding directory structure...\\n\"\r\n mkdir -p \"${DIR_ROOT}\/\"{data\/Config,app}\r\n # shellcheck disable=SC2164\r\n cd \"${DIR_APP}\"\r\n printf \"\\nDownloading FoundryVTT files...\\n\"\r\n wget \"${TIMED_URL}\" -O \"${ZIP_FILE_NAME}\"\r\n printf \"\\nunzipping FoundryVTT files...\\n\"\r\n unzip \"${ZIP_FILE_NAME}\" -d \"${DIR_APP}\"\r\n rm \"${ZIP_FILE_NAME}\"\r\n\r\n printf \"\\nGenerating default configuration...\\n\"\r\n cat <\"${DIR_DATA}\/Config\/options.json\"\r\n{\r\n \"port\": 30000,\r\n \"upnp\": false,\r\n \"fullscreen\": false,\r\n \"hostname\": null,\r\n \"localHostname\": null,\r\n \"routePrefix\": null,\r\n \"sslCert\": null,\r\n \"sslKey\": null,\r\n \"awsConfig\": null,\r\n \"dataPath\": \"\/home\/container\/data\",\r\n \"passwordSalt\": null,\r\n \"proxySSL\": false,\r\n \"proxyPort\": null,\r\n \"minifyStaticFiles\": true,\r\n \"updateChannel\": \"release\",\r\n \"language\": \"en.core\",\r\n \"upnpLeaseDuration\": null,\r\n \"world\": null\r\n} \r\nEOF\r\n printf \"Installation Done.\\n\"\r\n}\r\nmain \"@\"", - "container": "debian:buster-slim", + "script": "#!\/bin\/bash\r\n# FoundryVTT install script\r\n#\r\n# Server Files: \/mnt\/server\r\ndeclare -r DIR_ROOT=\"\/mnt\/server\"\r\ndeclare -r DIR_APP=\"${DIR_ROOT}\/app\"\r\ndeclare -r DIR_DATA=\"${DIR_ROOT}\/data\"\r\ndeclare -r ZIP_FILE_NAME=\"foundryvtt.zip\"\r\n\r\nmain() {\r\n apt update\r\n apt install -y unzip\r\n\r\n printf \"\\nBuilding directory structure...\\n\"\r\n mkdir -p \"${DIR_ROOT}\/data\/Config\"\r\n mkdir -p \"${DIR_ROOT}\/app\"\r\n # shellcheck disable=SC2164\r\n cd \"${DIR_APP}\"\r\n printf \"\\nDownloading FoundryVTT files...\\n\"\r\n wget \"${TIMED_URL}\" -O \"${ZIP_FILE_NAME}\"\r\n printf \"\\nunzipping FoundryVTT files...\\n\"\r\n unzip \"${ZIP_FILE_NAME}\" -d \"${DIR_APP}\"\r\n rm \"${ZIP_FILE_NAME}\"\r\n\r\n printf \"\\nGenerating default configuration...\\n\"\r\n cat <\"${DIR_DATA}\/Config\/options.json\"\r\n{\r\n \"port\": 30000,\r\n \"upnp\": false,\r\n \"fullscreen\": false,\r\n \"hostname\": null,\r\n \"localHostname\": null,\r\n \"routePrefix\": null,\r\n \"sslCert\": null,\r\n \"sslKey\": null,\r\n \"awsConfig\": null,\r\n \"dataPath\": \"\/home\/container\/data\",\r\n \"passwordSalt\": null,\r\n \"proxySSL\": false,\r\n \"proxyPort\": null,\r\n \"minifyStaticFiles\": true,\r\n \"updateChannel\": \"release\",\r\n \"language\": \"en.core\",\r\n \"upnpLeaseDuration\": null,\r\n \"world\": null\r\n} \r\nEOF\r\n printf \"Installation Done.\\n\"\r\n}\r\nmain \"@\"", + "container": "ghcr.io\/pterodactyl\/installers:debian", "entrypoint": "bash" } }, From ebbcf2cef03746f89afea788550404ce6dc016d3 Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Sat, 13 Nov 2021 13:09:51 -0800 Subject: [PATCH 5/7] Added FoundryVTT to list --- game_eggs/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/game_eggs/README.md b/game_eggs/README.md index d059f869..e9725fbb 100644 --- a/game_eggs/README.md +++ b/game_eggs/README.md @@ -163,3 +163,5 @@ [Vintage Story](vintage_story/vintage_story) [Xonotic](xonotic/xonotic) + +[FoundryVTT](FoundryVTT) From 3163de17eedc1e5f8233dc6b5e0385f944d64233 Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Sat, 13 Nov 2021 13:10:42 -0800 Subject: [PATCH 6/7] Add FoundryVTT --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 302c1ad3..65561a44 100644 --- a/README.md +++ b/README.md @@ -238,6 +238,8 @@ If you are reading this it looks like you are looking to add an egg to your serv [Xonotic](game_eggs/xonotic/xonotic) +[FoundryVTT](game_eggs/FoundryVTT) + ## [Monitoring](/monitoring/) ### Prometheus * [Prometheus](/monitoring/prometheus) From a485c6c97478f815e7292a2f10e054bfca1353e6 Mon Sep 17 00:00:00 2001 From: Gorian <1012176+Gorian@users.noreply.github.com> Date: Sun, 22 May 2022 13:38:08 -0700 Subject: [PATCH 7/7] added link to foundry website --- game_eggs/FoundryVTT/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/game_eggs/FoundryVTT/README.md b/game_eggs/FoundryVTT/README.md index 1e4fdacf..eb85dd3c 100644 --- a/game_eggs/FoundryVTT/README.md +++ b/game_eggs/FoundryVTT/README.md @@ -1,5 +1,5 @@ # Foundry VTT -Foundry VTT is a standalone application built for experiencing multiplayer tabletop RPGs using a feature-rich and modern self-hosted application where your players connect directly through the browser. +[Foundry VTT](https://foundryvtt.com/) is a standalone application built for experiencing multiplayer tabletop RPGs using a feature-rich and modern self-hosted application where your players connect directly through the browser. # Installation Foundry requires a license. In order to use this egg, you will need to purchase a foundry license, select the linux platform from your profile on the website, and then paste the "Timed URL" into the variable when seting up the server.