RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

Web制作 Meisyo

[Meisyo] ver.0.20(a)更新情報

投稿日:2019年10月18日 更新日:

Meisyoでは10月20日にver.0.20(a)として下記アップデートを行いました。かなり大がかりな変更も含まれているため、詳細に報告いたします、

安定し次第、0.20(b)に移行します。
安定するまではバグが出る可能性があります。バグ等はご連絡ください。
追記 大きなバグ等は発生していないため、11/1にアップデートを行った際に0.20(b)に移行します。

  1. 自動練習の追加(手動練習の廃止)
  2. バランス再調整(速球投手の地位向上)
  3. 練習試合のランキング変更方式の変更
  4. 各種追加

10/15まで行ったアンケートの結果も併せて公表しました。
多くのご意見のうち、可能な範囲で今回アップデートに反映しています。
今後のアップデートにも反映させる予定です。

自動練習の追加(手動練習の廃止)

手動で練習を行う方式から、行いたい練習を指示して自動で練習を行う方式に変更しました。指示は24時間有効で、練習途中での追加指示が可能です。

練習が指示されていない(または指示時間が切れた)場合は、メイン画面にて自動でポップアップ表示されます。練習状況の確認は、練習状況のNewsから「練習実施中…」のリストをクリックしてください。

1日あたりの経験値獲得量現行とほぼ変わりません。行いたい練習を行っている選手には+20%の経験値補正がかかります。その他の選手には補正はかかりません。

1日あたりのアイテム獲得期待値0.3(気合の塊のみ)から2(気合の塊、プロキュア30、モード5換算)へ増加しました。

加えて、アイテムが自動獲得になったためアイテム予備倉庫機能を追加しました。獲得アイテムがある場合のみ、練習指示状況の下に表示されます。(下記参照)
練習で獲得したアイテムは予備保管庫(10個、プレミアムアカウントチケット使用中で15個)に入れられ、保管庫からあふれたアイテムはすべて削除されます。そのため、獲得状況を頻繁に確認したほうがより多くのアイテムを獲得できるようになります。なお、予備倉庫が満タンになっていても経験値獲得には影響しません。

頑張れば少し差がつく程度ですが、バランスを考えて調整していきたいと思います。

バランス再調整(速球投手の地位向上)

速球投手が他の投手に比べ相対的に打たれやすかったので調整しました。
具体的には速球(基礎値+育成値+強化値)によって打者のスイングスピードがランダムで低下するようにしました。
※この調整は投手の能力に依存し、打者の能力には依存しません。
※速球投手以外の投手にはほとんど影響しません。

大きな変更としては、打者スイングスピードが低下したため被HR率が下がり、被打率(WHIP)等も低下します。

被HR率

防御率

WHIP

計算方式としては、スイングスピードが減少処理(100%→N%へ変化)されます。
Speed_S(SP=106): Mean…75.95%
Control(SP=32): Mean…98.41%
Speed_A(SP=100): Mean…80.64%

計算式は以下の通りです。

$G['bt_swsp_mn'] = (1.0373 ** $G['pc']['S_p_sp']) * mt_rand(0, 100) / 100; # 減少量
$G['bt_swsp'] *= (100-$G['bt_swsp_mn'])/100;

※高ければ高いほど打たれにくいように調整するため、指数関数を使用しています。

投球を1,000回実施すると以下のような分布になります。
mt_rand(等分布)を使用しているため、等分布します。

変更理由

「高校野球の華、速球投手が打たれやすくてどうするんだ・・・?」という思想の元変更。
全ての能力値にそれぞれ意味があるようにしたいと考えています。(物理計算をチューニングするのは難しい)

これでゲームバランスの大きな調整は終わった、と思いたい・・・。
なおバランス調整が終わった後、イベントとしてたまーに現在は木製バットですが金属バット化して超打高な月を作ったり、常に雨でボールが転がりにくい月を作る予定です。

練習試合のランキング変更方式の変更

練習試合レートが勝利時に蓄積される形式に変更されました。引き分け・負けても減りません。シーズン開始時にリセットされます。
なお、報酬形態も変更しました。シーズン1勝または+50ptごとに報酬が増加します。

変更理由

「頑張った人のチームが上のリーグに行って報酬を多く獲得してほしい。何もしない人は落ちるべき。」という思想の元変更。
今までは強いチームが上に行って、相対的に弱いチームが下に行っていた。
弱いチームの人は何回練習試合をしても、報酬をもらえなかったため。
1回でも勝てば報酬が増えるので、練習試合に挑戦する意味を持たせたかった。

もちろん強いチームは勝ちやすいので戦えば上位に行きやすい。
シナリオも経験値、報酬がおいしい(優勝でプレミアムアカウントチケット)のでどっちにするかーって話ですね。

