feat(envs): Add NegotiateToSurvive environment - 5-player resource trading survival game - #166
feat(envs): Add NegotiateToSurvive environment - 5-player resource trading survival game#166cstorm125 wants to merge 5 commits into
Conversation
…ading survival game - Implement complete 5-player survival negotiation game with distributive/integrative variants - Add coin-based economy with resource trading mechanics (coins for resources, no bartering) - Support multiple resource ownership per player with proper ownership tracking - Include private whisper system with sender identification and public notifications - Add comprehensive action validation preventing self-interaction exploits - Implement individual survival tracking (4/5 resources for distributive, 5/5 for integrative) - Create robust error handling with escalation system and retry mechanisms - Add 28 comprehensive unit tests covering all critical functionality - Include detailed README.md with usage examples and strategic guidance - Register both distributive and integrative variants
…ange render_game_state to get_board_str
# Conflicts: # textarena/envs/__init__.py
|
Ready to merge. The branch was behind register_with_versions(id="NegotiateToSurvive-v0-distributive", entry_point="textarena.envs.NegotiateToSurvive.env:NegotiateToSurviveEnv", wrappers={"default": DEFAULT_WRAPPERS, "-train": DEFAULT_WRAPPERS}, game_variant="distributive", max_rounds=100, starting_coins=50)
register_with_versions(id="NegotiateToSurvive-v0-integrative", entry_point="textarena.envs.NegotiateToSurvive.env:NegotiateToSurviveEnv", wrappers={"default": DEFAULT_WRAPPERS, "-train": DEFAULT_WRAPPERS}, game_variant="integrative", max_rounds=100, starting_coins=50)Verified locally on 3.11: both variants make; 5-player reset + step succeed; |
|
Thanks for this, @cstorm125. I've rebased it onto current |
Reference
Sotak, K. L., & Abraham, S. E. (2021). Negotiate to survive: An exercise to help develop students’ understanding of negotiations. Journal of Education for Business, 96(4), 269-273.