Open World ~ Potential connections to the rest of chiventure - uchicago-cs/chiventure GitHub Wiki
Previous works on openworld have incorporated many structures and functions, especially from game_state module, into the design.
This document maps out how openworld will need to connect to the rest of chiventure and specifies which files will be involved according to potential functionality we might need to add in the future.
Connections to the game_state module
conditions.h
The autogeneration of new rooms might be triggered under specific conditions, and the functions check_condition and all_conditions_met might be useful.
game.h
We might need to develop a new generation algorithm that could pull from the player's level and pick roomspec_t's based on that. In that case, we could get information on the player through get_player.
Connections to the npc module
rooms-npc.h
We would like to incorporate the generation of npc into the newly-generated rooms, which might require npc initialization through npcs_in_room_init.
Connections to the WDL module
One of the potential integration approaches is a WDL trigger to autogeneration. For this approach, we might need further implementation about customization of room autogeneration through WDL.