トップページ > 記事閲覧
汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity
投稿日 : 2016/11/04(Fri) 03:00
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : nxfqqbdowvZukCGZbCz6o/
参照先 https://github.com/sceawung/source/wiki
当該エンジン汎用のSSGやCT、代替手法などを扱います。ただし汎用性が第1で抽象度が高く、改造用には迂遠な場合もあります
それらはDIY精神よろしく御自身で解析される方向けに、プロセスメモリ全体からサーチするよりは簡便な手段の提供を目的とし
該当ゲームに関するリクエストや投稿の抑制を意図する物ではありません―が、基本的にタイトル個別の案件へは対応しかねます

関連する情報の交換や、体験版での下準備などにもどうぞ。個別の解析が煮詰まった暁には専用スレッドへの移行をお奨めします
添付SSGはSpoilerALの修正パッチの適用が必須で、参照先はスレッド作成者によるTIPSと私的なバックアップ―毎時反映―です

  1. ARCGameEngine 〜天冥? 2021/07/23更新 CTに文字列テーブルからグループ構築機能、SSLのサイクリック履歴修正
    エウシュリーなど旧アーカムプロダクツ系、「AGE.EXE」が特徴
    プロセスメモリにはビット演算でマスクされた値が格納されます
    開くとプロセスを自動捕捉、さらにマスクと範囲を解決するCTを添付

    またSSGから[repeat]参照で同等機能を実現するSSLと、そのサンプルに
    表示上の数値で検索できるSSG、天結い体験版のSSGも同封してあります
    ただし情報一覧やギャラリーなどグローバル値の本体は領域が異なります

  2. RPGツクール & TyranoScript 2021/08/29更新 12/29訂正 RGSS汎用SSGがポインタ追随、アイテム類変更など対応
    RGGSは「Game.exe」と「Game.ini」、MV/MZは「Game.exe」と「package.json」or「Game_boxed.exe」等が特徴
    XP+VX-Ace向けにはRGSS汎用SSGを同封してあるので、SpoilerALで開き情報タブを参照してください
    それ以外の「libEGL.dll」持ちで「nw.pak」が有ればTyranoV4、無く「resources\app」が有ればTyranoV5

    MVは「www」フォルダにソースがあり、梱包されたEXEの場合も"Enigma Virtual Box unpacker"やらを用いて展開可
    「package.json」の"main"URL末尾に「?test」を追記するか、1.6以上なら起動引数に「test」を与えるとテストプレイ化
    テストプレイ中は旧来のCtrlによる壁抜けやF9から変数操作に加え、F8でGoogleChromeと同じDevToolsの表示も行えます
    TyranoV4はexeを7-Zip等、TyranoV5は「resources\app.asar」をAsar7z(7-Zipプラグイン)等で展開可能

    Chromium+Node.jsのマルチプロセスかつ値がdoubleで変動も激しいが、DevToolsを備えセーブもJSONベースである事などから
    リモートデバッグ搭載セーブエディタを添付(HTA)※MV/MZ/Tyrano用、TyranoV5のリモートデバッグは起動引数--inspectを付与

    IE 11 (Windows 7)以降を必要としますが、右上のボタンからポートスキャンし、デバッグのエンドポイントを割り出せれば
    ボタンからテストプレイ化、更に右のボタンからDeveloper Toolsも立ち上げられます。※エディタが応答結果で破棄されます
    本スレッドNo.17に挙げられる変数や、TYRANO.kag.stat.f, TYRANO.kag.variable等をコンソールに打ち込むとGUI操作も可能

    Windows 7未満でも「Editor.hta」の拡張子をhtmにし、他ブラウザでセーブエディター機能のみを使用する方法は採れます
    リモートデバッグはコマンドプロンプトへ「netstat -anop TCP | findstr /R 127\.0\.0\.1:.*LISTENING」で同PIDから特定
    Chromium系ブラウザの「chrome://inspect」からネットワークターゲットに設定してください ※ for Nodeは--inspectのみ

    MV 1.6などNW.js v0.13以降はnw.dllresources.pakSDK版(nwjs-sdk-v0.29.0-win-ia32.zip等)に置換でDevTools有効化(F12)
    バージョンは「package.json」をリネーム等で読み込ませず起動し確認、MZはF12で即表示可?「package.json」の--disable-devtoolsは削除
    video要素のvideo visible size is emptyは、"chromium-args""--disable-features=PreloadMetadataLazyLoad"(最新時など

  3. Unity 4.1〜2022.3 2024/11/17修正 CE~SSE4-AVX2.exeのバグ回避不全
    通常スクリプティングバックエンドにオープンソースで.NET互換なmono*.dllを使用
    同モジュールによりマシンコードはJITコンパイルで生成され、実行時型情報が満載

    ManagedフォルダのDLLはILSpy等でC#ソースまで可視化でき、更にdnSpyは部分的な再コンパイルも可
    (ILコードもAssembly-CSharp.dll改竄やらに役立ちますが、IA-32(e)と違いスタックマシンモデルです
    そのほか、CheatEngineでMonoDataCollector*.dllをロードさせLuaスクリプトからプロセスを操作可能

    ルートとなる静的フィールドから変数を辿れる汎用CTを添付※AoBはオーバーランに注意
    GameObjectは名称かクラス名で検索でき、バインドComponentの列挙も可。Type(Pointer)Wクリックで再捕捉


    またmono*.dll内のgdb向け関数を呼び出しメモリレイアウトを吐かせるアプリも同封
    ※実装上セキュリティに引っ掛かる可能性あり、事前のセーブも忘れずに
    ▼を押してプロセスを選択すると、静的フィールドを持つクラスの列挙ボタンに成ります
    (クラスは随時ロードなので、これを使い適宜更新します
    列挙されたクラスはダブルクリックか、選択してリターンで解析でき
    上部からオブジェクトアドレスや、値型のタイプとアドレスの入力も可能です
    (参照型オブジェクトは左でエンター、値型は右でエンターします
    タブを中クリックすると同タブを、ダブル右クリックで他の全タブを閉じます

    こちらは型が不明な任意アドレスでオブジェクトヘッダと類推される箇所の構造出力用です
    先に挙げたツールで当アプリも覗けますが、C#で迂遠な処理はビルド後にIL実装してあります

参考:Rubyソース1.8及び1.9.2、Unity-Technologiesフォークのmonoソース
↓↓↓これらは特定タイトル専用向けに活用するなど、ご自由にお使い頂けます

記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.1)
投稿日 : 2016/11/04(Fri) 21:50
投稿者 amateur◆kR..xsXL6RU
ID情報 : 353DdNed7B0CZaxDzw1sL0
参照先
スレ立て&SSG等の公開ありがとうございます。
こういう汎用SSGやツールは、解析やってる人間には有難い限りです。
AGE汎用は、複雑な暗号化が壁になっていたエウ作品で威力発揮(うさみみ等で検索しなくて済むとか凄い・・・)、
MVは、SSG等のメモリ弄る方向からは私はほぼお手上げ状態でしたので完全に頼りきってます。(現行のChrome等でDevToolsに入れないのが気がかりですが)
Unity汎用SSGは、Unity製ゲームが今後増えていきそうなのでますます重宝しそうですね。
(Ninetail系に続き、どうやらunicorn-a・げーせん18もUnityに移行したみたいです)
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.2)
投稿日 : 2016/11/05(Sat) 01:19
投稿者 七星◆y3el2XfkmCg
ID情報 : t2vFXQ2H8Qqp6MTECPrk5/
参照先
XORはCPUからするとポピュラーな演算ですけど出鼻を挫くには効果覿面ですねぇ
しかしローテートは演算子がないほどマイナー過ぎて逆に特定しやすかったりも
ただSearchFormを複数使うとなんか挙動がおかしい気がします\(^o^)/

MVはどちらかというとエンジン自体普及するのか?って気もしますが
PixiJS周りの扱いでメモリリークしまくる記憶と、梱包しないとソース丸見え
プロトタイプチェーンとかより、3代続いたRubyの方が慣れた人は多いでしょうし

もっとも私は老いさらばえた所為かあまりゲームをやらなくなりました
UnityというかMonoは.NET互換ということで実装に興味があるだけだったり…
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.3)
投稿日 : 2016/11/05(Sat) 02:00
投稿者 amateur◆kR..xsXL6RU
ID情報 : 353DdNed7B0CZaxDzw1sL0
参照先
自分も最近[adjustment]をよく使う(といっても「search」だけですが)のですが、
確かに謎仕様みたいなのが多いですね。別スレでも書きましたが。
別の方の作成された某汎用SSGも、search補正使用のせいか(そのSSG自体が複雑極まりないのも原因かもですが)挙動が安定せずよく落ちますし。

私はゲームを楽しむというより、解析のために少しプレイするだけという末期症状に陥りつつあります・・・
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.4)
投稿日 : 2016/11/10(Thu) 00:38
投稿者 ガウ
ID情報 : 8Pfll7KPnDXzHd84DCgPy.
参照先
以前書かれていたツクールMVでpackage.jsonがない場合のデバックモードの起動方法でデバックモード起動しようとしたらデバックモード起動できないゲームがいくつかあったんですが、どうしたらいいのでしょうか?
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.5)
投稿日 : 2016/11/10(Thu) 01:57
投稿者 七星◆y3el2XfkmCg
ID情報 : 2g59tyikJgCCEcY.NoBmr0
参照先
>>4 ガウさん

リモートデバッグする方法ですね、NEExploiTさんの情報を元に精査した所
Win/404003以前のChromiumでないとコンソールが動かないようです
chrome-win32.zipの中に旧バージョンのchromeが一式入っています
(起動中にクエリ文字列更新できれば済みそうな気はするものの…

あるいは当該ゲームがEnigma Virtual Boxで梱包されている物なら
「Quickpost Enigma unpacker」で検索し、ファイル展開を試す方法もあります
(なにぶん海外の有志ツールですので、自己責任でという事になってしまいますが

それともアンチデバッグとして機能を削るなど対策されているケースでしょうか?
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.6)
投稿日 : 2016/11/10(Thu) 04:37
投稿者 (仔猫)◆KCezBilYINU
ID情報 : kG/YyE2NbKB6lyGtrPMSQ.
参照先
七星さん提供ありがとうございます。
一度に3つも!ありがたや!(どれから解析に使おうかな…)
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.7)
投稿日 : 2016/11/10(Thu) 23:33
投稿者 ガウ
ID情報 : 8Pfll7KPnDXzHd84DCgPy.
参照先
>>七星さん

無事解決しました
ありがとうございました
新しいクロームだと起動しないんですね^^;
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.8)
投稿日 : 2016/11/13(Sun) 06:02
投稿者 七星◆y3el2XfkmCg
ID情報 : 2g59tyikJgCCEcY.NoBmr0
参照先
>>6 仔猫さん
Unity用SSGはまだ些か迂遠な気もしてますが…

メソッドのネイティブコード追跡も画策しつつも
static_data_class_arrayは実質一定順序としても
目的のクラスにstaticフィールドが無ければ到達経路を
SSGでアドレスコーディングできるのか悩みは尽きなひ


>>7 ガウさん
解決して何よりです…がしかし、いちいち旧Chromeも面倒くさい…
よく考えたら自前でデバッギングプロトコル叩けば良いと思い至ったので
No.1の添付2を更新して直接コンソールを出す機能を付けました


AlmightやTyranoScript等、nw.jsなら何でも出せるっぽいものの…
ポートスキャンをActiveXに頼っているし、Chromeはデフォルト設定だと
ローカルファイルからCORSが通らない…Fetch APIとかの時代かしら
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.9)
投稿日 : 2016/11/14(Mon) 01:58
投稿者 NEExploiT◆1I03EIw9l9M
ID情報 : Tvk4MoNhhL2PGOq4ITg1t1
参照先
ポートスキャンがうちの環境だと上手く動かない…

自分用備忘録
PowerShell v3以降専用

$processList = gps | Select-Object Id,ProcessName
$str = netstat -aonp TCP
$r = @{}
foreach($s in $str.split("`n")){
if("${s}" -match "(127\.0\.0\.1:\d+).+LISTENING[^\d]+(\d+)$"){
$p = $processList | Where-Object Id -Eq $matches[2]
$r[$p.ProcessName] += @($matches[1])
}
}
$r | ConvertTo-Json


TyranoScript
コンソールにて対象を<topframe>からindex.htmlへの変更が必要
TYRANO.kag.stat.f
TYRANO.kag.stat.mp
TYRANO.variable.sf
TYRANO.variable.tf
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.10)
投稿日 : 2016/11/14(Mon) 22:23
投稿者 七星◆y3el2XfkmCg
ID情報 : 2g59tyikJgCCEcY.NoBmr0
参照先
setIntervalやらで待とうとすると終わらない事があったりなかったり?
ReadAll()だけでブロックする様なので任せて、グローバルマッチで複数検出に対応

こういう場合はPromiseとか使うのかな、ただでさえFileAPIやWebSocketで
ECMAScript要件が上がっている所に、Edgeのみとか笑えない
そもそもJavaScriptからnetstatをするのもちょっとアレですが
扱うものがJSONにWebSocketとなると他で実現するのも回りくどい

TYRANOもバージョンによって?<top frame>のみでそっちにあったり
まちまちっぽいですかね、MV以外で変数を調べるにはthisとかになるのかな
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.11)
投稿日 : 2016/11/15(Tue) 22:21
投稿者 (仔猫)◆KCezBilYINU
ID情報 : kG/YyE2NbKB6lyGtrPMSQ.
参照先
七星さん更新ありがとうございます。

HTA形式のセーブエディタを使ってみました。
テキストとツリーに分けられて見易い。ありがとうございます。

>Unity用SSG
>目的のクラスにstaticフィールドが無ければ到達経路を〜
自分の気に入ったゲームの解析してるときは迷宮入りが多いのです(泣
人の依頼だと結構うまくまとまるので…謎です。
(最近はもうポインタ決め撃ちして…後で困ったりと…。)
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.12)
投稿日 : 2016/11/16(Wed) 07:42
投稿者 七星◆y3el2XfkmCg
ID情報 : 2g59tyikJgCCEcY.NoBmr0
参照先
>>11 仔猫さん

