From 56575134d2975d1c2637a6e86e6d4f11bf40b290 Mon Sep 17 00:00:00 2001 From: Pengu Date: Sun, 28 Apr 2024 13:15:54 -0500 Subject: [PATCH] Wrap up Docs --- docs/README.md | 9 +- docs/common/java-install.md | 153 ---------- docs/common/pterodactyl-manual.png | Bin 81015 -> 0 bytes docs/common/pterodactyl-prompt.png | Bin 109523 -> 0 bytes docs/diskcraft/README.md | 10 - docs/diskcraft/getting-started/README.md | 214 ------------- docs/diskcraft/how-to/configure.md | 212 ------------- docs/diskcraft/how-to/install.md | 76 ----- .../how-to/per-world-configuration.md | 98 ------ .../diskcraft-global-configuration.md | 226 -------------- docs/diskcraftmc/assets.md | 31 -- docs/diskcraftmc/ccn.png | Bin 86134 -> 0 bytes docs/diskcraftmc/contact.md | 28 -- docs/diskcraftmc/downloads-api.md | 4 - docs/hosting/README.md | 6 - docs/hosting/configuration.md | 58 ---- docs/hosting/getting-started.md | 56 ---- docs/lethalextended/README.md | 3 + docs/lethalextended/getting-started/README.md | 87 ++++++ docs/webshare/README.md | 29 -- docs/webshare/developers/README.md | 4 - docs/webshare/developers/api/command.md | 157 ---------- docs/webshare/developers/api/event.md | 280 ------------------ docs/webshare/developers/api/scheduler.md | 71 ----- .../developers/getting-started/api-basics.md | 129 -------- .../creating-your-first-plugin.md | 120 -------- .../developers/getting-started/pitfalls.md | 36 --- .../developers/how-to/dependencies.md | 85 ------ .../how-to/porting-from-velocity-1.md | 37 --- docs/webshare/getting-started/README.md | 138 --------- docs/webshare/getting-started/faq.md | 106 ------- docs/webshare/getting-started/forwarding.md | 105 ------- docs/webshare/getting-started/why-velocity.md | 89 ------ docs/webshare/how-to/migration.md | 15 - docs/webshare/how-to/security.md | 142 --------- docs/webshare/how-to/tuning.md | 149 ---------- docs/webshare/reference/commands.md | 68 ----- docs/webshare/reference/comparison.md | 90 ------ docs/webshare/reference/configuration.md | 92 ------ docs/webshare/reference/libraries.md | 31 -- .../reference/server-compatibility.md | 90 ------ docusaurus.config.js | 36 +-- sidebars.js | 17 +- src/components/Projects.tsx | 8 +- static/img/logo.png | Bin 0 -> 102366 bytes 45 files changed, 118 insertions(+), 3277 deletions(-) delete mode 100644 docs/common/java-install.md delete mode 100644 docs/common/pterodactyl-manual.png delete mode 100644 docs/common/pterodactyl-prompt.png delete mode 100644 docs/diskcraft/README.md delete mode 100644 docs/diskcraft/getting-started/README.md delete mode 100644 docs/diskcraft/how-to/configure.md delete mode 100644 docs/diskcraft/how-to/install.md delete mode 100644 docs/diskcraft/how-to/per-world-configuration.md delete mode 100644 docs/diskcraft/reference/diskcraft-global-configuration.md delete mode 100644 docs/diskcraftmc/assets.md delete mode 100644 docs/diskcraftmc/ccn.png delete mode 100644 docs/diskcraftmc/contact.md delete mode 100644 docs/diskcraftmc/downloads-api.md delete mode 100644 docs/hosting/README.md delete mode 100644 docs/hosting/configuration.md delete mode 100644 docs/hosting/getting-started.md create mode 100644 docs/lethalextended/README.md create mode 100644 docs/lethalextended/getting-started/README.md delete mode 100644 docs/webshare/README.md delete mode 100644 docs/webshare/developers/README.md delete mode 100644 docs/webshare/developers/api/command.md delete mode 100644 docs/webshare/developers/api/event.md delete mode 100644 docs/webshare/developers/api/scheduler.md delete mode 100644 docs/webshare/developers/getting-started/api-basics.md delete mode 100644 docs/webshare/developers/getting-started/creating-your-first-plugin.md delete mode 100644 docs/webshare/developers/getting-started/pitfalls.md delete mode 100644 docs/webshare/developers/how-to/dependencies.md delete mode 100644 docs/webshare/developers/how-to/porting-from-velocity-1.md delete mode 100644 docs/webshare/getting-started/README.md delete mode 100644 docs/webshare/getting-started/faq.md delete mode 100644 docs/webshare/getting-started/forwarding.md delete mode 100644 docs/webshare/getting-started/why-velocity.md delete mode 100644 docs/webshare/how-to/migration.md delete mode 100644 docs/webshare/how-to/security.md delete mode 100644 docs/webshare/how-to/tuning.md delete mode 100644 docs/webshare/reference/commands.md delete mode 100644 docs/webshare/reference/comparison.md delete mode 100644 docs/webshare/reference/configuration.md delete mode 100644 docs/webshare/reference/libraries.md delete mode 100644 docs/webshare/reference/server-compatibility.md create mode 100644 static/img/logo.png diff --git a/docs/README.md b/docs/README.md index 3005db6..c1f1764 100644 --- a/docs/README.md +++ b/docs/README.md @@ -4,9 +4,6 @@ slug: /intro # Introduction -Welcome to the official source of documentation for the DiskCraft -project. - :::info This documentation might have missed something, so we'll try and keep it updated as much as possible! @@ -16,8 +13,4 @@ This documentation might have missed something, so we'll try and keep it updated ## Getting Help If you're ever confused or need help, do not hesitate to join our -[Discord](https://discord.gg/pVH5EMeeEE) for support. - -## Purpose of DiskCraft - -DiskCraft was created between two companies who needed a billing system and didn't want to pay a ton of money for one. DiskCraft is free because it can be! It's a good solution for Pterodactyl hosting and VPS hosting, and isn't the worst. +[Discord](https://discord.gg/BkmEarDQxq) for support. \ No newline at end of file diff --git a/docs/common/java-install.md b/docs/common/java-install.md deleted file mode 100644 index 250f712..0000000 --- a/docs/common/java-install.md +++ /dev/null @@ -1,153 +0,0 @@ ---- -title: Installing or Updating Java -slug: /java-install-update -description: How to install or update to Java 17 on Linux (apt/rpm), Windows, or Mac. -toc_max_heading_level: 5 ---- - -Installing Java is a critical first step to using or developing plugins for Paper, Velocity, and -Waterfall. This guide will walk you through the recommended installation steps for most major -platforms. - -:::tip - -This guide focuses on Amazon's Corretto OpenJDK distribution. This is because it offers the best -installation experience on the most platforms. Corretto is, however, not the only OpenJDK vendor to -choose from. Many alternatives exist such as [Eclipse Adoptium](https://adoptium.net/), -[Microsoft](https://www.microsoft.com/openjdk) and -[Azul Zulu](https://www.azul.com/downloads/?package=jdk). Note that the JDK Oracle distributes, -while functionally identical, is **not** recommended due to an extremely unfriendly installer and -previous hostile licensing. - -::: - -## Linux - -### Ubuntu/Debian - -Installing Java 17 on Debian-based Linux distributions is very simple. First, ensure your system has -all required tools to successfully install Java. - -```bash -sudo apt-get update && sudo apt-get upgrade -sudo apt-get install software-properties-common ca-certificates apt-transport-https curl -``` - -Second, import the Amazon Corretto public key and apt repository. - -```bash -curl https://apt.corretto.aws/corretto.key | sudo apt-key add - -sudo add-apt-repository 'deb https://apt.corretto.aws stable main' -``` - -Then, install Java 17. - -```bash -sudo apt-get update -sudo apt-get install -y java-17-amazon-corretto-jdk -``` - -Proceed to [verify your installation](#verifying-installation). - -### RPM-based - -To install Java 17 on CentOS, RHEL, Fedora, openSUSE, SLES, or any other RPM-based Linux -distribution, execute the following commands depending on your package manager. Once you have -finished, precede to [verify your installation](#verifying-installation). - -#### DNF - -DNF is used on Fedora, CentOS/RHEL 7+, and related distributions. - -```bash -sudo rpm --import https://yum.corretto.aws/corretto.key -sudo curl -Lo /etc/yum.repos.d/corretto.repo https://yum.corretto.aws/corretto.repo -sudo dnf -y install java-17-amazon-corretto-devel -``` - -#### Zypper - -Zypper is used on openSUSE, SLES, and related distributions. - -```bash -sudo zypper addrepo https://yum.corretto.aws/corretto.repo -sudo zypper refresh -sudo zypper install java-17-amazon-corretto-devel -``` - -#### YUM - -YUM is used on older releases of CentOS/RHEL, and excessively old releases of Fedora. - -```bash -sudo rpm --import https://yum.corretto.aws/corretto.key -sudo curl -Lo /etc/yum.repos.d/corretto.repo https://yum.corretto.aws/corretto.repo -sudo yum -y install java-17-amazon-corretto-devel -``` - -## Windows 10 & 11 - -If you're on Windows 10 or 11, installing Java is just like installing any other program. Download -the Amazon Corretto installer from -[their website](https://corretto.aws/downloads/latest/amazon-corretto-17-x64-windows-jdk.msi). - -Once you have run the installer, it is safe to click "next" through the whole process. No additional -bloatware or toolbars will be installed, and all the required features are enabled out of the box. - -Now, open a command prompt and precede to [verify your installation](#verifying-installation). - -## macOS/OS X - -If you're on macOS, the best way to manage Java installations is with a tool called -[Homebrew](https://brew.sh). Follow the instructions on their homepage to install it. Then, in your -terminal run the following command: - -```bash -brew install openjdk@17 -``` - -Once this command has completed, continue to [verify your installation](#verifying-installation). - -## Pterodactyl - -:::note - -On Pterodactyl versions lower than `1.2.0`, an administrator account is required to change the Java -version. These instructions will not apply. - -::: - -If you have started a Paper server with an incorrect Java version, Pterodactyl will automatically -prompt you to update like this: - -![Pterodactyl Automatic Prompt](pterodactyl-prompt.png) - -If this does not show up for you, the Java version can be manually changed. Navigate to the -"Startup" tab of your server, select `ghcr.io/pterodactyl/yolks:java_17` from the "Docker Image" -dropdown as shown in the image below. - -![Pterodactyl Manual Java Version Change](pterodactyl-manual.png) - -The Verifying Installation section does not apply for Pterodactyl. - -## Verifying Installation - -Now that you have installed Java 17, run this command in your terminal to ensure the process was -successful. - -```bash -java -version -``` - -The output should be similar to this. The important parts to look out for is that it starts with -`openjdk 17` and contains `64-Bit` in the last line. If the output you get is similar to -`java: command not found`, try creating a new terminal session. - -``` -openjdk 17 2021-09-14 LTS -OpenJDK Runtime Environment Corretto-17.0.0.35.1 (build 17+35-LTS) -OpenJDK 64-Bit Server VM Corretto-17.0.0.35.1 (build 17+35-LTS, mixed mode, sharing) -``` - -If your installation has failed, do not hesitate to reach out in the `#paper-help` channel of our -[Discord](https://discord.gg/papermc) for support. diff --git a/docs/common/pterodactyl-manual.png b/docs/common/pterodactyl-manual.png deleted file mode 100644 index 0528500b2fc6c18799999c839e218af7fdef767e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81015 zcmeEt^$wvF#qe zb?^NH?r-2Ckd#SRbebtJ@)z(}{BD#tV_A>sG!yw?xf9*k9_JTkd+ ztL#&3!X0wemiAK=%>^WpQM zY+R1`F*GTCffi3Fu!&rSxBTwQ95G8eCbC})nHfDS2z=(;TdseIPnx9Czfe+B6Xz10 zg{GZ1;N@>uNpdt|#j%!(;d}{4crSb8vwo%>p`W_j3dTyjfp8%Xn7{SVDZsu}CjUJ|X{lA&Gpu*by8+C)GHhUk7FTkk3G=&>ZPdzRp! zMVHG-X5C`6D_-&iPej7R%(CbyU}FxpQNP3=bxwZLq}cExe=739ulglbYHrOeXEs9> z`sMS<|D`hD0$8cpYQHnjXXf>4U@q4|SZ%TPD`0rXj>@v8UzfKb&{KPkPgGHgt zMTzR+EdOT_9sgG55Uz-|yQ>k8SY-_oIEdp7XVcdE?;Us7KUB=3p_KW?ryip>MIbq} zM$$#<^%MTEtFllI^wGuT#ELga&heW7xKjR!rs|uc6IHbQD#XhpibYh@F5dLM=d;HF zgb~uVcOR5D`FYBiWvPZp=_WCymBvu;4Q|Fo>GpiC!W;cS{OT4(-`fGaWI2&X2=7Us zpQ0PD#s1vp=(~OUPvIER@M~HcvQCHF&+ml3WWlS+^M8t8aQhA3sbyFlvV@|Kfrf|X zTOxjrd=^3eOWvR~(m`@kf3*nLNJ8jUpbLoB` zuWd@D775!tMohO;uG1?*QF{-yR}dp?Q@XUDm&k;v?WmApI@6Xlv5u~mpAp|@@xA5T zwTnj~`Ek-Ft=i_HR9$lpaV1>N{RsbP{UvBr_QpeBh7yv}q}Srz9Apr;L0G)OB?1bp zv2E5%VI6d+`7XCQ3a0q=zjlK~;}}q164qmaixdh2*Usa(`qT>?QWQ75a$i*N^9q z2+8F*zum9k{<3HGu=rED73lfBBCESbgd!h!tR!cM&pv+6B@z0R{D-^o4*XN*9~m?0 zgFlqp_fT?7pPsOM3HwbZ-$hid#6Tw6Meso3SAru8NJVihky|0AFEPC@sPM7zSC^Od zPxbrw`n19<)W)=T-d%5n1ih;0yL3c*pQPOU{?$zZ@4XK^*P3mSd+^OOEy~Y+C7Ys<~t_5902~-VT3}nxObi z^*LJ#nJ;!B*0z7d}rOj#A$==D$X~pTClQn`FA%Ku}>Yap_wY}MU=9~!Y4_P-7 zfJ$YzX0?7^c-j8Sjs0A^j-x&WPnDT9Qy^YPvn($wPb#-n*U+%x&AC2P0k00U!U7)h z64QERa~iM5SdI_TVAO)>rfGwSj#LV6!HaCdvpm=TpaVggL?n zaa@0uA12u^K(85$W9ixtL@-s>d# zM11ES>%D7YH@YAJTe>jXO&YjRrC^Zb7kY7;SpE#By4md*?dcbbZ?Tzd~^Gww&fldN}a(%&`p)Xdh*BL|)8Ce5y#xC5eMsh&>0*a9d1a{aiHL1Elw$>FDdP7FQzO>Ej}&Y z0eUOU?AnDS+foYhIr8rJnO*T**6;O6aZYspyk{y(Aev+Pb)FcU5!iUma2{|j3W@{W zjvoSnrFL=(q^bQy0z;0_XGsB*em()F{w0C#C+!CXdlXx>6I-o(KSjI1aqa~uWm&$C zppMTWp;wZZTNkJ!6wNzHofn?HeI>W3ZY_Lpz2*9G@W;sy*hg2nO}T|!WG?&9)Sowh zvVZa!omIL_SxoIcN_+IKFEN4CMfQx_SNAy;9hnLF9Cf`#S``V3)eg=L%e&8<- zT`>{GuV2~ftt0#987N5Nb-Q;!8`4fwrQ_NYrC&;kwYBmY^NU7_3r0r^l&V0OCp{8M z47${W*5cI_HcUOUJsOeMK13es3*VynN7l^O9D1N?x$NqyGs%Bt_*p#sS1~LtEdDxP zHTLL>_40L6jy#SEow=Sk8cFB2`ODXKso%sjj zY-Zmah4{g%)hZdujmacM6l1z$=Y^r0J)T@m(zIDIv9ya)BJPYRO4)B6Vapu%A61gK z_7U}&L1q&v6A%&=x-=}@6uyx&`Na96vx&2&HL~knoBPO}5sm&uXh~{X4p^`9*)SP2 z$3?<_ZrvcVpwMVcq}v@i$FVr}d`FX(IrB-y$n@9ns{v2R%U73cpMHFb`m|KmuS=>i zp2L>o>)+gY!a8pGIE)%Ag%ACiIVv?CwAq>-?@(>;ni)Gd{B2RH*K_!j_<`56&BGk! z^fW8XgGE88;sf@E*bI7mr%B4E+uD z5BQgATj^k_hTucSj`Q92-@&KCn!@vEf@f(UJc4xs3v3d00QOm%Ad~cxpnfZkHAe5o3v!LwvA4h6VmM-TZAf1M#|Xd}2$X`F|C(k_*fB zY^VB5hLST-P`bd~o*n)Y(_w{d@lcVQ{W7mgFZN-AEcezw;FWDfXtYmSEAOPmS!>X` z=*V(hogZSt;;3CGbn@Iuey?w8ZTb^DyA>3G*(V;3RTH&wt6x%W_SrhSn0EzVfF%w$ zmx8^j{#Yzynn>@Hs)C%PxdUx)O3~o!)df2F3;Q_~ozot`7I@Ya{L^dh zxQ5!EuUuk5f=;qivZ|foyaoeV*S9o0Vwwwe335HZ`V0LTYH+5Tg)AP{TTc6tqUyeWC zVAOl6;O8(ySNT$uxM$@Lf%cMC$G}l9=sELWJlQkc?Qrw>?~gw#y5rsA>r+vX)AO6# zUj%zI%!bTd?tUS8DM}~4^%C!n+=nM}FSfG!)BWZ4f~QRSO$dz9qerSO7P31tTxwiZ z-YjYXCU>h4?nUXMAG6*L(+-N?VoCHGepxV%)&8Ma-Ezwp|4AluJ5(tmFEsa%ybLI2nO z?_sR}y%+C8?o+D=|MTvN<9(z5RWhA9QObHOn$Udy+vrA>ewsYyC%T<3n%-2=Rbe>!5>yrQ&Uos zhQY(TpLz))pR)Sh+uif^>(}}Qu(!8w$bzhh3@iSj;}dX6W9f5FPMxGe z!>WqC-MtNVeNKJsr@M5pVt9LAM+da+&g&#w5<)dCEw3gsKF*3P%`I+RhSB)y z)l3_cmzrY55VDV^c7BhZ&fd~f3Z7(RbA~K0w?e3R*3_`71YBNCZkNV#$>15=D=9ga zmbJ8$lr^QdeFV>C1jsfDqAd*qoRk8b8oL)J7sqE7=4KWI^a-DeusIzdH#i|D`MalU z4iMDV9?a4lM8Wv3L6U??a_Hy7)R}MJwo6Mlr>2&c#7Q{p?Cdktd*JZH&D2!d30WCQ zrAOXmWK$`Hg=H3u^tBy-n=iM9aCy^5=k5!VcuCC&9#Q1|zKS~Hl zcfCy-=FL5h4K!SNdZ|OG{2Jz^MMS2imzQTIPHwsvyg#`ZHB7mPs3qAFlXe(**rbMP zWZ8)u8(T76rpjL)^_wPSLeom7_Y}#@joTMCJWtQhEn7W(9336u@T4S`yR7z2ZbKQ{ zrO#E8$SGE}vZZ?|aq{(*bwZ--rb&hE?d=8ZnwmaC7;Fi&bkZqp;B-SY{J>Z8`T)Pd z{T%-N`}Z=F02><{3_iX-pXKD#WZQ_l9SNanb*p+33-Il8%bS?alNAb{WBB1=a>>X= z&`2@y-rCygrtN7}ldDD>6Y6Amdo3X&>p~5863)@Dl5fWh3?OQ_8Sa`d-Y=ZTuz!ihonplIah$vh0ms$+$|=3EF39oSIMkJt|hIV7ApmzOg%h(n+5a!lJ@DX04L6 z?|U7MELYab84RIVSy|bz8z}C$Qn$oi?9<4-x3jnHi;a4Ba&lIO0Q*Ua+c$vE&mIA@ z<4$)klw5>I*k?Isv6`QMDI0AP%f>5mRx3|H&0}_Pgn8feluISaqN*g9;Jsk3!F8>> zM)B`5-$p4W$D2F4QsRb#6xq%zE2$@Sb?=s%d`~&EHMv3?-c3ElySwD@bb9X;II3Dy zw5+7}n?t+IgH!u_LZz%HwNJ4Tsv2&`@xL?lxzyBD)s+gA$@D8G4Jv$=56xMlsYfRD z1r$mMk?s?kS!AHLWV0jLmsHWlAyz_kC1ok=Arc4^>7n_*D=%n>#+Q{JiCjEtba*fY*koi_@~ii~p|vJ#xCCFA}Kx3e`HO5d;i z3=VWy{x)&#ae7pX&C3cBi+boV6UJd_k=pGE!Ta#!vhUhogKZp%-pFs!1@TIY2?oq#)^? zz0AREdOEr*dfY1Ytl@F;&)nr^|759$#+&cOl$4ZG&YhJCJhtj#a=7xJ2Q(kG^78V= zJKnmuxV(3qSyRae{_>xzKKD`)peE!*7@VD+LOZEmhVZ z*>O?8WLsFGlJuB~slj&xJuvNF)4Q1o+1SYcA|xbYu+YltIb2dyoXW!k+1fDWPK`M^ z`NMmQVj+%99W|O<5|2@1+-HOZnd?%#i+v)^jrXVRvd_UNgT3Z3CN2&n?eR*1YlD_P z4Q}S@>YR)#n{DCX3pQ~A%6vfXgLZ2h>ll0_o(Jfw`7{ZMT0Pgn5fF z@$#y%v9Z2=r59wDg+sW#%zRU(N4v9wg|gj(D1DZLCTCM_$776GyLzKT(&-!AA{~oZ zRGvM1W>{qyL3l2-!>|GI6A%>e{#Y0YaRz;sLxqwdhmq)xnpi+pUakE70co3i7j#Qs za`RoqxVSs}pvzt(7$>LfP~v#3uIpY{0?4poP~(FW_>OmT<)FH(vnfEY!h6$2#b8ENO9G6g5*5qW$wz*|7H|-}8|ZV81ve>_&{k zqvmUBR?2hPf(isH{*$JKnQw z5720Ok z!*KTbg=91pubE!so20_CxVYWjjHD#%;MWlgx!{&X;Bi!yS1`%??_%yEQ+YMiG$wa? zrZxHaOgBB7=rS{^EIJMoA=+3)U``>7xRL2zB;f_c^@mg0l2}xFVPRLzm`?nicnk(( z$mMo&a`N8bjx8{4Jky5OO0#m71?#ze%m2Wl(s^!eXnv@+w}V${2x$jdOK& zc22`BfS#z^KJEsV3b|Upj8={R1awbch^nwtZMJxz+uD^6Te3<{OKVL~(~!NhvwMf< zLGuVKB{jv?!H!eXbkPm$?v6@7rcP-vMP^elG4ZAPdNrHLfBx(+3|+4ED$y(fdgi~; z+gr90>d$Lt^hVFiG1I*@2(Q3Q#p1z3t8}4=U2P0fu!8xc~lkm;&-(&ZtX*JmFTwh2D zcwP@L_7oTUo9@O$y;$Ea9l9oNKrJlR+tr#Bc(fbSu_H}YR6T2cS|#k2QVtB5@lOBv z@#E`&VOUsL@!WP8!WjS>UE0244EXr?)KzBsabDynR|!M(B45J8xwu9WM@N<8p%>hq zK#Q#~gb8h*u3`X$X*gLG9Fkl&k)qFK@H$CIN-F50rC=#jrqLa$TI4ClU>S6J+S0g6 zp!a8`1gK!F-O;B}0#6JfX>f~UV{VK)JHtZ5wAG8o#Y6XaMoR!hSy%Ttzab_f2?6h4 z4Azt6H8f})KAjAJ5f_g-PF0yx&{I6qX-Y}s0iIB7Y%FlwFK(O#E3#9B`^v32!(*;vuDce@ zB?{?|rrOwC|MF!!r6G$kJ9~@Q>~UxpbZTPQb-r@y{eR*_SMzL73dsid+OY7J#X~P@ z-hevaGt{iBK>9j5w{@3?gLim1;2Al}w}s#y0niqvrl&>OiT8hf`tPB6f=jmwMA!U3R&Q z316n*gYfZO{$#(-&u509z)fZ)!{%2z)XUGI3vI#2=cES^mYtsk?5D9qTmz~F`OF)? z&Prr2=Up?WH*DL;WNz4(Wm!PD9WCrxPxdvH*9;SGi)n!A@^tyiBTzZ5*ZmT+e97Z~ zvBre$*E*D?lbw>Ruf#Qtkf)}tJ&6@-$yVKLl z)Pt$)malj3CMJ?4u`D)wZB6bu%~gBZmH(^pHon)h$6M6gM!(1B2jXtywH}|1DBsL0 zfY=-6dDv|IXlQB4_T>Gz_1c}U>$^k)qu0-@UDOBLrCX%2nhIa^i*(BL%D-)IQ*I1E zFiD&cq^$rY<&_c6emv|{eAf8sQ}@bjxIu-kZj!9{_hp-xZKIA0Z8j~+Ub>*z%;ao@ z{iLcaSnXBNP4i?$TUtS_5x1$R>*GC#A6lM2w2E{TjWDW-)vm|I>xC@wo~%q=8w06# z>)wri)lNt&30iVOC@CrhwD!sa6C8dp&uw3;>@l`e2Ov{XxMfL@z=E}Q#UyZ1jxY9? znx1iUtHUm^0IC#bwZqH_FPYBPIy(SRDn1DSG|bG*GQbrI@SEvLb%3XbffL#_0*0qH1%I@hzl^kk}(1%XAvvw+qZ8`V(oAKCa%~%1gI8uyjM*v&~af? z@BP^WTQ#WQ&+l;=rc?#hVpEpi3DGsU%o!QI`EyK9cXEZUvAYs=UQBqjh_+K3Naa2C z^Lm;2d&isL>>xHa^5`N~A{$=%{r!CEP;Hs{nzar1UW`n zZjv}y?yVAePJcykFXZf06pGs);Oh|IKN>5i^#8;^^6=OdB~4a>0g#VU z{;7kdr2hnqr|Ih=9bzJ);o_czfk+eBQmvP=w_ZxkVv#|`Gv>G{Zr^>MkqR9)7$ zZ{Oc7a-u{TWPGoBJIXYmgXi(7~Pb1-6r8w_%6g zzL-GrsY(+>qhn$XRg(KGfYd2z#VxiJ6qQEfvbn|;xO%HRe6QEowdjoF@$vp11`pmE z*xo+cjP9IfAzImvq>#mgkAz;4LZL11wWXSD_6+tE1P9!}-o8FQ-oA0MvCG|GzlI$y zBF4{2vK>QWV`5HDPiI|{YvofPQ%CzWt+Ntz$-0V|syREmnlJwNlk51~eW_7yc5trN zE8Gzde7_FSaDH;qXvTY)K9K@6G~{x#766iguJf!x*qqnU-Q67kNHozUlTN^}|7m=5 z=rZ?RCV)A;e|y`}%S%mJxnxnsLI%(sq+i94)6>u-5PmSIFfZSpvTU>ddSm72_&Vhg z>A*m0WRqhs1~Vy)AdZb)&1C87X4nRP+#^J}I#ySxJ6il3;)t5-@U88g;~hUXR2lQ36T=533{?^ai+o%dp4 z%1SB8uRLpNE2HTDp^ku!hvNz+^#H@a3cGjN5MybbpHIbSBD6Nv=(O>$$qHzKfN8v& zF_$`J;PGp7i|4)&E4o)2!U{Wqtbxm+D;QC4d|7DR54+qCt zI+5;SC0HUG&^A7Q{=E8p`}9g$a#_rYF4i6(<@utn?;T6q^ZvE}Alu0(PrF3jGChE* zM`Ib&284x#Smww2@SDkL=}!hRkY zi0(`6((E1Dydvl<$_?pg%@WgV``JGk8}W&W+We<1ydqOjhCk5{sj1etBJI_cl^wji zfDv1Iqu$ufe2?sEJcC@kTN}jM>+6c-choI{_%9q@e);(@1$At5j<< zZva(Zz}-6odWAx3*N%5ihu^y;dkO!uAkW|hD2}Q9+_d9JHjPRPj0o1(1)pO(!?kiE z9RTD8lJRH5ft#$QnyvW5gK@uQJTznjkC0l}O%xVj0IltBrDhT`lMzn-J3{nyj0hiZ z?|KA6w4vUz#a|hFy*fEPDU2382g$&LjHL|&I}d!PCq*ZwCPhVrqtE<3v{%qY$6!4L z^WZl0Zf(c`UFaB?V8ZrbZ;zgyUYEr9kLH_F`902EtFUhYRDe0_{e>aGp*kZ}c7HPv

