致谢与许可

感谢以下每一位。

本站托管的游戏

这些游戏由本站提供。我们改动过的游戏列在我们做的修改中。

游戏作者许可证源代码
10secondsEthan KennerlyMITgithub.com/ethankennerly/10seconds
adjustrisDave VanEeCC0-1.0github.com/tbsp/Adjustris
AirakifurrtekGPL-3.0-or-latergithub.com/furrtek/Airaki
AIRPLANZNotImplementedLifeGPL-3.0-onlygithub.com/NotImplementedLife/AIRPLANZ
Alien InvasionFerrantePescaraGPL-3.0-onlygithub.com/NiliusJulius/Alien-Invasion
AnarchMiloslav Číž (drummyfish)CC0-1.0gitlab.com/drummyfish/anarch
BattleTriangle-GammaARCJ137442GPL-3.0github.com/ARCJ137442/BattleTriangle-Gamma
Big2SmallmdsteeleGPL-3.0-or-latergithub.com/mdsteele/big2small
BridgesJames Harvey, Simon TathamMITwww.chiark.greenend.org.uk/~sgtatham/puzzles/
Brogue CEAntony Boucher and Brogue CE maintainers, after Oryx Design Lab's Brogue tilesCC BY-SA 4.0github.com/tmewett/BrogueCE/tree/1ba4240b7a928ddf0ffb772717bf1d433cd63804/bin/assets
Bump!Aaron Steed (st33d)MIT or GPL-3.0github.com/st33d/bump
C-Dogs SDLRonny Wester, Cong Xu and C-Dogs SDL contributorsCC-BY, CC-BY-SA and CC0github.com/cxong/cdogs-sdl
CarazuMartin HoltkampGPL-3.0github.com/mholtkamp/carazu
CastleBoyjlauener and IncrementMITgithub.com/jlauener/CastleBoy
Catacombs of the Damned!James HowardMITgithub.com/jhhoward/Arduboy3D
Concentration RoomDamian YerrickGPL-3.0-or-latergithub.com/pinobatch/croom-nes
CrossConnectquinnpMITgithub.com/QuinnPainter/CrossConnect
Data StormHaroldo O. PinheiroApache-2.0github.com/haroldo-ok/datastorm
DominationGraham Coulby (IonicLimb)MITgithub.com/gcoulby/Domination
Double Action Blaster GuysNovaSquirrelGPL-3.0github.com/NovaSquirrel/DABG
El DuelorosoAdrián JGGPL-3.0github.com/ajgalan/el-dueloroso
EndingAaron Steed (st33d)GPL-2.0github.com/st33d/Ending
Endless SkyEndless Sky contributorsGPL-3.0-or-later, art CC BY-SA, CC BY, CC0 and public domaingithub.com/endless-sky/endless-sky
EntityAsteroidsIain LobbMITgithub.com/iainlobb/EntityAsteroids
Europa rescue!godai / Gniazdo ŚwiatówCC-BY-SA-4.0github.com/godai78/europa
FlareClint Bellanger and Flare contributorsCC-BY-SA-3.0github.com/flareteam/flare-game
FlooderOliver BalfourMITgithub.com/Obalfour/Flooder
Freedoom: Phase 1Freedoom contributorsBSD-3-Clausegithub.com/freedoom/freedoom
Freedoom: Phase 2Freedoom contributorsBSD-3-Clausegithub.com/freedoom/freedoom
GB-WordylbbbbbrGPL-3.0github.com/bbbbbr/gb-wordle
GeometrixAntonioNDGPL-3.0-or-latergithub.com/AntonioND/geometrix
Gigant GolfquinevereGPL-3.0 (code), CC-BY-SA (assets)github.com/quinnyo/gbcompo2023
Gravity Beam: Master GaidenMathew CarrBSD-3-Clausewww.smspower.org/Homebrew/GravityBeamMasterGaiden-SMS
Grub GlideEthan HazelZlibgithub.com/Exetric/GrubGlide
HEXESDania Rifki, music and sound by Kathryn HathawayMIT, CC-BY-4.0 (Squarewave font by Jeti)github.com/EigenlightArts/HEXES
Hollow SeekerOBONOMITgithub.com/obono/ArduboyWorks/tree/master/hollow
Lander1jmimuGPL-3.0-or-latergithub.com/jmimu/lander1
Libbet and the Magic FloorDamian Yerrickzlibgithub.com/pinobatch/libbet
Light UpJames Harvey, Simon TathamMITwww.chiark.greenend.org.uk/~sgtatham/puzzles/
LoopyMike Pinna, Lambros Lambrou, Simon TathamMITwww.chiark.greenend.org.uk/~sgtatham/puzzles/
Lunar LimitPubbyMIT (code and graphics), CC-BY-4.0 (music and sounds by MovieMovies1)github.com/pubby/lunarlimit
Max Pirate Extra BoomLemmy HawkinsMITgithub.com/MWehrstedt/MaxPirateExtra
MicroCityJames HowardGPL-3.0github.com/jhhoward/MicroCity
MindustryAnuke and Mindustry contributorsGPL-3.0github.com/Anuken/Mindustry
moflegameSindre SorhusMITgithub.com/sindresorhus/moflegame
NetSimon TathamMITwww.chiark.greenend.org.uk/~sgtatham/puzzles/
NeverballNeverball contributorsGPL-2.0-or-latergithub.com/Neverball/neverball
PatternSimon TathamMITwww.chiark.greenend.org.uk/~sgtatham/puzzles/
Pixel ConflictAldy Ahsandin (koderstory)GPL-3.0github.com/koderstory-archive/Pixel-Conflict-Game
ReboundDevEdMITgithub.com/DevEd2/ReboundGB
Rhythm LandmartendoMIT and GPL-3.0github.com/sinusoid-studios/rhythm-land
SandspielMax BittkerMITgithub.com/MaxBittker/sandspiel
Shock LobsterDave VanEe (tbsp)zlibgithub.com/tbsp/shock-lobster
Skeleton CrewstaticlinkageMITgithub.com/chrislewisdev/skeleton-crew
Squishy the TurtleCppchriscppMITgithub.com/potatolain/SquishyTheTurtle
SuperTuxSuperTux contributorsCC-BY-SA and GPLgithub.com/SuperTux/supertux
SuperTuxKartSuperTuxKart contributorsCC-BY-SA, CC-BY, CC0 and GPLgithub.com/supertuxkart/stk-code
Sushi NightsZaloMITgithub.com/Zal0/SushiNights
Taisei ProjectTaisei Project contributorsMIT, CC-BY-4.0, OFL-1.1 and Apostrophic Labs freeware (Immortal font)github.com/taisei-project/taisei
The Hat Chooses the WizardCorwin Kuiper and Gwilym KuiperMPL-2.0 (code and art), CC-BY-3.0 (music: Sylvan Waltz by Otto Halmén)github.com/agbrs/agb/tree/master/examples/the-hat-chooses-the-wizard
Those WallsWill HankinsonMITgithub.com/SimianLogic/ld31-thosewalls
ThwaiteDamian YerrickGPL-3.0-or-latergithub.com/pinobatch/thwaite-nes
Tobu Tobu Girl DeluxeTangram GamesMIT (code), CC-BY-4.0 (assets)github.com/SimonLarsen/tobutobugirl-dx
UntangleSimon TathamMITwww.chiark.greenend.org.uk/~sgtatham/puzzles/
Warzone 2100Warzone 2100 ProjectGPL-2.0-or-latergithub.com/Warzone2100/warzone2100
WYRMHOLEquinnpMITgithub.com/QuinnPainter/Wyrmhole
Zork I:地下大帝国Infocom / MicrosoftMITgithub.com/historicalsource/zork1/tree/97b7b3d68c075dd9af7da499c3e9690ada3471fd
Zork II:弗罗博兹的巫师Infocom / MicrosoftMITgithub.com/historicalsource/zork2/tree/3da9661098809788a99cef00f00c865c6c204f96
Zork III:地下城主Infocom / MicrosoftMITgithub.com/historicalsource/zork3/tree/3ec9ed412b5f3cafe65d83c727d07db1fe4a86a8
µCityAntonio Niño DíazGPL-3.0 code, CC BY-SA 4.0 artgithub.com/AntonioND/ucity

