# Brand prefix — racked.ru
prefix: "&8[&fracked.ru&8]&r"

alerts-enabled: "%prefix% &7alerts enabled"
alerts-disabled: "%prefix% &7alerts disabled"
verbose-enabled: "%prefix% &7verbose enabled"
verbose-disabled: "%prefix% &7verbose disabled"
brands-enabled: "%prefix% &7brands enabled"
brands-disabled: "%prefix% &7brands disabled"
client-brand-format: "%prefix% &e%player% &7joined using &f%brand%"
console-specify-target: "%prefix% &cerror: &7you must specify a target as the console"
reloading: "%prefix% &7reloading config..."
reloaded: "%prefix% &7config has been reloaded"
reload-failed: "%prefix% &cerror: &7failed to reload config"
player-not-found: "%prefix% &cerror: &7player is exempt or offline"
player-not-this-server: "%prefix% &cerror: &7player is not on this server"
sender-not-found: "%prefix% &cerror: &7you cannot be exempt to use this command"
spectate-return: "<click:run_command:/grim stopspectating><hover:show_text:\"/grim stopspectating\">\n%prefix% &7click here to return to previous location\n</hover></click>"
cannot-spectate-return: "%prefix% &cerror: &7you can only do this after spectating a player"
cannot-run-on-self: "%prefix% &cerror: &7you cannot use this command on yourself"
upload-log: "%prefix% &7uploaded debug to: &e%url%"
upload-log-start: "%prefix% &7uploading log... please wait"
upload-log-not-found: "%prefix% &cerror: &7unable to find that log"
upload-log-upload-failure: "%prefix% &cerror: &7something went wrong while uploading this log, see console for more info"
disconnect:
    timeout: "<lang:disconnect.timeout>"
    closed: "<lang:disconnect.closed>"
    error: "<red>an error occurred whilst processing packets. please contact the administrators."
    blacklisted-forge: "<red>your forge version is blacklisted due to inbuilt reach hacks.<newline><white>versions affected: 1.18.2-1.19.3<newline><newline><red>please see https://github.com/MinecraftForge/MinecraftForge/issues/9309."
run-as-player: "%prefix% &cerror: &7this command can only be used by players"
run-as-player-or-console: "%prefix% &cerror: &7this command can only be used by players or the console"
webhook-not-enabled: "discord webhooks are not enabled"
webhook-test-message: "test message"
webhook-test-succeeded: "discord webhook test succeeded"
webhook-test-failed: "discord webhook test failed"

# Valid placeholders:
# %prefix%
# %player%
# %check_name%
# %description%
# %experimental%
# %vl% - violations
# %verbose% - extra information from the check such as offsets, not all checks will add information
alerts-format: "%prefix% &e%player% &cflagged &f%check_name%%experimental% &7(x&c%vl%&7) &7%verbose%"
alerts-format-proxy: "%prefix% &7[&cproxy&7] &e%player% &cflagged &f%check_name%%experimental% &7(x&c%vl%&7) &7%verbose%"
experimental-symbol: "*"

profile:
    - "&8------------------------------------"
    - "%prefix% &7profile for &e%player%"
    - "&7ping: &f%ping%"
    - "&7version: &f%version%"
    - "&7client brand: &f%brand%"
    - "&7horizontal sensitivity: &f%h_sensitivity%%"
    - "&7vertical sensitivity: &f%v_sensitivity%%"
    - "&7fastmath enabled: &f%fast_math%"
    - "&8------------------------------------"
help:
    - "&8------------------------------------"
    - "&e/grim alerts &8- &7toggle alerts"
    - "&e/grim brands &8- &7toggle brands"
    - "&e/grim profile <player> &8- &7view player info"
    - "&e/grim help &8- &7view this help message"
    - "&e/grim debug <player> &8- &7developer prediction output"
    - "&e/grim perf &8- &7developer ms/prediction"
    - "&e/grim reload &8- &7reloads the config"
    - "&e/grim spectate <player> &8- &7spectate a player"
    - "&e/grim verbose &8- &7shows every flag to you, without buffers"
    - "&e/grim log [0-255] &8- &7uploads a debug log for prediction flags"
    - "&e/grim history <player> &8- &7session list (newest first)"
    - "&e/grim history <player> page <N> &8- &7jump to page N of the session list"
    - "&e/grim history <player> session <N|latest> [-d] [-v] &8- &7session detail (most recent violations first)"
    - "&e/grim history <player> session <N|latest> page <N> [-d] [-v] &8- &7session detail, violation page N"
    - "&8------------------------------------"

