这是我的目标 - 采用 ASCII roguelike Angband 并创建一个在线控制台,用户可以在其中玩游戏服务器端。从我的肤浅的角度来看,这似乎应该是可行的——因为有 REPL 控制台可以在线显示多种语言,所以解释语言应该不是问题,对吧?
理想情况下,它就像在服务器上运行游戏并将输出显示到客户端浏览器一样简单。这是可能吗?
对于这类事情,最简单且最酷的解决方案可能是Emscripten。它实际上是一个 LLVM -> JavaScript 翻译器。您可以使用 C 编译器(使用 llvm-gcc 或 Clang)生成 LLVM 字节码,因此这是从 C 到 JavaScript 的一条相当短的路径。
当然,您仍然需要一些 JavaScript“粘合剂”来创建 HTML UI。Emscripten 并没有那么神奇。:)
作为 Angband 开发团队的一员,我当然有兴趣关注您的进展。您可能想要研究的几种不同方法包括