notes
All checks were successful
studiorailgun/trpg/pipeline/head This commit looks good

This commit is contained in:
austin 2025-01-01 20:18:19 -05:00
parent f1b6a4f521
commit f785079bda
9 changed files with 189 additions and 3 deletions

26
docs/game/agent/goals.txt Normal file
View File

@ -0,0 +1,26 @@
For each action that the agent can take in the game space, need to program a motivator from the hierarchy of needs that would cause the agent to take that action
Have a set of pre-scripted behavior trees for the ai to actualize each level of the hierarchy of needs
Assuming the player doesn't abuse them (ie order the ai to place all its food outside of view while it's not hungry), this could work decently well on not triggering the uncanny valley
Alternative approach is to have an "action chain generator"
Gets a requirement from the needs heirarchy, then solves for an action tree that it needs to take to satisfy that need
Osmosis cup example
Lets say that you can absorb water via osmosis while holding a cup
The first order motivator would be to pick up the cup to satisfy the thirst meter
Why would the first agent to pick up the cup of water ever place it back down?
Could evaluate other agent's view of the first one. If the first one thinks other agents will threaten it, drop the cup

View File

@ -0,0 +1,33 @@
What are the aspects of a character that we want to be available to the simulation?
- Physical appearance
- General body shape
- Height
- Weight
- Musculature
- Hair
- Style
- Color
- Eyes
- Color
- Mental state
- Physical markers
- Pain
- Pleasure
- Perception (Knowledge of things observable)
- Beliefs (Knowledge of things not observable)
- Desires
- Intentions (A commitment to an actionable goal)
- Emotional state (Valence-Arousal-Dominance model)
- Valence
- Arousal
- Dominance
- Memory (Stored knowledge of previous state of the world)

View File

@ -0,0 +1,71 @@
Essentially just going to use Maslow's hierarchy for the moment
Physiological
- Food
- Water
- Shelter
- Clothing
- Sleep
Security
- Health
- Employment
- Property
- Social Stability
Belonging
- Friendship
- Family
- Intimacy
Self Esteem
- Confidence
- Achievement
- Respect
- Desire for uniqueness
Actualization
- Morality
- Creativity
- Meaning
- Potential
# Evaluate ascending the pyramid to determine the AI's current goal. As an entity in the world, these will manifest themselves as
## Physiological
### Food & Water
A bar that the ai tries to keep above a thresholdA bar that the ai tries to keep above a threshold
### Shelter
A boolean that the ai tries to set to true
### Clothing
A boolean that the ai tries to set to true
### Sleep
A bar that the ai tries to keep above a threshold
## Security
### Health
A bar that the ai tries to keep above a threshold
### Employment
A boolean that the ai tries to set to true
### Property
TBD
### Social Stability
TBD
## Belonging
### Friendship
A set that the ai tries to keep populated
### Family
A set that the ai tries to keep populated
### Intimacy
A value that the ai tries to keep populated
## Self Esteem
### Confidence
A bar that the ai tries to keep above a threshold

View File

@ -0,0 +1,9 @@
- Characters that you can talk to in the world
- Move into different spaces in the world
- Interact with items in the world
- Combat

View File

@ -0,0 +1,39 @@
What motivations should I want to encourage with this game?
- Exploration, if the world is interesting, the player will be naturally curious and that could lead to the player interacting with characters to ask them about the world.
Functionally, when this is happening, the characters are largely question-and-answer chatbots.
- Creativity, the player will try to change aspects of the world to represent a creative vision.
This can manifest as building structures, clothing characters, etc
What player actions do we want the ai to be able to support?
- Learn about the world
Should be able to query for any piece of information in the game space
- Inform a character about the world
- Instruct a character to perform an action
Essentially we want the player to be able to instruct the ai to perform any action that the game space will allow
- Receive instructions from a character

View File

@ -0,0 +1,8 @@
package org.studiorailgun.sim.character;
/**
* A reasoning entity being simulated in the game world
*/
public class Character {
}

View File

@ -1,4 +1,4 @@
package org.studiorailgun.schedule;
package org.studiorailgun.sim.schedule;
import java.util.LinkedList;

View File

@ -1,4 +1,4 @@
package org.studiorailgun.schedule;
package org.studiorailgun.sim.schedule;
import java.util.PriorityQueue;

View File

@ -1,4 +1,4 @@
package org.studiorailgun.schedule;
package org.studiorailgun.sim.schedule;
/**
* A time in the simulation timeline