AGAIN
[Affect Game Annotation Dataset]
Welcome to the AGAIN Affect Game Annotation Dataset!
You can download the full dataset from the following repository: AGAIN DatasetFigure 1. Games in the AGAIN collection.
The raw dataset includes the 1116 videos and detailed gameplay logs of 124 participants playing 9 games from 3 different genres.
A cleaned and preprocessed dataset is available, including the 995 videos and detailed gameplay logs. The files for the raw dataset are found in theraw_data
folder:
biographical_data.csv
- biographical information about the participantsraw_annotation.csv
- arousal annotation logs recorded with PAGAN and RankTraceraw_data.csv
- gameplaylogs of 1116 gameplays
clean_data
folder:
clean_data.csv
- preprocessed datapoints for 995 gameplay sessions with their corresponding arousal valuesoutliers.csv
- list of outlier sessions (including the corresponding video name)
The clean_data.csv
has been normalised on the session level!
For easier use in both the raw and cleaned dataset variables labelled:
- Control variables (not inteded for machine learning purposes) are prefixed with
[control]
- String features are prefixed with
[string]
Database Properties
General Properties- Number of Elicitors: 9 games (3 genres)
- Gameplay/Video duration: 2 min
- Annotation Perspective: First-person
- Annotation Type: Continuous unbounded
- Affective Labels: Arousal
- Number of participant: 124
- Number of Gameplay Videos: 1116
- Number of Game-telemetry Logs: 1116
- Video database size: 37+ hours
- Number of participant: 122
- Number of Gameplay Videos: 995
- Number of Game-telemetry Logs: 995
- Video database size: 33+ hours
Game Names
Racing Games- TinyCars - tiny - top-down arcade-style
- Solid - solid - first-person rally
- ApexSpeed - apex - third-person speed-racer
- Heist! - fps - first-person shooter
- Shootout - gallery - shooting gallery
- TopDown - topdown - top-down isometric shooter
- Run'N'Gun - gun - run-and-gun shooter
- Pirates! - platform - Mario-like platformer
- Endless - endless - endless runner
Video Database
Entry name: [ParticipantID]_[Game]_[SessionID].webm
Annotation Log
game
- name of the game playedvideo_name
- name of the corresponding video in the databasereadable_time
- realtime human readable formatepoch
- UNIX timestamptime_stamp
- video positionarousal_value
- annotation valuevalidity
- 0 for restarted sessions; 1 for final annotations
Annotations are recorded only when the annotation value changes. The annotation starts and ends with a 0.
To use the annotation logs, order the values by one of the time-based features and resample the annotation trace. The recommended method is padding the values.Discrepancy Between Game Logs and Annotations
Gameplay is recorded from the beginning of the start-game countdown to the beginning of the end-game countdown.
Videos and Annotations are recorded from the beginning of the start-game countdown to the end of the end-game countdown.Annotation sessions are approximately 3 seconds longer than gameplay videos.
Recommended usage is to first cut the annotation-lag from the beginning of the annotation session then cut the over-hanging annotation entries.Game Logs
Each game is recorded with approximately 4Hz (every 250ms). Due to the limitations of the engine, each time windows are not consistent. To address this issue the raw logfiles aggregate ticks of the engine's update loop. The control variable, engine_tick
shows the length of each time window in terms of the number of update loops. Due to this processing technique, almost all events (apart from some very sparse ones like player_death
) are continuous values.
Enemies, projectiles, and objects are only recorded when they are visible to the player! Check variables with visible
in their names to see how many of these elements are logged in a given time. Features encoding bot behaviour show the intensity of the encounters with all visible bot's health, speed, distance, etc. averaged together.
Game Objects
Racing Games- Enemy cars - 4 in each game
- Loop - a large loop in the track in Solid Rally
- Jump - jump pads in Apex and Tiny Cars
- Obstacle - fire-traps in Apex (reset the player position on collision)
- Enemy bots - with assault rifles in TopDown and FPS and guns in Shootout
- Destructibles - destroyable objects in TopDown (orange objects)
- Health Pickup - restores health in TopDown
- Enemy bots
- WalkingEnemy(_Variant_) - basic enemies in all games (different visual variants named)
- ShootingEnemy - stationary enemies with assault rifles in Run'N'Gun
- Obstacle - crates in Endless (functions as a WalkingEnemy)
- Boss and MiniBoss - more powerful enemies in Run'N'Gun (have two weapons and larger health pool)
- BossWeapon - weapons attached to Boss units (have to be destroyed before attacking the Boss)
- Enemy attacks
- EnemyMelee - melee attack of basic enemies in Run'N'Gun
- EnemyProjectile - ShootingEnemy projectiles in Run'N'Gun
- BossProjectile(_Variant_) - BossWeapon projectiles in Run'N'Gun (different variants named)
- Bullet - a basic projectile attack
- Burst - bullets fired in quick succession in a line
- Spread - a volley of bullets fired in a 45-degree angle in front of the boss (only for the main Boss)
- Pickups
- HealthPickup - restores health in Run'N'Gun
- HealthBoost - adds extra life and increases player size in Pirates!
- Point - coins in Pirates! and Endless which give the player score
- SpeedBoost and SlowDown - game scrolling speed modifiers in Endless
General Feature
General features encode features which are general across all games. These features are prefixed with [general]
time_passed
- time counted from the start of the recordinginput_intensity
- number of keypressesinput_diversity
- number of unique keypressesidle_time
- percentage of time spent without inputactivity
- inverse of idleTimemovement
- distance travelled + reticle moved (in shooter games)score
- player scorebot_count
- number of bots visiblebot_movement
- bot distance travelledbot_diversity
- number of unique bots visibleobject_intensity
- number of objects of interest (destructables, pickups, loops, speed boosts, etc.)object_diversity
- number of unique objectsevent_intensity
- number of eventsevent_diversity
- number of unique events
Licence
MIT License
Copyright (c) 2020 Institute of Digital Games, University of Malta
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.