diff --git a/actionfoto/about.md b/actionfoto/about.md new file mode 100644 index 0000000..2eb31fb --- /dev/null +++ b/actionfoto/about.md @@ -0,0 +1,9 @@ +--- +sidebar_label: About +sidebar_position: 1 +--- + +# About + +ActionFoto is a plugin that allows you to create theme park style action photos. It is a great way to add some fun to +your server and give your players a way to remember their time on your server. \ No newline at end of file diff --git a/actionfoto/faq.md b/actionfoto/faq.md new file mode 100644 index 0000000..dea8f4c --- /dev/null +++ b/actionfoto/faq.md @@ -0,0 +1,20 @@ +--- +sidebar_label: FAQ +sidebar_position: 4 +--- + +# FAQ + +## Images aren't send to the panel. How to fix? + +First check if you don't get any errors. If not, make sure the name of the ActionFoto board is also the name of a +ThemePark ride. +If you get an error, please check below. + +### I get an `PacketTooBigException`: + +The error looks like +this: `com.mysql.jdbc.PacketTooBigException: Packet for query is too large. You can change this value on the server by setting the max_allowed_packet' variable.` + +As you can see, you have to change the max_allowed_packet setting. Open the `my.cnf` file and +change `max_allowed_packet` from 32M to 256M. This will allow us to send bigger images. \ No newline at end of file diff --git a/actionfoto/setup.md b/actionfoto/setup.md new file mode 100644 index 0000000..5153451 --- /dev/null +++ b/actionfoto/setup.md @@ -0,0 +1,12 @@ +--- +sidebar_label: Setup +sidebar_position: 2 +--- + +# Setup + +1. Make sure you have installed [MapReflectionAPI](https://polymart.org/resource/mapreflectionapi-1-12-1-19.2576) + and [ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/) in your server. These are required for + ActionFoto. +2. Download the [plugin from Polymart](https://polymart.org/resource/actionfoto.2245). Then just install it into your + plugins folder. The plugin will start up and function out of the box. \ No newline at end of file diff --git a/actionfoto/usage.md b/actionfoto/usage.md new file mode 100644 index 0000000..edd2e73 --- /dev/null +++ b/actionfoto/usage.md @@ -0,0 +1,77 @@ +--- +sidebar_label: Usage +sidebar_position: 2 +--- + +# Usage + +## Commands: + +- `/af info` - Information about the plugin +- `/af help` - Get list of commands +- `/af reload` - reload the plugin +- `/af create ` - Create an itemframe section. +- `/af addframes ` - Add one/more frame(s) to an itemframe section +- `/af take ` - Take a picture of an/multiple user(s) and add it to the next available itemframe in an + itemframe section. The player can be either a name or a radius (r=5). You can't use the Minecraft selectors! +- `/af give [user] ` - Give a User a picture of the ImageUser. +- `/af reset ` - Reset one/all itemframes +- `/af remove ` - Remove an itemframe section. + +## Permissions: + +- `af.admin` - The general admin permission +- `af.give` - The give command permission + +## Signs: + +ActionFoto contains a Traincarts sign. + +``` +[train] +actionfoto + +``` + +## Layer system: + +The existing layers are: `BACKGROUND` (full size image), `PLAYERSKIN` (replaces `%UUID%` by the player UUID), `IMAGE` (a +normal image), `TEXT` (just text, use `%PLAYERNAME%` for the name of the player). + +See the examples below: + +```yml +#Background layer: +'1': + Type: BACKGROUND + Value: https://sbdplugins.nl/images/random.png +#Playerskin layer: +'2': + Type: PLAYERSKIN + Value: https://sbdplugins.nl/images/player3d.png?uuid=%UUID% + X: 40 #X position, from top left + Y: 40 #Y position, from top left +#Image player +'3': + Type: IMAGE + Value: https://sbdplugins.nl/images/random.png + X: 30 #X position, from top left + Y: 20 #Y position, from top left + Width: 60 #Width (pixels) + Height: 40 #Height (pixels) +#Text layer +'4': + Type: TEXT + Value: 'Hello!' + X: 20 #X position, from top left + Y: 30 #Y position, from top left + #Font is optional! + Font: + Name: Tahoma #The font name (must be supported by java) + Type: 0 #The font type (see below) + Size: 8.0 #Font size (pixels) +``` + +You can find a list +of [available fonts here](https://alvinalexander.com/blog/post/jfc-swing/swing-faq-list-fonts-current-platform/). The +types are: 0 (Plain), 1 (Bold) and 2 (Italic). \ No newline at end of file diff --git a/home.md b/home.md index bf0df54..2178c7c 100644 --- a/home.md +++ b/home.md @@ -11,8 +11,8 @@ themeparks, but we also make plugins for other servers. Find out more about our plugins below: -- [VehiclesPlus](/en/vehiclesplus/about) -- *[VehiclesPlus v2 (LEGACY)](/en/vehiclesplus/setup) - No support anymore, for archiving only!* -- *[ThemePark series](/en/themepark/about) - No support anymore, for archiving only!* -- *[ActionFoto](/en/actionfoto/about) - No support anymore, for archiving only!* -- *[RidecountViewer](/en/ridecountviewer/about) - No support anymore, for archiving only!* \ No newline at end of file +- [VehiclesPlus](/vehiclesplus-v3/about) +- *[VehiclesPlus v2 (LEGACY)](/vehiclesplus/setup) - No support anymore, for archiving only!* +- *[ThemePark series](/themepark/about) - No support anymore, for archiving only!* +- *[ActionFoto](/actionfoto/about) - No support anymore, for archiving only!* +- *[RidecountViewer](/ridecountviewer/about) - No support anymore, for archiving only!* \ No newline at end of file diff --git a/ridecountviewer/about.md b/ridecountviewer/about.md new file mode 100644 index 0000000..f7954f2 --- /dev/null +++ b/ridecountviewer/about.md @@ -0,0 +1,9 @@ +--- +sidebar_label: About +sidebar_position: 1 +--- + +# About + +RidecountViewer is a plugin that allows you to create a ride count leaderboard for your server. It can use the data from +ThemePark. \ No newline at end of file diff --git a/ridecountviewer/faq.md b/ridecountviewer/faq.md new file mode 100644 index 0000000..cd98530 --- /dev/null +++ b/ridecountviewer/faq.md @@ -0,0 +1,24 @@ +--- +sidebar_label: FAQ +sidebar_position: 4 +--- + +# FAQ + +## All the names of bedrock players are shown as "Unknown". How to fix? + +To look up the names of offline bedrock players, we use an API. This API requires a token to work. You can claim a token +like this: + +1. Go to [XAPI registration](https://xapi.us/register) and fill in the form. The Free plan should work just fine, as we + store player names in cache. Then check your email to verify your account. +2. [Sign in to your account](https://xapi.us/login). Then login to your Xbox Live account on the Profile page. You can + use the OAuth or fill in your account details manually. +3. Copy the **API Token**, go to your server files, and then to `/plugins/ThemeParkRidecountAddon/config.yml`, and paste + it after `XAPIToken`. +4. Done! Restart your server, and now you should see the correct player names for Bedrock players. + +:::info +**NOTE:** Because of privacy reasons, if the player has disabled viewing their name for non-friends, you can +only view their name if you are a friend of them. +::: \ No newline at end of file diff --git a/ridecountviewer/setup.md b/ridecountviewer/setup.md new file mode 100644 index 0000000..ad85de3 --- /dev/null +++ b/ridecountviewer/setup.md @@ -0,0 +1,9 @@ +--- +sidebar_label: Setup +sidebar_position: 2 +--- + +# Setup + +1. Make sure you have installed [MapReflectionAPI](https://polymart.org/resource/mapreflectionapi-1-12-1-19.2576) and [ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/) in your server. These are required for ActionFoto. +2. Download the [plugin from Polymart](https://polymart.org/resource/ridecountviewer.2246). Then just install it into your plugins folder. The plugin will start up and function out of the box. \ No newline at end of file diff --git a/ridecountviewer/usage.md b/ridecountviewer/usage.md new file mode 100644 index 0000000..e34bc99 --- /dev/null +++ b/ridecountviewer/usage.md @@ -0,0 +1,18 @@ +--- +sidebar_label: Usage +sidebar_position: 3 +--- + +# Usage + +## Commands + +- `/rv help` - Get list of commands +- `/rv reload` - Reload the plugin +- `/rv create ` - Create a ridecount itemframe. The UpdateFrequency is `NEVER`, `DAILY` or `WEEKLY`. +- `/rv update ` - Force the update of a ridecount itemframe. +- `/rv remove ` - Remove a ridecount itemframe. + +## Permissions + +- `rv.admin` - The general admin permission (for all the commands) \ No newline at end of file diff --git a/static/themepark/faq_discord_webhook.gif b/static/themepark/faq_discord_webhook.gif new file mode 100644 index 0000000..7eaa0b9 Binary files /dev/null and b/static/themepark/faq_discord_webhook.gif differ diff --git a/static/themepark/faq_openaudiomc.png b/static/themepark/faq_openaudiomc.png new file mode 100644 index 0000000..a46e286 Binary files /dev/null and b/static/themepark/faq_openaudiomc.png differ diff --git a/static/themepark/setup_linux_upload.png b/static/themepark/setup_linux_upload.png new file mode 100644 index 0000000..82e12b2 Binary files /dev/null and b/static/themepark/setup_linux_upload.png differ diff --git a/static/themepark/setup_shared_accesshost.png b/static/themepark/setup_shared_accesshost.png new file mode 100644 index 0000000..5d4274b Binary files /dev/null and b/static/themepark/setup_shared_accesshost.png differ diff --git a/static/themepark/setup_shared_email.png b/static/themepark/setup_shared_email.png new file mode 100644 index 0000000..34ce1d9 Binary files /dev/null and b/static/themepark/setup_shared_email.png differ diff --git a/static/themepark/setup_shared_mysql.png b/static/themepark/setup_shared_mysql.png new file mode 100644 index 0000000..035f239 Binary files /dev/null and b/static/themepark/setup_shared_mysql.png differ diff --git a/static/themepark/setup_shared_mysql_details.png b/static/themepark/setup_shared_mysql_details.png new file mode 100644 index 0000000..455172c Binary files /dev/null and b/static/themepark/setup_shared_mysql_details.png differ diff --git a/static/themepark/setup_shared_phpmyadmin.png b/static/themepark/setup_shared_phpmyadmin.png new file mode 100644 index 0000000..b37ca4a Binary files /dev/null and b/static/themepark/setup_shared_phpmyadmin.png differ diff --git a/static/themepark/setup_shared_upload.png b/static/themepark/setup_shared_upload.png new file mode 100644 index 0000000..9354dd9 Binary files /dev/null and b/static/themepark/setup_shared_upload.png differ diff --git a/themepark/about.md b/themepark/about.md new file mode 100644 index 0000000..9a1b4ed --- /dev/null +++ b/themepark/about.md @@ -0,0 +1,24 @@ +--- +sidebar_label: About +sidebar_position: 1 +--- + +# What is the ThemePark series? + +The ThemePark series consists of ThemePark, ThemeParkPlus and ThemeParkPlus Extension. + +## ThemePark + +ThemePark is a free plugin, which provides a ride status menu and some other features. + +## ThemeParkPlus + +ThemeParkPlus is a paid package adding more features to ThemePark. + +- **ThemeParkPlus** → A plugin adding one-way gates, light controls, and more. +- **ThemeParkConnector** → A plugin connecting your ThemePark plugin with the ThemeParkPanel. +- **ThemeParkPanel** → A panel to view ride states, sell tickets for shows, and more. + +## ThemeParkPlus Extension + +ThemeParkPlus Extension adds more features to ThemeParkPanel. It adds the ability to control rides from the panel. \ No newline at end of file diff --git a/themepark/faq.md b/themepark/faq.md new file mode 100644 index 0000000..bc2ba21 --- /dev/null +++ b/themepark/faq.md @@ -0,0 +1,85 @@ +--- +sidebar_label: FAQ +sidebar_position: 4 +--- + +# FAQ + +## ThemePark + +### How can I create an attraction? + +That's very simple. You have to use the attraction.yml file for this: +Go to the ThemePark folder in the plugins folder, there yiy want to go into the attractions folder. In here choose +the `.yml` for the region you want to add the attraction to. +Under attractions: you have to create a new attraction. Copy it from a attraction you've already made or from here. Pay +attention that you get something like this (with other names): + +```yaml +attractions: + test: + name: "&aTest" + type: RIDE + status: CLOSED + location: "world:418:65:30" + test2: + name: "&aTest 2" + type: RIDE + status: CLOSED + location: "world:418:65:30" +``` + +In this case, test is the ID of the attraction. name contians the name of the ride, type is RIDE. If you want to create +a show, you have to put SHOW there. The status is CLOSED but you can use any status for this, you can also change it +in-game. The location can also be changed in-game. + +## How do you disable the item in specific worlds? + +To do this you have to use the settings.yml file and add the world to the worlds tab of the item. If I want to disable +the world with the name "world_name" I need to add it to the list of worlds like done bellow. + +```yaml +item: + #DEFAULT STUFF + worlds: + - world_name +``` + +## ThemeParkPlus + +### How can I set up the Discord Status system? + +1. Go to the `config.yml` file of ThemeParkPlus +2. Set `DiscordUpdates.Enabled` to `true` +3. Create a webhook URL of Discord. See the GIF below. +4. Copy the URL of the webhook, and paste it into `DiscordUpdates.WebhookURL` +5. Now you can change the other settings if you want. +6. Done! Restart your server, and it will work. ;) + +![Create Discord Webhook](../static/themepark/faq_discord_webhook.gif) + +### How can I give someone admin permissions in the panel? + +1. Log in to your database with PHPMyAdmin. Then go to the `users` table. +2. Here you have to find the user you want to give the admin right, and then change the value of `userAdmin` from 0 to + 1. + +### What does "Disconnected from socket." mean? + +The socket can't connect if: + +- Your MC name does not match, or the PIN (generated by the sign) does not match. +- The MC server has no socket connection, the MC server has a different ID then the panel, or the ID is used by multiple + servers (and thus taken). +- The attraction is not OPEN/CLOSED AND not ACTIVE/INACTIVE. +- The attraction is not in the panels.yml file. + +### How can I setup the OpenAudioMC integration? + +1. Go to the CraftMend Account panel. Create a new account or login to your account. Get a new fingerprint from the + fingerprint page and run the connect command (`/oa fingerprint `) in your server. Then go to the API + page. Copy the URL labeled Online Players - V1 and paste it into the `.env` file at `OPENAUDIOMC_URL`. +2. Change `{your api key}` into the API token you can get on the same page, and change `{server id}` into the Server ID + of the server you want to connect (you can find that on the server page). + +![OpenAudioMC Dashboard](../static/themepark/faq_openaudiomc.png) \ No newline at end of file diff --git a/themepark/setup.md b/themepark/setup.md new file mode 100644 index 0000000..2d508e5 --- /dev/null +++ b/themepark/setup.md @@ -0,0 +1,54 @@ +--- +sidebar_label: Setup +sidebar_position: 2 +--- + +# ThemePark + +1. Download the plugin from [Spigot](https://www.spigotmc.org/resources/themepark.48648/) + or [Polymart](https://polymart.org/resource/themepark.2242). +2. Put the plugin JAR into the `/plugins` folder of your server. +3. Restart your server. + +# ThemeParkPlus + +1. Make sure you have [ThemePark](#themepark) installed. +2. Make sure you have [WorldEdit](https://dev.bukkit.org/projects/worldedit) + and [WorldGuard](https://dev.bukkit.org/projects/worldguard) installed. +3. Make sure you have [Vault](https://dev.bukkit.org/projects/vault) and an economy manager ( + like [EssentialsX](https://essentialsx.net/downloads.html)) installed. +4. Download the plugin from [Polymart](https://polymart.org/resource/themeparkplus.2243). +5. Put the plugin JAR into the `/plugins` folder of your server. +6. Restart your server. + +# ThemeParkPanel + +1. Make sure you have [ThemePark](#themepark) installed on your Minecraft server. +2. To proceed, choose the type you want to install this panel on: + +- [Shared webhosting](/themepark/setup/shared) - If you own webhosting (you share with others) +- [VPS running Linux](/themepark/setup/linux) - If you own an VPS running Linux + +# ThemeParkPanelPlus + +**Make sure to follow the ThemeParkPanel instructions first!** + +1. Open the `settings.yml` from ThemeParkConnector. Then change the `socket.id` to something unique for your server. + Make sure to save the ID somewhere, because you need it for Step 5. +2. Change the `socket.panel` URL to your own panel domain. For + example `https://tppanel.mythemeparkserver.com/control/%ID%/%TOKEN%`. *(do **NOT** remove the `%%` variables)* +3. Extract the files from the ThemeParkPanelPlus ZIP into the root folder of your ThemeParkPanel installation. +4. Open the `routes/web.php` and append the following at the end: + +```php +//ThemeParkPanelPlus +Route::get('/control/{attraction_id}/{pin}', 'ControlController@index'); +``` + +5. Open the `.env` file and append the following at the end: + +``` +CONTROL_ID=CHANGEME +``` + +Make sure to change `CHANGEME` into the ID you configured in Step 1. \ No newline at end of file diff --git a/themepark/setup/_category_.json b/themepark/setup/_category_.json new file mode 100644 index 0000000..3523057 --- /dev/null +++ b/themepark/setup/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Setup", + "className": "hidden" +} \ No newline at end of file diff --git a/themepark/setup/linux.md b/themepark/setup/linux.md new file mode 100644 index 0000000..37f1848 --- /dev/null +++ b/themepark/setup/linux.md @@ -0,0 +1,227 @@ +--- +sidebar_label: VPS running Linux +sidebar_position: 2 +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +# VPS running Linux + +This guide will guide you through the installation of ThemeParkPanel on an VPS running Linux. + +*It assumes you are on the Ubuntu distro. If you are on another distro, some commands my vary.* + +## 1. Webserver setup (LEMP) + +We are going to use Nginx and MariaDB for this installation. Run the following commands in sequence. + +```bash +# Add 'add-apt-repository` command +apt -y install software-properties-common curl apt-transport-https ca-certificates gnupg + +# Install the required repositories +LC_ALL=C.UTF-8 add-apt-repository -y ppa:ondrej/php +curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash + +# Update repositories list +apt update + +# Install dependencies +apt -y install php8.1 php8.1-{cli,gd,mysql,pdo,mbstring,tokenizer,bcmath,xml,fpm,curl,zip} openssl git unzip mariadb-server nginx + +# Install composer +curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer + +# Create panel directory +mkdir -p /var/www/themeparkpanel +``` + +## 2. Uploading the files + +**You need remote file transfer software to upload the files to your VPS. You can use for example Filezilla or +WinSCP. *This guide assumes you have WinSCP.*** + +1. Click on **New Site**. Then enter your SSH details. Then click on **Login**. + +![Upload in WinSCP](../../static/themepark/setup_linux_upload.png) + +2. Go to the `/var/www/themeparkpanel` directory and upload the files of **the SSH zip**. +3. Run the following command to fix the file permissions: + +```bash +chmod -R 755 storage/* bootstrap/cache/ +``` + +## 3. Creating the MySQL database + +1. Run the following command to enter the MariaDB console. + +```bash +mysql -u root -p +``` + +And enter the following SQL commands in sequence. + +```sql +# Make sure to replace 'yourPassword' with a secure password +CREATE USER 'themeparkpanel'@'%' IDENTIFIED BY 'yourPassword'; +CREATE DATABASE panel; +GRANT ALL PRIVILEGES ON panel.* TO 'themeparkpanel'@'%' WITH GRANT OPTION; +exit +``` + +2. Open the `/etc/mysql/mariadb.conf.d/50-server.cnf` file and replace the value of the `bind-address` setting + with `0.0.0.0`. + +```yml +[ mysqld ] + # Replace the 127.0.0.1 with 0.0.0.0 + bind-address=0.0.0.0 +``` + +3. Run the following command to restart the MariaDB server. + +```bash +systemctl restart mariadb +``` + +## 4. Configuration of the panel + +1. Copy the .env.example file to .env (using `cp .env.example .env`) and open the `.env` file. + - Change `APP_URL` to the URL of your panel + - At `DB_` change the credentials to the database details created above. + - At `MAIL_` change the credentials to the credentials of an email account. +2. Run the followings command in sequence to proceed the installation. + +```bash +# Install dependencies +composer install --no-dev --optimize-autoloader + +# Generate the key +php artisan key:generate --force + +# Populate the database +php artisan migrate --force + +# Fix file permissions for the panel +chown -R www-data:www-data /var/www/themeparkpanel/* +``` + +## 5. Configuration of the webserver + +Choose if you want to add SSL encryption to your panel or not. + + + + *We include an example configuration to serve our panel. Make sure to replace `%DOMAIN` with the full domain, and `%PATH%` with the full installation path (probably `/var/www/themeparkpanel`).* + + 1. Create `/etc/nginx/sites-available/themeparkpanel.conf` and put the following content in it. + + ```nginx + +server { +listen 80; +listen [::]:80; + + root /var/www/themeparkpanel/public; + + server_name %DOMAIN%; + index index.php index.html index.nginx-debian.html; + + location / { + try_files $uri $uri/ /index.php?$query_string; + } + + location ~ \.php$ { + include snippets/fastcgi-php.conf; + fastcgi_pass unix:/run/php/php8.1-fpm.sock; + } + + location ~ /\.ht { + deny all; + } + + location ~ /.well-known { + allow all; + } + +} + +``` + +2. Run the following commands. + +```bash +# Link the configuration to the enabled directory +sudo ln -s /etc/nginx/sites-available/themeparkpanel.conf /etc/nginx/sites-enabled/themeparkpanel.conf + +# Restart Nginx +systemctl restart nginx +``` + + + + *We include an example configuration to serve our panel. Make sure to replace `%DOMAIN` with the full domain, and `%PATH%` with the full installation path (probably `/var/www/themeparkpanel`).* + + 1. Create `/etc/nginx/sites-available/themeparkpanel.conf` and put the following content in it. + + ```nginx + +server { +listen 80; +listen [::]:80; + + server_name %DOMAIN%; + return 301 https://$server_name$request_uri; + +} + +server { +listen 443 ssl http2; +listen [::]:443 ssl http2; + + ssl_certificate /etc/letsencrypt/live/%DOMAIN%/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/%DOMAIN%/privkey.pem; + + root /var/www/themeparkpanel/public; + + index index.php index.html; + + server_name %DOMAIN%; + + location / { + try_files $uri $uri/ /index.php?$query_string; + } + + location ~ \.php$ { + include snippets/fastcgi-php.conf; + fastcgi_pass unix:/run/php/php8.1-fpm.sock; + } + + location ~ /\.ht { + deny all; + } + + location ~ /.well-known { + allow all; + } + +} + +``` + +2. Create your SSL certificate. You can use for example Certbot to do this for you. + +3. Run the following commands. + +```bash +# Link the configuration to the enabled directory +sudo ln -s /etc/nginx/sites-available/themeparkpanel.conf /etc/nginx/sites-enabled/themeparkpanel.conf + +# Restart Nginx +systemctl restart nginx +``` + + + \ No newline at end of file diff --git a/themepark/setup/shared.md b/themepark/setup/shared.md new file mode 100644 index 0000000..1282642 --- /dev/null +++ b/themepark/setup/shared.md @@ -0,0 +1,69 @@ +--- +sidebar_label: Shared Webhosting +sidebar_position: 1 +--- + +# Shared Webhosting + +This guide will guide you through the installation of ThemeParkPanel on a shared webhosting. + +*It assumes your hosting is using DirectAdmin. If your hosting does not use DirectAdmin, please ask your hosting to do +specific things if you are unsure.* + +## 1. Creating the MySQL database + +1. Click on `MySQL Management` under **Account Manager** in the left sidebar. +2. Click on `Create New Database` on the right sidebar. + + ![Control Panel buttons](../../static/themepark/setup_shared_mysql.png) + +3. Fill in the details. Think of a name for the database and user, like `themeparkpanel`. It's recommended to generate a + strong password. + + ![Filling in Database details](../../static/themepark/setup_shared_mysql_details.png) + + :::info + **Make sure to safe the entered details somewhere, because you need them later!** + ::: + +4. **Click on the name of the database.** Then add `%` to the **Access Hosts**. Click on **Add New**. This makes sure + your Minecraft server can also access the database. + + ![Adding Access Host](../../static/themepark/setup_shared_accesshost.png) + +5. Open phpMyAdmin (most of the time this can be found under **Extra Features** in the sidebar). Click on the name of + your database in the sidebar. Then click on **Import** in the top menu. Click on **Choose file** and upload the + provided `ThemeParkPanel.sql` file. Finish by clicking on **Import**. + + ![Uploading database on phpMyAdmin](../../static/themepark/setup_shared_phpmyadmin.png) + +## 2. Creating an email account + +1. Click on `E-mail accounts` under **E-mail Manager** in the left sidebar. Then click on **Create Account** in the + right sidebar. +2. Fill in the details. Think of a name for the email account, like `panel`. It's recommended to generate a strong + password. + +![Creating an email account](../../static/themepark/setup_shared_email.png) + +## 3. Uploading the files + +**You need remote file transfer software to upload the files to your webhosting. You can use for example Filezilla or +WinSCP. *This guide assumes you have WinSCP.*** + +1. Click on **New Site**. Then enter the details of your webhosting account. *If you are unsure what to use, contact + your hosting.* Then click on **Login**. + + ![Filling in the FTP details](../../static/themepark/setup_shared_upload.png) +2. **Select the folder with the name of your domain name.** Then upload the files in **the Non-SSH zip file**. +3. Copy the `.env.example` file and rename the copy to `.env`. +4. Start configuring your panel by opening the `.env` file. + - Change `APP_URL` to the URL of your panel + - At `DB_` change the credentials to the database details created above. + - At `MAIL_` change the credentials to the mail details created above. *Not sure what to enter for the host, port or + encryption? Ask your hosting.* + +:::info +Some webhostings only support SSL (instead of TLS)! Change the `MAIL_ENCRYPTION` setting to `ssl`. No encryption at all? +Make the setting empty. +::: \ No newline at end of file diff --git a/themepark/usage.md b/themepark/usage.md new file mode 100644 index 0000000..0b79e1a --- /dev/null +++ b/themepark/usage.md @@ -0,0 +1,170 @@ +--- +sidebar_label: Usage +sidebar_position: 3 +--- + +# ThemePark + +Information about the ThemePark plugin. + +## Commands and Permissions + +| Command | Description | Permission | +|-------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------| +| `/themepark help` | Display the help list. | | +| `/themepark menu` | Open the attraction menu. | | +| `/themepark item` | Get the attraction menu item. | | +| `/themepark region list` | Get a list of all the regions. | themepark.admin | +| `/themepark region create ` | Create a new region with ID and displayname. | themepark.admin | +| `/themepark region name ` | Change the name of a region by ID. | themepark.admin | +| `/themepark region material ` | Change the item of the region in the attraction menu by ID. | themepark.admin | +| `/themepark region remove ` | Delete a region by ID. | themepark.admin | +| `/themepark attraction list` | Get a list of all the attractions. | themepark.admin | +| `/themepark attraction warp ` | Warp to an attraction by ID. | | +| `/themepark attraction create ` | Create a new attraction with ID, region ID and displayname. | themepark.admin | +| `/themepark attraction name ` | Change the name of an attraction by ID. | themepark.admin | +| `/themepark attraction cover ` | Change the cover image of an attraction by ID.
**Only applicable if ThemeParkPanel is used!** | themepark.admin | +| `/themepark attraction status ` | Change the status of an attraction by ID.
*Available statuses are listed below.* | themepark.admin | +| `/themepark attraction location ` | Change the location of an attraction to your current location by ID. | themepark.admin | +| `/themepark attraction remove ` | Delete an attraction by ID. | themepark.admin | +| `/themepark status name ` | Change the name of a status. | themepark.admin | +| `/themepark status color ` | Change the color of a status.
*For example: `&4`* | themepark.admin | +| `/themepark status hex_color ` | Change the HEX color of a status.
*For example: `#3498db`*
**Only applicable if ThemeParkPanel is used!** | themepark.admin | +| `/themepark status material ` | Change the material of a status in the attraction menu. | themepark.admin | +| `/themepark status teleport ` | Set if players can teleport from the attraction menu at a specific status.
*Available: `true` / `false`* | themepark.admin | +| `/themepark ridecount get ` | Get the ridecount of a player by an attraction ID. | themepark.admin | +| `/themepark ridecount add ` | Add an amount to the ridecount of a (set of) player(s). *Use the Minecraft selector to select players. For example: @a[region=myrideregion]* | themepark.admin | +| `/themepark ridecount total_type ` | Change for which interval ridecount values will be valid.
*Available: `DAILY`, `WEEKLY`, `MONTHLY`, `YEARLY`, `TOTAL` (Where TOTAL is always valid)* | themepark.admin | + +:::info +**Available statuses:** `GLOBAL`, `CONSTRUCTION`, `OPEN`, `CLOSED`, `MAINTENANCE`, `MALFUNCTION` +::: + +## Signs + +### Status + +ThemePark provides a status sign which shows the status of an attraction and can teleport players to the attraction at +click. + +``` +[ThemePark] + +``` + +The first line can be changed in the `settings.yml`. Make sure to adapt at creation. + +### Ridecount + +ThemePark provides a [TrainCarts](https://www.spigotmc.org/resources/traincarts.39592/) sign for adding to the ridecount +of an attraction. + +``` +[train] +ridecount + + +``` + +# ThemeParkConnector + +Information about the ThemeParkConnector plugin. + +## Commands + +- `/tpc reload` - Reload the plugin. +- `/tpc redeem ` - Redeem a voucher for a show. +- `/tpc state