エディタ部分はライブラリなのでファイルへの読み書きと
MVにちょっかいを出す機能をくっつけただけだったりしますが

Unityは…シングルトンとかなら確実にstaticにあるんですけど
まだ詳しく調べてないので適当な想像ですけど設計的に
スレッドスタックからしか辿れないパターンとかですかねぇ…
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.13)
投稿日 : 2016/11/19(Sat) 14:51
投稿者 (仔猫)◆KCezBilYINU
ID情報 : kG/YyE2NbKB6lyGtrPMSQ.
参照先
>Unityは…シングルトンとかなら確実にstaticにあるんですけど
七星さんアドバイスありがとうございます。
C#やmono関係の資料を集めながら勉強してます。

>スレッドスタックからしか辿れないパターンとかですかねぇ
情報ありがたや。
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.14)
投稿日 : 2017/01/16(Mon) 02:57
投稿者 amateur◆kR..xsXL6RU
ID情報 : 9gobaP0g3C8A9VOgd2zFK1
参照先
七星さん、便利なSSGやツールを公開していただいて有難うございます。
お陰さまでゲームの解析・改造が捗っています。

別の個別ゲームのスレで同じことを書いたのですが、多分ツクールMV全てに関わる話だと思いますのでこちらにも書かせていただきます。
スレッドトップ添付2個目のツクールMV用ツールの、
DeveloperToolsを起動する機能(とテストフラグONにする)について、
右上の+でデバッグポートスキャンして検索ボックスに表示されるURLですが、どうも間違っているのではないかと思います。
幾つかのMV製ゲームで何度試してもDeveloperToolsが起動しませんので。

そこで、以前七星さんが教えてくださったコマンドプロンプトからデバッグポートのローカルアドレスを調べる方法を使い、
判明したそのアドレス(ツールでスキャンした結果とは違う)をツールの右上のアドレス欄に入力すると、
DeveloperToolsが起動しました(テストフラグONも機能)。
私の環境では、ツールでスキャンすると必ず「127.0.0.1:65001」になるようなのですが・・・
この状態、私だけなのかな?
皆さんはポートスキャン→DeveloperTools起動が正常に機能しているのでしょうか。

私と同様の症状で悩んでいる方がいらしゃるかもですので、取り敢えずの対処法として、
以前七星さんが教えてくださったデバッグポートのローカルアドレスを調べる方法を以下に書いておきます。

--------------------------------------------------------
改造したいツクールMV製ゲームを起動した後、
コマンドプロンプトを実行して、下記のとおり入力(半角スペースも必ず入れる。コピーしてコマンドプロンプト上で右クリック→貼り付け、が便利)してEnter。
「netstat -ano | find "127.0.0.1"」

すると、下記のような記載が何行にもわたって表示される
TCP 127.0.0.1:55206 127.0.0.1:55205 ESTABLISHED 7680
TCP 127.0.0.1:55397 0.0.0.0:0 LISTENING 8316
TCP 127.0.0.1:65000 0.0.0.0:0 LISTENING 1328
TCP 127.0.0.1:65001 0.0.0.0:0 LISTENING 5884
TCP 127.0.0.1:65001 127.0.0.1:51324 ESTABLISHED 5884

上記のうち、右端から二つ目が「LISTENING」となっていて、かつ、
右端(「LISTENING」等の右)の数値(10進数)が、
ゲームのプロセスID(複数の同名プロセスの内、親プロセスのID。うさみみで確認可能※)と
一致するのが正解(プロセスIDはゲーム起動毎に変わるのでその度に上記を実行の必要あり)。
 ※親プロセスのID:いずれかのGame.exeをうさみみでプロセス選択→「ファイル」→「プロセスの各種情報を表示」→「実行ID」で親プロセスのIDが表示される
 ※下記の場合、うさみみで表示される16進数のプロセスIDは「207C」(10進数⇔16進数の変換は、Windows付属の電卓の「表示」→「プログラマ」で)
 
「 TCP 127.0.0.1:55397 0.0.0.0:0 LISTENING 8316 」

上記の「127.0.0.1:55397」(ゲーム起動毎にこれは変動します)を、MV用ツールの右上のアドレス欄に入力して、その二つ左(プラスマークの左)のアイコンをクリック
→ Developer Toolsが起動する。(!をクリックでテストフラグON)
--------------------------------------------------------
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.15)
投稿日 : 2017/01/29(Sun) 14:59
投稿者 七星◆y3el2XfkmCg
ID情報 : 2eDZI2tu1Ih6Pg4R6Y5Et.
参照先
>>14 amateurさん
返信が遅くなり済みません。ご指摘の件ですが起動しない場合は十中八九、間違っています
…が、実装的には仕様です。というのもTCP列挙後、絞り込みをIPと着信接続でしか行っていません。
そのためPC環境により127.0.0.1で待ち受ける別のアプリが稼働していると、それも拾ってしまいます。

現在のHTAソースでは合致した最後のエンドポイントがテキストボックスに入り、残りは入力候補となっています。
こうなっているのは怠慢なのですが、netstatのみでプロセス名を列挙しようとするとなぜか管理者権限が必要だったり、
そもそもプロセス名がGame.exeというのも絶対ではないので、片っ端からHTTP接続テストをするのも何だかなという次第で…

御無沙汰している間にまた様相が変わったようで…遠からず新しいAGEの体験版も出るでしょうし、ぼちぼち作り直すつもりではいます
記事編集 編集
Re: 【汎用解析】AGE、RPGツクールMV、Unity (No.16)
投稿日 : 2017/01/30(Mon) 00:45
投稿者 amateur◆kR..xsXL6RU
ID情報 : 7WD8G7AfhafWkXtCDDiaK/
参照先
>>15 七星さん
ご多忙の中、ご返信いただきまして有難うございます。
>そのためPC環境により127.0.0.1で待ち受ける別のアプリが稼働していると、それも拾ってしまいます。成程、そういう仕様なのですね。
私の環境ではそれに該当してしまっているので起動しないと・・・
取り敢えず、>>14の方法でDeveloperToolsを起動することは出来ており、
何とかなっていますので、これは環境次第の仕様ということで承知いたしました。
解説ありがとうございます。

>御無沙汰している間にまた様相が変わったようで…
そうですね、変態紳士さんがパッチで色々機能追加・強化してくださって使い勝手がさらにアップしました。
また、七星さんのご活躍を期待しております(私は頼ってばかりで済みません)。
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.17)
投稿日 : 2017/02/22(Wed) 21:50
投稿者 amateur◆kR..xsXL6RU
ID情報 : SVa40FTfkX4oI7WHe6ZLA.
参照先
最近、ツクールMV製ゲームの個別スレが立って、このスレのツールが紹介される例が増えてますが、
ツールでDeveloperToolsを起動しても改造方法が分からないという方もいらっしゃるかと思いますので、
以前、臨時掲示板に私が書いたのとほぼ同じ内容(「$gameTemp」の部分に追記しました)の情報を書いておきます。
 ※ DeveloperToolsでの改造は、セーブデータ改造と違ってリアルタイムでゲームに反映されます。

なお、あまり検証してないので下の情報には書いてませんが、
「$gameSwitches」「$gameVariables」あたり(「$gameSelfSwitches」については?)は、
どうも「テストフラグON」(ツクールVX等でのデバッグモードに相当)で操作できる変数を弄れるみたいです。
(以前試したゲームで、テストフラグONの方で変更したのと同じ内容の項目があった覚えがあります)

--------------------------------------------------------
ツクールMVのDeveloper Toolsで変更できる内容は大体、下記のようです。
「Developer Tools」を起動したら、右端の「Console」に、下記の「$gameParty」等の変数名を入力してEnterでOK。

$dataActors ;キャラ情報、初期レベル等
$dataClasses ;各職業の最大HP等の基本パラメータ、習得スキル等
$dataSkills ;スキル情報
$dataItems ;消費アイテム情報
$dataWeapons ;武器情報
$dataArmors ;防具情報
$dataEnemies ;敵の情報
$dataTroops ;敵グループの情報?
$dataStates ;状態異常等
$dataAnimations ;
$dataTilesets ;
$dataCommonEvents ;
$dataSystem ;基本ゲームシステム
$dataMapInfos ;
$dataMap ;
$gameTemp ;「_isPlaytest」を「false」から「true」に変えると、CTRL押しながら移動で壁抜け、F9で変数表示(回想出現などもここ?)
$gameSystem ;セーブ回数・戦闘回数等、セーブ・エンカウントの有無設定も?(saveEnabled、encounterEnabled)
$gameScreen ;
$gameTimer ;
$gameMessage ;
$gameSwitches ;
$gameVariables ;
$gameSelfSwitches ;
$gameActors ;各キャラのレベル・現在HP・装備品等の情報(ステータス値は職業で決まるので「$dataClasses」で)
$gameParty ;所持金・所持品・現在のパーティメンバー等
$gameTroop ;ターン数等の戦闘中の情報?
$gameMap ;現在いるマップの情報?
$gamePlayer ;マップ上の座標、キャラ移動速度(moveSpeed)、次のエンカウントまでの数値(encounterCount、減算型?)?、
$testEvent ;

--------------------------------------------------------------
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.18)
投稿日 : 2017/02/23(Thu) 21:43
投稿者 amateur◆kR..xsXL6RU
ID情報 : jx1meB3cWBYgaVbRT3sGD1
参照先
ツクールMV用のツールについて補足。
セーブエディタの方に「Tree」モードで表示される「System」「actors」「party」等は、
>>17に書いた「$gameSystem」「$gameActors」「$gameParty」に相当するようです。
$game の後ろの名称がセーブエディタの各項目名になっている?ような。
なので、>>17の情報を参考に、セーブエディタで表示される各項目で何が改造できるか大雑把に判断できるかと思います。

ちなみに、>>17の情報で「$dataActors」等、頭が「$data」となっているものは、
セーブには反映されない基本データ部分なので、セーブデータ改造の方とは関係ないようです。
逆に言うと、頭が「$data」の箇所は、セーブデータ改造では弄れないということですね。
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.19)
投稿日 : 2017/02/24(Fri) 21:48
投稿者 七星◆MH.ms4.V3i2
ID情報 : EO1F4.qa2sHkDF3axAhPO0
参照先
MVセーブエディタのTreeモードとTextモードの統廃合を行い、Codeモードに一本化しました
テキストベースですが、アウトラインでツリーの様になったり、ハイライト機能もあります
とても軽快です、しかしIEエンジンで動かしているとリアルタイム文法チェッカーは働きません

>>amateurさん
まとめ情報ありがとうございます、実のところ先日過去ログはどこいったっけなと探していました
掲示板でJavaScriptについて教えるというのも難しいので、DevToolsの指南は悩み所です…
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.20)
投稿日 : 2017/02/26(Sun) 02:33
投稿者 amateur◆kR..xsXL6RU
ID情報 : 1qn8RKmRCI4OP10knw5cO.
参照先
>>19 七星さん
更新ありがとうございます!
DevToolsのポートスキャンが私の環境でも正常動作するようになりました。
ますます便利になってますね。感謝です。
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.21)
投稿日 : 2017/04/06(Thu) 23:58
投稿者 ガウ
ID情報 : SswJvXANAc.2g7F9.unty1
参照先
ツクールMVについてなんですが
SetupOptionInvalid
というスクリプトをかわす方法はないでしょうか?

js内を弄る等してみたのですが、弄るところを間違っていたのか効果がありませんでした…
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.22)
投稿日 : 2017/04/07(Fri) 01:01
投稿者 七星◆MH.ms4.V3i2
ID情報 : BXfphnn2SudbHe170S9/m/
参照先
>>21 ガウさん
察するにpackage.jsonの"main"URLに「?test」等を付加すると、特定ゲームにおいて
テストモードを感知されて起動が阻害される、という事で宜しいでしょうか。

RPGツクールMVは「www/js/plugins.js」にてプラグイン管理を行っています。
"name":"SetupOptionInvalid"」に該当するプラグイン定義を「"status":false」とするか、
定義自体をコメントアウトすれば、チェックプラグインを無効化できると思います。

またソースを弄らずとも、MVセーブエディタで!ボタン→+ボタンのリモートデバッグが機能すれば
ゲーム起動後の途中からでも、テストモードと同等の状態へ持っていける筈です。
(これだとF8によるデベロッパーツール起動までは有効化しないので、更に右のボタンを使ってください
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.23)
投稿日 : 2017/04/07(Fri) 06:40
投稿者 ガウ
ID情報 : SswJvXANAc.2g7F9.unty1
参照先
コメントアウトはしてみたのですが、「?test」を付与しても画像のような画面になるだけで動作不可になります

CMDからのコマンド入力からのデバックもアドレスが表示されず有効化できませんでした

記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.24)
投稿日 : 2017/04/07(Fri) 07:29
投稿者 七星◆MH.ms4.V3i2
ID情報 : BXfphnn2SudbHe170S9/m/
参照先
>>23 ガウさん
堕ち姫ルーシア物語でしょうか?タイトルを伏せられると類推する事しかできません。
体験版だとなぜか2回定義されているようですが…製品版はどうでしょう?
いっその事「www/js/plugins/SetupOptionInvalid.js」の方で「'use strict';」後か即「return;」するとか。

実行ファイルがMV用ではなくオリジナルnwっぽく…--remote-debugging-portも効果がなさそう…?
待ち受けポートがない場合、リモートデバッグによる干渉は出来ないですね
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.25)
投稿日 : 2017/04/07(Fri) 21:43
投稿者 ガウ
ID情報 : iWNIuooBcDJs7MBYKndN8/
参照先
申し訳ない(>_<)

堕ち姫です

2回定義されてる場合はどの様に書かれているのでしょうか?

