0.1.14 • Published 5 years ago
torneko3js v0.1.14
PS2 ゲーム「トルネコ 3」の JavaScript ライブラリ及びスモコンシミュレータscs
です。
TypeScript で開発しています。
- スモコンシミュレータ
scs
- モンスターの能力値計算
- 行動順補助用の関数
解析データ
☣ インストール
Nodejs の場合
npm install --save torneko3js
# or
yarn add torneko3js
ブラウザの場合
example/browserを参照してください。
browserifyで bundle 化しています。
google spreadsheet の場合
調べています。claspを使うっぽい?
☣ 使用例
scs
(CLI ツール)
$ scs -h
Usage: scs [options]
Options:
-V, --version output the version number
-d --debug debug mode
-i --input <path> specify your json input file
-h, --help output usage information
ライブラリ(JavaScript, TypeScript)
import { Manager, sampleSCSInputs } from 'torneko3js';
const inp = sampleSCSInputs['4キラーマ倍速'];
const m = new Manager(inp);
m.trial();
console.log(m.toJson());
☣ 実装
システム
- scs 移植
- kompota さんの分裂方向
- はぐれ状態ホイミン
- 行動順補助用の関数
- 解析データ
特技
確率が判明していないものも多いので、おいおい実装します。
- キラーマシン/さそりかまきり
- ホイミスライム
- おばけキノコ
- メイジももんじゃ/ハエまどう/はねせんにん
- フライングデビル/ランガー/キングマーマン
- ミステリードール/いしにんぎょう
- スライムブレス/ドラゴスライム/ドラゴメタル
- さつじんき/エリミネーター
- シャドーナイト
- リリパット/ドックスナイパー
- ドラゴン
- 力をためる系(レノファイター/グレートホーン/あくましんかん)
- 単体状態異常系(タップペンギー/いわとびあくま/だいまどう/ダンスキャロット/あめふらし/テンツク/ラストテンツク/まどうし)
- おおめだま/キラープラスター
- デスマシーン
- 貝系(つのうしがい/しびれマイマイ)
- 人手系(おばけひとで/マージスター)
- 氷系(ひょうがまじん/ベビーニュート/ドラゴンキッズ/メラリザード)
- ギガンテス
- 敵に効果なし系(ゾンビマスター/シャーマン/がいこつけんし/どろにんぎょう/ベビーサタン)
- きとうし/ようじゅつしは封印が前提となるため実装しない
- カエル系は封印が前提となるため実装しない
- 爆発系(デビルアンカー/リビングハンマー/キラースター/ばくだんいわ/メガザルロック)は実装しない
- ゆうれいは scs を根本から見直す必要があるので実装しない
- げんじゅつしはスモコンに悪影響なので実装しない
- ダースドラゴンはスモコンに悪影響なので実装しない
- コロマージはバイキルトが悪影響なので実装しない
- トロルは意味が無いので実装しない
- 鈍足(アイアンタートル)は面倒なので実装しない
- モシャスナイトは複雑すぎるので実装しない
受身形効果
- スモールグール
- ラリホーアント
- じごくのよろい
- モストン/おどるほうせき
- カニ系や魔法無効化系はスモコン/ブラコンに影響しないので実装しない
- ゾンビ系のホイミは確実に倒れるので実装しない
ホイミンの行動モデル
- 周囲の傷ついたキャラの数を取得
- ホイミ発動を判断(ランダム) ← ダメージを負ったユニットごとに判定する
- 攻撃可能なキャラの数を取得
- 攻撃を判断(ランダム) ← 攻撃可能なユニットごとに判定する
- 移動可能なマスの数を取得
- いっしょにいてね、はぐれ状態の場合、移動を判断(ランダム)
☣ 入出力構成
全て JSON 形式です。
詳細はsrc/lib/interfaces.tsを参照してください。
☣ JSON validation
typescript-json-schemaで雛形を作って整形した。
あとはajvに食わせただけ。