Second iteration - lifting the environment into a directed graph, abstracting the user interface, and creating a Player with a location (i.e. a node on the graph):

@lassic suggests there needs to be support for using the computer, so the next thing to do will be to think about entities and objects and components that handle the interactions between the player and each of them...

Extending the graph with object nodes and hierarchical containership

Code repo

https://github.com/abrightmoore/PythonAdventureFramework

GitHub - abrightmoore/PythonAdventureFramework: Iterating over an Adventure Game Framework using Python.

Iterating over an Adventure Game Framework using Python. - abrightmoore/PythonAdventureFramework

GitHub

I think I want the graph state of the universe to provide the available actions and affordances of the player/avatar.

For instance, containership allows introspection of the containing object for the contained object.

The simplest way to achieve this might be to treat the universe as a state machine and the user entry as navigation along vertices? This would mush up objects, actions, and their consequential attachments to nodes dynamically driven by the simulation.

The next keyboard coding session should be interesting!

Some rework of the graph module to track various relations between nodes in the universe.

Updates to enumerating the scope of the current location.

Still very mechanical, but getting closer to something useful...