まだ出先なので帰り次第にでも一先ずもう一度plugins.jsを洗い直してみます
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.26)
投稿日 : 2017/04/08(Sat) 03:32
投稿者 七星◆MH.ms4.V3i2
ID情報 : BXfphnn2SudbHe170S9/m/
参照先 https://raw.githubusercontent.com/triacontane/RPGMakerMV/master/SetupOptionInvalid.js
>>25 ガウさん
体験版を見た限りですと、「www/js/plugins.js」の37行目と44行目で重複定義されていますね
ただプラグイン側で「if (!Utils.isNwjs())」となっていて機能してないようにも見受けられますが…
製品版で使われているのが参照先で配布されている物と同じかどうかも確認してみてください。

あるいは他のプラグインや独自のチェックが組み込まれてるのかもしれないですが…、
適当なMV実行ファイルにすり替えてリモートデバッグを使うのもアリかもしれません。
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.27)
投稿日 : 2017/04/08(Sat) 11:06
投稿者 ガウ
ID情報 : SswJvXANAc.2g7F9.unty1
参照先
すり替えるのは何を替えればいいのでしょうか?

「www/js/plugins.js」のプラグインの表記は50行前後なのに対して「www/js/plugins」フォルダ内のjsファイルが74…全部開いて検証してみるべきか…
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.28)
投稿日 : 2017/04/08(Sat) 12:01
投稿者 七星◆MH.ms4.V3i2
ID情報 : BXfphnn2SudbHe170S9/m/
参照先
>>27 ガウさん
適当なRPGツクールMVの(boxedでない)Game.exeをゲームフォルダに持ってきて、それを実行するということです。
基本構成は同じ筈ですので、依存していなければ問題なく動くと思います。「"toolbar": true,"height": 664,」等も有効に…
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.29)
投稿日 : 2017/04/08(Sat) 13:16
投稿者 ガウ
ID情報 : BOl.UG/tPgm0sGSI1DpjB.
参照先
ありがとうございます

夜にためしてみます

スクリプトの方は時間のあるときに今後のためにも色々試してみます
記事編集 編集
天結いキャッスルマイスター体験版 (No.30)
投稿日 : 2017/04/17(Mon) 01:46
投稿者 七星◆MH.ms4.V3i2
ID情報 : avY7ip41JN1Te5JnQrs0e1
参照先
改造SSGというよりもはや機能テスト的な。
memmove()+%-*sで桁揃えが捗るゥ。

No.0添付1のAGE.sslを同フォルダに配置する必要があります

修正:アイテムを微妙に小分けにしたり、装備のスキルや属性耐性を弄ったり
その他メモリ確保や処理を見直したりと、No.0添付1のAGE.sslも更新したので新SSG使用にはそちらも要更新

更に修正:獲得済みスキルを弄ったりなんだり、コードの最適化など。

※別々にダウンロードするのも何なので、サンプルとしてスレッドトップに同封しました
記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.31)
投稿日 : 2017/04/27(Thu) 04:31
投稿者 変態紳士◆G9/eqTtPaq.
ID情報 : 9M12DC5sPlOaTMiKj3t3D0
参照先
>>30 七星さん
お代官様のお好きなお菓子をお持ちしました。

記事編集 編集
Re: ARCGameEngine, RPGツクールMV, Unity 汎用 (No.32)
投稿日 : 2017/04/29(Sat) 16:48
投稿者 七星◆MH.ms4.V3i2
ID情報 : JtWREUO0JfssILUesRR3k/
参照先
>>31 変態紳士さん
ありがとうございます、新しい制御文も粗方実装が完了した感じでしょうか
関数も増え、複雑な式を書いても実によく動いています…誠にお疲れ様です
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine(エウシュリー), RPGツクールXP / VX / VX Ace + MV, Unity (No.33)
投稿日 : 2017/11/22(Wed) 01:44
投稿者 七星◆MH.ms4.V3i2
ID情報 : H/JWZdpve2emNqRE9yzuF0
参照先
何を血迷ったのかUnity向けツールの改修よりも
SSGの汎用化を推し進める習作として手を出した
RGSS向けSSGが煮詰まったので2番目のzipに同封しました

XPについてはゲームサンプルが不足している事もあったり
そもそもASTが深いのでデバッグメソッドの改竄は実装していません
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールXP / VX / VX Ace & MV, Unity (No.34)
投稿日 : 2017/11/25(Sat) 21:38
投稿者 七星◆MH.ms4.V3i2
ID情報 : H/JWZdpve2emNqRE9yzuF0
参照先
RGSS汎用SSGにおいてモジュールの特異メソッド列挙と変数を扱えるようにしました
といってもVX AceのBattleManagerやDataManagerくらいにしか使い道は無さそうです

それと書き忘れ…というより言及していませんがT_BIGNUM(多倍長整数)には対応していません
任意精度になるコレをSpoilerALからどう指定するかという問題もありますし
Rubyの実装仕様で1bit食われても、31bitあるT_FIXNUMの範囲を溢れるケースはそう無い…んじゃないカナ
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.35)
投稿日 : 2018/01/12(Fri) 00:31
投稿者 七星◆MH.ms4.V3i2
ID情報 : z9zL9z.rnFNg78a4Vj0T80
参照先
RGSS汎用SSGでプラグインを採用してUTF-8デコードやらクイックソートを実装しました
インスタンスの@nameやクラス名、シンボルやらも文字列としてフォーマットされます
とりわけゲームデータベースが把握しやすくなりました(そして便宜上undef指定は廃止されました

一部主要変数の改竄向けにショートカットも追加しましたが、
二刀流はスクリプト次第で如何様にも実装できるのでVX Ace未満には対応してません
VX Aceでは基本、装備スロットはGame_BaseItemですがアイテム等は想定されておらず
@classを参照することにしたので、装備済みスロットしか変更できません

プラグインソースも同封してありますが、暫定ということで未だ二次利用は想定していなひ…

2018/01/13
$RGSS_SCRIPTSのフォーマットとソース表示を実装しました※zal.dllプラグインも更新されています
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.36)
投稿日 : 2018/01/22(Mon) 13:02
投稿者  
ID情報 : vZzFKNdZ057FqwGM23PYe/
参照先
https://necocan-index.rick-addison.com/bbs/patio.cgi?read=4より移行して来ました。

>No.596
>スイッチ自体をメモリ操作しただけでは、キャッシュのようなモノが更新されず
>マップに反映されないのではないかと適当な想像

なるほど。
「ゲーム内スイッチ画面を開けた上で間違いなくそこからOnOff指定を行いました」的な
「画面反映更新フラグ待ち要素」なりが存在しているという事なのかもしれませんね。

ちなみにですが、SSG側で操作した後にゲーム内スイッチ画面を表示させる際
その表示項目にSSG側で操作した項目が含まれていなくとも
表示と同時に箱が未開封状態へと瞬時に更新された事から
とりあえず現状では

「SSG側で複数項目のOnOffを切り替えようとも、ゲーム内スイッチ画面を1回表示さえしてもらえれば、間違いなく指定したOnOffは全てデータとして即反映してあげるよ」

という状況である事が判明しました。

七星さんに今回作成頂いたスイッチSSG
https://necocan-index.rick-addison.com/bbs/upl/1516554590-1.ssg

これは素晴らしいという一言に尽きません。

例えばですが、もんぱらでは混沌の迷宮というダンジョンコンテンツにおいて
封印城エリアという「宝箱のみが1枚のマップ上に20個設置されているダンジョン」が存在するのですが

「これら20個の宝箱を全て開錠した後にSSG側で一括OFF(未開封状態)にし、ゲーム内スイッチ画面を1回表示する事で、瞬時に20個全てを未開封状態に戻せる」

なんて未来を想像出来たりします。
現時点では宝箱に対応した各スイッチを個別にチェックボックスを入れて対応していますが
それでも従来のゲーム内スイッチ画面操作の煩わしさから比べれば天地の差です。
この汎用スイッチSSGの効力もまた凄まじいですね。


それからNo.1にある2の汎用SSGを修正して頂けたとの事なので
こちらも動作確認して来ました。

結果から申しますと、$game_map.map_id選択時に無事右ウィンドウ内にリストが表示されました。
しかし残りですが

$game_actors
$game_variables
iv_tbl(zal.dllのアドレス57ADCF63でアドレス17CB2A90に書き込み違反、とエラー表示)
rb_global_tbl(zal.dllのアドレス57ADCF63でアドレス05A6B3A0に書き込み違反、とエラー表示)

の4項目に限っては相変わらず項目の隣に捕捉済の総数が計上されるのみでリストとして右ウィンドウ内は空欄のままです。
それ以外は総数の捕捉すら行われないようです。

また$game_switchesに限っては選択するとSpoilerそのものが停止します。

以上、報告となります。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.37)
投稿日 : 2018/01/22(Mon) 18:37
投稿者 七星◆MH.ms4.V3i2
ID情報 : z9zL9z.rnFNg78a4Vj0T80
参照先
>>36
お手数をお掛けします

その後、Aceのスクリプトソースを眺めてみましたが、案の定というか
スイッチ変更時のイベントハンドラにマップへの更新要求がありましたので
相当する処理($game_map.need_refresh = true)を組み込んでみました
(汎用SSGへはまた後日…修正パッチのアップデートに対する最適化など含め

>SSG側で一括OFF
この様な操作はダブルトグルならばリスト上で右クリックするとコンテクストメニューが出るので
汎用SSGだとShift(あるいはCtrl)+クリックやドラッグで範囲選択の後、一括操作も行えます
(ダブルトグルは内部でリスト生成が必要で、UTF-8→SJISの文字コード変換にプラグインが必須

しかしてその汎用SSGですが、修正パッチ version : 6.3 - 2018.01.22 以降もお使いでしょうか
件の現象が元々の不具合(結果としてプラグインへの引数が不正なものとなる)でしたが
一応、修正パッチに加え、添付したものもダウンロードし直して動作確認を行っているので
修正パッチも最新版である場合は手元で再現できない現象となり、些か対応は難しくなります
(タイトルやゲーム進行状況によって左右されるような組み方はしていない筈なので…

記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.38)
投稿日 : 2018/01/22(Mon) 20:41
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : dyZtQOYh6FhgEj3sK2aWY.
参照先
【RGSS汎用SSGについて】
使っている関数の性質上(?)SpoilerALの修正パッチの仕様に振り回されている感じが否めません。

吉里吉里解析ツールのように独自にC#あたりで(?)吉里吉里解析ツールのような木構造を軸としたツールを作ってみてはいかがでしょうか?
ほとんどの変数名が固定されているため、吉里吉里解析ツールよりは使いやすくなると考えています。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.39)
投稿日 : 2018/01/22(Mon) 22:24
投稿者  
ID情報 : vZzFKNdZ057FqwGM23PYe/
参照先
>>37
>汎用SSGだとShift(あるいはCtrl)+クリックやドラッグで範囲選択の後、一括操作も行えます

素晴らしすぎますね。これも確認します。

>汎用SSGですが、修正パッチ version : 6.3 - 2018.01.22 以降もお使いでしょうか

いえ、別スレで述べた通りVer6.3 2018.1.19のままです。


それにしても仕事が早くて頭があがりません。

早速>>37のSSGの確認も行ってきます。


>>38
お手数かけてしまい申し訳ありません、と同時に
対応ありがとうございました。これからもよろしくお願いします。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.40)
投稿日 : 2018/01/22(Mon) 22:25
投稿者 七星◆MH.ms4.V3i2
ID情報 : z9zL9z.rnFNg78a4Vj0T80
参照先
>>38 RICKさん
貴重なご意見ありがとうございます。ただ…SSGの不具合は実引数の評価バグに端を発するもので
修正パッチが更新といえども、プラグイン機構や関数呼び出しに仕様変更があった訳ではありません
(アップデートに対する最適化云々は自身で草案を組んだグローバル変数ローカル変数まわりです

また応急処置にしても、for文の式にカンマが使える様でしたが、私自身パーサに関しては浅学なので
これがC/C++よろしく順次評価演算子なのか、引数解析の副産物なのか、判断がついていませんでした
十分な確証を得ないままアドレスコーディングに記述していたので、とりあえず括っただけの物です


それはともあれ…単独アプリの開発に関しては、対象までのアドレスをどうSSGでコーディングするのかといった
記述サンプル的な側面もあるので(それにしては複雑でコメントも何も有りませんが)今のところは考えていません
SpoilerALにはツリーへ項目を追加して派生する動的実装は備えていないので、汎用としては難があるのも事実ですが…。
組み込みのRubyインタプリタにアタッチできるデバッガ等が存在すれば、車輪の再発明をせずとも利用できそうな気もします

Unityに対しては64bit対応問題などもあるので、過去に製作したmono用デスクライバの改良を検討しています(予定は未定
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.41)
投稿日 : 2018/01/22(Mon) 23:31
投稿者  
ID情報 : vZzFKNdZ057FqwGM23PYe/
参照先
>>40
>>37のSSGの確認をしてきました。

ゲーム内スイッチ画面を開く事無く
SSG側の操作した瞬間に箱の閉じる挙動が
アクティブwindouをSpoilerからGame.exeに移したと同時に
即マップ内にて反映された事を確認しました。

そしてもう1つですね、これは完全に私のゲーマー視点としての発見ですが
七星さんの汎用スイッチSSGにより実現で来てしまった事があるのでこれも報告します。

件のもんぱらにおける混沌の迷宮においては宝箱が4種類ありまして
赤・青・緑・銀、です。赤が一番レア度が低く、銀が最高レア度という仕様です。
銀箱から出る装備やアイテムは無論超レアor強力なものだけという事もあり
銀箱そのものにプレイヤーが遭遇する確率も相当低く設定されております。

つまり私が>>36にて述べた
「混沌の迷宮内の封印城エリア(箱20個中銀箱が5個もある超ボーナスエリアでこれも勿論遭遇率が低い)」
に遭遇したSSGプレイヤーは、スイッチ操作を駆使して何度も開けたいという衝動に駆られる訳です。

そこで、今回七星さんが修正にて対応実装して頂けた

>スイッチ変更時のイベントハンドラにマップへの更新要求がありましたので
>相当する処理($game_map.need_refresh = true)組み込んでみました

のおかげで「ゲーム内スイッチ画面を開く必要が無くなった事」を受けまして、ふと考えたんです。

(という事は?スイッチに付随する「値の固定」を、未開封状態であるOFFのままで固定した状態で開錠したらどうなる?)

結果はお察しの通りで

「開錠実行キーを連打出来る無限宝箱」

と化しました。
このもんぱら、というゲームはSSGユーザーでない限りはGを増やす為に
睡眠前にカジノにキャラを移動させ、スロットを開いた状態で一晩中自動実行させる為に
キーボード自動連打プログラムを使い、放置させたまま寝るというつわもの達が存在しています。

つまり七星さんのおかげで、まさに

「無限銀箱開錠自動連打環境が誕生した」

という事です。これ何気にといいますか、ツクール史上初の快挙だと私は思います。
どんな宝箱でも、Spoiler・汎用スイッチSSG・キーボード自動連打プログラムを用意し使うだけで
無限宝箱化するのですから。

貴方は英雄と呼ぶに相応しいです。
そしてRickさんにも感謝します。この場がなければ私はこうした感動的なSSGを頂く機会すら無かった事でしょう。

これからも引き続きこのスレッドの汎用SSGの検証に協力していきたいと思います。
ありがとうございます。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.42)
投稿日 : 2018/01/23(Tue) 04:48
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : fFpPtLQD.7MRRFpF/fJcp1
参照先
>>37 七星さん
>スイッチ変更時のイベントハンドラにマップへの更新要求がありましたので
>相当する処理($game_map.need_refresh = true)を組み込んでみました
こういう機能は私も知りませんでした。

