Crédits et licences
Merci à toutes les personnes ci-dessous.
Jeux hébergés
Ces jeux sont servis depuis ce site. Ceux que nous avons modifiés sont listés dans Nos modifications.
Nos jeux
Les jeux créés pour wasmga.me sont sous licence MIT, avec leur code source sur github.com/wasmga-me/games.
Jeux dont vous fournissez les fichiers
DOOM, d’id Software, fonctionne avec votre propre DOOM.WAD ou DOOM1.WAD (l’épisode shareware). Nous ne l’hébergeons pas.
The Legend of Sword and Fairy 98, de Softstar, fonctionne avec votre propre copie de ses fichiers de jeu. Nous ne les hébergeons pas.
Moteurs
| Projet | Son rôle ici | Version | Licence | Source |
|---|---|---|---|---|
| wg pour C | Fait tourner nos jeux écrits en C. | 2cff507 | MIT, police OFL-1.1 | github.com/wasmga-me/wasmgame-wg-c |
| wg pour Rust | Fait tourner nos jeux écrits en Rust. | 786659a | MIT, police OFL-1.1 | github.com/wasmga-me/wasmgame-wg |
| Ruffle | Fait tourner les jeux Flash. Écrit en Rust, compilé en WebAssembly. Servi depuis ce site. | 0.7.1 | MIT ou Apache-2.0 | github.com/ruffle-rs/ruffle |
| js-dos | Fait tourner les jeux DOS dans le navigateur, avec son cœur DOSBox. | 8.5.3 | GPL-2.0 | github.com/caiiiycuk/js-dos |
| DOSBox | L’émulateur DOS intégré à js-dos. | tel que fourni avec js-dos 8.5.3 | GPL-2.0 | dosbox.com |
| doom-wasm | Fait tourner les jeux sur le moteur de DOOM. Chocolate Doom compilé en WebAssembly. | 65e0d3a | GPL-2.0 | github.com/cloudflare/doom-wasm |
| SDLPAL | Fait tourner The Legend of Sword and Fairy. Une réimplémentation open source de son moteur, compilée en WebAssembly. | f6236a0 | GPL-3.0 | github.com/sdlpal/sdlpal |
| Neverball | Fait tourner Neverball. Sa propre version web, compilée en WebAssembly avec gl4es (MIT) pour OpenGL. | 1.7.0-alpha.3 (8288383) | GPL-2.0-or-later | github.com/Neverball/neverball |
| SuperTux | Fait tourner SuperTux. Sa propre version web, compilée en WebAssembly. | 0.7.0-rev.1 (6970d03) | GPL-3.0-or-later | github.com/SuperTux/supertux |
| SuperTuxKart | Fait tourner SuperTuxKart. Construit pour le web, compilé en WebAssembly. | 1.5 (1fb491f) | GPL-3.0-or-later | github.com/supertuxkart/stk-code |
| C-Dogs SDL | Fait tourner C-Dogs SDL. Son propre portage Emscripten, compilé en WebAssembly. | 2.5.0 (d27ca58) | GPL-2.0-or-later | github.com/cxong/cdogs-sdl |
| Brogue CE | Fait tourner Brogue CE. Sa version SDL2, compilée en WebAssembly. | 1.15.1 (1ba4240) | AGPL-3.0 | github.com/tmewett/BrogueCE |
| Taisei Project | Fait tourner Taisei Project. Sa propre version web, compilée en WebAssembly. | f4d3342 | MIT | github.com/taisei-project/taisei |
| Warzone 2100 | Fait tourner Warzone 2100. Sa propre version web issue de la version 4.7.0, compilée en WebAssembly. | 4.7.0 (7d3d8e5) | GPL-2.0-or-later | github.com/Warzone2100/warzone2100 |
| Flare | Fait tourner Flare: Empyrean Campaign. Construit à partir de son propre portage web, compilé en WebAssembly. | 1969bae | GPL-3.0-or-later | github.com/flareteam/flare-engine |
| Endless Sky | Fait tourner Endless Sky. Compilé en WebAssembly, d’après la version web d’Endless Web. | 457d2e5 | GPL-3.0-or-later | github.com/endless-sky/endless-sky |
| Sandspiel | Fait tourner Sandspiel. Sa propre page, avec son cœur en Rust compilé en WebAssembly. | 9936e06 | MIT | github.com/MaxBittker/sandspiel |
| Simon Tatham's Portable Puzzle Collection | Fait tourner Net, Untangle, Loopy, Bridges, Pattern et Light Up. Sa propre interface web, compilée en WebAssembly. | 616da16 | MIT | git.tartarus.org/simon/puzzles |
| Mindustry | Fait tourner Mindustry. Le jeu et son moteur Arc, compilés de Java vers JavaScript avec TeaVM. | v160.7 (17012d6) | GPL-3.0 | github.com/Anuken/Mindustry |
| TeaVM | Compile Mindustry de Java vers JavaScript ; sa bibliothèque de classes Java tourne dans le résultat. | 0.16.0 | Apache-2.0 | github.com/konsoletyper/teavm |
| FreeType | Dessine le texte de Mindustry, compilé en WebAssembly. | 2.14.3 (0a0221a) | FTL | github.com/freetype/freetype |
| SoLoud | Joue le son de Mindustry, compilé en WebAssembly. | eb83070 | zlib | github.com/Anuken/soloud |
| opencc-js | Convertit le texte en chinois simplifié de The Legend of Sword and Fairy en chinois traditionnel. | 1.4.2 | MIT et Apache-2.0 | github.com/nk2028/opencc-js |
| WasmBoy | Fait tourner les jeux Game Boy et Game Boy Color. Écrit en AssemblyScript, compilé en WebAssembly. | 0.7.1 | GPL-3.0-or-later | github.com/torch2424/wasmboy |
| RetroArch | Fait tourner les émulateurs NES, Game Boy Advance, Master System, Game Gear et Arduboy ci-dessous, compilé avec chacun d’eux en WebAssembly. | 1.22.2 | GPL-3.0 | github.com/libretro/RetroArch |
| FCEUmm | Fait tourner les jeux NES. | tel que compilé pour RetroArch 1.22.2 | GPL-2.0 | github.com/libretro/libretro-fceumm |
| mGBA | Fait tourner les jeux Game Boy Advance. | tel que compilé pour RetroArch 1.22.2 | MPL-2.0 | github.com/libretro/mgba |
| Gearsystem | Fait tourner les jeux Master System et Game Gear. | tel que compilé pour RetroArch 1.22.2 | GPL-3.0 | github.com/drhelius/Gearsystem |
| Ardens | Fait tourner les jeux Arduboy. | tel que compilé pour RetroArch 1.22.2 | MIT | github.com/tiberiusbrown/ardens |
| Nostalgist.js | Lance RetroArch dans la page et lui transmet le jeu, les boutons et les sauvegardes. | 0.23.0 | MIT | github.com/arianrhodsandlot/nostalgist |
js-dos est chargé sans modification, dans la version fixée ci-dessus, depuis le CDN jsDelivr, qui reproduit sa version publiée sur npm. Tout le reste est servi depuis ce site : Ruffle et les builds de RetroArch (ceux du buildbot libretro) tels que publiés, le reste avec les modifications ci-dessous. Le panneau Sources de chaque page de jeu donne le lien vers ses fichiers et leur code source.
Nos modifications
| Projet | Ce que nous avons changé | Patch | Original |
|---|---|---|---|
| doom-wasm | Garde et charge l’instantané de Reprendre (une sauvegarde dans l’emplacement 7, que les menus n’affichent pas) | snapshot.diff, script de compilation | github.com/cloudflare/doom-wasm |
| SDLPAL | Garde et charge l’instantané de Reprendre, et reste dans le plein écran de la page | snapshot.diff, fullscreen.js, script de compilation | github.com/sdlpal/sdlpal |
| Neverball | Garde et charge l’instantané de Reprendre, laisse le plein écran à la page et donne à son code audio la vue mémoire que les versions récentes d’Emscripten n’incluent plus | snapshot.diff, fullscreen.diff, neverball.diff, script de compilation | github.com/Neverball/neverball |
| SuperTux | Garde et charge l’instantané de Reprendre, charge ses données depuis la page du jeu, et PhysFS trouve les fichiers à la racine | snapshot.diff, supertux.diff, physfs.diff, script de compilation, github.com/wasmga-me/supertux-wasm | github.com/SuperTux/supertux |
| C-Dogs SDL | Confie les fichiers du joueur à la page du jeu au lieu de son propre stockage dans le navigateur, se réduit sur les petits écrans, laisse le plein écran à la page, ne rouvre plus le son au démarrage (cela plantait), retire les parties en réseau local et la puce musicale de Wolfenstein 3D (sa licence n’autorise pas un site avec publicités), et se compile avec un Emscripten plus récent | cdogs.diff, opl-stub.c, script de compilation | github.com/cxong/cdogs-sdl |
| Brogue CE | Prend sa taille de la page et lui laisse le plein écran, n’a pas d’option Quitter dans le menu principal, écrit chaque tour dans la partie en cours, lit les touches de modification depuis les événements clavier, et donne à la page le score d’une partie à graine aléatoire quand elle se termine | brogue.diff, script de compilation | github.com/tmewett/BrogueCE |
| Anarch | Dessine en 640x400 à 60 images par seconde, confie sa sauvegarde à la page du jeu, tourne avec la souris, laisse la page sauvegarder et charger son état pour Reprendre, attend tant que l’onglet est masqué, laisse les manettes à la page, ouvre aussi la carte avec M, et se compile avec un Emscripten plus récent | anarch.diff, build.sh, script de compilation | gitlab.com/drummyfish/anarch/- |
| Taisei Project | Prend ses fichiers de jeu depuis la page du jeu, en trois téléchargements, et confie les fichiers du joueur à la page au lieu de la base de données du navigateur | taisei.diff, pack.py, script de compilation | github.com/taisei-project/taisei |
| Mindustry | Tourne dans la page grâce à un backend navigateur pour Arc (WebGL, saisie, fichiers, son), prend ses fichiers et ceux du joueur depuis la page du jeu, récupère la musique après le démarrage, laisse le plein écran à la page, et masque ce qu’une page web ne peut pas faire (multijoueur, mods, Quitter) | build.sh, mindustry.diff, arc.diff, backend.diff, github.com/wasmga-me/mindustry-wasm | github.com/Anuken/Mindustry |
| Flare | Prend ses fichiers de jeu et ceux du joueur depuis la page du jeu, attend sur son écran de chargement pendant que la page télécharge les fichiers d’une carte, prend la taille de la page, lui laisse le plein écran et charge les images sans threads | flare.diff, script de compilation | github.com/flareteam/flare-engine |
| Endless Sky | Tourne sans threads, s’adapte à la page du jeu et à son plein écran, et récupère les images quand le jeu les dessine pour la première fois | endless-sky.diff, fullscreen.js, script de compilation, github.com/wasmga-me/endless-sky-wasm | github.com/endless-sky/endless-sky |
| SuperTuxKart | Tourne sans threads dans une page web, attend un circuit encore en cours de téléchargement, et laisse la taille de la fenêtre et le plein écran à la page | stk.diff, script de compilation, github.com/wasmga-me/stk-code-wasm | github.com/supertuxkart/stk-code |
| Sandspiel | Retire la publication et la consultation des créations, ses publicités et ses statistiques, s’adapte à la page du jeu, et laisse la page sauvegarder, charger et mettre en pause le bac à sable | sandspiel.diff, script de compilation | github.com/MaxBittker/sandspiel |
| Simon Tatham's Portable Puzzle Collection | Retire ses menus, ses liens et ses boîtes d’alerte, laisse un doigt servir de souris (un appui long est le clic droit), et laisse la page choisir la taille de chaque casse-tête, le sauvegarder et le charger, et savoir quand il est résolu | puzzles.diff, puzzle.html, script de compilation | puzzles.git;a=tree;hb=616da16f25da428ccda805536209095bd062676e |
| WasmBoy | Quatre corrections d’émulation : POP AF, le registre SC, le mode 3 de STAT et le chargement d’un état sauvegardé deux fois de suite | core-fixes.diff | github.com/torch2424/wasmboy |
| 10seconds | The Kongregate calls are removed (the round froze at 0:01 without them), and the score goes to the site's scoreboard | 10seconds.diff | 10seconds.swf |
| Bump! | A click on the "click to play" screen now dismisses it (it waited for a focus event Ruffle never sends) | bump.diff | bump.swf |
| C-Dogs SDL | The Wolfenstein 3D shareware episode and campaign templates are left out, and the one MP3 sound is re-encoded as Ogg Vorbis | build.sh | github.com/cxong/cdogs-sdl |
| moflegame | The mofle.net highscore and badscore tables are removed, with the Small, Medium and Full buttons | mofle.diff | mofle.swf |
| Pixel Conflict | The id.net sign-in, online saves, achievements and highscores are removed, with the Y8 and id.net logos and links; the three local save slots stay | pixelconflict.diff | PixelConflict.swf |
| SuperTux | The conveyor belt pictures are drawn anew and the death sound is the hurt sound, as their licence (CC BY-NC) doesn't allow this site | supertux.diff, draw.py, script de compilation | github.com/SuperTux/supertux |
| SuperTuxKart | Shrunk with SuperTuxKart's own Android script (textures at most 512 pixels, mono music) and split into parts | build.sh, pack.py | 1.5 |
| Those Walls | The score goes to the site's scoreboard at game over | ld31.diff | ld31.swf |
Illustrations
Le logo de wasmga.me s’appuie sur le logo de WebAssembly de Carlos Baraza, versé dans le domaine public sous CC0.
Votre jeu ici ?
Si vous avez créé un jeu qui se compile en WebAssembly et que vous aimeriez le voir sur wasmga.me, parlez-nous-en.