Trashure Island · Méthodologie
Comment une partie devient une donnée
Trashure Island enregistre comment des joueurs pilotent : ce qu'ils voient, ce qu'ils décident. Voici le chemin exact de ces données, le code qui les traite et ce qu'elles valent.
Exploratoire Enregistrement actif depuis le 30 octobre 2026. Corpus en construction, publication prévue en 2027.
- images du pilote
- 10 / s
- observations du monde
- 5 / s
- par envoi au serveur
- 15 s
- par partie complète
- 255 ko
01 Le plan
Chaque pièce est une étape, chaque porte un passage possible. Sous chaque nom, le code qui fait le travail.
01 Le jeu
Le joueur pilote trois minutes. À chaque image, l'enregistreur regarde ce qui a été pressé et ce que le bateau a reçu.
gameLoop()trashure-fury.htmlappelle l'enregistreur après chaque déplacement_runRec.tick()trashure-fury.html10 images et 5 observations par seconde, à pas fixe
02 Le choix
Une case au menu, séparée du consentement obligatoire. Elle revient cochée à chaque chargement, pour qu'un joueur en borne ne décide pas pour le suivant.
#research-inputtrashure-fury.htmllue une fois, au début de la partie
03 L'anonymisation
Chaque partie reçoit un identifiant au hasard, qui ne sert qu'une fois. Le nom, l'email et le score ne sont pas copiés dans l'enregistrement : le classement public affiche le score à côté d'un nom.
newRunId()trashure-fury.htmlidentifiant aléatoire, heure arrondieflush()trashure-fury.htmlemballe une tranche de 15 secondesti_run_pendinglocalStoragefile d'attente sur l'appareil, 3 Mo au plus
04 Les contacts
Les emails et les scores vivent dans une autre pièce du serveur. Le classement public se lit ici, jamais dans les trajectoires.
onRequest()party/main.tsreçoit consentements et scores?action=adminparty/main.tsaccès protégé par jeton
05 Les trajectoires
Le serveur vérifie la forme de chaque tranche, retire tout champ inconnu et arrondit l'heure de réception. Renvoyer une tranche l'écrase : une nouvelle tentative ne crée pas de doublon.
validateRunChunk()party/main.tsrefuse ce qui n'a pas la bonne formeonRunsRequest()party/main.tsstocke dans une pièce dédiéeDO_JURISDICTIONparty/wrangler.jsoncstockage limité à l'UE
06 Le corpus Prévu 2027
L'export et le schéma existent déjà. La publication du corpus est prévue pour 2027.
export_runs.pyscripts/regroupe les tranches, une partie par fichierRUNS_SCHEMA.mddocs/décrit chaque champ
07 L'analyse Prévu 2027
Comparer les décisions humaines à celles d'un autopilote, sur les mêmes situations rejouées. Rien de tel n'a encore été fait : c'est prévu pour 2027.
02 Ce qu’une partie enregistre
Une observation, c’est ce que le joueur a devant lui. Une action, c’est ce qu’il décide. Le corpus associe les deux, sur toute la partie.
Le pilote
10 fois par seconde
Position, cap, santé, turbo, niveau, plastique ramassé, commandes voulues et reçues, position du joystick.
Le monde
5 fois par seconde
Position et état de chaque acteur mobile : baleine, pirates, autres bateaux.
Les événements
quand ils arrivent
Plastique qui apparaît ou disparaît, mines, bombes et leur point d'impact, améliorations, changement de manette.
Une image, lue en clair
- t
- 0,10 s
- temps de jeu
- x, z
- 0,3 · −118,6
- position sur la carte
- cap
- 0,190 rad
- direction du bateau
- voulu
- avant
- ce que le joueur presse
- reçu
- rien
- le moteur n'a pas encore démarré
Extrait d’une partie de test. Le schéma complet
03 Ce que ces données disent
Elles montrent
- Quelle cible un joueur choisit, et dans quel ordre
- À quelle distance il commence à éviter une menace
- Quand il hésite ou change de cap
- Comment ses choix évoluent quand le chrono tourne
Elles ne montrent pas
- Comment se conduit un vrai bateauphysique de jeu : virage constant, pas d’inertie
- Ce que ferait un autopilotel’Hydronaute du jeu suit un parcours scripté
- Ce que décide le public en généralles joueurs ne forment pas un échantillon représentatif
- Les premières secondes d’une partieelles montrent surtout quelqu’un qui découvre les commandes
Ces données complètent les essais sur l’eau : elles ne suffisent pas, seules, à entraîner ou valider un système autonome.
04 Vérification
Cadence
1 802 / 1 800
Images enregistrées sur une partie de test de trois minutes, contre 1 800 attendues. 901 observations pour 900.
Rapport et enregistrement
2,42 km · 2,41 km
La distance affichée au joueur, recalculée depuis l'enregistrement brut. Coups reçus : 5 et 5. Naufrages : 0 et 0.
Case décochée
0 tranche
Une partie complète jouée sans partage : rien sur le serveur, rien en attente.
Partie réelle
30 oct. 2026
Première partie en conditions réelles : une tranche toutes les 15 secondes jusqu’à la fin, aucune erreur serveur observée.
Ces mesures montrent que l’enregistreur fait ce qu’il annonce. Elles ne disent rien de ce que le corpus vaudra pour la recherche.
Le code et ses tests sont publics : github.com/Biutopic/Trashure-Island