>>41
大抵の宝箱はスイッチではなくセルフスイッチで管理される事が多いです。
セルフスイッチだとマップ切り替え後に同じマップが表示された場合、
アイテムが復活しない事象があるためその対策だと考えられますが、一応対応スクリプトはあるようです。

そういう意味ではもんぱらの混沌の迷宮の宝箱は特殊な分類といえるでしょう。

セルフスイッチはマップの数×マップ上のイベントの数×4ほどあるので実装する予定はないです。

【追記】
もんむすのSSGにも$game_map.need_refresh = trueと同等の機能をシステム関連に追加しておきました。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.43)
投稿日 : 2018/01/23(Tue) 06:35
投稿者 七星◆MH.ms4.V3i2
ID情報 : z9zL9z.rnFNg78a4Vj0T80
参照先
>>41
デバッグウィンドウと同等以上の効果が得られたようで何よりです
個人的にはツクールと聞くとコテコテのテンプレ感を抱くのですが(失礼
ネームバリューと作り込まれたゆえか前シリーズ並にヒットしたみたいですね

有志公開のスクリプトは知りませんでした。確かパッチスクリプトが露出していたように思うので
チェックサムをちょろまかしたパッチを自作した方が色々捗りそうですが…不作法カナ


>>42 RICKさん
このリフレッシュ要求フラグはXP世代から存在していて、VX Aceまで一貫して共通のようです
デバッグウィンドウからの働きかけは閉じる時に$game_map.refreshを直接コールしていたものが
Aceだとセルフスイッチ、スイッチ、変数のon_changeハンドラで設定する間接制御に代わっていました
(それ以外でもアクターとアイテムの増減時に設定している式が見受けられます

CRubyを紐解いてもツクール仕様には明るくないので、宝箱などの単独イベントオブジェクトは
セルフスイッチによる管理ではないのかなと些か疑問でしたが、そういう事情ですか
此奴は此奴で配列がキーのハッシュテーブルなので、それもまた厄介なところでしょうか
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.44)
投稿日 : 2018/03/07(Wed) 07:29
投稿者 七星◆MH.ms4.V3i2
ID情報 : YfqcAN4vkF098qIkTTgvA/
参照先 https://github.com/sceawung/source/wiki
計画しているしていると言いながら何時できるのだったUnity向けツールの改修が一段落しました
想定環境はSSE2が使える(NetBurst≒Pentium4以降の)CPUで動いているWindows XP以降です
(近代の64bit対応CPUなら問題ありません、また対象プロセスが64bitアーキテクチャでも対応します

もっとも追加した機能は既にSSGで実現できていた静的フィールドを持つクラスの列挙くらいのものですが
内部的な処理の実装としては大幅に変更を加えたので、実用に耐えうる安定性を獲得しました

CreateRemoteThreadで逐一ぶん投げていたものから、プロセス間通信用のスレッドを常駐、
monoスレッドとして振る舞わせ、例外発生時にローダーのデッドロックを回避する処理を入れました
これにより解析しようとしたアドレスが適切でなかったとしても対象がハングアップするような事態はなくなった筈です

とはいえ例外処理は相変わらずVEHによる実装で、SEHより早い段階でキャッチしてしまいますが
(Cライブラリはさておき)mono.dll自体は構造化例外処理をほぼ行っていないので、問題は顕在化しな…いでしょう
(SetUnhandledExceptionFilterはデバッガにアタッチされていると機能しませんし
 AddVectoredContinueHandlerがタイミング的には最適ですが
 ハンドラの戻り値に関わらず例外を再送する仕様ですし…
 RtlRestoreContextは64bitでしか使えませんし…RtlUnwindは使い方が解らんゾ

ちなみに対象と完全に同一の権限で実行する必要もなくなりました、同等以上の権限があればOKです


また先日スレッドトップの参照先も更新しましたが、SpoilerAL version : 6.3の概要を纏めました
動的スコープ変数はRGSS汎用SSGにでも組み込んでみてから記事を捏ねようと思っていましたが
スケジュール的にまた遅れそうなので、とりあえず私の提出した実装が意図する所をしたためました
ただ先見の明に乏しい事を自負しているので………互換性を失う仕様変更はされないと思いますが。
(オフセットを加算ではなく置き換え、更にはレキシカルな[replace]/[offset]も実装したいけど
 [define]に加え[scope]で必要性は低下している気もする…
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.45)
投稿日 : 2018/03/11(Sun) 20:50
投稿者 ユニコーン
ID情報 : cginJYCjMDDNa1cif5LBX/
参照先
バカで申し訳ありませんが、RPGツクールMVのお金だけでも変更出来る
汎用SSGってございませんでしょうか?理解出来ませんでした。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.46)
投稿日 : 2018/03/11(Sun) 22:18
投稿者 七星◆MH.ms4.V3i2
ID情報 : YfqcAN4vkF098qIkTTgvA/
参照先
>>45 ユニコーンさん
現状を端的に申し上げると、MV対応となるSSGは用意できておりません
やや語弊を生じますがコストパフォーマンスに見合わないという事で…

代替案として頭記事にある2番目のzipへセーブエディター(rpgsave\editor.hta)を同封しています
Game.exeから始め save\file1.rpgsave 等に保存される一般的な形式であれば使用できます
(MVの一般的なセーブファイルは、JSONと呼ばれる書式に従ったテキストが圧縮されたものです
 Loadから開いた後、CTRL+Fを押して所持金であれば「gold」等の英単語で検索するとすぐ見つかります

またゲーム実行中にリアルタイムで改造を行う場合、ゲームフォルダに「package.json」が存在すれば
メモ帳などで"www/index.html"という部分を"www/index.html?test"と加筆すればテストモードで起動します
この状態なら従来のようにCTRLキーで壁抜けしたり、F9キーでスイッチや変数を操作する画面を表示できます

そしてF8キーでDevToolsと通称されるデバッグツールが立ち上がります、操作にはJavaScriptの知識が必要ですが
No.17記載のようなパーティ変数を打ち込むだけでも中身が見れるので、エディタと同様の感覚で弄る事も可能です
$gamePlayer.reserveTransfer(MapID,X,Y)でマップ移動、$gameTemp.reserveCommonEvent(EvID)で任意イベント等も…

package.json」が露出していない場合は、ゲーム起動中セーブエディターの右上にある
ボタンを1,2回押して、検索ボックスにIPアドレス:ポートが入る様であれば
ボタンでテストフラグON、その右のボタンでDevToolsの起動が行えます

プラグイン等ゲーム側でテストモード阻止や、MV用Game.exeではない時など、小細工を要する場合もありますが
独自のセーブ形式には遭遇した事がないので、セーブ編集は何れのゲームでも一貫して行えると思います
(ブラウザ実行の場合ですとブラウザのローカルストレージ(主にSQLite)に保存されてしまいますが…

記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.47)
投稿日 : 2018/03/12(Mon) 14:11
投稿者 ユニコーン
ID情報 : cginJYCjMDDNa1cif5LBX/
参照先
七星◆MH.ms4.V3i2さん、ご指導いただきありがとうございました。
ぶじお金の改造が出来ました。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.48)
投稿日 : 2018/04/18(Wed) 01:37
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : DGBN9ALMQE89YRJ0hxyPB0
参照先
【SSGを投稿したり、ゲーム解析について語るスレ】のNo.101にあるツールでは、アイテムリストの自動生成に成功していますが、
下記のようにRGSSシリーズの各データベースの構造体の中から項目を選んで抽出し、CSV化するプログラムを作成することは可能でしょうか?
下記コードは【データベースとCSVの相互変換】を使って項目を選択して抽出する際に使用しているものです。


unless FileTest.exist?("Actors.csv")
actor=[:id,:name]
data=load_data("Data/Actors.rvdata").compact
CSV.save_data("Actors",data,actor)
end

unless FileTest.exist?("Classes.csv")
classes=[:id,:name]
data=load_data("Data/Classes.rvdata").compact
CSV.save_data("Classes",data,classes)
end

unless FileTest.exist?("Items.csv")
item=[:id,:name,:price,:note]
data=load_data("Data/Items.rvdata").compact
CSV.save_data("Items",data,item)
end

unless FileTest.exist?("Weapons.csv")
weapon=[:id,:name,:note]
data=load_data("Data/Weapons.rvdata").compact
CSV.save_data("Weapons", data, weapon)
end

unless FileTest.exist?("Armors.csv")
armor=[:id,:name,:kind,:note]
data=load_data("Data/Armors.rvdata").compact
CSV.save_data("Armors", data, armor)
end
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.49)
投稿日 : 2018/04/20(Fri) 16:36
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : AZ/QhEA3/MLwmZY5YWhYm/
参照先
rvdata解析した方が楽なんだけど(昔やったけど、ソース紛失)
メモリから読み込む利点あるのでしょうか?

飽きて放り投げたスクリプトなのでデータ構造ど忘れしてたり
適当なゲームが見つからなかったりでツラい

---
追記
意外とメモリ読み込みでも楽に出来ました。
rpg_export_csv.rb

ruby 2.4.3p205 (2017-12-14 revision 61247) [x64-mingw32]
にて動作確認

再追記
rvdata読み込み思い出しました

RGSSはrubyなのでお手軽

bin = IO.binread 'Items.rvdata2'
items = []
begin
items = Marshal.load bin
rescue => ex
m = ex.message.chomp('::').match %r{undefined class/module (.*)$}
eval "class #{m[1]};end"
retry
end
items.each{|it| puts it.instance_variable_get :@name}
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.50)
投稿日 : 2018/04/21(Sat) 06:12
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : FnFVzWr6Ef/mLIXFiI3YC.
参照先
>>49 NEExploiTさん
最近「RPGツクールVXリーダー」や「RPG Maker Decrypter」が
使用できないゲームが増えてきて(Game.rgssXXが保護されれいる?)
リストの抽出もままらなかったため困っていました。
よって上記のプログラムは非常に助かります。
ご対応ありがとうございました。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.51)
投稿日 : 2018/04/23(Mon) 03:45
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : AZ/QhEA3/MLwmZY5YWhYm/
参照先
r*data+scriptの一部が偽装されてて面倒だった事は経験ありますが
rgss*dが展開できないというのは、ありえるのでしょうか・・・?

一応、apihook仕込むなりで可能なの…でしょうか?
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.52)
投稿日 : 2018/04/23(Mon) 06:26
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : 7kBfu97GxGYSZ.nwSLb7y0
参照先
>>No.51 NEExploiTさん
DLsiteで採用されているプロテクトで保護された作品が該当します。
Game.rgssXXが保護されいるようでアクセスそのものが弾かれます。

vxlib.rbについて
# 詳細はそのうち調べる
# symbol_table, global_vars
RGSS103J = RGSSSet.new 0x144514, 0x1452F0
#RGSS103J = RGSSSet.new 0x144534, 0x145310
RGSS104J = RGSSSet.new 0x1836BC, 0x184498
RGSS200J = RGSSSet.new 0x18A23C, 0x18B018
RGSS202J = RGSSSet.new 0x18A23C, 0x18B018
RGSS300 = RGSSSet.new 0x25a2ac, 0x2ac044, true
RGSS301 = RGSSSet.new 0x25a2ac, 0x2ac044, true

私は上記のように設定すると対応できました。
RGSS103J.dllには古いものと新しいものがあるようなので
[:(MName::RGSS103J.dll)+0x003BB6:]+0x019C30
で双方のglobal_varsに到達可能なようです。
symbol_tableはおそらく
[:(MName::RGSS103J.dll)+0x003BB6:]+0x018E54
だと思われます。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.53)
投稿日 : 2018/04/23(Mon) 09:41
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : AZ/QhEA3/MLwmZY5YWhYm/
参照先
あぁ、なるほどDRMですか
某電池だとデータファイルの先頭1byteを暗号化するみたいなのがあったような気もしますね

情報ありがとうございます
(どうせ、やろうと思えばini書き換えてDLL置換できるしなーとか思ってました)
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.54)
投稿日 : 2018/05/12(Sat) 18:05
投稿者 takumi
ID情報 : WkL8Wjv9OKaudJhQVJXcG1
参照先
2番目のzipセーブエディター
editor.htaをクリックしても有効なwin32アプリケーションではありませんと、エラーが出て使用できません
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールXP / VX / VX Ace) , Unity (No.55)
投稿日 : 2018/07/23(Mon) 23:13
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : xa2Jwt8iuZDajonk3ndtc/
参照先
半ば私の実験場と化している代行パッチですが、一通り形になったので
新文法を使用してRGSS汎用SSGを組み直してみました。暫定版なのと
諸問題があるのでスレッドトップではなく参照先に添付してあります


