.github | ||
gradle/wrapper | ||
lib | ||
proto | ||
src/main | ||
.gitignore | ||
build.gradle | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
gradlew | ||
gradlew.bat | ||
install.sh | ||
keystore.p12 | ||
LICENSE | ||
plugin-schema.json | ||
proxy_config.py | ||
proxy.py | ||
README_fr-FR.md | ||
README_zh-CN.md | ||
README_zh-TW.md | ||
README.md | ||
settings.gradle | ||
start_config.cmd | ||
start.cmd |
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 (recieving items/characters, upgrading items/characters, etc)
Quick setup guide
Note: For support please join our Discord.
Requirements
-
Java SE - 17 (link)
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 actions
- Build by yourself
- Create a
resources
folder in the directory where grasscutter.jar is located and move yourBinOutput
andExcelBinOutput
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 using server console command.
-
Redirect traffic: (choose one)
-
mitmdump:
mitmdump -s proxy.py -k
Trust CA certificate:
**Note:**The CA certificate is usually stored in
%USERPROFILE%\ .mitmproxy
, or you can download it fromhttp://mitm.it
Double click for install or ...
-
Via command line
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
-
-
Fiddler Classic: Run Fiddler Classic, turn on
Decrypt https traffic
in setting and change the default port there (Tools -> Options -> Connections) to anything other than8888
, and load this script.
-
-
Set network proxy to
127.0.0.1:8080
or the proxy port you specified.
you can also use start.cmd
to start servers and proxy daemons automatically, but you have to set up JAVA_HOME enviroment
Building
Grasscutter uses Gradle to handle dependencies & building.
Requirements:
- Java SE Development Kits - 17
- 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.
Commands have moved to the wiki!
Quick Troubleshooting
- If compiling wasn't successful, please check your JDK installation (JDK 17 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 using Fiddler make sure it running on another port except 8888
- Startup sequence: MongoDB > Grasscutter > Proxy daemon (mitmdump, fiddler, etc.) > Game