EN | 简中 | 繁中 | FR | ES | HE | RU | PL | ID | KR | FIL/PH | NL | JP | IT
Attention: We always welcome contributors to the project. Before adding your contribution, please carefully read our Code of Conduct.
Current features
- Logging in
- Combat
- Friends list
- Teleportation
- Gacha system
- Co-op partially works
- Spawning monsters via console
- Inventory features (receiving items/characters, upgrading items/characters, etc)
Quick setup guide
Note: For support please join our Discord.
Requirements
-
Java SE - 17 or higher
Note: If you just want to run it, then jre only is fine.
-
MongoDB (recommended 4.0+)
-
Proxy Daemon: mitmproxy (mitmdump, recommended), Fiddler Classic, etc.
Running
Note: If you updated from an older version, delete config.json
to regenerate it.
- Get
grasscutter.jar
- Download from releases or actions or build the server by yourself.
- Create a
resources
folder in the directory where grasscutter.jar is located and move yourBinOutput, ExcelBinOutput, Readables, Scripts, Subtitle, TextMap
folders there (Check the wiki for more details how to get those.) - Run Grasscutter with
java -jar grasscutter.jar
. Make sure mongodb service is running as well.
Connecting with the client
½. Create an account in the server console using this command.
-
Redirect traffic: (choose one only)
-
mitmdump:
mitmdump -s proxy.py -k
-
Trust CA certificate:
-
The CA certificate is usually stored in
%USERPROFILE%\.mitmproxy
, double clickmitmproxy-ca-cert.cer
to install or... -
Via command line (needs administration privileges)
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
-
-
-
Fiddler Classic: Run Fiddler Classic, turn on
Decrypt HTTPS traffic
in (Tools -> Options -> HTTPS) and change the default port in (Tools -> Options -> Connections) to anything other than8888
, load this script (copy and paste the script in theFiddlerScript
tab) and click theSave Script
button.
-
-
Set network proxy to
127.0.0.1:8080
or the proxy port you specified.
- For mitmproxy: After setting up the network proxy and installing the certificate, check http://mitm.it/ if traffic is passing through mitmproxy.
You can also use start.cmd
to start servers and proxy daemons automatically, but you have to set up JAVA_HOME
environment and configure the start_config.cmd
file.
Building
Grasscutter uses Gradle to handle dependencies & building.
Requirements:
- Java SE Development Kits - 17 or higher
- Git
Windows
git clone https://github.com/Grasscutters/Grasscutter.git
cd Grasscutter
.\gradlew.bat # Setting up environments
.\gradlew jar # Compile
Linux
git clone https://github.com/Grasscutters/Grasscutter.git
cd Grasscutter
chmod +x gradlew
./gradlew jar # Compile
You can find the output jar in the root of the project folder.
wiki!
Commands have moved to theQuick Troubleshooting
- If compiling wasn't successful, please check your JDK installation (Make sure its JDK 17 or higher and validated JDK's bin PATH variable).
- My client doesn't connect, doesn't login, 4206, etc... - Mostly your proxy daemon setup is the issue. If you're using Fiddler, change the default port to anything other than 8888.
- Startup sequence: MongoDB > Grasscutter > Proxy Daemon (mitmdump, fiddler, etc.) > Game