2017年2月22日水曜日

smartdさんからの Currently unreadable (pending) sectors のお知らせ

寝る間際、サーバ上で長時間かかる処理をお願いしようとログインしたところ、smartdさんからコンソールに恐ろしいお知らせが。

1 Currently unreadable (pending) sectors
1 Offline uncorrectable sectors

うは、ハードディスク終了のお知らせですかぁ。
messagesにはFeb 21 04:53:20が記録の初出でしたので、昨日の日次バッチの時に不良セクタに当たって検出された、というところでしょうか。
まず現状のsmart値はどうなのよ、と聞いてみると
# smartctl -A /dev/sda
(略)
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
(略)
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       1
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       1
だそうで。
仕方がないので、まずはとりあえずどこが直せないセクタなのよ、とお伺いをたててみます。
# smartctl -t short /dev/sda
指定された待ち時間まで待ってから結果を確認すると、
# smartctl -l selftest /dev/sdasmartctl 
(略)
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Short offline       Completed without error       00%     19219         -
# 2  Extended offline    Completed without error       00%       233         -
ログ#2はHDD導入時のチェックの名残ですね、たぶん。
・・・エラーなしでチェック完了してしまいました。むむむ。

それにしてもたったの800日でエラーを吐くなど軟弱な野郎、じゃなくてHDDだわいとこぼしつつ、時間がかかるので嫌なのですが、今度はlongチェックをかけてみます。
(まあ軟弱も何もないんですけどね、機械相手ですから)。
# smartctl -t long /dev/sda
やっぱり時間がかかりますが、sdaは起動用でして、こんなこともあろうかと特に小さいサイズのドライブを使用していたので1時間弱で終了しました。その結果は、
# smartctl -l selftest /dev/sda
(略)
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed: read failure       90%     19219         5776104
# 2  Short offline       Completed without error       00%     19219         -
# 3  Extended offline    Completed without error       00%       233         -
今度はエラーな場所が検出されています。5776104だそうです。
以下、ファイルシステムによって違いが出てしまいます。このケースはext3ですのでご注意ください。
さて、このケースの場合、sdaはboot、root、swapにパーティションを切っているので、fdiskでどのパーティションに含まれているのか調べてみます。
# fdisk -lu /dev/sda
Disk /dev/sda: 82.3 GB, 82348277760 bytes, 160836480 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x0001f066
デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048   152578047    75776000   83  Linux
/dev/sda3       152578048   160835583     4128768   82  Linux swap / Solaris
/dev/sda2は rootファイルシステムで、そこにあるよーです。ちっ。
しょうがないので、念のため該当するLBAがどこにあるかを調べます。
その計算のためにもう一つパラメータが必要なので、tune2fsでパーティションのブロックサイズを求めます。

# tune2fs -l /dev/sda2|grep -i "block size"
Block size:               4096
4096だそうです。
で、パラメータがそろいましたので、
(エラーブロックー開始ブロック)*セクタサイズ/ブロックサイズ
の公式を手動で計算すると
(5776104 - 1026048)*512/4096 = 593757
となりました。

手動じゃ心もとないねえ、実際どうなのよ、とbadblocksコマンドに聞いてみます(もっと自分に自信を持とう!)。
# badblocks -b 4096 -v /dev/sda2
Checking blocks 0 to 18943999
Checking for bad blocks (read-only test):
593757
done
Pass completed, 1 bad blocks found. (1/0/0 errors)
おんなじ数値をお示しになられたようです。
なお、badblocksコマンドはデフォルトではブロックサイズが1024が前提なので-bコマンドでサイズを指定することをお忘れになると残念なことになります。

で、ここが何かに使われているかをチェックします。
# debugfs /dev/sda2
debugfs 1.42.9 (28-Dec-2013)
debugfs:  testb 593757
Block 593757 not in use
使ってないよと言っています。
さらに別のdebugfsのコマンドで念を押してみましょう。

debugfs:  icheck 593757
Block Inode number
593757 <block not found>
不幸中の幸い、未使用だということがわかりました。(ブロックが使われている場合は<block not found>ではなくinodeの値が出てきます。その場合、どのファイルが使っているか調べる場合は ncheck inodeの値で調べられます)。

