1.1.0-beta
Compatibility
Changes
PaperChat v1.1.0-beta - Release Notes
Minor Update Release
This release introduces significant improvements to PaperChat's existing ecosystem and user experience, configuration system and AI provider integration. The plugin now offers a more intuitive command structure, comprehensive configuration options and support for Hack Club's AI models, alongside existing Google and OpenAI providers.
What does Beta 1.1.0 Offer
Core Features
- Simplified Command Structure: Commands now target the sender. Cross-player AI communication is no longer available due to possible abuse
- Chat History Management: New
/paperchat historyand/paperchat clearcommands - Tab Autocompletion: Smart autocompletion for history and clear subcommands
- HackClub AI Provider: New free provider supporting ai.hackclub.com with multiple models (available only for Hack Club's members)
- Enhanced Configuration: Support for both config.yml and environment variables
AI Provider System
- Multi-Provider Support: Google Gemini, OpenAI GPT, and HackClub AI models
- Flexible Authentication: Providers can be keyless if the underlying service doesn't require API keys
- Automatic Response Sanitization: JSON-Sanitizer integration for robust response parsing
- Think Tag Removal: Automatic filtering of OpenAI reasoning content from responses
- Model Configuration: Improved model selection and validation per provider
Configuration & Security
- Dual Configuration System:
config.ymlfile configuration alongside existing environment variables - Configuration Priority: Environment variables >
config.yml> default values - API Key Security: Optional API keys based on provider requirements
- Input Validation: Character limits and response sanitization
- System Prompt Customization: Improved default AI behavior for better user experience
Development Features
- JSON Sanitization Library: Added Google's JSON-Sanitizer for malformed response handling
- Enhanced Provider Architecture: Cleaner separation between provider logic and response processing
- Improved Error Handling: Better configuration validation and user-friendly error messages
- Build System Updates: Updated Gradle dependencies and shadow plugin configuration
Breaking Changes
Command Structure Changes
- Previous:
/paperchat <target_player> <message> - Current:
/paperchat <message>(AI responds directly to you)
Configuration Changes
- HackClub provider uses empty model field (server-side model selection)
- Google and OpenAI providers now require explicit model configuration
- API keys are now optional and provider-dependent
Technical Requirements
Server Requirements
- PaperMC 1.21 or higher
- Java 21 or higher
- Minimum 1GB RAM (2GB+ recommended)
API Requirements
- Google AI Studio API key (for Google provider)
- OpenAI API key (for OpenAI provider)
- No API key (for HackClub provider - free for Hack Club members)
- Internet connectivity for API requests
Installation & Upgrade
Fresh Installation
- Download the JAR from releases
- Place in your server's
plugins/directory - Launch the server to generate default config
- Configure via
config.ymlor environment variables (check README.md for more details) - Restart your server
Upgrading from v1.0.0-beta
- Replace the old JAR with the new version
- Update configuration to specify explicit models for Google/OpenAI providers
- Optionally migrate to config.yml configuration
- Restart your server
Usage
Send an AI-powered message:
/paperchat How do I build a redstone contraption?
/paperchat What are the best mining strategies?
Manage your chat history:
/paperchat history # View recent interactions
/paperchat clear # Clear your chat history
Known Issues & Limitations
Beta Limitations
- Memory Storage Only: Conversation history is lost on server restart
- Single Server Support: No cross-server communication
- Basic Permission System: Only
paperchat.usepermission implemented
Fixed Issues from v1.0.0-beta
- Improved JSON response parsing reliability with sanitization library
- Resolved provider discovery issues with ServiceLoader
- Added a HackClub provider for free Hack Club members' AI access
- Enhanced command structure for more intuitive usage
- Resolved cross-player spam abuse
New Dependencies
com.mikesamuel:json-sanitizer:1.2.3 - For robust JSON response cleaning
Provider Comparison
| Provider | API Key Required | Models Available | Cost |
|---|---|---|---|
| HackClub | No | qwen/qwen3-32b, openai/gpt-oss-120b, others (selected server-side) | Free for teens enrolled in Hack Club |
| Yes | Gemini family models | Pay per use | |
| OpenAI | Yes | GPT family models | Pay per use |
License
Licensed under Apache 2.0 License - see LICENSE file for details.
Note: This is a beta release intended for testing and feedback. While stable for basic usage, some features may change or new ones be implemented in future releases.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:vV2xfFAq:KOQun1TY"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:vV2xfFAq:KOQun1TY"
}

