Files
Cobblesync/README.md

131 lines
3.7 KiB
Markdown

# CobbleSync
<p align="center">
<img src="src/main/resources/assets/cobblesync/icon.png" alt="CobbleSync Logo" width="128" height="128">
</p>
<p align="center">
<strong>Sync your Pokémon between servers!</strong>
</p>
<p align="center">
<a href="https://git.sirblob.co/GMMC/Cobblesync">
<img src="https://img.shields.io/badge/Minecraft-1.21.1-green.svg" alt="Minecraft Version">
</a>
<a href="https://fabricmc.net/">
<img src="https://img.shields.io/badge/Mod%20Loader-Fabric-blue.svg" alt="Fabric">
</a>
<a href="LICENSE">
<img src="https://img.shields.io/badge/License-CC0--1.0-lightgrey.svg" alt="License">
</a>
</p>
---
## 📖 Description
CobbleSync is a Fabric mod for [Cobblemon](https://cobblemon.com/) that allows players to sync their Pokémon across different servers. Upload your Pokémon from one server and download them on another!
## ✨ Features
- **GUI Interface** - Easy-to-use graphical interface accessible with a keybind
- **Command Support** - Full command-line control for advanced users
- **Cross-Server Sync** - Transfer Pokémon between different Cobblemon servers
- **Safe Transfers** - Loads Pokémon to empty slots without overwriting existing ones
## 🎮 How to Use
### GUI Method (Recommended)
1. Press **U** (default keybind) to open the CobbleSync GUI
2. Click **"⬆ Sync Box 30"** to upload Pokémon from Box 30
3. On another server, click **"⬇ Load Pokémon"** to download your Pokémon to empty slots
### Command Method
| Command | Description |
|---------|-------------|
| `/cobblesync sync` | Upload Pokémon from Box 30 to the cloud |
| `/cobblesync load` | Download Pokémon to empty PC slots |
## ⚠️ Important Notes
- **Sync (Upload)**: Uses **Box 30** - Maximum of 12 Pokémon
- **Load (Download)**: Adds Pokémon to **empty slots** across all PC boxes (won't overwrite existing Pokémon)
- The keybind can be changed in Minecraft's Controls settings under "CobbleSync"
## 📦 Installation
### Requirements
- Minecraft **1.21.1**
- [Fabric Loader](https://fabricmc.net/) **0.16.14+**
- [Fabric API](https://modrinth.com/mod/fabric-api)
- [Fabric Language Kotlin](https://modrinth.com/mod/fabric-language-kotlin)
- [Cobblemon](https://cobblemon.com/) **1.7.2+**
### Steps
1. Download the latest release from the [Releases](https://git.sirblob.co/GMMC/Cobblesync/releases) page
2. Place the `.jar` file in your `mods` folder
3. Make sure all dependencies are installed
4. Launch Minecraft with Fabric
## 🛠️ Building from Source
```bash
# Clone the repository
git clone https://git.sirblob.co/GMMC/Cobblesync.git
cd Cobblesync
# Build the mod
./gradlew build
# The compiled JAR will be in build/libs/
```
## 📁 Project Structure
```
src/
├── client/kotlin/co/sirblob/
│ ├── CobbleSyncClient.kt # Client entry point
│ ├── gui/
│ │ └── CobbleSyncScreen.kt # GUI implementation
│ └── network/
│ └── ClientPacketHandler.kt
├── main/kotlin/co/sirblob/
│ ├── CobbleSync.kt # Main mod entry point
│ ├── Request.kt # HTTP client
│ ├── HTTPException.kt
│ └── network/
│ ├── CobbleSyncPackets.kt # Network packet definitions
│ └── ServerPacketHandler.kt
└── main/resources/
├── fabric.mod.json
└── assets/cobblesync/
├── icon.png
└── lang/en_us.json
```
## 🔧 Configuration
The keybind for opening the GUI can be configured in:
**Options → Controls → Key Binds → CobbleSync → Open CobbleSync**
Default: `U`
## 📝 License
This project is licensed under the [CC0-1.0 License](LICENSE).
## 👤 Author
**Sir_Blob_**
---
<p align="center">
Made with ❤️ for the GMMC
</p>