Skip to main content
Retour aux billets
Oct. 20267 min de lecture

J'ai commencé un MMO le 9 octobre. La fonction du hackathon, c'est la porte : un clic et vous êtes dans le monde.

Orvandel est un MMORPG original dans le navigateur : 60 niveaux, quatre nations, dix classes, cinq donjons et un raid interfactions, sur Cloudflare Workers. Pour Build With AI: Basics, j'ai bâti Wake now, un clic de l'écran titre jusque dans le monde avec un héros prêt, sans compte et rien à installer. Keep this hero transforme l'invité en vrai compte avec le même personnage.

Build With AIDevpostGame developmentMMORPGThree.jsCloudflare WorkersClaude CodeHackathon
J'ai écrit ce billet pour Build With AI: Basics 2026 sur Devpost (octobre 2026), et j'ai bâti la fonction Wake now d'Orvandel pour la même soumission. Le jeu est en ligne sur play.jonathansolvesproblems.com et gratuit pendant la bêta; il faut un navigateur d'ordinateur avec WebGL 2. Le wiki, sur play.jonathansolvesproblems.com/wiki, couvre les classes, les nations et l'histoire.
La revendication en une phrase : Wake now amène un inconnu de l'écran titre au contrôle d'un héros dans le monde en 7,0 à 10,5 secondes, contre 12,1 secondes pour l'Enter World d'un compte normal, sans créer de compte. Ces temps sont les miens, mesurés dans un navigateur sans interface sur mes propres machines, pas corrigés par quelqu'un d'autre, et le jeu n'a pas encore de chiffres de joueurs pour montrer qu'une porte plus courte retient qui que ce soit.
L'écran titre d'Orvandel : le nom en or sur un paysage de nuit peint avec une lune fissurée, Sign in et New account à gauche, et le bouton Wake now avec sa case 16+ au centre.
L'écran titre. On coche la case sous Wake now, on appuie, et on est dans le monde.

La plupart de ces jeux demandent beaucoup avant qu'on joue

Les jeux de rôle en ligne demandent habituellement un gros téléchargement, un lanceur, un compte, un créateur de personnage et parfois un abonnement avant qu'on voie quoi que ce soit, et beaucoup de gens abandonnent avant même de voir le monde. Jusqu'à ce hackathon, Orvandel avait le même mur : un visiteur devait créer un compte, garder un code de récupération et bâtir un personnage d'abord. Wake now ne change que la porte. On coche une case, on appuie sur le bouton, et quelques instants plus tard on ouvre les yeux à Lanternfield avec un Vanguard humain prêt, debout dans un endroit qui vaut le coup d'œil et capable de se battre. Si le héros nous plaît, Keep this hero demande un nom et un mot de passe et nous le donne, le même personnage sans rien perdre.

Un premier combat dans le camp de départ : le héros face à un loup dans un cercle d'avertissement blanc tracé au sol, entre des lampadaires et des arbres d'automne, avec la barre de capacités et le texte de quête en bas.
Le premier combat. Les grosses attaques sont marquées au sol avant de frapper, alors même la première créature demande un pas de côté.

Le vrai jeu, pas une démo

Le combat consiste à lire l'ennemi. Les grosses attaques sont annoncées au sol par des formes que le serveur vérifie quand le remplissage se termine, les barres d'incantation ennemies disent si un sort peut être interrompu, et chaque classe a un rythme où un geste prépare le suivant. Il y a quatre nations, chacune avec deux peuples et sa propre version de la nuit où la lune s'est brisée, et dix classes, chacune avec une capacité signature apprise au niveau 30 : un Shardcaller trace des constellations avec de la lumière, un Gloamhunter se balance sur une flèche à filin, un Hexweaver rembobine une cible.