3 * 2 ? 1 : 0」が間接参照、「$var++ ? 1 : 0」が前置になる不具合も見つけましたが
挙動変化を含め、パーサ自体に手を入れるのは荷が重いので放置してあります

ただ遅延展開は万能という訳ではなく、名称検索が一度展開されるまで使えません
また現状では毎回展開し直すので、閉じた後に検索して開くと位置がずれます
この実装仕様により開き直す時に値の固定も解除します(項目が作り直されるため

(作り直さないなら遅延展開はともかく動的生成の意義が薄れますし…
 遅延展開前から既に存在している項目の維持くらいはしても良いかもしれない?

それと浅慮だったのが[repeat]の開始値と終了値には不正な値の概念がないことです
自身の案で符号付きループが導入されたましたが、終了値0自体は6.1でも不正という程に非ず
増加値が0というのは有り得ないですが…後ろから解釈する訳にも…現状はNO_ERRORに限定しています
これにより此処だけシビアな評価になります(ヌルポが起きても評価は続行されるが、遅延展開は中止される)が
しくじって意図しないループ条件になるよりはマシかと。それとスコープ変数の疑似ロールバックを廃止しました
当時はトランザクション!!とか戯けて実装しましたが、ALでは実用上むしろ邪魔になりそうなので…


あとはSSG固有の問題ですが、インスタンスアドレスではなくインスタンス参照を格納するアドレスを保持していますが
しかしインスタンスや変数の再割当によって?格納アドレスも移動する模様。その際はツリーを開き直して下さい

P.S. 統一性の観点から名前をgithubに合わせました


>>54 takumiさん
ものっそい亀レスですが十中八九、環境問題と思われるので
.htaが正しくHTMLアプリケーションホストに関連付けられているか確認してみてください
また.htaを.htmなどとして一般ブラウザで実行する方法もあります
記事編集 編集
封緘のグラセスタ 体験版 (No.56)
投稿日 : 2018/10/21(Sun) 01:21
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : qep7YSMwo.InghyMBE3gg1
参照先 https://dev.azure.com/SpoilerAL/b1994a7a-8882-40d3-bb41-8f34be1b434e/_build/latest?definitionId=12
※空行での[funnel]強制を修正するため最新のパッチ↑導入が必須

基本的には同じなれどコンパイル具合が様変わりした上
アイテム管理がスロット式なので面倒。暫定的な試作

適当な敵数が見当たらず…(倒すと減ってしまう

10/24 アイテムをサクっと追加できる様に
12/02 追加習得LV
12/03 メモリ使用量の微減、上昇不可スキルを修正から無効化へ

表示−現在値の描写が有効ならSSG作者モードを推奨

記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.57)
投稿日 : 2018/11/14(Wed) 12:42
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : Bs/azhcDO0qmMx0fn6pbo.
参照先
【改造依頼】セックス&ヴァーデンリッテのスレッドで、
nwjsのバージョンを当てているようですが、どのようにすればnwjsのバージョンを確認できるのでしょうか?
方法を教えていただけら幸いです。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.58)
投稿日 : 2018/11/25(Sun) 19:29
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : iwTZFROorDymNEouiHAUj0
参照先
MV用セーブエディタを改造?というよりはlorcaに移植してみた。
Google Chromeがインストールしてある環境ならばexeクリックで動くはず

http://firestorage.jp/download/4d119f86c9f148c78f2026cc1053bde59fa71d82
ダウンロードパスワード z06zq2cr
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.59)
投稿日 : 2018/11/28(Wed) 06:30
投稿者 名無し
ID情報 : LhhcyDmOpnzgdosFdJhY1.
参照先
※簡単かつ的確な>>57の確認方法が>>61で示されたのでここに書いた内容を削除しました。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.60)
投稿日 : 2018/11/28(Wed) 07:09
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : af1I1ZgUQZVC6drnsyC8R.
参照先
>>No.59 名無しさん
やはりタイムスタンプであたりをつける以外なさそうですか。

私は最近MVのゲームをプレイするようになりましたが、
NW.pakがある場合はスレッドトップにあるツールでDevToolを起動、
そうでない場合はlocalesフォルダと拡張子が*.bin *.dat *.dll *.pakのファイルを
適当なバージョンのNW.jsのSDK版に置換してからプレイしています。(F12でDevToolが起動)

実際、NW.pakがない場合、
現状0.30.X以前のバージョンではプロフィールエラーが発生し、
0.32.X以降では音源関係の警告が出る(DevTool上で)場合があります。
なので、大抵の場合0.31.5を導入しています(←ふりーむのマルチデプロイメントのやつとか)。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.61)
投稿日 : 2018/11/28(Wed) 08:02
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : iwTZFROorDymNEouiHAUj0
参照先
nw.dllを「process.versions['node-webkit']」で文字列検索
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.62)
投稿日 : 2018/11/28(Wed) 08:13
投稿者 RICK@管理人◆PIflJPH.oeY
ID情報 : af1I1ZgUQZVC6drnsyC8R.
参照先
>>No.61 NEExploiTさん
ご指摘の方法でNW.jsのバージョンを確認することができました。
ふりーむのマルチデプロイメントのやつは相当古いのが使用されているのですね。

P.S.
No.58のツールですが、△ボタンでポートスキャンがうまくいかない事象が発生しました。
「話しかけたら打ち上がるRPG」のふりーむのWindows版にNW.jsの0.31.5を適用した場合に発生します。
スレッドトップのhta版では上手く動作しました。(127.0.0.1:2684にアクセス)
とりあえず報告しておきます。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.63)
投稿日 : 2018/11/28(Wed) 23:57
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : ku2G7d8e7Y47AnNIdTZCn.
参照先
病によりくたばっていましたで候

ぶっちゃけpackage.json読み込み阻止やらブランクページにも右下へ一通り表示されます
API仕様など諸々はNW.js本元のWikiなりDocumentationをご覧になった方が宜しいかと

ポートスキャンはActiveX経由ゆえに仕様…ではなく自身を拾いそうな感じ
1.6以降や本家NW.jsでリモートデバッグ無効かつ無梱包が増えてきたので気にする程でもないか…ナ


ちなみにプロフィールエラーは%LOCALAPPDATA%\KADOKAWA\RPGMV\User Data\Default\Web Dataを共有する所為なので
本家版の場合はpackage.jsonにchromium-argsキーを追加し--user-data-dir='User Data'とかローカル保存が良いカモ

(MV用1.6未満は一様に古く場所が違うので無問題だが、後々は--profile-directoryなりでバージョン別に分けた方が?
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.64)
投稿日 : 2018/11/29(Thu) 20:52
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : iwTZFROorDymNEouiHAUj0
参照先
>>62,63
ありがとうございます。

せっかく独自APIを仕込んでやれるので
ポートスキャンよりもnw.dllをロードしているかで判定した方がいいかもしれませんね
(とは言いつつも需要について懐疑的なので多分やらない)
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.65)
投稿日 : 2019/02/23(Sat) 16:00
投稿者 abcz
ID情報 : wzuv.TtGoggWNqxmwCb4b1
参照先
RGSS汎用SSGのGAME ACTORSでBUFFSをいじると
ステータスの変更などはゲーム内に反映されるのですが、
戦闘中戦闘後に必ずエラーで強制終了してしまいます

よろしければ対処法を教えていただきたいです
SpoilerALはver6.4-2019.02.22です

記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.66)
投稿日 : 2019/02/23(Sat) 17:00
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : L0LT54bpGA.X8bDe8bRGp.
参照先
>>65 abczさん

エラー内容からするにVX Aceかと思いますが285行目は
next if @buffs[param_id] == 0 || @buff_turns[param_id] > 0
となっており@buffsの要素が0でない場合、@buff_turnsを参照する様でして
@buff_turnsはハッシュテーブルというもので、これにSSGから追加するのは少し難があります

ステータス改変は加算方式の@param_plusで済むならそれが無難な所でしょうか
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.67)
投稿日 : 2019/02/24(Sun) 01:47
投稿者 abcz
ID情報 : wzuv.TtGoggWNqxmwCb4b1
参照先
>>66 sceawungさん
なるほど、わかりました
ありがとうございました
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.68)
投稿日 : 2019/05/01(Wed) 10:37
投稿者 NEExploiT◆Li46agv7Gxg
ID情報 : PzHdo.Ox5l2QTTmeILEgh/
参照先
Unityでなにか弄りがいのあるゲーム・ソフトウェアないだろうか

------------------------------------------------------

とりあえずDustShooters体験版で

github.com/BepInEx/BepInEx/releases
からBepInEx_x86_v4.1.1.zipをダウンロードし
改造対象のexeと同じフォルダに中身を展開
添付したzipからDS.dllを取り出しBepInExフォルダ内に放り込む

1度DustShooters体験版を起動しiniを作らせる
\BepInEx\config.iniを編集し[Preloader]以下を

entrypoint-assembly=Assembly-CSharp.dll
entrypoint-type=Title
entrypoint-method=Start
dump-assemblies=false

に書き換える。


これで、あとは普通に遊べばリロード無し、パワー最大 HP最大

記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.69)
投稿日 : 2019/05/28(Tue) 10:22
投稿者 名無しさん
ID情報 : qvVJfCCSuw40jiDBgvT91.
参照先
RGSSのSSGの[rb_global_tbl]と[rb_cObject]が使用できないのですがおま環なのでしょうか?
SpoilerALには最新パッチを当てております。
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.70)
投稿日 : 2019/05/29(Wed) 04:23
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : mDn9mhIarekytp4TvCqRA0
参照先
近頃めっきりゲームを漁ってないワタクシ…

>>69
いえ…これは修正パッチのバグですね(空の演算項が生じる
ツリー描写がおかしかったり、デバッグビルドだと例外が飛び出したり…
ちょっとバグが多そうなので、とりあえず参照先の19日版をお試しください

奇しくもAzureの仕様変更でギリギリまともに動くのが残ってるという
細かい保持ポリシー設定できなくなった悪寒


05/31 上記の判明した限りは現在修正されました
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.71)
投稿日 : 2019/05/31(Fri) 19:51
投稿者 名無しさん
ID情報 : qvVJfCCSuw40jiDBgvT91.
参照先
>>70
動作確認しました
迅速に対応していただきありがとうございました
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.72)
投稿日 : 2020/04/29(Wed) 21:01
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : i.kuQhte.IuNmYhjfyAN8/
参照先
スレッドトップ、Unity向け解析ツールのMonoBleedingEdge(mono-2.0-bdwgc.dll)対応化
記事編集 編集
Re: 汎用 【改造投稿】 ARCGameEngine (e.g.エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.73)
投稿日 : 2020/05/06(Wed) 18:55
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : cduG/UQ0o9RaTC546li0J0
参照先 https://wiki.cheatengine.org/index.php?title=Mono:Mono_Lua
64bitオンリーやMono 2.0の台頭、CheatEngine環境の充実などから
遺物となっていたUnity汎用SSGをUnity汎用CTに差し替えました
対象の実行中にCheatEngine 7.1以上で開くと捕捉し、解析します

mono.dll及びmono-2.0-bdwgc.dllの32bit/64bitに対応する…筈
配列も再帰的に展開する様に組んだので、大分進化しました

GameObjectバインディングはInternalCallに集約される様なので
おとなしくmono_invoke_method()で解決するのが手っ取り早い?


※CTメモ
MonoDataCollectormonoscript.luaと仕様が食い違っていたり
不安定な部分も見受けられるものの、executeCodeExより遥かに効率的
(mono_thread_attach()済みのスレッドを保持している事もあり)

難点はジェネリックシングルトンなどへ名指しでアクセスしたい場合…
Monoはmono_reflection_type_from_nameをエクスポートしているが
現状MonoDataCollectorでは未サポート、System.Type:GetType(string)
mono_class_findMethodByDesc()とmono_invoke_method()の組み合わせで
RuntimeTypeHandleの取得に使い、cached_classまで辿るとクラスに到達する
(monoscript.luaに定義されるmono_type_getClass()はMonoDataCollector側が
 仮引数をMonoClassField*とする為、mono_class_from_mono_type()とは違う
 幸いMonoClassFieldは先頭がMonoType*なので、_implへの参照を渡しても通る)
最後にmono_class_getStaticFieldAddress()を呼び出し静的フィールドへ、とか


05/07 ジェネリック構造体とGameObjectにバインドされたComponentの列挙に対応
   UnityEngine.GameObject:Find(string)の呼び出し、および発見時に追加する機能を実装

05/08 解析タイミングを調整し、プロセスの再選択時でクラスリストを更新するように
   経路が不明でもGameObject名が分かればランタイムに問い合わせて解決できるの図

記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.75)
投稿日 : 2020/05/14(Thu) 21:08
投稿者 774
ID情報 : 3ot6.nQMqfcWd0ReClnqH0
参照先
>>74
sceawung様、こちらのセキュリティソフトでダウンロードが出来なかったようでした。大変申し訳ございませんでした。
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.76)
投稿日 : 2020/05/22(Fri) 23:25
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : cduG/UQ0o9RaTC546li0J0
参照先 https://docs.microsoft.com/windows/win32/debug/dbghelp-versions
20日にアップロードしたものを含め、添付類のアップデートを行いました

AGE向けに以前サンプルとしたCheatTablesを改修して追加、範囲も自動設定します
COM関数コールでSSG版より前方互換性は上?しかし文字列の検索機能はありません

Unity汎用CTは正攻法の文字列編集と、名称検索したGameObjectを保存し、再捕捉時に復元
MonocleもWOW64環境に正式対応、安定性の向上、例外時のスタックトレース表示を実装

