Giter VIP home page Giter VIP logo

Comments (8)

ichabod801 avatar ichabod801 commented on August 19, 2024

There need to be entrance nodes. Which means nodes need to be grouped. Then when the group is opened, it can give some general text about the group, and list the entrances.

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

There are different sorts of connections, which may be handled by different attributes of the objects. You will want a parent connection to the higher level node containing this node and it's siblings. You will want connections with one or more siblings, but those connections will be one way. It should be possible to have nodes with no connections to siblings. Those will need to be detected at the parent level and shown as hidden nodes. Then we need connections down at least to the entrances of the contained nodes. But we might want sibling nodes that connect to another adventure at the same level as the parent.

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

Is there a good way to abstract this so that we only need one node class? Clearly there is a way, but what is a good way to handle all of these connections?

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

Nodes have three sets of other nodes: container (parent), members (children), and connections (siblings). They also have names, descriptions, tags, notes, and some sort of links to encounters and/or NPCs.

Edges have names and descriptions. The names are their hashes, so they can be used as keys in a dictionary. Edges are for connections. Members are hashed by the name of the node. Containers are singular attributes.

Containers are passed between siblings. So if you are in node B which is in container A, and you make a new node C, C's container is automatically A.

Note that containers are nodes, and can be connected to. If you have nodes A and B that are connected together, and node C is contained in node A, C can connect to B.

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

Tags on nodes would take care of identifying special nodes like entrances or events. We would still need a detector for finding hidden nodes.

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

Note that using names for hashes makes it a problem for changing names. I should allow for changing names, so have an underlying hash that is invisible to the user.

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

There would be a separate adventure building interface, and then the Egor interface could navigate the adventure and make notes on it. The adventure interface would be accessible from Egor.

from dm.

ichabod801 avatar ichabod801 commented on August 19, 2024

I am closing this as it is not really part of the "running D&D" paradigm. This is prep, not running.

from dm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.