Closed bryan22lee closed 4 years ago
A document of the following information can be found as a page on the wiki, titled "Open world: Autogeneration and Game State":
Looked into wdl and game-state modules to familiarize with existing code format. Found relevant struct definitions for rooms, items, players, and actions in the game-state directory. Documented outline of their structures. We want to understand exactly how they work so we can incorporate them into our design plan for open world random generation. Documented possible ways our autogeneration/gather design modules can use these structs to auto-generate rooms
Immediate goal defined as designing/implementing random room generation correctly, then extending this to open world design later. Focus for right now is on item structs and room structs. Future goals include incorporating player-inventory updates, classifying items, and "quasi-random" item generation (should relate to previous room items) for continuity.
You are doing a good job of keeping the issue updated but, ideally, your updates should point to the exact work you've done. For example, you refer to documenting structures: Where can that documentation be found? In general, you should update an issue when you have produced something tangible that others can look at, not simply to make a note that you have completed a specific sub-task.
See the updated document on the wiki, titled "Open world: Autogeneration and Game State":
We discussed additional considerations for our room autogeneration plan during a team meeting today. Notably, we talked about item value/classification support, NPC additions, map inclusion (for the user), room generation in relation to player level, and using a "random" library. This, along with how this may affect our design, was documented under "Additional considerations after team meeting" at the bottom of the wiki page.
Documented existing modules (and their structs) that we can use in our room/world autogeneration design, and how we may use them (view on the wiki, titled "Open world: Autogeneration and Game State"). Also included additional considerations like item value/classification and NPC inclusion. Create tasks for these for the following sprint. Document can be found here.
Issue Score: ✔️++
Comments: Great job! Well done with the clear and precise goals as well as meeting outcomes.
We will develop a design (high-level module plans) for random-room and open-world generation. We need to ensure our general design fits within and correctly uses room/item data structures and understand how our design will fit into the pre-existing code. Familiarization with existing modules (e.g. game-state/room.h, game-state/item.h) is needed to implement these structs in our openworld generation design. Document findings and update design accordingly.