WAKE is an NSF Funded (DRL #1907384) science practices and life science content learning game produced by Field Day @ University of Wisconsin - Madison, Harvard University and University of Pennslvania.
Debugger can be launched by pressing Shify+W in a debug build
Job Pricing / Sequence Explorer
In the "research" options of the debugger "always predict job failure" forces it to give a job recommendation regardless of the output of the model
The force AB test slider forces the game to behave as if the given test is active:
- A: control group
- B: job failure prediction
- C: alternate job graph (this will permanently set it for the save file)
Firebase automatically adds the following parameters to all events, documented here. Event data is then dumped to BigQuery daily - the BigQuery schema can be found here.
- event_timestamp
- user_id (We need to manually set this if we have it)
- device.category
- device.mobile_brand_name (i.e Apple)
- device.mobile_model_name (i.e Safari)
- device.operating_system
- device.language
- geo.country
- geo.region (i.e Wisconsin)
- geo.city (i.e Madison)
- ga_session_id
Firebase automatically logs the following meaningful events, documented here.
- first_visit
- page_view
- session_start
- user_engagement
- Initial version (3/14/22)
- Update experimentation events (3/22/22)
- Add event sequence index (5/17/22)
- Add event select_language, modify event sync_achieved to include % accuracy (11/13/2023)
- Progression
- Player Actions
- Game Feedback
- Portable Device Interactions
- Modeling
- Shop
- Experimentation
- Argumentation
Player accepts a job with a given id.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the accepted job |
Player switches jobs by starting a different one.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the new job |
prev_job_name | String name of the previous job |
A fact is added to the player's bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
fact_id | Unique ID for the given fact |
fact_entity | Unique ID for the fact's owning entity |
fact_type | String name of the fact type |
fact_stressed | Boolean indicating if the fact represents a behavior that only executes when its owning organism is stressed |
fact_rate | Boolean indicating if the fact represents a behavior that has a rate attached |
has_rate | Boolean indicating if the player has the rate for the given fact |
A fact is upgraded in the player's bestiary to add a rate.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
fact_id | Unique ID for the given fact |
fact_entity | Unique ID for the fact's owning entity |
fact_type | String name of the fact type |
fact_stressed | Boolean indicating if the fact represents a behavior that only executes when its owning organism is stressed |
fact_rate | Boolean indicating if the fact represents a behavior that has a rate attached |
has_rate | Boolean indicating if the player has the rate for the given fact |
An entity is added to the player's bestiary (ex. scanning a critter in a dive site).
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
entity_id | Unique ID for the given entity |
Player completes a given job.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the completed job |
Player completes a task for a given job.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the new job |
task_id | ID of the completed task |
Player selects a language with a given id.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
language | String name of the selected language ("ENGLISH" or "SPANISH") |
Player loads into a new scene (ex. "Ship").
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
scene_name | Name of the loaded scene |
Player enters a new room on the ship.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
room_name | Name of the room being entered |
Player enters a given dive site.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
site_id | ID of the dive site |
Player clicks the hint button.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
node_id | Scripting ID for the hint response |
Player triggers conversation with the guide (V1ctor).
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
node_id | Scripting ID for guide's response |
Player triggers a given script node through dialogue or interactions.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
node_id | ID of a given script node |
Player sees a line of dialog.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
node_id | ID of a given script node |
text_string | String displayed to the player |
- open_bestiary
- bestiary_open_species_tab
- bestiary_open_environments_tab
- bestiary_open_models_tab
- bestiary_select_species
- bestiary_select_environment
- bestiary_select_model
- close_bestiary
- open_status
- status_open_job_tab
- status_open_item_tab
- status_open_tech_tab
- close_status
Player opens the bestiary, which defaults to the species tab.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the species tab in the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the environments tab in the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the models tab in the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player selects a species from the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
species_id | ID of the selected species |
Player selects an environment from the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
environment_id | ID of the selected environment |
Player selects a model from the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
model_id | ID of the selected model |
Player closes the bestiary.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the portable status app, which defaults to the job tab.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the job tab in the portable status app.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the item tab in the portable status app.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player opens the tech tab in the portable status app.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player closes the portable status app.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
- begin_model
- model_phase_changed
- model_ecosystem_selected
- model_concept_started
- model_concept_updated
- model_concept_exported
- begin_simulation
- model_sync_error
- simulation_sync_achieved
- model_predict_completed
- model_intervene_update
- model_intervene_error
- model_intervene_completed
- end_model
Player enters the modeling room.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player selects a given modeling phase.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
phase | The selected modeling phase |
phase |
---|
Ecosystem |
Concept |
Sync |
Predict |
Intervene |
Player selects an ecosystem for constructing the model.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player starts the conceptual modeling phase.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player imports new facts / behaviors into the conceptual model.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
status | Updated status of the concept model |
status |
---|
MissingData |
PendingImport |
ExportReady |
UpToDate |
Player saves the conceptual model to AQOS.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player enters the sync phase of modeling.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player attempts to sync the model but fails.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
sync | Sync % achieved with the current model |
Player successfully syncs the model.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
sync | Sync % achieved with the current model |
Player completes the prediction model.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player introduces a new organism or updates an existing organism's population count in the intervention model.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
organism | The organism having its population modified by the player |
difference_value | The population change for the selected organism |
Player’s intervention model is unsuccessful.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player successfully completes the intervention model.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
ecosystem | Ecosystem selected for modeling |
Player exits the modeling room.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
phase | The selected modeling phase upon leaving |
ecosystem | The selected ecosystem upon leaving |
Player purchases an upgrade from the shop.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
item_id | ID of the purchased item |
item_name | String name of the purchased item |
cost | Cost of the purchased item |
Player attempts to purchase an item but doesn't have enough currency.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
item_id | ID of the item |
item_name | String name of the item |
cost | Cost of the item |
Player talks to the shopkeeper.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
tank_type |
---|
Observation |
Stress |
Measurement |
Player selects an environment for running the experiment.
| Parameter | Description | | --- | --- |. | event_sequence_index | Sequence index of the current event | | user_code | The player's unique save code | | app_version | Current game build version | | app_flavor | Git branch origin for current build | | log_version | Current logging version | | job_name | String name of the current job | | tank_type | Selected tank type for the experiment | | environment | Name of the added environment |
Player deselects an environment.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
tank_type | Selected tank type for the experiment |
environment | Name of the removed environment |
Player adds a critter to the tank.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
tank_type | Selected tank type for the experiment |
environment | Selected environment for the experiment |
critter | Name of the critter added to the tank |
Player removes a critter from the tank.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
tank_type | Selected tank type for the experiment |
environment | Selected environment for the experiment |
critter | Name of the critter removed from the tank |
Player starts an experiment with a given tank type.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
tank_type | Selected tank type for the experiment |
environment | Selected environment for the experiment |
critters | Comma separated list of all critters added to the tank |
stabilizer_enabled | Bit value for stabilizer enabled in measurement tank (0 = false, 1 = true, default to 1) |
stabilizer_enabled | Bit value for auto feeder enabled in measurement tank (0 = false, 1 = true, default to 0) |
Player ends the current experiment.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
tank_type | Selected tank type for the experiment |
environment | Selected environment for the experiment |
critters | Comma separated list of all critters added to the tank |
stabilizer_enabled | Bit value for stabilizer enabled in measurement tank (0 = false, 1 = true, default to 1) |
stabilizer_enabled | Bit value for auto feeder enabled in measurement tank (0 = false, 1 = true, default to 0) |
Player begins argumentation for a job.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player submits a fact to argumentation.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
fact_id | ID of the submitted fact |
Submitted fact is incorrect / rejected by the argumentation script.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
fact_id | ID of the rejected fact |
Player clicks "Let me get back to you" during argumentation.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Player completes argumentation for a job.
Parameter | Description |
---|---|
event_sequence_index | Sequence index of the current event |
user_code | The player's unique save code |
app_version | Current game build version |
app_flavor | Git branch origin for current build |
log_version | Current logging version |
job_name | String name of the current job |
Parameter | Type | Description |
---|---|---|
jobs |
JobData[] |
List of all jobs. |
Parameter | Type | Description |
---|---|---|
id |
String |
Identifier for job. |
date.added |
Int64 |
UTC timestamp for when job was added |
date.deprecated |
Int64 |
UTC timestamp for when job was no longer in game. This field is excluded if the job is still in the game. |
tasks |
TaskData[] |
List of tasks for the job. |
Parameter | Type | Description |
---|---|---|
id |
String |
Identifier for the task. |
date.added |
Int64 |
UTC timestamp for when the task was added |
date.deprecated |
Int64 |
UTC timestamp for when the task was no longer in game. This field is excluded if the task is still part of the job. |
{
"jobs": [
{
"id": "arctic-missing-whale",
"date": {
"added": 1.32914936623526E+17
},
"tasks": [
{
"id": "findWhale",
"date": {
"added": 1.32914936623526E+17
}
},
{
"id": "reportBack",
"date": {
"added": 1.32914936623526E+17
}
}
]
},
{
"id": "arctic-time-of-death",
"date": {
"added": 1.32914936623526E+17
},
"tasks": [
{
"id": "getPopulations",
"date": {
"added": 1.32914936623526E+17
}
},
{
"id": "reportBack",
"date": {
"added": 1.32914936623526E+17
}
}
]
}
]
}