bxipvTj91W|Pa4 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 @>aYe6r={^&max#Tm?f?DD$XjDiiOu?*whNRI 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 diff --git a/docs/common/pterodactyl-prompt.png b/docs/common/pterodactyl-prompt.png deleted file mode 100644 index f26d04c9c20c72c54b2a95310bd8884101efe67f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 109523 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 z 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 QIE3u>b+u~+SB;t<8 diff --git a/docs/diskcraft/README.md b/docs/diskcraft/README.md deleted file mode 100644 index b719438..0000000 --- a/docs/diskcraft/README.md +++ /dev/null @@ -1,10 +0,0 @@ -# Welcome to the Dino Wiki - -Dino is a simple open source billing panel for hosters, -it offers easy integration with Pterodactyl - -:::note - -Dino Is a re-brand of DiskCraft, you may see terms (Links/Files) that reference DiskCraft. This is normal and can be ignored. - -::: diff --git a/docs/diskcraft/getting-started/README.md b/docs/diskcraft/getting-started/README.md deleted file mode 100644 index 968bf76..0000000 --- a/docs/diskcraft/getting-started/README.md +++ /dev/null @@ -1,214 +0,0 @@ -# Getting Started - -:::note - -This is v1 of Dino, v2 is not publicly released yet. It may be licensed, join our discord to watch for updates. - -::: - -![Image](https://downloads.diskcraft.xyz/static/img/example02.png) - -## Requirements - -:::tip - -If you need help just join the discord and a developer or owner will be happy to help! - -::: - -| Dependencies | Recommended Version | -| -------------- | ------------------------ | -| OS | Ubuntu Server 18+ | -| NodeJS | 14.0+ | -| Redis | Latest | -| Nginx | Latest | -| Certbot | Latest | -| PM2 | Latest | - -## Installing NodeJS - -**1.** `sudo apt update` - -**2.** `curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -` - -**3.** `sudo apt -y install nodejs` - - -NodeJS 14 is now installed - -### Installing the rest of the dependencies - -**1.** `sudo apt install redis-server` - -**2.** `sudo apt install nginx` - -**3.** `sudo apt install -y python3-certbot-nginx` - -**4.** `npm i pm2 -g` - -## Downloading Dino - -Download the source code for Dino -[Here](https://downloads.dinopanel.net/). - -Download the API, WEB, NL, and Configs! - -## Configuration - -In order for Dino to work you'll need to configure some things - -Open your code editor, and navigate to `src/App.vue` - -scroll down to `api_default: "null"` and replace null with your subdomain with `/api` at the end (https://billing.yourdomain.com/api) - -Open `src/views/admin/log.vue` and navigate to line 141 and change `https://panel.yourdomain.com` to whatever your Pterodactyl panel link is - -That's all for Web! (Unless you plan on making some console modifications of your own) - -## Settings up MYSQL - -Unzip `configs.zip` and grab the file `diskcraft.sql` - -Create your database - -If your using PHPMyAdmin you can import the file via web after you've created your database - -However if your using CLI run this command in the directory your sql file is: `sudo mysql -u -p < bil.sql` - -once thats done you can open your database via a DB client or PHPMyAdmin and see all the tables, do not remove any of them under any circumstance as it may break your panel. - -## Setting up your Certificate - -In order to proceed with the rest of the steps, you need to install your domain certificate - -Run this command: `sudo certbot certonly --standalone -d yourdomain.com` - -## Settings up NGINX - -In the configs folder grab `diskcraft` - -Find `server_name` under both server for port 80 and 443 and change billing.yourdomain.com to your subdomain - -On the ssl_certificate lines change the billing.yourdomain.com pem to your subdomain - -Find `proxy_pass` and change the IP to your systems IP address (needs to have http) - -Now upload this file to /etc/nginx/sites-available - -Run this command: `sudo ln -s /etc/nginx/sites-available/Dino /etc/nginx/sites-enabled/Dino` - -Now restart NGINX with `systemctl restart nginx` - -## Building and uploading the Panel - -Open CMD in the web directory and run the following commands (only after you've added your domain in App.vue) - -**1.** `npm i` - -**2.** `npm run build` - -**3.** `mkdir /var/www/Dino` - -**3.** Upload the contents of **/dist** to **/var/www/Dino** - -## Setting up PayPal - -Head over to [PayPal Developer](https://developer.paypal.com/developer/applications). - -Sign into PayPal, then click **My apps & credentials** - -Click Live and Create an App - -Name the App and click Create - -Now Grab your Client ID and Client Secret and keep them noted, you'll need these for the API - -## Setting up the API - -First do `ufw allow 2250` and `ufw allow 2251` - -In **/root** make a folder called **api** and cd into it - -Run `sudo npm i secure-random-password jwks-rsa && sudo npm i @paypal/checkout-server-sdk` - -Upload the contents of the API zip you downloaded earlier into it - -Now open **config.js** and you'll see a blank config. Fill out all the information as it should be (do not touch **api: { - port: 2251, - base_url: "/api")** - -Most of these fields are self explanatory, however you should remember to take the PayPal app credentials you got earlier and put them under the `paypal: {` area. - -Return URL and Cancel URL should just be the base link of the site - -If your just using Pterodactyl make sure under **capabilities: {** that **pterodactylServer:** is set to `true` - -:::warning - -Discord Auth is not currently finished, so we recommend keeping it set to false. - -::: - -:::info - -There are no VPS documentation, unless you can figure it out for yourself and submit a pull request for documentation it will not be here. - -::: - -Next go to your Pterodactyl panel and go to **Admin > Application API** and Generate an API key with full permissions. - -Put that key in the **Key:** value under **pterodactyl: {** - -As for **Server:** that's just your panel link - -## Starting the API - -**1.** `pm2 start ./index.js --name panel-server` - -**2.** `pm2 startup` and `pm2 save` - -Now do `pm2 log panel-server` to see if its throwing any errors - -If it's not throwing errors your all good to go! - -## Setting up NL - -Upload the NL file to the root folder of your Pterodactyl nodes (does not have to be on the panel) - -Install PM2: `npm i pm2 -g` - -Run `chmod a+x NL` - -Then `ufw allow 12645` - -Now `pm2 start ./NL --name Link` - -Finally run `pm2 startup` and `pm2 save` - -### The panel is officially running!!!! - -## Creating Products and Categories - -Other than pages and functions, nothing is hard coded. This means that creating products and categories are immediate and don't require you to rebuild your site. - -First open **pterodactyl_package_category** - -| code | name | container_template | nodes | -| -------------- | ----------------------| ---------------------------------------------------------------------- |-------- | -| minecraft_java | Minecraft Java | [Click to Download](https://downloads.dinopanel.net/diskcraft/ct.conf) | FQDN | - -Categories are made like that, the container template has the egg information as well as startup script and environmental variables - -The nodes field is meant for whitelisting, allowing only certain products on certain nodes. If you have two nodes and only one of them is in a minecraft field only one node can have minecraft deployed to it - -Now open **pterodactyl_packages** - -| code | name | price | ram | disk | cpu | databases | backups | category | -| ---------------- | ------------------------ | ----- | ---- | ---- | --- | --------- | ------- | -------------- | -| minecraft_java_1 | 1GB Java | 1.25 | 1024 | 4096 | 200 | 1 | 1 | minecraft_java | - -That is the layout for a game package - -**pterodactyl_servers** shows all servers deployed via the billing system - -**users** shows all users registered on the billing system. You can change their usernames, emails, account balances, ect. However you cannot and should never attempt to change their passwords. They should do that themselves via a reset email, you cannot view user passwords as they are encrypted. \ No newline at end of file diff --git a/docs/diskcraft/how-to/configure.md b/docs/diskcraft/how-to/configure.md deleted file mode 100644 index eeb9937..0000000 --- a/docs/diskcraft/how-to/configure.md +++ /dev/null @@ -1,212 +0,0 @@ ---- -slug: /paper/aikars-flags ---- - -# Aikar's Flags - -## Recommended JVM Startup Flags - -Use these flags exactly, only changing Xmx and Xms. These flags work and scale accordingly to any -size of memory, even 500MB but modern Minecraft versions will not do well with such low memory. - -```bash -java -Xms10G -Xmx10G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 --XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch --XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M --XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 --XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 --XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem --XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs --Daikars.new.flags=true -jar paperclip.jar nogui -``` - -:::caution Do not allocate all of your available memory on a shared host! - -When setting the Xms and Xmx values, if your host says you have 8000M memory, DO NOT USE 8000M! -Minecraft (and Java) needs additional memory on top of that Xmx parameter. It is recommended to -reduce your Xmx/Xms by about **1000-1500M** to avoid running out of memory or "OOMKiller" hitting -your server. This also leaves room for the Operating System to use memory too. **Have 8000M memory? -Use 6500M for safety.** _But you may also ask your host if they will cover this overhead for you and -give you 9500M instead. Some hosts will! Just ask._ - -::: - -## Recommended Memory - -**We recommend using at least 6-10GB**, no matter how few players! If you can't afford 10GB of -memory, give as much as you can, but ensure you leave the operating system some memory too. G1GC -operates better with more memory. - -However, more memory does not mean better performance above a certain point. Eventually you will hit -a point of diminishing returns. Going out and getting 32GB of RAM for a server will only waste your -money with minimal returns. - -If you are running with 12GB or less memory for MC, you should not adjust these parameters. - -### If you are using an Xmx value greater than 12G - -If you have and use more than 12GB of memory, adjust the following: - -- `-XX:G1NewSizePercent=40` -- `-XX:G1MaxNewSizePercent=50` -- `-XX:G1HeapRegionSize=16M` -- `-XX:G1ReservePercent=15` -- `-XX:InitiatingHeapOccupancyPercent=20` - -:::tip - -If you see increase in old generation collections after this, revert to the base flags! - -::: - -Explanation of these changes: - -- Base flag set aims for 30/40 to reduce risk of to space issues. With more memory, less of an - issue. We can give more to new generation with 40/50, as well as reduce reserve percent since the - default reserve will already be larger. -- Region Size increase helps reduce humongous allocations, and speeds up remarking. We need a - smaller region size at smaller heaps to ensure an adequate amount of regions available -- We can start looking for old generation memory to reclaim with more of a delay with IHOP at 20 - since we have more old generation available to space on CPU. - -## Java GC Logging - -Are you having old gen issues with these flags? Add the following flags based on your java version -to enable GC Logging: - -**Java 8-10** - -```bash --Xloggc:gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps --XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=1M -``` - -**Java 11+** - -```bash --Xlog:gc*:logs/gc.log:time,uptime:filecount=5,filesize=1M -``` - -GC logging does not hurt your performance and can be left on at all times. The files will not take -up much space (5MB) - -## Technical Explanation of the Flags - -1. **-Xms matching -Xmx -- Why:** You should never run your server with the case that -Xmx can run - the system completely out of memory. Your server should always be expected to use the entire - -Xmx! You should then ensure the OS has extra memory on top of that Xmx for non MC/OS level - things. Therefore, you should never run MC with -Xmx settings you can't support if java uses it - all. Now, that means if -Xms is lower than -Xmx **YOU HAVE UNUSED MEMORY! Unused memory is - wasted memory.** G1 operates better with the more memory it's given. G1 adaptively chooses how - much memory to give to each region to optimize pause time. If you have more memory than it needs - to reach an optimal pause time, G1 will simply push that extra into the old generation, and it - will not hurt you The fundamental idea of improving GC behavior is to ensure short-lived objects - die young and never get promoted. With the more memory G1 has, the better assurance you will get - that objects are not getting prematurely promoted to the old generation. G1 Operates differently - than previous collectors and is able to handle larger heaps more efficiently. - - If it does not need the memory given to it, it will not use it. The entire engine operates - differently and does not suffer from too large of heaps, and this is industry-wide accepted - information that under G1 to keep Xms and Xmx the same! - -2. **UnlockExperimentalVMOptions** -- needed for some the below options - -3. **G1NewSizePercent:** These are the important ones. You now can specify percentages of an - overall desired range for the new generation. With these settings, we tell G1 to not use its - default 5% for new gen, and instead give it 40%! **Minecraft has an extremely high a memory - allocation rate, ranging to at least 800 Megabytes a second on a 30 player server! And this is - mostly short-lived objects (Block Position).** - - Now, this means MC REALLY needs more focus on New Generation to be able to even support this - allocation rate. If your new gen is too small, you will be running new gen collections 1-2+ - times per second, which is awful. You will have so many pauses that TPS has risk of suffering, - and the server will not be able to keep up with the cost of GC's. Then combine the fact that - objects will now promote faster, resulting in your Old Gen growing faster. Given more New Gen, - we are able to slow down the intervals of Young Gen collections, resulting in more time for - short-lived objects to die young and overall more efficient GC behavior. - -4. **G1MixedGCLiveThresholdPercent:** Controls when to include regions in Mixed GC's in the Young - GC collection, keeping Old Gen tidy without doing a normal Old Gen GC collection. When your - memory is less than this percent, old gen won't even be included in 'mixed' collections. Mixed - are not as heavy as a full old collection, so having small incremental cleanups of old keeps - memory usage light. - - Default is 65 to 85 depending on Java Version, we are setting to 90 to ensure we reclaim garbage - in old gen as fast as possible to retain as much free regions as we can. - -5. **G1ReservePercent=20:** MC Memory allocation rate in up-to-date versions is really insane. We - run the risk of a dreaded "to-space exhaustion" not having enough memory free to move data - around. This ensures more memory is waiting to be used for this operation. Default is 10, so we - are giving another 10 to it. - -6. **MaxTenuringThreshold=1:** Minecraft has a really high allocation rate of memory. Of that - memory, most is reclaimed in the eden generation. However, transient data will overflow into - survivor. Initially played with completely removing Survivor and had decent results, but does - result in transient data making its way to Old which is not good.Max Tenuring 1 ensures that we - do not promote transient data to old generation, but anything that survives 2 passes of Garbage - Collection is just going to be assumed as longer-lived. - - Doing this greatly reduces pause times in Young Collections as copying data up to 15 times in - Survivor space for a tenured object really takes a lot of time for actually old memory. Ideally - the GC engine would track average age for objects instead and tenure out data faster, but that - is not how it works. - - Considering average GC rate is 10s to the upwards of minutes per young collection, this does not - result in any 'garbage' being promoted, and just delays longer lived memory to be collected in - Mixed GC's. - -7. **SurvivorRatio=32:** Because we drastically reduced MaxTenuringThreshold, we will be reducing - use of survivor space drastically. This frees up more regions to be used by Eden instead. - -8. **AlwaysPreTouch:** AlwaysPreTouch gets the memory setup and reserved at process start ensuring - it is contiguous, improving the efficiency of it more. This improves the operating systems - memory access speed. Mandatory to use Transparent Huge Pages - -9. **+DisableExplicitGC:** Many plugins think they know how to control memory, and try to invoke - garbage collection. Plugins that do this trigger a full garbage collection, triggering a massive - lag spike. This flag disables plugins from trying to do this, protecting you from their bad - code. - -10. **MaxGCPauseMillis=200:** This setting controls how much memory is used in between the Minimum - and Maximum ranges specified for your New Generation. This is a "goal" for how long you want - your server to pause for collections. 200 is aiming for at most loss of 4 ticks. This will - result in a short TPS drop, however the server can make up for this drop instantly, meaning it - will have no meaningful impact to your TPS. 200ms is lower than players can recognize. In - testing, having this value constrained to an even lower number results in G1 not recollecting - memory fast enough and potentially running out of old gen triggering a Full collection. Just - because this number is 200 does not mean every collection will be 200. It means it can use up to - 200 if it really needs it, and we need to let it do its job when there is memory to collect. - -11. **+ParallelRefProcEnabled:** Optimizes the GC process to use multiple threads for weak reference - checking. Not sure why this isn't default... - -12. **G1RSetUpdatingPauseTimePercent=5:** Default is 10% of time spent during pause updating Rsets, - reduce this to 5% to make more of it concurrent to reduce pause durations. - -13. **G1MixedGCCountTarget=4:** Default is 8. Because we are aiming to collect slower, with less old - gen usage, try to reclaim old gen memory faster to avoid running out of old. - -14. **G1HeapRegionSize=8M+:** Default is auto calculated. SUPER important for Minecraft, especially - 1.15, as with low memory situations, the default calculation will in most times be too low. Any - memory allocation half of this size (4MB) will be treated as "Humongous" and promote straight to - old generation and is harder to free. If you allow java to use the default, you will be - destroyed with a significant chunk of your memory getting treated as Humongous. - -15. **+PerfDisableSharedMem:** Causes GC to write to file system which can cause major latency if - disk IO is high -- See https://www.evanjones.ca/jvm-mmap-pause.html - -## Using Large Pages - -For Large Pages -- It's even more important to use -Xms = -Xmx! Large Pages needs to have all the -memory specified for it, or you could end up without the gains. This memory will not be used by the -OS anyway, so use it. - -Additionally, use these flags (Metaspace is Java 8 Only, don't use it for Java7): -`-XX:+UseLargePagesInMetaspace` - -### Transparent Huge Pages - -Controversial feature but may be usable if you can not configure your host for real HugeTLBFS. Try -adding `-XX:+UseTransparentHugePages` but it's extremely important you also have AlwaysPreTouch set. -Otherwise, THP will likely hurt you. We have not measured how THP works for MC or its impact with -AlwaysPreTouch, so this section is for the advanced users who want to experiment. diff --git a/docs/diskcraft/how-to/install.md b/docs/diskcraft/how-to/install.md deleted file mode 100644 index 2927e91..0000000 --- a/docs/diskcraft/how-to/install.md +++ /dev/null @@ -1,76 +0,0 @@ ---- -slug: /paper/updating ---- - -# Updating Paper - -Updating Paper is an important part of running every server. With new features and fixes coming -every day, we recommend updating at least once per week to keep your server patched for the latest -bugs. Installing updates is very simple, but it's important to know how to do it correctly. - -:::caution Don't replace any JAR in a running server - -Unless you know exactly what and why you're doing what you're doing, it's never a good idea to -replace any JAR in a running server, be that plugins, or Paper itself. - -::: - -## Step 1. Backup - -This is the most important step, and yet the most frequently skipped. While it is unlikely that -updating Paper itself will cause any issues requiring you to restore from a backup, plugin -malfunctions or other accidents might! Updating is a great time to work in a backup. Having -functioning backups is essential to every server, big or small. - -If you don't already have a backup plan in place, see [Backup and Recovery] where we walk through -multiple different backup or recovery strategies. - -## Step 2. Update Plugins - -Just like it's important to update Paper, it's equally important to keep plugins up to date. You -never know what plugin authors may be working on, be it bugfixes or new features. - -A little known feature of Paper servers is the `update` folder. Here's how you use it. - -1. Create a folder called `update` within the `plugins` folder. -2. One by one, download plugins you would like to update and put them in the `update` folder. -3. Restart your server, do not remove or modify any plugins outside the `update` folder. - -By doing this, you are able to update all of your plugins at the same time without having the server -off, or replacing plugin JARs while the server is running. You do not need to restart your server -before updating Paper itself. This feature allows you to update both Paper and plugins all at the -same time, without needing any additional downtime. - -## Step 3. Update Paper - -:::tip - -If you are using a shared host, your host may provide a built-in way to update! Consult their -documentation before continuing. - -::: - -Updating Paper itself is very simple. - -1. Download a new JAR from [our downloads page](https://papermc.io/downloads) -2. Stop your server. It is not recommended and may cause issues to replace your Paper JAR while the - server is running. -3. Replace your old Paper JAR file with the new one. -4. Start your server. Watch the startup log to ensure everything goes to plan. If there are any - plugin conflicts or issues, you will see them here. - -To minimize downtime caused by updates, some server owners will, rather than replacing their server -JAR, upload a new one and set their start script to use the new one on the next restart. Both of -these are valid update strategies. - -:::caution Automatic Updates - -While it may be convenient to install updates automatically (and Paper's [downloads api] allows you -to with ease), doing so is not recommended by Paper due to the possibility of plugin conflicts or -other issues that you may not know about. Always be present during updates, and keep a careful watch -on your server's log after the fact. - -If you do choose to automatically install updates, ensure you have a functioning backup strategy in -place! - -::: diff --git a/docs/diskcraft/how-to/per-world-configuration.md b/docs/diskcraft/how-to/per-world-configuration.md deleted file mode 100644 index 16b3976..0000000 --- a/docs/diskcraft/how-to/per-world-configuration.md +++ /dev/null @@ -1,98 +0,0 @@ ---- -slug: /paper/per-world-configuration ---- - -# Per World Configuration - -One of the most powerful yet least understood features of the Paper configuration is setting -configuration options per world. While not every config option can be set per world, everything -under `world-settings` in either `paper.yml` or `spigot.yml` can be configured differently on a per -world basis. - -## Default Values - -The only world generated out of the box is `default`. Any configuration option set here will apply -to **all** loaded worlds, unless explicitly overridden. Any configuration change that does not need -to be separated by world should be made in this section. - -:::info The main world - -The `default` section also serves as the place to configure per world settings for the main world -(`level-name` in server.properties). An additional section created for the main world will not -supersede `default`. - -::: - -## Per World Values - -A new section must be manually added to the bottom of the configuration file for each world which -requires a unique configuration. This section will not be automatically generated; it must be added. -Remember! YAML (the configuration format used by Paper) cares about spaces. When adding a new world, -ensure there are two spaces behind it. - -For example, to disable loading the spawn chunks in `world_nether` and `world_the_end`, -configuration would be added like this: - -```yaml title="paper.yml" -world-settings: - default: - keep-spawn-loaded: true - world_nether: - keep-spawn-loaded: false - world_the_end: - keep-spawn-loaded: false -``` - -This is a very stripped-down example. In reality, the `default` section will be much more extensive -as it contains all possible configuration options. This may look overwhelming at first, but always -remember to put new worlds at the very bottom of the configuration file. - -### Inheritance - -All configuration not explicitly defined for a world is inherited from the `default` section. This -means there is no need to repeat configuration options with the same value between sections, so -there is no need to copy and paste the entire `default` section into each new world created. - -For a more complex real-world example: setting both different `spawn-limits` and `keep-spawn-loaded` -in two worlds. - -```yaml title="paper.yml" -world-settings: - default: - spawn-limits: - monster: 70 - creature: 10 - ambient: 15 - axolotls: 5 - underground_water_creature: 5 - water_creature: 5 - water_ambient: 20 - keep-spawn-loaded: true - world_nether: - spawn-limits: - monster: 90 - resource_world: - spawn-limits: - monster: 2 - creature: 15 - axolotls: 8 - keep-spawn-loaded: false -``` - -This example demonstrates the concept of inheritance. For each world, this is the effective -configuration which will be applied: - -| Configuration Key | world | world_nether | world_the_end | resource_world | -| ----------------------------------------- | ------ | ------------ | ------------- | -------------- | -| `spawn-limits.monster` | `70` | `90` | `70` | `2` | -| `spawn-limits.creature` | `10` | `10` | `10` | `15` | -| `spawn-limits.ambient` | `15` | `15` | `15` | `15` | -| `spawn-limits.axolotls` | `5` | `5` | `5` | `8` | -| `spawn-limits.underground_water_creature` | `5` | `5` | `5` | `5` | -| `spawn-limits.water_creature` | `5` | `5` | `5` | `5` | -| `spawn-limits.water_ambient` | `20` | `20` | `20` | `20` | -| `keep-spawn-loaded` | `true` | `true` | `true` | `false` | - -Notice that `world_the_end` was never specified in this configuration. Because of this, it inherits -all the configuration options from the `default` section. Additionally, `keep-spawn-loaded` was only -disabled in `resource_world` because in the `default` section, `keep-spawn-loaded` is set to `true`. diff --git a/docs/diskcraft/reference/diskcraft-global-configuration.md b/docs/diskcraft/reference/diskcraft-global-configuration.md deleted file mode 100644 index 93eaf01..0000000 --- a/docs/diskcraft/reference/diskcraft-global-configuration.md +++ /dev/null @@ -1,226 +0,0 @@ ---- -slug: /diskcraft/reference/diskcraft-global-configuration ---- - -![Image](https://downloads.diskcraft.xyz/static/img/example02.png) - -# Dino Multi-Instance Config - -Dino isn't just standalone, you can configure it to run in a multi instance mode. This means that you can have 1 web server, but several domains all using it and have their own unique views. - -This Tutorial will seem very similar to standard installation, however all the things that are needed to run in multi-instance mode are included - -## Requirements - -:::tip - -If you need help just join the discord and a developer or owner will be happy to help! - -::: - -| Dependencies | Recommended Version | -| -------------- | ------------------------ | -| OS | Ubuntu Server 18+ | -| NodeJS | 14.0+ | -| Redis | Latest | -| Nginx | Latest | -| Certbot | Latest | -| PM2 | Latest | - -## Installing NodeJS - -**1.** `sudo apt update` - -**2.** `curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -` - -**3.** `sudo apt -y install nodejs` - - -NodeJS 14 is now installed - -### Installing the rest of the dependencies - -**1.** `sudo apt install redis-server` - -**2.** `sudo apt install nginx` - -**3.** `sudo apt install -y python3-certbot-nginx` - -**4.** `npm i pm2 -g` - -## Downloading Dino - -Download the source code for Dino -[Here](https://downloads.dinopanel.net). - -Download the API, WEB, NL, and Configs! - -## Configuration - -In order for Dino to work you'll need to configure some things - -Open your code editor, and navigate to `src/App.vue` - -scroll down to `api_default: "null"` and replace null with your subdomain with `/api` at the end (https://test.yourdomain.com/api) - -Next go to **knownHosts: {** and add your secondary domain under localhost like this: ![Image](https://downloads.dinopanel.net/static/img/example01.png) - -That's all for Web! (Unless you plan on making some console modifications of your own) - -## Settings up MYSQL - -Unzip `configs.zip` and grab the file `diskcraft.sql` - -Create your database - -If your using PHPMyAdmin you can import the file via web after you've created your database - -However if your using CLI run this command in the directory your sql file is: `sudo mysql -u -p < diskcraft.sql` - -once thats done you can open your database via a DB client or PHPMyAdmin and see all the tables, do not remove any of them under any circumstance as it may break your panel. - -## Setting up your Certificate - -In order to proceed with the rest of the steps, you need to install your domain certificate - -Run this command: `sudo certbot certonly --standalone -d yourdomain.com` - -## Settings up NGINX - -In the configs folder grab `diskcraft` - -Find `server_name` under both server for port 80 and 443 and change billing.temp to your subdomain - -On the ssl_certificate lines change the billing.temp pem to your subdomain - -Find `proxy_pass` and change the IP to your systems IP address (needs to have http) - -Now upload this file to /etc/nginx/sites-available - -Run this command: `sudo ln -s /etc/nginx/sites-available/diskcraft /etc/nginx/sites-enabled/diskcraft` - -Now restart NGINX with `systemctl restart nginx` - -## Building and uploading the Panel - -Open CMD in the web directory and run the following commands (only after you've added your domain in App.vue) - -**1.** `npm i` - -**2.** `npm run build` - -**3.** Upload the contents of **/dist** to **/var/www/html** - -## Setting up PayPal - -Head over to [PayPal Developer](https://developer.paypal.com/developer/applications). - -Sign into PayPal, then click **My apps & credentials** - -Click Live and Create an App - -Name the App and click Create - -Now Grab your Client ID and Client Secret and keep them noted, you'll need these for the API - -## Setting up the API - -First do `ufw allow 2250` and `ufw allow 2251` - -In **/var/www/html** make a folder called **api** and cd into it - -Run `npm i secure-random-password jwks-rsa` and `npm i @paypal/checkout-server-sdk` - -Upload the contents of the API zip you downloaded earlier into it - -Now open **config.js** and you'll see a blank config. Fill out all the information as it should be (do not touch **api: { - port: 2251, - base_url: "/api")** - -Most of these fields are self explanatory, however you should remember to take the PayPal app credentials you got earlier and put them under the `paypal: {` area. - -Return URL and Cancel URL should just be the base link of the site - -If your just using Pterodactyl make sure under **capabilities: {** that **pterodactylServer:** is set to `true` - -:::warning - -Discord Auth is not currently finished, so we recommend keeping it set to false - -::: - -We will make another version of documentation for VPS capabilities at some point, however it does indeed work. - -Next go to your Pterodactyl panel and go to **Admin > Application API** and Generate an API key with full permissions. - -Put that key in the **Key:** value under **pterodactyl: {** - -As for **Server:** that's just your panel link - -:::note - -For the MultiInstance Diskcraft function, all you have to do is add the API to whatever system you want to host it on. As long as the domain your adding matches the one you put in **App.vue** it'll work - -::: - -## Starting the API - -In order to make sure the API starts without issue you need to do this first: - -**1.** Do `systemctl stop redis-server` - -**2.** In the api directory do `nano redis.sh` and in that file just type `redis-server` and save it - -**3.** Now run `pm2 start ./redis.sh --name Redis` - -Redis is now running via PM2 instead of systemctl - -**4.** `pm2 start ./index.js --name API` - -**5.** `pm2 startup` and `pm2 save` - -Now do `pm2 log API` to see if its throwing any errors - -If it's not throwing errors your all good to go! - -## Setting up NL - -Upload the NL file to the root folder of your Pterodactyl nodes (does not have to be on the panel) - -Install PM2: `npm i pm2 -g` - -Run `chmod a+x NL` - -Then `ufw allow 12645` - -Now `pm2 start ./NL --name Link` - -Finally run `pm2 startup` and `pm2 save` - -### The panel is officially running!!!! - -## Creating Products and Categories - -Other than pages and functions, nothing is hard coded. This means that creating products and categories are immediate and don't require you to rebuild your site. - -First open **pterodactyl_package_category** - -| code | name | container_template | nodes | -| -------------- | ----------------------| ---------------------------------------------------------------------- |-------- | -| minecraft_java | Minecraft Java | [Click to Download](https://downloads.dinopanel.net/diskcraft/ct.conf) | FQDN | - -Categories are made like that, the container template has the egg information as well as startup script and environmental variables - -The nodes field is meant for whitelisting, allowing only certain products on certain nodes. If you have two nodes and only one of them is in a minecraft field only one node can have minecraft deployed to it - -Now open **pterodactyl_packages** - -| code | name | price | ram | disk | cpu | databases | backups | category | -| ---------------- | ------------------------ | ----- | ---- | ---- | --- | --------- | ------- | -------------- | -| minecraft_java_1 | 1GB Java | 1.25 | 1024 | 4096 | 200 | 1 | 1 | minecraft_java | - -That is the layout for a game package - -**pterodactyl_servers** shows all servers deployed via the billing system - -**users** shows all users registered on the billing system. You can change their usernames, emails, account balances, ect. However you cannot and should never attempt to change their passwords. They should do that themselves via a reset email, you cannot view user passwords as they are encrypted. diff --git a/docs/diskcraftmc/assets.md b/docs/diskcraftmc/assets.md deleted file mode 100644 index c462059..0000000 --- a/docs/diskcraftmc/assets.md +++ /dev/null @@ -1,31 +0,0 @@ -# Art Assets - -This page provides the official PaperMC logomark and the terms under which you may use it. - -:::warning - -The PaperMC logo is subject to its own separate licensing terms and does not inherit any from the -projects it represents. - -::: - -You may: - -- Use the PaperMC logomark to represent the project in blogposts and other places in order to bring - attention to the project. -- Use the PaperMC logomark to represent Paper-Server in downloads, server selectors, and similar - places. -- Crop out extra transparent canvas space behind the PaperMC logomark so it fits better next to - other content. - -You may not: - -- Alter any of the colors used in the PaperMC logomark. -- Change the dimensions of the PaperMC logomark. -- Create modified versions of the PaperMC logomark or derivative works of it. -- Add your own project images or branding to the PaperMC logomark. -- Claim the logomark as your own work or use it as a representation of your own projects. -- Sell the PaperMC logomark on its own or as part of other products without explicit permission. -- Alter the transparency of any of the elements in the PaperMC logomark - -![CCN logomark](ccn.png) diff --git a/docs/diskcraftmc/ccn.png b/docs/diskcraftmc/ccn.png deleted file mode 100644 index 7830c4b70ee691a04029c3a36c0421220be24987..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 86134 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%0DY?O*MVV25 z@R=No^s*Snb015Zv$PW-My{->T;@lCe?6Q>2Kd~Sslx4BWz~>$pERe*G0Bg4Oy+UHLvu>(D*-)p^ zTjj8OK5bNy$X~I0CeBhztEMl%h-;;5fU2RM5RkNgbC35;eZ$XFVV1nmPiJ?XPv6g* z&*te$?Mzb1$o1OdzPtG;3hDV^3CFSwS2N?P9c8&N8{XqRrIHEb|8=#5y1WMntklZn z-HLYgG3^IzHM#m%YIdFn$@x-0&tarI03%kF^*zyiirB6?N(97tcVXDEj{EEO(izyi zrgqXjvjQ;Z0jhke1)A?BR+G`x=2WaLhvq!7T*Hhx~w`&>Yw+yjJ6Z zyXuEjP<=|u#)Na**-2EeOa-vUErc|9(eMg+5;?4~rgo2o2#{{i=q)gp`#2OUEW0h! zwl>=mZ7Sokk49^N6dVW~TT@}^-2TFOWtIcqv4C$5Y|hsm^4;i_KTh1o{%0lzmb_IV z3~kIs5}qilU8U#nQTv<-81#zQg5HuZIUitw36_XRQ}9sr$rUhSHh%R<87HlnrAq6h z2p;utP}!u3Nq+r6tZDCS8t+1*lkcwZm z!GU2)HH*IG_&Uhb^zyi=tg%)p0)9=)+BM+96H?l5UEe%d5Ej2{IPnkKoGhNXPrMW8 zYF;v+OA2-D$U*&igCAQbD>Bp%nJG>_z;^-u>yA+K-uE=>D&(o(QLoD#n=^Aetv`6% z&ce}>pCHO5d2poqJ?%l_RR8zS`GI4hXnh=YXAj@CBCs|Toa_FM`~ws;M_6WA4w>_X zpT7R8#^EL<6kHXzNmo_H9Q5{@EW3prSF{?)+=w1u$N^_fGc-OGY=hHC%kX?~?Frh|Cr_UxWz3|fj_)?82_AbwB-(vRqI8y7oMUROnbb2Vtt_9x* zuQ*FVq-BL?C!ythR?h^kM#c-h4_e&KF>0Q91th1e7eT} zH#LYcu0%y#yG`%_I&PsQr~XhRBt7(@3H2a9RYb(UT5Q=4BqP9!`YcHCahwmAzLx*` z8PTw9_tA7L&dK-P&f0zIOdMR!j=WqWD^!B=iE1t1uX+0R3^P0 zrI=cVTxFoPTYk=lCaeI;x5gvJ`-*L=b1m+;uq3s zJ7vsB$zc~wljRH~K&||||F4ik4|$K3f~W^Cf+Z-~`>sAcc}E1KtV^Y@>-Yp}y?@ca*D+cbK=jVK=JD^Ndnul0=I%!d?=Y_dkJPs3A zMoD?3TK47Al*h_~iNa0mH`&S>ivWX5gt+bRd^X;-_1}Mj@({R7+yEa9TDdgZL%mvV zh?5!~^`a#8cv`B>=V}oc>RK(n6wDya4d(>VC z=c0S!M9~L8&~+%@+jq^_?YJ7Xcc-+~9&Lpm#%0Al;D;cL&qkkE8{)(*C|X*Wt0^bx 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 diff --git a/docs/diskcraftmc/contact.md b/docs/diskcraftmc/contact.md deleted file mode 100644 index 271dfcb..0000000 --- a/docs/diskcraftmc/contact.md +++ /dev/null @@ -1,28 +0,0 @@ -# Contact Us - -## Discord - -The PaperMC project handles most communication via Discord. Use the following invite: -https://discord.gg/papermc - -## IRC - -Some of our Discord channels are bridged to IRC. - -- [#paper on irc.esper.net](https://webchat.esper.net/?channels=paper) - -## Forums - -Reach out for support, or contact us on our forums. - -- [Forums](https://forums.papermc.io) - -## Twitter - -We often tweet out version release notes, update notices, and other information via our Twitter -page. - -- [@PaperPowered](https://twitter.com/PaperPowered) - -You should not DM or @ this account for support. It is not checked as regularly as the above -locations. diff --git a/docs/diskcraftmc/downloads-api.md b/docs/diskcraftmc/downloads-api.md deleted file mode 100644 index 71014a7..0000000 --- a/docs/diskcraftmc/downloads-api.md +++ /dev/null @@ -1,4 +0,0 @@ -# Downloads API - -PaperMC provides a downloads API to facilitate automated downloads access. Full documentation can be -found on the [Downloads API Docs](https://papermc.io/api/docs). diff --git a/docs/hosting/README.md b/docs/hosting/README.md deleted file mode 100644 index dd9dd06..0000000 --- a/docs/hosting/README.md +++ /dev/null @@ -1,6 +0,0 @@ -# Welcome to the Waterfall Wiki - -Waterfall is the BungeeCord fork that aims to improve performance and stability. - -- [Getting Started](getting-started.md) -- [Configuration](configuration.md) diff --git a/docs/hosting/configuration.md b/docs/hosting/configuration.md deleted file mode 100644 index cf75b78..0000000 --- a/docs/hosting/configuration.md +++ /dev/null @@ -1,58 +0,0 @@ -# Configuration - -This page details the various configuration settings exposed by Waterfall. These settings can be -found in waterfall.yml. - -If you want information on settings in BungeeCord's config.yml you should see its respective -documentation pages. - -## use_netty_dns_resolver - -- **default**: `true` -- **description**: Sets whether Netty's async DNS resolver is used for account authentication. - -## disable_modern_tab_limiter - -- **default**: `true` -- **description**: Disables the tab completion limit for 1.13+ clients. - -## log_initial_handler_connections - -- **default**: `true` -- **description**: Sets whether to log InitialHandler connections. - -## throttling - -- tab_complete - - **default**: `1000` - - **description**: How often tab-complete packets can be sent in milliseconds. - -## game_version - -- **default**: `` (empty string) -- **description**: The supported versions displayed to the client. Default is a comma separated list - of supported versions. For example 1.8.x, 1.9.x, 1.10.x - -## disable_tab_list_rewrite - -- **default**: `false` -- **description**: This setting disables tablist rewriting, which may resolve issues setting player - profiles when Waterfall is in offline mode. - -## disable_entity_metadata_rewrite - -- **default**: `false` -- **description**: This setting disables entity metadata rewriting in favor of sending a join packet - to the client. It offers a more robust solution for modded environments but can cause plugins to - break. - -## plugin_channel_name_limit - -- **default**: `128` -- **description**: The maximum channel identifier length. May be useful for certain broken mods. - -## registered_plugin_channels_limit - -- **default**: `128` -- **description**: The maximum number of registered plugin channels for a connection. Used by mods - and some plugins. May be useful to fix certain broken modpacks. diff --git a/docs/hosting/getting-started.md b/docs/hosting/getting-started.md deleted file mode 100644 index a9dbf1b..0000000 --- a/docs/hosting/getting-started.md +++ /dev/null @@ -1,56 +0,0 @@ -# Getting Started - -## What is Waterfall? - -Waterfall is a fork of BungeeCord, a proxy used primarily to teleport players between multiple -Minecraft servers. - -Waterfall focuses on three main areas: - -- Stability: Waterfall aims to be stable. We will achieve this through making the code base testable - and discouraging practices that lead to proxy lag. -- Features: Waterfall aims to include more features than canonical BungeeCord. -- Scalability: Waterfall should be able to handle a large number of concurrent players, given a - reasonably modern CPU, memory, and good network connection. - -## Requirements - -Waterfall requires **Java 8** or newer to run. The Paper team recommends you run on Java 11 or -higher. Generally, LTS versions of Java are targeted, though you may have luck on newer versions. - -## Migrating From BungeeCord - -Waterfall is a drop in replacements for BungeeCord, you don't need to make any changes to your -configuration. - -## Getting A Proxy Jar - -Paper provides runnable proxy jars directly from our [downloads -page][https://papermc.io/downloads#waterfall]. - -Click on the build number to download a file. - -## Running The Proxy - -To run the proxy, simply start it up like any other Java application. - -Open your terminal, navigate to the saved location, and then run - -```bash -java -Xms512M -Xmx512M -jar waterfall-###.jar -``` - -Aikar's recommended flags for Waterfall are as follows: - -```bash -java -Xms512M -Xmx512M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -jar waterfall-###.jar -``` - -The amount of memory can be set by changing the numbers in the `-Xms` and `-Xmx` flags. - -To configure your proxy, see the [configuration](configuration.md) page. - -## Updating The Proxy - -To update the proxy, first stop it safely by executing the `end` command. Then replace the old proxy -jar with a new one, and start the proxy. That's it. diff --git a/docs/lethalextended/README.md b/docs/lethalextended/README.md new file mode 100644 index 0000000..13e5bca --- /dev/null +++ b/docs/lethalextended/README.md @@ -0,0 +1,3 @@ +# Welcome to the Lethal-Extended Wiki + +All of this is straight forward, but if you need help don't hesitate to join the Discord! diff --git a/docs/lethalextended/getting-started/README.md b/docs/lethalextended/getting-started/README.md new file mode 100644 index 0000000..33cdcf0 --- /dev/null +++ b/docs/lethalextended/getting-started/README.md @@ -0,0 +1,87 @@ +--- +slug: /le/getting-started/addons +--- + +# Getting Started + +:::note + +This isn't a simple task and takes some time to get the hang of. If you need any help just ask in the Discord :smile: + +::: + +![Image](https://cdn.galactiq.net/lethalextended/docs/img/docs.png) + +## Creating a name + +Creating a name and general topic is an important first step! Come back to these docs when you've got that figured out. + +## Packaging the mods + +Add-ons should follow a similar folder structure to the base Lethal-Extended modpack, but instead it'll be located **Inside** the plugins folder. + +You can download an example layout template that displays 3 additional mods in their properly formatted folders. + +When it comes to copying files to the mod subfolders you need to copy 3 of the following: + +1. `manifest.json` + +2. `.dll` + +3. `.bundle` (If applicable) + +:::warning + +Keep in mind, some mods have other mods they depend on. Make sure to download all dependencies and add them to your pack as well! (Also make sure to check to see if the base Lethal-Extended modpack has those dependencies already.) + +::: + +| layout_template | +| ------------------------------------------------------------------------------------- | +| [Click to Download](https://cdn.galactiq.net/lethalextended/docs/mysupercoolpack.zip) | + +![Image](https://cdn.galactiq.net/lethalextended/docs/img/packformat.png) + +## Creating your own manifest.json + +A manifest file is VERY important when it comes to the upkeep of packs. On Thunderstore it acts as a list for the app to know what exactly needs to be downloaded, however, in this instance, it helps us keep track of mod versions and pack versions. + +| manifest_template | +| ------------------------------------------------------------------------------------- | +| [Click to Download](https://cdn.galactiq.net/lethalextended/docs/manifest.json) | + +![Image](https://cdn.galactiq.net/lethalextended/docs/img/manifest.png) + +### Values: + +`name`: The name of your addon. + +`version_numer`: Version your addon is on. (Should go up numerically as you update it) + +`website_url`: If you have a Discord for your addon you should put the invite here. + +`description`: What does your pack add/do? + +### The Dependencies field + +The final field in your `manifest.json` is the dependencies. This tells us what mods your pack includes. When you download mods from Thunderstore you can see their dependency string. + +![Image](https://cdn.galactiq.net/lethalextended/docs/img/depstring.png) + +Add it to the list of dependencies and make sure after every single one you add a`,` at the end to tell the file there is another line. Also make sure each dependency string is in a set of quotation marks: "" + +![Image](https://cdn.galactiq.net/lethalextended/docs/img/manifestfin.png) + +## Publishing your add-on + +You can create a thread in the add-ons forum of the Discord community to show off your cool new add-on! By default add-ons will be marked as pending for verification to make sure everything is configured properly and DOESN'T violate any community rules. + +This newly created thread will now be your discussion area for everyone who uses or wants to use your add-on. Once approved the add-on will show up on the Lethal-Utility file + +## Updating your add-on + +We recommend updating your add-on regularly to address bugs. If bugs start to pile up and there hasn't been any updates to the pack after an extended period of time, it'll be removed. + +## Publishing on Github + +If you use Github to keep track of your commits and create release packages then you can just forward us the link if you don't want to make a post in the forum, which will allow Lethal-Utility to always be up to date on your pack. \ No newline at end of file diff --git a/docs/webshare/README.md b/docs/webshare/README.md deleted file mode 100644 index 0d7625f..0000000 --- a/docs/webshare/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# Welcome to the Velocity Wiki - -Velocity is the ridiculously scalable, flexible Minecraft proxy. - -## Getting started - -It is simple to get started with Velocity. Get started with our -[Getting Started guide](getting-started/README.md). - -## I need help - -If you need some help with Velocity, please seek help in the following places: - -### 📖 This Wiki - -We have put a lot of effort into documenting Velocity as much as possible with our new website and -our coverage will continue to expand. We strongly encourage you to check the sidebar of the wiki for -relevant resources. Helping yourself using the resources in this wiki saves all of us time. - -We recommend you visit the [frequently-asked questions](getting-started/faq.md) to begin your -search. Most common issues with Velocity are answered there. - -Please do not be offended if we respond to your question linking back here. Asking us a question -already answered in the documentation doesn't help anyone. - -### 💬 Our Discord - -If you have searched the wiki and didn't find the answer to your question, then it is time to -[join our Discord](https://discord.gg/papermc) to ask your question. diff --git a/docs/webshare/developers/README.md b/docs/webshare/developers/README.md deleted file mode 100644 index 0ad72db..0000000 --- a/docs/webshare/developers/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# Developer's Guide - -Welcome to the Velocity Developer's Guide! This guide includes information and tutorials for -developers to create and expand on Velocity plugins. diff --git a/docs/webshare/developers/api/command.md b/docs/webshare/developers/api/command.md deleted file mode 100644 index 81e543b..0000000 --- a/docs/webshare/developers/api/command.md +++ /dev/null @@ -1,157 +0,0 @@ ---- -slug: /velocity/developers/command-api ---- - -# The Command API - -The Command API lets you create commands that can be executed by a player connected to the proxy or -the console. - -## Creating a command - -Each command class needs to implement a `Command` subinterface. The choice depends on the type of -arguments and the granularity of suggestions provided to the client. These include: - -### `BrigadierCommand` - -Internally, Velocity uses the [Brigadier](https://github.com/Mojang/brigadier) library to register -and dispatch command actions. You can register your own `CommandNode`s by wrapping them in a -`BrigadierCommand`. Let's see an example of a command that will tell whoever executes the command -"Hello World" in light blue text. - -```java -package com.example.velocityplugin; - -import com.mojang.brigadier.builder.LiteralArgumentBuilder; -import com.mojang.brigadier.tree.LiteralCommandNode; -import com.velocitypowered.api.command.BrigadierCommand; -import com.velocitypowered.api.command.CommandSource; -import com.velocitypowered.api.event.Subscribe; -import com.velocitypowered.api.event.proxy.ProxyInitializeEvent; -import com.velocitypowered.api.plugin.Plugin; -import net.kyori.adventure.text.Component; -import net.kyori.adventure.text.format.NamedTextColor; - -@Plugin(id = "helloworld") -public class HelloWorldPlugin { - - public void createBrigadierCommand() { - LiteralCommandNode helloNode = LiteralArgumentBuilder - .literal("test") - .executes(context -> { - Component message = Component.text("Hello World", NamedTextColor.AQUA); - context.getSource().sendMessage(message); - return 1; // indicates success - }) - .build(); - - // BrigadierCommand implements Command - BrigadierCommand command = new BrigadierCommand(helloNode); - } -} -``` - -Brigadier commands have full backwards-compatibility with 1.12.2 and lower versions. - -Custom plugin command argument types are not supported in Velocity, as they would require the client -to also support them. We recommend sticking to the predefined Brigadier types provided. - -### `SimpleCommand` - -Modelled after the convention popularized by Bukkit and BungeeCord, a `SimpleCommand` has three -methods: one for when the command is executed, one to provide suggestions for tab completion, and -one to check a `CommandSource` has permission to use the command. All methods receive a -`SimpleCommand.Invocation` object, which contains the `CommandSource` that executed the command and -the arguments as an array of strings. The previous example can also be implemented using this -interface: - -```java -package com.example.velocityplugin; - -import com.velocitypowered.api.command.CommandSource; -import com.velocitypowered.api.command.SimpleCommand; -import net.kyori.adventure.text.Component; -import net.kyori.adventure.text.format.NamedTextColor; - -public final class TestCommand implements SimpleCommand { - - @Override - public void execute(final Invocation invocation) { - CommandSource source = invocation.source(); - // Get the arguments after the command alias - String[] args = invocation.arguments(); - - source.sendMessage(Component.text("Hello World!").color(NamedTextColor.AQUA)); - } - - @Override - public boolean hasPermission(final Invocation invocation) { - return invocation.source().hasPermission("command.test"); - } -} -``` - -It's important to note `invocation.arguments()` doesn't include the command alias (e.g. `teleport` -for `/teleport foo bar`). In the event that no arguments are specified, an empty array will be -passed, rather than a null array. - -If a player or the console executes the following command: `/stats Player2 kills`, the first -argument will be `Player2`, which we can access using `invocation.arguments()[0]` and the second -argument will be `kills`. - -### `RawCommand` - -There's certain cases where you don't need to process the arguments. These may include: - -- A `/say` style command, where the arguments contain the message as a string; or -- You're using an external command framework to process your commands. - -A raw command indicates the proxy to pass the command alias and its arguments directly without -further processing. Let's see an example of a command that echoes the received input: - -```java -package com.example.velocityplugin; - -import com.velocitypowered.api.command.RawCommand; -import net.kyori.adventure.text.Component; - -public final class EchoCommand implements RawCommand { - - @Override - public void execute(final Invocation invocation) { - invocation.source().sendMessage(Component.text(invocation.arguments())); - } - - @Override - public boolean hasPermission(final Invocation invocation) { - return invocation.source().hasPermission("command.echo"); - } -} -``` - -## Registering a command - -Now that we have created a command, we need to register it in order for it to work. To register -commands, you use the Command Manager. We get the command manager by executing -`proxyServer.getCommandManager()` with the proxy instance, or by injecting it using the `@Inject` -annotation in the main class. The register method requires two parameters, the command metadata and -the command object. - -The `CommandMeta` contains the case-insensitive aliases and more advanced features. The Command -Manager provides a meta builder via the `#metaBuilder(String alias)` method. - -```java -CommandMeta meta = commandManager.metaBuilder("test") - // Specify other aliases (optional) - .aliases("otherAlias", "anotherAlias") - .build(); -``` - -Finally, - -```java -commandManager.register(meta, new TestCommand()); -``` - -If you're registering a `BrigadierCommand`, you may prefer to use the `#register(BrigadierCommand)` -method or `#metaBuilder(BrigadierCommand)` to specify additional aliases. diff --git a/docs/webshare/developers/api/event.md b/docs/webshare/developers/api/event.md deleted file mode 100644 index 68b364f..0000000 --- a/docs/webshare/developers/api/event.md +++ /dev/null @@ -1,280 +0,0 @@ ---- -slug: /velocity/developers/event-api ---- - -# Working With Events - -Listening to events with Velocity's `@Subscribe` annotation is straightforward. You've already seen -one such listener, using the ProxyInitializeEvent in your main class. Additional events can be found -on the [Javadoc](https://jd.velocitypowered.com/3.0.0/). - -## Creating a listener method - -To listen to an event, mark the method with `@Subscribe`, like shown. This works similarly to -annotation-driven event listening in other APIs you may be familiar with; it's the equivalent of -Bukkit's/Bungee's `@EventHandler` and Sponge's `@Listener`. - -```java -@Subscribe -public void onPlayerChat(PlayerChatEvent event) { - // do stuff -} -``` - -:::tip - -Note that the import is `com.velocitypowered.api.event.Subscribe` and _not_ in -`com.google.common.eventbus`. - -::: - -## Orders - -Every listener has a `PostOrder`. When an event is fired, the order in which listeners are invoked -is defined by their `PostOrder`. Listeners using `PostOrder.FIRST` are called first, then EARLY, -NORMAL, etc. - -State the desired order in the `@Subscribe` annotation: - -```java -@Subscribe(order = PostOrder.NORMAL) -public void onPlayerChat(PlayerChatEvent event) { - // do stuff -} -``` - -`NORMAL` is the default value if you do not specify an order. - -## Registering listeners - -Velocity automatically registers your main plugin class as an event listener. This is handy for -initialization and for simple plugins, but for more complex plugins, you will want to separate your -event handlers from the main plugin class. To do so, you will need to register with the EventManager -any other listeners you have: - -The event system supports registering an object as a listener (allowing you to use `@Subscribe` to -mark event handlers) or registering functional listeners. - -### Registering an object as a listener - -```java -server.getEventManager().register(plugin, listener); -``` - -Both parameters are `Object`. The first argument is your plugin's object, and the second argument -should be the listener to register. For example: - -```java -@Plugin(id = "myfirstplugin", name = "My Plugin", version = "0.1.0", dependencies = {@Dependency(id = "wonderplugin")}) -public class VelocityTest { - - private final ProxyServer server; - private final Logger logger; - - @Inject - public VelocityTest(ProxyServer server, Logger logger) { - this.server = server; - this.logger = logger; - } - - @Subscribe - public void onInitialize(ProxyInitializeEvent event) { - server.getEventManager().register(this, new MyListener()); - } -} - -public class MyListener { - - @Subscribe(order = PostOrder.EARLY) - public void onPlayerChat(PlayerChatEvent event) { - // do something here - } - -} -``` - -### Registering a functional-style listener - -As an alternative to `@Subscribe`, you can also use the functional `EventHandler` interface and -register yours with `register(Object plugin, Class eventClass, EventHandler handler)`: - -```java - server.getEventManager().register(this, PlayerChatEvent.class, event -> { - // do something here - return null; - }); -``` - -## Handling events asynchronously - -In Velocity 3.0.0, events can now be handled asynchronously. The event system allows a plugin to -pause sending an event to every listener, perform some unit of computation or I/O asynchronously, -and then resume processing the event. All Velocity events have the ability to be processed -asynchronously, however only some will explicitly wait for events to finish being fired before -continuing. - -For an annotation-based listener, all that is needed to process an event asynchronously is to either -return an `EventTask` or add a second `Continuation` parameter: - -```java - @Subscribe(order = PostOrder.EARLY) - public void onLogin(LoginEvent event, Continuation continuation) { - doSomeAsyncProcessing().addListener(continuation::resume, continuation::resumeWithException); - } - - @Subscribe(order = PostOrder.EARLY) - public EventTask onPlayerChat(PlayerChatEvent event) { - if (mustFurtherProcess(event)) { - return EventTask.async(() => ...); - } - return null; - } -``` - -A functional listener simply needs to implement `AwaitingEventExecutor` and return an `EventTask`: - -```java - server.getEventManager().register(this, PlayerChatEvent.class, (AwaitingEventExecutor) event -> { - if (mustFurtherProcess(event)) { - return EventTask.async(() => ...); - } - return null; - }); -``` - -There are two types of event tasks: - -- **Async tasks** simply run a unit of execution asynchronously. To get a basic event task use - `EventTask.async(Runnable)`. Basic event tasks are the closest equivalent for Velocity 1.x.x event - listeners and asynchronous events in the Bukkit API. -- **Continuation tasks** provide the listener with a callback (known as a `Continuation`) to resume - event processing when the (possibly asynchronous) work is completed. To get a continuation-based - event task, use `EventTask.withContinuation(Consumer)`. Continuation-based tasks are - the closest equivalent for listeners that use BungeeCord `AsyncEvent` intents, but have a slightly - different programming model in that each listener still runs sequentially, just that an individual - listener can defer passing control onto the next listener until it is done. - -:::caution - -To retain compatibility with older versions of Velocity, Velocity 3.0.0 runs all event listeners -asynchronously. This behavior will change in Polymer and will require you to explicitly provide an -event task (or to use continuations) if you need to perform some work asynchronously. All developers -are urged to make the transition now. - -::: - -## Creating Events - -Creating events on Velocity is somewhat different than on other platforms. However, it is very -similar for the most part. - -### Creating the Event Class - -First we need to create a class for our event. In this tutorial we'll assume you're making a private -messaging plugin, and thus use a `PrivateMessageEvent`. Most of this part is boilerplate. - -```java -public class PrivateMessageEvent implements Event { - - private final Player sender; - private final Player recipient; - private final String message; - - public PrivateMessageEvent(Player sender, Player recipient, String message) { - this.sender = sender; - this.recipient = recipient; - this.message = message; - } - - public Player sender() { - return sender; - } - - public Player recipient() { - return recipient; - } - - public String message() { - return message; - } - - // toString, equals, and hashCode may be added as needed - -} -``` - -You'll notice that your events don't need to extend or implement anything. They just work. - -### Firing the Event - -To fire the event, you'll need to get the server's event manager and use the `fire` method. Note -that this returns a `CompletableFuture`, so if you want to continue logic after the event is handled -by all listeners, use a callback: - -```java -server.getEventManager().fire(new PrivateMessageEvent(sender, recipient, message)).thenAccept((event) -> { - // event has finished firing - // do some logic dependent on the result -}); -``` - -### Using ResultedEvent - -Velocity uses the generalised `ResultedEvent` for events which have some sort of 'result'. The -result type of the event is defined by its generic type; for example. -`PrivateMessageEvent implements ResultedEvent`. - -Some common result types are `GenericResult`, for simple allowed/denied results, and component -results, used for events where the result may be denied with an accompanying reason (such as in a -login event). - -Using a general result is far more encompassing than `isCancelled/setCancelled` methods you may be -used to on other platforms, whose meaning is vague and limited to a simple boolean. In this example, -we'll use `GenericResult`, so listeners will be able to mark our `PrivateMessageEvent` as either -allowed or denied. - -```java -public class PrivateMessageEvent implements ResultedEvent { - - private final Player sender; - private final Player recipient; - private final String message; - - private GenericResult result = GenericResult.allowed(); // Allowed by default - - public PrivateMessageEvent(Player sender, Player recipient, String message) { - this.sender = sender; - this.recipient = recipient; - this.message = message; - } - - public Player sender() { - return sender; - } - - public Player recipient() { - return recipient; - } - - public String message() { - return message; - } - - @Override - public GenericResult result() { - return result; - } - - @Override - public void setResult(GenericResult result) { - this.result = Objects.requireNonNull(result); - } - -} -``` - -Per convention, the result of a `ResultedEvent` should never be null. Here, we assure that using -`Objects.requireNonNull`. - -Listeners may 'deny' the event by using `event.setResult(GenericResult.denied())`, and you may check -the result with `event.getResult()`. diff --git a/docs/webshare/developers/api/scheduler.md b/docs/webshare/developers/api/scheduler.md deleted file mode 100644 index 54c86f5..0000000 --- a/docs/webshare/developers/api/scheduler.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -slug: /velocity/developers/scheduler-api ---- - -# Using the Scheduler - -The Velocity Scheduler lets you decide when and how your plugin tasks run, allowing fine control -over execution. On Velocity, there is no main thread. All tasks run using the Velocity Scheduler are -thus run asynchronously. - -## Running a delayed task - -All scheduling works by using a `TaskBuilder` returned from the `Scheduler`. This fluent builder may -be chained to configure the details of the scheduling. - -```java -server.getScheduler() - .buildTask(plugin, () -> { - // do stuff here - }) - .delay(2L, TimeUnit.SECONDS) - .schedule(); -``` - -Here, we are scheduling a task to run 2 seconds later. Velocity requires the instance of your -plugin, `plugin` above. If you are scheduling a task from your main plugin class you may simply use -`this`. - -Time arguments are specified as a `long` with a `java.util.concurrent.TimeUnit`. Using time units -makes scheduling delayed tasks more readable and allows for greater precision. -`2L, TimeUnit.SECONDS` is far easier to understand than the ambiguous `2000L`. - -## Running a repeating task - -Creating a repeating task is similar to a delayed task, but you must also specify -`repeat(long, TimeUnit)`. This example will repeat every 5 minutes. - -```java -server.getScheduler() - .buildTask(plugin, () -> { - // do stuff here - }) - .repeat(5L, TimeUnit.MINUTES) - .schedule(); -``` - -## Running a task now - -Tasks use the scheduler's cached thread pool for all execution, which reuses threads. To take -advantage of this thread pool for running async tasks which run now, simply omit calling the _delay_ -and _repeat_ methods of the TaskBuilder. - -## Cancellation - -The `schedule()` method returns a `ScheduledTask`, which may then be used to cancel the task -involved via the `cancel()` method. Tasks cannot be uncancelled. - -Additionally, `task.status()` returns the current status of the task. - -```java -ScheduledTask task = server.getScheduler() - .buildTask(plugin, () -> { - // do stuff here - }) - .repeat(5L, TimeUnit.MINUTES) - .schedule(); -// ... -task.cancel(); -// ... -System.out.println(task.status()); -``` diff --git a/docs/webshare/developers/getting-started/api-basics.md b/docs/webshare/developers/getting-started/api-basics.md deleted file mode 100644 index 510a093..0000000 --- a/docs/webshare/developers/getting-started/api-basics.md +++ /dev/null @@ -1,129 +0,0 @@ ---- -slug: /velocity/developers/api-basics ---- - -# Velocity Plugin Basics - -Now we will lay the groundwork for your first plugin. We will cover how to create your very first -Velocity plugin. - -## Create the plugin class - -Create a new class (let's say `com.example.velocityplugin.VelocityTest`) and paste this in: - -```java -package com.example.velocityplugin; - -import com.google.inject.Inject; -import com.velocitypowered.api.plugin.Plugin; -import com.velocitypowered.api.proxy.ProxyServer; -import org.slf4j.Logger; - -@Plugin(id = "myfirstplugin", name = "My First Plugin", version = "0.1.0-SNAPSHOT", - url = "https://example.org", description = "I did it!", authors = {"Me"}) -public class VelocityTest { - - private final ProxyServer server; - private final Logger logger; - - @Inject - public VelocityTest(ProxyServer server, Logger logger) { - this.server = server; - this.logger = logger; - - logger.info("Hello there! I made my first plugin with Velocity."); - } -} -``` - -What did you just do there? There's quite a bit to unpack, so let's focus on the Velocity-specific -bits: - -```java -@Plugin(id = "myfirstplugin", name = "My First Plugin", version = "0.1.0-SNAPSHOT", - url = "awesome.org", description = "I did it!", authors = {"Me"}) -public class VelocityTest { -``` - -This tells Velocity that this class contains your plugin (myfirstplugin) so that it can be loaded -once the proxy starts up. Velocity will detect where the plugin will reside when you compile your -plugin. - -Moving on, what's this? - -```java -@Inject -public VelocityTest(ProxyServer server, Logger logger) { - this.server = server; - this.logger = logger; - - logger.info("Hello there, it's a test plugin I made!"); -} -``` - -This looks like magic! How is Velocity doing this? The answer lies in the `@Inject`, which indicates -that Velocity should inject a ProxyServer and the Logger when constructing your plugin. These two -interfaces will help you out as you begin working with Velocity. We won't talk too much about -dependency injection: all you need to know is that Velocity will do this. - -All you need to do is build your plugin, put it in your `plugins/` directory, and try it! Isn't that -nice? In the next section you'll learn more about how to use the API. - -## Choosing `@Plugin` Information - -Choose your plugin's ID wisely. Other plugins will use this ID to depend on yours. If you change it, -you could break compatibility. - -The plugin name is somewhat less important. It will be shown to users as the display name of your -plugin, but tweaking it will not be catastrophic. - -For the version, we recommend sticking to semantic versioning - you can read more about this concept -at [semver.org](https://semver.org). Basically, use 3 numbers in your version, such as 1.4.25. -Increment the major number when you make a backwards-incompatible breaking change, increment the -minor number when you add functionality that is backwards compatible, and increment the patch number -when you fix a bug or make an otherwise unnoticeable change in the implementation. - -You can also describe your plugin's URL, authors, and description in your `@Plugin` annotation. -Plugin dependencies are also be specified there, but we'll get to that later. - -### A word of caution - -In Velocity, plugin loading is split into two steps: construction and initialization. The code in -your plugin's constructor is part of the construction phase. There is very little you can do safely -during construction, especially as the API does not specify which operations are safe to run during -construction. Notably, you can't register an event listener in your constructor, because you need to -have a valid plugin registration, but Velocity can't register the plugin until the plugin has been -constructed, causing a "chicken or the egg" problem. - -To break this vicious cycle, you should always wait for initialization, which is indicated when -Velocity fires the ProxyInitializeEvent. We can do things on initialization by adding a listener for -this event, as shown below. Note that Velocity automatically registers your plugin main class as a -listener. - -```java -@Subscribe -public void onProxyInitialization(ProxyInitializeEvent event) { - // Do some operation demanding access to the Velocity API here. - // For instance, we could register an event: - server.getEventManager().register(this, new PluginListener()); -} -``` - -## Getting your Plugin's Directory - -At some point you may need your plugin's directory. To do this, add -`@DataDirectory Path dataDirectory` to your plugin's constructor parameters: - -```java -private final Path dataDirectory; - -@Inject -public VelocityTest(ProxyServer server, Logger logger, @DataDirectory Path dataDirectory) { - this.server = server; - this.logger = logger; - this.dataDirectory = dataDirectory; -} -``` - -This will get you a `java.nio.file.Path` of your plugin directory. If you absolutely need a -`java.io.File`, you may use `Path#toFile()`. However, Velocity usually works with `Path`. diff --git a/docs/webshare/developers/getting-started/creating-your-first-plugin.md b/docs/webshare/developers/getting-started/creating-your-first-plugin.md deleted file mode 100644 index 969aed3..0000000 --- a/docs/webshare/developers/getting-started/creating-your-first-plugin.md +++ /dev/null @@ -1,120 +0,0 @@ ---- -slug: /velocity/developers/creating-your-first-plugin ---- - -# Creating Your First Plugin - -import Tabs from "@theme/Tabs"; -import TabItem from "@theme/TabItem"; - -It is very simple to create a plugin for Velocity. This section will teach you how to setup your -IDE, your plugin identifiers, and give you an introduction to the basics of the Velocity API. - -## Before you continue... - -You will need proficiency in the Java programming language. If you don't know Java yet, we strongly -recommend you learn some basic Java before you continue. - -## Set up your environment - -You're going to need the [JDK](../../../common/java-install.md) and an IDE. If you don't have an -IDE, IntelliJ IDEA is recommended. - -## Creating the project in your IDE - -- Open your IDE -- Click `Create New Project` or the equivalent -- Select either `Gradle` or `Maven` -- Make sure your **Project JDK** is Java 8 or later -- **Finish** the dialog and open the project. - -Now we have created our project, we need configure our build system. - -## I know how to do this. Give me what I need! - -### Maven repository - -| Name | URL | -| --------- | -------------------------------------------------- | -| `papermc` | `https://papermc.io/repo/repository/maven-public/` | - -### Dependency - -| Group ID | Artifact ID | Version | -| --------------------- | -------------- | ------- | -| `com.velocitypowered` | `velocity-api` | `3.1.1` | - -### Javadocs - -Javadocs are available at [jd.velocitypowered.com/3.0.0](https://jd.velocitypowered.com/3.0.0). - -## Set up your build system - -You will need to setup a build system before you continue. While it is possible to write Velocity -plugins without one, having a build system will make your life a lot less difficult. - -How to set up a build system is outside the scope of this page, but you can look at your build -system's documentation ([Gradle](https://docs.gradle.org/current/userguide/userguide.html) or -[Maven](https://maven.apache.org/guides/getting-started/index.html)) for assistance. - -### Setting up the dependency - - - - -```xml name="pom.xml" - - - - papermc - https://papermc.io/repo/repository/maven-public/ - - - - - - com.velocitypowered - velocity-api - 3.1.1 - provided - - - -``` - - - - -```kotlin name="build.gradle.kts" -repositories { - maven { - name = "papermc" - url = uri("https://papermc.io/repo/repository/maven-public/") - } -} - -dependencies { - compile("com.velocitypowered:velocity-api:3.1.1") - annotationProcessor("com.velocitypowered:velocity-api:3.1.1") -} -``` - - - - -```groovy name="build.gradle" -repositories { - maven { - name 'papermc' - url 'https://papermc.io/repo/repository/maven-public/' - } -} - -dependencies { - compile 'com.velocitypowered:velocity-api:3.1.1' - annotationProcessor 'com.velocitypowered:velocity-api:3.1.1' -} -``` - - - diff --git a/docs/webshare/developers/getting-started/pitfalls.md b/docs/webshare/developers/getting-started/pitfalls.md deleted file mode 100644 index 3e65e82..0000000 --- a/docs/webshare/developers/getting-started/pitfalls.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -slug: /velocity/developers/pitfalls ---- - -# Common Pitfalls - -While we try to make the API a pleasure to use, there are the occasional rough edges, and you should -be aware of them. - -## Accessing the API at construction time - -In Velocity, plugin loading is split into two steps: construction and initialization. The code in -your plugin's constructor is part of the construction phase. There is very little you can do safely -during construction, especially as the API does not specify which operations are safe to run during -construction. Notably, you can't register an event listener in your constructor, because you need to -have a valid plugin registration, but Velocity can't register the plugin until the plugin has been -constructed. - -To break this cycle, you should always wait for initialization, which is indicated when Velocity -fires the ProxyInitializeEvent. We can do things on initialization by adding a listener for this -event, as shown below. Note that Velocity automatically registers your plugin main class as a -listener. - -```java -@Subscribe -public void onProxyInitialization(ProxyInitializeEvent event) { - // Do some operation demanding access to the Velocity API here. - // For instance, we could register an event: - server.getEventManager().register(this, new PluginListener()); -} -``` - -## Audience operations not supported - -Velocity only supports sending chat messages, action bar messages, titles, and boss bars through the -Adventure API. No other operations are supported. diff --git a/docs/webshare/developers/how-to/dependencies.md b/docs/webshare/developers/how-to/dependencies.md deleted file mode 100644 index 2726858..0000000 --- a/docs/webshare/developers/how-to/dependencies.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -slug: /velocity/developers/dependency-management ---- - -# Dependency Management - -Dependencies are common. You need to hook into another plugin. You don't want to write the same code -someone else has already solved. Whatever you do, you need a way to manage your dependencies -effectively. - -## Plugin dependencies - -Adding a dependency on another plugin is done with the `@Plugin` annotation in your main class. -Let's revisit that briefly: - -```java -@Plugin( - id = "myfirstplugin", - name = "My Plugin", - version = "0.1.0" -) -public class VelocityTest { - // ... -} -``` - -Say we have a dependency on another plugin, call it `wonderplugin`. To add it as a dependency, do -the following: - -```java -@Plugin( - id = "myfirstplugin", - name = "My Plugin", - version = "0.1.0", - dependencies = { - @Dependency(id = "wonderplugin") - } -) -public class VelocityTest { - // ... -} -``` - -The id of the dependency is the same as the other plugin's `id` from its `@Plugin` annotation. This -is why having a stable plugin ID is important. - -That's it! Now, your plugin will require wonderplugin to load, and when it does, it will load -_after_ wonderplugin. - -To specify multiple dependencies, separate them by commas: -`dependencies = {@Dependency(id = "wonderplugin"), @Dependency(id = "otherplugin")}` - -## Optional plugin dependencies - -To make a dependency optional, add `optional = true`, like shown: - -```java -@Plugin( - id = "myfirstplugin", - name = "My Plugin", - version = "0.1.0", - dependencies = { - @Dependency(id = "wonderplugin", optional = true) - } -) -public class VelocityTest { - // ... -} -``` - -## External dependencies - -:::caution - -Please remember to relocate any dependencies you shade. Failure to relocate will lead to dependency -conflicts with other plugins. - -::: - -Dependencies on other libraries aren't handled by Velocity. You will need to add them using your -build system. - -If your plugin does not shade its dependencies, but rather attaches them from a directory, you may -use the PluginManager's `addToClasspath` method instead of using reflection to access the -ClassLoader. diff --git a/docs/webshare/developers/how-to/porting-from-velocity-1.md b/docs/webshare/developers/how-to/porting-from-velocity-1.md deleted file mode 100644 index 5752e72..0000000 --- a/docs/webshare/developers/how-to/porting-from-velocity-1.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -slug: /velocity/developers/porting-plugins-from-velocity-1 ---- - -# Porting Your Plugin from Velocity 1.x.x - -Velocity 3.0.0 includes important API changes from the Velocity 1.x.x series. **Please read this -document very carefully**. - -## Minimum supported Java version bump - -Velocity 3.0.0 now requires Java 11 and above. The Velocity API is compiled for Java 8 for the -convenience of plugins that want to run on older versions of Java, but we may decide to bump this in -a future major release. - -## Removal of legacy dependencies - -We removed all support for the old `text` 3 library. For `text` 3.x.x (and all the APIs that depend -on it), direct equivalents are available in [Adventure](https://docs.adventure.kyori.net/) which was -introduced in Velocity 1.1.0. - -`toml4j`, deprecated in Velocity 1.1.0 (as it is no longer maintained), has not been removed to -provide more time for plugins to migrate to Configurate 3. However, you should prepare to either -switch to Configurate 3 or shade toml4j into your plugin directly. - -## New asynchronous event system - -Velocity 3.0.0 contains a backport of Velocity Polymer's event system, which differs from Velocity -1.x.x's event system in a number of ways. Velocity 1.x.x's event model forced all events to be -executed asynchronously on a fixed-size thread pool, which has proven over time to be a flawed -model. - -Existing event handlers will continue to work unmodified on Velocity 3.0.0, as all event handlers -are assumed to be asynchronous blocking handlers by default. However, there are some new APIs -introduced for handling continuations - see the [event API page](../api/event.md) for more -information. However, you are encouraged to migrate your event listeners to the new event API -paradigms. diff --git a/docs/webshare/getting-started/README.md b/docs/webshare/getting-started/README.md deleted file mode 100644 index f948323..0000000 --- a/docs/webshare/getting-started/README.md +++ /dev/null @@ -1,138 +0,0 @@ -# Getting Started - -This page covers how to install and set up a minimal configuration of Velocity. - -## Installing Java - -Velocity is written in Java, so if you do not already have Java installed, you will need to install -it before you continue. Velocity requires Java 11 or newer. See our -[java installation guide](../../common/java-install.md) for detailed instructions. - -## Downloading Velocity - -Head over to the [downloads](https://papermc.io/downloads#Velocity) page to get the latest version -of Velocity. We recommend getting the latest stable version. After downloading Velocity, move the -JAR file to a dedicated folder for just the proxy or upload it to your server. - -## Launching Velocity for the first time - -Once you have downloaded Velocity, we will launch it for the first time to generate the -configuration file, `velocity.toml`. You can use the start script created to launch Velocity once -you're done configuring Velocity. - -### Launching Velocity under Windows - -Create a `start.bat` with the following contents in the same directory where you intend to place the -proxy files. - -```batch title="start.bat" -@echo off -java -Xms512M -Xmx512M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -jar velocity.jar -pause -``` - -:::tip - -Make sure to change the `velocity.jar` to the name of the Velocity JAR that you downloaded, or -rename the Velocity JAR to `velocity.jar`. - -::: - -Once saved, double-click the `start.bat` file. If it worked, you should now receive a console -similar to the output in the next section. - -### Launching Velocity under macOS or Linux - -Create a `start.sh` with the following contents in the same directory where you intend to place the -proxy files. You may do this using a file transfer client, or using a text editor running on the -host. - -```bash title="start.sh" -#!/bin/sh - -java -Xms1G -Xmx1G -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar velocity*.jar -``` - -Once saved, open a terminal (or log into the machine) if you haven't already, navigate to the -directory where you have placed the Velocity JAR file and the `start.sh` file. Then run -`chmod +x start.sh` and then `./start.sh`. If it worked, you should now receive a console similar to -the output in the next section. - -## After launch - -Here's a sample of what you'll see once we've started the proxy: - -```log -[05:41:13 INFO]: Booting up Velocity 3.1.2-SNAPSHOT (git-b2800087-b112)... -[05:41:13 INFO]: Loading localizations... -[05:41:13 INFO]: Connections will use epoll channels, libdeflate (Linux aarch64) compression, OpenSSL (Linux aarch64) ciphers -[05:41:13 INFO]: Loading plugins... -[05:41:13 INFO]: Loaded 0 plugins -[05:41:13 INFO]: Listening on /[0:0:0:0:0:0:0:0%0]:25577 -[05:41:13 INFO]: Done (0.36s)! -``` - -Velocity has launched, and you are now ready to configure the proxy completely. Go ahead and type -`end` at the console and press enter. The proxy will shut down: - -```log -> end -[05:42:10 INFO]: Shutting down the proxy... -[05:42:10 INFO]: Closing endpoint /0.0.0.0:25577 -``` - -If you used the Windows batch script from earlier, the window will ask you to press a key. You can -either press a key or close the command window. - -### Configuring your servers - -We now need to configure each server to accept connections from the proxy. - -Velocity is a highly configurable proxy. While most users will not need to change everything in the -config, there are tons of options covered -[on the configuration wiki page](../reference/configuration.md) along with an explanation on how -each option works. However, in this section we will do the bare minimum to get the proxy up and -running. - -Open the `velocity.toml` file in a text editor and search for the `[servers]` section. This section -specifies the servers that Velocity can connect to. Here's what the `[servers]` section will look -like initially: - -```toml title="velocity.toml" -[servers] -# Configure your servers here. Each key represents the server's name, and the value -# represents the IP address of the server to connect to. -lobby = "127.0.0.1:30066" -factions = "127.0.0.1:30067" -minigames = "127.0.0.1:30068" - -# In what order we should try servers when a player logs in or is kicked from a server. -try = [ - "lobby" -] -``` - -On the left side, you will specify a name for the server (for example, `lobby`) and on right is a -string indicating the IP address and port for the server. You will now need to add your servers to -the list. You can change the list of servers as needed. - -The `try` setting is special. It is a list of servers Velocity should try to connect the player to -when the player first logs onto the proxy or gets kicked from a server. If you decided to change the -name of the `lobby` server, then you should replace `lobby` in this list with the name you chose for -the first server the player should log into first. - -:::caution - -The following setup is generic and is intended to apply to any Minecraft server. This setup is not -only not ergonomic (players will lack skins, proper UUIDs, and all connections will appear to come -from the proxy) but also **dangerously insecure**. After you place your servers in offline mode, you -**must** follow the "Player Information Forwarding" and "Securing Your Servers" topics to complete -your setup. - -::: - -Open the `server.properties` file for each of your servers and set the `online-mode` setting to -`false`. This allows Velocity to connect to your server. Once you're done, restart your server. -While Velocity is now ready for use, you will almost certainly want to -[secure your servers](../how-to/security.md) and -[configure player information forwarding](forwarding.md). diff --git a/docs/webshare/getting-started/faq.md b/docs/webshare/getting-started/faq.md deleted file mode 100644 index 3205d6a..0000000 --- a/docs/webshare/getting-started/faq.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -slug: /velocity/faq ---- - -# Frequently Asked Questions - -Over the years, we've been asked many of the same questions by users. This FAQ attempts to answer as -many of these questions from the user perspective. - -## What version of Java does Velocity require? - -Velocity 3.0.0 requires Java 11 or above. - -## Where can I find Velocity plugins? - -A good source for finding plugins compatible with Velocity would be our -[forums](https://forums.velocitypowered.com/c/plugins/plugin-releases/6). - -## Does Velocity support plugins developed for BungeeCord or Waterfall? - -No. Many of the things Velocity can do could not be done if we decided to support BungeeCord -plugins. - -However, certain plugins may have Velocity ports available or alternatives are available. In -addition, plugins that support BungeeCord but only require that they are installed on the server -(nothing on the proxy) typically use the BungeeCord plugin messaging channel, which is supported -natively by the latest versions of Velocity. - -## Help, I can't connect to my server! - -There are a few common causes for why you can't connect to the server. - -### Basic Troubleshooting - -As a first step, you should verify: - -- that your servers are started and are responsive to console input -- that the proxy is started -- that the server and proxy are bound to the appropriate port and IP - -### Improper Player Information Forwarding Errors - -``` -Can't connect to server lobby: If you wish to use IP forwarding, please enable it in your Bungeecord config as well! -``` - -``` -Can't connect to server lobby: Your server did not send a forwarding request to the proxy. Is it set up correctly? -``` - -These errors are result of improper configuration. See -[Player Information Forwarding](forwarding.md) to learn how to properly set up player information -forwarding. - -### Improper Modern Player Information Forwarding - -``` -Can't connect to server lobby: This server requires you to connect with Velocity. -``` - -This error is a result of enabling Velocity modern forwarding on your backend server but not -enabling it in Velocity. To fix this error, ensure that you have set up the correct player -information forwarding method on the proxy. See [Player Information Forwarding](forwarding.md) for -more information. - -### Invalid Payload Register - -``` -[server connection] player1 -> hub has connected -[connected player] player1 (/localhost:58943): kicked from server hub: Invalid payload REGISTER! -``` - -This error typically occurs on Spigot-based servers when someone connects with a modded client. You -can fix this issue if you use Paper (or a fork of Paper) 1.12.2 or above by adding the startup flag -`-Dpaper.disableChannelLimit=true` to the server's startup flags and restarting the server. - -### Argument type identifier XXX unknown - -``` -Argument type identifier : unknown. -``` - -If you receive this message, there are two possibilities. If you run a modded server and are using -Fabric 1.16+ and above, update to at least Velocity 1.1.2 and install -[CrossStitch](https://www.curseforge.com/minecraft/mc-mods/crossstitch). (If you are running any -other kind of modded server and have it working with Velocity, let us know!) - -If you receive this message but run a vanilla server, -[please report a bug to the Velocity issue tracker](https://github.com/PaperMC/Velocity/issues/new). - -### Read time out while switching to a Forge server - -Particularly for some very large mod packs, there is an elevated risk of the connection between the -player and the proxy dropping. There is not much we can do on the proxy end to alleviate this. We -suggest either reducing the number of mods your server uses, or raise the `read-timeout` setting in -`velocity.toml` and add the `-Dfml.readTimeout` startup flag to your Forge server and setting it to -the value (in seconds) you chose for the proxy. For instance, if you determine that 120 seconds is -the best read timeout to use, use `-Dfml.readTimeout=120` and set `read-timeout = 120000` in -`velocity.toml`. - -### My forced hosts are not working! - -First, double-check that you properly set up DNS records pointing to your proxy for the forced hosts -you have selected. Forced hosts are _not_ compatible with SRV records, so if you are relying on SRV -records to direct the player to the proxy, you will need to find a way to get the proxy running on -the default Minecraft port, 25565. diff --git a/docs/webshare/getting-started/forwarding.md b/docs/webshare/getting-started/forwarding.md deleted file mode 100644 index 73370e6..0000000 --- a/docs/webshare/getting-started/forwarding.md +++ /dev/null @@ -1,105 +0,0 @@ ---- -slug: /velocity/player-information-forwarding ---- - -# Configuring player information forwarding - -Velocity supports forwarding information about your players to your servers, such as IP addresses, -UUIDs and skins. Velocity supports three forwarding formats: - -- **Velocity modern forwarding** is a custom forwarding format (modern forwarding) that is more - secure. -- **BungeeCord forwarding** (also known as _legacy forwarding_) which has better compatibility but - is less secure. -- **BungeeGuard**, which is the same as BungeeCord forwarding but includes a secret key. It is - better than BungeeCord forwarding alone, but it is less ideal than Velocity modern forwarding. - -:::info - -You may choose between only one of these forwarding formats. It is not currently possible to "mix -and match" forwarding modes or use all the forwarding formats together. In general, if you are -supporting clients using Minecraft 1.13 and newer only, use Velocity modern forwarding, else you -must use BungeeCord forwarding. - -::: - -## Configuring modern forwarding - -`modern` forwarding is a Velocity-native format. It forwards all player information in an efficient -binary format and employs a MAC code to make it much more difficult to trick the server into -impersonating your Velocity proxy. However, it is only available for Minecraft 1.13 or higher. - -:::caution - -Modern forwarding is incompatible with Minecraft versions below 1.13, Minecraft Forge, and the -ProtocolSupport plugin. If you use any of these, you will need to use legacy BungeeCord-compatible -forwarding instead. - -::: - -To use modern forwarding with any supported server implementation, set the `player-info-forwarding` -setting in `velocity.toml` to `modern`. Then, you need to ensure your server is properly configured -to use Velocity forwarding. - -### Configuring modern forwarding for Paper - -Paper 1.14+ and above, along with Paper 1.13.1/1.13.2 build 377 and above support Velocity modern -forwarding natively. - -First, you need to disable BungeeCord forwarding if you had it enabled beforehand. Make sure -`settings.bungeecord` is set to `false` in your `spigot.yml`. - -In `paper.yml`, set `settings.velocity-support.enabled` to true and -`settings.velocity-support.secret` to match the secret in your `velocity.toml`. You must also set -`settings.velocity-support.online-mode` to the `online-mode` setting in your `velocity.toml`. Once -you're done editing `paper.yml`, reboot your server. - -## Configuring modern forwarding for Fabric - -A mod called [FabricProxy-Lite](https://modrinth.com/mod/fabricproxy-lite) allows you to use -Velocity modern forwarding with a modded server using Fabric. - -## Configuring legacy BungeeCord-compatible forwarding - -:::danger - -Legacy forwarding is **fundamentally insecure**. If you must use it, you should understand -[how to secure your server properly](../how-to/security.md). That page reviews all the possible -options to secure your server so that nothing aside from the proxy can connect to your server. - -::: - -`legacy` forwarding is the player information forwarding protocol that is used by BungeeCord when -enabling IP forwarding from BungeeCord. Due to this, it is ubiquitous and well-supported by most -server implementations. It has excellent compatibility (supporting versions as old as 1.7.2, -released in 2013) and will work with Forge if you also install SpongeForge on your modded server and -configure it correctly. However, it is not secure. - -If you must use BungeeCord-compatible forwarding, simply set your `player-info-forwarding` setting -in `velocity.toml` to `legacy`. You will also need to make sure your server can accept the forwarded -player data sent by Velocity. - -To add some security, particularly for proxies hosted on shared hosting, Velocity optionally -supports the [BungeeGuard](https://www.spigotmc.org/resources/bungeeguard.79601/) plugin. To use it, -set the `player-info-forwarding` setting in `velocity.toml` to `bungeeguard`, then add the value in -`forwarding-secret` to the token section in the BungeeGuard configuration. - -### Configuring legacy forwarding for Spigot / Paper - -To make Spigot or Paper understand the data forwarded from Velocity, set `settings.bungeecord` to -`true` in your `spigot.yml` and then reboot your server. - -### Configuring legacy forwarding for Sponge - -To configure Sponge to understand the data forwarded from Velocity, you will need to stop the server -first, set `modules.bungeecord` to `true` and `bungeecord.ip-forwarding` to true in your -`config/sponge/global.conf` file, and then restart your Sponge server. - -### Configuring legacy forwarding for Fabric - -:::caution - -There are no longer any actively supported mods that support legacy forwarding. Please use Velocity -modern forwarding instead. - -::: diff --git a/docs/webshare/getting-started/why-velocity.md b/docs/webshare/getting-started/why-velocity.md deleted file mode 100644 index cfc4b35..0000000 --- a/docs/webshare/getting-started/why-velocity.md +++ /dev/null @@ -1,89 +0,0 @@ ---- -slug: /velocity/why-velocity ---- - -# What Does Velocity Do For Me? - -We believe that Velocity is one of the best proxies for _Minecraft_ around, and there's not much -that can top it. However, we do diverge from more established, mainstream solutions in some -important ways. That can make Velocity a bit hard to sell. We are frequently asked "why?" so often. -This page is our answer to that question. - -## Strong experience - -The founder and primary developer of Velocity (Tux) has been active in developing proxy software for -_Minecraft: Java Edition_ since 2013. They created the RedisBungee plugin, contributed to BungeeCord -from 2014 to 2017, and also founded the Waterfall project and led it from 2016 to 2017. In fact, the -current maintainer of Waterfall helped encourage them to start a brand new proxy from the ground up! - -## Leading performance - -Velocity powers several highly-populated Minecraft networks, while using fewer resources than the -competition. The recipe to the sauce is simple. - -### No entity ID rewriting - -When a Minecraft client connects to another Minecraft server, the server will send back an ID that -uniquely identifies a specific player connection. This ID is used in packets that target the player -that the server may send. But what happens when they're actually connecting a proxy that has the -ability to change what server the player is connected to? - -Other proxy solutions try to solve this problem by rewriting entity IDs that reference the current -player, changing it from the entity ID assigned by the server the player is currently connected to, -to the entity ID that the player got when they connected to the first server they connected to -through the proxy. This approach is often complicated, leads to bugs, reduces performance, breaks -mods, and ultimately cannot be a complete solution. - -However, the Minecraft client actually supports changing its entity ID with a special packet -sequence. Velocity takes advantage of this and forces the client to change its entity ID. This -approach improves performance, improves mod compatibility, and reduces issues caused by incomplete -entity ID rewrites. - -### Going deep - -Velocity goes deeper than optimizing the handling of the Minecraft protocol. Smart handling of the -protocol produces incredible performance gains but for more performance, we need to go much deeper. - -One way in which we drastically improve performance and throughput is by improving the speed of -compressing packets to be sent to the client. On supported platforms (Linux x86_64 and aarch64), -Velocity is able to replace the zlib library ( which implements the compression algorithm used by -the Minecraft protocol) with [libdeflate](https://github.com/ebiggers/libdeflate) which is twice as -fast as zlib while delivering a similar compression ratio. - -Velocity also employs several tricks to get the JIT (just-in-time) compiler on our side. Those -tricks require deep understanding of how Java works, but we put in the work to apply those tricks -which translate to increased performance. - -### Internal stability policies - -Finally, Velocity does not attempt to maintain a stable internal API between minor and major -releases. This allows Velocity to be more flexible and still deliver performance improvements and -new features with each release. For instance, Velocity 1.1.0 delivered massive performance -improvements and added many significant new features by breaking parts of the internal API while -still keeping full compatibility with older plugins. Compare to BungeeCord which is often very -conservative about API breaks and when it does so, provides little notice of the break, and even -when doing a break, does not take the opportunity to seriously improve the API being broken (for -instance, adding RGB support to `ChatColor`). - -### Control is in your hands - -We take pride in tuning Velocity to be the most performant proxy, but in case the speed provided -out-of-the-box is not good enough, you can easily tweak several performance-related settings in -`velocity.toml`. - -## Improved security - -Velocity also features more security features, some of which are unique to Velocity. We proactively -foreclose as many denial-of-service attacks as soon as possible and feature a unique player info -forwarding system for Minecraft 1.13+ that requires the server and proxy to know a pre-arranged key. - -## Standards and mod support - -Unlike certain platforms which only provide lip service to the modding community (and can be at time -hostile to them), Velocity embraces the richness of the platform Minecraft provides. As just a small -example, we have a Fabric mod that -[helps bridge the gap between Velocity itself and mods that extend the Minecraft protocol](https://www.curseforge.com/minecraft/mc-mods/crossstitch) -and feature full Forge support for 1.7 through 1.12.2, with support for newer versions in -development. Velocity also supports emerging standard libraries in the community such as Kyori's -[Adventure](https://github.com/KyoriPowered/adventure) library. We collaborate with the Minecraft -modding community. diff --git a/docs/webshare/how-to/migration.md b/docs/webshare/how-to/migration.md deleted file mode 100644 index d983d5e..0000000 --- a/docs/webshare/how-to/migration.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -slug: /velocity/migration ---- - -# Migration Guide - -New to Velocity, or upgrading to a new version of Velocity? This page will briefly explore what you -need to be aware of for a successful migration - -## Migrating from Velocity 1.0.x to Velocity 1.1.0 - -Moving from Velocity 1.0.x to Velocity 1.1.0 should be as simple as just replacing the Velocity JAR -and restarting the proxy. You may want to back up your `velocity.toml` and then delete the current -`velocity.toml` and let Velocity regenerate it to add the new settings that Velocity 1.1.0 -introduces. diff --git a/docs/webshare/how-to/security.md b/docs/webshare/how-to/security.md deleted file mode 100644 index beceff2..0000000 --- a/docs/webshare/how-to/security.md +++ /dev/null @@ -1,142 +0,0 @@ ---- -slug: /velocity/security ---- - -# Securing Your Servers - -It is vital that you secure your backend servers. As part of setting up Velocity, you will put your -server into offline mode, which means in theory, someone could impersonate any player on your -server. This is extremely dangerous, so it is important to make sure only the proxy can connect to -your servers. - -This guide will explore the various options for securing your backend servers so only your proxy can -connect to them. Note that this is an _exploration_ of options, aiming to review the various options -and give you advantages and disadvantages to them so you can make an informed decision. - -This list is not in any particular order, and almost all of these methods can be combined as needed. - -## Operating System Firewalls - -When properly configured, using the firewall facilities provided by your server's operating system -is a highly effective way to protect your servers. The Velocity project **strongly recommends the -use of a firewall**. - -Instructions for your operating system may vary. Solutions for major server OSes include: - -- Windows: Windows Firewall -- Linux: iptables, nftables - -**Advantages**: - -- Fool-proof if you do not give untrusted servers access to your servers -- Does not require any extra Minecraft server configuration -- Part of good system hardening advice for any operating system - -**Disadvantages**: - -- Tricky first-time setup -- May be difficult to use with multiple proxies -- Firewall configuration must be kept in sync with new servers and proxies -- Not viable on a shared host - -## Velocity Modern Forwarding - -If your server only supports Minecraft 1.13 and above, Velocity's modern forwarding can forward -player information to your servers and provide a second layer of protection against someone trying -to impersonate as your proxy. - -:::caution - -Velocity modern forwarding is not a replacement for a firewall. We strongly recommend using a -firewall with any Minecraft proxy setup. - -::: - -**Advantages**: - -- Get player info forwarding for free -- Secure on a shared host, provided the host has implemented proper protections -- Works if you host your server on multiple physical servers - -**Disadvantages**: - -- Only works for Minecraft 1.13 and above -- Requires Paper 1.13 or above, or FabricProxy-Lite if you use Fabric -- Relies on the forwarding secret being kept secret - -## Binding To `localhost` - -If you are hosting your proxy on the same physical computer as your other servers (and nobody else -is hosting servers on them), binding your servers to `localhost` is a very simple way of protecting -them from getting connected to by anything other than the proxy. - -For each server, open the `server.properties` file. Find the line that starts with `server-ip` and -change the line to `server-ip=127.0.0.1`. Save the file and restart the server. - -Afterwards, open your `velocity.toml` file and ensure all the servers are pointing to -`127.0.0.1:`. - -**Advantages**: - -- Trivial setup compared to other methods discussed -- Fool-proof if you do not give untrusted users access to your server - -**Disadvantages**: - -- Setup must be reversed (and an alternate method used) if you move any of the servers to a - different physical server ( such that the proxy and the server are not on the same physical - server) -- Not viable on a shared host - -## Using an Encrypted Tunnel - -This is a variation on "Binding To `localhost`", but instead of hosting all your servers on a single -physical server, you will set up an encrypted tunnel between each of your servers, and make sure the -server only listens for incoming connections from the tunnel. There are many different solutions, -ranging from VPN solutions such as [WireGuard](https://www.wireguard.com), -[OpenVPN](https://openvpn.net/), and [tinc](https://www.tinc-vpn.org/) to encrypted tunnels such as -[spiped](https://www.tarsnap.com/spiped.html). This guide will not go into details of how to set up -each of these solutions. - -**Advantages**: - -- Encrypts traffic between your proxy and your servers while ensuring only authorized clients can - connect to your servers - -**Disadvantages**: - -- Very complex setup -- Impossible to use on a shared host - -## IP Whitelisting Plugins - -As a last line of defense, you can choose to restrict logins to users on an IP whitelist using a -plugin like [IPWhitelist](https://www.spigotmc.org/resources/ipwhitelist.61/). - -**Advantages**: - -- May be your only solution if none of the other solutions will work (especially on a shared host) - -**Disadvantages**: - -- Vulnerable to attack if the attacker can get a server on the same node as your proxy is on - -## Other Important Security Advice - -This common-sense general advice goes without saying: - -- Keep frequent backups of your server -- Set up a firewall on your server -- Run your servers as an unprivileged user (this means no `sudo` access or running as `root` for - Linux users!) -- Update Velocity, your Minecraft server and server plugins, and your server's operating system - frequently -- Use strong passwords -- Carefully think about the potential impacts of installing any plugins or software before actually - doing so -- Secure any and all other services you may be running on your server -- Follow all system hardening advice for your operating system - -We will not provide a full treatment to the advice given above, so please do some research of your -own. Your setup will vary - there is no "one size fits all" advice we can give other than these -general guidelines. diff --git a/docs/webshare/how-to/tuning.md b/docs/webshare/how-to/tuning.md deleted file mode 100644 index a84e664..0000000 --- a/docs/webshare/how-to/tuning.md +++ /dev/null @@ -1,149 +0,0 @@ ---- -slug: /velocity/tuning ---- - -# Tuning Velocity - -Velocity comes with good performance out of the box. We go in deep, starting from smart algorithmic -choices, making strategic usage of native libraries, all the way to the JVM level, optimizing the -proxy so that the JVM will make better decisions when optimizing the code. - -## Host the proxy on Linux - -Velocity comes with high-performance, specially tuned native libraries for compression and -encryption, along with including native transports from Netty. However, due to support constraints, -the compiled natives are only verified to work on Linux x86_64 and aarch64. While Velocity does not -require the natives to work, you will suffer from degraded performance. For this reason, we strongly -recommend that all production deployments of Velocity run on x86-64 Linux. - -## Allocate server resources appropriately - -You should always make sure to allocate the correct amount of heap, network bandwidth, and get the -right CPU for the amount of players you want to have on your proxy at a given time. For instance, it -is unlikely you'll be able to get 1,000 players on a Raspberry Pi Zero, but you'll have a much -better chance if you have a recent high-end server CPU from Intel or AMD. - -There is no "one-size-fits-all" hardware recommendation, only general guidelines for the amount of -players you can expect: - -- Prefer lots of cores but lower clock speeds. Unlike the Minecraft server, Velocity can actually - benefit from the extra cores and single-threaded performance is not as important. -- You should always have enough memory to run Velocity, including room for JVM overhead and for your - operating system. For a rough minimum recommended memory amount, double the size of the proxy heap - and then add 2GB. For instance, for a proxy with a 2GB heap, plan on getting at least 6GB of - memory. -- Disk speed is unimportant. A solid-state drive is nice to have but not strictly required. - Likewise, disk capacity is unimportant as well. - -### Special notes regarding speculative execution security vulnerabilities - -Starting in 2018, a number of security vulnerabilities with regard to -[speculative execution](https://en.wikipedia.org/wiki/Speculative_execution) used by modern CPUs -have been discovered. - -The mitigations to these vulnerabilities can have painful performance implications, especially on -processors vulnerable to Meltdown and further compounded if running in a virtual machine. Velocity, -as a network application, is particularly sensitive to the performance hits that the mitigations -introduce. - -To minimize these hits, we recommend hosting your proxy on a machine with a CPU that has mitigations -against Spectre and Meltdown. Processors released in 2019 and onwards typically contain mitigations -to protect against Spectre and Meltdown. - -If you are using a CPU vulnerable to Spectre and/or Meltdown and are willing to risk security for -performance, it is also possible to disable Spectre/Meltdown mitigations depending on the operating -system you use. Note however that you disable these security mitigations _at your own risk_. The -Velocity project does not recommend that you disable these mitigations. - -## Allocate enough heap - -Alongside having enough CPU, memory, and network bandwidth, you must also allocate enough Java heap -to the proxy. Not doing this can induce lag and in severe cases may result in the proxy being -terminated by the Java Virtual Machine because it ran out of memory. - -The general rule of thumb is that you allocate 512MB per 500 players, plus some extra to allow for -some room for error ( typically 1GB extra). For instance, if you want to handle 1,000 on a single -proxy, plan to allocate 2GB of heap. - -### Special notes for containers - -**If you use a containerized setup (such as using Kubernetes, Pterodactyl, or Docker directly), you -should not allocate the entirety of your memory allocation to the heap!** Doing so _will_ likely -cause the proxy to be killed by the kernel's out-of-memory killer, which will result in your proxy -going down, likely at the worst possible time. - -A safe (albeit conservative) setting for the heap would be to allocate half of the memory you -allocate to the proxy container in total. For instance, if you know the proxy will need to hold -1,000 players, then allocate 4GB to the container and give the proxy 2GB of heap. - -## Tune your startup flags - -We also recommend tuning your startup flags. The current recommendation is: - -``` --XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -``` - -You will add these flags after the `java` command but before the `-jar` parameter. - -### Explanation of the flags - -Most of these flags focus on tuning the G1 garbage collector to be more friendly to Velocity's -workload. One of these flags (`-XX:MaxInlineLevel=15`) tends to improve performance in general. - -Before the release of Java 9, the default Java garbage collector was the Parallel GC. This is a -stop-the-world collector that does its work in parallel. The problem is that its pause times tend to -be long, and are not suitable for Minecraft (often showing up as seemingly unexplainable lag -spikes). - -The recommended garbage collector for Velocity is the G1 region-based collector. There are several -reasons for us to recommend G1: - -- It strikes the right balance between throughput and pause times. Throughput is roughly how much - work the proxy can achieve. -- It is compatible with most setups (it is available in Java 8, the earliest Java version we - support). - -Setups using these flags tend have very low (less than 10 millisecond) GC pauses every few minutes, -which is very good for Minecraft. - -### Other configurations - -:::caution - -Deviating from the configuration we recommend is done solely at your own risk. - -::: - -Velocity is an application that tends to follow the generational hypothesis quite closely. It has -also been tuned to reduce load on the garbage collector as much as possible. - -#### ZGC - -ZGC (the Z Garbage Collector), introduced with Java 11 and stabilized with Java 15, has proven to be -successful for one large-scale deployment of Velocity. - -At its core, ZGC is a concurrent, generation-less garbage collector emphasizing low latency at the -expense of throughput. Given the nature of Velocity as a network proxy where low throughput and high -throughput are important, we recommend using ZGC with caution, and only if you use Java 15 or above. - -The primary tuning flag for ZGC is heap size - if ZGC cannot collect garbage faster than the proxy -can allocate it, the threads generating garbage will be temporarily paused, causing the proxy to -appear to be laggy. Our heap size recommendations still apply, but prepare to give the proxy more -memory if necessary. - -#### Shenandoah - -Introduced in Java 11 and declared stable in Java 15, Shenandoah is similar to G1 in being a -concurrent, generational garbage collector, but it does more work in parallel. - -The Velocity team is not aware of any successful deployments of Shenandoah with Velocity in the -wild. - -#### OpenJ9 - -OpenJ9 is an alternative to the HotSpot JVM derived from IBM's J9 JVM, focused primarily on cloud -workloads. As a result, it behaves very differently from HotSpot. Correspondingly, it has a -completely different set of garbage collectors. - -The default `gencon` garbage collector should work fine with Velocity. diff --git a/docs/webshare/reference/commands.md b/docs/webshare/reference/commands.md deleted file mode 100644 index cc65391..0000000 --- a/docs/webshare/reference/commands.md +++ /dev/null @@ -1,68 +0,0 @@ ---- -slug: /velocity/built-in-commands ---- - -# Built-In Commands - -Velocity includes a few commands in the core of the proxy by default. These commands were chosen -based on how generally useful they are to most users. - -Of course, you can always install plugins to add more commands if you want. - -## The `/velocity` command - -The `/velocity` command contains a number of subcommands to manage the proxy. - -### `/velocity plugins` - -If the user has the `velocity.command.plugins` permission, they can view all the plugins currently -active on the proxy using `/velocity plugins`, including the name, authors, and version. - -### `/velocity version` - -Displays the version of Velocity running on the proxy. - -### `/velocity reload` - -If the user has the `velocity.command.reload` permission, the proxy will read and reconfigure itself -from the `velocity.toml` on disk. If there are problems with parsing the file, no changes will be -applied. - -### `/velocity dump` - -:::caution - -This command will send some basic information to a web service maintained by the Velocity project -(`dump.velocitypowered.com`). While we anonymize potentially sensitive details in the proxy such as -external IP addresses and all dumps expire after 3 days, we do not take responsibility for any -potential misuse of the data provided. Use this command with caution and after you have considered -the privacy and security concerns. - -::: - -If the user has the `velocity.command.plugins` permission, they can use this command to get an -anonymized dump of details on the proxy. This can be sent to the Velocity Discord to help us provide -support. - -## `/server` - -If the user has the `velocity.command.server` permission (by default, this is granted to all users), -players can use this command to view and switch to another server. - -Executing just `/server` will send the user the name of the server they are currently on, along with -options to move to other servers configured on the proxy. - -If a server name has been provided, Velocity will attempt to connect to the server. - -## `/shutdown` - -When executed from the console, this will gracefully shut down the Velocity proxy. All players will -be disconnected from the proxy and plugins will have a chance to finish up before the proxy shuts -down. An optional reason can be given, either as JSON or with legacy color codes, in the same format -as the MOTD in `velocity.toml`. - -## `/glist` - -If the user has the `velocity.command.glist` permission (by default, this is granted to nobody), -players can use this command to view the number of players currently on the proxy and use -`/glist all` to get a listing of players per server. diff --git a/docs/webshare/reference/comparison.md b/docs/webshare/reference/comparison.md deleted file mode 100644 index be31578..0000000 --- a/docs/webshare/reference/comparison.md +++ /dev/null @@ -1,90 +0,0 @@ ---- -slug: /velocity/comparisons-to-other-proxies ---- - -# Comparing With Other Proxies - -Presumably, you've read up about what Velocity can do for you. But how does it stack up against -other solutions out there? We're biased, so we'll try to be as honest as possible by fully -acknowledging our bias in advance. We are the developers of Velocity and we're trying to convince -you to use Velocity, after all. - -## BungeeCord and derivatives - -We can't treat the full history of Minecraft proxy software with justice – we recommend -[Me4502's excellent article](https://madelinemiller.dev/blog/decade-of-minecraft-multiplayer/) that -covers the multiplayer Minecraft world in great detail. Needless to say, Velocity was influenced by -a desire to avoid all the faults we perceived that needed to be resolved with BungeeCord. - -### BungeeCord - -There are several reasons why we can't just "improve BungeeCord": - -- BungeeCord is very conservative with regard to API changes. If it breaks some plugin developed 5 - years ago from an inactive developer, you can forget about it. -- The changes that _do_ change the API are often quite particular and niche use cases and changing - the API in substantial ways is frowned upon (witness the support for RGB colors in `ChatColor`). -- The project is essentially run like a cathedral. In BungeeCord (and its sister project, Spigot), - the word of md_5 is king. Contributing a simple security fix to BungeeCord earned the primary - developer of Velocity at least two beratings. -- BungeeCord is actively hostile to continued support for Minecraft modding. -- We have seen new modding APIs for _Minecraft_ since the first version of BungeeCord released - in 2012. It's time for a new and improved API that does not make the mistakes the BungeeCord API - makes, and to draw influence from the new modding APIs that Minecraft now boasts. - -### Waterfall - -The founder of the Velocity project also founded the Waterfall project. The natural question, then, -is why they couldn't just have improved Waterfall. Why start on a new API with no plugins lined up -and a very uncertain chance of success, let alone an user base willing to take their chances on such -new software, when you can have access to the rich plugin ecosystem that BungeeCord boasts? - -Unfortunately, that attempt fell to the scythe of [Hyrum's Law](https://www.hyrumslaw.com/): - -> With a sufficient number of users of an API, it does not matter what you promise in the contract: -> all observable behaviors of your system will be depended on by somebody. - -Here's Hyrum's law in comic format, in case that eases getting the point across: - -> [![xkcd #1172](https://imgs.xkcd.com/comics/workflow.png)](https://xkcd.com/1172/) -> ["Workflow"](https://xkcd.com/1172/) from [xkcd](https://xkcd.com/) by Randal Munroe, -> [licensed](https://xkcd.com/license.html) under -> [CC BY-NC 2.5](https://creativecommons.org/licenses/by-nc/2.5/) - -Most BungeeCord plugins are deeply dependent on the specific behaviors and quirks BungeeCord -exposes, which Velocity cannot perfectly emulate. I'll use an example of a video game. One day, a -game studio A publishes a video game X that you really like. You run it on operating system Y made -by company B, and it works great. Sometime after, studio A goes out of business. You are sad but -continue life because at least game X works just fine. One day, company B releases a new version of -operating system Y. You upgrade to it and discover that your game doesn't work. Who are you going to -blame, company B for breaking the game, or company A for shipping a defective project? Chances are, -the average consumer will blame company B. This isn't new — -[witness Raymond Chen, who documents the sad compatibility history of Windows, saying essentially the same thing](https://devblogs.microsoft.com/oldnewthing/20110131-00/?p=11633) -. - -We can point to one example where -[an attempt](https://github.com/PaperMC/Waterfall/commit/c8eb6aec7bac82fd309fa6d6113b8a0418317b01) -to improve scoreboard handling on 1.13 and above -[was reversed](https://github.com/PaperMC/Waterfall/issues/255) thanks to plugins expecting -BungeeCord's broken behavior. At this point, it is fairly obvious why making a clean break was -better. Given that this happened near the start of the Velocity project's lifetime, it was probably -a quite powerful motivator, although it certainly wasn't the only motivator. - -### Hypothetical BungeeCord API-based Velocity - -We are compelled to mention this briefly as this was a topic brought up in the early days of the -project. We could have based Velocity on the BungeeCord API (or a derivative thereof, such as the -Waterfall API) instead. - -This is a fool's ploy. Let us revisit the video game example from earlier. One day, you discover a -new operating system, Z. You really like it more than operating system Y, and it has tool T that can -run programs meant for operating system Y. You install it and your favorite game, X. You then launch -game X to be disappointed with all the glitched out textures and borderline broken gameplay. You -feel quite hurt by it. This is a real world example too, just substitute Y for "Windows", Z for "any -Linux distribution", and T for "Wine", and there you have it. We would essentially have to have a -convincing decoy to pretend Velocity looked and smelled like a BungeeCord implementation to a -plugin, while not actually being based on BungeeCord. This would force us to introduce ever more -elaborate decoys to pretend to be bug-for-bug and binary compatible with BungeeCord, which would -force us to spend time on ensuring compatibility with every BungeeCord plugin ever rather than -delivering new features. At that point, Velocity winds up just being a slightly better optimized -Waterfall. diff --git a/docs/webshare/reference/configuration.md b/docs/webshare/reference/configuration.md deleted file mode 100644 index 9f20238..0000000 --- a/docs/webshare/reference/configuration.md +++ /dev/null @@ -1,92 +0,0 @@ ---- -slug: /velocity/configuration ---- - -# Configuring Velocity - -Velocity is designed to be easy to configure and set up. Every Velocity file is stored in -`velocity.toml`, located in the directory where you started the proxy. Velocity uses the -[TOML](https://github.com/toml-lang/toml) file format, as it is easy to understand and avoids -pitfalls of YAML and other configuration formats common in the community. - -An up-to-date version of the default configuration can be found on -[GitHub](https://github.com/PaperMC/Velocity/blob/dev/3.0.0/proxy/src/main/resources/default-velocity.toml). - -## Data types - -There are a few "special" data types in the Velocity configuration. - -### Chat - -Chat messages may be provided in legacy color code format or in JSON format. - -RGB support (using the `&#rrggbb` format) is available and JSON messages are deserialized for -Minecraft 1.16. - -### Address - -An address is a pairing of an IP address or hostname, and a port, separated by a colon (`:`). For -instance, `127.0.0.1:25577` and `server01.example.com:25565` are valid addresses. - -## Root section - -These settings mostly cover the basic, most essential settings of the proxy. - -| Setting Name | Type | Description | -| ----------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `config-version` | String | This is the current config version used by Velocity. You should not alter this setting. | -| `bind` | Address | This tells the proxy to accept connections on a specific IP. By default, Velocity will listen for connections on all IP addresses on the computer on port 25577. | -| `motd` | Chat | This allows you to change the message shown to players when they add your server to their server list. You can use legacy Minecraft color codes or JSON chat. | -| `show-max-players` | Integer | This allows you to customize the number of "maximum" players in the player's server list. Note that Velocity doesn't have a maximum number of players it supports. | -| `player-info-forwarding-mode` | Enum | See [Configuring player information forwarding](../getting-started/forwarding.md) for more information. | -| `forwarding-secret` | String | This setting is used as a secret to ensure that player info forwarded by Velocity comes from your proxy and not from someone pretending to run Velocity. See the "Player info forwarding" section for more info. | -| `announce-forge` | Boolean | This setting determines whether Velocity should present itself as a Forge/FML-compatible server. By default, this is disabled. | -| `kick-existing-players` | Boolean | Allows restoring the vanilla behavior of kicking users on the proxy if they try to reconnect (e.g. lost internet connection briefly). | -| `ping-passthrough` | String | Allows forwarding nothing (the default), the `MODS` (for Forge), the `DESCRIPTION`, or everything (`ALL`) from the `try` list (or forced host server connection order). | - -## `server` section - -| Setting Name | Type | Description | -| ------------- | ------- | -------------------------------------------------------------------------------------------------------------------------- | -| A server name | Address | This makes the proxy aware of a server that it can connect to. | -| `try` | Array | This specifies what servers Velocity should try to connect to upon player login and when a player is kicked from a server. | - -## `forced-hosts` section - -| Setting Name | Type | Description | -| ------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| A host name | Hostname | This configures the proxy to create a forced host for the specified hostname. An array of servers to try for the specified hostname is the value. | - -## `advanced` section - -| Setting name | Type | Description | -| ------------------------------------------ | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `compression-threshold` | Integer | This is the minimum size (in bytes) that a packet must be before the proxy compresses it. Minecraft uses 256 bytes by default. | -| `compression-level` | Integer | This setting indicates what `zlib` compression level the proxy should use to compress packets. The default value uses the default zlib level. | -| `login-ratelimit` | Integer | This setting determines the minimum amount of time (in milliseconds) that must pass before a connection from the same IP address will be accepted by the proxy. A value of `0` disables the rate limit. | -| `connection-timeout` | Integer | This setting determines how long the proxy will wait to connect to a server before timing out. | -| `read-timeout` | Integer | This setting determines how long the proxy will wait to receive data from the server before timing out. | -| `proxy-protocol` | Boolean | This setting determines whether or not Velocity should receive HAProxy PROXY messages. If you don't use HAProxy, leave this setting off. | -| `tcp-fast-open` | Boolean | This setting allows you to enable TCP Fast Open support in Velocity. Your proxy must run on Linux kernel >=4.14 for this setting to apply. | -| `bungee-plugin-message-channel` | Boolean | This setting allows you to enable or disable support for the BungeeCord plugin messaging channel. | -| `show-ping-requests` | Boolean | This setting allows you to log ping requests sent by clients to the proxy. | -| `announce-proxy-commands` | Boolean | This setting allows you to enable or disable explicitly sending proxy commands to the client (for Minecraft 1.13+ tab completion). | -| `failover-on-unexpected-server-disconnect` | Boolean | This setting allows you to determine if the proxy should failover or disconnect the user in the event of an unclean disconnect. | -| `log-command-executions` | Boolean | Determines whether or not the proxy should log all commands run by the user. | - -## `query` section - -| Setting name | Type | Description | -| -------------- | ------- | ------------------------------------------------------------------------------------------------------------ | -| `enabled` | Boolean | Whether or not Velocity should reply to Minecraft query protocol requests. You can usually leave this false. | -| `port` | Number | Specifies which port that Velocity should listen on for GameSpy 4 (Minecraft query protocol) requests. | -| `map` | String | Specifies the map name to be shown to clients. | -| `show-plugins` | Boolean | Whether or not Velocity plugins are included in the query responses. | - -## `metrics` section - -| Setting name | Type | Description | -| ------------- | ------- | --------------------------------------------------------------------------------------------------- | -| `enabled` | Boolean | Whether or not Velocity should send metrics to bStats. | -| `id` | UUID | A randomly generated UUID that uniquely identifies your Velocity server. Do not alter this setting. | -| `log-failure` | Boolean | Whether or not Velocity should log whenever it fails to connect to bStats. | diff --git a/docs/webshare/reference/libraries.md b/docs/webshare/reference/libraries.md deleted file mode 100644 index 32dffcd..0000000 --- a/docs/webshare/reference/libraries.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -slug: /velocity/credits ---- - -# Libraries Used - -Velocity uses a number of open-source libraries: - -| Name | Author | License | -| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| [Guava](https://github.com/google/guava) | [Google](https://github.com/google) | [Apache License 2.0](https://github.com/google/guava/blob/master/COPYING) | -| [Gson](https://github.com/google/gson) | [Google](https://github.com/google) | [Apache License 2.0](https://github.com/google/gson/blob/master/LICENSE) | -| [Netty](https://github.com/netty/netty) | [Netty Project](https://netty.io) | [Apache License 2.0](https://github.com/netty/netty/blob/4.1/LICENSE.txt) | -| [libdeflate](https://github.com/ebiggers/libdeflate) | [Eric Biggers](https://github.com/ebiggers) | [MIT License](https://github.com/ebiggers/libdeflate/blob/master/COPYING) | -| [text](https://github.com/KyoriPowered/text) | [KyoriPowered](https://github.com/KyoriPowered) | [MIT License](https://github.com/KyoriPowered/text/blob/master/license.txt) | -| [adventure](https://github.com/KyoriPowered/text) | [KyoriPowered](https://github.com/KyoriPowered) | [MIT License](https://github.com/KyoriPowered/adventure/blob/master/license.txt) | -| [Brigadier](https://github.com/Mojang/brigadier) | [Mojang](https://www.minecraft.net) | [MIT License](https://github.com/Mojang/brigadier/blob/master/LICENSE) | -| [event](https://github.com/KyoriPowered/event) | [KyoriPowered](https://github.com/KyoriPowered) | [MIT License](https://github.com/KyoriPowered/event/blob/master/license.txt) | -| [ASM](http://asm.ow2.org/) | [OW2](https://www.ow2.org/) | [BSD 3-Clause License](http://asm.ow2.io/license.html) | -| [SLF4J](https://github.com/qos-ch/slf4j) | [SLF4J](https://www.slf4j.org/) | [MIT License](https://github.com/qos-ch/slf4j/blob/master/LICENSE.txt) | -| [Log4j](https://logging.apache.org/log4j/2.x/) | [Apache Log4j Team](https://logging.apache.org/log4j/2.x/team-list.html) | [Apache License 2.0](https://logging.apache.org/log4j/2.x/license.html) | -| [TerminalConsoleAppender](https://github.com/Minecrell/TerminalConsoleAppender) | [Minecrell](https://github.com/Minecrell) | [MIT License](https://github.com/Minecrell/TerminalConsoleAppender/blob/master/LICENSE) | -| [Configurate](https://github.com/SpongePowered/configurate) | [SpongePowered](https://github.com/SpongePowered) | [Apache License 2.0](https://github.com/SpongePowered/configurate/blob/master/LICENSE) | -| [SnakeYAML](https://bitbucket.org/asomov/snakeyaml) | [Andrey Somov](https://bitbucket.org/asomov) | [Apache License 2.0](https://bitbucket.org/asomov/snakeyaml/src/default/LICENSE.txt) | -| [HOCON](https://github.com/lightbend/config) | [lightbend](https://github.com/lightbend) | [Apache License 2.0](https://github.com/lightbend/config/blob/master/LICENSE-2.0.txt) | -| [toml4j](https://github.com/mwanji/toml4j) | [Moandji Ezana](https://github.com/mwanji) | [MIT License](https://github.com/mwanji/toml4j/blob/master/LICENSE) | -| [Night-Config](https://github.com/TheElectronWill/night-config) | [TheElectronWill](https://github.com/TheElectronWill) | [GNU Lesser General Public License 3.0](https://github.com/TheElectronWill/night-config/blob/master/LICENSE) | -| [fastutil](http://fastutil.di.unimi.it/) | [Sebastiano Vigna](http://vigna.di.unimi.it/) | [Apache License 2.0](https://github.com/vigna/fastutil/blob/master/LICENSE-2.0) | -| [JLine](https://github.com/jline/jline3/blob/master/LICENSE.txt) | [JLine project](https://github.com/jline/jline3) | [BSD 3-Clause License](https://github.com/jline/jline3/blob/master/LICENSE.txt) | -| [AsyncHttpClient](https://github.com/AsyncHttpClient/async-http-client) | [Stephane Landelle](https://github.com/slandelle) | [Apache License 2.0](https://github.com/AsyncHttpClient/async-http-client/blob/master/LICENSE.txt) | -| [completable-futures](https://github.com/spotify/completable-futures) | [Spotify](https://github.com/spotify) | [Apache License 2.0](https://github.com/spotify/completable-futures/blob/master/LICENSE) | diff --git a/docs/webshare/reference/server-compatibility.md b/docs/webshare/reference/server-compatibility.md deleted file mode 100644 index 9ccb1d4..0000000 --- a/docs/webshare/reference/server-compatibility.md +++ /dev/null @@ -1,90 +0,0 @@ ---- -slug: /velocity/server-compatibility ---- - -# Server Compatibility - -Velocity is compatible with many Minecraft server implementations. The expectation is that if the -server acts like vanilla, Velocity will work, and we make special provisions for modded setups where -we can. - -## Compatible game versions - -As of this writing, Velocity is compatible with Minecraft 1.7.2 through 1.18.1. - -## Vanilla setups - -Velocity is best-tested with implementations derived from the vanilla server by Mojang that do not -add content to the game itself. - -### Vanilla servers - -The Mojang vanilla software is in a complicated position. It is useful as we often produce protocol -updates using the Mojang server for testing, but in production setups, the lack of player info -forwarding support can induce subtle client problems. - -If you plan to run a vanilla server, **the Velocity team strongly recommends that you use Fabric -with the FabricProxy-Lite mod**. Fabric and FabricProxy-Lite do not by themselves change the vanilla -experience, and your server will remain compatible with vanilla clients. If you are unable (or -unwilling) to run Fabric, [VanillaCord](https://github.com/ME1312/VanillaCord) allows you to use -legacy BungeeCord forwarding. - -### Spigot - -Spigot is not well-tested with Velocity. However, it is based on vanilla and as it is the base for -Paper, it is relatively well-supported. - -Spigot does not support Velocity's modern forwarding, but does support legacy BungeeCord forwarding. - -### Paper - -The Velocity project recommends using Paper for running a public server. Velocity works with all -versions of Paper from 1.7.10 to the latest version. - -You can use Velocity's modern forwarding if you run Paper 1.13.2 or higher. If you use Paper 1.12.2 -or lower, you must use legacy BungeeCord-style forwarding. - -### SpongeVanilla - -SpongeVanilla is compatible with legacy BungeeCord-style forwarding. Our Sponge support largely -focuses on Forge compatibility, see below for more information. - -## Modded setups - -### Fabric - -Velocity works with Fabric out of the box, but you should add support for player info forwarding -using a mod like [FabricProxy-Lite](https://modrinth.com/mod/fabricproxy-lite) (which supports -Velocity modern forwarding). - -In addition, if you intend to run mods that add new content on top of vanilla, you should install -[CrossStitch](https://modrinth.com/mod/crossstitch), which improves support for certain Minecraft -features that are extended by mods, such as custom argument types. This mod is officially maintained -by the Velocity project. - -### Minecraft Forge (1.13 and above) - -**Minecraft Forge for Minecraft 1.13 and later is not compatible with Velocity** due to changes made -in the handshake protocol that are difficult for proxies to adapt to. Support is currently a work in -progress, but there is no set time for support to be available. - -### Minecraft Forge (1.7.2-1.12.2) - -Minecraft Forge for Minecraft 1.7.2-1.12.2 is fully compatible with Velocity, as we make special -provisions to synchronize client state with each server. However, we **strongly** recommend the use -of SpongeForge, as it allows you to use legacy BungeeCord player info forwarding and generally -improves proxy support in general. - -Velocity does not support Forge-Bukkit hybrids - they have caused several issues, and the design of -the Bukkit API precludes any notion of sane mod support. - -## Proxy-behind-proxy (BungeeCord/Waterfall, Velocity, ...) - -These setups are _completely unsupported_. You are best advised to avoid them, as they can cause -lots of issues. Most proxy-behind-proxy setups are either illogical in the first place or can be -handled more gracefully by better, more scalable and performant solutions. - -## Other Implementations - -This is, naturally, not an exhaustive list. Alternative implementations of the Minecraft protocol -may or may not work. We encourage you to experiment and to contribute back with your results. diff --git a/docusaurus.config.js b/docusaurus.config.js index 2184d87..b7d826b 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -5,19 +5,19 @@ const isPreview = process.env.DEPLOY_PREVIEW === "true"; /** @type {import("@docusaurus/types").Config} */ const base = { - title: "Dino Documentation", - tagline: "Documentation for anything Dino.", + title: "Lethal-Extended Documentation", + tagline: "Documentation for Lethal-Extended devs", customFields: { description: - "Documentation for all projects under the Dino umbrella.", + "Documentation for all projects under the Extended umbrella.", }, - url: isPreview ? process.env.PREVIEW_URL : "https://docs.dinopanel.net", + url: isPreview ? process.env.PREVIEW_URL : "https://docs.lethal-extended.com", baseUrl: isPreview ? process.env.PREVIEW_BASE_URL : "/", onBrokenLinks: isCI ? "throw" : "warn", onBrokenMarkdownLinks: isCI ? "throw" : "warn", onDuplicateRoutes: isCI ? "throw" : "error", favicon: "img/favicon.ico", - organizationName: "DiskCraft", + organizationName: "Lethal-Extended", projectName: "docs", trailingSlash: false, noIndex: isPreview, @@ -54,7 +54,7 @@ const base = { { tagName: "link", rel: "icon", - href: "img/diskcraft3.png", + href: "img/logo.png", }, { tagName: "link", @@ -77,7 +77,7 @@ const base = { colorMode: { respectPrefersColorScheme: true, }, - image: "img/ccn.png", + image: "img/logo.png", metadata: [ { name: "twitter:card", @@ -89,28 +89,28 @@ const base = { }, { name: "og:image:alt", - content: "DiskCraft Logo", + content: "LE Logo", }, ], navbar: { - title: "Dino Docs", + title: "Lethal-Extended Docs", logo: { - alt: "DiskCraft Logo", - src: "img/Dino-512x-transparent.png", + alt: "LE Logo", + src: "img/logo.png", }, items: [ { - to: "https://downloads.dinopanel.net", + to: "https://lethal-extended.com/branches.html", label: "Downloads", position: "right", }, { - href: "https://discord.gg/pVH5EMeeEE", + href: "https://discord.gg/BkmEarDQxq", className: "header-icon-link header-discord-link", position: "right", }, { - href: "https://github.com/Dino-Panel", + href: "https://gitea.pengucc.com/Lethal-Extended/", className: "header-icon-link header-github-link", position: "right", }, @@ -124,7 +124,7 @@ const base = { items: [ { label: "Discord", - href: "https://discord.gg/xte8RZ2AsS", + href: "https://discord.gg/BkmEarDQxq", }, ], }, @@ -133,16 +133,16 @@ const base = { items: [ { label: "Main Site", - href: "https://dinopanel.net", + href: "https://lethal-extended.com", }, { label: "GitHub", - href: "https://github.com/Dino-Panel", + href: "https://gitea.pengucc.com/Lethal-Extended/", }, ], }, ], - copyright: `Copyright © ${new Date().getFullYear()} Dino and Contributors`, + copyright: `Copyright © ${new Date().getFullYear()} Lethal-Extended and Contributors`, }, prism: { additionalLanguages: [ diff --git a/sidebars.js b/sidebars.js index 1f68080..c2296dd 100644 --- a/sidebars.js +++ b/sidebars.js @@ -6,15 +6,15 @@ const sidebars = { { type: "link", label: "Support Discord", - href: "https://discord.gg/pVH5EMeeEE", + href: "https://discord.gg/BkmEarDQxq", }, "README", { type: "category", - label: "diskcraft", + label: "lethal-extended", link: { type: "doc", - id: "diskcraft/README", + id: "lethalextended/README", }, items: [ { @@ -22,16 +22,9 @@ const sidebars = { label: "Getting Started", link: { type: "doc", - id: "diskcraft/getting-started/README", + id: "lethalextended/getting-started/README", }, - items: ["diskcraft/getting-started/README"], - }, - { - type: "category", - label: "Reference", - items: [ - "diskcraft/reference/diskcraft-global-configuration", - ], + items: ["lethalextended/getting-started/README"], }, ], }, diff --git a/src/components/Projects.tsx b/src/components/Projects.tsx index d36834b..bd71b6a 100644 --- a/src/components/Projects.tsx +++ b/src/components/Projects.tsx @@ -4,11 +4,11 @@ import styles from "../css/projects.module.css"; const projects: Project[] = [ { - title: "Dino v1", + title: "Lethal-Extended Add-Ons", description: - "Easy to use and open source billing system for Pterodactyl", - repo: "DiskCraft/DiskCraft", - link: "/diskcraft", + "How to create add-on packs for Lethal-Extended", + repo: "Lethal-Extended/Lethal-Extended", + link: "/le/getting-started/addons", }, ]; diff --git a/static/img/logo.png b/static/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3955ff30b8609aee60892b8a8c3a4614a2f2a1bf GIT binary patch literal 102366 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 literal 0 HcmV?d00001