(WOW64環境で両方ロードされるNTDLLを確実に判別する為、ローカル配置のDbgHelp.dllを採用
 Windows 8.1 SDK Debugging Toolsに付属するバージョンでWindows XP〜8.1をサポート
 システムディレクトリへの導入は厳禁。10以降ではより新しいシステムDLLを使用します


※既知の問題

最近のCEではregisterCustomTypeAutoAssembler()後プロセスロストする?
故かMainForm.OnProcessOpened時点でも失敗する事があるので先にCTを開く

CallMethodはコールバックをcdecl扱いというより関数プロトタイプ自体が変わる
第2引数がリモートアドレスになるので互換性がない(また64bitでは常にfastcall)

それとMonocleはVectored Exception Handlingにより不正なアドレスの解析をケアしていますが
近年のMonoモジュールで、これよりも早い段階で処理されると復帰を諦めてデタッチします
具体的にはDBG_PRINTEXCEPTION_CでRiaseExceptionされたり、ExitUserProcessならご臨終です
本当はデッドロック解除もCRITICAL_SECTION_DEBUGからしたくても、mono-2.0はNO_DEBUG_INFOでした

.NET Frameworkは終焉を迎え、.NET Coreの後継が.NET 5となる流れになっております
MonocleもSDKスタイルプロジェクトにし、.NET Core版もビルドできる様にはしましたが
.NET CoreがWindows 7以降しかサポートしないのは兎も角、基本がdll+環境依存exeになります
単一のEXEにすると完全なプラットフォーム依存となる上、参照モジュールを抱え肥大化します
この辺りはGitHubでも議論されていますが、現状では仕様の模様(.NET 5では改善されるそう
AnyCPUとしてならdllを配布してdotnetで実行すると…もうjar宜しく専用拡張子にしたら?
DllImport上Win専用なのでMacやLinux対応は要らないし、32bitOS対応は残したい事もあり
x86exe+x64exe+dllや起動用batも何だし、そもそも.NET Coreランタイムは普及問題があるので
.NET Framework 4で据え置きXP以降のまま(SDKスタイルはClient Profileがオミットされました
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.77)
投稿日 : 2020/05/29(Fri) 21:18
投稿者 Dhaos◆z6ESHGtWBgI
ID情報 : CK7wYcEYXtQ4EDpYJuGk40
参照先
>>76
ARCGameEngineのCTを天冥のコンキスタ体験版で使ってみました。

そこで2つリクエストさせてください。

1.Headerの編集をしようとすると毎回、画像のようになります。
 また右クリックからのChange Scriptでは問題ありませんが、<Script>をダブルクリックで編集画面に入るとHeaderと同様にOutputします。
 これを出さないようにしてほしいです。

2."COM3"のように"AGEBitsMasker"もregisterSymbolしてほしいです。
 別途でScriptを作成する時にとても助かります。

ご検討よろしくお願いします。

記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.78)
投稿日 : 2020/05/29(Fri) 23:18
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : cduG/UQ0o9RaTC546li0J0
参照先
>>77 Dhaosさん

87行目…嗚呼そうですね、アドレスを持たない項目を考慮してませんでした
エラー箇所をカスタムタイプのみに限定しました。もっと良い方法が有りそうな…

CEは開始範囲が相対でもモジュール内しかオフセットにしてくれない様なので
苦肉の策としてアドレスリストのイベントハンドラで相対に直していますが。


シンボルについては基本アドレスなのでマスク値のリモートアドレスをAUXに
マスク値はLuaグローバル変数MaskValueにしてみました
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.79)
投稿日 : 2020/05/30(Sat) 17:17
投稿者 Dhaos◆z6ESHGtWBgI
ID情報 : CK7wYcEYXtQ4EDpYJuGk40
参照先
素早い対応ありがとうございます。

2のシンボルは問題なく使えました。

1は79行目からの手直しされた箇所は機能していないようです。
CT起動時にOut of BoundsのエラーをOutputし、Value typeの変更と検索範囲の指定はできなくなってます。

画像はCTを起動してAGE.exeにアタッチした状態のものです。

記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.80)
投稿日 : 2020/05/30(Sat) 17:59
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : cduG/UQ0o9RaTC546li0J0
参照先
>>79 Dhaosさん

該当箇所は逆順にしただけですが誤ったプロパティを参照していました

妙なプロパティ名と思ったのですがフォント次第でたまたま同値なだけでした

何分UI操作はLCLだかのドキュメントを参照しないと不透明なもので…修正しておきました
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.81)
投稿日 : 2020/05/30(Sat) 18:18
投稿者 Dhaos◆z6ESHGtWBgI
ID情報 : CK7wYcEYXtQ4EDpYJuGk40
参照先
再度、素早い対応感謝します。
ありがとうございました。
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.82)
投稿日 : 2020/06/05(Fri) 02:30
投稿者 ナイト
ID情報 : /HFZK5Wm8V2dRPIe941vN0
参照先
RPGツクールMV DL版のバージョンが1.6.×以降で、
package.jsonファイルのmainの末尾に「?test」を追加しても、
F8キーやF12キーを押してもデベロッパーツールが起動しなくなりました。
F9キーのデバッグメニューだけは出来ます。

RPGツクールMV DL版 1.6.×以降のバージョンでは、
もうデベロッパーツールを起動させる事は出来ないんでしょうか。
どなたか教えて頂けると幸いです。
よろしくお願いします。
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.83)
投稿日 : 2020/06/09(Tue) 18:56
投稿者 ナイト
ID情報 : /HFZK5Wm8V2dRPIe941vN0
参照先
七星さんという方は、もう居ないんでしょうか。
もし読まれていましたらご返信頂ければ幸いです。

RPGツクールMV ダウンロード版の敵を倒したら
手に入るドロップアイテムの確率を100%にする
簡易セーブエディタ等はないんでしょうか。
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.84)
投稿日 : 2020/06/12(Fri) 19:57
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : EHL9MDFrpylHvzp9DiHiO0
参照先
>>82-83 ナイトさん
遅くなりました。私が旧七星ですけどダウンロード版の意図する所は何でしょう?
ツクール本体の意でしたら、うろ覚えながらテストプレイ用が別になったような
もっとも所有しておらず畑違いになるので然るべき所へ、という事になりますが

とあるゲームのDL版を指すのならスレッドトップ記載の置換で解決しないという事でしょうか?
厳密にはNW.jsのバージョン次第ですが、MV標準ならv0.29.0、それ以外は適切なバイナリをと…
これで出せないなら現物を見ない事にはちょっと解りません、非NW.jsなのか対策なのか等

ドロップ率に対するセーブデータからのアプローチはスクリプトを読むに2倍が関の山と思えます
eval()で評価される要素にコードインジェクション等の方法もありましょうが、上書きで消えたりするので
素直にdata/Enemies.jsonやGame_Enemy.prototype.makeDropItems(js/rpg_objects.js)を弄るべきかなと
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.85)
投稿日 : 2020/06/13(Sat) 11:34
投稿者 ナイト
ID情報 : /HFZK5Wm8V2dRPIe941vN0
参照先
sceawung◆MH.ms4.V3i2さん
お忙しいところ、ご返信ありがとうございます。

RPGツクールMVのダウンロード版は、
ふりーむ様の「夢不死物語」のフリーゲームになります。
過去のスレッドトップ記載の置換でも解決出来ませんでした。

1.6.×以降のバージョンになっていたら、
もうデベロッパーツールは起動できないんでしょうか。
もし解決出来る方法がありましたら教えて頂けると幸いです。

敵が落とすアイテムのドロップ率の変更は、
バイナリエディタなどで弄りたいと思います。
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.86)
投稿日 : 2020/06/13(Sat) 17:24
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : EHL9MDFrpylHvzp9DiHiO0
参照先 https://dl.nwjs.io/v0.29.0/nwjs-sdk-v0.29.0-win-ia32.zip
>>85 ナイトさん
yumehusi110.zipで試したところ置換すれば表示できましたが…

DevToolsはNW.jsのv0.13.0でNORMAL版とSDK版に別たれて以来
NORMAL版には含まれておらず、以前のv0.12.3より新しいVerでは
nw.dll及びresources.pakの置換は必須であろうものと思います

代わりと言ってはささやかですがrpg_core.js v1.6.x以降では
最初の起動引数もクエリ文字列として解釈するコードが加わり
VX/VX Aceと同じ方式でもテストフラグを立てられる様です

ちなみにChromeや新Edgeを--allow-file-access-from-filesで起動し
www/index.htmlを読み込む…とLocalStorageセーブになるのは兎も角
大抵プラグインがNW.js前提で記述されていてrequireで躓く事でしょう
パフォーマンス向上には繋がるかもしれませんが、それならば
最新の64bit版SDKにpackage.jsonとwwwを突っ込むべきかなと

記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.87)
投稿日 : 2020/06/13(Sat) 17:59
投稿者 ナイト
ID情報 : V3QgBDEpzFOPe3x1c7SMj/
参照先
sceawung◆MH.ms4.V3i2さん
ご返信ありがとうございます。

申し訳ないんですが、少し難しくて分かりにくいので、
下記のファイルの使い方が分かりません。
もう少し使い方を教えて頂けると幸いです。
https://dl.nwjs.io/v0.29.0/nwjs-sdk-v0.29.0-win-ia32.zip
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.88)
投稿日 : 2020/06/13(Sat) 18:17
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : EHL9MDFrpylHvzp9DiHiO0
参照先
>>87 ナイトさん
nwjs-sdk-v0.29.0-win-ia32.zipの使い方が解らないという事は
そもそも置換を行えてないのでは…zipから前述の2ファイルを
ゲームディレクトリにある同名ファイルへ上書きするだけです
そうすれば以降はF12かテストモードのF8で表示できる筈です
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.89)
投稿日 : 2020/06/14(Sun) 14:07
投稿者 ナイト
ID情報 : V3QgBDEpzFOPe3x1c7SMj/
参照先
sceawung◆MH.ms4.V3i2さん
デベロッパーツールを起動させることができました。
ありがとうございました。

rpg_objects.jsファイルの中にある
Game_Enemy.prototype.makeDropItemsの何処を弄れば
ドロップ率を100%にすることが出来るんでしょうか。
因みに敵が落とす武器や防具のドロップ率も100%に出来ますか。
記事編集 編集
Re: 汎用【改造投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールMV & RGSS (RPGツクールVXAce / VX / XP) , Unity (No.90)
投稿日 : 2020/06/14(Sun) 16:46
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : EHL9MDFrpylHvzp9DiHiO0
参照先 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Functions/Arrow_functions
>>89 ナイトさん
Math.random() * di.denominator < this.dropItemRate()の部分になりますね
Math.random()が0以上1未満の乱数なのでdi.denominatorが文字通り分母です

単純なのは次をGame_Enemy.prototype.dropItemRate = () => Infinity;等でしょうか
そのままコンソールへ打ち込めばソースを改変することなく実行時適用も可能です

武器/防具もその下Game_Enemy.prototype.itemObjectを見るに共通処理です
またJavaScriptについては参照先などのリファレンスをお読みください
記事編集 編集
VSCode、TyranoScriptと来てMZは…プラグイン互換性が死活問題? (No.91)
投稿日 : 2020/07/01(Wed) 21:49
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : rbtJRx2LQiKZtXV9Yio2M/
参照先 https://nodejs.org/ja/docs/guides/debugging-getting-started/
細かな更新ですが、リモートデバッグの対応にNode.jsインスペクタも追加しました
これに伴いポートスキャンを若干修正、9229を既定とし接続できたら打ち切ります
がNW.jsは最新版でも--js-flagsにも効かないので、Electron(Tyrano V5)のみ?
(従来の全列挙で最終ポートを望む場合はボタンをCtrl+クリックすると可能

MV 1.6未満やTyrano V4以前は元々Chrome DevTools Protocolポートを開きますし
MV 1.6以上などNW.js v0.13.0以降はSDK版のコンポーネントが必須〜F12で済むし
用途はTyranoScript V5などElectron系で「--inspect」を与える時くらいでしょうか

もっとも添付画像が示すようにコンテキストがページ(ゲーム)ではありません
DevTools非搭載の場合なら有用そうですが、NW.jsは有効化できない様なので…?

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & TyranoScript, Unity (No.92)
投稿日 : 2020/10/13(Tue) 04:06
投稿者 億り人
ID情報 : HFb9HCdfdSRr5ALlFtvYE/
参照先
あまり知られてないのでオフラインでのMVセーブエディタを添付します
配布フリーでウィルスはありません。
VXからMVまで共通で利用可能です。MZはMVと互換性があるので
同様に使える可能性は高いですが、手持ちでMZ製がないので試せていません

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & TyranoScript, Unity (No.93)
投稿日 : 2021/08/16(Mon) 19:40
投稿者 せら
ID情報 : LwNQrvk2QTMpMdwLYPzqi1
参照先
sceawung◆MH.ms4.V3i2さん、
汎用ARCGameEngineのCTファイルありがたく使わせてもらっています
天結ラビリンスマイスターをCheat Engineを使用して改造している途中なのですが
一括で装備、スキル名などのテキスト情報を取得を出来るのは驚異的でした。
そこで少々お聞きしたい事があります。
現在、探索中の行動状況を改造しているのですが
行動状況の値をABCDEFGHとした場合

A(不明 通常は0)
B(0:通常 1:別行動待機中)
C(0:移動中以外 4:移動中)
D(0:未行動 1:行動済み 8:2回行動のうち1回行動済み)
E(不明 通常は0)
F(0:未行動 1:移動や支援など行動する)
G(1:ユニオンメインキャラ 2:ユニオンサポートキャラ)
H(0:未出撃 3:出撃中)

行動状況の4バイトを特定値で固定化する(00000013や00000023)と
ユニオン組み合わせ変更不可、メイン・サポートの切り替え不可、探索開始前に固定解除しておかないと
編成メンバーがおかしくなる(同一キャラが複数になる等)等の問題があります。

4バイト単位でマスクされた値が格納されているので、1項目4バイトとわかるのですが、
現状ではDの部分のみ固定化できればよいので、一部分のみ固定とし、他の部分を固定しないような事を
汎用ARCGameEngineのCTで行う事は可能でしょうか?(TypeがARCGameEngineのバイナリやバイト等)
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & TyranoScript, Unity (No.94)
投稿日 : 2021/08/17(Tue) 01:13
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : 3.WSYo6cuxff5zDPpWFnI.
参照先
>>93 せらさん
プレーンデータならばBinaryの1ビットを使う所ですが…
左に14bitずれていてUIのオフセット範囲を超える上
マスク値によっては反転するので、やはり専用タイプでしょうか

function bRot32(i, n)
n = n & 31
return i >> n | i << (32 - n) & 0xFFFFFFFF
end
AGEbitFields3 = registerCustomTypeLua('AGEbitFields3', 4, function(...)
local v = byteTableToDword({...})
return bRot32(v ~ readInteger("AUX"), 0x0E) >> 3 & 1
end, function(b, a)
local c = bRot32(readInteger(a) ~ readInteger("AUX"), 0x0E) & ~(1 << 3) | (b & 1) << 3
return unpack(dwordToByteTable(bRot32(c, -0x0E) ~ readInteger("AUX")))
end, false)


組み込みのLua 5.3ではbit32ライブラリが廃止されているため不格好ですが
アセンブラによる現在値取得は面倒そうなので、この様なLuaScriptタイプを追記
ドロップダウンを0:on/1:off(/=改行)等とし、全てのオプションをチェック

といった所が正攻法と考えますが…CEの研究はまだ浅いため、より良い方法があるかもしれません

P.S. テキストテーブルからの列挙はあまり洗練できていないので
試験的だったり故にろくに説明を書いていなかったり…
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & TyranoScript, Unity (No.95)
投稿日 : 2021/08/18(Wed) 03:28
投稿者 せら
ID情報 : LwNQrvk2QTMpMdwLYPzqi1
参照先
sceawung◆MH.ms4.V3i2さん
返信ありがとうございます。
お陰さまで一回行動時は16ビット目、二回行動時は19ビット目を0固定させる事で
探索時のメイン・サブ入れ替えとユニオン組み合わせ変更が可能になり、
戦闘終了時に固定を解除せずとも大丈夫になりました。
本当に助かりました。
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.96)
投稿日 : 2021/08/22(Sun) 23:25
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : 3.WSYo6cuxff5zDPpWFnI.
参照先
RGSS汎用SSGをSpoilerAL修正パッチの追加実装に合わせて更新しました
新機能と言える物はパーティが所持するアイテムの種類変更くらいですが
一部データに於ける項目名の参照先併記を更に強化し分かり易くしました

