部分街机音游部署研究记录。
如果本文内容侵犯到您的权益,请通过 About 页的邮箱与我取得联系以并删除侵权内容。
本文不提供任何“官方”文件下载渠道及链接,实际上这些文件在某种程度上都可直接通过搜索引擎查找到。
本文仅作踩坑记录,大部分操作还请自行摸索。
ALLS 系服务器 - ARTEMiS 配置
原料
- ARTEMiS 源码及其 Python 虚拟环境
- MySQL 兼容的数据库
附:数据库配置
我用的是 MariaDB,MySQL 也是一样的。
便携式配置
如果用安装包装了那就可以跳过。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| $ dir
Directory: D:\mariadb
Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 2023/11/20 18:49 bin d---- 2023/11/20 18:49 include d---- 2023/11/20 18:49 lib d---- 2023/11/20 18:49 man d---- 2023/11/20 18:49 share -a--- 2023/8/17 23:25 17987 COPYING -a--- 2023/8/17 23:25 2104 CREDITS -a--- 2023/8/17 23:25 2721 README.md -a--- 2023/8/17 23:25 85250 THIRDPARTY $ .\bin\mariadb-install-db.exe -p="ARTEMiS" Default data directory is D:\mariadb\data Running bootstrap Creating my.ini file Removing default user Setting root password Creation of the database was successful $ .\bin\mariadbd.exe --console 2023-11-20 18:51:40 0 [Note] Starting MariaDB 11.1.2-MariaDB source revision 9bc25d98209df6810f7a7d5e7dd3ae677a313ab5 as process 22764 2023-11-20 18:51:40 0 [Note] InnoDB: Compressed tables use zlib 1.2.13 2023-11-20 18:51:40 0 [Note] InnoDB: Number of transaction pools: 1 2023-11-20 18:51:40 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions 2023-11-20 18:51:40 0 [Note] InnoDB: Initializing buffer pool, total size = 128.000MiB, chunk size = 2.000MiB 2023-11-20 18:51:40 0 [Note] InnoDB: Completed initialization of buffer pool ......
|
初始化数据库
此处按照 ARTEMiS 文档来。
访问数据库
.\bin\mariadb.exe -u root -p="ARTEMiS"
建表
1 2 3 4 5
| CREATE USER 'aime'@'localhost' IDENTIFIED BY 'ARTEMiS'; CREATE DATABASE aime; GRANT Alter,Create,Delete,Drop,Index,Insert,References,Select,Update ON aime.* TO 'aime'@'localhost'; FLUSH PRIVILEGES; exit;
|
假定从这里开始你的 Python 环境已经搭建好并安装了 requirements.txt
内的依赖(直接安装和使用虚拟环境隔离都可以)。
将 example_config
文件夹复制为 config
并修改 config/core.yaml
。
请将 "HOSTNAME"
自行替换为从 ipconfig
获取的 IP 地址,不可使用 localhost
。
各个端口请不要随意更改(除非你用反代等手段),否则会导致游戏无法正常连接。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| server: listen_address: "HOSTNAME" allow_user_registration: True allow_unregistered_serials: True name: "ARTEMiS" is_develop: True threading: False log_dir: "logs"
title: loglevel: "info" hostname: "HOSTNAME" port: 8080
database: host: "localhost" username: "aime" password: "ARTEMiS" name: "aime" port: 3306 protocol: "mysql" sha2_password: False loglevel: "info" user_table_autoincrement_start: 10000 memcached_host: "localhost"
frontend: enable: False port: 8090 loglevel: "info"
allnet: loglevel: "info" port: 80 allow_online_updates: False update_cfg_folder: ""
billing: port: 8443 ssl_key: "cert/server.key" ssl_cert: "cert/server.pem" signing_key: "cert/billing.key"
aimedb: loglevel: "info" port: 22345 key: "AIMEDB_KEY"
mucha: enable: False hostname: "localhost" loglevel: "info"
|
AIMEDB_KEY
为 Copyright
+ (C)
+ aime 卡发行公司的大写,共 16 个字符。
到此你应该可以正常通过 python index.py
启动服务器了,但是你仍需使用 python read.py
从你想要的游戏中读取数据。
读取游戏数据
读取请参考 ARTEMiS 的文档,这里给出部分游戏的示例。
1 2 3 4
| python read.py --series SDDT --version 7 --binfolder K:\Arcade\SDDT\App --optfolder K:\Arcade\SDDT\Option python read.py --series SDHD --version 13 --binfolder K:\Arcade\SDBT\App --optfolder K:\Arcade\SDBT\Option python read.py --series SDEZ --version 19 --binfolder K:\Arcade\SDEZ\App\Sinmai_Data\StreamingAssets --optfolder K:\Arcade\SDEZ\Option python read.py --series SDFE --version 4 --binfolder K:\Arcade\SDFE\App\WindowsNoEditor\Mercury\Content
|
进行游戏
使用虚拟数据卡进行游戏请设置 segatools.ini
中的 aime.aimePath
指向一个 20 位数字的文本文件(最好不要用记事本),并设置 aime.felicaGen
为 0
。
使用实体卡请参考其他网络教程。
需要联网游戏请设置 segatools.ini
中的 dns.default
为服务器地址(上文 HOSTNAME
对应的 IP 地址)。
各个游戏踩坑记录
音击 / O.N.G.E.K.I.
segatools
安装后游戏下方仍会显示 Credit: 0
,但是其实可以直接开始游戏(GP 是免费购买的)。
中二节奏 / CHUNITHM
分辨率锁定 1920x1080 无法修改。
华卡音舞 / WACCA
分辨率修改:修改 WindowsNoEditor/Mercury/Config/DefaultGameUserSettings.ini
内 resolution
相关项。
启动卡 4105-0
错误代码:修改 WindowsNoEditor/Mercury/Config/DefaultHardware.ini
1 2
| [/Script/Mercury.StartupSettings] bEnableErrorWatcher=false
|
联网后无法进入游戏:修改 WindowsNoEditor/Mercury/Config/DefaultHardware.ini
1 2
| [/Script/Mercury.StartupSettings] IgnoreLogin=true
|
进入 test 页再退出也有可能解决问题。
触摸支持:请看我的这个项目。