Rust antihack, network and RCON convars
Quick answer: these are the Rust server convars for antihack, the network, RCON, the Rust+ app, performance and logging, with the value each starts at. Type a name and a value in the server console or RCON, or put that line in server.cfg to apply it at every start. This list comes straight from a Rust dedicated server (Rust build 26431843, read 2026-11-06), and it is refreshed after every Rust update.
A Saved variable is written to cfg/serverauto.cfg by server.writecfg and read back at the next start, before server.cfg. The common ones are on Rust server variables. The other groups: Server and gameplay variables, AI, NPC and animal variables, World, event and vehicle variables.
analytics
Section titled “analytics”| Variable | Default | Saved | What it does |
|---|---|---|---|
analytics.analytics_bulk_container_url | Yes | Azure blob container url for use with client secret authentication | |
analytics.analytics_bulk_upload_url | Yes | Azure blob container url + SAS token, enables a more efficient upload method | |
analytics.analytics_header | X-API-KEY | Yes | Header key of secret when uploading analytics |
analytics.analytics_secret | Yes | Header secret value when uploading analytics | |
analytics.azure_client_id | Yes | Azure client id for authentication | |
analytics.azure_client_secret | Yes | Azure client secret for authentication | |
analytics.azure_tenant_id | Yes | Azure tenant id for authentication | |
analytics.dryrun | False | Executes entire flow without actually sending out anything | |
analytics.gameplay_analytics | False | Yes | Toggle whether gameplay analytics is collected |
analytics.gameplay_rpc_analytics | True | Yes | Toggle whether gameplay rpc logging is collected |
analytics.gameplay_tick_analytics | False | Yes | Toggle whether gameplay tick analytics is collected |
analytics.log | False | ||
analytics.performance_analytics | True | Yes | Toggle to turn off server performance collection |
analytics.server_analytics_url | https://gw.facepunch.com/analytics/rust/server |
antihack
Section titled “antihack”| Variable | Default | Saved | What it does |
|---|---|---|---|
antihack.admincheat | True | ||
antihack.build_inside_check | 2 | ||
antihack.build_losradius | 0.01 | ||
antihack.build_losradius_sleepingbag | 0.3 | ||
antihack.build_terraincheck | True | ||
antihack.build_vehiclecheck | True | ||
antihack.check_mount_distance | 1 | ||
antihack.debuglevel | 1 | ||
antihack.enforcementlevel | 1 | ||
antihack.explosive_vehicle_parent_damage_deployables | False | Should explosives parented to vehicles damage deployables | |
antihack.eye_clientframes | 2 | ||
antihack.eye_distance_parented_mounted_forgiveness | 2 | ||
antihack.eye_forgiveness | 0.4 | ||
antihack.eye_history_forgiveness | 0.1 | ||
antihack.eye_history_penalty | 100 | ||
antihack.eye_losradius | 0.158 | ||
antihack.eye_noclip_backtracking | 0.01 | ||
antihack.eye_noclip_cutoff | 0.06 | ||
antihack.eye_noclip_margin | 0.25 | ||
antihack.eye_penalty | 0 | ||
antihack.eye_protection | 4 | ||
antihack.eye_serverframes | 2 | ||
antihack.eye_terraincheck | True | ||
antihack.eye_vehiclecheck | True | ||
antihack.flyhack_extrusion | 2 | ||
antihack.flyhack_forgiveness_horizontal | 1.5 | ||
antihack.flyhack_forgiveness_horizontal_inertia | 10 | ||
antihack.flyhack_forgiveness_vertical | 1 | ||
antihack.flyhack_forgiveness_vertical_inertia | 7 | ||
antihack.flyhack_margin | 0.1 | ||
antihack.flyhack_maxsteps | 15 | ||
antihack.flyhack_penalty | 100 | ||
antihack.flyhack_protection | 3 | ||
antihack.flyhack_reject | True | ||
antihack.flyhack_stepsize | 0.1 | ||
antihack.forceposition | True | ||
antihack.hotbar_network_mode | 0 | ||
antihack.impact_effect_distance_forgiveness | 0.45 | ||
antihack.limbreach | 0.3 | ||
antihack.limbreachgrace | 0.5 | ||
antihack.maxdeltatime | 1 | ||
antihack.maxdesync | 0.8 | ||
antihack.maxviolation | 100 | ||
antihack.melee_backtracking | 0.01 | ||
antihack.melee_clientframes | 2 | ||
antihack.melee_entity_bounds_radius | 0.05 | ||
antihack.melee_forgiveness | 0.5 | ||
antihack.melee_los_entity_realpos | True | ||
antihack.melee_los_entity_realpos_distance | 1.3 | ||
antihack.melee_losforgiveness | 0.2 | ||
antihack.melee_penalty | 0 | ||
antihack.melee_protection | 5 | ||
antihack.melee_serverframes | 2 | ||
antihack.melee_terraincheck | True | ||
antihack.melee_vehiclecheck | True | ||
antihack.mesh_inside_check_distance | 50 | ||
antihack.modelstate | True | ||
antihack.noclip_backtracking | 0.01 | ||
antihack.noclip_margin | 0.16 | ||
antihack.noclip_margin_dismount | 0.22 | ||
antihack.noclip_maxsteps | 15 | ||
antihack.noclip_penalty | 0 | ||
antihack.noclip_protection | 3 | ||
antihack.noclip_reject | True | ||
antihack.noclip_stepsize | 0.1 | ||
antihack.objectplacement | True | ||
antihack.parenthistory | True | ||
antihack.projectile_anglechange | 60 | ||
antihack.projectile_backtracking | 0.01 | ||
antihack.projectile_clientframes | 2 | ||
antihack.projectile_damagedepth | 2 | ||
antihack.projectile_defaultcheck | True | ||
antihack.projectile_deployedcheck | True | ||
antihack.projectile_desync | 1 | ||
antihack.projectile_distance_forgiveness_minimum | 25 | ||
antihack.projectile_forgiveness | 0.5 | ||
antihack.projectile_impactspawndepth | 1 | ||
antihack.projectile_losforgiveness | 0.2 | ||
antihack.projectile_penalty | 0 | ||
antihack.projectile_positionoffset | True | ||
antihack.projectile_protection | 6 | ||
antihack.projectile_serverframes | 2 | ||
antihack.projectile_terraincheck | True | ||
antihack.projectile_trajectory | 2 | ||
antihack.projectile_trajectory_update | 0.02 | ||
antihack.projectile_update_limit | 4 | ||
antihack.projectile_vehiclecheck | True | ||
antihack.projectile_velocitychange | 1.1 | ||
antihack.relaxationpause | 10 | ||
antihack.relaxationrate | 0.1 | ||
antihack.reporting | False | ||
antihack.rpc_timer_forgiveness | 1 | ||
antihack.rpcstallfade | 2.5 | ||
antihack.rpcstallmode | 1 | ||
antihack.rpcstallthreshold | 0.8 | ||
antihack.server_occlusion_admin_bypass | False | ||
antihack.server_occlusion_blocked_grid_threshold | 0 | ||
antihack.server_occlusion_caching | True | ||
antihack.server_occlusion_disable_los | False | ||
antihack.server_occlusion_disable_sleeper_los | False | ||
antihack.server_occlusion_neighbour_threshold | 2 | ||
antihack.server_occlusion_save_grid | True | ||
antihack.server_occlusion_use_neighbour_thresholds | False | ||
antihack.speedhack_forgiveness | 2 | ||
antihack.speedhack_forgiveness_inertia | 10 | ||
antihack.speedhack_penalty | 0 | ||
antihack.speedhack_protection | 3 | ||
antihack.speedhack_reject | True | ||
antihack.speedhack_slopespeed | 10 | ||
antihack.speedhack_water_threshold | 0.4 | ||
antihack.stall_position_restrictions | True | ||
antihack.strict_mount_checks | 1 | ||
antihack.terrain_check_geometry | False | ||
antihack.terrain_kill | True | ||
antihack.terrain_padding | 0.3 | ||
antihack.terrain_penalty | 100 | ||
antihack.terrain_protection | 1 | ||
antihack.terrain_timeslice | 64 | ||
antihack.tick_buffer_noclip_threshold | 2 | ||
antihack.tick_buffer_preventions | True | ||
antihack.tick_buffer_reject_threshold | 3 | ||
antihack.tick_buffer_server_lag_threshold | 0.3 | ||
antihack.tick_distance_forgiveness | 5 | ||
antihack.tick_max_distance | 1.1 | ||
antihack.tick_max_distance_falling | 4 | ||
antihack.tick_max_distance_parented | 3 | ||
antihack.tickhistoryforgiveness | 0.1 | ||
antihack.tickhistorytime | 0.5 | ||
antihack.use_legacy_mesh_inside_check | True | ||
antihack.userlevel | 2 |
| Variable | Default | Saved | What it does |
|---|---|---|---|
app.alarmcooldown | 30 | Cooldown time before alarms can send another notification (in seconds) | |
app.endpoint | https://companion-rust.facepunch.com/api | Base address for the Rust+ companion server API | |
app.listenip | IP address the server listens on for incoming connections; leave empty to bind to all available network interfaces | ||
app.logexceptions | True | When enabled, server-side C# exceptions are written to the server log file; disabling reduces log noise on servers with known non-critical exceptions | |
app.maxconnections | 500 | Maximum number of simultaneous player connections allowed; connections above this limit are rejected with a server full message | |
app.maxconnectionsperip | 10 | Maximum simultaneous connections from the same IP address; prevents a single host from consuming all connection slots | |
app.maxmessagesize | 1048576 | Maximum allowed size in bytes of a single network message; oversized messages are dropped to prevent memory exhaustion attacks | |
app.notifications | True | Enables sending push notifications | |
app.port | 0 | UDP port number the server listens on; default is 28015; must be open in firewall for players to connect | |
app.publicip | Public IP address advertised to the Steam server browser; leave empty to auto-detect; set explicitly if behind NAT | ||
app.queuelimit | 100 | Max number of queued messages - set to 0 to disable message processing | |
app.serverid | |||
app.update | True | Disables updating entirely - emergency use only |
| Variable | Default | Saved | What it does |
|---|---|---|---|
debug.bag_respawn_parenting | True | Whether to parent players immediately on spawning to a boat if the bag is on a boat | |
debug.callbacks | False | When enabled, logs debug information about object callback invocations to the console; useful for tracing event callback chains | |
debug.checkparentingtriggers | True | When enabled, validates that trigger colliders are correctly parented to their entities during physics updates; helps catch mis-parenting bugs | |
debug.checktriggers | False | When enabled, validates trigger collider configurations each physics update to catch incorrectly parented or sized trigger volumes | |
debug.debugclippingchecks | False | Shows debug info for what objects are causing clipping checks to fail. | |
debug.debugdismounts | False | ||
debug.disablecondition | False | Do not damage any items | |
debug.disablelootnavobstaclesindeepsea | True | When true, nav mesh obstacle components on loot containers are disabled in the deep sea zone to improve performance in underwater areas | |
debug.log | True | When enabled, Unity Debug.Log output is written to disk; disabling first logs a final message before suppressing further output | |
debug.overlaykbps | 64 | Max KB per second of debug overlay drawings, such as livestock.drawpens, streamed to each viewer. Changed groups past it wait for the next refresh, nearest first | |
debug.printmissionspeakinfo | False | When enabled, logs mission NPC speech info (speaker, line, trigger) to the console as mission dialogue events fire | |
debug.puzzleresettimemultiplier | 1 | Multiplier applied to all puzzle reset timers; values below 1.0 make puzzles reset faster, above 1.0 slower | |
debug.tutorial_start_cooldown | 60 | Minimum seconds that must pass after a tutorial ends before another one can start; prevents back-to-back tutorial spam |
moderation
Section titled “moderation”| Variable | Default | Saved | What it does |
|---|---|---|---|
moderation.ugc_upload | False | Yes | Toggle whether player created content (signs, photos, paintings…) are uploaded for moderation |
moderation.ugc_upload_debounce | 120 | Seconds content waits before it is uploaded for moderation, saving the same content again restarts the wait | |
moderation.ugc_upload_frequency | 4 | Seconds between checks of the moderation upload queue, at most one upload starts per check | |
moderation.ugc_upload_max_attempts | 5 | Number of attempts at uploading content for moderation before giving up | |
moderation.ugc_upload_max_queue | 1000 | Maximum content waiting to be uploaded for moderation, the oldest is dropped when full | |
moderation.ugc_upload_retry_cooldown | 60 | Seconds to wait before retrying a failed moderation upload | |
moderation.ugc_upload_url | https://api.facepunch.com/ugc/rust/upload |
| Variable | Default | Saved | What it does |
|---|---|---|---|
net.global_network_debug | False | Toggle printing time taken to send all global entities to client when they connect | |
net.global_networked_bases | True | When enabled, base entities are networked to all clients regardless of distance; disabling restricts base updates to players within the normal visibility radius | |
net.limit_global_update_broadcast | True | (default) true = only broadcast to clients with global networking enabled, false = broadcast to every client regardless | |
net.network_group_debug | False | Toggle checking network group bounds whenever an entity changes its network group | |
net.position_lod | 0 | Sends entity positions less often to players further away: every 0.2s past 128m, every 0.4s past 192m. 0 = off, 1 = grid entities, 2 = grid and global entities | |
net.position_lod_players | 0 | Network LOD for player positions. 0 = off, 1 = full rate out to 192m then every 0.4s, 2 = same as entities | |
net.visdebug | False | When enabled, logs network visibility group changes to the server console, showing when entities enter or leave a player visibility radius | |
net.visibilityradiusdeepsea | 10 | Network visibility radius in grid cells used in the deep-sea zone; kept smaller than overworld to limit underwater entity update overhead | |
net.visibilityradiusfaroverride | -1 | Overrides the far network visibility radius in grid cells; -1 = use default; increase to send more distant entity updates to clients | |
net.visibilityradiusnearoverride | -1 | Overrides the near (high-priority) network visibility radius in grid cells; -1 = use default |
| Variable | Default | Saved | What it does |
|---|---|---|---|
nexus.clanclatbatchduration | 1 | Maximum duration in seconds to batch clan chat messages to send to other servers on the nexus | |
nexus.defaultzonecontactradius | 0.33 | Default distance between zones to allow boat travel, if map.contactRadius isn’t set in the nexus (uses normalized coordinates) | |
nexus.endpoint | https://gw.facepunch.com/nexus/ | URL endpoint to use for the Nexus API | |
nexus.hidefullislands | False | Hide islands that we know are full, preventing players from being transferred to them | |
nexus.islandspawndistance | 1.5 | How far away islands should be spawned, as a factor of the map size | |
nexus.loadingtimeout | 900 | Time in seconds to keep players in the loading state before going to sleep | |
nexus.logging | True | When enabled, logs all Nexus zone transfer and communication events to the server console; useful for debugging cross-server player transfers | |
nexus.mapimagescale | 0.5 | Scale of the map to render and upload to the nexus | |
nexus.messagelockduration | 5 | Time in seconds to allow the server to process nexus messages before re-sending (requires restart) | |
nexus.pinginterval | 30 | Time in seconds to wait between server status pings | |
nexus.playermanifestinterval | 30 | Interval in seconds to broadcast the player manifest to other servers on the nexus | |
nexus.protectionduration | 300 | Maximum time in seconds to keep transfer protection enabled on entities | |
nexus.rpctimeoutmultiplier | 1 | Multiplier for nexus RPC timeout durations in case we expect different latencies | |
nexus.secretkey | Shared secret key used to authenticate Nexus inter-server communication; must match across all servers in the same Nexus cluster | ||
nexus.timeoffset | 0 | Time offset in hours from the nexus clock | |
nexus.transferflushtime | 60 | Maximum amount of time in seconds that transfers should be cached before auto-saving | |
nexus.zonecontroller | basic | Name of the zone controller implementation used for this Nexus server (e.g. basic, advanced); controls how players are routed between servers |
| Variable | Default | Saved | What it does |
|---|---|---|---|
ping.auto_refresh_region | True | When enabled, region ping estimates are automatically refreshed in the background to keep server list latency data up to date | |
ping.ping_estimate_logging | False | When enabled, logs ping estimation results to the console; useful for debugging regional latency measurement accuracy | |
ping.ping_estimation | False | When enabled, the ping estimator collects latency samples to regional servers; disable to suppress background ping traffic | |
ping.ping_parallel | False | When enabled, ping estimation sends samples to all servers in parallel for faster results; uses more bandwidth simultaneously | |
ping.ping_refresh_interval | 45 | Interval in minutes between automatic background ping estimation refreshes for server list region latency sorting | |
ping.ping_samples | 5 | Number of ping samples collected per estimation cycle; more samples give a more accurate average latency but take longer to complete |
| Variable | Default | Saved | What it does |
|---|---|---|---|
pool.debug | False | When enabled, logs additional diagnostic information about pool hits, misses, and spills to the console | |
pool.enabled | True | When enabled, this system is globally active; disable to deactivate the system for the current session | |
pool.mode | 2 | When enabled, object pools are pre-allocated at startup to avoid first-use latency; increases startup time but reduces runtime GC stutter | |
pool.prewarm | True | When enabled, object pools are pre-allocated at startup to avoid first-use latency; increases startup time but reduces runtime GC stutter |
profile
Section titled “profile”| Variable | Default | Saved | What it does |
|---|---|---|---|
profile.command_lagspike_threshold | 40 | ||
profile.exportintervals | 1800 | Interval in seconds between automatic exports of server profiler data to disk; lower values provide more frequent snapshots at a higher I/O cost | |
profile.immediatemodeenabled | False | When enabled, the server native profiler runs in immediate mode, capturing every frame rather than sampling; more accurate but higher overhead | |
profile.notifyonmainalloccount | 0 | Main-thread allocation count threshold per tick for profiler notifications; 0 = disabled; helps isolate main-thread GC pressure | |
profile.notifyonmainmemkb | 0 | Main-thread memory usage threshold in kilobytes for profiler notifications; 0 = disabled | |
profile.notifyontotalalloccount | 16000 | Allocation count threshold (per profiler tick) above which the native continuous profiler fires a notification; useful for detecting unexpected allocation spikes | |
profile.notifyontotalmemkb | 12288 | Total managed memory threshold in kilobytes above which the native profiler fires a notification; helps detect memory leaks during long server runs | |
profile.notifyonworkeralloccount | 0 | Worker-thread allocation count threshold per tick for profiler notifications; 0 = disabled; helps detect background task GC pressure | |
profile.notifyonworkermemkb | 0 | Worker-thread memory usage threshold in kilobytes for profiler notifications; 0 = disabled | |
profile.profiling_entities | 0 | 0 = off, 1 = spawn/kill, 2 = spawn/kill per entity, 3 = count every ‘5 min’ | |
profile.profiling_entity_count_interval | 300 | How frequently to count all entities across the server | |
profile.profiling_fixed_invokes | 0 | 0 = off, 1 = stats per frame, 2 = stats per method | |
profile.profiling_invokes | 0 | 0 = off, 1 = stats per frame, 2 = stats per method | |
profile.profiling_lagspikes | False | Record inbound RPC & ConsoleCommands that cause lag spikes | |
profile.profiling_packets | False | Record type of packets inbound/outbound per frame | |
profile.profiling_ping | 0 | Raknet statistics, 0 = off, 2 = per connection | |
profile.profiling_ping_interval | 1 | How often to flush raknet stats per second | |
profile.profiling_ping_per_frame | 30 | ||
profile.profiling_rcon | 0 | 0 = off, 1 = count per frame, 2 = connection attempts, 3 = messages | |
profile.profiling_rcon_message_length | 512 | Clamp the length of logged RCON messages to prevent the profiler from being flooded with large messages | |
profile.profiling_work_queue | False | Record execution time of ObjectWorkQueues per frame | |
profile.quiet | False | Yes | Controls whether perfsnapshot commands emit chat messages |
profile.rcon_lagspike_threshold | 40 | ||
profile.rpc_lagspike_threshold | 40 | ||
profile.runtime_profiling | 0 | Yes | 0 = off, 1 = basic, 2 = everything. This will reset all profiling convars, however they can be modified afterwards |
profile.runtime_profiling_interval | 60 | ||
profile.runtime_profiling_persist | False | Yes | Enable to allow runtime profiling to persist across restarts |
profile.runtime_profiling_pool_flush_interval | 300 | How often to flush pooling stats in seconds | |
profile.runtime_profiling_pooling | 0 | 0 = off, 1 = flush every 5 minutes |
| Variable | Default | Saved | What it does |
|---|---|---|---|
rcon.banduration | 300 | How long in seconds to ban an IP that has exceeded the maximum password failures (default: 300 seconds) | |
rcon.connectioncooldown | 1 | How long (in seconds) before we allow another rcon connection from the same address (default: 1 second) | |
rcon.ip | IP Address to listen for RCON connections | ||
rcon.logfailedattempts | True | Log failed attempts and attempts from banned IP addresses (default: true) | |
rcon.maxconnections | 500 | Total number of allowed connections to RCON server. -1 to disable behaviour. Requires server restart after changes | |
rcon.maxconnectionsperip | 5 | Total number of allowed connections to RCON server, on a single IP. -1 to disable behaviour. Requires server restart after changes | |
rcon.maxpasswordfailures | 5 | How many password failures before banning an RCON client’s IP (default: 5) | |
rcon.permanentbanfailedips | False | Permanently ban IPs that trigger too many failed attempts (default: false) | |
rcon.port | 0 | Port to listen for RCON connections | |
rcon.print | False | If true, RCON commands will be printed in the console | |
rcon.web | True | If set to true, use websocket RCON. If set to false use legacy, source engine RCON. Source engine RCON is DEPRECATED |
| Variable | Default | Saved | What it does |
|---|---|---|---|
relay.cfg_autoreconnect | True | If enabled, Rust Relay will automatically attempt to reconnect when the WebSocket connection drops | |
relay.cfg_encryptpackets | False | Sets whether packets should be encrypted when sent to the Rust Relay server, changing this will STOP the Rust Relay feature (restart with relay.restart) | |
relay.cfg_fakeplayer | False | If enabled, Rust Relay spawns a fake invisible player and only relays packets sent to that player, changing this will STOP the Rust Relay feature (restart with relay.restart) | |
relay.cfg_filtermode | 0 | Sets the Filter Mode for RPC Messages, (0 = Ignore, 1 = AllowAll, 2 = AllowWhitelist) | |
relay.cfg_maxreconnects | 5 | Maximum number of reconnect attempts allowed within the reconnect window before the relay permanently shuts down | |
relay.cfg_reconnectdelay | 5 | Delay (in seconds) between reconnect attempts | |
relay.cfg_reconnectwindow | 30 | The rolling window (in minutes) used to track reconnect attempts | |
relay.cfg_sendconsoledata | True | If enabled, console data will be sent to the relay server | |
relay.cfg_sendvoicedata | False | If enabled, voice data will be sent to the relay server | |
relay.cfg_server_auth_token | Sets the authentication token for the Rust Relay server, changing this will STOP the Rust Relay feature (restart with relay.restart) | ||
relay.cfg_server_url | Sets the URL for the Rust Relay server, changing this will STOP the Rust Relay feature (restart with relay.restart) |
| Variable | Default | Saved | What it does |
|---|---|---|---|
vis.attack | False | ||
vis.damage | False | ||
vis.hitboxes | False | ||
vis.lineofsight | False | ||
vis.protection | False | ||
vis.sense | False | ||
vis.triggers | False | ||
vis.weakspots | False |
More variables
Section titled “More variables”Groups with only a few entries, in one list.
| Variable | Default | Saved | What it does |
|---|---|---|---|
batching.verbose | 0 | Verbosity level for static batching debug output; 0 = off, higher values print more detail about batch operations to the console | |
clothlod.clothloddist | 20 | distance cloth will simulate until | |
commandblock.commands_enabled | False | Can command blocks execute commands | |
commandblock.log_executions | True | Print a log message when a command block is executed | |
commandblock.use_player | False | If enabled, commands from command blocks will run using the last player who set them, allowing for a wider range of commands to be used | |
console.consolehistorysize | 50 | Maximum number of console history entries | |
fps.limit | 240 | Yes | |
gc.enabled | True | When enabled, this system is globally active; disable to deactivate the system for the current session | |
gc.incremental_enabled | True | Read-only: reports whether Unity incremental garbage collection is enabled for this runtime; cannot be changed at runtime | |
gc.incremental_milliseconds | 3 | Time slice in milliseconds allocated to incremental GC per frame; lower values reduce GC stutter but spread collection over more frames | |
hbhfsensor.debugdraw | False | When enabled, broadcasts debug drawing for HBHFSensor visibility checks (eye position, forward, range, per-player LOS rays). | |
networkprofiler.packet_capture_rust_relay | False | Include packets sent to the Rust Relay player in packet captures | |
render.show_building_blocked_server | True | ||
reports.exceptionreportmaxlength | 0 | ||
steam.server_allow_steam_nicknames | True | Yes | |
ticklogging.tick_uploader_lifetime | 60 | ||
unsafe.debugmtlockmaxframes | 5 | How many frames of a stack to emit | |
unsafe.enabledebugmtlock | False | Controls DebugMTLock checks, which help track down thread races. Has minor perf impact, so prefer to keep disabled | |
unsafe.usemultithreadedscripting | False | Controls multithreading access to scripting API - can be fast, but unsafe. Disabling can help with instability |
