Comments (8)
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.
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.
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.
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.
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.
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.
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.
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)
- Old Test Code Not Working
- Need a default year_length in gtime.Time. HOT 1
- If you try to do combat tasks before doing init, it causes a Python error
- Armor Class text in creatures has double parentheses.
- Look at groups and condtions. HOT 3
- Within group creature identifier
- No concentration check with attack HOT 1
- Dome of Heaven Calendar won't load HOT 2
- Adding a new groups puts duplicate names in the tracker
- Create species objects
- Create background objects
- Create class objects
- Create a character building system.
- Add a meta-campaign HOT 1
- Statblock Check HOT 1
- Capitalization off on attack message
- Year not accessible to calendar formats
- Leading space in date formats
- Eras for calendars
- Create a character object
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dm.