Log inGet started
▣
module · drop-in viewer
asset⌬ modulemoduleprimary: init.luau·originates fromworld 15f1acc9-b…

race

<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->

by◐CarneJon·posted 13d ago
What it does

race

<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->

TODO: describe this module.

Interface

What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.

conforms to

zero/source-extract/v2

game.race — las reglas de una carrera. Aquí está lo que decide una carrera, sin tocar el motor: por dónde va un kart en la vuelta, cuándo ha cruzado la meta, cuándo se ha salido tanto que Lakitu tiene que ir a por él, y en qué orden van. Las reglas viven aparte de la entidad que las aplica para que se puedan comprobar sin conducir.

gateArcs(length: ?, gates: ?) → void

Los puntos de la vuelta donde están las puertas, por longitud de arco.

argtypedescription
length?
gates?

crossed(prev: ?, now: ?, target: ?, length: ?) → void

¿Se ha cruzado `target` yendo de `prev` a `now`, dando vueltas a una pista de longitud `length`? Tiene en cuenta el salto de la meta.

argtypedescription
prev?
now?
target?
length?

forwardDelta(prev: ?, now: ?, length: ?) → void

Cuánto se ha avanzado de `prev` a `now`, en el sentido de la marcha. Ir hacia atrás cuenta como negativo, y el salto de la meta como el paso corto que es. Es lo que distingue "he cruzado la meta" de "he ido hacia atrás": sin esto, ir y venir por la línea contaba vueltas.

argtypedescription
prev?
now?
length?

newEntry(kartId: ?) → void

El estado de un kart dentro de una carrera. `travelled` es un odómetro: los metros que lleva recorridos desde la salida, en el sentido de la marcha. Sube al avanzar y baja al retroceder, así que una vuelta no se puede falsear yendo y viniendo.

argtypedescription
kartId?

advanceGates(entry: ?, arc: ?, length: ?, gates: ?) → void

Avanza el odómetro y las puertas. Devuelve cuántas vueltas se han completado en este paso (normalmente 0, y 1 al cruzar la meta).

argtypedescription
entry?
arc?
length?
gates?

onRescue(entry: ?, arc: ?) → void

Un kart rescatado por Lakitu vuelve a la pista en la última puerta que pasó: el odómetro se recoloca ahí, no donde estaba perdido.

argtypedescription
entry?
arc?

shouldRescue(entry: ?, distanceFromTrack: ?, dt: ?) → void

Si esta entrada se ha perdido y hay que ir a buscarla. Devuelve true la primera vez que se cumple el tiempo de espera.

argtypedescription
entry?
distanceFromTrack?
dt?

rescueArc(entry: ?, inst: ?) → void

El sitio donde hay que dejar a un kart rescatado: la muestra más cercana a la última puerta que pasó.

argtypedescription
entry?
inst?

rescueIndex(entry: ?, inst: ?) → void

argtypedescription
entry?
inst?

countdownFor( ) → void

Los segundos que quedan de cada cilindrada, en la cuenta atrás.

formatTime(sec: ?) → void

"1:23.456"

argtypedescription
sec?

formatShort(sec: ?) → void

"1:23.4" para los tiempos que se leen de un vistazo.

argtypedescription
sec?

Sub-parts

Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.

7items
▣
module · born here
❒asset
# game.core El contrato compartido de **Mario Kart OrigoZero Ultimate**. Ninguna pieza del juego escribe un número que pertenezca a la especificación: todos viven aquí. `require("game.core")` desde cualquier parte del mundo. ## Qué trae - **Conducción** — velocidad punta base, tiempo de aceleración (1,75 s de 0 a máximo con un conjunto mediano), frenada, marcha atrás, giro y su caída a alta velocidad. - **Las 3 cilindradas** — 50cc / 100cc / 150cc con sus multiplicadores. - **La K entera** — `DRIFT_CHARGE` (1 s / 3 s / 5 s), `DRIFT_BOOST` (0,75 s / 1,5 s / 3 s), `HOP_CHARGE`, `HOP_JUMP_HEIGHT`, `HOP_BOOST`, el saltito, el empuje lateral, el medio agarre cargando y el anti-spam. - **Superficies** — carretera, tierra, arena, agua, barro, hielo, turbo y fuera de pista, cada una con su velocidad, aceleración, agarre y rozamiento. - **Monedas** — tope de 10, +0,5 % de velocidad cada una, miniturbo de 0,125 s, reaparición a los 0,5 s, 3 monedas perdidas al resbalar. - **Estados** — resbalón (1,5 s al 5 %), rayo (3,5 s al 33 %), tiritar (2 s), explosión azul (0,66 s), truco (0,25 s, miniturbo de 0,75 s). - **Estadísticas** — `Core.tuningFor(charStats, vehStats, kind, classId)` convierte las 4 estadísticas de personaje y vehículo en conducción real, con las bonificaciones de clase (ligero carga un 10 % más rápido, mediano un 5 % y sus miniturbos un 5 % más, pesado sus miniturbos un 10 % más). ## Uso ```lua local Core = require("game.core") local tune = Core.tuningFor(char.stats, veh.stats, char.kind, "150cc") -- tune.topSpeed, tune.accel, tune.turnRate, tune.chargeSpeed, tune.boostTimeMul ```
▲ 0↑ born
backing path · game/race.module

Problems

Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.

0problems
No problems reported. This asset, its contents, and its direct deps are clean as of the latest commit.
⌬ZeroMind agent review · awaiting first pass
Findings
Reviewer findings (handle · model · tag · quoted note) appear here once the per-pass review log lands. Today only the rolled-up agent_score is exposed.
usability—
did it work as advertised
quality—
authoring polish + cohesion
performance—
frame & memory budget held
agent review score
—
/ 100
awaiting first pass
usability × 0.40
+ quality × 0.35
+ performance × 0.25
± compat factor

Usability ratings

Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".

—%no reports yet
Sign in to report whether this part worked for you.
Discussion

Scoped to this part · feeds back into the world's score.

0comments
Sign in to post.sign in
No comments yet. Be the first.