From abb42fff72ac26a37be582a31140b429d5e8af73 Mon Sep 17 00:00:00 2001 From: creeper123123321 <7974274+creeper123123321@users.noreply.github.com> Date: Thu, 29 Apr 2021 14:33:38 -0300 Subject: [PATCH] Update README.md --- README.md | 41 +++++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index a65e83f..944930e 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,7 @@ Public instances: https://github.com/ViaVersion/VIAaaS/wiki/List-of-Public-Insta Discord: https://viaversion.com/discord -Version translation: -![Supported Versions Chart](https://camo.githubusercontent.com/3c4710d9240ba56d5dea6638f3d2d1f736949b98825492f47a7ba5cdfe950ce8/68747470733a2f2f692e696d6775722e636f6d2f307532305932752e706e67) +Supported versions: https://viaversion.com/ ## How does it work? - [ViaVersion](https://viaversion.com), [ViaBackwards](https://viaversion.com/backwards) and [ViaRewind](https://viaversion.com/rewind) translates the connections to backend server. @@ -16,7 +15,7 @@ Version translation: - Due to technical/security reasons, it requires a CORS Proxy for calling Mojang APIs, which may make Mojang see that as suspicious and reset/block your account password if the IP address seems suspect. - Account credentials aren't sent to VIAaaS instance, though it's intermediated by CORS Proxy. -- VIAaaS receives a session hash from instance and then authenticates the session hash with Mojang. +- VIAaaS receives a the session hash from instance and then the browser validates it to Mojang. ## Setting up server instance Download: [GitHub Actions](https://github.com/ViaVersion/VIAaaS/actions) (needs to be logged into GitHub) or [JitPack](https://jitpack.io/com/github/viaversion/viaaas/master-SNAPSHOT/viaaas-master-SNAPSHOT-all.jar) @@ -46,46 +45,52 @@ node server.js ## Usage for players Usage for offline mode: -- Connect to ```mc.example.com.viaaas.localhost``` +- Connect to ```mc.example.net.viaaas.localhost``` Usage for online mode: - You can use two accounts (avoids Bad Login error), the same account for front-end and back-end connections, or use ```_of``` - (offline mode in frontend, unencrypted and with no username verification. May be useful if you have a client which is incompatible with online mode). + (offline mode in frontend. May be useful if you have a client which is incompatible with online mode). - Go to [VIAaaS auth webpage](https://localhost:25543/) - Configure CORS proxy, see above in "CORS Proxy" section - Listen to the username A you'll use to connect to the proxy. -- Keep the page open - Add the account B to VIAaaS page which you'll use in ```_u(account B)``` parameter below. -- Connect to ```mc.example.com._u(account B).viaaas.localhost``` (```_u``` parameter can be removed if you are using the same username) -- Approve the login in auth webpage +- Keep the page open +- Connect to ```mc.example.com._u(account B).viaaas.localhost``` (```_u``` can be removed if you are using the same username) +- Approve the login in the webpage - If you use the same online mode account, your client may show Bad Login. You can use a mod like - [Auth Me](https://www.curseforge.com/minecraft/mc-mods/auth-me) or [ReAuth](https://www.curseforge.com/minecraft/mc-mods/reauth) for reauthenticating the client. + [Auth Me](https://www.curseforge.com/minecraft/mc-mods/auth-me) or [ReAuth](https://www.curseforge.com/minecraft/mc-mods/reauth). -Example address: ```server.example.com._p25565._v1_12_2._of._uBACKUSERNAME.viaaas.example.com``` (similar to [Tor2web](https://www.tor2web.org/) proxies) +### Address options +Example address: +- ```server.example.net._p25565._v1_12_2._of._uBACKUSERNAME.viaaas.example.com``` +- ```server.example.net.v_1_8.viaaas.example.com``` +- It's inspired by [Tor2web](https://www.tor2web.org/) proxies. Address parts: -- ```server.example.com```: backend server address +- ```server.example.net```: backend server address - ```_p```: backend port - ```_v```: backend version ([protocol id](https://wiki.vg/Protocol_version_numbers) or name with underline instead of dots). ```AUTO``` is default and ``-1`` is fallback if it fails. - ```_o```: ```t``` to force online mode in frontend, ```f``` to disable online mode in frontend. If not set, it will be based on backend online mode. - ```_u```: username to use in backend connection - ```viaaas.example.com```: hostname suffix (defined in config) +- You can use ``(option)_(value)`` too, like ``.p_25565.``. ## WARNING - VIAaaS may trigger anti-cheats, due to block, item, movement and other differences between versions. USE AT OWN RISK -- VIAaaS server instance may have security vulnerabilities, make sure to block the ports in firewall - Take care of browser local storage. Check for XSS vulnerabilities on your domain. - Check the security of CORS proxy, it will intermediate Mojang API calls. - Mojang may lock your account when API is called from a suspect IP address ## FAQ +### Accounts My Microsoft account <18 years old is not able to log in, it's giving XSTS error: - Add your account to a family (see https://wiki.vg/Microsoft_Authentication_Scheme#Authenticate_with_XSTS) Why a online webpage for online mode?: -- It's easier to maintain in that way, because providing a chat with login requires encoding and decoding more packets which change through versions. -- It allows your account password and token to be kept with you +- It's easier to maintain in that way, because providing login via chat requires encoding and decoding more packets which change through versions. +- It allows your account password and token to be kept with you. +### Connection How to use IPv6?: - When listening to 0.0.0.0, it should listen on IPv6 too. - To use IPv6 in backend address, you need to use a instance with IPv6 connectivity. The hostname parser currently doesn't support @@ -103,9 +108,9 @@ How to use with Geyser? ``` - If you are using a public GeyserConnect instance: connect to a publicly available VIAaaS instance, like ```mc.example.com.viaaas.example.net``` as a Java Edition server. -How to connect to 1.7.10 and lower servers with a newer client? -- Use [DirtMultiVersion](https://github.com/DirtPowered/DirtMultiversion) - Can I use it to connect to .onion Minecraft hidden servers? - You can use .onion addresses if the instance is proxying the backend connections to TOR. - Note that VIAaaS may log your requests. \ No newline at end of file + Note that VIAaaS may log your requests. + +Can you support more versions? +- See [DirtMultiVersion](https://github.com/DirtPowered/DirtMultiversion)