- Introduced a coin economy where NPCs earn coins for productive actions (gathering, building, slaying beasts).
- Builders can now repair damaged homes, prioritizing base defense over new constructions.
- Newborn NPCs inherit their parents' nation and model connector, ensuring balanced role distribution.
- Updated survival prompts to reflect new survival priorities and rules based on NPC roles (ruler, guard, builder, gatherer).
- Added regression tests to validate the new economic and lifecycle behaviors.
Refactor survival prompt to provide a readable mission briefing
- Introduced _parse_briefing function to extract structured facts from the briefing text.
- Updated make_fake_completer to utilize the new briefing format instead of raw JSON.
- Modified _build_survival_messages to generate a plain-language briefing for NPCs.
- Adjusted tests to validate the new briefing format, ensuring it includes necessary information while excluding raw JSON data.
- Enhanced clarity of survival directives and actions within the briefing.
Merge branch 'main' of https://github.com/DeltaZN/god_simulator
fix(hf): serve lobby at root, ship built frontend, honor proxy headers
DeltaZN
6c64b04
- Mount the Gradio lobby at / and remove the /connect redirect (the
https->http redirect downgrade behind HF's proxy caused a white screen).
- Add ProxyHeadersMiddleware so the app trusts X-Forwarded-Proto from HF's
TLS-terminating proxy instead of emitting http:// absolute redirects.
- Build the React SPA with base /world/ so its assets live under /world/assets
(served by the /world catch-all), freeing /assets for the lobby's own bundle.
- Commit dist/frontend so the Space (which does not run npm build) can serve
the /world observer; un-ignore dist/frontend accordingly.
feat: use nemotron 30b model
DeltaZN
b1898c7
feat: rename god -> world
DeltaZN
c58d3eb
Merge branch 'main' of https://github.com/DeltaZN/god_simulator
- Changed action "strike" to "attack" in tick.py and updated related validation logic.
- Updated UI text in card_observe.html to reflect new features and improved descriptions.
- Modified e2e tests to check for visibility of updated UI elements.
- Adjusted action hints in test_action_pipeline.py to include "attack" instead of "strike".
- Removed deprecated health URL in test_api_server.py.
- Added new tests for country systems in test_country_systems.py to ensure proper functionality of two-country demo.
- Updated gradio app tests to reflect changes in error handling.
- Increased NPC count in living village smoke test to 16.
- Cleaned up observability perception tests by removing unused overseer context checks.
- Updated OpenAI connector tests to use "attack" instead of "strike" in tool calls.
- Adjusted player MCP tests to use "use" actions instead of deprecated actions like "build" and "gather".
- Refined survival loop tests to ensure LLM sees all public primitive tools and removed r…
feat: add proxy auth for modal endpoints
DeltaZN
5464778
fix: dark theme
DeltaZN
79b1013
Merge branch 'main' of https://github.com/DeltaZN/god_simulator
- Updated NPC role for Ada from "farmer" to "gatherer" across multiple tests and memory summaries.
- Modified the NPC simulation to ensure only guards engage threats, changing the goal from "survive_threat_fight" to "engage_threat".
- Adjusted hunger mechanics in survival tests to reflect a more accurate growth rate.
- Enhanced world advancement logic to incorporate overseer metadata and post-survival tick applications.
- Improved beast spawning logic to respect population requirements and cooldowns.
- Ensured memory management retains recent entries and summarizes older events correctly.
- Added structured memory episodes for NPC communication, including messages sent and received.
- Updated attack and idle actions to include relevant memory episodes.
- Improved the memory system to handle various social interactions, such as calling for help and transferring resources.
- Introduced tests for survival mechanics, ensuring NPCs engage in social behaviors and maintain relationships.
- Implemented deterministic resource spawning and beast behavior, respecting cooldowns and maximum limits.
- Refactored existing tests to align with new memory structure and episode handling.
- Introduced structured memory episodes for NPCs, allowing them to remember significant events with emotional weight.
- Added functions to manage memory episodes, including adding, compressing, and summarizing memories.
- Updated NPC perception to include nearby events, beasts, and resource nodes, enhancing their awareness of the environment.
- Implemented relationship dynamics based on interactions, such as trading, stealing, and calling for help, affecting NPC behavior and decision-making.
- Enhanced survival mechanics to allow NPCs to recruit allies and respond to threats based on their relationships and inventory.
- Added tests to ensure the correct functionality of memory management, perception building, and relationship updates.
Implement survival mechanics in the god simulator
- Added survival loop in `survival.py` to manage hunger, resources, and beast interactions.
- Integrated survival mechanics into the world tick process in `tick.py`, ensuring survival actions are prioritized.
- Enhanced NPC spawning in `spawning.py` to include resource nodes and beasts based on survival configuration.
- Created unit tests in `test_survival_loop.py` to validate survival mechanics, including hunger growth, beast targeting, and resource gathering.
- Ensured that invalid actions do not disrupt the simulation flow.
Enhance NPC directive handling and action validation
- Introduced new action resolution mechanisms in `tick.py` to handle NPC directives more effectively, including support for fallback actions based on context.
- Updated the validation logic to ensure that unsupported actions are replaced with appropriate goal-based fallbacks.
- Enhanced the action mask to restrict certain actions based on NPC goals and perceptions, particularly in hostile scenarios.
- Added new tests to verify the behavior of NPCs under various directive conditions, including hostile directives and fallback actions.
- Improved memory handling for NPC actions to reflect interactions and threats accurately.
- Adjusted the OpenAI connector to align with the new action schema and ensure proper payloads are sent for NPC directives.
- Implement tests for out-of-range attacks converting to movement.
- Verify in-range attacks apply damage and notify observers.
- Ensure hostile NPCs pursue the nearest target when idle.
- Confirm ordinary talk with a hostile attacker results in fleeing.
- Allow crisis talk with a hostile attacker.