Project Details: World Shards - Turn-Based RPG
Project Information
- Category: Mobile RPG (Turn-based)
- Role: Personal Project
- Tech Stack: Unity Engine, C#
- Services: Unity Gaming Services (UGS)
- Project date: March 2025 - May 2025
- Source Code: View on GitHub
Project Overview
World Shards is a strategic mobile RPG featuring a deep elemental combat system and character progression. The project served as a deep dive into Data-Driven Design in Unity, focusing on how to manage large amounts of game content efficiently while maintaining a small memory footprint for mobile devices.
The game incorporates modern mobile features including a weighted Gacha system, persistent cloud saving via Unity Gaming Services, and an adaptive audio system that changes based on the battle intensity.
Technical Implementations
Scriptable Object Architecture
Designed a scalable system using Scriptable Objects to define items, skills, and enemy profiles, separating game data from logic for easier balancing.
UGS Cloud Saving
Integrated Unity Gaming Services for secure player authentication and persistent data storage, allowing players to resume progress across different devices.
Mobile Optimization
Optimized UI draw calls through Atlas packing and implemented efficient memory management to ensure stable 60 FPS on mid-range Android devices.
Probability Logic
Developed a robust Gacha system with pity mechanics and weighted randomization algorithms for fair and engaging item acquisition.
Challenges & Lessons Learned
1. Balancing Complex RPG Systems
Challenge: Managing hundreds of interactions between elemental types and character stats became overwhelming.
Lesson: I learned to use Data-Driven approaches. By moving variables out of scripts and into external assets, I could tweak game balance in real-time without re-coding.
2. UI Scaling & UX
Challenge: Designing a complex RPG interface that fits all mobile screen aspect ratios (16:9, 21:9, etc.).
Lesson: Mastered Unity UI Anchoring and Layout Groups. I realized that a good UX in mobile games requires minimal clicks to reach essential information.
3. State-Based Turn Flow
Challenge: Handling turns where multiple status effects (poison, stun) trigger simultaneously.
Lesson: Implemented a Command Pattern combined with a Finite State Machine to queue actions and resolve them sequentially, ensuring the battle logic remains bug-free.







