A Modern Skill System Plugin for Cat Titanic Servers
- Multi-Skill System: Combat, Mining, Foraging, Farming, Fishing - five major skill types
- Experience Gain: Automatically gain skill experience through gameplay actions
- Level Progression: Experience-based leveling system with customizable level caps
- Permission Management: Fine-grained control over skill experience gain permissions
- Leaderboard System: Real-time skill level leaderboards
- Database Storage: MongoDB-based persistent player skill data storage
- Debug Mode: Detailed debugging information for skill experience gain
- Required Dependencies:
| Skill Type | Name | Icon | Permission Node |
|---|---|---|---|
| COMBAT | Combat Skill | Iron Sword | naskill.gainexp.combat |
| MINING | Mining Skill | Iron Pickaxe | naskill.gainexp.mining |
| FORAGING | Foraging Skill | Iron Axe | naskill.gainexp.foraging |
| FARMING | Farming Skill | Iron Hoe | naskill.gainexp.farming |
| FISHING | Fishing Skill | Fishing Rod | naskill.gainexp.fishing |
The plugin supports adding custom skill experience sources by implementing the SkillExpProvider interface:
class CustomSkillExpProvider : SkillExpProvider {
override fun getExp(player: Player, skillType: SkillType): Double {
// Custom experience calculation logic
return 10.0
}
}The plugin publishes the following events for other plugins to listen to:
SkillExpGainEvent- Skill experience gain eventSkillLevelUpEvent- Skill level up event
- Asynchronous Data Processing: Leaderboard updates and database operations use async tasks
- Memory Caching: Player skill data caching to reduce database queries
- Event-Driven: Event-based skill experience gain system
Welcome to submit Issues and Pull Requests to improve this plugin!