各種追加

アンケートでのご意見を取り入れ、いろいろと追加しました。

アップデートに追加済

  1. 全高校野手・投手成績比較
  2. 便利(だが打たれにくい投手の傾向は発見できなかった…)

  3. 公式戦歴代優勝校、トーナメント表
  4. トーナメント表は結果のみ表記

  5. 能力値の説明
  6. 育成情報で公開。
    必要があれば計算式も表示します。

  7. スタメン変更方式の変更
  8. これまでは1人1人切り替える必要があったが、直観的に使用できるようにクリックのみ変更可能に。
    割と便利になった気がする。

  9. 成績指標の追加
  10. UZR等は1球ごとのログを取らないと難しそうなのでやめておく。(以前の試合でのエラー頻発の原因…コードを見直したらできそう)

  11. 修行の表示改良
  12. 修行前に修行後のLvとExp状況を見れるように変更。

  13. 選手の手動LvUP
  14. EXPがLvUP必要以上にある場合(リセット使用時、修行時等)、LvUPをカード詳細のLv[+]から可能に。

今後追加予定

     

  1. 連合戦
  2. だいたいの仕様:1か月1回、エントリーした監督たちを(だいたい同じくらいになるように)ランダムに配分した連合を作り、それで5日のリーグ戦を戦う。参加者、優勝者には賞品あり。毎月5-10日エントリー、11-15日チーム発表・16-20日連合戦21日結果発表。
    連合は3名(以下、連合メンバーと呼称)を基本にし、チームメンバーには各高校から各6人の選手をエントリーします(2名の場合は各9人)。各高校からのメンバー選出は当該高校の監督しかできませんが、連合チームの組替え・采配は連合メンバーなら誰でも可能とします。そのため、チャットでのコミュニケーションを取りながらチームの構成を考えると良いでしょう。これまでとは一味違ったMeisyoをお楽しみください。

  3. バント
  4. 高校野球では当たり前に使われているが、一番難易度が高そうなので待機中。
    物理計算にバントを入れて、成功率をどうチューニングするかが問題。

  5. 練習方法のバランス再調整
  6. 投球技術がバランス悪い(2種UPのみ)ので。
     

  7. スキルLv・スキルLvUPの実装
  8. たぶん同レアリティのスキルであればUP可能になる。気合の塊と同じ感じ。UP幅は+1~2%/Lv程度になる予定。
     

  9. マイナススキルの追加
  10. 選手にはそれぞれ苦手なことがある

  11. 挑戦相手の追加
  12. 実装済み:守備、先発、打撃(ミート型)
    中継ぎ(体力とは何かLvで長く使えない)、走塁+打撃(守備は死んだ)、パワー、肩(キャッチャー想定)の追加を予定。

アンケート結果

実施フォーム(終了済)

投票順(有効票14)
・練習(挑戦キャラクターの追加)3
・UI・UXの追加2
・采配機能の追加2
・各種記録閲覧可能に1
・ゲームバランス調整(上限解放)1
・ゲームバランス調整(不得意スキルの追加)1
・その他新要素等1
・その他1
・公式戦(表示追加)1
・自治会及び対抗戦の追加1

色々なご意見ありがとうございました。
データだけではどうにもならない部分が多いにあるので、参考にしていきます。
また、直接言っていただいた場合は可能であれば対応します。

-Web制作, Meisyo

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

[Meisyo]速球の地位向上

[Meisyo]ビッグデータから学ぶ試合の基礎設計4から早4か月。 「速球の上方修正してほしいな」というコメントが届きました。 すみません! 制球に比べ、速球は蔑ろにされてきたことはわかっております。 …

no image

[PHP]まとめ読みをPSRで改良する(3)

(2)の記事から「PDO」を使い、データの通信をオブジェクト化しました。 password_hashを使い、パスワード処理の暗号化も行いました。 PDOを導入する一番の理由は「mysql_query」 …

スッキリわかるSQL入門 第2版 題材A 問75

回答が非常に長い気がするのはなぜだろうか。 /* 自己結合を用いた場合 */ SELECT DISTINCT K1.名義, K1.口座番号, K1.種別, K1.残高, K1.更新日 FROM 口座 …

Python可読性高すぎてすごい

コード ちょっと詰めて書いていますが year = int(input("あなたの生まれ年を西暦4桁年で表記してください:")) eto_list = (‘子’, ‘丑’, ‘寅’ …

[Meisyo] 雑記20200731

今考えていること ユーザー数増加は続けたい ここ2週間の施策でDAUが20%くらい増加しました。 コメントいただいた方、ありがとうございます。 Twitterでコメントを頂くこともありました。 一時期 …