電子趣味の部屋

電子系のガジェットやアプリ開発等の趣味の話題を書いてます

パルワールドの専用サーバ構築手順 (Ubuntu22.04)


Ubuntu22.04の環境でのパルワールドの専用サーバーの構築方法です。
ちなみにサーバはZX01 Plusで実行してます。

SteamCMDのインストール

sudo権限のあるユーザでログインして操作

sudo add-apt-repository multiverse; sudo dpkg --add-architecture i386; sudo apt update
sudo apt install steamcmd

Steamのユーザ作成

sudo useradd -m steam
sudo passwd steam

専用サーバーのダウンロード

steamユーザでログインして操作

cd /home/steam
steamcmd +login anonymous +app_update 2394010 validate +quit

専用サーバーの実行

steamユーザでログインして操作

cd ~/Steam/steamapps/common/PalServer
./PalServer.sh

Ctrl+Cで停止

デーモン登録・自動起動

sudo権限のあるユーザでログインして操作
pal.serviceファイル作成

sudo vi /etc/systemd/system/pal.service

内容

[Unit]
Description=launch Pal World server
After=network-online.target

[Service]
User=steam
WorkingDirectory=/home/steam
ExecStart=/bin/bash PalStart.sh
Restart=always
TimeoutStartSec=180

[Install]
WantedBy = multi-user.target

デーモン再起動

sudo systemctl daemon-reload

自動起動設定

sudo systemctl enable pal

バージョンアップ時の手順

サーバ停止(sudo権限のあるユーザで実行)

sudo systemctl stop pal

バージョンアップ(steamユーザで実行)

cd /home/steam
steamcmd +login anonymous +app_update 2394010 validate +quit

サーバ起動(sudo権限のあるユーザで実行)

sudo systemctl start pal

AMD Ryzen 7 8845HS搭載のGMKtec Nucbox K8

サーバ用途ではなくデスクトップ環境で汎用的に使用していたLinuxメインPCが突然電源が入らなくなってしまいました。
代替環境をIntel N100のPCで探してたところ、ちょうどAliexpressのセールの時期でRyzen5700の機種がRAM,SSD無しのベアボーンで3万円ほどであったのでこちらにしようと思ってたのに、結局最新のAMD Ryzen 7 8845HSの機種にしてしまいました。

購入した機種はGMKtec Nucbox K8です。
RAM,SSD無しのベアボーンでセール価格+クーポンで57,000円ほどでした。

まだ日本Amazon等では販売がありませんが、AMD Ryzen 7 7840HSの GMKtec Nucbox K6 はありました。
(2024/04/10)Amazonに追加されました

Ryzen 7 8845HSRyzen 7 7840HSは共にZen 4+RDNA3(Radeon 780M)で同じコアになってます。クロック数もTDPも同じです。
違いはAIエンジンのAMD Ryzen AIの性能で、7840HSは10TOPS、8845HSは16TOPSと1.6倍になってます。

国内のショップではまだ見ないので技適が不安でしたが、箱に技適マークがありました。

M.2SSDのスロットが2個あり手元に1TBのSSDが2枚余ってるので、WindowsとUbuntuの両方をインストールしようと思ってます。

今回の目的のOSはUbuntuですが、もうすぐ24.04のリリースが控えてるため、それを待ってインストールすることにします。
まず、とりあえずWindows環境でいろいろ試してみました。

使用しているWifiコントローラがMediatek MT7922 (RZ616) で、MediatekのコントローラはUbuntuでのサポートが遅れがちで色々調べても新しめのコントローラに対応しているかわからないので、Ubuntu22.04の時点で対応してそうなIntel AX210のものに交換しました。
(Windowsのドライバ入手先)

はじめは高負荷時はちょっとうるさいかなと思いましたが、BIOSの設定で動作モードを選択できました。
Quiet,Balance,Performanceが選択できるのでQuietにしてみたところ、高負荷時でも気にならないくらいになりました。
ちょうど前に購入したゲーミングノート(ASUS TUF Gaming A15)と同じような感じです。
音は小さいですが、アイドル時でも無音にはならずにファンが常に回転してる音が聞こえます。

3DMarkのTime Spyを実行したところ、Performanceが約3300、Balanceが約3200、Quietが約3100と思ったより差が少ないため、Quietで使用することにしました。