まあ、ここまでわかりましたので、該当ブロックを0で埋め立てます。
もちろんddコマンドで直撃です。
釈迦に説法ではありましょうが、コマンドは簡潔ですがパラメータを間違えたとたんにもっとトラブルを呼び込みますので十分ご注意ください。
ブロックサイズとsda2の先頭からの位置を指定して

# dd if=/dev/zero of=/dev/sda2 bs=4096 count=1 seek=593757
1+0 レコード入力
1+0 レコード出力
4096 バイト (4.1 kB) コピーされました、 0.000472186 秒、 8.7 MB/秒
これでおしまい。
さて、ほんとになんとかなったんかいな、と確認してみましょう。

#smartctl -A /dev/sda
(略)
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
(略)
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
(略)
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       0

198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
・・・何だか知りませんがこのケースの場合、セクタ再配置数が0なのに保留されたセクタも修復不能セクタも0になってしまいました。
ま、とりあえず smartctl -t long /dev/sda で再度チェックします。
完了を待って再び結果を見てみます。
# smartctl -l selftest /dev/sda
(略)
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%     19221         -
# 2  Extended offline    Completed: read failure       90%     19219         5776104
# 3  Short offline       Completed without error       00%     19219         -
# 4  Extended offline    Completed without error       00%       233         -
1 of 1 failed self-tests are outdated by newer successful extended offline self-test # 1
エラーを出さずにチェックが完了しています。
smartの各パラメータを見てみると、
# smartctl -A /dev/sda
(略)
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   100   100   016    Pre-fail  Always       -       0
  2 Throughput_Performance  0x0005   167   167   050    Pre-fail  Offline      -       166
  3 Spin_Up_Time            0x0007   118   118   024    Pre-fail  Always       -       167 (Average 170)
  4 Start_Stop_Count        0x0012   100   100   000    Old_age   Always       -       120
  5 Reallocated_Sector_Ct   0x0033   100   100   005    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000b   100   100   067    Pre-fail  Always       -       0
  8 Seek_Time_Performance   0x0005   136   136   020    Pre-fail  Offline      -       31
  9 Power_On_Hours          0x0012   088   088   000    Old_age   Always       -       84758
 10 Spin_Retry_Count        0x0013   100   100   060    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       62
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       714
193 Load_Cycle_Count        0x0012   100   100   000    Old_age   Always       -       714
194 Temperature_Celsius     0x0002   253   253   000    Old_age   Always       -       21 (Min/Max 13/49)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0022   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0008   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0

・・・再配置はやっぱり0のままです。
まあ、買い替えですね。とりあえずサーバを停止して組み付けるのがだるいので時間ができるまではほっとくことにします。

心配なら(そして許されるなら)syncの呪文を唱えて再起動してみるとよいです。

どうもお疲れさまでした。

2017年2月20日月曜日

unityでのGoogleMobileAdsパッケージインポート時のエラー

恥の記録です。

以下、Google Mobile Ads Unity Plugin v3.2.0の場合です。

unityでandroid向けにAdMobを仕込もうとしてこちらからGoogleMobileAds.unitypackageをインポートしたときに
Unable to find the Android SDK manager tool.  Required Android packages (extra-google-m2repository, extra-android-m2repository) can not be installed.  Android SDK path not set.  Set the Android SDK property using the Unity "Edit > Preferences > External Tools" menu option on Windows or the "Unity > Preferences > External Tools" menu option on OSX. Alternatively, set the ANDROID_HOME environment variable
とか説教される場合があります。
エラーメッセージではSDKが見つからないだのパスを正しく指定しろだの環境変数を設定しろなどなんだかんだと仰せになっておいでですが、全部大嘘ですのでご注意ください。

実際には(unityではなく)Adndroid SDKのGoogle Play Servicesパッケージがインストールされていないと怒られるわけですが、さらにGoogle Play Servicesには2つのリポジトリパッケージがインストールされていなければなりません。
つまるところ、SDK ManagerでExtras から以下の三つをインストールすることで解決します。

  • Android Support Repository
  • Google Play services
  • Google Repository

実は公式(英語版)のページにはAndroid Support Repositoryを入れろという記載はないのですが、実際には必要です。
まあ、そもそも日本語版の同ページにはパッケージのインストール元の記述すらありませんが・・・。

