From 033648bd94f4d936b53485ce32893381cc35fe19 Mon Sep 17 00:00:00 2001 From: Snowiiii Date: Sun, 13 Oct 2024 13:05:59 +0200 Subject: [PATCH] docs: add troubleshooting --- docs/.vitepress/config.mts | 6 +++ docs/config/introduction.md | 9 +++-- docs/developer/authentication.md | 56 +++++++++------------------ docs/developer/introduction.md | 2 +- docs/troubleshooting/common_issues.md | 33 ++++++++++++++++ package-lock.json | 12 +++--- package.json | 2 +- 7 files changed, 72 insertions(+), 48 deletions(-) create mode 100644 docs/troubleshooting/common_issues.md diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index b2cbd9cf1..be407364b 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -41,6 +41,12 @@ export default defineConfig({ { text: "Advanced", link: "/config/advanced" }, ], }, + { + text: "Troubleshooting", + items: [ + { text: "Common Issues", link: "/troubleshooting/common_issues.md" }, + ], + }, ], socialLinks: [ diff --git a/docs/config/introduction.md b/docs/config/introduction.md index b008cd628..b7cd31e68 100644 --- a/docs/config/introduction.md +++ b/docs/config/introduction.md @@ -1,13 +1,16 @@ ### Configuration + Pumpkin offers a robust configuration system that allows users to customize various aspects of the server's behavior without relying on external plugins. This provides flexibility and control over the server's operation. ### Basic / Advanced + Pumpkin's Configuration is split into a basic Configuration made for quick changes and important changes and a more Advanced Configuration - `configuration.toml`: simple and can be compared to the vanilla `server.properties`. - `features.toml`: designed to have all features of pumpkin at one place, making it a large configuration #### Key Features: - - Extensive Customization: Configure server settings, player behavior, world generation, and more. - - Performance Optimization: Optimize server performance through configuration tweaks. - - Plugin-Free Customization: Achieve desired changes without the need for additional plugins. + +- Extensive Customization: Configure server settings, player behavior, world generation, and more. +- Performance Optimization: Optimize server performance through configuration tweaks. +- Plugin-Free Customization: Achieve desired changes without the need for additional plugins. diff --git a/docs/developer/authentication.md b/docs/developer/authentication.md index 9d9accb31..acbc8b1aa 100644 --- a/docs/developer/authentication.md +++ b/docs/developer/authentication.md @@ -34,58 +34,40 @@ To ensure a player has a premium accounts: Pumpkin does support custom Authentication servers, You can replace the Authentication URL in `features.toml`. -Pumpkin Authentication works like this (Mojang/Custom): +#### How Pumpkin Authentication Works -1. GET Request > Authentication +1. **GET Request:** Pumpkin sends a GET request to the specified authentication URL. -2. Status Code 200 > Successfull +2. **Status Code 200:** If the authentication is successful, the server responds with a status code of 200. -3. Successfull > Parse JSON Game Profile +3. **Parse JSON Game Profile:** Pumpkin parses the JSON game profile returned in the response. #### Game Profile ```rust -id: UUID -``` - -```rust -name: String -``` - -```rust -properties: Array -``` - -> [!IMPORTANT] -> Optional, Only present when actions are taken - -```rust -profile_actions: Array +struct GameProfile { + id: UUID, + name: String, + properties: Vec, + profile_actions: Option>, // Optional, Only present when actions are applied +} ``` ##### Property ```rust -name: String -``` - -> [!IMPORTANT] -> base 64 - -```rust -- value: String -``` - -> [!IMPORTANT] -> Optional, base 64 - -```rust -- signature: String +struct Property { + name: String, + value: String, // Base64 encoded + signature: Option, // Optional, Base64 encoded +} ``` ##### Profile Action ```rust -FORCED_NAME_CHANGE -USING_BANNED_SKIN +enum ProfileAction { + FORCED_NAME_CHANGE, + USING_BANNED_SKIN, +} ``` diff --git a/docs/developer/introduction.md b/docs/developer/introduction.md index a1efdbfcf..c1670a622 100644 --- a/docs/developer/introduction.md +++ b/docs/developer/introduction.md @@ -5,4 +5,4 @@ Welcome to the Pumpkin Documentation! Whether you're an internal Pumpkin developer or working on a Pumpkin plugin, this documentation is your resource for everything Pumpkin. > [!IMPORTANT] -> While Pumpkin currently doesn't have plugin support, this documentation provides valuable insights into the platform's architecture and functionality, which can be helpful for understanding how to create potential future plugins. +> While Pumpkin currently doesn't have plugin support yet, this documentation provides valuable insights into the platform's architecture and functionality, which can be helpful for understanding how to create potential future plugins. diff --git a/docs/troubleshooting/common_issues.md b/docs/troubleshooting/common_issues.md new file mode 100644 index 000000000..881cae1da --- /dev/null +++ b/docs/troubleshooting/common_issues.md @@ -0,0 +1,33 @@ +### Common Issues + +1. ### Broken Chunk Lighting + + See [#93](https://github.com/Snowiiii/Pumpkin/issues/93) + + **Issue:** Broken chunk lighting in your Minecraft server. + + **Cause:** The server is currently not calculating lighting for chunks, we working on that. + + **Temporary Fix:** Use a full-bright resource pack. This will temporarily resolve the issue by making all chunks appear brightly lit. You can find many full-bright resource packs online. + +2. ### I can place blocks inside me + + See [#49](https://github.com/Snowiiii/Pumpkin/issues/49) + + **Issue:** Players are able to place block in them. + + **Cause:** The server is currently not calculating hitboxes for blocks, we working on that. + +3. ### Server is unresponsive + + **Issue:** You have to wait before reconnect or can't do basic things while chunks are loading. + + **Cause:** The server has currently blocking issues, we working on that. + +4. ### Failed to verify username + + **Issue:** Some players reported having issues loggin into the Server, Having "Failed to verify username" error. + + **Cause:** This has to do with Authentication, Usally with the prevent proxy connections setting. + + **Fix:** Disable `prevent_proxy_connections` in `features.toml` diff --git a/package-lock.json b/package-lock.json index c858d9cef..df845bdb2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,7 +5,7 @@ "packages": { "": { "devDependencies": { - "vitepress": "^1.4.0", + "vitepress": "^1.4.1", "vue": "^3.5.12" } }, @@ -2446,9 +2446,9 @@ } }, "node_modules/vitepress": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.4.0.tgz", - "integrity": "sha512-JXCv4EsKTDyAFb6C/UjZr7nsGAzZ6mafVk2rx7rG5o8N+B/4QstIk+iEOe/9dKoU6V624UIC6g1pZ+K63rxhlw==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.4.1.tgz", + "integrity": "sha512-C2rQ7PMlDVqgsaHOa0uJtgGGWaGv74QMaGL62lxKbtFkYtosJB5HAfZ8+pEbfzzvLemYaYwaiQdFLBlexK2sFw==", "dev": true, "license": "MIT", "dependencies": { @@ -2460,7 +2460,7 @@ "@types/markdown-it": "^14.1.2", "@vitejs/plugin-vue": "^5.1.4", "@vue/devtools-api": "^7.4.6", - "@vue/shared": "^3.5.11", + "@vue/shared": "^3.5.12", "@vueuse/core": "^11.1.0", "@vueuse/integrations": "^11.1.0", "focus-trap": "^7.6.0", @@ -2468,7 +2468,7 @@ "minisearch": "^7.1.0", "shiki": "^1.22.0", "vite": "^5.4.8", - "vue": "^3.5.11" + "vue": "^3.5.12" }, "bin": { "vitepress": "bin/vitepress.js" diff --git a/package.json b/package.json index 8578e6172..677311e75 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "docs:preview": "vitepress preview docs" }, "devDependencies": { - "vitepress": "^1.4.0", + "vitepress": "^1.4.1", "vue": "^3.5.12" } } \ No newline at end of file