fkdr data¶
fkdr gives a script what the mod knows: the game and mode, threat, stats, tags, your party and teams.
fkdr.game() // 'bedwars' | 'skywars' | 'duels' | 'murdermystery' | 'lobby' | null (not on Hypixel)
fkdr.onHypixel()
fkdr.inGame() // a live match, not a pre-game lobby
fkdr.preGame()
fkdr.mode() // 'solo' | 'doubles' | 'trios' | 'squads' | …
fkdr.teamSize()
fkdr.map()
fkdr.ping() // as the HUD shows it
fkdr.pingRaw()
fkdr.packetLoss() // ms the server has been silent, once that passes LossThreshold; else 0
fkdr.jitter() // always -1 (kept so older scripts still load)
fkdr.version()
Threat¶
fkdr.threat.lobby() // 0..100, or -1 when nothing has resolved yet
fkdr.threat.unresolved() // how many players have no stats
fkdr.threat.players() // array, worst first
fkdr.threat.tierOf(score) // 'unknown' | 'low' | 'mid' | 'high' | 'extreme'
fkdr.threat.describe(score) // the phrase /fkdr threat prints
Each entry: .name .uuid .score .tier .colour .stats .tag.
Cheap, but not free: call it on a tick and keep the result.
.score is -1 for a player with no stats, not 0
A nick is not a harmless player, and collapsing the two would say that it is.
Stats¶
fkdr.stats.of('Notch') // a stats object, or null
fkdr.stats.state('Notch') // 'ok' | 'unknown' (not fetched yet) | 'no_data' (a nick)
fkdr.stats.uuidOf('Notch')
fkdr.stats.prewarm('Notch')
of() accepts a name or a 32-character undashed UUID and never blocks: asking starts the lookup and the same call a moment later usually answers. state() is the difference between "ask again" and "stop asking".
A stats object has:
.name .rank .level .star .wins .winstreak .fkdr .wlr .kdr .bblr .swWins .swKdr .swWlr .guildTag .guildName
Tags¶
fkdr.tags.of('Notch') // a tag object, or null
fkdr.tags.set('Notch', 'cheater', 'note') // false if the name cannot be resolved
fkdr.tags.remove('Notch')
fkdr.tags.all() // your own tags
fkdr.tags.labels()
A tag object has .uuid .name .label .display .colour .note .updatedAt .shared .others .badge.
.shared matters: your own tag is something you decided, a shared one is somebody else's accusation and .others says how many people agree. See Tags & lists.
Party and teams¶
fkdr.party.members() // array of names
fkdr.party.size()
fkdr.party.has('Notch')
fkdr.teams.all() // Bed Wars teams; empty outside a live match
fkdr.teams.own() // or null
fkdr.teams.enemies()
A team has .colour .name .letter .label .members .bed .alive .self .threat .tier .unknowns .rushable.
.bed is 'up' | 'gone' | 'eliminated' | 'unknown'. Gone and eliminated are different facts; a team with no bed can still kill you.