わかった後でエラーメッセージを見返してみると、extra-google-m2repositoryとextra-android-m2repositoryが見つからないよ、と仰せなので、まあこれがそれぞれのリポジトリのパッケージなんだろうなと。

まあ、こんな程度で躓いているような情けないありさまです。

2017年1月29日日曜日

Theme Hospital + CorsixTH 0.6 ゲームテキストの和訳

誰からも望まれていませんし、例によって需要もあるとは思えませんが、Theme Hospital + CorsixTH 0.6 ゲームテキストを日本語に訳してみました。
  • 日本語化済みファイルはこちら
    クリックいたしますと、ja_JP.lua というファイルがダウンロードされます。
    ご利用にはファイルを CorsixTH/lua/language ディレクトリにコピーしてゲームを起動し、設定から日本語を選択してください。
  • 作業シートはこちら
    機械翻訳がほとんどですので、原文と比較したり自分流に訳す場合にコピーしてご利用ください。
です。よろしければご利用ください。

以上です。

以下たわごとです。

いつだったか、相当前にOriginからのプレゼントということで無料配布されていたテーマホスピタルというゲームがあったのを思い出して、先の金曜日、初めて起動してみました。

まーなんというか、さすがに古いゲームだけあって画面は小さいし文字も汚いし英語だし、ということで起動直後にそっと閉じてしまいました。

しかしながら、せめて日本語化できれば違う印象を持つかもしれないと思いまして、ざっくりgoogleで検索したところ、本体の日本語化はないようですが、こちらのMiyaoka Noteさんというサイトで紹介されている自称"re-implement the game engine of Theme Hospital"とはばかりなく言い切るCorsixTHという存在を知りました。Miyaoka Noteさんは2012年にCorsixTHの日本語化を行なっておいでで、その成果物はgithubで公開なさっておいでです。

そこで、これは渡りに船、とばかりにさっそく使用させていただいたのですが、あまりゲーム内テキストが日本語化されません。

ちょっと失礼ではありますが正直がっかりして、せっかくいただいたので言語定義体をエディタで見てみると、これって定義体というよりLua言語で書かれたプログラムで、文字列を直接の変数に突っ込んでるという強烈な仕様だということを知ってびっくりしました。
これはおそらく、言語ファイルを作成された後で参照される変数名が変わったとか、いろいろあったのでせっかくの日本語データがゲームに反映されないのかもしれません。

とは申せ、仕組みとしては変数の値を変えるだけ、という設計方針はわかりましたので、それなら変数名と代入されている英文が分かれば全翻訳可能という理屈になります。単純明快です。

そこで、毒を食らわば皿まで、ではありませんが、土曜日にちょっとやってみようと思い立ちました。

で、そうなると、今度はどうやって訳元の英文データを入手すればいいのかを調べてみますと、公式で解説されていましたので、さっそく生成してみますと、Luaではテーブルというようですが、表現形式としてはC言語でいう構造体のような感じで定義されており、一つ一つ構造体名とメンバ名にバラすのもまとめるのも簡単なスクリプトを書けばすぐできるということが分かりました。

なぜバラバラにしようとするかというと、私がこれまで行ってきたゲームなどの翻訳シートと同一の形式にし、かつ訳文と原文をいつでも対比できる形式に変換したいからです。

この形式のメリットは、原文と訳文が一対一で参照や再翻訳がしやすく、しかも原文を複数行、まとめてgoogle翻訳さんやWeblio翻訳さんなどにコピーすれば、訳文がたちまち得られ、しかも翻訳結果は加工しなくてもそのままシートにキッチリ再ペーストできるという点にあります。
それに、ソースを直接いじるよりもはるかに作業がしやすい。いちいちソース単位でコミットしなくてもセル単位で更新履歴が残ります。これはきわめて大きなメリットです。

翻訳結果があまりにも頓珍漢だったら多少は手を入れますが、原則として一度シート化してしまえば、この通り私はせいぜいコピーとペーストしかすることがありません。

結果として土曜日中にluaソースから英文と変数名が対になったTSVファイルを作って、またluaソースへと戻す2本のスクリプトを書き、あとはただコピー&ペーストを繰り返すだけで完了し、日曜日にはある程度プレイして確かめることも含めて「概ねできました、よければどうぞ」などと言えてしまう寸法です。
本当にgoogle翻訳さんをはじめ、機械翻訳を使わせてくださる各社には感謝に堪えません。

