Skip to content

Commit 2e1dc7b

Browse files
committed
Performance page and improvement
1 parent 0fe2dad commit 2e1dc7b

7 files changed

Lines changed: 21 additions & 20 deletions

File tree

.vitepress/config.mts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ export default defineConfig({
2727
{
2828
text: 'General',
2929
items: [
30+
{text: 'Performance', link: 'general/performance'},
3031
{text: 'Web Server', link: '/general/web-server'},
3132
{text: 'Web Editor', link: '/general/web-editor'},
3233
{text: 'Custom Materials Injection', link: 'general/custom-materials-injection'}

src/general/custom-materials-injection.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
outline: deep
3-
---
4-
51
# Custom Material Injection
62

73
## Introduction

src/general/performance.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# LostEngine's Performance
2+
3+
As the main developer of LostEngine (Misieur), I really care about performance. This is why LostEngine is coded only using
4+
Minecraft's internal code which is always more optimized than famous libraries called 'modern' or whatever, that at the end
5+
are just slow and may not even easier to use. I do not include Bukkit in this, but it is still not used as the Bukkit API exists
6+
for compatibility between Minecraft versions and LostEngine will not support multiple versions at the same time.
7+
8+
## What does LostEngine do when the server is running
9+
When your Minecraft server has finished the bootstrap phase, this is what LostEngine does on each thread:
10+
11+
- On the main thread (or Folia threads) when an item or a block is used, its modified version of the Minecraft code runs.
12+
For example, custom TNTs are just a modified version of Minecraft's TNT block Java class, which means they are as optimized
13+
as your Minecraft server itself and LostEngine will not be the one causing problems. This also means that LostEngine does not
14+
check every time an item is used to know if it has to do something; it uses what Minecraft already has, like vanilla items
15+
and blocks do.
16+
- On the Netty threads (threads used for receiving and sending packets), LostEngine has to analyze any packets that are
17+
sent to the player or received in order to replace modded content with re-textured vanilla content and vice versa.
18+
This part has been tested and optimized a lot and is pretty much nothing compared to plugins like ViaVersion that require
19+
way more calculations in order to translate packets between protocol versions.
20+
- *Other things like the web server are async and will not affect your Minecraft server's performance.*

src/general/web-editor.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
outline: deep
3-
---
4-
51
# LostEngine Web Editor
62

73
## Introduction

src/general/web-server.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
outline: deep
3-
---
4-
51
# LostEngine Integrated Web Server
62

73
## Introduction

src/introduction/getting-stated.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
outline: deep
3-
---
4-
51
# Getting Started
62

73
- In order to install LostEngine, you first need to download a JAR on [LostEngine's GitHub releases](https://github.com/LostEngine/LostEngine/releases)

src/introduction/introduction.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
---
2-
outline: deep
3-
---
4-
51
# Introduction
62
## What is LostEngine?
73

0 commit comments

Comments
 (0)