progress
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->
progress
<!-- 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/v2game.progress — lo que sobrevive a un reinicio. Vive en DOS sitios, y a propósito: - Lo PERSONAL —qué circuitos has abierto, tus ticks, tus récords y los contadores de tus logros— va en `/source/local/`, la parte del mundo que vive en ESTA máquina. Así el progreso es de quien juega y no de todos: el récord personal solo lo ve quien lo ha hecho, que es lo que pide la especificación. Y cada persona que entre empieza de cero. - El RÉCORD MUNDIAL va en el mundo (`game/records.txt`), porque ese sí tiene que verlo todo el que entre. El archivo del mundo que había antes (`game/progress.txt`) se sigue leyendo UNA vez, como semilla, para que quien ya hubiera jugado no pierda lo suyo; a partir de ahí todo lo personal se escribe en la parte local.
defaults( ) → void
load( ) → void
--!desc El progreso, leído de disco la primera vez y en memoria después.
save( ) → void
--!desc Escribe el progreso en su archivo.
isUnlocked(id: ?) → void
Circuitos
| arg | type | description |
|---|---|---|
| id | ? |
unlock(id: ?) → void
--!desc Abre un circuito. Devuelve si ha cambiado algo.
| arg | type | description |
|---|---|---|
| id | ? |
tick(id: ?) → void
| arg | type | description |
|---|---|---|
| id | ? |
setTick(id: ?, nivel: ?) → void
--!desc Guarda el tick de un circuito, y solo si es mejor que el que había.
| arg | type | description |
|---|---|---|
| id | ? | |
| nivel | ? |
openedCount( ) → void
--!desc Los circuitos abiertos, que es lo que mira el desbloqueo.
best(id: ?) → void
Récords --!desc El récord personal de un circuito, en segundos, o nil.
| arg | type | description |
|---|---|---|
| id | ? |
bestRecord(id: ?) → void
--!desc El récord personal con el conjunto con el que se hizo.
| arg | type | description |
|---|---|---|
| id | ? |
setBest(id: ?, segundos: ?, character: ?, vehicle: ?, classId: ?) → void
--!desc Guarda el récord personal si el tiempo es mejor. Devuelve si lo es.
| arg | type | description |
|---|---|---|
| id | ? | |
| segundos | ? | |
| character | ? | |
| vehicle | ? | |
| classId | ? |
markWin(id: ?, classId: ?) → void
--!desc Apunta que un circuito se ha ganado con una cilindrada.
| arg | type | description |
|---|---|---|
| id | ? | |
| classId | ? |
wonWith(id: ?, classId: ?) → void
--!desc Si un circuito se ha ganado con esa cilindrada.
| arg | type | description |
|---|---|---|
| id | ? | |
| classId | ? |
readRecords( ) → void
Los récords del mundo: `game/records.txt`, un circuito por línea, con el conjunto (personaje, vehículo y cilindrada) con el que se hizo.
worldRecord(id: ?) → void
--!desc El récord mundial de un circuito, con el conjunto con el que se hizo.
| arg | type | description |
|---|---|---|
| id | ? |
worldRecords( ) → void
--!desc Los récords de todos los circuitos, por id.
setWorldRecord(id: ?, segundos: ?, character: ?, vehicle: ?, classId: ?) → void
--!desc Guarda un récord mundial. Devuelve si es nuevo.
| arg | type | description |
|---|---|---|
| id | ? | |
| segundos | ? | |
| character | ? | |
| vehicle | ? | |
| classId | ? |
counters( ) → void
Contadores de los logros
counter(nombre: ?) → void
| arg | type | description |
|---|---|---|
| nombre | ? |
addCounter(nombre: ?, n: ?) → void
--!desc Suma a un contador de logro y lo guarda.
| arg | type | description |
|---|---|---|
| nombre | ? | |
| n | ? |
forget( ) → void
--!desc Olvida lo leído, para volver a leerlo de disco. Solo para pruebas.
Sub-parts
Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.
Showing up to 3 levels deep. Open a part to see what it holds further down.
Problems
Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.
agent_score is exposed.+ 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".
Scoped to this part · feeds back into the world's score.