折角Miyaoka Noteさんがおつくりになられたデータが現にあるのだから擦り合わせて取り込もうとも思ったのですが、どのバージョン用のデータかわからない、ほとんどゲームをやっておらずどの文章がどこで表示されるべきとされていたのか調べてすり合わせるよりgoogle翻訳にコピペしたほうが早い、といった理由で現時点では反映しておりません。
著作権の問題もありますし、公開するデータとして使用するには適さないということもあります。

ところで、CorsixTH側の問題なのですが、表示したい文字列が長すぎると、ゲームがクラッシュします。

正確には、クラッシュというよりは間抜けにも64bitアプリなので際限なくメモリをどんどん食いつぶしていって、最後にはスラッシングを起こしてOSを巻き込んでくれます。

原因は単純で、すぐにわかりました。

横文字文化圏の人には単語ごとに空白を入れない言語があるということを知らないのでラインブレーク処理が完全に抜け落ちていて、できるわけがないのにどうにかしてワードラップできないかと延々処理を続けるからです。まあ、世の中にはマルチバイト文字があるということすら想定していないスバラシイ人たちも大勢いるわけで、この程度はどうというこたあありませんわね。Capitalism Labもそいつで苦労しましたし。

そんなわけで、訳文を自前で修正なさる方は表示される領域の大きさに合わせて自前でホワイトスペースを入れ、CorsixTHがラッピングできるようにしてやらなければなりません。

シートから作ったTSVからのluaソース生成スクリプトにはその辺を考慮したコードが入っており、スクリプトは冒頭にリンクいたしました作業シートにて「スクリプト2」として公開しておりますので、よろしければご利用いただければ幸いです。

作業シートには、クラッシュとなる原因となる訳文を特定する方法なども記載しておりますので、そちらもよろしければご参考に供せれば幸いです。

それにしても、機械翻訳でも何でも、母国語となるとドーンと印象が変わりますねぇ。
和訳が簡単そうだからという理由で手を付けてみましたが、ゲームも実際に面白そうです。
これからちょいちょい、プレイしてみたいと思います。

以上、駄文にお付き合いいただきまして、誠にありがとうございました。

2017年1月6日金曜日

The Guild II: Renaissance 4.211 + MegaModPack 0.82 のテキストを和訳してみた

*** 2019/01/12 追記 ***
あけましておめでとうございます。
MegaModPack 0.95用のテキスト和訳をしました。こちららどうぞ
*** 追記ここまで ***

あけましておめでとうございます。

本年もこのような場末で細々と恥をさらしたりしてまいる所存でございますので、どうかお見捨てなきようお願い申し上げる次第でございます。
(表題のテキストデータがお目当ての方は以下の駄文を無視して下にどんどんスクロールしてください)

さて、数年前に確か\98だかで買ったまま放置していた The Guild II: Renaissance というゲームがあったのを再発見して、年末にやってみましたところ、結構面白い。

そこで、世間様の評価はどうなのかと思って改めてこのゲームに関して調べてみたところ、バグだらけで満足に遊べないということで完全に見捨てられている模様です。

バージョン4.21で遊んでましたが、実際のところは致命的なバグは特になく、セーブデータが破損することもなく、突然CtDすることもなく、250年くらい継続して遊べました。ゲームの開始年が1400年ですので、さすがに同一の家系で1650年までプレイしていると飽きてしまいましたので別の一族で別マップでリスタートしましたが、継続していても全く不安を感じない安定感はありました。

肝心のゲーム内容としては、free willができない中世ヨーロッパ版Simsってところでしょうか。Sims2は屋内だけなので3が近いかもしれません。都市もマップ次第ですが最大3つ用意されています。
一族の人々は自発的には何もしないので、徹頭徹尾プレイヤーが一族の繁栄のために一族の中から最大で3キャラを操作していく必要があるため、放置して眺めるというプレイはできません。また、操作キャラから外すと二度とそのキャラは操作できなくなるので一族で都市の政治ポストを牛耳るといったようなプレイの場合に工夫が必要になってきます。

