忍者ブログ
他者の解析結果を適当にパクって、さもオリジナルであるかのようにハックロムをリリースする blog 。とりあえず、 FC 版のファミスタだけです。悪しからず。
[11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

過去の記事はこちら。 → Part 1 Part 2
このたび、あいす氏にはこの場を借りてお礼を申し上げます~。

現状では以下のようになっております。


(いむどいっく版)

0x13323 : 20 81 BF
0x13F91 : 84 25 20 1B EB 29 07 65 25 A8 C8 C0 0D 90 02 A0 08 C0 0D 60

デフォルトで選択される選手番号に数値を足す方式を採っています。
最大で 07h が加算されるため、 0D 以上の時は強制的に 08 になるようにしています。
選択される選手を先頭の 4 人に限定すれば、 6 バイトほど短縮できます(たぶん)。


(あいす氏版)

0x1331F : 20 81 BF 20 1B EB 90 03 20 86 BF 8C E4 06
0x13F91 : B1 23 D0 01 60 C8 C0 0D 90 F6 A0 40 60

あいす氏版は、代打選択時にキャリー分岐で本来の選手の次の未出場が選択される仕様(本人談)になっています。
実際に適用すると、未出場の 1 人目または 2 人目が選択されるようになってます。
おそらく、拙作のルーチンより安全だと思います(笑)。


気が向いたら単独でパッチを作るかも知れません~。


PR
前回の続き。

直前の投稿に対して、あいす氏から直々にコメントを頂いたので、それを参考にして書き直しました。

今回は、最終的に選択された「選手番号」に数値を足してみました。
正確には C8 を省略したから「選手番号 - 1 」に足してる ... つもりです。
やはりオリジナルと同じように C8 を加えました。


 Y からメモリにストアする時に使った $25 は当てずっぽうです(笑)。

あと、導出された「選手番号」が 0D 以上なら 08 になるようにした ... はずです( C0 0D 90 02 A0 08 の部分)。

ちなみに、選手の数を増やしたり、スタメンと控えを入れ替えたりする改造をしている人は、さらに手直しする必要があると思われます(たぶん)。


これはこれで まだ 穴があるような気がしますが ... 。


0x13323 : C8 C0 0D => 20 81 BF

0x13F91 : 84 25 20 1B EB 29 07 65 25 A8 C8 C0 0D 90 02 A0 08 C0 0D 60



求む多重ハッキング(笑)。


続きはこちら → Part 3
先日以来、 5 ~ 6 年遅れでようやくプログラムをいじるようになりました。
と申しましても、掲示板にて公開されているルーチンとかを参照してゴチャゴチャやってるだけですが。

これまで、内部防御率 / FF ( = 防御率 25.50 )の確率で顔色が悪化するようにして、さらに顔色の違いで条件を分岐して左右の変化球を無効にしたりしてます( ← こちらは近日公開です。)。


さて、本題。


 COM の代打選択をランダムにする事は一応できたのですが、 CANCEL を何度か繰り返す事があって実用的にはどうなのさ? という状況です。

結論から言うと、何とかならないの? という話です。


現状の改変箇所は、こんな感じです。
最も単純な初期型です。


0x13319 : 85 23 86 24 A0 00 B1 23 => 20 81 BF EA EA EA EA EA

0x13F91 : 85 23 86 24 20 1B EB 29 0F A8 B1 23 60
(使える空き地がここしか無い ... 。)


 20 1B EB で乱数ルーチンにジャンプさせ、 29 0F で 00 ~ 0F の値をランダムに取得し、値を A8 で Y レジスタにコピーしております。

しかし、ここで問題があります。
下記の「 CANCEL 無限ループ」を避けたいのです。

ところで、 0x1331E の 00 を 00 ~ 0F に書き換えると、以下のようになります。


# Hex 代打選択
1 00   1 人目
2 01   1 人目
3 02   1 人目
4 03   1 人目
5 04   1 人目
6 05   1 人目
7 06   1 人目
8 07   1 人目
9 08   1 人目
10 09   2 人目
11 0A   3 人目
12 0B   4 人目
13 0C   5 人目
  0D   CANCEL 無限ループ
  0E   CANCEL 無限ループ
  0F   1 周シュウして 1 人目


  1. ベンチ入りの野手は #9 ~ #13 で、 08 ~ 0C だけを入力したい。

  2. 代打を使うたびに人数が減ってゆき、上記の 1 だけだとまた CANCEL 無限ループが発生する(該当する選手がいない?)ので、人数減に対応したい。

  3.  0x13310 の近傍( Bank 09 と 0F )に空きが無い為、拡張するなら他の箇所を使わないと対応不可。

さて、どうしよう ... 。
初心者だから何か致命的な勘違いをしているのかな ... ?
今回は、おもに「制球ミス」と「顔色の変化」です。
おもっきし二番煎じです(笑)。

ダウンロード ( Famista_beta140429.zip )


< 変更点 20140429 >
  • 内部防御率が悪いほど制球ミスをする。
    分母は FF (防御率 25.50 相当)。

  • 制球ミスおよびスタミナ 0 で顔色が悪くなる。
    ついでにスタミナ 0 の時の投手のグラフィックを再び復活させた。

  • 制球ミスした下変化やまっすぐは、発動してもバットに当てられる。
    ワンバウンドしたフォークを打たれる画は、なかなかエゲツナイ(笑)。

  • その他(選手名の訂正など)。

< 分かっている問題点 20140429 >
  • 制球ミスしても変化球の値や、打たれた時の飛距離は変わらない。


というわけで、唐突に 2005 年版を加えてみました。
パ・リーグの順位はペナントレースを重視してあります。
ついでに試合数が違うので表示データを 146 試合制に換算済みです。

ダウンロード ( Famista_beta140322.zip )


< 変更点 20140322 >
  • 先発が KO される失点を 5 から 4 にした。

  •  COM の救援投手に打席が回った時に、強制的に代打を送るようにした。
    失点した COM の先発投手に 5 回あたり以降に打席が回った時に、代打を送られてしまうのは気にしない(笑)。

  • 肩の強さを微調整した。

  • 選手選択画面における好調の表示と、投手のスタミナ切れの絵を再び廃止した。

  • その他。



 ↑ 2005 年版のおまけチームに 2001 年の S と Bu を入れてみました。


プロフィール
HN:Yimdoic (いむどいっく)
性別:男性
自己紹介:
ROM 本体はありません。どうにかして自力で入手して下さい。
ここでは ips ファイルを扱っております。これについても各自で調べて下さい。
@Yimdoic on twitter
カウンター
カレンダー
04 2024/05 06
S M T W T F S
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
最新CM
(11/28)
阪神日本一(返信済)
(11/24)
(04/08)
無題(返信済)
(05/21)
WBC版(返信済)
(05/17)
最新TB
ブログ内検索
バーコード
Powered by ニンジャブログ
Designed by 穂高
Copyright © IPS factory All Rights Reserved
忍者ブログ / [PR]