我们的游戏

为 wasmga.me 制作的游戏采用 MIT 许可证,源代码在 github.com/wasmga-me/games。

需要你自备文件的游戏

毁灭战士由 id Software 制作,运行在你自己的 DOOM.WAD 或 DOOM1.WAD(共享版章节)上。我们不托管它。

仙剑奇侠传98柔情版由 Softstar 制作,运行在你自己的游戏文件副本上。我们不托管这些文件。

引擎

项目在本站的作用版本许可证源代码
wg(C 版)运行我们用 C 编写的游戏。2cff507MIT,字体 OFL-1.1github.com/wasmga-me/wasmgame-wg-c
wg(Rust 版)运行我们用 Rust 编写的游戏。786659aMIT,字体 OFL-1.1github.com/wasmga-me/wasmgame-wg
Ruffle运行 Flash 游戏。用 Rust 编写,编译为 WebAssembly。由本站提供。0.7.1MIT 或 Apache-2.0github.com/ruffle-rs/ruffle
js-dos在浏览器中运行 DOS 游戏,包括其中的 DOSBox 核心。8.5.3GPL-2.0github.com/caiiiycuk/js-dos
DOSBoxjs-dos 内部的 DOS 模拟器。随 js-dos 8.5.3 附带的版本GPL-2.0dosbox.com
doom-wasm运行毁灭战士引擎的游戏。编译为 WebAssembly 的 Chocolate Doom。65e0d3aGPL-2.0github.com/cloudflare/doom-wasm
SDLPAL运行仙剑奇侠传。它的引擎的开源重新实现,编译为 WebAssembly。f6236a0GPL-3.0github.com/sdlpal/sdlpal
Neverball运行 Neverball。它自己的网页版,编译为 WebAssembly,用 gl4es(MIT)提供 OpenGL。1.7.0-alpha.3 (8288383)GPL-2.0-or-latergithub.com/Neverball/neverball
SuperTux运行 SuperTux。它自己的网页版,编译为 WebAssembly。0.7.0-rev.1 (6970d03)GPL-3.0-or-latergithub.com/SuperTux/supertux
SuperTuxKart运行 SuperTuxKart。为网页构建,编译为 WebAssembly。1.5 (1fb491f)GPL-3.0-or-latergithub.com/supertuxkart/stk-code
C-Dogs SDL运行 C-Dogs SDL。它自己的 Emscripten 移植版,编译为 WebAssembly。2.5.0 (d27ca58)GPL-2.0-or-latergithub.com/cxong/cdogs-sdl
Brogue CE运行 Brogue CE。它的 SDL2 版本,编译为 WebAssembly。1.15.1 (1ba4240)AGPL-3.0github.com/tmewett/BrogueCE
Taisei Project运行 Taisei Project。它自己的网页版,编译为 WebAssembly。f4d3342MITgithub.com/taisei-project/taisei
Warzone 2100运行 Warzone 2100。它自己基于 4.7.0 发行版的网页版,编译为 WebAssembly。4.7.0 (7d3d8e5)GPL-2.0-or-latergithub.com/Warzone2100/warzone2100
Flare运行 Flare: Empyrean Campaign。从它自己的网页移植版构建,编译为 WebAssembly。1969baeGPL-3.0-or-latergithub.com/flareteam/flare-engine
Endless Sky运行 Endless Sky。编译为 WebAssembly,参照了 Endless Web 的网页版。457d2e5GPL-3.0-or-latergithub.com/endless-sky/endless-sky
Sandspiel运行 Sandspiel。它自己的页面,Rust 核心编译为 WebAssembly。9936e06MITgithub.com/MaxBittker/sandspiel
Simon Tatham's Portable Puzzle Collection运行 Net、Untangle、Loopy、Bridges、Pattern和Light Up。其自带的网页前端,编译为 WebAssembly。616da16MITgit.tartarus.org/simon/puzzles
Mindustry运行 Mindustry。游戏和它的 Arc 引擎,用 TeaVM 从 Java 编译为 JavaScript。v160.7 (17012d6)GPL-3.0github.com/Anuken/Mindustry
TeaVM把 Mindustry 从 Java 编译为 JavaScript;它的 Java 类库在编译结果中运行。0.16.0Apache-2.0github.com/konsoletyper/teavm
FreeType绘制 Mindustry 的文字,编译为 WebAssembly。2.14.3 (0a0221a)FTLgithub.com/freetype/freetype
SoLoud播放 Mindustry 的声音,编译为 WebAssembly。eb83070zlibgithub.com/Anuken/soloud
opencc-js把仙剑奇侠传的简体中文文本转换为繁体中文。1.4.2MIT 和 Apache-2.0github.com/nk2028/opencc-js
WasmBoy运行 Game Boy 和 Game Boy Color 游戏。用 AssemblyScript 编写,编译为 WebAssembly。0.7.1GPL-3.0-or-latergithub.com/torch2424/wasmboy
RetroArch运行下方的 NES、Game Boy Advance、Master System、Game Gear 和 Arduboy 模拟器,与它们分别一起编译为 WebAssembly。1.22.2GPL-3.0github.com/libretro/RetroArch
FCEUmm运行 NES 游戏。为 RetroArch 1.22.2 构建的版本GPL-2.0github.com/libretro/libretro-fceumm
mGBA运行 Game Boy Advance 游戏。为 RetroArch 1.22.2 构建的版本MPL-2.0github.com/libretro/mgba
Gearsystem运行 Master System 和 Game Gear 游戏。为 RetroArch 1.22.2 构建的版本GPL-3.0github.com/drhelius/Gearsystem
Ardens运行 Arduboy 游戏。为 RetroArch 1.22.2 构建的版本MITgithub.com/tiberiusbrown/ardens
Nostalgist.js在页面中启动 RetroArch,并把游戏、按键和存档传给它。0.23.0MITgithub.com/arianrhodsandlot/nostalgist