個人的には別に政柄なんぞまるで握りたくもないのですが、商売を一定規模以上に拡大するには肩書が必要で、一定以上の肩書を得るには国内で名が知られている必要があるのですが、その肩書を得るための条件を満たすために市長とか王など高位の役職をこなして社会に対して責任を果たし続ける必要があるというのが面倒ながらいかにも中世ラシイ感じです。
フリーウィルができればある程度利益を出し続けるチェーンを作ってしまえば見てるだけでシムどもがやらかす騒動を楽しめるのですが・・・

今年はこのゲームの続編の The Guild 3 が発売予定のようで気になりますが、おそらく前例からすると発売から数年はバグだらけで起動すら覚束ないありさまになって客を取り込めないまま下火になって話題にすらならなくなるのが落ちではないかと思われますので、これまた\98になったら購入してみるとして、The Guild II: Renaissanceでもプレイの幅は十分広いのですから3が捨て値になるまで十分遊べると思います。

そうなると、日本語化したくなるわけです。
先人がすでに和訳を行ってくれているのでそれを導入すればいいのですが、これはほぼ機械翻訳だけという状況で更新が停止しています。
需要がないうえに文書量が膨大なのでモチベーションが湧くわけがないことはテキストデータをみてよくわかりました。むしろ機械翻訳にかけてデータを公開するだけでも相当な手間がかかったはずです。ほとほと頭が下がります。愛を感じます。

そこで、先人への手向けとして折角フォントと、機械翻訳とは言えどもver4.211で使える訳文があるのですから、それにMegaModPack 0.82用の機械翻訳を追加してみました。
追加元はこちらで公開されておいでのtg2ルネサンス用のデータRenaissance20160127.zip(2016/01/27 Renaissance用,機械翻訳・職名変更)です。むろん、ご利用の際は同サイトで公開されておいでのフォントが必要です。
なお、Text.dbtはgoogle様によって音声データとして再生されようとする場合がありますが、ただのテキストですので何も聞こえません。そのままダウンロードしてください。

作業シートはこちらです。
過去の反省により、直接の編集はご遠慮いただいております。
ご利用くださいます場合はご自分のドライブにコピーするなどしてご利用ください。

ヘッダをつけて列A,B,Dを抜き出して整形してUTF16Lに変換するとText.dbtが出来上がる寸法です。整形例は文末にスクリプトサンプルを置いておきます。

シートの背景色が赤っぽいのは4.211からMegaModPack0.82で変更があった部分、深緑っぽいのは追加された部分です。その文量、引用元(追加元)とあわせて都合およそ17300文。
まあ自然な日本語になるように精査するなんて気になるわけがないですわな。
元データを作った人はほんとにつくづくすごい偉業を成し遂げられたと思います。

ま、だれのお役に立つかどうかはわかりませんが、こんな具合に比較しやすいシート化しておけば、自分が気に入らない訳文を変更するには便利かと思いますので敢えて公開させていただき、本年の年頭の辞とさせていただきたく存じます。

以上、それでは読者の皆様におかれましても、良い一年となりますようにお祈り申し上げます。

2016年12月9日金曜日

Democracy 3のマニュアルを和訳してみた

唐突ですが、Humble Bundle に$5出したらDemocracy 3 Collector's Editionがついてきましたので、折角ですのでマニュアルを和訳してみました。

確かに以前ちらっとSteamで見かけて若干興味を引いたような気がしますが、いつの間にか忘れていました。まだ起動すらしてないので、いずれ本命のゲームが終わったら遊んでみたいと思います。

このバンドルは2016/12/9時点でまだ4日くらい残ってますので、興味ある方は覗いてみるといいかもしれません。Big Pharmaとかもらえます。

現時点ではもう終わってしまっていますが、もう一方の抱き合わせセットはTIS-100とInfinifactoryがついてくるなど、そちらも大変お得な構成でした。

いったいどういう仕組みであんなプライシングが可能なんでしょうね・・・恐ろしい。
まだダウンロードすらしていないゲームがまた増えてしまって大変自分が間抜けに思えてなりません。

2016年11月16日水曜日

Big Farm 釣りデータ その6 オレグ氏派遣時のボートレンタル利益表

ボートを借りて自分で釣りに行くと黒字になりにくいことはこれまでの検証でよくわかりましたので、今回はオレグ氏をボートで釣り場に派遣する場合の利益を調べました。

