Add project docs, .gitignore, and solution items
Added README, design spec, roadmap, and contributing guide for PokerRogue. Updated .gitignore with Visual Studio template. Introduced .slnx solution file to organize documentation under Solution Items.
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
# Contributing to PokerRogue
|
||||
|
||||
Thanks for your interest in contributing to **PokerRogue**!
|
||||
This project is in early development, so flexibility and communication are key.
|
||||
|
||||
---
|
||||
|
||||
## 🧭 Philosophy
|
||||
PokerRogue values:
|
||||
- Clean, readable code
|
||||
- Deterministic game logic
|
||||
- Fast iteration
|
||||
- Fun > realism
|
||||
|
||||
Avoid overengineering and solver-heavy logic.
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Tech Requirements
|
||||
- .NET SDK 10
|
||||
- MonoGame 3.8+
|
||||
- Windows (primary dev platform)
|
||||
|
||||
Optional:
|
||||
- Rider or Visual Studio
|
||||
- Git
|
||||
|
||||
---
|
||||
|
||||
## 📁 Code Structure Guidelines
|
||||
### PokerRogue.Core
|
||||
- No rendering code
|
||||
- No MonoGame dependencies (unless unavoidable)
|
||||
- Deterministic logic preferred
|
||||
- Unit-testable systems
|
||||
|
||||
### PokerRogue.Game
|
||||
- Rendering
|
||||
- Input
|
||||
- UI
|
||||
- Screen/state management
|
||||
|
||||
---
|
||||
|
||||
## 🧪 Testing
|
||||
- Core logic should be unit-testable
|
||||
- Focus on:
|
||||
- Damage calculations
|
||||
- Status stacking
|
||||
- Skill interactions
|
||||
|
||||
---
|
||||
|
||||
## 🧾 Coding Style
|
||||
- C# conventions
|
||||
- Explicit over clever
|
||||
- Small, composable systems
|
||||
- Prefer data-driven design
|
||||
|
||||
---
|
||||
|
||||
## 🔀 Git Workflow
|
||||
- Feature branches preferred
|
||||
- Small, focused commits
|
||||
- Descriptive commit messages
|
||||
|
||||
Example:
|
||||
```
|
||||
feat: add bleed status effect
|
||||
fix: shield calculation overflow
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🧠 Design Contributions
|
||||
If proposing gameplay changes:
|
||||
- Explain the problem
|
||||
- Explain why it improves player decision-making
|
||||
- Avoid pure randomness buffs
|
||||
|
||||
---
|
||||
|
||||
## 📬 Communication
|
||||
Open an issue or discussion before large changes.
|
||||
|
||||
---
|
||||
|
||||
Happy hacking 🃏
|
||||
Reference in New Issue
Block a user