BIOSの設定が割と自由でVRAMに16GBまで割り当てることができます。
Ryzen系の機種、特にメーカー製は2GBとか4GBとかまでしか設定できないことが多いため、この点は助かります。

消費電力はアイドル時15W前後、Web等の通常使用時30W前後、ベンチマークや3Dゲームで60W台まで上がりました。
APUの型番の末尾がUのシリーズとは違いそこそこ消費電力はありますが、特に省電力を売りにしていない普通のノートPCと同程度です。

元の環境を代替する目的以上の性能になってしまいましたが、RyzenAI対応でUbuntu環境でもできることの幅が広がったので、色々と試してみようと思います。

YAMAHA MU500

色々と部屋を整理してた時にXG音源用に持っていたYAMAHA MU2000を手放してしまいました。
思ったより相場が上昇していて3万円近い価格で売却できました。
XG音源を使いたいときはQY70で良いと思ったのですが、USBで直接PCに接続できないことが面倒と感じてしまいました。
そこでUSB接続できてMU2000より小型のYAMAHA MU500を入手してしまいました。フリマで9000円ほどでした。

元々聞き専なので、フロントパネルに色々ボタンがあっても使うことはなかったので、MU500でも特に不便はしてないし、高さが小さくなったことで物置の隙間に置いといて使いたいときだけ取り出してUSBでPCに接続して使う方法では便利になりました。

MU500はあまり人気がないせいか中古では比較的安く入手でき、YAMAHAのハードウェア音源では最後の製品で比較的長く販売されてたもので、割と美品も多いと思います。
USBにも対応しているので、MIDIファイルを実機で再生して楽しむ程度ならば手軽でお勧めできる機種だと思います。

MU500
最大同時発音数:64
音色数:1396
ドラムセット:58
エフェクト:リバーブ18タイプ、コーラス20タイプ、バリエーション×70タイプ、インサーション1×43タイプ、インサーション2×43タイプ

同じような目的でRolandのGS音源の場合は、Roland SC-8820をお勧めします。

Raspberry Pi で X68000 (Raispberry Pi OS Bullseye以降)

