Player Class ~ Dependencies - uchicago-cs/chiventure GitHub Wiki

GOALS

  • Provide basic classes for game developers to utilize
  • Provide framework for game developers to create their own classes in place of or in addition to our provided classes
  • Work with rpg-battle team to implement specific combat statistics / effects for different classes
  • Work with other teams to implement additional game functionality based on class, such as custom dialogue, custom NPC names, custom item usage, etc.

CHIVENTURE DEPENDENCIES

Action Management:

  • From action_structs.h:
  • KIND 1 ACTIONS : open, close, push, pull, turnon, turnoff, take/pick up, drop, consume/use/drink/eat
  • KIND 2 ACTIONS : go/walk
  • KIND 3 ACTIONS : use, put:
  • Takeaway: these are the actions (so far) that we can vary based on class. If we want more we need to ask WDL

WDL

  • Each item has an “action section”
  • The range of these actions should change based on player class
  • Takeaway: talk to WDL about how to vary actions based on class

Game State

  • Player Module: creates character, modifies players inventory + attire, modifies health + game level
  • Takeaway 1: Likely, playerstat will be passing our info to game_state for health, game level modification. Doublecheck this is happening
  • Takeaway 2: Will need to ask Game State to include the additional characteristics we want in the player struct (but, then again, this might fall on playerstat)

CLI

  • Takeaway: If we want game developers to be able to create their own classes, need to interface between CLI → playerstat → game_state

FUTURE DEPENDENCIES

5/2 rpg-battlesystems, playerstat meeting

  • Overarching Structure of Dependencies: player-class (and a lot of other teams) tell player-stat how class modifies their info → pass to battle-systems, they will take care of how stats affect battle

  • Takeaway: We need to inform playerstat what characteristics we need represented, pass to them in an instance of their own struct → playerstat will send to battlesystems and they need to implement actions

5/3 WDL meeting

Yet to be determined: NPC, custom dialogue

⚠️ **GitHub.com Fallback** ⚠️