diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..c41ded5
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,28 @@
+name: ci
+on:
+ push:
+ branches:
+ - c3-beta
+permissions:
+ contents: write
+jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - name: Configure Git Credentials
+ run: |
+ git config user.name github-actions[bot]
+ git config user.email 41898282+github-actions[bot]@users.noreply.github.com
+ - uses: actions/setup-python@v5
+ with:
+ python-version: 3.x
+ - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
+ - uses: actions/cache@v4
+ with:
+ key: mkdocs-material-${{ env.cache_id }}
+ path: .cache
+ restore-keys: |
+ mkdocs-material-
+ - run: pip install -r requirements.txt
+ - run: mkdocs gh-deploy --force
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..21eb0bf
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+.idea/*
+*.iml
+.gitignore
+site/
diff --git a/csrv3/backupy.md b/docs/Beta/backupy.md
similarity index 94%
rename from csrv3/backupy.md
rename to docs/Beta/backupy.md
index cc331be..e73461e 100644
--- a/csrv3/backupy.md
+++ b/docs/Beta/backupy.md
@@ -7,10 +7,10 @@ Nie zrobimy za Ciebie kopii ważnych plików na Twoim komputerze (a warto!), ale
## Gdzie znajdę moje kopie zapasowe?
W panelu Twojego serwera, na pasku po lewej stronie, znajdziesz zakładkę **"Kopie zapasowe"**.
-
+
Po otwarciu tej zakładki, ujrzysz listę swoich backupów.
-
+
## Jak zrobić kopię zapasową?
Backupy tworzą się automatycznie co jakiś czas oraz w określonych przypadkach, na przykład przed wykonaniem formatowania serwera, przywróceniem innej kopii, migracji na inną maszynę, i nie tylko.
@@ -22,11 +22,11 @@ Możesz jednak wykonać kopię manualnie kiedy tylko zechcesz. W tym celu, przej
1. Przejdź do zakładki **Kopie zapasowe**.
2. Ustal z jakiej daty i godziny potrzebujesz backupu. Kiedy doszło do griefu na serwerze? Kiedy zostały uszkodzone pliki? Spójrz na listę dostępnych kopii i wybierz tę, która Ci odpowiada. Jeśli nie wiesz, możesz spróbować kilka. Wtedy przywracaj po 1 kopii, sprawdzaj czy to ta właściwa, a jeśli nie, powtórz to z następną.
3. Gdy już wiesz, którą kopię przywrócić, po prostu kliknij przycisk **Przywróć** po prawej stronie. Zostanie wykonana automatyczna kopia przed przywróceniem, a następnie wgrany zostanie wybrany backup.
-
+
## Jak mogę pobrać pliki serwera na swój komputer?
1. Przejdź do zakładki **Kopie zapasowe**.
2. Ustal z jakiej daty i godziny chcesz pobrać pliki. Spójrz na listę dostępnych kopii i wybierz tę, która Ci odpowiada.
3. Kliknij przycisk **Pobierz** obok wybranej kopii.
-
\ No newline at end of file
+
diff --git a/csrv3/image.png b/docs/Beta/image.png
similarity index 100%
rename from csrv3/image.png
rename to docs/Beta/image.png
diff --git a/csrv3/marketplace.md b/docs/Beta/marketplace.md
similarity index 86%
rename from csrv3/marketplace.md
rename to docs/Beta/marketplace.md
index d4ac638..05f3a1f 100644
--- a/csrv3/marketplace.md
+++ b/docs/Beta/marketplace.md
@@ -6,9 +6,9 @@ Marketplace to miejsce, gdzie użytkownicy Craftserve mogą publikować swoje mo
## Jak zainstalować coś z Marketplace?
1. Otwórz **Marketplace**
- 
+ 
2. Wybierz interesujący Cię zasób na Marketplace, np. plugin. W przykładzie poradnika będzie to aplikacja panelowa CSRV Minecraft Manager.
- 
+ 
3. Kliknij **Zainstaluj najnowszą wersję** lub jeśli potrzebujesz danego zasobu na starszą wersję gry (ponieważ jest to na przykład modyfikacja), kliknij **Lista wersji** i wybierz interesującą Cię wersję.
4. Poczekaj na instalację.
5. Gotowe!
@@ -17,12 +17,12 @@ Marketplace to miejsce, gdzie użytkownicy Craftserve mogą publikować swoje mo
1. Ustal zawartość swojej publikowanej paczki oraz upewnij się, że wszystkie pliki które mają się w niej znaleźć, są na Twoim serwerze.
2. Przejdź do zakładki **Pliki** na swoim serwerze.
- 
+ 
3. Kliknij przycisk **Utwórz paczkę** pod listą Twoich plików.
- 
+ 
4. Zaznacz pliki i foldery, które mają znaleźć się w paczce i kliknij **Wyślij pliki**. Zostanie wyświetlone okno publikowania paczki.
- 
+ 
5. W wyświetlonym oknie szczegółów projektu uzupełnij wszystkie pola. Nadaj ciekawy tytuł, napisz zachęcający do pobrania opis, dodaj ładną ikonę, itp.
- 
+ 
6. Gdy wszystko będzie zrobione, kliknij "Utwórz projekt".
-7. Gotowe!
\ No newline at end of file
+7. Gotowe!
diff --git a/csrv3/silniki.md b/docs/Beta/silniki.md
similarity index 85%
rename from csrv3/silniki.md
rename to docs/Beta/silniki.md
index 5891b5d..0cd6b44 100644
--- a/csrv3/silniki.md
+++ b/docs/Beta/silniki.md
@@ -2,14 +2,14 @@
## Jak zmienić silnik na serwerze?
1. Przejdź do zakładki **Ustawienia** na prawym pasku w panelu swojego serwera.
-
+
2. Wybierz menu **Silnik**.
-
+
3. Wybierz silnik, który potrzebujesz z dostępnej kategorii i listy.
-
+
5. Po wybraniu silnika, zjedź na dół strony.
6. Potwierdź usunięcie wszystkich plików ze swojego serwera oraz wykonanie kopii zapasowej. Jeśli potrzebujesz, możesz pominąć wybrane pliki i foldery podczas formatowania, by nie zostały one usunięte. **Zalecamy używanie tej opcji wyłącznie gdy posiadasz ważne dane na serwerze, np. postępy w folderze `world`.**
-
+
1. Kliknij przycisk **Formatuj i reinstaluj serwer**.
2. Poczekaj do końca procesu.
-3. Gotowe!
\ No newline at end of file
+3. Gotowe!
diff --git a/README.md b/docs/README.md
similarity index 73%
rename from README.md
rename to docs/README.md
index 9a48992..d2c39ab 100644
--- a/README.md
+++ b/docs/README.md
@@ -3,4 +3,4 @@
Znajdziesz tutaj przydatne poradniki i pomoce w instalacji i konfiguracji swoich serwerów Minecraft.
-
\ No newline at end of file
+
diff --git a/antyxray.md b/docs/antyxray.md
similarity index 100%
rename from antyxray.md
rename to docs/antyxray.md
diff --git a/bettermc.md b/docs/bettermc.md
similarity index 100%
rename from bettermc.md
rename to docs/bettermc.md
diff --git a/bukkit.yml.md b/docs/bukkit.yml.md
similarity index 100%
rename from bukkit.yml.md
rename to docs/bukkit.yml.md
diff --git a/datapacki.md b/docs/datapacki.md
similarity index 100%
rename from datapacki.md
rename to docs/datapacki.md
diff --git a/debugprofiler.md b/docs/debugprofiler.md
similarity index 100%
rename from debugprofiler.md
rename to docs/debugprofiler.md
diff --git a/domena.md b/docs/domena.md
similarity index 100%
rename from domena.md
rename to docs/domena.md
diff --git a/essentialsx.md b/docs/essentialsx.md
similarity index 100%
rename from essentialsx.md
rename to docs/essentialsx.md
diff --git a/ftp.md b/docs/ftp.md
similarity index 100%
rename from ftp.md
rename to docs/ftp.md
diff --git a/img/CSRV_Dokumentacja_Banner.png b/docs/img/CSRV_Dokumentacja_Banner.png
similarity index 100%
rename from img/CSRV_Dokumentacja_Banner.png
rename to docs/img/CSRV_Dokumentacja_Banner.png
diff --git a/img/WinSCP_server_example.png b/docs/img/WinSCP_server_example.png
similarity index 100%
rename from img/WinSCP_server_example.png
rename to docs/img/WinSCP_server_example.png
diff --git a/img/antyxray/1.png b/docs/img/antyxray/1.png
similarity index 100%
rename from img/antyxray/1.png
rename to docs/img/antyxray/1.png
diff --git a/img/antyxray/2.png b/docs/img/antyxray/2.png
similarity index 100%
rename from img/antyxray/2.png
rename to docs/img/antyxray/2.png
diff --git a/img/antyxray/3.png b/docs/img/antyxray/3.png
similarity index 100%
rename from img/antyxray/3.png
rename to docs/img/antyxray/3.png
diff --git a/img/antyxray/4.png b/docs/img/antyxray/4.png
similarity index 100%
rename from img/antyxray/4.png
rename to docs/img/antyxray/4.png
diff --git a/img/antyxray/e1.png b/docs/img/antyxray/e1.png
similarity index 100%
rename from img/antyxray/e1.png
rename to docs/img/antyxray/e1.png
diff --git a/img/antyxray/e2.png b/docs/img/antyxray/e2.png
similarity index 100%
rename from img/antyxray/e2.png
rename to docs/img/antyxray/e2.png
diff --git a/img/backupy/1.png b/docs/img/backupy/1.png
similarity index 100%
rename from img/backupy/1.png
rename to docs/img/backupy/1.png
diff --git a/img/backupy/2.png b/docs/img/backupy/2.png
similarity index 100%
rename from img/backupy/2.png
rename to docs/img/backupy/2.png
diff --git a/img/backupy/3.png b/docs/img/backupy/3.png
similarity index 100%
rename from img/backupy/3.png
rename to docs/img/backupy/3.png
diff --git a/img/backupy/4.png b/docs/img/backupy/4.png
similarity index 100%
rename from img/backupy/4.png
rename to docs/img/backupy/4.png
diff --git a/img/bettermc/adoptium.png b/docs/img/bettermc/adoptium.png
similarity index 100%
rename from img/bettermc/adoptium.png
rename to docs/img/bettermc/adoptium.png
diff --git a/img/bettermc/download_serverpack.png b/docs/img/bettermc/download_serverpack.png
similarity index 100%
rename from img/bettermc/download_serverpack.png
rename to docs/img/bettermc/download_serverpack.png
diff --git a/img/bettermc/format.png b/docs/img/bettermc/format.png
similarity index 100%
rename from img/bettermc/format.png
rename to docs/img/bettermc/format.png
diff --git a/img/bettermc/keybinds.png b/docs/img/bettermc/keybinds.png
similarity index 100%
rename from img/bettermc/keybinds.png
rename to docs/img/bettermc/keybinds.png
diff --git a/img/bettermc/mastervolume.gif b/docs/img/bettermc/mastervolume.gif
similarity index 100%
rename from img/bettermc/mastervolume.gif
rename to docs/img/bettermc/mastervolume.gif
diff --git a/img/bettermc/move.png b/docs/img/bettermc/move.png
similarity index 100%
rename from img/bettermc/move.png
rename to docs/img/bettermc/move.png
diff --git a/img/bettermc/operation_destination.png b/docs/img/bettermc/operation_destination.png
similarity index 100%
rename from img/bettermc/operation_destination.png
rename to docs/img/bettermc/operation_destination.png
diff --git a/img/bettermc/save_engine.png b/docs/img/bettermc/save_engine.png
similarity index 100%
rename from img/bettermc/save_engine.png
rename to docs/img/bettermc/save_engine.png
diff --git a/img/bettermc/select_engine.png b/docs/img/bettermc/select_engine.png
similarity index 100%
rename from img/bettermc/select_engine.png
rename to docs/img/bettermc/select_engine.png
diff --git a/img/bettermc/select_yfl_engine.png b/docs/img/bettermc/select_yfl_engine.png
similarity index 100%
rename from img/bettermc/select_yfl_engine.png
rename to docs/img/bettermc/select_yfl_engine.png
diff --git a/img/bettermc/unzip.png b/docs/img/bettermc/unzip.png
similarity index 100%
rename from img/bettermc/unzip.png
rename to docs/img/bettermc/unzip.png
diff --git a/img/bettermc/voice_udp_port.png b/docs/img/bettermc/voice_udp_port.png
similarity index 100%
rename from img/bettermc/voice_udp_port.png
rename to docs/img/bettermc/voice_udp_port.png
diff --git a/img/bettermc/yfl_technic.png b/docs/img/bettermc/yfl_technic.png
similarity index 100%
rename from img/bettermc/yfl_technic.png
rename to docs/img/bettermc/yfl_technic.png
diff --git a/img/bettermc/yfl_technic_ram.png b/docs/img/bettermc/yfl_technic_ram.png
similarity index 100%
rename from img/bettermc/yfl_technic_ram.png
rename to docs/img/bettermc/yfl_technic_ram.png
diff --git a/img/datapacki/datapack.png b/docs/img/datapacki/datapack.png
similarity index 100%
rename from img/datapacki/datapack.png
rename to docs/img/datapacki/datapack.png
diff --git a/img/datapacki/datapack2.png b/docs/img/datapacki/datapack2.png
similarity index 100%
rename from img/datapacki/datapack2.png
rename to docs/img/datapacki/datapack2.png
diff --git a/img/datapacki/datapack3.png b/docs/img/datapacki/datapack3.png
similarity index 100%
rename from img/datapacki/datapack3.png
rename to docs/img/datapacki/datapack3.png
diff --git a/img/domena/craftserve_domain_panel.png b/docs/img/domena/craftserve_domain_panel.png
similarity index 100%
rename from img/domena/craftserve_domain_panel.png
rename to docs/img/domena/craftserve_domain_panel.png
diff --git a/img/domena/ovh_dns_panel.png b/docs/img/domena/ovh_dns_panel.png
similarity index 100%
rename from img/domena/ovh_dns_panel.png
rename to docs/img/domena/ovh_dns_panel.png
diff --git a/img/domena/ovh_srv_record.png b/docs/img/domena/ovh_srv_record.png
similarity index 100%
rename from img/domena/ovh_srv_record.png
rename to docs/img/domena/ovh_srv_record.png
diff --git a/img/ftp/1.png b/docs/img/ftp/1.png
similarity index 100%
rename from img/ftp/1.png
rename to docs/img/ftp/1.png
diff --git a/img/ftp/2.png b/docs/img/ftp/2.png
similarity index 100%
rename from img/ftp/2.png
rename to docs/img/ftp/2.png
diff --git a/img/ftp/3.png b/docs/img/ftp/3.png
similarity index 100%
rename from img/ftp/3.png
rename to docs/img/ftp/3.png
diff --git a/img/ftp/4.png b/docs/img/ftp/4.png
similarity index 100%
rename from img/ftp/4.png
rename to docs/img/ftp/4.png
diff --git a/img/ftp/5.png b/docs/img/ftp/5.png
similarity index 100%
rename from img/ftp/5.png
rename to docs/img/ftp/5.png
diff --git a/img/logblock/logblock_config.png b/docs/img/logblock/logblock_config.png
similarity index 100%
rename from img/logblock/logblock_config.png
rename to docs/img/logblock/logblock_config.png
diff --git a/img/logblock/logblock_world_config.png b/docs/img/logblock/logblock_world_config.png
similarity index 100%
rename from img/logblock/logblock_world_config.png
rename to docs/img/logblock/logblock_world_config.png
diff --git a/img/logi/logi.png b/docs/img/logi/logi.png
similarity index 100%
rename from img/logi/logi.png
rename to docs/img/logi/logi.png
diff --git a/docs/img/logo.png b/docs/img/logo.png
new file mode 100644
index 0000000..eb4befc
Binary files /dev/null and b/docs/img/logo.png differ
diff --git a/img/marketplace/1.png b/docs/img/marketplace/1.png
similarity index 100%
rename from img/marketplace/1.png
rename to docs/img/marketplace/1.png
diff --git a/img/marketplace/2.png b/docs/img/marketplace/2.png
similarity index 100%
rename from img/marketplace/2.png
rename to docs/img/marketplace/2.png
diff --git a/img/marketplace/3.png b/docs/img/marketplace/3.png
similarity index 100%
rename from img/marketplace/3.png
rename to docs/img/marketplace/3.png
diff --git a/img/marketplace/4.png b/docs/img/marketplace/4.png
similarity index 100%
rename from img/marketplace/4.png
rename to docs/img/marketplace/4.png
diff --git a/img/marketplace/5.png b/docs/img/marketplace/5.png
similarity index 100%
rename from img/marketplace/5.png
rename to docs/img/marketplace/5.png
diff --git a/img/marketplace/6.png b/docs/img/marketplace/6.png
similarity index 100%
rename from img/marketplace/6.png
rename to docs/img/marketplace/6.png
diff --git a/img/modpack/select_engine_forge.png b/docs/img/modpack/select_engine_forge.png
similarity index 100%
rename from img/modpack/select_engine_forge.png
rename to docs/img/modpack/select_engine_forge.png
diff --git a/img/pluginy/pluginy.png b/docs/img/pluginy/pluginy.png
similarity index 100%
rename from img/pluginy/pluginy.png
rename to docs/img/pluginy/pluginy.png
diff --git a/img/resourcepack/1.png b/docs/img/resourcepack/1.png
similarity index 100%
rename from img/resourcepack/1.png
rename to docs/img/resourcepack/1.png
diff --git a/img/resourcepack/2.png b/docs/img/resourcepack/2.png
similarity index 100%
rename from img/resourcepack/2.png
rename to docs/img/resourcepack/2.png
diff --git a/img/resourcepack/3.png b/docs/img/resourcepack/3.png
similarity index 100%
rename from img/resourcepack/3.png
rename to docs/img/resourcepack/3.png
diff --git a/img/resourcepack/4.png b/docs/img/resourcepack/4.png
similarity index 100%
rename from img/resourcepack/4.png
rename to docs/img/resourcepack/4.png
diff --git a/img/resourcepack/5.png b/docs/img/resourcepack/5.png
similarity index 100%
rename from img/resourcepack/5.png
rename to docs/img/resourcepack/5.png
diff --git a/img/resourcepack/6.png b/docs/img/resourcepack/6.png
similarity index 100%
rename from img/resourcepack/6.png
rename to docs/img/resourcepack/6.png
diff --git a/img/silniki/1.png b/docs/img/silniki/1.png
similarity index 100%
rename from img/silniki/1.png
rename to docs/img/silniki/1.png
diff --git a/img/silniki/2.png b/docs/img/silniki/2.png
similarity index 100%
rename from img/silniki/2.png
rename to docs/img/silniki/2.png
diff --git a/img/silniki/3.png b/docs/img/silniki/3.png
similarity index 100%
rename from img/silniki/3.png
rename to docs/img/silniki/3.png
diff --git a/img/silniki/4.png b/docs/img/silniki/4.png
similarity index 100%
rename from img/silniki/4.png
rename to docs/img/silniki/4.png
diff --git a/img/spongeforge/spongeforge.png b/docs/img/spongeforge/spongeforge.png
similarity index 100%
rename from img/spongeforge/spongeforge.png
rename to docs/img/spongeforge/spongeforge.png
diff --git a/img/spongeforge/spongeforge2.png b/docs/img/spongeforge/spongeforge2.png
similarity index 100%
rename from img/spongeforge/spongeforge2.png
rename to docs/img/spongeforge/spongeforge2.png
diff --git a/img/world/1.png b/docs/img/world/1.png
similarity index 100%
rename from img/world/1.png
rename to docs/img/world/1.png
diff --git a/img/world/3.png b/docs/img/world/3.png
similarity index 100%
rename from img/world/3.png
rename to docs/img/world/3.png
diff --git a/img/world/4.png b/docs/img/world/4.png
similarity index 100%
rename from img/world/4.png
rename to docs/img/world/4.png
diff --git a/img/world/5.png b/docs/img/world/5.png
similarity index 100%
rename from img/world/5.png
rename to docs/img/world/5.png
diff --git a/img/world/7.png b/docs/img/world/7.png
similarity index 100%
rename from img/world/7.png
rename to docs/img/world/7.png
diff --git a/img/world/8.png b/docs/img/world/8.png
similarity index 100%
rename from img/world/8.png
rename to docs/img/world/8.png
diff --git a/img/worldedit/1.png b/docs/img/worldedit/1.png
similarity index 100%
rename from img/worldedit/1.png
rename to docs/img/worldedit/1.png
diff --git a/img/worldedit/10.png b/docs/img/worldedit/10.png
similarity index 100%
rename from img/worldedit/10.png
rename to docs/img/worldedit/10.png
diff --git a/img/worldedit/2.png b/docs/img/worldedit/2.png
similarity index 100%
rename from img/worldedit/2.png
rename to docs/img/worldedit/2.png
diff --git a/img/worldedit/3.png b/docs/img/worldedit/3.png
similarity index 100%
rename from img/worldedit/3.png
rename to docs/img/worldedit/3.png
diff --git a/img/worldedit/4.png b/docs/img/worldedit/4.png
similarity index 100%
rename from img/worldedit/4.png
rename to docs/img/worldedit/4.png
diff --git a/img/worldedit/5.png b/docs/img/worldedit/5.png
similarity index 100%
rename from img/worldedit/5.png
rename to docs/img/worldedit/5.png
diff --git a/img/worldedit/6.png b/docs/img/worldedit/6.png
similarity index 100%
rename from img/worldedit/6.png
rename to docs/img/worldedit/6.png
diff --git a/img/worldedit/7.png b/docs/img/worldedit/7.png
similarity index 100%
rename from img/worldedit/7.png
rename to docs/img/worldedit/7.png
diff --git a/img/worldedit/8.png b/docs/img/worldedit/8.png
similarity index 100%
rename from img/worldedit/8.png
rename to docs/img/worldedit/8.png
diff --git a/img/worldedit/9.png b/docs/img/worldedit/9.png
similarity index 100%
rename from img/worldedit/9.png
rename to docs/img/worldedit/9.png
diff --git a/img/worldguard/1.png b/docs/img/worldguard/1.png
similarity index 100%
rename from img/worldguard/1.png
rename to docs/img/worldguard/1.png
diff --git a/img/worldguard/2.png b/docs/img/worldguard/2.png
similarity index 100%
rename from img/worldguard/2.png
rename to docs/img/worldguard/2.png
diff --git a/img/worldguard/3.png b/docs/img/worldguard/3.png
similarity index 100%
rename from img/worldguard/3.png
rename to docs/img/worldguard/3.png
diff --git a/img/worldguard/4.png b/docs/img/worldguard/4.png
similarity index 100%
rename from img/worldguard/4.png
rename to docs/img/worldguard/4.png
diff --git a/img/worldguard/5.png b/docs/img/worldguard/5.png
similarity index 100%
rename from img/worldguard/5.png
rename to docs/img/worldguard/5.png
diff --git a/img/worldguard/6.png b/docs/img/worldguard/6.png
similarity index 100%
rename from img/worldguard/6.png
rename to docs/img/worldguard/6.png
diff --git a/kmpack.md b/docs/kmpack.md
similarity index 100%
rename from kmpack.md
rename to docs/kmpack.md
diff --git a/logblock.md b/docs/logblock.md
similarity index 99%
rename from logblock.md
rename to docs/logblock.md
index 5084cc6..86b6446 100644
--- a/logblock.md
+++ b/docs/logblock.md
@@ -81,4 +81,4 @@ Proces ten należy powtórzyć dla każdego świata na serwerze.
### Uwagi
* [Dokumentacja pluginu](https://github.com/LogBlock/LogBlock/wiki)
-* [Strona pluginu na spigotmc.org](https://www.spigotmc.org/resources/logblock.67333/)
\ No newline at end of file
+* [Strona pluginu na spigotmc.org](https://www.spigotmc.org/resources/logblock.67333/)
diff --git a/logs.md b/docs/logs.md
similarity index 100%
rename from logs.md
rename to docs/logs.md
diff --git a/modpack.md b/docs/modpack.md
similarity index 100%
rename from modpack.md
rename to docs/modpack.md
diff --git a/online-mode.md b/docs/online-mode.md
similarity index 100%
rename from online-mode.md
rename to docs/online-mode.md
diff --git a/pluginy.md b/docs/pluginy.md
similarity index 98%
rename from pluginy.md
rename to docs/pluginy.md
index e4d6a02..decf048 100644
--- a/pluginy.md
+++ b/docs/pluginy.md
@@ -20,4 +20,4 @@ Niestety, biblioteka pluginów Sponge'a jest zdecydowanie uboższa, niż ta Bukk
Instalacja
----------
-Do zarządzania plikami można wykorzystać zakładkę **Pliki** w panelu Craftserve lub protokół **FTP** i obsługującego go klienta, np. **[WinSCP](https://github.com/Craftserve/docs/blob/master/ftp.md)**.
\ No newline at end of file
+Do zarządzania plikami można wykorzystać zakładkę **Pliki** w panelu Craftserve lub protokół **FTP** i obsługującego go klienta, np. **[WinSCP](https://github.com/Craftserve/docs/blob/master/ftp.md)**.
diff --git a/pregen.md b/docs/pregen.md
similarity index 100%
rename from pregen.md
rename to docs/pregen.md
diff --git a/resource-pack.md b/docs/resource-pack.md
similarity index 100%
rename from resource-pack.md
rename to docs/resource-pack.md
diff --git a/spigot.yml.md b/docs/spigot.yml.md
similarity index 100%
rename from spigot.yml.md
rename to docs/spigot.yml.md
diff --git a/spongeforge.md b/docs/spongeforge.md
similarity index 97%
rename from spongeforge.md
rename to docs/spongeforge.md
index 80745a9..26dc6e7 100644
--- a/spongeforge.md
+++ b/docs/spongeforge.md
@@ -16,4 +16,4 @@ Jeśli plugin korzysta z **MIXIN** musi on znajdować się w **/mods/**.
Instalacja
----------
-Do zarządzania plikami można wykorzystać zakładkę **Pliki** w panelu Craftserve lub protokół **FTP** i obsługującego go klienta, np. **FileZilla**.
\ No newline at end of file
+Do zarządzania plikami można wykorzystać zakładkę **Pliki** w panelu Craftserve lub protokół **FTP** i obsługującego go klienta, np. **FileZilla**.
diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css
new file mode 100644
index 0000000..612a5dd
--- /dev/null
+++ b/docs/stylesheets/extra.css
@@ -0,0 +1,5 @@
+:root {
+ --md-primary-fg-color: #224c1f;
+ --md-primary-fg-color--light: #4d7a4a;
+ --md-primary-fg-color--dark: #12270f;
+}
diff --git a/timings.md b/docs/timings.md
similarity index 100%
rename from timings.md
rename to docs/timings.md
diff --git a/todo.md b/docs/todo.md
similarity index 100%
rename from todo.md
rename to docs/todo.md
diff --git a/world.md b/docs/world.md
similarity index 96%
rename from world.md
rename to docs/world.md
index 02659b1..d81e7a9 100644
--- a/world.md
+++ b/docs/world.md
@@ -1,65 +1,65 @@
-# Świat serwerowy
-## Spis treści
-- [Świat serwerowy](#świat-serwerowy)
- - [Spis treści](#spis-treści)
- - [Tworzenie nowego świata](#tworzenie-nowego-świata)
- - [Wgrywanie własnej mapy](#wgrywanie-własnej-mapy)
- - [Ustawienie własnego seedu](#ustawienie-własnego-seedu)
- - [Przenoszenie świata z serwera na singleplayer](#przenoszenie-świata-z-serwera-na-singleplayer)
-
-
-## Tworzenie nowego świata
-Aby utworzyć nową mapę należy:
-* Wyłączyć serwer
-* Wejść w pliki serwera
-* Usunąć obecny świat na serwerze, usuwając foldery **world**, **world_nether** oraz **world_the_end**. Jeśli nazwa świata została zmieniona w pliku **server.properties**, to usuwamy foldery ****, **_nether** oraz **_the_end**. (Jeżeli chcemy zachować mapę, to najlepiej będzie ją pobrać na nasz komputer najlepiej za pomocą **[FTP](https://github.com/Craftserve/docs/blob/master/ftp.md)**).
-
-
-
-* Jeżeli w pliku **server.properties** w linijce **level-seed** jest ustawiony seed świata, należy go usunąć, a następnie zapisać plik, żeby wygenerował się nowy, inny. Inaczej zresetuje się tylko nasz postęp.
-* Włączamy serwer
-
-
-## Wgrywanie własnej mapy
-Aby wgrać swój własny świat należy:
-* Wyłączyć serwer
-* Wejść w pliki serwera
-* Usunąć stary świat (Informacje jak to zrobić znajdują sie powyżej)
-* Wgrać swój nowy świat do głównego folderu serwera
-
-
-
-
-
-* Następnie zmienić nazwę folderu na **world**
-
-
-
-* Włączyć serwer
-
-
-## Ustawienie własnego seedu
-Aby ustawić własny seed należy:
-* Wyłączyć serwer
-* Wejść do głównego katalogu serwera
-* Otworzyć plik **server.properties**
-* Wpisać w linijce **level-seed=** swój seed
-
-
-
-* Zapisać plik
-* Usunąć stary świat (informacje o tym jak to zrobić znajdują się na samej górze)
-* Włączyć
-
-
-## Przenoszenie świata z serwera na singleplayer
-Aby przenieść świat z serwer na swój komputer należy:
-* Pobrać nasz świat
-* Wejść w folder netheru, a następnie pobrać folder **DIM-1**
-* Wejść w folder endu, a następnie pobrać folder **DIM1**
-* Wcisnąć skrót klawiszowy **Windows + R** i wpisać: **%appdata%**
-* Otworzyć folder **.minecraft**, a w nim folder **saves**
-* Wgrać tam świat, który pobralismy
-* Wrzucić do niego foldery **DIM-1** oraz **DIM1**
-
-
+# Świat serwerowy
+## Spis treści
+- [Świat serwerowy](#świat-serwerowy)
+ - [Spis treści](#spis-treści)
+ - [Tworzenie nowego świata](#tworzenie-nowego-świata)
+ - [Wgrywanie własnej mapy](#wgrywanie-własnej-mapy)
+ - [Ustawienie własnego seedu](#ustawienie-własnego-seedu)
+ - [Przenoszenie świata z serwera na singleplayer](#przenoszenie-świata-z-serwera-na-singleplayer)
+
+
+## Tworzenie nowego świata
+Aby utworzyć nową mapę należy:
+* Wyłączyć serwer
+* Wejść w pliki serwera
+* Usunąć obecny świat na serwerze, usuwając foldery **world**, **world_nether** oraz **world_the_end**. Jeśli nazwa świata została zmieniona w pliku **server.properties**, to usuwamy foldery ****, **_nether** oraz **_the_end**. (Jeżeli chcemy zachować mapę, to najlepiej będzie ją pobrać na nasz komputer najlepiej za pomocą **[FTP](https://github.com/Craftserve/docs/blob/master/ftp.md)**).
+
+
+
+* Jeżeli w pliku **server.properties** w linijce **level-seed** jest ustawiony seed świata, należy go usunąć, a następnie zapisać plik, żeby wygenerował się nowy, inny. Inaczej zresetuje się tylko nasz postęp.
+* Włączamy serwer
+
+
+# Wgrywanie własnej mapy
+Aby wgrać swój własny świat należy:
+* Wyłączyć serwer
+* Wejść w pliki serwera
+* Usunąć stary świat (Informacje jak to zrobić znajdują sie powyżej)
+* Wgrać swój nowy świat do głównego folderu serwera
+
+
+
+
+
+* Następnie zmienić nazwę folderu na **world**
+
+
+
+* Włączyć serwer
+
+
+## Ustawienie własnego seedu
+Aby ustawić własny seed należy:
+* Wyłączyć serwer
+* Wejść do głównego katalogu serwera
+* Otworzyć plik **server.properties**
+* Wpisać w linijce **level-seed=** swój seed
+
+
+
+* Zapisać plik
+* Usunąć stary świat (informacje o tym jak to zrobić znajdują się na samej górze)
+* Włączyć
+
+
+## Przenoszenie świata z serwera na singleplayer
+Aby przenieść świat z serwer na swój komputer należy:
+* Pobrać nasz świat
+* Wejść w folder netheru, a następnie pobrać folder **DIM-1**
+* Wejść w folder endu, a następnie pobrać folder **DIM1**
+* Wcisnąć skrót klawiszowy **Windows + R** i wpisać: **%appdata%**
+* Otworzyć folder **.minecraft**, a w nim folder **saves**
+* Wgrać tam świat, który pobralismy
+* Wrzucić do niego foldery **DIM-1** oraz **DIM1**
+
+
diff --git a/worldedit.md b/docs/worldedit.md
similarity index 98%
rename from worldedit.md
rename to docs/worldedit.md
index febeb53..5c4704d 100644
--- a/worldedit.md
+++ b/docs/worldedit.md
@@ -1,561 +1,561 @@
-# WorldEdit - kompletny poradnik
-
-WorldEdit jest pluginem do edycji świata, pozwala na znaczne przyspieszenie najprostszych czynności, takich jak wypełnianie ścian, przez kopiowanie i obracanie, aż po generowanie zaawansowanych struktur jedną komendą.
-
-
-## Instalacja
-
-1. Pobierz plugin z [oficjalnej strony](https://dev.bukkit.org/projects/worldedit).
-2. Skopiuj plik WorldEdit.jar do folderu plugins.
-3. Włącz serwer.
-
-
-## Podstawy - tu zacznij
-
-Ze względu na ogromną ilość funkcji i ich wzajemne powiązanie, podzieliłem poradnik na dwie części: podstawy i kompletny przegląd. W tym miejscu opisałem podstawowe, najczęściej wykorzystywane funkcje. W dalszej części tekstu rozszerzam je o zaawansowane funkcje.
-
-### Zaznaczanie
-W celu edycji bloków, musisz najpierw wskazać obszar, w którym zamierzasz jej dokonać. Podstawowym typem zaznaczania jest prostopadłościan, łączący dwa punkty.
-
-#### Tworzenie zaznaczenia
-Możesz je stworzyć na trzy sposoby:
-
-* Trzymając drewnianą siekierę zaznaczyć pierwszy punkt klikając LPM i następnie zaznaczyć drugi punkt klikając PPM. Drewnianą siekierę można stworzyć samemu lub otrzymać ją za pomocą komendy `//wand`.
-* Wpisać `//pos1` dla punktu pierwszego i `//pos2` dla punktu drugiego. Są one tworzone w miejscach gdzie stoisz w czasie wpisywania komend.
-* Wpisać `//hpos1` dla punktu pierwszego i `//hpos2` dla punktu drugiego. Są one tworzone w miejscach gdzie patrzysz w czasie wpisywania komend.
-
-Prostopadłościan powstanie w wyniku połączenia tych dwóch punktów.
-
-
-#### Edycja zaznaczenia
-Jeśli chcesz zedytować stworzony wcześniej prostopadłościan możesz zrobić to na kilka różnych sposobów:
-
-* Zedytować jeden z punktów wykorzystując metody opisane w tworzeniu zaznaczenia.
-* Powiększyć region o np. 5 kratek w górę wpisując `//expand 5 U`
-* Powiększyć region o np. 5 kratek w kierunku w którym patrzysz wpisując `//expand 5`
-* Zmniejszyć region o np. 5 kratek od góry wpisując `//contract 5 D`
-* Zmniejszyć region o np. 5 kratek w kierunku w którym patrzysz wpisując `//contract 5`
-
-Dostępne kierunki to: N, S, W, E, U (w górę), D (w dół).
-
-### Robienie czegoś z zaznaczonym terenem
-Jeśli już zaznaczyłeś teren, możesz go teraz zmodyfikować.
-
-#### Wypełnianie zaznaczenia
-Używając komendy `//set ` zamienisz wszystkie bloki w obrębie zaznaczenia, na konkretne bloki.
-Bloki możesz wpisać w następujące sposoby:
-
-* `stone` - zamieni się na kamień
-* `stone,dirt,bedrock` - zamieni się losowo na kamień, ziemię i bedrock
-* `25%stone,25%dirt,50%bedrock` - zamieni się na 25% kamienia, 25% ziemii i 50% bedrocka
-
-Dla przykładu: `//set dirt`, `//set 10%glass,90%stone`, `//set air`
-
-
-
-#### Zamienianie zaznaczenia
-Używając komendy `//replace ` zamieniasz określone bloki, na inne.
-
-Dla przykładu `//replace dirt,stone 20%dirt,20%sand,60%stone` zamieni wszystkie bloki ziemii i kamienia na 20% bloków ziemii, 20% bloków piasku, 60% bloków kamienia.
-
-#### Tworzenie ścian
-Używając komendy `//walls ` tworzysz ściany wokół zaznaczenia.
-
-Dla przykładu `//walls stone,dirt` stworzy ścianę z losowo występującego kamienia i ziemii.
-
-
-#### Kopiowanie i schowek
-Po zaznaczeniu terenu, używając komendy `//copy` możesz go skopiować.
-
-Używając komendy `//paste` wklejasz go.
-* **UWAGA** Ważne jest to w którym miejscu stoisz wpisując komendę `//copy` - gdy stałeś np. 5 bloków przez strukturą, po wpisaniu komendy `//paste` struktura wklei się 5 bloków przed tobą.
-
-
-Używając komendy `//rotate ` obracasz strukturę w schowku.
-Dla przykładu `//copy`, `//rotate 90`, `//paste`.
-
-
-Używając komendy `//flip [kierunek]` przewracasz strukturę w danym kierunku (np. lustrzanie).
-Dla przykładu `//copy`, `//flip`, `//paste`.
-
-
-### Generowanie
-Istnieją także komendy umożliwiające generowanie danych struktur w miejscu gdzie stoisz, nie wymagają one zaznaczania.
-
-#### Tworzenie kulii/sfery
-Używając komendy `//sphere ` stworzysz kulę, jej środek będzie w miejscu gdzie stoisz.
-Dla przykładu `//sphere stone 5` stworzy kulę z kamienia o promieniu równym 5.
-
-
-Używając komendy `//hsphere ` stworzysz sferę (kulę pustą w środku), jej środek będzie w miejscu gdzie stoisz.
-Dla przykładu `//hsphere glass 7` stworzy sferę ze szkła o promieniu równym 7.
-
-
-#### Tworzenie walca/cylindra
-Używając komendy `//cyl [wysokość]` stworzysz walec, jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
-Dla przykładu `//cyl glass 7 10` stworzy walec ze szkła o promieniu równym 5 i wysokości 10.
-
-
-Używając komendy `//hcyl [wysokość]` stworzysz cylinder (walec pusty w środku), jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
-Dla przykładu `//hcyl stone,dirt 3 12` stworzy cylinder z kamienia i ziemii o promieniu równym 3 i wysokości 12.
-
-
-### Pędzle
-Pędzle umożliwiają "rysowanie" konkretnymi przedmiotami.
-
-Trzymając w ręce np. patyk i używając komendy `//br ` aktywujesz konkretny pędzel na patyku. Po kliknięciu PPM, w miejscu na które wskazujesz, wykona się konkretna zmiana, w zależności od pędzla.
-
-Przykładowe pędzle:
-* `//br sphere ` tworzy kulę w miejscu na które wskazujesz.
-* `//br cyl [wysokość]` tworzy cylinder w miejscu na które wskazujesz.
-* `//br clipboard` wkleja obiekt ze schowka (skopiowany za pomocą `//copy`) w miejscu na które wskazujesz.
-* `//br gravity ` układa bloki na ziemii zgodnie z grawitacją w obszarze na który wskazujesz. Dla przykładu, jeśli użyjesz `//br gravity 10`, latające bloki w promieniu 10 od miejsca na które wskazałeś opadną na dół.
-
-Komenda `//none` sprawi, że blok który trzymasz w ręce przestanie być pędzlem.
-
-### Historia
-Używając komendy `//undo` cofasz ostatnio dokonaną zmianę.
-Używając komendy `//redo` przywracasz cofniętą wcześniej zmianę.
-
-
-
-
-## Kompletny spis możliwości
-Część opisanych wyżej funkcji powtórzy się tutaj, jednak zostaną dokładniej wyjaśnione.
-
-
-### Historia
-Wszystkie **zmiany** których dokonujesz za pomocą pluginu WorldEdit, są zapisywane w historii. Kopiowanie czy obracanie schowka jest pomijane, uwzględnione są tylko faktyczne zmiany mapy.
-
-`//undo [ilość]`
-Z pomocą komendy `//undo` możesz cofnąć wykonane wcześniej zmiany.
-Używając np. `//undo 5` jest to odpowiednik wpisania 5 razy `//undo`, czyli cofasz 5 ostatnich zmian.
-
-`//redo [ilość]`
-Z pomocą komendy `//redo` możesz ponowić cofniętą wcześniej zmianę.
-Używając np. `//redo 5` jest to odpowiednik wpisania 5 razy `//redo`, czyli ponawiasz 5 ostatnio cofniętych zmian.
-
-Dla przykładu po wpisaniu `//undo 5`, a następnie `//redo 3`, cofasz 5 zmian, a następnie ponawiasz 3 ostatnio cofnięte zmiany, czyli efekt jest taki sam jak po wpisaniu `//undo 2`
-
-Możesz wyczyścić swoją historię przy użyciu komendy `/clearhistory`.
-
-
-### Wzory bloków (patterns)
-Patterny odnoszą się do bloków *na które coś zostanie zamienione*. Patternem jest np. `` w `//set `.
-
-#### Pojedynczy blok
-Podajesz po prostu jeden konkretny blok, dla przykładu `stone`.
-
-#### Losowe bloki
-* Podajesz kilka bloków w formie listy, dla każdego zedytowanego bloku zostanie wylosowany jeden z nich. Dla przykładu `stone,dirt,bedrock`.
-* Podajesz kilka bloków w formie listy uwzględniając procenty, dla każdego zedytowanego bloku zostanie wylosowany jeden z nich uwzględniając procenty. Dla przykładu `10%stone,10%dirt,80%bedrock`.
-
-#### Losowy stan bloku
-Poprzedzenie nazwy bloku `*` spowoduje wylosowanie jego stanu dla każdego z nich.
-Dla przykładu `*oak_log` wylosuje kierunek ułożenia pnia dla każdego bloku.
-
-#### Losowy typ bloku
-Poprzedzenie nazwy bloku `##` spowoduje wylosowanie jego typu dla każdego z nich.
-Dla przykładu `##wool` wylosuje kolor wełny dla każdego bloku.
-
-#### Wcześniejszy stan bloku
-Poprzedzenie nazwy bloku `^` spowoduje zapamiętanie jego stanu przy np. komendzie `//replace`.
-Dla przykładu `//replace oak_stairs ^acacia_stairs` spowoduje zamienienie wszystkich dębowych schodów na akacjowe z uwzględnieniem ich wcześniejszego kierunku.
-
-
-### Maski
-Maski odnoszą się do bloków *które mają zostać zamienione*. Maską jest np. `` w `//replace `.
-
-**UWAGA**
-Poza argumentami w komendach, mask można używać również globalnie lub do konkretnych pędzli.
-`//mask ` sprawia, że używając pędzla (`//br`) będziesz edytował tylko konkretne bloki.
-`//gmask ` odnosi się do wszystkich akcji jakie wykonujesz przy użyciu world edita.
-Wpisanie samego `//mask` lub `//gmask` resetuje je.
-
-#### Maska blokowa
-Najprostsza maska, przy jej użyciu wskazujesz po prostu, które bloki chcesz zedytować.
-`//replace stone air`, `stone` jest maską, oznacza to, że wszystkie bloki kamienia zostaną zamienione na powietrze.
-`//replace stone,dirt air` `stone,dirt` jest maską, oznacza to, że wszystkie bloki kamienia i ziemii zostaną zamienione na powietrze.
-
-#### Negacja
-Działa dokładnie tak jak poprzednia, jednak neguje bloki.
-`//replace !stone air`, `!stone` jest maską, oznacza to, że wszystkie bloki **oprócz kamienia** zostaną zamienione na powietrze.
-`//replace !stone,dirt air` `!stone,dirt` jest maską, oznacza to, że wszystkie bloki **oprócz kamienia i ziemii** zostaną zamienione na powietrze.
-
-#### Istniejące (existing)
-Oznacza wszystkie bloki oprócz powietrza.
-`//replace #existing dirt`, `#existing` jest maską, oznacza to, że wszystkie bloki **oprócz powietrza** zostaną zamienione na ziemię.
-
-#### Solidne (solid)
-Oznacza wszystkie solidne bloki. Są to bloki, które nie pozwalają na przechodzenie np. graczy przez nie.
-`//replace #solid dirt`, `#solid` jest maską, oznacza to, że wszystkie solidne bloki zostaną zamienione na ziemię.
-
-#### Region
-Maska `#region` jest przydatna np. gdy chcesz zedytować wszystko oprócz konkretnego obiektu. W tym celu zaznaczasz dany obiekt, a następnie używasz maski region z negacją - `//gmask !#region`. *World edit zapamięta region w momencie wpisania tej komendy.* Od tego momentu wszystkie zmiany dokonywane world editem nie będą miały wpływu na zaznaczony wcześniej region.
-
-#### Poniżej/powyżej
-`//gmask air` zedytuje tylko bloki bezpośrednio nad blokiem powietrza.
-
-#### Maska z wyrażeniem
-Ta maska wykonuje wyrażenie matematyczne odnośnie każdego bloku.
-Dla przykładu:
-`//gmask =y<32` zedytuje tylko bloki poniżej y=32.
-
-#### Łączone maski
-Możesz użyć także kilku mask równocześnie, pod warunkiem, że się nie wykluczają. Podajesz je w cudzysłowie oddzielając spacją.
-Dla przykładu jeśli chcesz zmienić tylko bloki stone znajdujące się nad powietrzem (więc unoszące się w powietrzu) użyj maski `"stone ` dla przykładu dla komendy `/up 5` zostaniesz przeteleportowany o 5 bloków w górę i pod tobą utworzony zostanie pojedynczy blok szkła. Jest ona bardzo przydatna gdy chcesz zacząć budować jakąś strukturę w powietrzu.
-
-### Zaznaczanie
-
-Zaznaczanie punktów może odbywać się na trzy różne sposoby:
-* Trzymając drewnianą siekierę zaznacz pierwszy punkt klikając LPM i następnie zaznacz drugi punkt klikając PPM. Drewnianą siekierę można stworzyć samemu lub otrzymać ją za pomocą komendy `//wand`.
-* Wpisując `//pos1` dla punktu pierwszego, `//pos2` dla punktu drugiego. Są one tworzone w miejscach gdzie stoisz w czasie wpisywania komend.
-* Wpisując `//hpos1` dla punktu pierwszego, `//hpos2` dla punktu drugiego. Są one tworzone w miejscach gdzie patrzysz w czasie wpisywania komend.
-W przypadku bardziej zaawansowanych metod zaznaczania (opisane niżej) możesz używać także kolejnych wartości (`//hpos3`, `//hpos4` itd.).
-
-Istnieje 7 metod zaznaczania, są one wybierane za pomocą komendy `//sel `.
-
-1. `cuboid` podstawowy prostopadłościan, obejmuje cały teren pomiędzy blokiem 1, a blokiem 2.
-
- * Możesz go stworzyć zaznaczając pierwszy i drugi punkt. Prostopadłościan powstanie w wyniku połączenia tych dwóch punktów.
-
-2. `extend` prostopadłościan rozszerzany przez ponowne wybieranie punktów.
-
- * Zacznij od zaznaczenia pierwszego punktu, następnie zaznaczane punkty będą rozszerzać cuboid.
-
-3. `poly` wielokąt.
-
- * Zacznij od zaznaczenia pierwszego punktu, następnie dodawaj kolejne, będą one rozszerzały cuboid tworząc płaski wielokąt. Jego wysokość będzie odpowiadała wysokości najniższego i najwyższego punktu jakie dodałeś.
-
-4. `ellipsoid`
-
- * Zacznij od zaznaczenia pierwszego punktu, który będzie jego środkiem. Dodawane później punkty rozszerzają jego promień, pozwalają na jego spłaszczenie itp.
-
-5. `sphere`
-
- * Zacznij od zaznaczenia pierwszego punktu, który będzie jego środkiem. Drugi punkt będzie stanowił promień kuli.
-
-6. `cyl`
-
- * Zacznij od zaznaczenia pierwszego punktu, który będzie jego środkiem. Dodawane później punkty rozszerzają jego promień, pozwalają na jego spłaszczanie itp. Jego wysokość będzie odpowiadała wysokości najniższego i najwyższego punktu jakie dodałeś.
-
-7. `convex`
-
- * Zacznij od zaznaczenia pierwszego punktu, a następnie dodawaj kolejne. Utworzysz w ten sposób wielościan.
-
-#### Edycja zaznaczenia
-**UWAGA** Działa tylko dla typu zaznaczenia `cuboid`.
-
-`//expand [kierunek]`
-Możesz zwiększyć rozmiar zaznaczenia za pomocą powyższej komendy, dostępne kierunki to: N (north), S (south), W (west), E (east), U (w górę), D (w dół); F (forward, do przodu), B (back, do tyłu), L (left, w lewo), R (right, w prawo). Kierunki F,B,L,R odnoszą się kierunków względem kierunku w którym patrzysz.
-Możesz także mieszać kierunki, dla przykładu `//expand 10 n,w`
-Jeśli nie wpiszesz kierunku rozmiar cuboida zostanie zwiększony w kierunku w którym patrzysz.
-
-`//contract [kierunek]`
-Możesz zmniejszyć rozmiar zaznaczenia za pomocą powyższej komendy, obowiązują te same kierunki co dla komendy `//expand`.
-Jeśli nie wpiszesz kierunku rozmiar cuboida zostanie zmniejszony **z** kierunku w którym patrzysz.
-
-`//outset `
-Komenda powyżej zwiększy zaznaczenie o daną ilość kratek w każdym kierunku.
-* `//outset -h` zwiększy ilość kratek horyzontalnie, czyli na północ, na południe, na wschód i na zachód, nie edytując góry i dołu.
-* `//outset -v` zwiększy ilość kratek wertykalnie, czyli w dół i na górę
-
-`//inset `
-Komenda powyżej zmniejszy zaznaczenie o daną ilość kratek z każdego kierunku.
-* `//inset -h` zmniejszy ilość kratek horyzontalnie, czyli z północy, z południa, ze wschodu i z zachodu, nie edytując góry i dołu.
-* `//inset -v` zmniejszy ilość kratek wertykalnie, czyli z dołu i z góry.
-
-#### Informacje odnośnie zaznaczenia
-
-`//size`
-Wyświetla ilość bloków należących do twojego zaznaczenia.
-
-`//count `
-Pozwala policzyć bloki w twoim zaznaczeniu spełniające konkretną maskę.
-Dla przykładu `//count "dirt >stone"` wyświetli ilość bloków ziemii znajdujących się bezpośrednio nad kamieniem.
-
-`//distr`
-Oblicza ilość konkretnych bloków w Twoim zaznaczeniu.
-
-
-### Operacje na regionach
-
-#### Ustawianie bloków
-`//set `
-Umożliwia zamianę wszystkich bloków w obrębie zaznaczenia na inne, zgodnie z zasadą patternów.
-Dla przykładu:
-* `stone` - zamieni się na kamień
-* `stone,dirt,bedrock` - zamieni się losowo na kamień, ziemię i bedrock
-* `25%stone,25%dirt,50%bedrock` - zamieni się na 25% kamienia, 25% ziemii i 50% bedrocka
-
-#### Zamiana bloków
-`//replace `
-Umożliwia zamianę konkretnych bloków (maska) na inne (pattern) w obrębie zaznaczenia.
-Dla przykładu `//replace dirt,stone 20%dirt,20%sand,60%stone` zamieni wszystkie bloki ziemii i kamienia na 20% bloków ziemii, 20% bloków piasku, 60% bloków kamienia.
-
-#### Tworzenie ścian i obwódki
-`//walls `
-Umożliwia utworzenie ścian (wypełnia skrajne bloki cuboida pomijając górę i dół) z konkretnego bloku.
-
-`//outside `
-Umożliwia utworzenie obwódki (wypełnia wszystkie skrajne bloki cuboida) z konkretnego bloku.
-
-#### Pokrywanie
-`//overlay `
-Przykrywa wszystkie najwyżej znajdujące się bloki (czyli te, nad którymi jest tylko powietrze) konkretnym blokiem (pattern). Umożliwia np. pokrycie łąki różnymi kwiatami.
-
-#### Stakowanie
-`//stack [kierunek]`
-Kopiuje zaznaczoną strukturę, a następnie wkleja ją konkretną ilość razy (obok siebie) w danym kierunku.
-Umożliwia tworzenie mostów, tuneli i powtarzających się segmentów budowli.
-
-#### Przesuwanie
-`//move [kierunek]`
-Kopiuje, wycina i wkleja (przesuwa) całą strukturę daną ilość kratek, w danym kierunku, dalej.
-Dla przykładu `//move 5 u` przesunie całą strukturę o 5 kratek w górę.
-
-#### Wygładzanie
-`//smooth [ilość powtórzeń]`
-Wygładza zaznaczony teren, przydatne przy tworzeniu np. pagórków. Ilość powtórzeń oznacza siłę wygładzenia (`//smooth 3` jest równoznaczne wpisaniu komendy `//smooth` 3-krotnie).
-
-#### Naprawianie
-`//regen`
-Przywraca domyślny stan terenu w danym miejscu, opiera się o konkretny seed mapy.
-
-#### Naturalizowanie
-`//naturalize`
-Działa tylko na kamień, zamienia 3 górne warstwy kamienia ziemię i jedną ziemią z trawą.
-
-#### Umieszczanie flory
-`//flora`
-Pokrywa trawę naturalnie rozmieszczoną roślinnością, natomiast piasek naturalnie rozmieszczonymi martwymi drzewami.
-
-#### Umieszczanie bloku w centrum zaznaczenia
-`//center `
-Umieszcza dany blok w środku zaznaczonego cuboida, jeśli dana długość jest parzysta, umieszcza dwa bloki.
-
-#### Deformowanie
-`//deform `
-Deformuje zaznaczony teren za pomocą wyrażenia matematycznego.
-
-Dla przykładu:
-`//deform y+=0.2*sin(x*10)` faluje teren tworząc naturalne pagórki. Modyfikując różne zmienne można stworzyć bardzo naturalne i niepowtarzalne efekty. Wielkość zmiennych powinna być proporcjonalnie uzależniona od rozmiaru zaznaczonego terenu.
-`//deform swap(x,y)` przewraca zaznaczony teren.
-`//deform rotate(x,z,45*pi/180)` obraca pod danym kątem.
-`//deform x/=2;y/=2;z/=2` powiększa (skaluje) obiekt dwukrotnie.
-
-
-### Schowek
-
-#### Kopiowanie i wycinanie
-Kopiowanie obiektów do schowka umozliwia wpisaniu dwóch komend (po zaznaczeniu regionu).
-`//copy` - po prostu kopiuje.
-`//cut` - po prostu kopiuje, a następnie wycina (zamienia na powietrze).
-
-**WAŻNE** zapamiętywana jest twoja pozycja względem kopiowanego regionu, więc jeśli stoisz 5 kratek przed wejściem do domu i go skopiujesz, po wklejeniu w innym miejscu drzwi pojawią się 5 kratek przed tobą. Jest to bardzo istotny aspekt przy wykonywaniu operacji na schowku.
-
-Obie komendy pozwalają na użycie trzech dodatkowych flag:
-* `-e` pozwala także uwzględnić w kopiowaniu lub wycinaniu entity (moby, leżące przedmioty itp.). Dla przykładu `//copy -e`.
-* `-b` pozwala także uwzględnić biomy (w przypadku wycinania biomy w dalszym ciągu zostaną pozostawione w miejscu wyciętego obiektu). Dla przykładu `//copy -b`.
-* `-m ` pozwala także uwzględnić konkretną maskę w przypadku kopiowania lub wycinania. Wszystkie bloki, które nie należą do maski będą reprezentowane jako powietrze w twoim schowku (nie skopiują się). Dla przykładu `//copy -m !stone` skopiuje wszystkie bloki oprócz kamienia.
-
-#### Wklejanie
-Wklejanie obiektów (po wcześniejszym skopiowaniu lub wycięciu).
-`//paste` - umozliwia wklejenie obiektu.
-Ponieważ zapamiętywana jest twoja pozycja, jeśli skopiowałeś wieże stojąc na jej szczycie, po wklejeniu będzie znajdowała się bezpośrednio pod tobą.
-
-Podobnie jak przy kopiowaniu komenda pozwala na użycie trzech flag:
-* `-e` pozwala uwzględnić także skopiowane entity przy wklejaniu (jeśli jakieś są).
-* `-b` pozwala uwzględnić także skopiowane biomy przy wklejaniu (jeśli jakieś są).
-* `-m ` pozwala uwzględnić konkretne bloki ze schowka, które mają zostać wklejone.
-Oprócz tego dostępne jest kilka dodatkowych flag:
-* `-a` nie wklei powietrza ze schowka.
-* `-s` ustawi zaznaczenie na obszar, który wkleiłeś.
-* `-o` wklei schowek w miejsce z którego został skopiowany, ignorując względną pozycję.
-
-#### Obracanie
-`//rotate `
-Pozwala na obrócenie schowka o konkretną ilość stopni, najlepiej używać wielokrotności 90 (dla bardziej nieregularnych kątów polecane jest użycie komendy `//deform`, opisanej wyżej).
-Istotne jest to, że obraca zaznaczenie względem miejsca w którym stałeś kopiując obiekt. Jeśli chcesz obrócić go względem środka, musisz stać na środku w trakcie kopiowania (możesz wyznaczyć środek np. przy użyciu komendy //center ).
-
-#### Przewracanie
-`//flip [kierunek]`
-Pozwala na przewrócenie zawartości schowka w konkretnym kierunku, np. odbijając lustrzanie jego zawartość.
-
-#### Tworzenie schematów
-World edit pozwala zapisać zawartość schowka na stałe i udostępniać ją w innych miejscach, lub wgrać schematy pobrane z internetu.
-Schematy przechowywane są w folderze `plugins/WorldEdit/schematics`.
-
-`//schem save ` zapisuje obecną zawartość schowka.
-`//schem load ` wczytuje dany schemat do zawartości schowka.
-`//schem list` wyświetla listę istniejących schematów.
-`//schem delete ` pozwala na skasowanie konkretnego schematu.
-
-
-### Generowanie
-World edit pozwala także na generowanie różnych obiektów, takich jak kule czy piramidy.
-Środek generowanego obiektu znajduje się w miejscu, w którym stoisz.
-
-#### Tworzenie walca/cylindra
-Używając komendy `//cyl [wysokość]` stworzysz walec, jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
-Dla przykładu `//cyl glass 5 10` stworzy walec ze szkła o promieniu równym 5 i wysokości 10.
-
-Używając komendy `//hcyl [wysokość]` stworzysz cylinder (walec pusty w środku), jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
-Dla przykładu `//hcyl stone,dirt 3 12` stworzy cylinder z kamienia i ziemii o promieniu równym 3 i wysokości 12.
-
-`//cyl , [wysokość]` dla lepszej kontroli możesz spłaszczyć figurę i stworzyć eliptyczny cylinder, podając dwie wartości w miejscu promienia, szerokość promienia w osii EW i osii NS.
-Dla przykładu `//cyl stone 5.5,10 5`.
-
-#### Tworzenie kulii/sfery
-Używając komendy `//sphere ` stworzysz kulę, jej środek będzie w miejscu gdzie stoisz.
-Dla przykładu `//sphere stone 5` stworzy kulę z kamienia o promieniu równym 5.
-
-Używając komendy `//hsphere ` stworzysz sferę (kulę pustą w środku), jej środek będzie w miejscu gdzie stoisz.
-Dla przykładu `//hsphere dirt 7` stworzy sferę z ziemii o promieniu równym 7.
-
-`//sphere ,,` podobnie jak w przypadku cylindrów, tutaj także możesz użyć konkretnych promienii, jednak dla wszystkich trzech osii.
-Dla przykładu `//hsphere dirt 10,5,4.5`.
-
-Możesz także dodać `yes` na końcu komendy, by najwyższy punkt kuli znajdował się bezpośrednio pod twoimi nogami (zamiast jej środka w miejscu w którym stoisz).
-Dla przykładu `//sphere stone 5 yes` stworzy kulę, na której będziesz stał.
-
-#### Tworzenie piramidy
-`//pyramid `
-`//hpyramid `
-Komendy pozwalają na stworzenie piramidy (pełnej lub pustej w środku), jej środek będzie w miejscu w którym stoisz. Podaniu rozmiaru np. 5, spowoduje powstanie piramidy składającej się z 5 warstw leżących na sobie, każdej kolejnej o 1 szerszej od poprzedniej.
-
-#### Generowanie zaawansownych kształtów
-World edit pozwala na generowanie zaawansowanych kształtów za pomocą wyrażeń matematycznych, reprezentujących funkcje 3D.
-Wymagana jest tutaj spora wiedza matematyczna lub po prostu modyfikowanie gotowych przykładów i testowanie, która zmienna co robi.
-
-Przykłady:
-
-Spłaszczony torus:
-`//g stone (0.75-sqrt(x^2+y^2))^2+z^2 < 0.25^2`
-Pień drzewa:
-`//g -h oak_log (0.5+sin(atan2(x,z)*8)*0.2)*(sqrt(x*x+z*z)/0.5)^(-2)-1.2 < y`
-Tęczowy torus:
-`//g white_wool data=(32+15/2/pi*atan2(x,y))%16; (0.75-sqrt(x^2+y^2))^2+z^2 < 0.25^2`
-Tęczowe jajko:
-`//g white_wool data=(32+y*16+1)%16; y^2/9+x^2/6*(1/(1-0.4*y))+z^2/6*(1/(1-0.4*y))<0.08`
-Serce:
-`//g red_wool (z/2)^2+x^2+(5*y/4-sqrt(abs(x)))^2<0.6`
-Fala:
-`//g -h glass sin(x*5)/2-0.03`
-
-
-### Narzędzia
-
-Narzędzia można zbindować do konkretnych przedmiotów, pozwalają na znaczne przyspieszenie pracy.
-W celu zbindowania danego narzędzia do konkretnego przedmiotu, musisz go trzymać w ręce i wpisać daną komendę.
-Jeśli chcesz wyczyścić przypisanie, wystarczy wpisać `//none`.
-
-#### Narzędzie generujące drzewa
-`/tree [typ]`
-To narzędzie tworzy drzewa danych typów podczas gdy klika się nim na blok. Używa minecraftowego generatora drzew i ma te same limity - nie wygeneruje drzewa na bloku, na którym nie może go posadzić lub gdy w miejscu gdzie mogłoby powstać, znajdują się solidne bloki.
-
-#### Narzędzie usuwające latające drzewa
-`/deltree`
-Po kliknięciu prawym przyciskiem na latające w powietrzu bloki liści lub drewna (powstałe na przykład przez graczy ścinających tylko dolne części drzew) usunie wszystkie połączone bloki drzew.
-
-#### Narzędzie zamieniające bloki
-`/repl `
-To narzędzie zamieni kliknięte bloki na bloki z twojego patternu. Możesz także kliknąć lewym przyciskiem myszy by zamienić swój obecny pattern na kliknięty blok.
-
-#### Narzędzie do budowania na daleki dystans
-`/lrbuild `
-To narzędzie pozwala na zamienianie bloków na które klikasz. Jeśli klikniesz lewym przyciskiem myszy, bloki będą zamieniane na pierwszy pattern, jeśli klikniesz prawym, bloki będą zamieniane na drugi pattern.
-
-#### Różdżka na daleki dystans
-`/farwand`
-Działa tak jak `//hpos1` i `//hpos2`, jednak za pomocą lewego i prawego kliknięcia myszy.
-
-#### Narzędzie do obracania
-`/cycler`
-Narzędzie służące do obracania (zmieniania stanów) bloków na które patrzysz. Dla przykładu możesz spojrzeć na schody i je obracać.
-
-#### Narzędzie wyświetlające informacje
-`/info`
-Po naciśnięciu prawego klawisza myszy, wyświetli informacje na temat bloku na który patrzysz. Wyświetli koordynaty, stan, typ bloku, poziom oświetlenia i ID.
-
-#### Narzędzie do zalewania
-`/floodfill `
-Narzędzie zamieni kliknięty prawym przyciskiem myszy i wszystkie pozostałe połączone bloki tego samego typu, w danym zasięgu, na wskazany pattern.
-
-### Super kilof
-Super kilof działa inaczej niż pozostałe narzędzia, ponieważ jest włączany i wyłączany komendą, odnosząc się do wszystkich kilofów. W przeciwieństwie do normalnych narzędzi jest wyłączany za pomocą komendy `//`.
-
-#### Pojedynczy super kilof
-`/sp single`
-Pozwala natychmiast niszczyć bloki.
-
-#### Super kilof na zasięg
-`/sp area `
-Pozwala natychmiast niszczyć bloki tego samego typu co kliknięty, w danym zasięgu.
-
-#### Rekursywny super kilof
-`/sp recur `
-Pozwala natychmiast niszczyć bloki tego samego typu co kliknięty, w danym zasięgu, jednak tylko te, które są **polączone ze sobą i klikniętym blokiem**.
-
-
-### Pędzle
-Pędzle są głównie narzędziami stworzonymi w celu modelowania.
-Binduje się je do przedmiotów w ten sam sposób co zwykłe narzędzia i odbindowuje przy pomocy komendy `//none`.
-Po kliknięciu PPM, w miejscu na które wskazujesz, wykona się konkretna zmiana, w zależności od pędzla.
-
-#### Lista pędzli:
-* Pędzel tworzący kule `/brush sphere [promień]`, kule działają w ten sam sposób jak te generowane za pomocą komendy `//sphere`.
-* Pędzel tworzący cylindry `/brush cyl [promień] [wysokość]`, cylindry działają w ten sam sposób jak te generowane za pomocą komendy `//cyl`.
-* Pędzel wklejający `/brush clipboard [-aoeb] [-m ]`, działa w ten sam sposób jak `//paste`, pozwala na używanie flag.
-* Pędzel wygładzający `/brush smooth [promień] [wykonania] [maska]`, działa w ten sam sposób jak `//smooth`.
-* Pędzel grawitacyjny `/brush gravity [promień]`, układa bloki na ziemii zgodnie z grawitacją w obszarze na który wskazujesz. Dla przykładu, jeśli użyjesz `//br gravity 10`, latające bloki w promieniu 10 od miejsca na które wskazałeś opadną na dół.
-* Pędzel gaszący `/brush extinguish [promień]`, gasi ogień w danym promieniu.
-* Pędzel zabijający entity `/brush butcher [radius] [-pngabtfr]`, pozwala na usunięcie konkretnych entity w danym promieniu, `-p` zabija oswojone zwierzęta, `-n` zabija NPC, `-g` zabija golemy, `-a` zabija zwierzęta, `-b` zabija moby pasywne, `-t` zabija moby z tagami, `-f` łączy wszystkie powyższe flagi, `-r` usuwa stojaki na zbroje.
-* Pędzel deformujący `/brush deform [rozmiar] [wyrażenie]`, działa tak jak komenda `//deform`. Kszałt to dla przykładu `shphere` lub `cyl`.
-* Promień podwyższający `/brush raise [rozmiar]`, podwyższa wszystkie bloki o jeden.
-* Promień obniżający `/brush lower [rozmiar]`, obniża wszystkie bloki o jeden.
-
-#### Ustawienia pędzli:
-* Maski - opisane w dziale maski.
-* `//size ` zmienia rozmiar pędzla.
-* `//material ` zmienia pattern pędzla.
-* `//range ` zmienia promień działania pędzla.
-
-
-### Dodatkowe komendy
-* `/removeabove [wysokość]`
-Usuwa bloki nad tobą na konkretną wysokość, o konkretnym promieniu.
-* `/removebelow [głębokość]`
-Usuwa bloki pod tobą na konkretną głebokość, o konkretnym promieniu.
-* `/removenear `
-Usuwa bloki wokół ciebie dopasowane do konkretnej maski, w konkretnym promieniu.
-* `/replacenear `
-Zamienia bloki wokół ciebie dopasowane do konkretnej maski, na bloki o konkretnym patternie, w konkretnym promieniu.
-* `//fill [głębokość]`
-Wypełnia (zalewa) bloki tego samego typu w konkretnym promieniu konkretnym patternem. Działa tylko w dół i jedynie na bloki znajdujące się pod blokami tego samego typu na wysokości wpisania komendy. Pozwala na wypełnianie np. sadzawek, jezior.
-* `//fillr `
-Działa tak samo jako komenda wyżej, jednak wypełnia również bloki po prostu stykające się z zaznaczonymi. Pozwala na wypełnianie np. jaskinii.
-* `//drain `
-Usuwa bloki wody i lawy w konkretnym promieniu.
-* `//snow `
-Pokrywa teren w danym promieniu śniegiem.
-* `//green `
-Zamienia ziemię na trawę w danym promieniu.
-* `//ex [promień]`
-Gasi ogień w danym promieniu.
-* `//butcher [-pngabtfl] [promień]`
-Pozwala na usunięcie konkretnych entity w danym promieniu, `-p` zabija oswojone zwierzęta, `-n` zabija NPC, `-g` zabija golemy, `-a` zabija zwierzęta, `-b` zabija moby pasywne, `-t` zabija moby z tagami, `-f` łączy wszystkie powyższe flagi, `-r` usuwa stojaki na zbroje.
+# WorldEdit - kompletny poradnik
+
+WorldEdit jest pluginem do edycji świata, pozwala na znaczne przyspieszenie najprostszych czynności, takich jak wypełnianie ścian, przez kopiowanie i obracanie, aż po generowanie zaawansowanych struktur jedną komendą.
+
+
+## Instalacja
+
+1. Pobierz plugin z [oficjalnej strony](https://dev.bukkit.org/projects/worldedit).
+2. Skopiuj plik WorldEdit.jar do folderu plugins.
+3. Włącz serwer.
+
+
+## Podstawy - tu zacznij
+
+Ze względu na ogromną ilość funkcji i ich wzajemne powiązanie, podzieliłem poradnik na dwie części: podstawy i kompletny przegląd. W tym miejscu opisałem podstawowe, najczęściej wykorzystywane funkcje. W dalszej części tekstu rozszerzam je o zaawansowane funkcje.
+
+### Zaznaczanie
+W celu edycji bloków, musisz najpierw wskazać obszar, w którym zamierzasz jej dokonać. Podstawowym typem zaznaczania jest prostopadłościan, łączący dwa punkty.
+
+#### Tworzenie zaznaczenia
+Możesz je stworzyć na trzy sposoby:
+
+* Trzymając drewnianą siekierę zaznaczyć pierwszy punkt klikając LPM i następnie zaznaczyć drugi punkt klikając PPM. Drewnianą siekierę można stworzyć samemu lub otrzymać ją za pomocą komendy `//wand`.
+* Wpisać `//pos1` dla punktu pierwszego i `//pos2` dla punktu drugiego. Są one tworzone w miejscach gdzie stoisz w czasie wpisywania komend.
+* Wpisać `//hpos1` dla punktu pierwszego i `//hpos2` dla punktu drugiego. Są one tworzone w miejscach gdzie patrzysz w czasie wpisywania komend.
+
+Prostopadłościan powstanie w wyniku połączenia tych dwóch punktów.
+
+
+#### Edycja zaznaczenia
+Jeśli chcesz zedytować stworzony wcześniej prostopadłościan możesz zrobić to na kilka różnych sposobów:
+
+* Zedytować jeden z punktów wykorzystując metody opisane w tworzeniu zaznaczenia.
+* Powiększyć region o np. 5 kratek w górę wpisując `//expand 5 U`
+* Powiększyć region o np. 5 kratek w kierunku w którym patrzysz wpisując `//expand 5`
+* Zmniejszyć region o np. 5 kratek od góry wpisując `//contract 5 D`
+* Zmniejszyć region o np. 5 kratek w kierunku w którym patrzysz wpisując `//contract 5`
+
+Dostępne kierunki to: N, S, W, E, U (w górę), D (w dół).
+
+### Robienie czegoś z zaznaczonym terenem
+Jeśli już zaznaczyłeś teren, możesz go teraz zmodyfikować.
+
+#### Wypełnianie zaznaczenia
+Używając komendy `//set ` zamienisz wszystkie bloki w obrębie zaznaczenia, na konkretne bloki.
+Bloki możesz wpisać w następujące sposoby:
+
+* `stone` - zamieni się na kamień
+* `stone,dirt,bedrock` - zamieni się losowo na kamień, ziemię i bedrock
+* `25%stone,25%dirt,50%bedrock` - zamieni się na 25% kamienia, 25% ziemii i 50% bedrocka
+
+Dla przykładu: `//set dirt`, `//set 10%glass,90%stone`, `//set air`
+
+
+
+#### Zamienianie zaznaczenia
+Używając komendy `//replace ` zamieniasz określone bloki, na inne.
+
+Dla przykładu `//replace dirt,stone 20%dirt,20%sand,60%stone` zamieni wszystkie bloki ziemii i kamienia na 20% bloków ziemii, 20% bloków piasku, 60% bloków kamienia.
+
+#### Tworzenie ścian
+Używając komendy `//walls ` tworzysz ściany wokół zaznaczenia.
+
+Dla przykładu `//walls stone,dirt` stworzy ścianę z losowo występującego kamienia i ziemii.
+
+
+#### Kopiowanie i schowek
+Po zaznaczeniu terenu, używając komendy `//copy` możesz go skopiować.
+
+Używając komendy `//paste` wklejasz go.
+* **UWAGA** Ważne jest to w którym miejscu stoisz wpisując komendę `//copy` - gdy stałeś np. 5 bloków przez strukturą, po wpisaniu komendy `//paste` struktura wklei się 5 bloków przed tobą.
+
+
+Używając komendy `//rotate ` obracasz strukturę w schowku.
+Dla przykładu `//copy`, `//rotate 90`, `//paste`.
+
+
+Używając komendy `//flip [kierunek]` przewracasz strukturę w danym kierunku (np. lustrzanie).
+Dla przykładu `//copy`, `//flip`, `//paste`.
+
+
+### Generowanie
+Istnieją także komendy umożliwiające generowanie danych struktur w miejscu gdzie stoisz, nie wymagają one zaznaczania.
+
+#### Tworzenie kulii/sfery
+Używając komendy `//sphere ` stworzysz kulę, jej środek będzie w miejscu gdzie stoisz.
+Dla przykładu `//sphere stone 5` stworzy kulę z kamienia o promieniu równym 5.
+
+
+Używając komendy `//hsphere ` stworzysz sferę (kulę pustą w środku), jej środek będzie w miejscu gdzie stoisz.
+Dla przykładu `//hsphere glass 7` stworzy sferę ze szkła o promieniu równym 7.
+
+
+#### Tworzenie walca/cylindra
+Używając komendy `//cyl [wysokość]` stworzysz walec, jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
+Dla przykładu `//cyl glass 7 10` stworzy walec ze szkła o promieniu równym 5 i wysokości 10.
+
+
+Używając komendy `//hcyl [wysokość]` stworzysz cylinder (walec pusty w środku), jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
+Dla przykładu `//hcyl stone,dirt 3 12` stworzy cylinder z kamienia i ziemii o promieniu równym 3 i wysokości 12.
+
+
+### Pędzle
+Pędzle umożliwiają "rysowanie" konkretnymi przedmiotami.
+
+Trzymając w ręce np. patyk i używając komendy `//br ` aktywujesz konkretny pędzel na patyku. Po kliknięciu PPM, w miejscu na które wskazujesz, wykona się konkretna zmiana, w zależności od pędzla.
+
+Przykładowe pędzle:
+* `//br sphere ` tworzy kulę w miejscu na które wskazujesz.
+* `//br cyl [wysokość]` tworzy cylinder w miejscu na które wskazujesz.
+* `//br clipboard` wkleja obiekt ze schowka (skopiowany za pomocą `//copy`) w miejscu na które wskazujesz.
+* `//br gravity ` układa bloki na ziemii zgodnie z grawitacją w obszarze na który wskazujesz. Dla przykładu, jeśli użyjesz `//br gravity 10`, latające bloki w promieniu 10 od miejsca na które wskazałeś opadną na dół.
+
+Komenda `//none` sprawi, że blok który trzymasz w ręce przestanie być pędzlem.
+
+### Historia
+Używając komendy `//undo` cofasz ostatnio dokonaną zmianę.
+Używając komendy `//redo` przywracasz cofniętą wcześniej zmianę.
+
+
+
+
+## Kompletny spis możliwości
+Część opisanych wyżej funkcji powtórzy się tutaj, jednak zostaną dokładniej wyjaśnione.
+
+
+### Historia
+Wszystkie **zmiany** których dokonujesz za pomocą pluginu WorldEdit, są zapisywane w historii. Kopiowanie czy obracanie schowka jest pomijane, uwzględnione są tylko faktyczne zmiany mapy.
+
+`//undo [ilość]`
+Z pomocą komendy `//undo` możesz cofnąć wykonane wcześniej zmiany.
+Używając np. `//undo 5` jest to odpowiednik wpisania 5 razy `//undo`, czyli cofasz 5 ostatnich zmian.
+
+`//redo [ilość]`
+Z pomocą komendy `//redo` możesz ponowić cofniętą wcześniej zmianę.
+Używając np. `//redo 5` jest to odpowiednik wpisania 5 razy `//redo`, czyli ponawiasz 5 ostatnio cofniętych zmian.
+
+Dla przykładu po wpisaniu `//undo 5`, a następnie `//redo 3`, cofasz 5 zmian, a następnie ponawiasz 3 ostatnio cofnięte zmiany, czyli efekt jest taki sam jak po wpisaniu `//undo 2`
+
+Możesz wyczyścić swoją historię przy użyciu komendy `/clearhistory`.
+
+
+### Wzory bloków (patterns)
+Patterny odnoszą się do bloków *na które coś zostanie zamienione*. Patternem jest np. `` w `//set `.
+
+#### Pojedynczy blok
+Podajesz po prostu jeden konkretny blok, dla przykładu `stone`.
+
+#### Losowe bloki
+* Podajesz kilka bloków w formie listy, dla każdego zedytowanego bloku zostanie wylosowany jeden z nich. Dla przykładu `stone,dirt,bedrock`.
+* Podajesz kilka bloków w formie listy uwzględniając procenty, dla każdego zedytowanego bloku zostanie wylosowany jeden z nich uwzględniając procenty. Dla przykładu `10%stone,10%dirt,80%bedrock`.
+
+#### Losowy stan bloku
+Poprzedzenie nazwy bloku `*` spowoduje wylosowanie jego stanu dla każdego z nich.
+Dla przykładu `*oak_log` wylosuje kierunek ułożenia pnia dla każdego bloku.
+
+#### Losowy typ bloku
+Poprzedzenie nazwy bloku `##` spowoduje wylosowanie jego typu dla każdego z nich.
+Dla przykładu `##wool` wylosuje kolor wełny dla każdego bloku.
+
+#### Wcześniejszy stan bloku
+Poprzedzenie nazwy bloku `^` spowoduje zapamiętanie jego stanu przy np. komendzie `//replace`.
+Dla przykładu `//replace oak_stairs ^acacia_stairs` spowoduje zamienienie wszystkich dębowych schodów na akacjowe z uwzględnieniem ich wcześniejszego kierunku.
+
+
+### Maski
+Maski odnoszą się do bloków *które mają zostać zamienione*. Maską jest np. `` w `//replace `.
+
+**UWAGA**
+Poza argumentami w komendach, mask można używać również globalnie lub do konkretnych pędzli.
+`//mask ` sprawia, że używając pędzla (`//br`) będziesz edytował tylko konkretne bloki.
+`//gmask ` odnosi się do wszystkich akcji jakie wykonujesz przy użyciu world edita.
+Wpisanie samego `//mask` lub `//gmask` resetuje je.
+
+#### Maska blokowa
+Najprostsza maska, przy jej użyciu wskazujesz po prostu, które bloki chcesz zedytować.
+`//replace stone air`, `stone` jest maską, oznacza to, że wszystkie bloki kamienia zostaną zamienione na powietrze.
+`//replace stone,dirt air` `stone,dirt` jest maską, oznacza to, że wszystkie bloki kamienia i ziemii zostaną zamienione na powietrze.
+
+#### Negacja
+Działa dokładnie tak jak poprzednia, jednak neguje bloki.
+`//replace !stone air`, `!stone` jest maską, oznacza to, że wszystkie bloki **oprócz kamienia** zostaną zamienione na powietrze.
+`//replace !stone,dirt air` `!stone,dirt` jest maską, oznacza to, że wszystkie bloki **oprócz kamienia i ziemii** zostaną zamienione na powietrze.
+
+#### Istniejące (existing)
+Oznacza wszystkie bloki oprócz powietrza.
+`//replace #existing dirt`, `#existing` jest maską, oznacza to, że wszystkie bloki **oprócz powietrza** zostaną zamienione na ziemię.
+
+#### Solidne (solid)
+Oznacza wszystkie solidne bloki. Są to bloki, które nie pozwalają na przechodzenie np. graczy przez nie.
+`//replace #solid dirt`, `#solid` jest maską, oznacza to, że wszystkie solidne bloki zostaną zamienione na ziemię.
+
+#### Region
+Maska `#region` jest przydatna np. gdy chcesz zedytować wszystko oprócz konkretnego obiektu. W tym celu zaznaczasz dany obiekt, a następnie używasz maski region z negacją - `//gmask !#region`. *World edit zapamięta region w momencie wpisania tej komendy.* Od tego momentu wszystkie zmiany dokonywane world editem nie będą miały wpływu na zaznaczony wcześniej region.
+
+#### Poniżej/powyżej
+`//gmask air` zedytuje tylko bloki bezpośrednio nad blokiem powietrza.
+
+#### Maska z wyrażeniem
+Ta maska wykonuje wyrażenie matematyczne odnośnie każdego bloku.
+Dla przykładu:
+`//gmask =y<32` zedytuje tylko bloki poniżej y=32.
+
+#### Łączone maski
+Możesz użyć także kilku mask równocześnie, pod warunkiem, że się nie wykluczają. Podajesz je w cudzysłowie oddzielając spacją.
+Dla przykładu jeśli chcesz zmienić tylko bloki stone znajdujące się nad powietrzem (więc unoszące się w powietrzu) użyj maski `"stone ` dla przykładu dla komendy `/up 5` zostaniesz przeteleportowany o 5 bloków w górę i pod tobą utworzony zostanie pojedynczy blok szkła. Jest ona bardzo przydatna gdy chcesz zacząć budować jakąś strukturę w powietrzu.
+
+### Zaznaczanie
+
+Zaznaczanie punktów może odbywać się na trzy różne sposoby:
+* Trzymając drewnianą siekierę zaznacz pierwszy punkt klikając LPM i następnie zaznacz drugi punkt klikając PPM. Drewnianą siekierę można stworzyć samemu lub otrzymać ją za pomocą komendy `//wand`.
+* Wpisując `//pos1` dla punktu pierwszego, `//pos2` dla punktu drugiego. Są one tworzone w miejscach gdzie stoisz w czasie wpisywania komend.
+* Wpisując `//hpos1` dla punktu pierwszego, `//hpos2` dla punktu drugiego. Są one tworzone w miejscach gdzie patrzysz w czasie wpisywania komend.
+W przypadku bardziej zaawansowanych metod zaznaczania (opisane niżej) możesz używać także kolejnych wartości (`//hpos3`, `//hpos4` itd.).
+
+Istnieje 7 metod zaznaczania, są one wybierane za pomocą komendy `//sel `.
+
+1. `cuboid` podstawowy prostopadłościan, obejmuje cały teren pomiędzy blokiem 1, a blokiem 2.
+
+ * Możesz go stworzyć zaznaczając pierwszy i drugi punkt. Prostopadłościan powstanie w wyniku połączenia tych dwóch punktów.
+
+2. `extend` prostopadłościan rozszerzany przez ponowne wybieranie punktów.
+
+ * Zacznij od zaznaczenia pierwszego punktu, następnie zaznaczane punkty będą rozszerzać cuboid.
+
+3. `poly` wielokąt.
+
+ * Zacznij od zaznaczenia pierwszego punktu, następnie dodawaj kolejne, będą one rozszerzały cuboid tworząc płaski wielokąt. Jego wysokość będzie odpowiadała wysokości najniższego i najwyższego punktu jakie dodałeś.
+
+4. `ellipsoid`
+
+ * Zacznij od zaznaczenia pierwszego punktu, który będzie jego środkiem. Dodawane później punkty rozszerzają jego promień, pozwalają na jego spłaszczenie itp.
+
+5. `sphere`
+
+ * Zacznij od zaznaczenia pierwszego punktu, który będzie jego środkiem. Drugi punkt będzie stanowił promień kuli.
+
+6. `cyl`
+
+ * Zacznij od zaznaczenia pierwszego punktu, który będzie jego środkiem. Dodawane później punkty rozszerzają jego promień, pozwalają na jego spłaszczanie itp. Jego wysokość będzie odpowiadała wysokości najniższego i najwyższego punktu jakie dodałeś.
+
+7. `convex`
+
+ * Zacznij od zaznaczenia pierwszego punktu, a następnie dodawaj kolejne. Utworzysz w ten sposób wielościan.
+
+#### Edycja zaznaczenia
+**UWAGA** Działa tylko dla typu zaznaczenia `cuboid`.
+
+`//expand [kierunek]`
+Możesz zwiększyć rozmiar zaznaczenia za pomocą powyższej komendy, dostępne kierunki to: N (north), S (south), W (west), E (east), U (w górę), D (w dół); F (forward, do przodu), B (back, do tyłu), L (left, w lewo), R (right, w prawo). Kierunki F,B,L,R odnoszą się kierunków względem kierunku w którym patrzysz.
+Możesz także mieszać kierunki, dla przykładu `//expand 10 n,w`
+Jeśli nie wpiszesz kierunku rozmiar cuboida zostanie zwiększony w kierunku w którym patrzysz.
+
+`//contract [kierunek]`
+Możesz zmniejszyć rozmiar zaznaczenia za pomocą powyższej komendy, obowiązują te same kierunki co dla komendy `//expand`.
+Jeśli nie wpiszesz kierunku rozmiar cuboida zostanie zmniejszony **z** kierunku w którym patrzysz.
+
+`//outset `
+Komenda powyżej zwiększy zaznaczenie o daną ilość kratek w każdym kierunku.
+* `//outset -h` zwiększy ilość kratek horyzontalnie, czyli na północ, na południe, na wschód i na zachód, nie edytując góry i dołu.
+* `//outset -v` zwiększy ilość kratek wertykalnie, czyli w dół i na górę
+
+`//inset `
+Komenda powyżej zmniejszy zaznaczenie o daną ilość kratek z każdego kierunku.
+* `//inset -h` zmniejszy ilość kratek horyzontalnie, czyli z północy, z południa, ze wschodu i z zachodu, nie edytując góry i dołu.
+* `//inset -v` zmniejszy ilość kratek wertykalnie, czyli z dołu i z góry.
+
+#### Informacje odnośnie zaznaczenia
+
+`//size`
+Wyświetla ilość bloków należących do twojego zaznaczenia.
+
+`//count `
+Pozwala policzyć bloki w twoim zaznaczeniu spełniające konkretną maskę.
+Dla przykładu `//count "dirt >stone"` wyświetli ilość bloków ziemii znajdujących się bezpośrednio nad kamieniem.
+
+`//distr`
+Oblicza ilość konkretnych bloków w Twoim zaznaczeniu.
+
+
+### Operacje na regionach
+
+#### Ustawianie bloków
+`//set `
+Umożliwia zamianę wszystkich bloków w obrębie zaznaczenia na inne, zgodnie z zasadą patternów.
+Dla przykładu:
+* `stone` - zamieni się na kamień
+* `stone,dirt,bedrock` - zamieni się losowo na kamień, ziemię i bedrock
+* `25%stone,25%dirt,50%bedrock` - zamieni się na 25% kamienia, 25% ziemii i 50% bedrocka
+
+#### Zamiana bloków
+`//replace `
+Umożliwia zamianę konkretnych bloków (maska) na inne (pattern) w obrębie zaznaczenia.
+Dla przykładu `//replace dirt,stone 20%dirt,20%sand,60%stone` zamieni wszystkie bloki ziemii i kamienia na 20% bloków ziemii, 20% bloków piasku, 60% bloków kamienia.
+
+#### Tworzenie ścian i obwódki
+`//walls `
+Umożliwia utworzenie ścian (wypełnia skrajne bloki cuboida pomijając górę i dół) z konkretnego bloku.
+
+`//outside `
+Umożliwia utworzenie obwódki (wypełnia wszystkie skrajne bloki cuboida) z konkretnego bloku.
+
+#### Pokrywanie
+`//overlay `
+Przykrywa wszystkie najwyżej znajdujące się bloki (czyli te, nad którymi jest tylko powietrze) konkretnym blokiem (pattern). Umożliwia np. pokrycie łąki różnymi kwiatami.
+
+#### Stakowanie
+`//stack [kierunek]`
+Kopiuje zaznaczoną strukturę, a następnie wkleja ją konkretną ilość razy (obok siebie) w danym kierunku.
+Umożliwia tworzenie mostów, tuneli i powtarzających się segmentów budowli.
+
+#### Przesuwanie
+`//move [kierunek]`
+Kopiuje, wycina i wkleja (przesuwa) całą strukturę daną ilość kratek, w danym kierunku, dalej.
+Dla przykładu `//move 5 u` przesunie całą strukturę o 5 kratek w górę.
+
+#### Wygładzanie
+`//smooth [ilość powtórzeń]`
+Wygładza zaznaczony teren, przydatne przy tworzeniu np. pagórków. Ilość powtórzeń oznacza siłę wygładzenia (`//smooth 3` jest równoznaczne wpisaniu komendy `//smooth` 3-krotnie).
+
+#### Naprawianie
+`//regen`
+Przywraca domyślny stan terenu w danym miejscu, opiera się o konkretny seed mapy.
+
+#### Naturalizowanie
+`//naturalize`
+Działa tylko na kamień, zamienia 3 górne warstwy kamienia ziemię i jedną ziemią z trawą.
+
+#### Umieszczanie flory
+`//flora`
+Pokrywa trawę naturalnie rozmieszczoną roślinnością, natomiast piasek naturalnie rozmieszczonymi martwymi drzewami.
+
+#### Umieszczanie bloku w centrum zaznaczenia
+`//center `
+Umieszcza dany blok w środku zaznaczonego cuboida, jeśli dana długość jest parzysta, umieszcza dwa bloki.
+
+#### Deformowanie
+`//deform `
+Deformuje zaznaczony teren za pomocą wyrażenia matematycznego.
+
+Dla przykładu:
+`//deform y+=0.2*sin(x*10)` faluje teren tworząc naturalne pagórki. Modyfikując różne zmienne można stworzyć bardzo naturalne i niepowtarzalne efekty. Wielkość zmiennych powinna być proporcjonalnie uzależniona od rozmiaru zaznaczonego terenu.
+`//deform swap(x,y)` przewraca zaznaczony teren.
+`//deform rotate(x,z,45*pi/180)` obraca pod danym kątem.
+`//deform x/=2;y/=2;z/=2` powiększa (skaluje) obiekt dwukrotnie.
+
+
+### Schowek
+
+#### Kopiowanie i wycinanie
+Kopiowanie obiektów do schowka umozliwia wpisaniu dwóch komend (po zaznaczeniu regionu).
+`//copy` - po prostu kopiuje.
+`//cut` - po prostu kopiuje, a następnie wycina (zamienia na powietrze).
+
+**WAŻNE** zapamiętywana jest twoja pozycja względem kopiowanego regionu, więc jeśli stoisz 5 kratek przed wejściem do domu i go skopiujesz, po wklejeniu w innym miejscu drzwi pojawią się 5 kratek przed tobą. Jest to bardzo istotny aspekt przy wykonywaniu operacji na schowku.
+
+Obie komendy pozwalają na użycie trzech dodatkowych flag:
+* `-e` pozwala także uwzględnić w kopiowaniu lub wycinaniu entity (moby, leżące przedmioty itp.). Dla przykładu `//copy -e`.
+* `-b` pozwala także uwzględnić biomy (w przypadku wycinania biomy w dalszym ciągu zostaną pozostawione w miejscu wyciętego obiektu). Dla przykładu `//copy -b`.
+* `-m ` pozwala także uwzględnić konkretną maskę w przypadku kopiowania lub wycinania. Wszystkie bloki, które nie należą do maski będą reprezentowane jako powietrze w twoim schowku (nie skopiują się). Dla przykładu `//copy -m !stone` skopiuje wszystkie bloki oprócz kamienia.
+
+#### Wklejanie
+Wklejanie obiektów (po wcześniejszym skopiowaniu lub wycięciu).
+`//paste` - umozliwia wklejenie obiektu.
+Ponieważ zapamiętywana jest twoja pozycja, jeśli skopiowałeś wieże stojąc na jej szczycie, po wklejeniu będzie znajdowała się bezpośrednio pod tobą.
+
+Podobnie jak przy kopiowaniu komenda pozwala na użycie trzech flag:
+* `-e` pozwala uwzględnić także skopiowane entity przy wklejaniu (jeśli jakieś są).
+* `-b` pozwala uwzględnić także skopiowane biomy przy wklejaniu (jeśli jakieś są).
+* `-m ` pozwala uwzględnić konkretne bloki ze schowka, które mają zostać wklejone.
+Oprócz tego dostępne jest kilka dodatkowych flag:
+* `-a` nie wklei powietrza ze schowka.
+* `-s` ustawi zaznaczenie na obszar, który wkleiłeś.
+* `-o` wklei schowek w miejsce z którego został skopiowany, ignorując względną pozycję.
+
+#### Obracanie
+`//rotate `
+Pozwala na obrócenie schowka o konkretną ilość stopni, najlepiej używać wielokrotności 90 (dla bardziej nieregularnych kątów polecane jest użycie komendy `//deform`, opisanej wyżej).
+Istotne jest to, że obraca zaznaczenie względem miejsca w którym stałeś kopiując obiekt. Jeśli chcesz obrócić go względem środka, musisz stać na środku w trakcie kopiowania (możesz wyznaczyć środek np. przy użyciu komendy //center ).
+
+#### Przewracanie
+`//flip [kierunek]`
+Pozwala na przewrócenie zawartości schowka w konkretnym kierunku, np. odbijając lustrzanie jego zawartość.
+
+#### Tworzenie schematów
+World edit pozwala zapisać zawartość schowka na stałe i udostępniać ją w innych miejscach, lub wgrać schematy pobrane z internetu.
+Schematy przechowywane są w folderze `plugins/WorldEdit/schematics`.
+
+`//schem save ` zapisuje obecną zawartość schowka.
+`//schem load ` wczytuje dany schemat do zawartości schowka.
+`//schem list` wyświetla listę istniejących schematów.
+`//schem delete ` pozwala na skasowanie konkretnego schematu.
+
+
+### Generowanie
+World edit pozwala także na generowanie różnych obiektów, takich jak kule czy piramidy.
+Środek generowanego obiektu znajduje się w miejscu, w którym stoisz.
+
+#### Tworzenie walca/cylindra
+Używając komendy `//cyl [wysokość]` stworzysz walec, jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
+Dla przykładu `//cyl glass 5 10` stworzy walec ze szkła o promieniu równym 5 i wysokości 10.
+
+Używając komendy `//hcyl [wysokość]` stworzysz cylinder (walec pusty w środku), jego środek będzie w miejscu gdzie stoisz, jego wysokość jest liczona w górę.
+Dla przykładu `//hcyl stone,dirt 3 12` stworzy cylinder z kamienia i ziemii o promieniu równym 3 i wysokości 12.
+
+`//cyl , [wysokość]` dla lepszej kontroli możesz spłaszczyć figurę i stworzyć eliptyczny cylinder, podając dwie wartości w miejscu promienia, szerokość promienia w osii EW i osii NS.
+Dla przykładu `//cyl stone 5.5,10 5`.
+
+#### Tworzenie kulii/sfery
+Używając komendy `//sphere ` stworzysz kulę, jej środek będzie w miejscu gdzie stoisz.
+Dla przykładu `//sphere stone 5` stworzy kulę z kamienia o promieniu równym 5.
+
+Używając komendy `//hsphere ` stworzysz sferę (kulę pustą w środku), jej środek będzie w miejscu gdzie stoisz.
+Dla przykładu `//hsphere dirt 7` stworzy sferę z ziemii o promieniu równym 7.
+
+`//sphere ,,` podobnie jak w przypadku cylindrów, tutaj także możesz użyć konkretnych promienii, jednak dla wszystkich trzech osii.
+Dla przykładu `//hsphere dirt 10,5,4.5`.
+
+Możesz także dodać `yes` na końcu komendy, by najwyższy punkt kuli znajdował się bezpośrednio pod twoimi nogami (zamiast jej środka w miejscu w którym stoisz).
+Dla przykładu `//sphere stone 5 yes` stworzy kulę, na której będziesz stał.
+
+#### Tworzenie piramidy
+`//pyramid `
+`//hpyramid `
+Komendy pozwalają na stworzenie piramidy (pełnej lub pustej w środku), jej środek będzie w miejscu w którym stoisz. Podaniu rozmiaru np. 5, spowoduje powstanie piramidy składającej się z 5 warstw leżących na sobie, każdej kolejnej o 1 szerszej od poprzedniej.
+
+#### Generowanie zaawansownych kształtów
+World edit pozwala na generowanie zaawansowanych kształtów za pomocą wyrażeń matematycznych, reprezentujących funkcje 3D.
+Wymagana jest tutaj spora wiedza matematyczna lub po prostu modyfikowanie gotowych przykładów i testowanie, która zmienna co robi.
+
+Przykłady:
+
+Spłaszczony torus:
+`//g stone (0.75-sqrt(x^2+y^2))^2+z^2 < 0.25^2`
+Pień drzewa:
+`//g -h oak_log (0.5+sin(atan2(x,z)*8)*0.2)*(sqrt(x*x+z*z)/0.5)^(-2)-1.2 < y`
+Tęczowy torus:
+`//g white_wool data=(32+15/2/pi*atan2(x,y))%16; (0.75-sqrt(x^2+y^2))^2+z^2 < 0.25^2`
+Tęczowe jajko:
+`//g white_wool data=(32+y*16+1)%16; y^2/9+x^2/6*(1/(1-0.4*y))+z^2/6*(1/(1-0.4*y))<0.08`
+Serce:
+`//g red_wool (z/2)^2+x^2+(5*y/4-sqrt(abs(x)))^2<0.6`
+Fala:
+`//g -h glass sin(x*5)/2-0.03`
+
+
+### Narzędzia
+
+Narzędzia można zbindować do konkretnych przedmiotów, pozwalają na znaczne przyspieszenie pracy.
+W celu zbindowania danego narzędzia do konkretnego przedmiotu, musisz go trzymać w ręce i wpisać daną komendę.
+Jeśli chcesz wyczyścić przypisanie, wystarczy wpisać `//none`.
+
+#### Narzędzie generujące drzewa
+`/tree [typ]`
+To narzędzie tworzy drzewa danych typów podczas gdy klika się nim na blok. Używa minecraftowego generatora drzew i ma te same limity - nie wygeneruje drzewa na bloku, na którym nie może go posadzić lub gdy w miejscu gdzie mogłoby powstać, znajdują się solidne bloki.
+
+#### Narzędzie usuwające latające drzewa
+`/deltree`
+Po kliknięciu prawym przyciskiem na latające w powietrzu bloki liści lub drewna (powstałe na przykład przez graczy ścinających tylko dolne części drzew) usunie wszystkie połączone bloki drzew.
+
+#### Narzędzie zamieniające bloki
+`/repl `
+To narzędzie zamieni kliknięte bloki na bloki z twojego patternu. Możesz także kliknąć lewym przyciskiem myszy by zamienić swój obecny pattern na kliknięty blok.
+
+#### Narzędzie do budowania na daleki dystans
+`/lrbuild `
+To narzędzie pozwala na zamienianie bloków na które klikasz. Jeśli klikniesz lewym przyciskiem myszy, bloki będą zamieniane na pierwszy pattern, jeśli klikniesz prawym, bloki będą zamieniane na drugi pattern.
+
+#### Różdżka na daleki dystans
+`/farwand`
+Działa tak jak `//hpos1` i `//hpos2`, jednak za pomocą lewego i prawego kliknięcia myszy.
+
+#### Narzędzie do obracania
+`/cycler`
+Narzędzie służące do obracania (zmieniania stanów) bloków na które patrzysz. Dla przykładu możesz spojrzeć na schody i je obracać.
+
+#### Narzędzie wyświetlające informacje
+`/info`
+Po naciśnięciu prawego klawisza myszy, wyświetli informacje na temat bloku na który patrzysz. Wyświetli koordynaty, stan, typ bloku, poziom oświetlenia i ID.
+
+#### Narzędzie do zalewania
+`/floodfill `
+Narzędzie zamieni kliknięty prawym przyciskiem myszy i wszystkie pozostałe połączone bloki tego samego typu, w danym zasięgu, na wskazany pattern.
+
+### Super kilof
+Super kilof działa inaczej niż pozostałe narzędzia, ponieważ jest włączany i wyłączany komendą, odnosząc się do wszystkich kilofów. W przeciwieństwie do normalnych narzędzi jest wyłączany za pomocą komendy `//`.
+
+#### Pojedynczy super kilof
+`/sp single`
+Pozwala natychmiast niszczyć bloki.
+
+#### Super kilof na zasięg
+`/sp area `
+Pozwala natychmiast niszczyć bloki tego samego typu co kliknięty, w danym zasięgu.
+
+#### Rekursywny super kilof
+`/sp recur `
+Pozwala natychmiast niszczyć bloki tego samego typu co kliknięty, w danym zasięgu, jednak tylko te, które są **polączone ze sobą i klikniętym blokiem**.
+
+
+### Pędzle
+Pędzle są głównie narzędziami stworzonymi w celu modelowania.
+Binduje się je do przedmiotów w ten sam sposób co zwykłe narzędzia i odbindowuje przy pomocy komendy `//none`.
+Po kliknięciu PPM, w miejscu na które wskazujesz, wykona się konkretna zmiana, w zależności od pędzla.
+
+#### Lista pędzli:
+* Pędzel tworzący kule `/brush sphere [promień]`, kule działają w ten sam sposób jak te generowane za pomocą komendy `//sphere`.
+* Pędzel tworzący cylindry `/brush cyl [promień] [wysokość]`, cylindry działają w ten sam sposób jak te generowane za pomocą komendy `//cyl`.
+* Pędzel wklejający `/brush clipboard [-aoeb] [-m ]`, działa w ten sam sposób jak `//paste`, pozwala na używanie flag.
+* Pędzel wygładzający `/brush smooth [promień] [wykonania] [maska]`, działa w ten sam sposób jak `//smooth`.
+* Pędzel grawitacyjny `/brush gravity [promień]`, układa bloki na ziemii zgodnie z grawitacją w obszarze na który wskazujesz. Dla przykładu, jeśli użyjesz `//br gravity 10`, latające bloki w promieniu 10 od miejsca na które wskazałeś opadną na dół.
+* Pędzel gaszący `/brush extinguish [promień]`, gasi ogień w danym promieniu.
+* Pędzel zabijający entity `/brush butcher [radius] [-pngabtfr]`, pozwala na usunięcie konkretnych entity w danym promieniu, `-p` zabija oswojone zwierzęta, `-n` zabija NPC, `-g` zabija golemy, `-a` zabija zwierzęta, `-b` zabija moby pasywne, `-t` zabija moby z tagami, `-f` łączy wszystkie powyższe flagi, `-r` usuwa stojaki na zbroje.
+* Pędzel deformujący `/brush deform [rozmiar] [wyrażenie]`, działa tak jak komenda `//deform`. Kszałt to dla przykładu `shphere` lub `cyl`.
+* Promień podwyższający `/brush raise [rozmiar]`, podwyższa wszystkie bloki o jeden.
+* Promień obniżający `/brush lower [rozmiar]`, obniża wszystkie bloki o jeden.
+
+#### Ustawienia pędzli:
+* Maski - opisane w dziale maski.
+* `//size ` zmienia rozmiar pędzla.
+* `//material ` zmienia pattern pędzla.
+* `//range ` zmienia promień działania pędzla.
+
+
+### Dodatkowe komendy
+* `/removeabove [wysokość]`
+Usuwa bloki nad tobą na konkretną wysokość, o konkretnym promieniu.
+* `/removebelow [głębokość]`
+Usuwa bloki pod tobą na konkretną głebokość, o konkretnym promieniu.
+* `/removenear `
+Usuwa bloki wokół ciebie dopasowane do konkretnej maski, w konkretnym promieniu.
+* `/replacenear `
+Zamienia bloki wokół ciebie dopasowane do konkretnej maski, na bloki o konkretnym patternie, w konkretnym promieniu.
+* `//fill [głębokość]`
+Wypełnia (zalewa) bloki tego samego typu w konkretnym promieniu konkretnym patternem. Działa tylko w dół i jedynie na bloki znajdujące się pod blokami tego samego typu na wysokości wpisania komendy. Pozwala na wypełnianie np. sadzawek, jezior.
+* `//fillr `
+Działa tak samo jako komenda wyżej, jednak wypełnia również bloki po prostu stykające się z zaznaczonymi. Pozwala na wypełnianie np. jaskinii.
+* `//drain `
+Usuwa bloki wody i lawy w konkretnym promieniu.
+* `//snow `
+Pokrywa teren w danym promieniu śniegiem.
+* `//green `
+Zamienia ziemię na trawę w danym promieniu.
+* `//ex [promień]`
+Gasi ogień w danym promieniu.
+* `//butcher [-pngabtfl] [promień]`
+Pozwala na usunięcie konkretnych entity w danym promieniu, `-p` zabija oswojone zwierzęta, `-n` zabija NPC, `-g` zabija golemy, `-a` zabija zwierzęta, `-b` zabija moby pasywne, `-t` zabija moby z tagami, `-f` łączy wszystkie powyższe flagi, `-r` usuwa stojaki na zbroje.
diff --git a/worldguard.md b/docs/worldguard.md
similarity index 100%
rename from worldguard.md
rename to docs/worldguard.md
diff --git a/yflsmp.md b/docs/yflsmp.md
similarity index 98%
rename from yflsmp.md
rename to docs/yflsmp.md
index 6b73c3c..8708582 100644
--- a/yflsmp.md
+++ b/docs/yflsmp.md
@@ -87,4 +87,4 @@ Jeśli występują problemy z dźwiękiem, należy włączyć i wyłączyć `HRT
```
/kill @e[type=deeperdarker:stalker]
```
-- Nie można respić Poltergaista, jeśli go zrespimy niektóre chunki mogą przywrócić się do stanu pierwotnego
\ No newline at end of file
+- Nie można respić Poltergaista, jeśli go zrespimy niektóre chunki mogą przywrócić się do stanu pierwotnego
diff --git a/mkdocs.yml b/mkdocs.yml
new file mode 100644
index 0000000..c3d7504
--- /dev/null
+++ b/mkdocs.yml
@@ -0,0 +1,16 @@
+site_name: Craftserve
+repo_url: https://github.com/Craftserve/docs
+theme:
+ name: material
+ custom_dir: theme
+ logo: img/logo.png
+
+extra_css:
+ - stylesheets/extra.css
+
+extra:
+ analytics:
+ provider: custom
+
+exclude_docs: |
+ todo.md
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..1526ef1
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+mkdocs==1.6.1
+mkdocs-material==9.5.41
diff --git a/theme/partials/integrations/analytics/custom.html b/theme/partials/integrations/analytics/custom.html
new file mode 100644
index 0000000..0e2dccb
--- /dev/null
+++ b/theme/partials/integrations/analytics/custom.html
@@ -0,0 +1 @@
+