bot_attack_aimpenalty_time_frac_dark : 1 : , "sv", "cheat" : Frac to multiply against the aim penalty time when target is in darkness
bot_attack_aimpenalty_time_frac_light : 1 : , "sv", "cheat" : Frac to multiply against the aim penalty time when target is in lightness
bot_attack_aimtolerance_newthreat_amt : 3 : , "sv", "cheat" : How much should we artificially bloat aimtolerance boxes for enemies we just spotted?
bot_attack_aimtolerance_newthreat_amt_solo : 1 : , "sv", "cheat" : How much should we artificially bloat aimtolerance boxes for enemies we just spotted? (solo)
bot_attack_aimtolerance_newthreat_time : 0 : , "sv", "cheat" : How long before we stop artificially bloating aimtolerance box?
bot_attack_aimtolerance_newthreat_time_solo : 0 : , "sv", "cheat" : How long before we stop artificially bloating aimtolerance box? (solo)
bot_attack_burst_maxtime : 0 : , "sv", "rep" : The maximum amount of time the bot pulls the trigger for automatic weapons
bot_attack_burst_maxtime_solo : 0 : , "sv", "rep" : The maximum amount of time the bot pulls the trigger for automatic weapons (solo)
bot_attack_burst_mintime : 0 : , "sv", "rep" : The minimum amount of time the bot pulls the trigger for automatic weapons
bot_attack_burst_mintime_solo : 0 : , "sv", "rep" : The minimum amount of time the bot pulls the trigger for automatic weapons (solo)
bot_attack_retarget_maxtime : 0 : , "sv", "rep" : The maximum amount of time until the bot retargets
bot_attack_retarget_mintime : 0 : , "sv", "rep" : The minimum amount of time until the bot retargets
bot_attackdelay_base : 1 : , "sv", "rep" : Attack delay base value in seconds
@ -129,14 +133,17 @@ bot_silhouette_readtime_dark : 7 : , "sv", "cheat" : Time it
bot_silhouette_readtime_fuzzy : 1 : , "sv", "cheat" : Time it takes to shoot at a fuzzy silhouette
bot_silhouette_scan_frequency : 0 : , "sv", "cheat" : Time in seconds between each silhouette scan if a silhouette is not visible
bot_targeting_noise_x_base : 60 : , "sv", "rep" : The targeting noise X value
bot_targeting_noise_x_base_solo : 15 : , "sv", "rep" : The targeting noise X value (solo)
bot_targeting_noise_x_frac_desiredrange : 1 : , "sv", "rep" : The targeting noise frac applied to X value on desired range
bot_targeting_noise_x_frac_hipfirerange : 1 : , "sv", "rep" : The targeting noise frac applied to X value on hipfire range
bot_targeting_noise_x_frac_maxrange : 2 : , "sv", "rep" : The targeting noise frac applied to X value on max range
bot_targeting_noise_y_base : 60 : , "sv", "rep" : The targeting noise Y value
bot_targeting_noise_y_base_solo : 15 : , "sv", "rep" : The targeting noise Y value (solo)
bot_targeting_noise_y_frac_desiredrange : 1 : , "sv", "rep" : The targeting noise frac applied to Y value on desired range
bot_targeting_noise_y_frac_hipfirerange : 1 : , "sv", "rep" : The targeting noise frac applied to Y value on hipfire range
bot_targeting_noise_y_frac_maxrange : 2 : , "sv", "rep" : The targeting noise frac applied to Y value on max range
bot_targeting_noise_z_base : 80 : , "sv", "rep" : The targeting noise Z value
bot_targeting_noise_z_base_solo : 20 : , "sv", "rep" : The targeting noise Z value (solo)
bot_targeting_noise_z_frac_desiredrange : 1 : , "sv", "rep" : The targeting noise frac applied to Z value on desired range
bot_targeting_noise_z_frac_hipfirerange : 1 : , "sv", "rep" : The targeting noise frac applied to Z value on hipfire range
bot_targeting_noise_z_frac_maxrange : 2 : , "sv", "rep" : The targeting noise frac applied to Z value on max range
@ -406,47 +441,76 @@ ins_bot_count_checkpoint : 0 : , "a", "sv", "rep" : A set
ins_bot_count_checkpoint_default : 0 : , "a", "sv", "rep" : This is the default bot count for Checkpoint that the server will reset to when hibernating.
ins_bot_count_checkpoint_max : 15 : , "a", "sv", "rep" : The max bot count for Checkpoint.
ins_bot_count_checkpoint_min : 5 : , "a", "sv", "rep" : The min bot count for Checkpoint.
ins_bot_count_conquest : 0 : , "a", "sv", "rep" : A set bot count for conquest.
ins_bot_count_conquest_default : 0 : , "a", "sv", "rep" : This is the default bot count for conquest that the server will reset to when hibernating.
ins_bot_count_conquest_max : 15 : , "a", "sv", "rep" : The max bot count for conquest.
ins_bot_count_conquest_min : 5 : , "a", "sv", "rep" : The min bot count for conquest.
ins_bot_count_conquer : 0 : , "a", "sv", "rep" : A set bot count for conquer.
ins_bot_count_conquer_default : 0 : , "a", "sv", "rep" : This is the default bot count for conquer that the server will reset to when hibernating.
ins_bot_count_conquer_max : 24 : , "sv", "rep" : Max bot count in Conquer mode.
ins_bot_count_conquer_min : 8 : , "sv", "rep" : Min bot count in Conquer mode.
ins_bot_count_conquer_solo : 8 : , "a", "sv", "rep" : A set bot count for conquer in solo mode.
ins_bot_count_hunt : 0 : , "a", "sv", "rep" : A set bot count for Checkpoint.
ins_bot_count_hunt_default : 0 : , "a", "sv", "rep" : This is the default bot count for Hunt that the server will reset to when hibernating.
ins_bot_count_hunt_max : 25 : , "a", "sv", "rep" : The max bot count for Hunt.
ins_bot_count_hunt_min : 15 : , "a", "sv", "rep" : The min bot count for Hunt.
ins_bot_count_hunt_max : 26 : , "a", "sv", "rep" : The max bot count for Hunt.
ins_bot_count_hunt_min : 18 : , "a", "sv", "rep" : The min bot count for Hunt.
ins_bot_count_hunt_solo : 15 : , "a", "sv", "rep" : A set bot count for hunt in solo mode.
ins_bot_count_outpost : 0 : , "a", "sv", "rep" : A set bot count for outpost.
ins_bot_count_outpost_default : 0 : , "a", "sv", "rep" : This is the default bot count for Survival that the server will reset to when hibernating.
ins_bot_count_outpost_level_multiplier : 1 : , "a", "sv", "rep" : Multiplier applied to bot count each round that passes.
ins_bot_count_outpost_max : 18 : , "a", "sv", "rep" : The max bot count at the end of outpost.
ins_bot_count_outpost_start_max : 14 : , "a", "sv", "rep" : The max bot count at the start of outpost.
ins_bot_count_outpost_start_min : 7 : , "a", "sv", "rep" : The min bot count at the start of outpost.
ins_bot_count_outpost_max : 24 : , "a", "sv", "rep" : The max bot count at the end of outpost.
ins_bot_count_outpost_start_max : 12 : , "a", "sv", "rep" : The max bot count at the start of outpost.
ins_bot_count_outpost_start_min : 6 : , "a", "sv", "rep" : The min bot count at the start of outpost.
ins_bot_count_survival : 0 : , "a", "sv", "rep" : A set bot count for Survival.
ins_bot_count_survival_day_start_max : 19 : , "a", "sv", "rep" : The max bot count at the start of Survival during daytime.
ins_bot_count_survival_day_start_min : 14 : , "a", "sv", "rep" : The min bot count at the start of Survival during daytime.
ins_bot_count_survival_default : 0 : , "a", "sv", "rep" : This is the default bot count for Survival that the server will reset to when hibernating.
ins_bot_count_survival_level_multiplier : 1 : , "a", "sv", "rep" : Multiplier applied to bot count each round that passes.
ins_bot_count_survival_max : 18 : , "a", "sv", "rep" : The max bot count at the end of Survival.
ins_bot_count_survival_start_max : 14 : , "a", "sv", "rep" : The max bot count at the start of Survival.
ins_bot_count_survival_start_min : 7 : , "a", "sv", "rep" : The min bot count at the start of Survival.
ins_bot_max_grenade_range : 900 : , "sv", "rep" : Max distance bots will try to throw grenades from
ins_bot_max_setup_gate_defend_range : 2000 : , "sv", "cheat" : How far from the setup gate(s) defending bots can take up positions
ins_bot_min_setup_gate_defend_range : 750 : , "sv", "cheat" : How close from the setup gate(s) defending bots can take up positions. Areas closer than this will be in cover to ambush.
ins_bot_min_setup_gate_sniper_defend_range : 1500 : , "sv", "cheat" : How far from the setup gate(s) a defending sniper will take up position
ins_bot_path_compute_throttle_combat : 0 : , "sv", "cheat" : Minimum time between each path compute in combat (tweaked for optimization)
ins_bot_path_compute_throttle_ooc : 5 : , "sv", "cheat" : Minimum time between each path compute Out of Combat(tweaked for optimization)
ins_bot_path_distance_conquer : 12000 : , "sv", "cheat" : Max distance for pathing to objectives in Conquer (to tune performance)
ins_bot_path_distance_hunt : 20000 : , "sv", "cheat" : Max distance for pathing to objectives in Hunt (to tune performance)
ins_bot_path_distance_max : 12000 : , "sv", "cheat" : Max distance for pathing (to tune performance)
ins_bot_path_distance_outpost : 20000 : , "sv", "cheat" : Max distance for pathing to objectives in Outpost (to tune performance)
ins_bot_path_distance_patrol : 8000 : , "sv", "cheat" : Max distance for pathing to patrol areas (to tune performance)
ins_bot_path_distance_survival : 20000 : , "sv", "cheat" : Max distance for pathing to objectives in Survival (to tune performance)
mem_vcollide : cmd : : Dumps the memory used by vcollides
mem_verify : cmd : : Verify the validity of the heap
memory : cmd : : Print memory stats.
mm_csgo_community_search_players_min : 3 : , "a" : When performing CSGO community matchmaking look for servers with at least so many human players
mm_datacenter_debugprint : cmd : : Shows information retrieved from data center
mm_dlc_debugprint : cmd : : Shows information about dlc
mm_heartbeat_seconds : 300 : :
mm_heartbeat_seconds_xlsp : 60 : :
mm_heartbeat_timeout : 10 : :
mm_heartbeat_timeout_legacy : 15 : :
mm_server_search_lan_ports : 27015 : , "a" : Ports to scan during LAN games discovery. Also used to discover and correctly connect to dedicated LAN servers behind NATs.
mm_status : cmd : : Matchmaking status
mod_check_vcollide : 0 : : Check all vcollides on load
mod_dont_load_vertices : 1 : : For the dedicated server, don't load model vertex data
mod_DumpWeaponWiewModelCache : cmd : : Dumps the weapon view model cache contents
mod_DumpWeaponWorldModelCache : cmd : : Dumps the weapon world model cache contents
mod_dynamicunloadtex : 1 : :
mod_dynamicunloadtime : 150 : :
mod_forcedata : 1 : : Forces all model file data into cache on model load.
mod_forcetouchdata : 1 : : Forces all model file data into cache on model load.
mp_conquest_counterattack_delay : 12 : , "sv", "rep" : How long (in seconds) until the enemy counter-attack wave spawns.
mp_conquest_counterattack_delay_finale : 20 : , "sv", "rep" : How long (in seconds) until the enemy counter-attack wave spawns (finale).
mp_conquest_counterattack_duration : 65 : , "sv", "rep" : How long a conquest counter-attack lasts
mp_conquest_counterattack_duration_finale : 120 : , "sv", "rep" : How long a conquest counter-attack lasts
mp_conquest_counterattack_wave_finale : 60 : , "sv", "rep" : How long until we get the subsequent waves in conquest finale?
mp_conquest_enemy_waves_per_obj : 3 : , "sv", "rep" : Number of waves defenders get for each objective
mp_conquer_auto_reinforce_at_bot_count : 0 : , "sv" : If there are this many bots left alive, an automatic reinforcement will be deployed
mp_conquer_cache_destroyed_response_distance_high_strength : 4500 : , "sv" : The distance bots will respond to humans destroying a cache when high strength
mp_conquer_cache_destroyed_response_distance_low_strength : 3500 : , "sv" : The distance bots will respond to humans destroying a cache when low strength
mp_conquer_capture_finished_response_distance_high_strength : 5000 : , "sv" : The distance bots will respond to humans finishing a capture when high strength
mp_conquer_capture_finished_response_distance_low_strength : 3000 : , "sv" : The distance bots will respond to humans finishing a capture when low strength
mp_conquer_capture_start_followup_response_distance_high_strength : 16000 : , "sv" : The distance bots will respond to humans starting a capture when high strength
mp_conquer_capture_start_followup_response_distance_low_strength : 7000 : , "sv" : The distance bots will respond to humans starting a capture when low strength
mp_conquer_capture_start_response_distance_high_strength : 20000 : , "sv" : The distance bots will respond to humans starting a capture when high strength
mp_conquer_capture_start_response_distance_low_strength : 9000 : , "sv" : The distance bots will respond to humans starting a capture when low strength
mp_conquer_debug_gamemode : 1 : , "sv", "cheat" :
mp_conquer_enemy_strength_all_caches : 1 : , "sv" : The percentage of bots to spawn when none of the caches are destroyed
mp_conquer_enemy_strength_all_caches_solo : 0 : , "sv" : The percentage of bots to spawn when none of the caches are destroyed in Solo mode
mp_conquer_enemy_strength_no_caches : 0 : , "sv" : The percentage of bots to spawn when all the caches are destroyed
mp_conquer_enemy_strength_no_caches_solo : 0 : , "sv" : The percentage of bots to spawn when all the caches are destroyed in Solo mode
mp_conquer_followup_wave_time_high_strength : 20 : , "sv" : The time after a capture is initiated that a second AI wave will spawn when high strength
mp_conquer_followup_wave_time_low_strength : 40 : , "sv" : The time after a capture is initiated that a second AI wave will spawn when low strength
mp_conquer_hostile_objective_response_distance_high_strength : 5000 : , "sv" : The distance bots will respond to a human owned objective when high strength
mp_conquer_hostile_objective_response_distance_high_strength_solo : 2000 : , "sv" : The distance bots will respond to a human owned objective when high strength
mp_conquer_hostile_objective_response_distance_low_strength : 3500 : , "sv" : The distance bots will respond to a human owned objective when low strength
mp_conquer_hostile_objective_response_distance_low_strength_solo : 400 : , "sv" : The distance bots will respond to a human owned objective when low strength
mp_conquer_last_man_standing_capture_speedup : 2 : , "sv" : How much faster capturing goes if you're the last man standing (scales towards this)
mp_conquer_losing_objective_response_distance_high_strength : 9000 : , "sv" : The distance bots will respond to losing an objective when high strength
mp_conquer_losing_objective_response_distance_high_strength_solo : 5000 : , "sv" : The distance bots will respond to losing an objective when high strength
mp_conquer_losing_objective_response_distance_low_strength : 6000 : , "sv" : The distance bots will respond to losing an objective when low strength
mp_conquer_losing_objective_response_distance_low_strength_solo : 1500 : , "sv" : The distance bots will respond to losing an objective when low strength
mp_conquer_obj_recapture_distance_high_strength : 6000 : , "sv" : The distance bots will attempt to recapture a nearby enemy objective when high strength
mp_conquer_obj_recapture_distance_low_strength : 3500 : , "sv" : The distance bots will attempt to recapture a nearby enemy objective when low strength
mp_coop_ai_teammate_count : 0 : , "sv", "rep" : Number of Teammates, 0 to fill lobby
mp_coop_ai_teammate_handicap : 0 : , "sv", "rep" : How much should these bots impact enemy bot counts
mp_coop_ai_teammates : 0 : , "sv", "rep" : Use AI Teammate System
mp_forcecamera : 1 : , "sv", "rep" : Restricts spectator modes for dead players. 0 = Any team. 1 = Only own team. 2 = No one; fade to black on death (previously mp_
mp_forcerespawn : 1 : , "sv", "nf" :
mp_fraglimit : 0 : , "sv", "nf", "rep" : The number of kills at which the map ends
mp_invasion_capture_time_extension : 480 : , "a", "sv" : How long (in seconds) the round should be extended for after a capture.
mp_invasion_deferred_advance : 0 : , "sv", "rep" : If >0, advanced spawns will be delayed by this number of seconds.
mp_invasion_final_holdout_spawn_delay : 8 : , "sv", "rep" : Defenders get two spawns within this amount of time after the final territorial objective is captured since it's their final wa
mp_joinwaittime : 20 : , "sv", "nf" : How long to wait for the first round once the minimum players requirement has been reached.
mp_lobbytime : 10 : , "sv", "nf", "rep" : Lobby time in seconds
mp_match_restart_delay : 15 : , "sv", "rep" : Time (in seconds) until a match restarts.
mp_maxgames : 1 : , "sv", "nf", "rep" : Max games before map change
mp_maxrounds : 5 : , "sv", "nf", "rep" : Max rounds before game ends
mp_minteamplayers : 1 : , "sv", "nf", "rep" : min players on each team to start the match
mp_occupy_bonus_wave : 1 : , "sv", "rep" : Number of waves given to a team for capturing the point.
mp_player_resupply_grace : 30 : , "sv" : Grace time in which the resupply delay is not applied.
mp_player_resupply_grace_survival : 30 : , "sv" : Grace time in which the resupply delay is not applied (Survival-only).
mp_player_resupply_grace : 15 : , "sv" : Grace time in which the resupply delay is not applied.
mp_player_resupply_grace_initial : 45 : , "sv" : Grace timer applied when the player hasn't left spawn yet
mp_player_resupply_penalty_reset : 45 : , "sv" : Time taken to decrement resupply counter
mp_player_spotting : 1 : , "sv", "rep" :
mp_push_capture_time_extension : 300 : , "a", "sv" : How long (in seconds) the round should be extended for after a capture.
mp_push_counter_round : 0 : , "sv", "rep" : If on, after full-cap victory, flip the attacking team for a counter attack round.
mp_push_deferred_advance : 0 : , "sv", "rep" : If >0, advanced spawns will be delayed by this number of seconds.
mp_push_final_holdout_spawn_delay : 8 : , "sv", "rep" : Defenders get two spawns within this amount of time after the final territorial objective is captured since it's their final wa
mp_searchdestroy_single_cache_max : 12 : , "a", "sv", "nf" : Max number of players where a single cache is used
mp_showgestureslots : -1 : , "sv", "cheat", "rep" : Show multiplayer client/server gesture slot information for the specified player index (-1 for no one).
mp_slammoveyaw : 0 : , "sv", "rep" : Force movement yaw along an animation path.
mp_spawnprotectontime : 30 : , "sv", "nf", "rep" : Spawn protection time in seconds
mp_spawnprotectiontime_navspawn : 15 : , "sv", "nf", "rep" : Spawn protection time in seconds when spawning on the nav
mp_spawnprotectontime : 10 : , "sv", "nf", "rep" : Spawn protection time in seconds
mp_spawns_per_frame : 6 : , "sv" : Maximum number of players to spawn per frame
mp_spectator_allow_chase : 1 : , "a", "sv", "rep" : When set to 0, chase camera in spectator mode is disabled
mp_strike_capture_time_extension : 180 : , "a", "sv" : How long (in seconds) the round should be extended for after a capture.
mp_strike_capture_wave_decrement : 1 : , "a", "sv" : How many waves to deduct from defenders when a cache is blown
mp_supply_token_base : 10 : , "sv", "nf", "rep" : The amount of supply players start with
mp_supply_token_bot_base : 18 : , "sv", "nf", "rep" : The amount of supply bots start with
mp_supply_token_max : 20 : , "sv", "nf", "rep" : The maximum amount of supply a player can get
mp_survival_nav_spawning : 0 : , "sv", "rep" :
mp_survival_patrol_proximity_to_active_safehouse : 3000 : , "sv", "rep" : Bots will prioritize patrol point pathing within this range of an active safehouse
mp_survival_patrol_proximity_to_potential_safehouse : 8000 : , "sv", "rep" : Bots will prioritize patrol point pathing within this range of a potentially new safehouse
mp_switchteams : cmd : : Switch teams and restart the game
mp_switchteams_each_game : 0 : , "sv", "nf", "rep" : Switch the teams after each game
mp_switchteams_each_round : 0 : , "sv", "nf", "rep" : If >0, switch the teams after x rounds
@ -813,6 +931,8 @@ mp_teamoverride : 1 : , "sv" :
mp_teamplay : 0 : , "sv", "nf" :
mp_teams_auto_join : 1 : , "sv" : When enabled, players are automatically assigned to a team on join.
mp_teams_unbalance_limit : 1 : , "sv", "nf", "rep" : Teams are unbalanced when one team has this many more players than the other team. (0 disables check)
mp_theater_force_holiday : 0 : , "sv", "rep" :
mp_theater_override : 0 : , "sv", "rep" : If set, the given theater file is loaded instead.
mp_timelimit : 0 : , "sv", "nf", "rep" : game time per map in minutes
mp_timelimit_waiting : 3600 : , "sv", "rep" : Time to wait on an empty server before changing levels.
r_proplightingpooling : -1 : , "cheat" : 0 - off, 1 - static prop color meshes are allocated from a single shared vertex buffer (on hardware that supports stream offset
r_queued_decals : 0 : : Offloads a bit of decal rendering setup work to the material system queue when enabled.
r_randomflex : 0 : , "cheat" :
@ -1318,7 +1498,7 @@ r_spray_lifetime : 10 : : Number
rr_thenany_score_slop : 0 : , "sv", "cheat" : When computing respondents for a 'THEN ANY' rule, all rule-matching scores within this much of the best score will be considere
say : cmd : : Display player message
say_team : cmd : : Display player message to team
sc_debug_sets : 0 : , "a" : Debugging
sc_joystick_map : 1 : , "a" : How to map the analog joystick deadzone and extents 0 = Scaled Cross, 1 = Concentric Mapping to Square.
soundpatch_captionlength : 2 : , "sv", "rep" : How long looping soundpatch captions should display for.
soundscape_debug : 0 : , "sv", "cheat" : When on, draws lines to all env_soundscape entities. Green lines show the active soundscape, red lines show soundscapes that ar
soundscape_flush : cmd : : Flushes the server & client side soundscapes
spawnpoint_debug : 0 : , "sv", "cheat" : Display debugging information on each spawn point. You must active this cvar before loading a level!
spec_allow_bots : 0 : , "sv", "nf" : Can we spectate bots in coop?
spec_freeze_deathanim_time : 2 : , "sv", "cheat", "rep" : The time that the death cam will spend watching the player's ragdoll before going into freeze cam
sv_alltalk : 1 : , "sv", "nf", "rep" : Players can hear all other players, no team restrictions
sv_alltalk_dead : 0 : , "sv", "nf", "rep" : Dead players broadcast their voice to enemies?
sv_alltalk_endgame : 1 : , "sv", "nf", "rep" : All talk enabled at the end of the game?
sv_alltalk_intermission : 1 : , "sv", "nf", "rep" : All talk enabled between rounds?
sv_alternateticks : 0 : : If set, server only simulates entities on even numbered ticks.
sv_autosave : 1 : , "sv" : Set to 1 to autosave game on level transition. Does not affect autosave triggers.
sv_benchmark_autovprofrecord : 0 : , "sv" : If running a benchmark and this is set, it will record a vprof file over the duration of the benchmark with filename benchmark.
sv_cheats : 0 : , "nf", "rep" : Allow cheats on server
sv_clearhinthistory : cmd : : Clear memory of server side hints displayed to the player.
sv_client_cmdrate_difference : 20 : , "rep" : cl_cmdrate is moved to within sv_client_cmdrate_difference units of cl_updaterate before it is clamped between sv_mincmdrate an
sv_footstep_run_time_sound : 740 : , "sv", "cheat", "rep" : How frequent to hear the player's step sound or how fast they appear to be running from first person.
sv_footstep_sound_frequency : 0 : , "sv", "cheat", "rep" : How frequent to hear the player's step sound or how fast they appear to be running from first person.
sv_footstep_sprint_time_sound : 340 : , "sv", "cheat", "rep" : How frequent to hear the player's step sound or how fast they appear to be running from first person.
sv_footstep_thirdperson : 0 : , "sv", "cheat", "rep" : Enable the player's step sound or how fast they appear to be running from third person.
sv_map_voting_shuffle : 1 : , "sv", "nf", "rep" : Initially use random map selections in the vote rather than using the map cycle order.
sv_massreport : 0 : , "sv" :
sv_master_legacy_mode : 1 : : Use (outside-of-Steam) code to communicate with master servers.
sv_master_share_game_socket : 1 : : Use the game's socket to communicate to the master server. If this is 0, then it will create a socket on -steamport + 1 to comm