何度か検証してわかったことは、釣果は傭船種や釣りレベルに一切かかわりなく、オレグ氏は漁場によって必ず同じ時間(どの漁場も1時間きっかりで帰ってきます)で同じ釣果(魚種も固定、魚種毎の重量も不変)を齎すという驚くべき事実でした。検証してがっかりです。時間がかかった割にばかばかしいというべきか、さすがオレグ氏はプロだけあって結果は常に安定して出す、と賞賛すべきなのか。

さて、釣果が必ず一定ですので、売上額も一定です。したがって、傭船費だけがコストなので、売り上げから傭船費を引けば必ずその額が利益として得られます。但し、船種によって出漁可能な漁場が違うので、最低コストの船で最大売上の漁場に出漁することはできません。
よって、ボートごとに最も稼げる漁場と額は固定となります。
文章で書くより表にしたほうが早いと思いますので、下表をご覧ください。

表1は漁場毎に釣れる魚種と重量および売上額を示しています。利益額ではありません。
表2はボートを派遣した場合の漁場毎の利益額を示しています。
表2中の青文字で示した額が船種毎に出漁できる漁場のうちでの最高利益の漁場を示しています。赤文字で示した額は文字通りの赤字です。

Fig.1
魚種浅瀬穏やかな海激流海岸外海波が荒い海星の輝く海未知の領域
バス256kg271kg437kg
コイ102kg108kg175kg
ナマズ364kg386kg622kg
カワカマス30kg49kg
チョウザメ308kg
ブルーフィッシュ325kg496kg534kg
カツオ232kg354kg382kg400kg
マヒマヒ116kg177kg191kg200kg244kg
グルーパー753kg811kg849kg1037kg
ホグフィッシュ38kg40kg49kg
漁場毎売上額$57,202$80,573$163,126$104,375$211,982$285,508$239,430$219,290

Fig.2

漁場での利益額
船種レンタル費用浅瀬穏やかな海激流海岸外海波が荒い海星の輝く海未知の領域
ゴムボート$17,700$39,502出漁不能同左同左同左同左同左同左
ディンギー$19,100$38,102$61,473出漁不能同左同左同左同左同左
ヨット$31,200$26,002$49,373$131,926出漁不能同左同左同左同左
モーターボート$32,100$25,102$48,473$131,026$72,275出漁不能同左同左同左
ノールランボート$50,000$7,202$30,573$113,126$54,375$161,982出漁不能同左同左
木造船$54,500$2,702$26,073$108,626$49,875$157,482$231,008出漁不能同左
流し網漁船$56,400$802$24,173$106,726$47,975$155,582$229,108$183,030出漁不能
大型ボート$67,600$-10,398$12,973$95,526$36,775$144,382$217,908$171,830$151,690
※なお、売上額の計算に必要な魚種毎キロ単価はその5をご参照ください。

2016年11月1日火曜日

Big Farm 釣りデータ その5 餌釣り利益表


これまでの検証でエサ釣り時にはドル餌・ゴールド餌に関わらず魚種毎に重量が一定であることが判明しましたので、餌も船も必要ないバス・コイ・ブルーフィッシュ・カツオを除いてそのまま売り払った場合の利益表を作成しました。
*** 2016/11/12 打消線で消した4魚種を含み、かつ単位重量あたりの費用および利益を追加した表へ差し替えました ***
*** 2017/06/09 本日のパッチでマヒマヒの餌釣時の重量が10kgから8kgへ減量されました(現時点でアナウンスなし。) ***


エサ釣り利益表(小数点第二位以下四捨五入)
baitweight@kgrevenueprofitcost/kgprofit/kg
バス450575375-820239-164
コイ75071871309-186213.57-26.57
カツオ9005150750-895329-179
ブルーフィッシュ4257107749-421167.14-60.14
ナマズ17006652343298737.0514.95
カワカマス33251066666602590407259
チョウザメ690011610612296465165.9140.09
マヒマヒ135083002400305261.87538.125
グルーパー257586706020270038.631.4
ホグフィッシュ525091500135007505666.11833.89
※一投当たりの経費はその1と同様に$745で計算

餌釣りならばファーム内のどの釣り場でも釣れるのでバケツ容量超過で釣り場を追い出されてもすぐに復帰できますし、チョウザメがドル稼ぎと経験値稼ぎのバランスがいいようです。