js-dos 以上方固定的版本、不加修改地从 jsDelivr CDN 载入,该 CDN 镜像了它在 npm 上的发行版。其他一切都由本站提供:Ruffle 和 RetroArch 构建(libretro buildbot 自己的构建)保持发行时的原样,其余的带有下方列出的修改。每个游戏页面的来源面板都链接了它的文件及其源代码。

我们做的修改

项目改动内容补丁原版
doom-wasm保存并读取“继续”用的快照(菜单中不显示的第 7 个存档位)snapshot.diff, 构建脚本github.com/cloudflare/doom-wasm
SDLPAL保存并读取“继续”用的快照,并留在页面的全屏之内snapshot.diff, fullscreen.js, 构建脚本github.com/sdlpal/sdlpal
Neverball保存并读取“继续”用的快照,把全屏交给页面,并为音频代码提供较新 Emscripten 版本中缺少的内存视图snapshot.diff, fullscreen.diff, neverball.diff, 构建脚本github.com/Neverball/neverball
SuperTux保存并读取“继续”用的快照,从游戏页面加载数据,并让 PhysFS 在根目录查找文件snapshot.diff, supertux.diff, physfs.diff, 构建脚本, github.com/wasmga-me/supertux-wasmgithub.com/SuperTux/supertux
C-Dogs SDL把玩家的文件交给游戏页面保存,不再存进它自己的浏览器存储,在小屏幕上缩小显示,把全屏交给页面,启动时不再重新打开声音(会崩溃),去掉局域网游戏和 Wolfenstein 3D 音乐芯片(其许可不允许用于有广告的网站),并用较新的 Emscripten 构建cdogs.diff, opl-stub.c, 构建脚本github.com/cxong/cdogs-sdl
Brogue CE从页面获取尺寸并把全屏交给页面,主菜单没有退出,每回合都写入进行中的游戏,从按键事件读取修饰键,并在随机种子的一局结束时把得分告诉页面brogue.diff, 构建脚本github.com/tmewett/BrogueCE
Anarch以 640x400 和每秒 60 帧绘制,把存档交给游戏页面,用鼠标转向,让页面能为“继续”保存和读取状态,标签页隐藏时等待,把手柄交给页面,也能用 M 打开地图,并用较新的 Emscripten 构建anarch.diff, build.sh, 构建脚本gitlab.com/drummyfish/anarch/-
Taisei Project分三次下载,从游戏页面获取游戏文件,并把玩家的文件交给页面,不再存进浏览器的数据库taisei.diff, pack.py, 构建脚本github.com/taisei-project/taisei
Mindustry通过 Arc 的浏览器后端(WebGL、输入、文件、声音)在页面中运行,从游戏页面获取它的文件和玩家的文件,开始后再获取音乐,把全屏交给页面,并隐藏网页做不到的功能(多人游戏、模组、退出)build.sh, mindustry.diff, arc.diff, backend.diff, github.com/wasmga-me/mindustry-wasmgithub.com/Anuken/Mindustry
Flare从游戏页面获取游戏文件和玩家的文件,页面下载地图文件时停在加载画面等待,采用页面的尺寸,把全屏交给页面,并且不用线程加载图片flare.diff, 构建脚本github.com/flareteam/flare-engine
Endless Sky不用线程运行,适应游戏页面及其全屏,并在游戏首次绘制图片时才获取它们endless-sky.diff, fullscreen.js, 构建脚本, github.com/wasmga-me/endless-sky-wasmgithub.com/endless-sky/endless-sky
SuperTuxKart在网页中不用线程运行,等待仍在下载的赛道,并把窗口尺寸和全屏交给页面stk.diff, 构建脚本, github.com/wasmga-me/stk-code-wasmgithub.com/supertuxkart/stk-code
Sandspiel去掉发布和浏览作品、它的广告和统计,适应游戏页面,并让页面能保存、读取和暂停沙盘sandspiel.diff, 构建脚本github.com/MaxBittker/sandspiel
Simon Tatham's Portable Puzzle Collection去掉它的菜单、链接和弹窗,让手指当鼠标用(长按即右键),并让页面为每个谜题选择大小、保存和读取,以及得知何时解开puzzles.diff, puzzle.html, 构建脚本puzzles.git;a=tree;hb=616da16f25da428ccda805536209095bd062676e
WasmBoy四处模拟修正:POP AF、SC 寄存器、STAT 模式 3,以及连续两次读取即时存档core-fixes.diffgithub.com/torch2424/wasmboy
10secondsThe Kongregate calls are removed (the round froze at 0:01 without them), and the score goes to the site's scoreboard10seconds.diff10seconds.swf
Bump!A click on the "click to play" screen now dismisses it (it waited for a focus event Ruffle never sends)bump.diffbump.swf
C-Dogs SDLThe Wolfenstein 3D shareware episode and campaign templates are left out, and the one MP3 sound is re-encoded as Ogg Vorbisbuild.shgithub.com/cxong/cdogs-sdl
moflegameThe mofle.net highscore and badscore tables are removed, with the Small, Medium and Full buttonsmofle.diffmofle.swf
Pixel ConflictThe 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 staypixelconflict.diffPixelConflict.swf
SuperTuxThe conveyor belt pictures are drawn anew and the death sound is the hurt sound, as their licence (CC BY-NC) doesn't allow this sitesupertux.diff, draw.py, 构建脚本github.com/SuperTux/supertux
SuperTuxKartShrunk with SuperTuxKart's own Android script (textures at most 512 pixels, mono music) and split into partsbuild.sh, pack.py1.5
Those WallsThe score goes to the site's scoreboard at game overld31.diffld31.swf

美术

wasmga.me 的标志基于 Carlos Baraza 设计的 WebAssembly 标志,该标志依照 CC0 贡献至公有领域。

想让你的游戏上架?

如果你做了一款能编译为 WebAssembly 的游戏,希望放到 wasmga.me 上,请告诉我们。