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

1.4 KiB

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 🃏