A game where pop star rivals clash for chart supremacy.
Match gems. Deal damage. Become the bigger star.
Popstar Hub is a PC party game where players battle for chart dominance through arcade mini-game challenges.
Mini games include 1) a glittering 8ร8 gem board, chaining combos to deal damage to their opponent's health bar. 2) a karaoke batte game 3) a trivia game, and so many more Every match earns StarCoins, the in-game currency of fame, which can be spent in the Shop on outfits, stages, and songs that visually transform your popstar.
Progression isn't just numbers โ it's your popstar evolving and gaining access to more of the world.
| Feature | Description | Status |
|---|---|---|
| ๐ Hub Navigation | Home base โ select challenges, view your evolving popstar identity | ๐ง WIP |
| ๐ Gem Match Battle | 8ร8 board โ match symbols to deal damage and chain combos | โ Complete |
| ๐ช StarCoin Economy | Performance score converts to spendable in-game currency | ๐ง WIP |
| ๐๏ธ Shop & Unlocks | Outfits, stages, songs โ self-expression is the popstar fantasy | ๐ง WIP |
| ๐ LAN Multiplayer | Head-to-head on a local network โ no internet required | ๐ง Prototyping |
- ๐ต Karaoke โ performance layer, high technical risk
- ๐ง Trivia โ entertaining side challenge
- ๐ Popstar Life โ lifestyle minigame (overlaps with Shop)
1. Enter the Hub โ Select a mini-game challenge on your path to stardom
2. Compete โ Play Gem Match โ match gems, chain combos, defeat your rival
3. Earn StarCoins โ Your performance score converts to StarCoins (in-game fame currency)
4. Visit the Shop โ Spend StarCoins on outfits, stages & songs
5. Return Transformed โ Back to the Hub, visually evolved โ ready for the next challenge
|
The Smooth Operator
|
The Fierce Diva
|
Popstar Hub follows a clean, component-based Unity architecture. One class per file, [SerializeField] over public fields, events for callbacks, and coroutines for all timed logic.
Assets/
โโโ Scripts/
โ โโโ GemMatch/
โ โ โโโ GemBoard.cs # Central coordinator โ 8ร8 grid, spawning, cascade logic
โ โ โโโ Gem.cs # Individual gem data and state
โ โ โโโ GemAnimator.cs # All gem animations (slide, fall, match flash, power-up burst)
โ โ โโโ GemInputHandler.cs # Click/swap input โ decoupled from board logic
โ โ โโโ MatchDetector.cs # Detects 3+ horizontal/vertical matches, returns match groups
โ โ โโโ PowerUpHandler.cs # Row clear, bomb, stun โ event-driven, fully modular
โ โ โโโ HintSystem.cs # Highlights valid moves โ timer-triggered for new players
โ โ
โ โโโ Battle/
โ โ โโโ BattleManager.cs # Orchestrates fighter health, AI turns, win/loss flow
โ โ โโโ Fighter.cs # Fighter data and health logic
โ โ โโโ HealthBarUI.cs # Health bar rendering and animation
โ โ โโโ AIOpponent.cs # AI decision-making for solo play
โ โ โโโ PopstarData.cs # ScriptableObject โ character stats and metadata
โ โ
โ โโโ Economy/
โ โ โโโ ScoreManager.cs # Tracks score, combo multiplier, StarCoin conversion
โ โ โโโ ScorePopup.cs # Floating score text on match
โ โ
โ โโโ Game/
โ โ โโโ GameManager.cs # Scene flow, game state orchestration
โ โ โโโ GameTimer.cs # Match countdown timer
โ โ
โ โโโ Audio/
โ โโโ SoundManager.cs # 100% procedural audio โ no audio files required
โ
โโโ ScriptableObjects/
โโโ PopstarData/ # MikaelYackson.asset, Beyonslay.asset
GemBoard.csis the single coordinator โ all other gem systems communicate through it- Events over direct calls โ systems raise events; dependent scripts subscribe
- Coroutines for all timed logic โ no heavy
Update()polling [SerializeField]everywhere โ neverpublicfields; Inspector-wired referencesAwake()null-coalescing fallbacks โ??=guards protect against reference loss from scene reloads
- Unity 6 (6000.0.x or later)
- Git with LFS support
- Windows 10 / macOS 12 or later
# Clone the repository
git clone https://github.com/DarthCole/Popstars.git
cd Popstars
# Switch to the active development branch
git checkout feature/gem-boardThen open the project folder in Unity Hub and let it import.
โ ๏ธ Important: Always move files using Unity's Project window โ never via Finder/Explorer. Moving scripts outside Unity breaks all.metafile links and loses every serialized Inspector reference.
- Open
Assets/Scenes/MainScene.unityin the Unity Editor - Press Play to launch the gem board
- Click a gem, then click an adjacent gem to swap โ match 3 or more to score
| Branch | Purpose |
|---|---|
main |
Stable, reviewed builds only |
feature/gem-board |
Active development โ all current gem-match and battle work lives here |
The PR from feature/gem-board โ main will be opened at final submission: DarthCole/Popstars/pull/new/feature/gem-board
cd ~/Desktop/Popstars
git add .
git commit -m "feat: describe your change here"
git push origin feature/gem-boardโ Always track
.metafiles in Git โ they preserve serialized Inspector references across machines.
| Milestone | Target | Status |
|---|---|---|
| Project Kickoff + Repo Setup | Jan 2025 | โ Done |
| GemMatch Core (board, match detection, scoring) | Feb 2025 | โ Done |
| Battle System (fighters, health bars, AI) | Mar 2025 | โ Done |
| Shop & StarCoin Economy | Apr 2025 | โ Done |
| UI Polish + LAN Multiplayer | May 2025 | โ Done |
| Name | Role |
|---|---|
| Andre | Lead Developer |
| Jason | UI / Battle System |
| Sedem | Backend & Architecture |
| Elsie | Art & Character Design |
| Reno | Game Design & Balance |
| Gibby | Gem Match / Mini-Games |
| Tool | Use |
|---|---|
| Unity 6 | Game engine |
| C# | All game logic |
| GitHub | Version control |
| Unity Netcode for GameObjects | LAN multiplayer (prototyping) |
| TextMeshPro | All in-game UI text |
| ScriptableObjects | Character data (PopstarData) |
Popstars/
โโโ Assets/
โ โโโ Scenes/
โ โโโ Scripts/ # All C# source (see Architecture above)
โ โโโ Prefabs/
โ โโโ ScriptableObjects/
โ โโโ Art/ # Placeholder art โ final assets TBD
โ โโโ Audio/ # Procedural only โ no audio files committed
โโโ Packages/
โโโ ProjectSettings/
โโโ README.md
- Always branch from
feature/gem-board, notmain - Keep commits small and descriptive (
feat:,fix:,refactor:) - Never move scripts outside Unity's Project window
- Add
Awake()null-coalescing guards to any new script that uses Inspector references - Open a PR for review before merging anything to
main
Source code is available for review and portfolio purposes under the MIT License.
๐ Match gems. Deal damage. Become the bigger star. ๐
github.com/DarthCole/Popstars ยท Branch: feature/gem-board