# === /grim history ===
# Session-based history UI. All lines below are fully configurable; placeholders
# documented at each key. Hover-text on session and violation lines is built by
# the renderer from the raw data (verbose, check breakdowns) and doesn't need a
# template — but you can add <hover:show_text:'...'> to any line below to layer
# additional tooltips on top.

grim-history-load-failure: "%prefix% &cerror: &7history subsystem failed to load. check server console for errors"
grim-history-disabled: "%prefix% &cerror: &7history subsystem is disabled"
grim-history-failed: "%prefix% &cerror: &7failed to load history: &7%error%"
grim-history-unknown-player: "%prefix% &cerror: &7unknown player: &e%player%"
grim-history-no-sessions: "%prefix% &7no session history for &e%player%"
grim-history-session-not-found: "%prefix% &cerror: &7session &e%ordinal%&7 not found for &e%player%"

# Session list — valid placeholders: %prefix% %player% %page% %max_pages%
grim-history-header: "%prefix% &7showing session history for &e%player% &8[&f%page%&7/&f%max_pages%&8]"
# Single session summary line — valid placeholders:
#   %prefix% %player% %ordinal% %grim_version% %server_name%
#   %client_version% %client_brand% %duration% %timeago%
#   %violations% %unique_checks% %crashed_marker%
# %crashed_marker% expands to grim-history-crashed-marker for sessions
# whose connection went away without a graceful close (server crash,
# kill -9, channel RST that didn't fire UserDisconnectEvent). Empty
# string for ongoing or gracefully-closed sessions.
grim-history-session: "%prefix% &8[&f%grim_version%&8] &8[&f%server_name%&8] &8[&f%client_version%&8] &7session &f%ordinal%&7 duration &f%duration%&7 with &c%violations%&7 violations &8[&c%unique_checks%&8]%crashed_marker% &8(&7%timeago% ago&8)"

# Inline marker substituted into %crashed_marker% on session lines whose
# closed_at == last_activity (i.e. stamped by the next-boot crash sweep
# rather than the disconnect path). Includes a leading space so the
# marker reads naturally when present and disappears when empty.
grim-history-crashed-marker: " &8(&ccrashed&8)"

# Session detail — valid placeholders:
#   %prefix% %player% %ordinal% %grim_version% %server_name%
#   %client_version% %client_brand% %duration% %timeago%
#   %violations% %unique_checks% %bucket_size%
grim-history-detail-header: "%prefix% &7showing &e%player%&7's session &f%ordinal%&7 details:"
grim-history-detail-meta1: "%prefix% &7grim: &f%grim_version%&7, server: &f%server_name%&7, duration: &f%duration%&7, date: &7%timeago% ago"
grim-history-detail-meta2: "%prefix% &7client: &f%client_version%&7, brand: &f%client_brand%"
grim-history-detail-violations-header: "%prefix% &7violations: &8(%violations% total, %unique_checks% unique)"
grim-history-detail-empty: "%prefix% &7- (none)"
# A grouped row (default) — valid placeholders: %prefix% %offset% %checks_list%
#   %checks_list% is built by joining grim-history-check-count entries with ", "
grim-history-detail-group: "%prefix% &7- %checks_list% &8(&f%offset%&8)"
# A single raw violation row (--detailed) — valid placeholders:
#   %prefix% %offset% %check% %vl% %verbose%
grim-history-detail-entry: "%prefix% &7- &f%check% &8(&f%offset%&8)&7 %verbose%"
# Inner format for each check in a group's %checks_list% — valid placeholders: %check_name% %count%
grim-history-check-count: "&f%check_name%&7 x&c%count%"

# Schema markers — see header comment in config.yml.
config-flavor: V2
config-version: 1