Le créateur de personnage montrant un Kitsar, un guerrier renard debout en armure de cuir, sur une scène sous la lune, avec la liste des nations et des peuples à gauche et la description du Wildmark Compact à droite.
Huit peuples avec leur propre corps. Un Kitsar du Wildmark Compact dans le créateur de personnage.
Un Shardcaller dans les Proving Grounds parmi des arches de pierre, un rayon de lumière s'élevant de la constellation qu'il a tracée, avec la barre de capacités à douze cases en dessous.
Une signature de classe : les Constellations du Shardcaller, tracées avec de la lumière.
Khar Varos la nuit : des murailles et des tours pâles éclairées par des lanternes suspendues, avec des braises lumineuses qui flottent au-dessus du sol sombre.
Khar Varos, capitale de l'Embered Throne, la nuit.
La lune brisée Vael, sombre et fissurée, suspendue dans un ciel bleu vif au-dessus de palmiers, de ruines blanches et d'une plage des Saltglass Isles.
Vael, la lune qui s'est fissurée il y a mille ans, au-dessus des Saltglass Isles. Elle passe par huit phases toutes les deux heures de temps réel.

Cinq donjons et un raid, sans jamais attendre un groupe

Chaque nation garde un donjon, et un cinquième est celui que toutes les nations craignent. Le Group Finder forme un groupe, et s'il manque un soigneur ou un tank, des compagnons prennent les places vides, alors un petit groupe peut quand même les faire. Chaque boss a son propre combat : des attaques à lire, des incantations à arrêter, et des moments où tout le groupe doit bouger d'un bloc. Au niveau 60, les joueurs de toutes les nations se retrouvent enfin du même côté, dans un raid contre ce qui attend à la fin de l'histoire.

Un groupe dans l'Unrung Chapel : un Pyreborn et des compagnons qui combattent entre des piliers de pierre dans une lumière bleue, avec les cadres du groupe à gauche et la carte du donjon dans le coin.
Un Pyreborn et des compagnons dans l'Unrung Chapel, le donjon que toutes les nations craignent.
Le raid interfactions au niveau 60 : un groupe de raid complet réparti sur un sol strié d'avertissements, des pointes de cristal qui s'élèvent autour du boss, et les cadres du raid sur le côté gauche.
Le raid au niveau 60, où toutes les nations se battent du même côté.

Planifier pour dépenser moins de jetons

Le hackathon exigeait le Devpost Learn Skill Pack, et les règles demandaient un nouveau projet bâti pendant la période de soumission. Le premier commit d'Orvandel date du 9 octobre, dans cette période; le jeu de base est antérieur à l'installation du skill pack, et Wake now est la partie planifiée en passant par ses étapes de portée, de PRD et de spécification. Mon objectif personnel était d'obtenir un travail de qualité de l'IA tout en dépensant moins de jetons sur une base de code de cette taille. Une seule passe de cartographie en lecture seule d'environ 137 k jetons a donné à l'agent de construction les points d'entrée exacts. La construction a pris environ 451 k jetons pour trois tranches (base de données, les deux serveurs, client et tests), la vérification de chaque tranche passant avant la suivante. Les passes non planifiées plus tôt dans le projet coûtaient de 300 k à 800 k jetons chacune, alors environ 150 k par tranche, c'est moins cher, mais la passe de cartographie compte aussi : environ 588 k pour une fonction qui touche toute la pile.

Ce qui n'est pas revendiqué

Chaque chiffre de ce billet est le mien. Les temps de Wake now viennent d'un navigateur sans interface sur mes propres machines, et les nombres de jetons de mes propres sessions, alors aucun n'est corrigé par quelqu'un d'autre. Le jeu est en bêta et gratuit, et je n'ai pas encore de chiffres de joueurs pour montrer qu'une porte plus courte retient les gens. Il faut un navigateur d'ordinateur avec WebGL 2; les téléphones ne sont pas pris en charge. Les invités ne peuvent pas entrer dans les donjons, le raid ou les Proving Grounds, et sont supprimés après 24 heures d'inactivité. Une partie de l'art est générée par IA (les modèles de héros jouables, les boss et l'art peint principal), et chaque élément tiers ou généré est crédité dans le wiki.

Projet associé

Orvandel: an original browser MMORPG under a broken moon, where one click on Wake now puts you in the world as a ready hero with no account, download or form

Voir le projet