Thank you for your interest in contributing to Basebound! We welcome contributions from the community and appreciate your help in making this project better.
Be respectful, inclusive, and professional in all interactions. We're building a welcoming community for all contributors.
👉 New contributor? Start with Setup & Getting Started first!
- Prerequisites and project setup
- Development workflow and hot-reload
- Troubleshooting common issues
Create branches with descriptive names:
feature/base-building-ui- New featuresfix/economy-calculation- Bug fixesrefactor/contract-system- Code refactoringdocs/networking-guide- Documentation
👉 See Code Standards for detailed guidelines on:
- Naming conventions (classes, methods, properties, fields)
- Component pattern and best practices
- Networking patterns and RPC usage
- Error handling and performance
- Documentation standards
Write clear, descriptive commit messages:
feature: Add economy system tax calculation
- Implemented progressive tax system
- Added configurable tax rates per bracket
- Updated networking to broadcast tax changes
Format: <type>: <subject>
Types:
feature- New functionalityfix- Bug fixrefactor- Code restructuringdocs- Documentationtest- Tests or testing infrastructure
-
Create a feature branch
git checkout -b feature/your-feature-name
-
Make your changes
- Follow code standards above
- Test thoroughly in S&box
- Keep commits logical and atomic
-
Push and create PR
git push origin feature/your-feature-name
- Title: Clear, descriptive title
- Description: Explain what and why
- Link related issues:
Closes #123
-
PR Template
## Description Brief explanation of changes ## Type of Change - [ ] New feature - [ ] Bug fix - [ ] Breaking change - [ ] Documentation ## Testing How to test these changes ## Checklist - [ ] Code follows style guidelines - [ ] Self-review completed - [ ] Comments added for complex logic - [ ] Documentation updated - [ ] Tested in S&box
-
Review and merge
- Address feedback from reviewers
- Keep discussion professional and constructive
- Base building system enhancements
- Economy balance improvements
- Raid system refinements
- Performance optimizations
- Documentation improvements
- Bug fixes in existing systems
- UI/UX polish
- Configuration options
Check GitHub Issues for community-requested features and report bugs.
- Load minimal.scene - Basic gameplay test
- Test multiplayer - Use S&box play options
- Test hot-reload - Verify changes compile and apply
- Test networking - Verify RPC calls work correctly
Include:
- Reproduction steps
- Expected behavior
- Actual behavior
- S&box version and .NET version
- Relevant code or logs
When adding features or making significant changes, update relevant documentation:
- New architecture or structure changes → Update Docs/architecture.md
- New networking features → Update Docs/networking.md
- New game systems → Update Docs/gameplay.md
- Setup or tooling changes → Update Docs/setup.md
- Code style changes → Update Docs/code-standards.md
- Project overview changes → Update README.md
- Discord: Join the S&box/Basebound community Discord
- Issues: Create a discussion issue on GitHub
- Docs: Check https://docs.facepunch.com/s/sbox-dev
By contributing, you agree that your contributions will be licensed under the same MIT License that covers the project.
Thank you for contributing to Basebound! 🎮