Raspberry Pi 5 やuConsole Kit RPI-CM4 LiteでX68000のエミュレータをインストールする場合に、過去に書いた方法だと64bitのOSではmakeできなかったので、新しく調べた方法を書きます。
今回の方法は64bit/32bit両方のBullseye以降のデスクトップ環境で動作します。
コンソール環境で実行したい場合は、『Raspberry pi 400で遊ぶ X68000編』を参考にしてください。(要: Raspberry Pi OS Buster


前準備

gitをインストールします

sudo apt update
sudo apt install git

SDL2をインストールします

sudo apt install libsdl2-dev

圧縮ファイルの展開のため、unzipとlhasaと7zをインストールします。

sudo apt install unzip lhasa p7zip-full

px68kの構築

px68kはユーザのホーム以下のpx68kディレクトリ(~/px68k)へインストールすることを想定して進めます

cd
git clone https://github.com/TurtleBazooka/px68k.git
cd px68k
make

BIOSファイル配置

実行にはiplrom.datとcgrom.datが必要。
色々なサイトを参考にX68000 LIBRARYとXM6 Pro-68kから拝借

cd
mkdir ~/.keropi
wget http://www.retropc.net/x68000/software/sharp/x68bios/X68BIOSE.LZH
lhasa x X68BIOSE.LZH iplrom.dat
mv iplrom.dat ~/.keropi/iplrom.dat
chmod 644 ~/.keropi/iplrom.dat
wget https://mijet.eludevisibility.org/XM6%20Pro-68k/XM6%20Pro-68k%20DLL%20Package.7z
7z x "XM6 Pro-68k DLL Package.7z" CGROM.DAT
mv CGROM.DAT ~/.keropi/cgrom.dat
chmod 644 ~/.keropi/cgrom.dat

動作確認

X68000 LIBRARYからHuman68kのディスクイメージを取得して起動してみます。
起動はディレクトリ~/px68kに作られたpx68k.sdl2を実行します

cd
wget http://www.retropc.net/x68000/software/sharp/human302/HUMN302I.LZH
lhasa x HUMN302I.LZH human302.xdf
chmod 644 human302.xdf
px68k/px68k.sdl2 human302.xdf

[F11]で全画面、ウィンドウ表示を切り替えられます。
[F12]でメニューを開いてディスクの入れ替えや、リセット、終了を行うことができます。

HiMeLE Quieter4C ファンレスミニPC アイドル時3W

いつでもOSを入れ替えられる実験環境が必要になり、今回は HiMeLE Quieter4C を購入しました。



Intel N100搭載のファンレスミニPCです。
サイズが131x81x18.3mmの非常に小型、薄型のPCです。

初めからN100をターゲットにして探してたのですが、この機種にしたのはサイズ以外にもDP出力と給電に対応しているUSB Type-Cのポートがあることです。
対応しているディスプレイならとケーブル1本で接続できます。
他の機種も対応してるものがあるのですが、なぜか本体前面にあるポートのみで、背面のポートでできるのはほどんどありませんでした。
経験上、前面からモニターに接続するものは色々と煩わしいです。

Windowsの初期設定を終わらしてしばらく放置後にアイドル状態の消費電力を見ると3W前後でした。

chromeでWebを見てる時やオフィス関連を捜査すると10W前後で動作します。
少し重いときは10W後半まで行きますが、今回はWindowsメインで使うことは考えてないのであまり試してませんが、20Wを超えないくらいで動作してました。
ゲーム等でGPUの動作が多くなると20Wを超えると思います。

発熱はありますが、初日に8時間ほど連続で動作してましたが、クロック数の低下や熱暴走等の問題は特にありませんでした。
ケースの上部が金属でここに熱を逃して放熱するため、結構熱くはなりますが触れないほどではありません。
常時稼働や高負荷のゲームが目的の場合はファンレスの機種は選ばない方が良いと思います。

ubuntuを入れるためSSDを交換しようとしたらスロットには何もない状態でした。

BIOSで確認するとeMMCのディスクが基盤に直付けされてるようでした。

レビューサイト等でディスクアクセスの速度を計測した結果を見ると220MB/sのものが使用されているようです。

NVMeのSSDにUbuntu22.04をインストールしてみました。

ドライバ等も特に追加でインストールする必要もなく動作してます。
消費電力を計測したところ、いつもはアイドル時はWindowsより1,2W低いのに、今回は4Wになってしまいました。
これはeMMCとNVMeのSSDの消費電力の差だと思われます。

Intel N100はTDP6Wとは言え結構発熱があるので、長時間や高負荷の使用には不安がありますが、
Webや動画やオフィスソフト等の普段使いで使用しないときは電源を切るような使い方をする場合は手軽でお勧めできる機種だと思います。

uConsole Kit RPI-CM4 Lite 手に入れました

前にDevTermを入手したことを書きましたが、今回はuConsole Kit RPI-CM4 Lite 手に入れました。

今回はRaspberryPi CM4 Liteのモジュールを使ったバージョンを注文しましたが、他にはオリジナルのARMのモジュールやRISC-Vのモジュールのバージョンもあります。

2023年4月に注文して2024年2月に届きました。
下の写真のようにパーツで届き、自分で組み立てます。

パーツ数は多くないので、比較的簡単に組み立てられます。

完成後はこんな感じです。

OSはRaspberry Pi OSをカスタマイズしたものです。

今回の主な目的はPICO-8に適した環境を作りたいと思ってました。
www.lexaloffle.com

実用は考えてなく、BASICやPython等の言語やコンソールメインで使用してポケコンみたいな感覚で遊びたいですね。

DevTermは画面サイズが特殊で横に長すぎていまいち使いにくいので手放してしまいましたが、uConsoleは普通のHDワイド(720p)のサイズです。
こちらの方が使いやすく、コンパクトなのでこちらは長く使えそうだともいました。

フロンティアユニバースの話

今回はフロンティアユニバースの話です

たぶんPC98で一番遊んだゲームです。今でいう4X SFストラテジーゲームです。
ここ数年度々遊んでいるStellarisというゲームがsteamにあるのですが、このシステムや思想を30年前に実現しているようなゲームです。

最近ふと思い出してやろうと思ったのですがあまり中古で見かけず、中古屋やオークション等をチェックして2か月くらいかけてやっと入手できました。

テトリス付きのパッケージですが、テトリスはありませんでした。

当時ははレジオナルパワーやインペリアルフォースといった同じようなSF ストラテジーゲームがあったのですが、どちらかというと戦闘メインで内政や外交の要素は少ないものでした。フロンティアユニバースは内政や外交の駆け引きも重要で一番好きなゲームでした。

入手してからつい何時間も遊んでしまい、今でも通用する面白さのあるゲームだと思いました。