The baked. HUD, for the baked. servers on ReSkate. It shows each player their time played, their role, the cheers counts and the crew's links, in the baked. look: paper, ink and Times New Roman.
It's a ReSkate plugin with two copies. The server's copy takes each player's stats from baked_core in ReSkateManager and passes them on; each player's copy draws them. It needs ReSkate 2.1.2 or later, and baked_core 1.8.0 in ReSkateManager.
What players see
A corner tag, top right, once they're on a baked. server:
baked. ● ▌blunt 151h 12m
The yellow dot means the stats are live from the server. The bar beside their role is the role's colour on the server. Their time counts up as they skate. A player can turn the tag off with baked. corner tag on the Binds page of ReSkate's settings; it has no key until they give it one, and it stays off until they turn it on again.
The panel, which F6 opens and closes, down the right of the screen:
| Section | What it shows |
|---|---|
| time played. | their time on all the servers, then on each one they've played, with here on this one |
| role. | their role on this server, a bar to the next tier and how long until it |
| cheers. | this server's cheers and all the servers' |
| team. | their team and how full it is, if they're on one |
| boards. | their rank on each throwdown board they're on |
| links. | the Discord, the site, the mods and the tapes |
Their role is their tier, or a role you gave them, such as Admin or VIP, with its tag and colour. The bar and the next tier are always their tier's. Players can move F6 to another key or pad combo on the Binds page.
Off a baked. server, the panel shows only the links, and says the stats show on a baked. server.
Setting it up
- ReSkateManager. Update baked_core to 1.8.0, and on its card tick Run console commands and Change server settings. The stats reach the plugin as a console command,
bakedhud, which needs both. - Each server. Add this mod to the server's mods and turn it on. ReSkateManager links its server copy into the server's
Pluginsfolder, andplugin listin the server's console shows it running. - Every player. Add
"baked-baked_core"toplugins.requiredin each server'sReSkateServer.json. A player who doesn't have it gets a card as they join, and GET ALL installs it and joins. ReSkateManager 1.7.1 has no setting for it yet, but it keeps the line when it saves the file.
{
"plugins": {"required": ["baked-baked_core"]}
}
A player's stats come about 10 seconds after they join, with their welcome card, and again when they reach a new tier. Cheers counts come after each cheers.
For other plugins
Any plugin can put a section on the panel. Emit baked.section with an id, a title and up to 8 rows of a label and a value:
reskate.emit("baked.section", {id = "best", title = "Races", rows = {{"best lap", "41.2s"}, {"wins", 3}}})
Emit it again with the same id to change it, and without rows to take it away: reskate.emit("baked.section", {id = "best"}). Titles are 32 characters at most, and labels and values 40. The panel holds 12 sections at most from other plugins.
Changing it
Everything is in plugin/config.lua:
key: the key that opens the panel, before a player changes it.links: the links section, each a name and an address.
The tiers, their tags and colours are baked_core's in ReSkateManager (its config.lua), so they're changed there.
The console command
bakedhud is the server copy's, for ReSkateManager. It runs only from the server's console, never from a player's chat.
| Command | What it does |
|---|---|
bakedhud player <steamid> <base64 json> |
a player's stats, sent to their copy and kept until they leave |
bakedhud cheers <here> <all> |
this server's cheers count and all the servers', sent to everyone |
A player's copy asks the server copy for its stats when it starts, and every 30 seconds until they come. The server copy answers each player once every 10 seconds at most.
In the game, bakedhud demo fills the HUD with made-up stats, to see it anywhere.
Files
| File | What it holds |
|---|---|
plugin/main.lua |
which copy runs which file |
plugin/server.lua |
the server copy: bakedhud, and passing stats on |
plugin/client.lua |
a player's copy: what comes in, the binds, other plugins' sections |
plugin/hud.lua |
the corner tag and the panel |
plugin/text.lua |
Times New Roman text, a glyph at a time |
plugin/glyphs.lua, plugin/atlas/ |
the glyphs, made by tools/atlas.py |
plugin/base64.lua |
reading the stats off the console line |
plugin/config.lua |
the settings |
Testing
tests/run.lua runs both copies, and baked_core's encoding in ReSkateManager, against a stand-in for ReSkate. It needs a Luau runner built from ReSkate's External/luau (Common, Ast, Bytecode, Compiler and VM, with a main that adds loadfile), run from this folder:
luaurun tests/run.lua
It expects ReSkateManager's plugins beside this folder's parent, at ../../ReSkateManagerPlugins/baked_core.
Packaging
python tools/package.py writes dist/baked-baked_core-<version>.zip for Thunderstore, without tests/ and tools/. In the upload form, pick the Plugins category.
Install baked core
You need ReSkate and your own copy of skate. on Steam.
- Open
ReSkateLauncher.exeand go to MODS. - Search for baked core and click install. The launcher also installs anything it depends on.
- Press PLAY. In game, the MODS tab of the ReSkate menu (Insert) turns it on and off.
Or install it by hand: download the .zip and drop it on the launcher window, or unzip it into its own folder in Mods\ beside Skate.exe.
Maps show up in the ReSkate menu's level list. To join a server running a custom map, you need the same map installed. If the game won't load after installing, see known issues.
skatemods doesn't host or review this mod. The download comes straight from Thunderstore. Only install mods you trust, because scripts can run code.