-------------------------------------------------
概要
-------------------------------------------------
ソフトウェア名: AmuletToolsMH4
version: 0.3.1
Copyright (C) 2013 key9

Nintendo3DS用ソフトであるMomsterHunter4の
錬金によるお守り厳選用ツール。
シードの特定や、特定のスキルを持つお守りのシードを検索できます。

-------------------------------------------------
動作環境
-------------------------------------------------
Windows 7(32/64bit) / Debian7.2(32/64bit) / Ubuntu12.04(32/64bit) で動作確認済みです。

-------------------------------------------------
ライセンス
-------------------------------------------------
このソフトウェアおよびソースコードはLGPL3に従います。
ライセンス文は添付する"license.txt"に記載されています。
    Copyright (C) 2013 key9
    GNU Lesser General Public License, Version 3

このプログラムはwxpytonを使用しています。
    Copyright (c) 1992-2006 Julian Smart, Robert Roebling, Vadim Zeitlin and other members of the wxWidgets team
    Portions (c) 1996 Artificial Intelligence Applications Institute
    wxWindows Library Licence, Version 3.1
    GNU Library General Public License, Version 2

csvファイルを圧縮した"data.zip"は
解析スレ781氏のxlsファイルに基づきます。
このファイルのライセンスは781氏に帰属します。

-------------------------------------------------
使い方
-------------------------------------------------
初回起動時に"data.zip"
(お守りスレで配布されていたcsvを編集したもの)
を解析し、データベースに展開します。
この作業には時間がかかる場合がありますが、
しばらく放置しておけば問題ありません。

ソフトウェアには8つのタブがあります
・"Seed2の特定"タブ
天運の錬金によって得られた各お守りの第2スキルからSeed2の値の特定が行えます。
また、検索結果のSeed2の値を選択して"対応スキル検索"ボタンを押すと
別タブにて対応するスキルの検索も可能です。

・"Seed2対応スキル"タブ
Seed2の値を入力し、天運の錬金で得られるお守りの第2スキルと判定値1,2を表示できます。
後述する"設定タブ"の設定により、スキルや判定値のハイライトが行えます。

・Seed1特定タブ
天運の錬金で古びたお守りのみ、あるいは歪んだお守りのみで錬金をした際の結果から、
Seed1を特定することができます。

・Seed1対応スキルタブ
Seed1を入力して、天運の錬金で古びたお守りのみ、あるいは歪んだお守りのみで錬金をした際に得られる、
お守りの種類と第1スキルの一覧を表示できます。
また、特定したSeed1と同テーブルに存在し、通し番号の隣接する他のSeed1をリストアップします。

・錬金シミュレータタブ
seed1とseed2を指定した際における各種錬金の結果を計算します。
間違っていたらすいません。

・"お守り検索"タブ
お守りの種類、第1スキル、第2スキルの値、スロット数から出現Seedの検索が行えます。
Seed2のみを基準とする簡易検索ではお守りが作られるSeed2の値の候補を検索します。
ただし、この検索はSeed1の組み合わせを考慮していないので、間違いを含んでいる可能性があります。
Seed2固定検索では、Seed2の値を固定した上でお守りの検索を行います。
こちらは正確な検索になります。
なお、全ての組み合わせを計算するのはメモリ、実行速度を考慮するとかなり厳しいので、
このアプリでは実装していません。
ソースコードに残骸だけはありますが、実行しないことを勧めます。
また、検索結果の行を選択して"シミュレーターに表示"ボタンを押すと
錬金シミュレータタブにて対応する行のSeed1とSeed2の値から錬金結果を見ることができます。

・"説明"タブ
2chスレテンプレを編集して載せてあります。
第2スキルの固定手順と、Seed1,2がどの値に影響を与えるかをまとめてあります。
参考にしつつスキルの固定を行ってください。

・"設定"
"Seed値対応スキル"タブで表示されるスキルと判定値に、
ハイライトをつけるかどうかの設定ができます。


-------------------------------------------------
ソースコードからの実行
-------------------------------------------------
実行形式のファイルがリリース一覧にないOSの場合は、
Python 2.7.xおよびwxpython 2.8.12 for python 2.7.xをインストールした上で
ソースコードを展開し、
# python amulettool.py
でアプリを実行できます。
ライブラリのインストール方法は各自調査してください。

pyinstaller2.1をインストールし、
# python make.py
とすればdistフォルダに実行形式でひとまとめにされたファイルが作成されます。
ただし、この方法はOSごとのチューニングが必要なようで、
筆者の環境以外で成功するかどうかは分かりません。

-------------------------------------------------
ヘルプ
-------------------------------------------------
Q. データベースが壊れていると表示された
A. "OmamoriMH4.sqlite3", "settings"を削除して再起動してください。
    再度データベースの構築を行います

Q. バージョン更新時にフォルダを上書きしてから起動しなくなった
A. "settings"ファイルが以前のバージョンと互換性がない場合があります
   "settings"ファイルを削除してからもう一度起動してみて下さい。

Q. アプリが起動しない
A. アプリケーションの置かれているディレクトリに日本語が含まれていると起動しない可能性があります。
    Cドライブ直下にフォルダを移動するなどしてから起動してみてください。

Q. お守り検索タブから錬金シミュレーターに移動できない
A. Seed表のセルを選択するのではなく、左端の列ラベルをクリックして列全体を選択するようにして下さい。

-------------------------------------------------
更新情報
-------------------------------------------------
2013/12/21 version 0.3.1
    0.3.0でDB生成終了時にアプリが落ちるバグの修正

2013/12/21 version 0.3.0
    お守り検索ロジックの修正
    錬金シミュレーターの追加
    Seed1特定とSeed1対応スキル表示タブの分離
    その他微修正

2013/12/17 version 0.2.1
    GUIの修正

2013/12/17 version 0.2.0
    DBにSeed1検索用のデータ、Seed2に対応する判定値2、いにしえの錬金のデータを追加
    Seed1検索の対応
    Seed2対応スキル表示に判定値2、いにしえの錬金の結果の追加
    説明タブにSeed1,2の影響する値を追加
    Seed2固定手順の説明文の修正
    その他微修正

2013/12/09 version 0.1.3
    DBの修正
    ライセンス文の修正
    GUIの調整

2013/12/07 version 0.1.2
    第2スキルを値0で検索できるように修正

2013/12/06 version 0.1.0
    アプリ作成