また項目が常に変数のポインタを追跡し続ける様になり戦闘を跨いでも
データのロードやリセットしても階層を開き直す必要がなくなりました
※VX Aceのハッシュテーブルだけは起動毎に変化するため、再起動後×
文字列項目についても長さが項目生成時に固定される(ALの仕様)


従来必須だったプラグインは組み込み命令とユーザー定義関数で不要に
新文法による展開方式組み替えでメンバ変数を列挙する速度も向上です

8/25
拡張スクリプトも考慮してより広範なオブジェクト名称ヒントを出せるように調整
ついでにUnity汎用CTもクラス名での検索対応、Type(Pointer)Wクリックで再捕捉できる様に
IL2CPP対応用のコードも入ってますが、確かサンプルが少なくて投げた様な…
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.97)
投稿日 : 2021/08/29(Sun) 14:02
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : 3.WSYo6cuxff5zDPpWFnI.
参照先
RGSS汎用SSGへマップ上限拡張スクリプトの対策をしました
実装方式にも依りますが、マップジャンプがフリーズする故
部分的でも対応しないと…初期数までは一覧に出るはず

インスタンス変数が皆無であるオブジェクトのエラーも抑制
2021.0826以降のSpoilerAL修正パッチも必要です
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.98)
投稿日 : 2021/09/03(Fri) 18:15
投稿者 名無し
ID情報 : eHPaZDsv0ixOGN1CTyWf91
参照先
はじめまして、汎用SSG、有り難く使わせていただいております
質問なのですが添付した画像の通りなんですが、一部のゲームにおいてこのようなエラーが出ます、ほとんどのゲームには使えるのですがこのエラーは自力で治せるんでしょうか?無知ゆえご容赦ください。
SpoilerALは先月の最新パッチ導入済みとSSGも最新です。

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.99)
投稿日 : 2021/09/03(Fri) 21:04
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : JvzLDuGhZq9VvRZu8s.xf/
参照先
>>98
「$game_map.map_id」(桃色)については「$data_mapinfos」からリスト生成を行いますが
VX Ace未満は基本的に同変数への"Data/MapInfos.rvdata"読み込みが省略されており仕様です

しかし「rb_global_tbl」さえ展開不能はALかSSGの不備になるものの
VXゲームと見受けられるので、ゲームフォルダのGame.iniを開き
LibraryがRGSS202J.dllとされているか確認してみてください

古いバージョンは手持ちに有りませんでしたのでSSGが対応していません
差し支えなければゲームタイトルを教えて頂けると幸いです
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.100)
投稿日 : 2021/09/03(Fri) 22:39
投稿者 名無し
ID情報 : eHPaZDsv0ixOGN1CTyWf91
参照先
>>99 調べてみたところエラーが出るゲーム全てがLibrary=RGSS200J.dllとなっていました。
ゲームタイトルのほうは
Different Story

ttps://www.vector.co.jp/soft/winnt/game/se491747.html
魔法少女の試練

ttps://www.freem.ne.jp/win/game/8790
他2作は現在非公開になっているようなので控えさせていただきます。
RGSS202J.dllに変更すれば解決できる感じですかね?
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.101)
投稿日 : 2021/09/03(Fri) 23:11
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : JvzLDuGhZq9VvRZu8s.xf/
参照先 https://tkool.jp/support/faq_rpgvx.html#hwdep
>>100
確かに、これらは古いランタイムパッケージライブラリが指定されていますね
仰る通りGame.iniのLibraryバージョンアップで対処するのが良策だと思います
実行ファイルは共通、拡張DLLもスクリプト読み込みなので構成に影響はない筈…

SSG対応も可能でしょうが…古いライブラリにはDEP(データ実行防止)有効下だと
起動段階で落ちるという致命的な脆弱性が有るため、使用しない方が良いでしょう

P.S.
なお参照先の段落ではDEP除外方法や「重要な Windows のプログラムおよびサービスについてのみ有効にする」を案内していますが
セキュリティとしては「次に選択するものを除くすべてのプログラムおよびサービスについてDEPを有効にする」で除外なしが望ましく
外部データにバッファオーバーランを誘発されてしまい任意コードが実行される等のプログラム脆弱性へ嵌まるとしても概ね防げます
(レガシープログラムを考慮してか前者が既定ではありますが、そもそもDEPに引っ掛かるのは不具合です。64bitプログラムでは強制ON)
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.102)
投稿日 : 2021/09/04(Sat) 07:41
投稿者 名無し
ID情報 : CBL6DNlq7Gl3VpmXPxysa1
参照先
>>101 ありがとうございます、今後はRGSS202J.dllに置き換えて使わせていただきます
初心者にもわかりやすかったです!
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.103)
投稿日 : 2021/10/30(Sat) 00:16
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : rGJKNgCKT2Oo7nrlGKXtI.
参照先
Unity汎用CTでbdwgc対応を極僅かに改善(64bitのみ)
Ver差異確認の時間が取れず、検証が不十分なため
そのうち精査しなおす予定…は未定…

11/03 bdwgcでもstatid_data_arrayを参照していたケース(過渡期のmbe?)をmono_domain_add_class_static_data関数の有無によって判定(exe及びct)
2021.2以降についてはVTableへの一覧がメモリマネージャを介すように成っていますが、サンプルに乏しいのでまたそのうち…
P.S. Unity汎用CTの配列要素列挙が極めて非効率だった問題も修正
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.104)
投稿日 : 2021/11/14(Sun) 22:32
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : 1D9NiUl3LVnl5ixV3gr28/
参照先
Unity汎用CTを更新し列挙型の冗長展開を抑制した他
値のドロップダウン候補を型情報から取得する様にしました

機能追加としては以上だけですが、FlagsAttributeなどのカスタム属性情報も取得する為に
Cheat Engine 7.2実装のRemoteExecutorを使用しています(使用関数にて継続スレッドが必須

しかしながら急造らしくx86呼出規約も記憶の彼方か、7.3に於いても32bit対象でクラッシュします
MissingSetupの提供も7.3は忙殺されそうな雰囲気なので、7.2を最低限にし自己修正としました

executeStubにおけるtimeout以降の引数が機能しないのは7.3で修正済み(しかし論理否定によりwaittilldoneというよりasync
またこれを7.2でtimeout=0, async=truewaitTillDoneAndGetResultで回避するのはgrowSharedMemorySizeが死ぬため不可

上記の問題は自己修正コードによりほぼ補正されますが、Vista以降のAPIを呼び出しています
…が近年のmono.dll自体もVista以降のAPIを使っているので問題ないでしょう
またexecuteCodeLocalExが実質的に32bitOS未対応ゆえの代替用独自関数が、
オートアセンブラでSSE2命令を使用しているためPentium 4以降の互換CPUが必要です

ささやかな変更点としては安全確保のためバイト列の固定と文字配列の文字列編集を廃止
桁揃えやソートとの兼ね合いから、ツリー展開状態を文字色で表す事としました
(色変更時に強制再描写が掛かるため更新時は非表示に。※エラーで消えたらプロセスを再選択
AddressList.ComponentByName["List"].beginUpdate()が正攻法っぽいですが、一瞬グレーに染まるので…
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.105)
投稿日 : 2021/12/29(Wed) 12:36
投稿者 名無し
ID情報 : gNtccDuHu1pcfVbFIOkbI0
参照先
1478196008-3.zipのリンクが切れているようなので、再up等いただけると幸いです。
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.106)
投稿日 : 2021/12/29(Wed) 17:27
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : b1Fho1wH4uPRz88NWVuvJ/
参照先
>>105
こちらではリンク切れを確認できませんでしたが
修正箇所がありましたので再アップロードしました

2.「$game_party」と説明するべきところが「$game_player」になっている
3.「Assembly-CSharp.dll」からファイル名が変わっているゲームに非対応

掲示板に添付期限は無かったと思いますし、その辺りは管理者の管轄になりますので
未だダウンロードできない様であれば、サーバーレスポンスは403なのか404なのか
リファラ送信やセキュリティの設定なども確認してみてください
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.107)
投稿日 : 2022/02/04(Fri) 20:10
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : 7XJwhyaJtsIL0DdCShjyZ/
参照先
Unity汎用CTおよびUnityインスペクタ(Monocle)を2021.2以降のバージョンに対応させました
バイナリバリエーションに抜けが無ければ、2022.1辺りまでサポートする筈です
しかし32bitプレイヤーはバイナリからの計算のみで検証していません
また最低要件であるCheatEngine 7.2以外での動作も(圧縮版の一般公開が無くなったため)未検証です


CTでは型名からのインスタンス検索も改善し、単純クラス名のみならず完全修飾名をサポートしました
以前はmono_findClassを使用しており、これは内部的にmono_class_from_nameを呼び出すため
アセンブリを全て走査しなければならない上に、名前空間とクラス名が個別に必要でした

mono_reflection_type_from_nameを直接呼び出す方式に変更したため
「名前空間.クラス名, アセンブリイメージ名」という書式から検索でき
アセンブリを省略した場合はAssembly-CSharp.dllが既定イメージになります
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.108)
投稿日 : 2024/09/12(Thu) 22:52
投稿者 po87ry
ID情報 : OeRqPY3uUMXO2OQtqyDtR0
参照先
ゲーム変更、更新が必要です。
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.109)
投稿日 : 2024/11/11(Mon) 01:10
投稿者 まりも
ID情報 : 4kXlZSBqpVttGr.kKbWPE.
参照先
現在、2016年Unity製と思われるゲームの改造に挑戦しているのですが諸兄にご助力願いたいです。

https://necocan-index.rick-addison.com/bbs/patio.cgi?read=61&ukey=0
のスレッドでベースアドレスの特定に七転八倒しています。

Unity汎用CTが使えず(プロセスロスト?する)、ILspyも上手く使えていません(PEが開けません)。
dnSpyは使えているのですが、僕の知識ではどれがベースアドレスに関連するのか理解できていません。

大変申し訳ないのですが、知恵をお借り出来たらと思います。
何卒宜しくお願い致します。
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.110)
投稿日 : 2024/11/14(Thu) 21:48
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : /eOEqmsX8G2TpLcPAyuUc0
参照先 https://necocan-index.rick-addison.com/bbs/patio.cgi?read=287
近年めっきりゲームをプレイしなくなり浦島状態になって居ります―が


>>109 まりも さん
まずILSpyやdnSpyは通常のPEには役立ちません、PEの皮を被った.NETアセンブリ…
スレッドトップにも書いてあるようにUnityではManagedフォルダ、その中でも
ゲーム固有のコードはAssembly-CSharp.dllに集約されますので、これに使います

UMPEもPE解析に使えはしますが、PEとメモリ上のアライメントは違い
オフセットが異なってきますので、うさみみのデバッグメニューから
モジュール別参照関数表示やモジュールを逆アセンブルが良いでしょう

またSpoilerALにおける[:〜:]はポインタ変換演算子であり、C言語であれば
*(unsigned *)(〜)に相当し、整数値の間接参照(デリファレンス)を行います


体験版もなく検証できませんが、sengokuhime7v114s.exeからUnityは5.3.6
Assembly-CSharp.dllの内容も確認できましたので、玉ねぎさんのSSG経路は
SceneManager.s_Instance->m_dataManager->m_slgData->m_slgDataStruct
mono.dllについては、見受けられませんし同ゲームゆえに更新なしでしょう

+0x1F52CCがmono_root_domainのオフセット、+0x50がstatic_data_array
+0x130がSceneManager、+0x0がs_Instance、+0x68がm_dataManager
これに続く+0x10がm_slgData、+0x0Cがm_slgDataStructの各オフセットです

[:MName::mono.dll+0x1F52CC:][:[:MName::mono.dll::mono_get_root_domain + 1:]:]が望ましいですが
同ゲームでmono.dllが据え置きという事であれば、+0x50共々影響しません
+0x130が第一関門でAssembly-CSharp.dllの静的変数やクラス読み込み順に依ります

添付3に同梱されたnet40フォルダのMonocle.exeでプロセスを選択しOpenProcessボタンを押すと
静的フィールドを持つロード済みクラスが列挙され、SceneManagerのNo×4が0x130に相当します

