Releases: cainky/CounterStrikeInterface
Releases · cainky/CounterStrikeInterface
v0.1.0 - Initial Release
Initial release of CounterStrikeInterface - a Python interface for Counter-Strike 1.6 reinforcement learning.
Features
Core Interface
- Redis-based observation/action transport with configurable channels
- PettingZoo-compatible parallel environment for multi-agent RL
- Gymnasium observation/action spaces with configurable dimensions
Performance Optimizations
- UDP transport - Optional low-latency transport (~10x faster than Redis)
- msgpack serialization - 2-3x speedup over JSON (optional)
- Pre-allocated buffers - Zero-allocation observation vectors
Reliability
- Circuit breaker pattern for connection handling
- UDP health tracking with auto-fallback to Redis
- Tick validation and synchronization
Observation Schema
- Full player state (position, health, armor, weapons, etc.)
- Game events (damage, kills, bomb plant/defuse)
- Round state and match context
- Tactical info computations (aim score, exposure, teammate proximity)
Documentation
- Config reference
- Troubleshooting guide
- GitHub Pages landing page
Installation
pip install counterstrikeinterface
# Or with optional dependencies:
pip install counterstrikeinterface[fast] # msgpack support
pip install counterstrikeinterface[gym] # gymnasium/pettingzooRequirements
- Python 3.10+
- Redis server (for default transport)
- Counter-Strike 1.6 with CSIF plugin