gabrielrcouto/php-terminal-gameboy-emulator

0.1.0 2016-02-25 01:34 UTC

This package is auto-updated.

Last update: 2024-09-12 10:37:05 UTC


README

PHP Terminal GameBoy Emulator

Build Status Software License Packagist

想在服务器的终端上玩Dr. Mario或Pokémon吗?这就是为你准备的!

目录

原因

有些人会问我:"你为什么这么做?"

嗯,一个朋友问我 "PHP能做什么?" 。我想了一想,这个想法就产生了。由于PHP7的性能提升,现在可以模拟一些系统 😄,而且,哈哈,这很有趣!👯

它基于GameBoy JS模拟器

要求

以下PHP版本得到支持

  • PHP 5.6
  • PHP 7
  • HHVM

你需要一个好的终端!我仅在MacOSX和Linux上进行了测试。很抱歉,Windows用户 😞

安装

使用composer

$ composer g require gabrielrcouto/php-terminal-gameboy-emulator:dev-master

使用PHAR

$ wget https://raw.githubusercontent.com/gabrielrcouto/php-terminal-gameboy-emulator/master/bin/php-gameboy.phar
$ chmod +x php-gameboy.phar
$ mv php-gameboy.phar /usr/local/bin/php-gameboy

运行

你的roms将从你运行php-gameboy命令的目录加载。

$ php-gameboy drmario.gb
$ php-gameboy pokemon.gbc

如果你想在本地运行这个模拟器,简单克隆仓库

$ git clone https://github.com/gabrielrcouto/php-terminal-gameboy-emulator.git
$ cd php-terminal-gameboy-emulator
$ composer install -o

对于运行rom,传递你的rom的完整路径,或者将它们放在php-terminal-gameboy-emulator文件夹中

$ bin/php-gameboy pokemon.gbc
$ bin/php-gameboy /full/path/to/your/rom/drmario.gb

控制

_n_________________
|_|_______________|_|
|  ,-------------.  |
| |  .---------.  | |
| |  |         |  | |
| |  |         |  | |
| |  |         |  | |
| |  |         |  | |
| |  `---------'  | |
| `---------------' |
|   _               |
| _|W|_         ,-. |
||A   D|   ,-. "._,"|
|  |S|    "._," Dot |
|    _  _ Comma     |
|   // //           |
|  // //    \\\\\\  |
|  N  M      \\\\\\ ,
|________...______,"
  • 左 = A
  • 上 = W
  • 下 = S
  • 右 = D
  • A = 逗号 (,)
  • B = 点 (.)
  • 选择 = N
  • 开始 = M

测试

你可以使用以下命令来运行最常见的检查,例如php -lphpcs

$ ant check

待办事项

从JS范式转换是一项大量工作,我还需要调整一些东西,比如

  • 代码标准 - PSRs,请!
  • 函数数组 - 在PHP中可能不是最好的方法
  • 像素辅助数组 - 每次转换RGBA都非常CPU密集
  • 类 - 核心太大!
  • 分析和优化 - 使用XHProf查找最密集的函数
  • 保存/恢复 - 我需要保存我的Pokémon!

鸣谢

@gabrielrcouto

法律

这个项目的目的是研究PHP的所有功能。

它没有商业或盈利的意图。

用户有责任在法律允许的范围内使用此代码及其内容。

作者完全反对盗版,并尊重任天堂的所有版权、商标和专利。