You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/apis/LanguageSupport.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
-
# 📋 LLSE - Multi development Language Support
1
+
# 📋 LSE - Multi development Language Support
2
2
3
3
## 🌏 Current Status
4
4
5
-
With the support of the [ScriptX](https://github.com/Tencent/ScriptX) project, LLSE adapts to multiple development languages using the same set of source code.
5
+
With the support of the [ScriptX](https://github.com/Tencent/ScriptX) project, LSE adapts to multiple development languages using the same set of source code.
6
6
At the same time, the API remains consistent, allowing various languages to share the same development document. It greatly reducing maintenance difficulties.
7
7
8
-
Currently, LLSE supports writing plugins in the following languages:
8
+
Currently, LSE supports writing plugins in the following languages:
@@ -36,7 +36,7 @@ Currently, LLSE supports writing plugins in the following languages:
36
36
37
37
## Node.js support description
38
38
39
-
-LLSE makes it possible to work in embedded mode by implementing the Node.js starter code itself, and isolates the execution environment for different plugins
39
+
-LSE makes it possible to work in embedded mode by implementing the Node.js starter code itself, and isolates the execution environment for different plugins
40
40
- Created interface to implement programmic support for npm. Support installing third-party extension dependencies via package.json
41
41
42
42
#### ⭐ **Node.js Plugin Development**
@@ -51,7 +51,7 @@ Currently, LLSE supports writing plugins in the following languages:
51
51
- After the plugin is finish, package `package.json` and all the plugin source code into a zip archive and **change the file name suffix to .llplugin**
52
52
- The `node_modules` directory should not be packed in the archive
53
53
- Distribute the **.llplugin** file as a plugin. When installing the plugin, just place this file directly into the plugins directory
54
-
-LLSE will automatically recognize the **.llplugin** file when BDS launch, extract it to the `plugins/nodejs/<PluginName>` directory, and automatically execute `npm install` in the directory to install the dependency packages. No manual intervention is needed for the whole process
54
+
-LSE will automatically recognize the **.llplugin** file when BDS launch, extract it to the `plugins/nodejs/<PluginName>` directory, and automatically execute `npm install` in the directory to install the dependency packages. No manual intervention is needed for the whole process
55
55
56
56
57
57
@@ -69,7 +69,7 @@ Currently, LLSE supports writing plugins in the following languages:
69
69
#### ⭐ **Python Multi-File Plugin Development**
70
70
71
71
- For formal Python plugins, this method is highly recommended. Multi-file plugins support all full Python features.
72
-
-LLSE uses the `pyproject.toml` project file for metadata storage (similar to `package.json` in Node.Js). This project file is recommended to be automatically generated using PDM package manager ([pdm-project/pdm](https://github.com/pdm-project/pdm)), which supports modern project features to facilitate plugin project creation and maintenance.
72
+
-LSE uses the `pyproject.toml` project file for metadata storage (similar to `package.json` in Node.Js). This project file is recommended to be automatically generated using PDM package manager ([pdm-project/pdm](https://github.com/pdm-project/pdm)), which supports modern project features to facilitate plugin project creation and maintenance.
73
73
74
74
##### **The turtorial for Python plugins development: **
75
75
1. First, install Python 3.10.9
@@ -94,9 +94,9 @@ Currently, LLSE supports writing plugins in the following languages:
94
94
To be fair, the quality and maintenance of CPython's code is in a somewhat worrisome state. Given below are some problems to be aware of when developing Python plugins, many of which are caused by bugs in CPython itself:
95
95
96
96
1. Do not use `threading`, `asyncio` and other features for the time being
97
-
-LLSE uses CPython's sub-interpreter as the core unit of engine scheduling, but CPython itself has long had bad support for the sub-interpreter, and there are many bugs that are hard to explain. The GIL api that is currently used for these mechanisms does not take into account the existence of sub-interpreters, so deadlocks and crashes will occur once they are used.
97
+
-LSE uses CPython's sub-interpreter as the core unit of engine scheduling, but CPython itself has long had bad support for the sub-interpreter, and there are many bugs that are hard to explain. The GIL api that is currently used for these mechanisms does not take into account the existence of sub-interpreters, so deadlocks and crashes will occur once they are used.
98
98
- Developers with parallel computing needs can temporarily use `multiprocess` to parallelize multiple processes.
99
-
- Python 3.12 is scheduled to have targeted fixes for sub-interpreter and GIL-related bugs, and LLSE will adapt CPython 3.12 to address this issue after its release.
99
+
- Python 3.12 is scheduled to have targeted fixes for sub-interpreter and GIL-related bugs, and LSE will adapt CPython 3.12 to address this issue after its release.
100
100
2.`sys.stdin` is disabled for all Python engines
101
101
- This is another CPython bug, see https://github.com/python/cpython/issues/83526 for details
102
102
- In addition, even if the CPython engine is not loaded in the above case, there will be a problem of stdin grabbing, causing some tools that use the input redirection to fail
Copy file name to clipboardExpand all lines: docs/apis/NbtAPI/NBT.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ This provides scripts with the ability to manipulate the **NBT** data type. **NB
9
9
10
10
In the game, a node called **NBT tag** is used to identify an item of NBT data. A variety of data types such as ordinary data, List, Compound, etc. can be stored in NBT tags.
11
11
12
-
In LeviLamina ScriptEngine, each NBT data type has its corresponding data type, and we collectively call them "NBT objects".
12
+
In LegacyScriptEngine, each NBT data type has its corresponding data type, and we collectively call them "NBT objects".
13
13
The comparison of the LLSE type with the NBT data type is as follows:
14
14
15
15
| NBT Data Type | Corresponding NBT Object Type | Type Description (Wiki) |
Copy file name to clipboardExpand all lines: docs/apis/README.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
-
# Overview of LLSE Plugin Development
1
+
# Overview of LSE Plugin Development
2
2
3
3
## ⛳ Start
4
4
5
-
`LeviLamina ScriptEngine` hereinafter referred to as **LLSE** is an official server for Bedrock Edition `Bedrock Dedicated Server` hereinafter referred to as **BDS** plugin framework, providing powerful cross-language script plug-in support and stable development API support.
5
+
`LegacyScriptEngine` hereinafter referred to as **LSE** is an official server for Bedrock Edition `Bedrock Dedicated Server` hereinafter referred to as **BDS** plugin framework, providing powerful cross-language script plug-in support and stable development API support.
6
6
7
-
> Welcome to LLSE's plug-in development!
7
+
> Welcome to LSE's plug-in development!
8
8
9
-
From here, you will gradually become familiar with the basic elements and processes of LLSE plug-in development.
9
+
From here, you will gradually become familiar with the basic elements and processes of LSE plug-in development.
10
10
11
-
Before engaging with development, you need to have a systematic understanding of LLSE. The documentation here, first of all, will help you establish a general knowledge framework.
11
+
Before engaging with development, you need to have a systematic understanding of LSE. The documentation here, first of all, will help you establish a general knowledge framework.
12
12
Familiarize yourself with them first, this will be a very important part of your learning development process.
0 commit comments