ざっと見た感じ、SLGData.SLGDataStructのメンバ変数にも追加など見受けられるので
それ以降のオフセットにもズレがあるかもしれません

参照先のNo.2は別ゲームかつ別バージョンのUnityですが、mono.dllのソースから見た辿る経路
Monocle.exeの使用風景など有ります(Unity汎用CTが動かないならこちらも駄目かもしれませんが)


ただSSGの記述が分からないようであれば、これらを参考に修正するのは難しいでしょう
Unity汎用CTが使えれば良いのですが、メッセージも何も出ないならちょっと謎ですね
Cheat Engine 7.2〜7.5で、Unityバージョンが4.6.8や5.5.2の動作確認はしています
mono.dllバイナリの対応抜けでないなら、CEのバージョンやセキュリティですかねぇ?

またダウンロード版で起動認証などがあれば、*.binのプロセスでしょうね
ちなみにSpoierALのヘルプメニューからversionを確認し、試験版の日付なら
SpoilerALプロセス選択ツールなしに対象プロセスの追加からPIDも直接選択できます
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.111)
投稿日 : 2024/11/16(Sat) 12:23
投稿者 まりも
ID情報 : Aw4PtUPKzXxdYXyrtQsmo.
参照先
早速の返信、誠にありがとうございます。
暗闇の中での一筋の光のようで本当に感謝しています。

CTですがCheatengine7.5及び7.4で試しましたが、やはりゲームが落ちてしまいます。
セキュリティソフトの影響も懸念されていたので切って試しましたが結果は同じでした。
ただ、7.4で試したところ以下のエラーを吐きました。

Error:[string "
..."]:708: attempt to perform arithmetic on a nil value

お察しの通りプログラムはド素人ですのでCTが使えるようになれば相談もしやすいので、何かの一助になればよいのですが・・・。

net40フォルダのMonocle.exeに関してはセキュリティソフトの影響で使えなかっただけのようです。
参照スレッドを参考にSSGの経路を辿ってみましたので画像を以下のスレッドに投稿しました。

https://necocan-index.rick-addison.com/bbs/patio.cgi?read=61

ただ、『SceneManagerのNo×4』というのがどれに当たるのか理解できていない状況です。

最後に、ダウンロード版を利用していますのでSSGのprocessをSengokuhime7.binに書き換えたところ、添付画像のような形になりました。
当然アドレスが違っていますので数値を書き換えることはできますが、反映はされません。

どうかもう少しだけお付き合いいただければと思います。

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.112)
投稿日 : 2024/11/16(Sat) 14:15
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : /eOEqmsX8G2TpLcPAyuUc0
参照先
>>111 まりも さん
とりあえず[process]は複数書けますので
[process]<UnityWndClass> *戦極姫7
[process]Sengokuhime7.bin
[process]Sengokuhime7.exe

等としておけば良いかもしれません
それと表示 - 利用モードを「SSGデバッグモード - マウスオーバーを除く」にするとアクセスログを出せます

「No×4」というのはMonocleの左側に表示されているクラスの番号です
これはmono.dll内のmono_root_domain->static_data_array
(各クラスにおける静的変数先頭アドレスの配列)で何番目にあたるかを示し
32bitアプリのアドレスですから4バイト整数という事で、76×4=0x130なので
SSGに記述されている最初のオフセットは変化なしという事になります
その後も(ofs: 0)=0x0、(ofs: 104)=0x68とベースは据え置きですかね

ただ<SLGData+SLGDataStruct>はメンバ変数が恐らく2つ追加されており
[define mi][:[:[:{Base0}+0x10:]+0x0C:]+0x51:1]の0x51にあたるuserDaimyo
ターンの0x52にあたるturn等は8くらい増えてそうなので、Monocleで確認してください
(ただターンくらいはズレても別の値が表示されそうですが、経路にも不備か…?)


Monocleが動くなら同じ経路を使っているので、CTについてはちょっと謎でしたが
CEのバグ回避がcheatengine-x86_64-SSE4-AVX2.exeでのみ不十分だったようです
20時 スレッドトップのUnity汎用CTを~SSE4-AVX2.exe使用時32bit対象でも動作可能に
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.113)
投稿日 : 2024/11/16(Sat) 22:50
投稿者 まりも
ID情報 : 4kXlZSBqpVttGr.kKbWPE.
参照先
返信遅くなって申し訳ありません。

SSGのプロセスは言われたとおりに直しました。

[define mi][:[:[:{Base0}+0x10:]+0x0C:]+0x51:1]については0x51を5Dに
[subject]ターン [  '+' _mem,0x52,1,num,-,%d '+'  ]/現在値/:calc,0x52,1,99,unsignedについては0x52を5Eに
直したところ添付画像のように認識及び編集できるようになりました。

CTの修正もありがとうございます。お陰様で無事起動できました。

これからSSGを十全に動かせるように努力しますが、ちょっと全然分からないのでアドバイス等頂ければありがたいです。

早速ですが、アイテムを弄ろうと思うのですが、0x00,0x1FC-32000000とはどういう意味でしょうか?

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.114)
投稿日 : 2024/11/17(Sun) 00:11
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : /eOEqmsX8G2TpLcPAyuUc0
参照先 https://github.com/SpoilerScriptsGroup/RetrievAL/wiki
ARCGameEngineはもう一つ仮想関数参照する程度で再び汎用化できるけど…
元々ハードコーディング気味で正規な追跡しづいらいし、Unicode文字列もどうすべか


>>113 まりも さん
SSGについてはヘルプメニューのSSGの書き方や追加文法は参照先のTIPsをご覧ください

0x00,0x1FC-32000000は一括トグル項目のチェインファイルですので
HowToSSGの2.3-bundleが項目書式、チェインファイルは2.1-calc toggleのトグルと同じ
オフセットアドレスが0x10なので、0x10から0x20Cまでバイト列32000000を繰り返します

Unityの言語基盤に採用されるMonoは構造体の先頭に
typedef struct {
MonoVTable *vtable;
MonoThreadsSync *synchronisation;
} MonoObject;

が置かれ、値型たるstructや静的フィールドは除き、参照型たるclassのメンバーフィールドは
ポインタサイズ×2のオフセットから始まり、LayoutKind.Sequential属性が指定されていなければ
アラインパディング削減のためソースとは異なる順序で並ぶ場合があります(ツリーの順序はただのABC)
(ポインタよりアライメント単位の小さいbyteやushortが混在すると参照型などが前方に寄せられる筈…)

そして配列型の構造が
typedef struct {
MonoObject obj;
MonoArrayBounds *bounds; // 多次元配列用
mono_array_size_t max_length;
double vector[MONO_ZERO_LEN_ARRAY];
} MonoArray;

で、32bitなら0x10から実体のベクタ配列が並ぶので、埋める値の単純さからしてint[] ItemBoxではないでしょうか

無印は元のSSGが使えるとの事なので、そちらもMonocleで<SLGData+SLGDataStruct>の実働オフセットを調べ
[:[:{Base0}+0x10:]+0x0C:]に続くオフセットと比較すれば、どの変数なのか分かると思います
もっともSpoilerALから頻繁に書き換える必要がなければUnity汎用CTで済ませてしまった方が良い気もしますが
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.115)
投稿日 : 2024/11/17(Sun) 15:42
投稿者 まりも
ID情報 : 4kXlZSBqpVttGr.kKbWPE.
参照先
答えて頂いてありがとうございます。
アイテムのチートは使えるようになりました。

質問続きで心苦しいのですが・・・AD1〜AD4に付いている
+$nmbr*0x04+0x10:
の意味が分かりますでしょうか?
HowToSSGを読んでも参照先のTIPsを読んでもnmbrについて書かれていないようで・・・

それから
[replace]_0x[!$Val*0xA0!]=>tmp;[:[:[:[:{Base0}+0x18:]+0x08:]+0x50:]+$tmp+0x10:2]=>nmbr;{AD1},ssl->battle_uname
の中で+0x50は80のオフセット値にあたると思うのですが、monocleで見たところ80という値のオフセットは存在しませんでした。
この場合どのようなことを考えられるでしょうか?


最後に――
最近ゲームをされていないということで
https://necocan-index.rick-addison.com/bbs/patio.cgi?read=827&ukey=0
健全ですが、こんなゲームもあるようなのでお知らせしておきますね。
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.116)
投稿日 : 2024/11/17(Sun) 16:50
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : /eOEqmsX8G2TpLcPAyuUc0
参照先
>>115 まりも さん

$nmbrは任意の変数ですから、変数名を探した所で解説には載っていません
書式的にはHowToSSGの「A-アドレス」にある「$変数名」「=> 変数名」がこれに当たります
またSpoilerAL修正パッチは通常の左辺代入「=」や$を接頭しない変数参照にも対応します

まさに引用された[replace]{AD1}を参照している直前で代入していますね
それから[:[:{Base0}+0x10:]+0x0C:]ではなく[:[:{Base0}+0x18:]+0x08:]なので
参照先が異なりますが、m_ksnData->m_ksnDataStructをご覧になっていますか?
2バイト値を6回という事なので、ushort[] m_butaiushort[] t_butaiかと思います
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.117)
投稿日 : 2024/11/17(Sun) 22:03
投稿者 まりも
ID情報 : 4kXlZSBqpVttGr.kKbWPE.
参照先
成程、任意の変数というのもあるのですね。

添付の画像(無印1.1.4)には80のオフセット値は無いんですよね。
m_butaiとt_butaiはあるのでそれが臭いということですよね。
2バイト値を6回というのはSSGの何所にあたるのでしょうか?

お手間を取らせてホント申し訳ないです。

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.118)
投稿日 : 2024/11/17(Sun) 23:05
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : /eOEqmsX8G2TpLcPAyuUc0
参照先
>>117 まりも さん

:2]が4バイト参照ではなく2バイト参照を示す部分で
[group]battle_rpt_a」を「[repeat]ssl->battle_rpt_a,0,6,1」で呼び出してるので6回です―が
よく見ると繰り返し幅が0xA0に加え、KsnDaimyoDataStructが値型なので間違いを申し上げました
値型(ValueType、ソース的にはstruct)の場合、別アドレスへの参照ではなくフィールドに埋め込まれているので
そのofs以前になるenemyDaimyoDatatype:の値を左側に、atの値を右側に入れ右側でエンターする所ですが…

SSGからすると先頭に2バイト整数をもち要素サイズが0xA0のstruct配列が予想されるので
この時点でKsnDaimyoDataStructが4バイト拡張されており、それ×2既にずれているのでしょう
これに該当するのはKsnBusyoDataStruct[] playerBusyoDataKsnBusyoDataStruct[] enemyBusyoDataかと思います

KsnBusyoDataStructも恐らく拡張されているので、ステップサイズは0xA0より大きい筈です
Monocleは配列の詳細を吐けないので、CTで同箇所まで辿り、要素間のアドレス差を見るのが良いでしょう
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.119)
投稿日 : 2024/11/20(Wed) 00:49
投稿者 まりも
ID情報 : 4kXlZSBqpVttGr.kKbWPE.
参照先
すみません。
私事ですが、仕事が立て込んでおりまして返信遅れます。
お手数お掛けしながら申し訳ないです。
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.120)
投稿日 : 2025/01/07(Tue) 00:43
投稿者 まりも
ID情報 : 0ucKVhYRXAG.dH28hbh5F1
参照先
ご無沙汰しております。

この度、無印の方でもSSGが使えない(戦闘の件)ことが発覚し、これ以上は限界かなぁと思っている次第です。

お陰様で自勢力の武将とアイテムを弄れるようになったのでゲームとしては十分楽しめると思いますし・・・。

それはそれとしてなのですがsceawung様はUnreal Engineの解析はされていますでしょうか?

次のゲームを改造する際にお知恵をお借りできるのでしたら、大変心強いのですが・・・。

記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.121)
投稿日 : 2025/01/07(Tue) 01:52
投稿者 sceawung◆MH.ms4.V3i2
ID情報 : KcO0.huBxkF1pEHy7NO.u/
参照先
>>120 まりも さん

残念ながらいわゆる洋ゲーライクというか3D3Dしたものは性に合わず
コンシューマーゲームからも離れてしまい、それらの派生も含め
Unreal Engine製のゲームに触れた覚えが…たぶん無いと思います

またAGEは少し毛色が異なるものの、RGSS、MV/MZ/Tyrano、Unityなどは
メモリ経路が安定、あるいは基盤がオープンソース、APIを外部から呼び出せる等
成果を共有しやすいエンジンで、そういった物しか掘り下げて解析していません
あとはJScript.dllを利用しているSRPG Studioくらいのものでしょうか

Dhaosさんの投稿などを拝見するに、あまり共用できそうには見えず
C#など.NETが主でも無さそうですが、コンソールコマンドなど汎用手法は有り…?
如何せんUnreal Engineに関しては全くの素人なので、お力には成れなそうです
記事編集 編集
Re: 汎用【改造 投稿】ARCGameEngine (e.g. エウシュリー), RPGツクールXP+VX-Ace (a.k.a. RGSS) / MV & MZ & ティラノスクリプト, Unity (No.122)
投稿日 : 2025/02/07(Fri) 23:42
投稿者 まりも
ID情報 : NXWe3XmjyHA39Gityj7AL0
参照先
返信遅れて申し訳ないです。
冬場は体調崩しやすくていかんですね。

>>121 成程、あまり共通性(?)は無いのですね。
私もUnreal Engineは全っ然分からなかったので、うさみみで数値をポチポチいじっています。

いずれにしても今回の一件、助けて頂いて本当にありがとうございました。
今後もAGE作品やツクール系Unity作品でお世話になる事も有るかと思いますので、その際は懲りずに構ってやってください。
体調崩した私が言うのもなんですが、寒いのでお体に気を付けてくださいね。
記事編集 編集
件名 スレッドをトップへソート
名前
メールアドレス
URL
ファイル添付


暗証キー
画像認証 (右画像の数字を入力) 投稿キー
コメント

- WEB PATIO -