Working in PhoenixCore
Welcome to the development team! This guide will help you get your environment set up and familiarize you with our workflow.
๐ ๏ธ Environment Setup
- JDK: Ensure you have JDK 17 installed.
- IDE: We recommend IntelliJ IDEA with the Minecraft Development plugin.
- Clone:
git clone https://github.com/Phoenixvine32908/PhoenixCore.git - Import: Open the project as a Gradle project in your IDE.
๐ Workflow
1. Feature Branches
Always create a new branch for your feature or bugfix:
git checkout -b feature/your-feature-name
2. Code Style
We follow standard Java naming conventions. For GregTech-specific registration, refer to existing classes in net.phoenix.core.common.machine for patterns.
3. Documentation
If you add a new system, you must document it.
- Follow the Documentation Style Guide.
- Ensure player-side info is in docs/content/Gameplay/ and dev-side info is in docs/content/Development/.
๐ฆ Project Structure
src/main/java/net/phoenix/core/api: Public APIs and interfaces.src/main/java/net/phoenix/core/common: Core machine, item, and block logic.src/main/java/net/phoenix/core/integration: Third-party mod integrations (AE2, Ars Nouveau, etc.).src/main/java/net/phoenix/core/mixin: Core logic injections.
๐งช Testing
- Client: Use the
runClientGradle task. - Server: Use the
runServerGradle task to test multi-dimensional and SavedData persistence.
๐ข Communication
If you have questions or want to discuss a feature, reach out on Our Discord or poke Phoenixvine directly.