なるほどえたきちのブログじゃねーの

チラ裏雑記帳

ポケモン過去作の解析とか乱数調整とかそこら辺。不定期更新。

作ったツールなど

何か気が向いたので、適当に作ったツールを纏めてみます。
ツール置き場(Google Driveに飛びます)

ハックロム開発用

ValzHex (バイナリエディタ)

開発言語 : C#

  • C#で多分初めて作ったツール。
  • バイナリエディタに関して周囲ではStirlingが一般的に多く使用されていたが、強制終了等のバグが多く微妙に不便だったので作った。
  • UI/基本機能はStirlingに搭載されていたものを参考に、ハックロム開発においてそれなりに使いそうな新機能を手当り次第適当に突っ込んだ。
  • デザインが陰湿なオタクっぽいので気に入っている。

追加した記憶が残っている機能は以下の通り。

f:id:BZL:20200623191921p:plain

GBA General Compressor (画像導入ツール)

開発言語 : VB.Net

  • プログラミングに触れてから多分初めて作ったツール。
  • 制作期間は1-2日くらい。
  • 既存の圧縮画像導入ツールが揃いも揃ってなんか致命的なバグを抱えていたので作った。(詳細はこちら)
  • LZ77圧縮アルゴリズムで参考になりそうなものが見つからなかったのでフルスクラッチで頑張った記憶がある。
  • 結果として、何かよく分からないが最高の圧縮率と解凍バグ回避を両立させることができた。

f:id:BZL:20200623194459p:plain

PokeDataGenerator (個体情報作成ツール)

開発言語 : VB.Net

  • ハックロムの各種データ拡張に対応した手持ちデータ作成ツールを要求されたので作った。
Trainer Edit (トレーナー情報編集ツール)

開発言語 : C#

  • 各種データ拡張に対応したトレーナー情報編集ツールが欲しくなったので作った。
  • シンセの代替品にできるように機能拡張する予定。
Space check

開発言語 : C#

  • 空き領域を検索してリスト表示するだけのツール。
BINtoIPS

開発言語 : VB.Net

普通にゲームを楽しむ為のツール

SW Seed Calculator (レイド乱数Seed検索ツール)

開発言語 : C#, C++

  • 8世代乱数調整が盛り上がっていたのでノリで作ったツール。
    レイド乱数用の初期Seedを検索できたりできなかったりする。
  • 学歴の都合上数Ⅱまでしか履修していないので検索処理の実装に滅茶苦茶苦労した。
  • 巣穴リストやGPU検索等の機能を1番初めに実装したツールだったりした気がする。(今となっては殆どのツールにある機能だけど)
  • 検索速度に拘りを持っていた時期があったので4連続個体値等でも現実的な時間でSeedを求められるようになっている。
  • もう少し検索処理を速くする案がいくつかあるのだが、再度数学とバトルしたり慣れないアーキテクチャアセンブリコード書かされたりしそうなのでまだ手を付けていない。
  • リスト表示機能は実装していないが、夜綱氏の8denSearchと機能連携させる形で対応している。→8denSearchの紹介記事

f:id:BZL:20200623201314p:plain f:id:BZL:20200623201418p:plain

TIDFinder (エメラルドID調整ツール)

開発言語 : C#

  • 乱数調整してるオタク共の集落に首を突っ込んだら「エメラルドのID調整は不可能」と色々な所で言われていたので作ったツール。
  • 実際の所、調整できないことはないが滅茶苦茶難易度高い。
  • 使い方とかの解説記事はこちら。

f:id:BZL:20200312221346p:plain

CCTimer (タイマー)

開発言語 : C#

  • トロデザインなフォームで何か作りたかったので突貫工事で制作した。
  • EonTImerの丸パクリ。

f:id:BZL:20200312221907p:plain

NX Macro Controller (Switch用画像認識マクロ管理ツール)

開発言語 : C#

  • OpenCVを使った何かを作ってみたかったので作った。
  • 作ったマクロを外部ファイル保存して他人にバラ撒くことができる。
  • 操作の記録機能や入力用フォーム等を用いて、GUI上の操作だけである程度自由にマクロを作ることができる。
  • ポケモンに関して言えばこれより良いツールいっぱいありそう。

f:id:BZL:20200120155920p:plain

用途不明

334Timer (タイマー)

開発言語 : C#

  • 3時34分に「334」とツイートするアレを高い精度でやりたかったので作った。
  • 目標の日付とミリ秒単位のズレを入力することでいい感じに時報ツイートを行える。
  • 慣れれば±8msくらいで大体安定する。