blackbox
Vars | |
feedback | List of all recorded feedback |
---|---|
research_levels | List of highest tech levels attained that isn't lost lost by destruction of RD computers |
sealed | Is it time to stop tracking stats? |
versions | Associative list of any feedback variables that have had their format changed since creation and their current version, remember to update this |
Procs | |
ReportDeath | Death reporting proc |
Seal | Blackbox Sealer |
Shutdown | Shutdown Helper |
find_feedback_datum | Helper to find and return a feeedback datum |
log_research | Research level broadcast logging helper |
record_feedback | Main feedback recording proc |
record_feedback_recurse_list | Recursive list recorder |
Var Details
feedback
List of all recorded feedback
research_levels
List of highest tech levels attained that isn't lost lost by destruction of RD computers
sealed
Is it time to stop tracking stats?
versions
Associative list of any feedback variables that have had their format changed since creation and their current version, remember to update this
Proc Details
ReportDeath
Death reporting proc
Called when humans and cyborgs die, and logs death info to the death
table
Arguments:
- L - The human or cyborg to be logged
Seal
Blackbox Sealer
Seals the blackbox, preventing new data from being stored. This is to avoid data being bloated during end round grief
Shutdown
Shutdown Helper
Dumps all feedback stats to the DB. Doesnt get much simpler than that.
find_feedback_datum
Helper to find and return a feeedback datum
Pass in a feedback datum key and key_type to do a lookup. It will create the feedback datum if it doesnt exist
Arguments:
- key - Key of the variable to lookup
- key_type - Type of feedback to be recorded if the feedback datum cant be found
log_research
Research level broadcast logging helper
This is called on R&D updates for a safe way of logging tech levels if an R&D console is destroyed
Arguments:
- tech - Research technology name
- level - Research technology level
record_feedback
Main feedback recording proc
This is the bulk of this subsystem and is in charge of creating and using the variables. See .github/USING_FEEDBACK_DATA.md for instructions Note that feedback is not recorded to the DB during this function. That happens at round end.
Arguments:
- key_type - Type of key. Either "text", "amount", "tally", "nested tally", "associative"
- key - Key of the data to be used (EG: "admin_verb")
- stat - Either a number accumulated via "amount", "tally", or "nested tally"; or a number/string collected by "ledger" or "nested ledger".
- data - The actual data to logged
- overwrite - Do we want to overwrite the existing key
- ignore_seal - Does the feedback go in regardless of blackbox sealed status? (EG: map vote results)
record_feedback_recurse_list
Recursive list recorder
Used by the above proc for nested tallies
Arguments:
- L - List to use
- key_list - List of keys to add
- value - How much to increase by or append to
- depth - Depth to use
- accumulate - TRUE if we are adding
value
to a tally, FALSE if we are appending it to a record