diff --git a/docs/datascience/adx/cs2/csds/.ipynb_checkpoints/Untitled-checkpoint.ipynb b/docs/datascience/adx/cs2/csds/.ipynb_checkpoints/Untitled-checkpoint.ipynb new file mode 100644 index 0000000..363fcab --- /dev/null +++ b/docs/datascience/adx/cs2/csds/.ipynb_checkpoints/Untitled-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/datascience/adx/cs2/csds/Untitled.ipynb b/docs/datascience/adx/cs2/csds/Untitled.ipynb new file mode 100644 index 0000000..0e870b9 --- /dev/null +++ b/docs/datascience/adx/cs2/csds/Untitled.ipynb @@ -0,0 +1,884 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 3, + "id": "be9002d6-c1a7-4d4e-990d-d8f7f3f5d32b", + "metadata": {}, + "outputs": [], + "source": [ + "from io import BytesIO\n", + "from gzip import GzipFile\n", + "import json\n", + "import gzip" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "52bb848f-690b-4fa5-8ed3-4636cf3cded3", + "metadata": {}, + "outputs": [], + "source": [ + "with gzip.open('csds', 'r') as fin:\n", + " data = json.loads(fin.read().decode('utf-8'))" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "6435382f-41bb-4b87-a971-a6341597a777", + "metadata": {}, + "outputs": [], + "source": [ + "channels = data['channels']" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "4db86556-55fe-40dc-b9d8-63da7027cf81", + "metadata": {}, + "outputs": [], + "source": [ + "def print_row(row):\n", + " data=['']\n", + " data.append(row['name'])\n", + " data.append(row['origin'])\n", + " data.append(', '.join(row.get('dependents',[])))\n", + " data.append(', '.join(row.get('mergeKeys',[])))\n", + " data.append('')\n", + " print('|'.join(data))\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "b93b36fa-d917-4d51-a123-a4d4a2139e6f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "## bomb_action - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|player_id|replay|||\n", + "|player_id_pawn|replay|||\n", + "|site_code|replay|||\n", + "|entity_id|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## bomb_defuse - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|player_id|replay|||\n", + "|has_kit|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## bomb_state - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|player_id|replay|||\n", + "|site_code|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## bot_takeover - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|bot_id|replay|||\n", + "|player_index|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## grenade_state - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|entity_id|replay|||\n", + "|player_id|replay|||\n", + "|x_pos|replay|||\n", + "|y_pos|replay|||\n", + "|z_pos|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|entity_id_fixed|calculated|round, entity_id, event_type, tick||\n", + "|tick_throw|calculated|round, player_id, weapon_name, tick||\n", + "|player_x_pos|merged||tick_throw, player_id|\n", + "|player_y_pos|merged||tick_throw, player_id|\n", + "|player_z_pos|merged||tick_throw, player_id|\n", + "|player_x_vel|merged||tick_throw, player_id|\n", + "|player_y_vel|merged||tick_throw, player_id|\n", + "|player_z_vel|merged||tick_throw, player_id|\n", + "|player_phi_ang|merged||tick_throw, player_id|\n", + "|player_theta_ang|merged||tick_throw, player_id|\n", + "|player_weapon_code|merged||tick_throw, player_id|\n", + "|player_team_code|merged||tick_throw, player_id|\n", + "\n", + "## header - \n", + "\n", + "|magic|replay|||\n", + "|network_protocol|replay|||\n", + "|server_name|replay|||\n", + "|client_name|replay|||\n", + "|map_name|replay|||\n", + "|game_directory|replay|||\n", + "|fullpackets_version|replay|||\n", + "|allow_clientside_entities|replay|||\n", + "|allow_clientside_particles|replay|||\n", + "|addons|replay|||\n", + "|demo_version_name|replay|||\n", + "|demo_version_guid|replay|||\n", + "|build_num|replay|||\n", + "|game|replay|||\n", + "|magic|replay|||\n", + "|protocol|replay|||\n", + "|network_protocol|replay|||\n", + "|server_name|replay|||\n", + "|client_name|replay|||\n", + "|map_name|replay|||\n", + "|game_directory|replay|||\n", + "|playback_time|replay|||\n", + "|playback_ticks|replay|||\n", + "|playback_frames|replay|||\n", + "|signon_length|replay|||\n", + "|tick_rate|calculated|playback_ticks, playback_time||\n", + "|tick_save_rate|calculated|playback_frames, playback_time||\n", + "|rushb_version|calculated|meta:metadata.rushbVersion||\n", + "|ppp_version|calculated|meta:context.version||\n", + "|match_date|calculated|meta:matchDate||\n", + "|demo_id|calculated-redacted|meta:demoId||\n", + "|sharecode|calculated-redacted|meta:sharecode||\n", + "|platform|calculated|meta:platform||\n", + "|match_type|calculated|meta:matchType||\n", + "|game|calculated|meta:game||\n", + "|second|calculated|tick, tick_rate||\n", + "|t_starters_avg_rank|calculated|is_bot, round, rank, steam_id, team_code||\n", + "|t_starters_avg_wins|calculated|is_bot, round, wins, steam_id, team_code||\n", + "|ct_starters_avg_rank|calculated|is_bot, round, rank, steam_id, team_code||\n", + "|ct_starters_avg_wins|calculated|is_bot, round, wins, steam_id, team_code||\n", + "|ct_starters_score_final|calculated|round_state:ct_score||\n", + "|t_starters_score_final|calculated|round_state:t_score||\n", + "|providence|calculated|metademo:providence||\n", + "|number_of_points|calculated|shape of all data frames||\n", + "\n", + "## item_equip - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|item|replay|||\n", + "|def_index|replay|||\n", + "|can_zoom|replay|||\n", + "|has_silencer|replay|||\n", + "|is_silenced|replay|||\n", + "|has_tracers|replay|||\n", + "|weapon_type_code|replay|||\n", + "|is_painted|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## item_pickup - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|item|replay|||\n", + "|def_index|replay|||\n", + "|is_silent|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## molotov_state - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|entity_id|replay|||\n", + "|x_pos|replay|||\n", + "|y_pos|replay|||\n", + "|z_pos|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|entity_id_fixed|calculated|round, entity_id, event_type, tick||\n", + "|burn_duration|calculated|second, entity_id_fixed, event_type||\n", + "|was_extinguished_by_smoke|calculated|second, entity_id_fixed, event_type, burn_duration||\n", + "|extinguisher_id|calculated|second, entity_id_fixed, event_type, x_pos, y_pos, z_pos, player_id||\n", + "|extinguisher_id_fixed|calculated|second, entity_id, entity_id_fixed, event_type, x_pos, y_pos, z_pos, player_id_fixed||\n", + "|smoke_entity_id|calculated|second, entity_id, entity_id_fixed, event_type, x_pos, y_pos, z_pos||\n", + "|was_extinguished_by_thrown_smoke|calculated|second, entity_id, entity_id_fixed, event_type, x_pos, y_pos, z_pos||\n", + "|player_id|calculated|event_type, second, round||\n", + "|player_id_fixed|calculated|event_type, second, round||\n", + "|tick_throw|calculated|event_type, second, round||\n", + "|player_x_pos|merged||tick_throw, player_id|\n", + "|player_y_pos|merged||tick_throw, player_id|\n", + "|player_z_pos|merged||tick_throw, player_id|\n", + "|player_x_vel|merged||tick_throw, player_id|\n", + "|player_y_vel|merged||tick_throw, player_id|\n", + "|player_z_vel|merged||tick_throw, player_id|\n", + "|player_phi_ang|merged||tick_throw, player_id|\n", + "|player_theta_ang|merged||tick_throw, player_id|\n", + "|player_weapon_code|merged||tick_throw, player_id|\n", + "|player_team_code|merged||tick_throw, player_id|\n", + "\n", + "## other_death - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|other_type|replay|||\n", + "|attacker_id|replay|||\n", + "|weapon_name|replay|||\n", + "|is_headshot|replay|||\n", + "|penetration_amount|replay|||\n", + "|is_through_smoke|replay|||\n", + "|is_attacker_blind|replay|||\n", + "|is_noscope|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|attacker_id_fixed|merged||attacker_id, round, steam_id|\n", + "|attacker_x_pos|merged||attacker_id, tick|\n", + "|attacker_y_pos|merged||attacker_id, tick|\n", + "|attacker_z_pos|merged||attacker_id, tick|\n", + "|attacker_x_vel|merged||attacker_id, tick|\n", + "|attacker_y_vel|merged||attacker_id, tick|\n", + "|attacker_z_vel|merged||attacker_id, tick|\n", + "|attacker_phi_ang|merged||attacker_id, tick|\n", + "|attacker_theta_ang|merged||attacker_id, tick|\n", + "|attacker_weapon_code|merged||attacker_id, tick|\n", + "|attacker_team_code|merged||attacker_id, tick|\n", + "|attacker_tick|merged||attacker_id, tick|\n", + "|attacker_player_id|merged||attacker_id, tick|\n", + "\n", + "## player_action - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|player_id|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## player_blind - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|entity_id|replay|||\n", + "|attacker_id|replay|||\n", + "|blind_duration|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|attacker_id_fixed|merged||attacker_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "|attacker_x_pos|merged||attacker_id, tick|\n", + "|attacker_y_pos|merged||attacker_id, tick|\n", + "|attacker_z_pos|merged||attacker_id, tick|\n", + "|attacker_x_vel|merged||attacker_id, tick|\n", + "|attacker_y_vel|merged||attacker_id, tick|\n", + "|attacker_z_vel|merged||attacker_id, tick|\n", + "|attacker_phi_ang|merged||attacker_id, tick|\n", + "|attacker_theta_ang|merged||attacker_id, tick|\n", + "|attacker_weapon_code|merged||attacker_id, tick|\n", + "|attacker_team_code|merged||attacker_id, tick|\n", + "|attacker_tick|merged||attacker_id, tick|\n", + "|attacker_player_id|merged||attacker_id, tick|\n", + "\n", + "## player_death - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|attacker_id|replay|||\n", + "|assister_id|replay|||\n", + "|weapon_name|replay|||\n", + "|is_headshot|replay|||\n", + "|penetration_amount|replay|||\n", + "|has_replay|replay|||\n", + "|is_flash_assist|replay|||\n", + "|is_through_smoke|replay|||\n", + "|is_attacker_blind|replay|||\n", + "|is_noscope|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|attacker_id_fixed|merged||attacker_id, round, steam_id|\n", + "|assister_id_fixed|merged||assister_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "|attacker_x_pos|merged||attacker_id, tick|\n", + "|attacker_y_pos|merged||attacker_id, tick|\n", + "|attacker_z_pos|merged||attacker_id, tick|\n", + "|attacker_x_vel|merged||attacker_id, tick|\n", + "|attacker_y_vel|merged||attacker_id, tick|\n", + "|attacker_z_vel|merged||attacker_id, tick|\n", + "|attacker_phi_ang|merged||attacker_id, tick|\n", + "|attacker_theta_ang|merged||attacker_id, tick|\n", + "|attacker_weapon_code|merged||attacker_id, tick|\n", + "|attacker_team_code|merged||attacker_id, tick|\n", + "|attacker_tick|merged||attacker_id, tick|\n", + "|attacker_player_id|merged||attacker_id, tick|\n", + "|assister_x_pos|merged||assister_id, tick|\n", + "|assister_y_pos|merged||assister_id, tick|\n", + "|assister_z_pos|merged||assister_id, tick|\n", + "|assister_x_vel|merged||assister_id, tick|\n", + "|assister_y_vel|merged||assister_id, tick|\n", + "|assister_z_vel|merged||assister_id, tick|\n", + "|assister_phi_ang|merged||assister_id, tick|\n", + "|assister_theta_ang|merged||assister_id, tick|\n", + "|assister_weapon_code|merged||assister_id, tick|\n", + "|assister_team_code|merged||assister_id, tick|\n", + "|assister_tick|merged||assister_id, tick|\n", + "|assister_player_id|merged||assister_id, tick|\n", + "\n", + "## player_disconnect - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|disconnect_reason|replay|||\n", + "|is_bot|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "\n", + "## player_footstep - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "\n", + "## player_hurt - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|attacker_id|replay|||\n", + "|health|replay|||\n", + "|armor|replay|||\n", + "|weapon_name|replay|||\n", + "|health_removed|replay|||\n", + "|armor_removed|replay|||\n", + "|hit_box_code|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|attacker_id_fixed|merged||attacker_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "|attacker_x_pos|merged||attacker_id, tick|\n", + "|attacker_y_pos|merged||attacker_id, tick|\n", + "|attacker_z_pos|merged||attacker_id, tick|\n", + "|attacker_x_vel|merged||attacker_id, tick|\n", + "|attacker_y_vel|merged||attacker_id, tick|\n", + "|attacker_z_vel|merged||attacker_id, tick|\n", + "|attacker_phi_ang|merged||attacker_id, tick|\n", + "|attacker_theta_ang|merged||attacker_id, tick|\n", + "|attacker_weapon_code|merged||attacker_id, tick|\n", + "|attacker_team_code|merged||attacker_id, tick|\n", + "|attacker_tick|merged||attacker_id, tick|\n", + "|attacker_player_id|merged||attacker_id, tick|\n", + "|effective_health_removed|calculated|player_id, round, health||\n", + "\n", + "## player_info - \n", + "\n", + "|round|replay|||\n", + "|tick|replay-deleted|||\n", + "|player_id|replay|||\n", + "|team_code|replay|||\n", + "|wins|replay-capped|||\n", + "|rank|replay|||\n", + "|radar_color_code|replay|||\n", + "|second|calculated-deleted|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|rank_raw|calculated|player_info:rank||\n", + "|rank_platform|calculated|player_personal:rank||\n", + "\n", + "## player_name - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|name_new|replay-redacted|||\n", + "|name_old|replay-redacted|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "\n", + "## player_personal - \n", + "\n", + "|round|replay|||\n", + "|tick|replay-deleted|||\n", + "|player_id|replay|||\n", + "|player_controller_id|replay|||\n", + "|player_id_pawn|replay|||\n", + "|name|replay-redacted|||\n", + "|clan_tag|replay-redacted|||\n", + "|steam_id|replay-redacted|||\n", + "|second|calculated-deleted|tick, tick_rate||\n", + "|is_bot|calculated|steam_id||\n", + "|player_id_fixed|calculated|steam_id, is_bot||\n", + "\n", + "## player_spawn - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## player_status - \n", + "\n", + "|tick|replay|||\n", + "|round|replay|||\n", + "|player_id|replay|||\n", + "|player_controller_id|replay|||\n", + "|armor|replay|||\n", + "|health|replay|||\n", + "|place_name|replay|||\n", + "|inv_primary|replay|||\n", + "|inv_secondary|replay|||\n", + "|inv_flashbang|replay|||\n", + "|inv_taser|replay|||\n", + "|inv_hegrenade|replay|||\n", + "|inv_smokegrenade|replay|||\n", + "|inv_molotov|replay|||\n", + "|inv_decoy|replay|||\n", + "|inv_incgrenade|replay|||\n", + "|inv_c4|replay|||\n", + "|current_equipment_cost|replay|||\n", + "|freezetime_end_equipment_cost|replay|||\n", + "|money|replay|||\n", + "|ping|replay-redacted|||\n", + "|round_start_equipment_cost|replay|||\n", + "|zoom_level|replay|||\n", + "|iron_sight_mode|replay|||\n", + "|burst_mode|replay|||\n", + "|is_silenced|replay|||\n", + "|reload_visually_complete|replay|||\n", + "|weapon_mode|replay|||\n", + "|flash_duration|replay|||\n", + "|flash_max_alpha|replay|||\n", + "|has_c4|replay|||\n", + "|has_defuser|replay|||\n", + "|has_helmet|replay|||\n", + "|is_defusing|replay|||\n", + "|is_fake_player|replay|||\n", + "|is_in_bomb_zone|replay|||\n", + "|is_in_buy_zone|replay|||\n", + "|is_scoped|replay|||\n", + "|is_spotted|replay|||\n", + "|is_walking|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|equipment_value_calc|calculated|inv_flashbang, inv_taser, inv_hegrenade, inv_smokegrenade, inv_molotov, inv_decoy, inv_incgrenade, inv_c4, armor, has_defuser, has_helmet, inv_primary, inv_secondary||\n", + "\n", + "## player_vector - \n", + "\n", + "|tick|replay|||\n", + "|round|replay|||\n", + "|player_id|replay|||\n", + "|x_pos|replay|||\n", + "|y_pos|replay|||\n", + "|z_pos|replay|||\n", + "|x_aimpunch|replay|||\n", + "|y_aimpunch|replay|||\n", + "|current_ammo|replay|||\n", + "|weapon_code|replay|||\n", + "|inaccuracy|replay|||\n", + "|last_shot_time|replay|||\n", + "|recoil_index|replay|||\n", + "|phi_ang|replay|||\n", + "|theta_ang|replay|||\n", + "|is_ducked|replay|||\n", + "|is_ducking|replay|||\n", + "|duck_amount|replay|||\n", + "|duck_speed|replay|||\n", + "|fall_velocity|replay|||\n", + "|view_punch_angle_tick|replay|||\n", + "|aim_punch_angle_vel_x|replay|||\n", + "|aim_punch_angle_vel_y|replay|||\n", + "|aim_punch_angle_vel_z|replay|||\n", + "|is_rescuing|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|team_code|merged||round, player_id|\n", + "|theta_vel|calculated|second, player_id, theta||\n", + "|phi_vel|calculated|second, player_id, phi||\n", + "|ang_vel|calculated|phi_vel, theta_vel||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|x_vel|calculated|second, x_pos||\n", + "|y_vel|calculated|second, y_pos||\n", + "|z_vel|calculated|second, z_pos||\n", + "|speed_2d|calculated|x_vel, y_vel||\n", + "|movement_angle|calculated|second, x_vel, y_vel||\n", + "|movement_angle_diff|calculated|second, speed_2d, theta_ang, movement_angle||\n", + "\n", + "## round_end - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|winner_team_code|replay|||\n", + "|win_reason_code|replay|||\n", + "|win_reason_message|replay|||\n", + "|legacy_code|replay|||\n", + "|player_count|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "\n", + "## round_mvp - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|mvp_reason_code|replay|||\n", + "|music_kit_mvps|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "\n", + "## round_start - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|time_limit|replay|||\n", + "|frag_limit|replay|||\n", + "|objective|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "\n", + "## round_state - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|t_score|replay_fixed|||\n", + "|ct_score|replay_fixed|||\n", + "|t_score_raw|replay|||\n", + "|ct_score_raw|replay|||\n", + "|phase|replay|||\n", + "|is_warmup|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "\n", + "## tick - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|previous_phase|calculated|event_type, second||\n", + "|second_since_previous_phase|calculated|second||\n", + "\n", + "## weapon_action - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|event_type|replay|||\n", + "|player_id|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n", + "## weapon_fire - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|player_id_pawn|replay|||\n", + "|weapon_name|replay|||\n", + "|is_silenced|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "|missed_molotov|calculated|event_type-molotov_state, second-molotov_state||\n", + "\n", + "## item_remove - \n", + "\n", + "|round|replay|||\n", + "|tick|replay|||\n", + "|player_id|replay|||\n", + "|item|replay|||\n", + "|def_index|replay|||\n", + "|second|calculated|tick, tick_rate||\n", + "|player_id_fixed|merged||player_id, round, steam_id|\n", + "|player_x_pos|merged||player_id, tick|\n", + "|player_y_pos|merged||player_id, tick|\n", + "|player_z_pos|merged||player_id, tick|\n", + "|player_x_vel|merged||player_id, tick|\n", + "|player_y_vel|merged||player_id, tick|\n", + "|player_z_vel|merged||player_id, tick|\n", + "|player_phi_ang|merged||player_id, tick|\n", + "|player_theta_ang|merged||player_id, tick|\n", + "|player_weapon_code|merged||player_id, tick|\n", + "|player_team_code|merged||player_id, tick|\n", + "|player_tick|merged||player_id, tick|\n", + "|player_player_id|merged||player_id, tick|\n", + "\n" + ] + } + ], + "source": [ + "for channel in channels:\n", + " print(\"## \"+channel['channel']+' - ')\n", + " print()\n", + " for column in channel['columns']:\n", + " print_row(column)\n", + " print()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "7ee5100b-8432-4e23-956c-60e9270e2a68", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "''" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "'.'.join([])\n", + "# Events that trigger this channel: bomb_abort_plant, bomb_begin_plant, bomb_dropped, bomb_pickup, player_given_c4\n", + "\n", + "# | Col Name | Origin | Dependents | Merge Keys |\n", + "# | ------------------ | ---------- | --------------- | -------------------------- |\n", + "# | round | replay | none | none |\n", + "# | tick | replay | none | none |\n", + "# | event_type | replay | none | none |\n", + "# | player_id | replay | none | none |\n", + "# | site_code | replay | none | none |\n", + "# | entity_id | replay | none | none |\n", + "# | second | calculated | tick, tick_rate | none |\n", + "# | player_id_fixed | merged | none | player_id, round, steam_id |\n", + "# | player_x_pos | merged | none | player_id, tick |\n", + "# | player_y_pos | merged | none | player_id, tick |\n", + "# | player_z_pos | merged | none | player_id, tick |\n", + "# | player_x_vel | merged | none | player_id, tick |\n", + "# | player_y_vel | merged | none | player_id, tick |\n", + "# | player_z_vel | merged | none | player_id, tick |\n", + "# | player_phi_ang | merged | none | player_id, tick |\n", + "# | player_theta_ang | merged | none | player_id, tick |\n", + "# | player_weapon_code | merged | none | player_id, tick |\n", + "# | player_team_code | merged | none | player_id, tick |\n", + "# | player_tick | merged | none | player_id, tick |\n", + "# | player_player_id | merged | none | player_id, tick |" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cf351e7d-32bc-4899-a8b5-ffd04d589844", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.2" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/datascience/adx/cs2/csds/csds b/docs/datascience/adx/cs2/csds/csds new file mode 100644 index 0000000..91ec364 Binary files /dev/null and b/docs/datascience/adx/cs2/csds/csds differ