Files
PokerRogue/CONTRIBUTING.md
T
Michal Vrba 48099e9de7 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.
2026-02-09 13:59:15 +01:00

89 lines
1.4 KiB
Markdown

# 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 🃏