スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

製作再開

 やっとこさっとこ重大な局面を終えて、P.T.A.T.の製作の再開ができるようになりました。ポケモンBW2もできる! やったね!

 早いとこ映画も観に行って、メロエッタ貰って、ケルディオも貰ってってせねば! ケルディオは8月中らしいから急がねば((
 しかしケルディオは幻ポケモン扱いだからランダムフリー潜れないのはしょんぼりである(´・ω・`)


 しばらく更新作業ができなかったので、とりあえず今具体的に予定してる機能を挙げておこうと思います。


 大きな更新
・パーティ管理機能 ← 製作中。まだ時間かかりそう。
・ダメージ計算機能
・育成考察ページ
・仮想敵登録機能

 小さな更新
・ピンチの木の実の効果の修正
・ポケモンリストの並び替えに移動先指定機能
・ポケモンリストのソート機能
・ポケモンの情報・PTの情報を文字列で出力
・ポケモンの情報・PTの情報を文字列から入力して見やすい形に出力
・技の枠をタイプごとの色の枠にするか選択できるようにする


 次の更新はver0.5.0の予定ですが、上の機能はちょこちょこ追加していきます。

 今まで我慢してたぶん、頑張って製作していきますよ! ポケモンもしながらね!




 ポケットモンスターホワイト2 ポケットモンスターブラック2   ポケモン ブラック  ポケモン ホワイト
スポンサーサイト

テーマ : 日記
ジャンル : 日記

永遠の17歳ネタ

 よく耳にする永遠の17歳(設定)。
 永遠の17歳をどうやったら実現できるのか、なんてのを基数変換の説明をしながら解説してみる。


・基数変換って?
 日常生活でよく使う数字は10進数と呼ばれるもので、10数えるたびに1つ上の桁が1増える数え方である。

 例) 8 → 9 → 10
  このとき9が10になるとき、1の位の数は0になって、10の位の数が1になって10が表現されている。

 コンピュータ関係に携わると、2進数だとか16進数だとかに関わるようになります。
 1 = (1)2
 2 = (10)2
 3 = (11)2
 4 = (100)2
 10 = (1010)2
 
 9 = (9)16
 10 = (A)16
 11 = (B)16
 15 = (F)16
 16 = (10)16
 255 = (FF)16

 ポケモンだと個体値に32進数を採用してますね。
 30 = (U)32
 31 = (V)32
 32 = (10)32


 ()の右下の添え字はその数字が何進数であるかを表す数字で、これを基数と言います。
 勘のいい人はおわかりでしょうが、基数変換とは、この基数を変えてn進数の数字をm進数で表してやろうってことなのです。(nとmは任意の自然数)


 さて、例えば25歳の人が17歳を名乗っているとき、どのような計算が起きているのかを確かめてみましょう。このとき、17歳をじゅうななさいと呼ばず、いちななさいと呼ぶことがポイントです。

 n進数においては、2桁目が1増えると10進数においてはn増えたことになります。3桁目が1増えるとn^2増えることになります。
 10進数では0に対して、100のように3桁目を1増やすと数字として100増えるということが確認できるとおもいます。
 一般化すると、n進数においてm桁目の数字が1増えるとn^(m - 1)増えることになります。

 これを利用して(2B)16を10進数に変換すると、2 × 16^1 + 11 × 16^0 = 43というように計算できるわけです。

 25を(17)?に基数変換する場合、1桁目は基数がなんであろうと10進数と同じなので、25 - 7をして1桁目の分を元の数字から貰ってきます。
 25 - 7 = 18なので、(17)?の2桁目の1は10進数でいう18にあたるということになりますね。
 ということで25 = (17)18とすると17歳にできます。

 同じように計算すると、
 24 = (17)17
 23 = (17)16
 22 = (17)15
 とか、
 30 = (17)23
 35 = (17)28
 40 = (17)33
 100 = (17)93
 とかできるわけですね。これで嘘をつくことなく17歳を名乗れますね!

 問題としては1桁目に7を使えるのは基数が8以上のときなので、17歳を名乗れる年齢は15歳以上になるということですが、あんまり気にする人はいないので大丈夫でしょう←

 実年齢 - 7したものを基数とすればみんな永遠の17歳! これが永遠の17歳の秘密です!(たぶん)
 誕生日が来るたびに基数を1増やすことを忘れないようにしましょう。





 ※この記事はただの現実逃避です。
 ※この記事上で基数を省略した数字は17歳の表記以外だいたい10進数です。

テーマ : 日記
ジャンル : 日記

レイアウトが崩れる原因ってもしかして・・・?

 必要なフォントが入ってないからとか??


 P.T.A.T.はMS UI GothicというWindowsのシステムフォントを使用することを前提にしたレイアウトなので、フォントが勝手に変更されると文字サイズが変わって画面から溢れたり、他の文字と重なって切れちゃうことがあるようです。


 もしレイアウトが崩れる方のPCにMS UI Gothicが入ってない(もしくは何らかの理由で削除された)ことが原因であるなら、フォントを入れ直せばレイアウトが直るかも・・・?

 というなんとも曖昧な感じですが、ものは試しで困ってる方はこちらをどうぞ。

 YAHOO! 知恵袋 Windowsのシステムフォントがダウンロードできるサイトを教えてください。


 これで直ればいいなぁ。。(希望)




 ポケットモンスターホワイト2 ポケットモンスターブラック2   ポケモン ブラック  ポケモン ホワイト

テーマ : 日記
ジャンル : 日記

PT管理機能の進捗

 更新用20120809

 休み中に作っちゃうつもりが全然進まなかったけどな!><
 一回システム見直して作り直したし!

 現在の進捗状況は上の図のような感じ。パーティとそれに加えるポケモンを選ぶためのリストボックスと、パーティに登録されてるポケモンのイメージを表示してるだけです。
 「パーティに加える」ボタンをクリックすると表示されるポケモンが増えます。表示されてるポケモンを選択していると「パーティから除外」ボタンに変化します。使いにくかったので別にボタンを用意しますけど←


 この機能、見た目に反して作るのがかなり面倒くさいシステムです。
 いろいろな干渉を考えなきゃいけない(´・ω・`)

 パーティに参加してるポケモン名を表示するだけなら簡単にできちゃいますけど、どうせならポケモンの細かい情報を登録してるんだし、そのデータベースと結びつけてなんやかんやデータ解析とかできたらいいよねーとか思ってます。

 基本的な機能の実装が終わったらインタフェース(見た目)を整えて、とりあえず公開する予定です。
 解析機能とかはおいおい考えていきましょう!

テーマ : ポケットモンスターブラック2・ホワイト2
ジャンル : ゲーム

ポケモン管理ツールP.T.A.T. ver0.4.6

 更新用20120804


 P.T.A.T. ver0.4.6を公開しました。以下のリンクからダウンロードできます。

 P.T.A.T. Download
 ※ ダウンロードするためにskydriveにログインする必要はありません。

 修正点
 ・必中技の指数、連続技の期待指数を表示できるようにしました。
 ・ノーガードとスキルリンクの特性の効果の実装しました。
 ・poke + ポケモン名でポケモン名だけでの検索機能を実装しました。
 ・くろいヘドロの回復量を修正しました。
 ・拡張備考欄の半角")"の後に改行が来るとデータが壊れるバグを修正しました。

 バージョンアップする場合、フォルダごと上書きしてください。
 参考 → P.T.A.T.の導入・アップデート・バックアップについて

 
 動作には.NET Frameworkの4.0以上のバージョンのものが必要になります。
 動作しない場合は以下のリンク先からダウンロードしてインストールしてください。

 Microsoft .NET Framework 4 (Web インストーラー)


 Windows OS以外はこちらを入れると動作するかもしれません。(動かないかも・・・?)
 
 Mono
 動かない疑惑。
 .NET FrameworkをWindows以外のOSで動作させる方法があれば動作するかもしれません。。


 何かわからないことがあればFAQに目を通すことをおすすめします。

 ○使い方
 ・P.T.A.T.の使い方1 ~ポケモンを登録してみよう~
 ・P.T.A.T.の使い方2 ~編集と削除~
 ・P.T.A.T.の使い方3 ~ポケモンを探しやすくしよう~
 ・P.T.A.T.の使い方4 ~ポケモンを一括登録しよう~
 ・P.T.A.T.の使い方5 ~個体値判定をしよう~

 ○FAQ
 よくある質問とその回答

  

 ポケットモンスターホワイト2  ポケットモンスターブラック2   ニンテンドー3DS コスモブラック

テーマ : ポケットモンスターブラック2・ホワイト2
ジャンル : ゲーム

実践! P.T.A.T.にポケモンを一括登録! Part2

<< Part1


 一括登録実践編後半です。表計算ソフトを使って一括登録できる形に編集していきます。
 Excelなんかの表計算ソフトでポケモンを管理していた人はここから説明を読むといいでしょう。


3.表計算ソフトで編集

 20120802-4.jpg

 画面のようにセルの座標を示す番号やアルファベットをクリックすると、その行や列をまるごと全部選択できます。
 要らない行はこれで選択してBack SpaceキーやDelキーで消してしまいましょう。


 20120802-5.jpg

 P.T.A.T.の使い方4 ~ポケモンを一括登録しよう~を見ながら、情報の形式を合わせていきましょう。

 上の図だと努力値の書き方が一括登録に対応してないので、対応する形に書き直します。書き直す前の情報は消しておきます。
 技名、特性、道具名に漢字を使っていたら直しておきましょう。

 ここが一番面倒くさい作業だと思いますが、P.T.A.T.本体の登録フォームで1匹1匹登録作業するよりかは格段に楽な作業なので頑張りましょう。


 20120802-6.jpg

 情報を書き直す作業が終わったら情報の並べ替えの作業をします。
 表計算ソフトではドラッグで複数のセルを同時に選択でき、それらをまとめて移動できることを利用します。


 20120802-7.jpg

 図のように、各列に同じ分類の情報(ポケモン名、NN、性別、特性、性格、持ち物、技、個体値、努力値etc)をまとめておきます。メモ帳の内容を移してきた場合は情報がずれてる場合があるので注意しましょう。

 P.T.A.T.の使い方4 ~ポケモンを一括登録しよう~を見ながら、情報を順番通りに並べ替えます。
 このとき、各情報はそれぞれ1列ずつ空けるように配置しましょう。


 20120802-8.jpg

 並べ替えが完了した図です。各情報の間には","や""を入れてやる必要があるので、空けておいた列に書き込む作業をします。


 20120802-9.jpg

 セルを選択すると、四角い枠の右下につまみが現れます。(図ので示したところ)
 これをドラッグすると、ドラッグで選択した範囲に、選択してたセルの内容に関連する内容(もしくは同じ内容)をコピーして自動で書き込むことができます。

 図では","を一番上の行に書き込んで、ポケモンの情報が書いてある一番下の行までドラッグします。これで楽に","を打つことができます。各空白の列にこれを全部やります。


 20120802-10.jpg

 ここまでの作業が完了したら、情報が記入されてるセルをまとめて選択してCtrl + Cでコピーします。
 ※ちなみのこの図では持ち物が努力値の後に来てますが、正しくは技の後に入れてください。ミスです。


 20120802-11.jpg

 コピーした内容をメモ帳にCtrl + Vでペーストして、名前をつけて保存して編集完了です。


4.P.T.A.T.に一括登録

 20120802-12.jpg

 P.T.A.T.を起動し、「一括登録」のタブをクリックしてこの画面にし、「ファイル選択」のボタンを押して3.で保存したテキストファイルを選択します。

 できたら「読み込み」ボタンをクリック。


 20120802-13.jpg

 読み込めたら完了です。お疲れ様でした!
 ※持ち物の位置失敗したので持ち物だけ登録できてません。
   記事編集中に気付いたのだよ\(^O^)/




 ポケットモンスターホワイト2 ポケットモンスターブラック2   ポケモン ブラック  ポケモン ホワイト

テーマ : ポケットモンスターブラック2・ホワイト2
ジャンル : ゲーム

実践! P.T.A.T.にポケモンを一括登録! Part1

 エクセルなんかの表計算ソフトを有効に使えてないと一括登録の魅力がわからなそう!ということで表計算ソフトでの編集方法の説明も兼ねた一括登録機能の使い方実践編です。


1. メモ帳なんかにポケモンの情報をメモしてた場合

 更新用20120802-1

 だいたいこんな感じでメモしてあるとします。一例なので形式が違っても問題ありません。ワープロソフトを使ってる人はコピペしてメモ帳に移しておくといいでしょう。
 こいつを一括登録可能な形式に書き換える作業の流れをこれから説明していきます。
 ExcelやCalcなんかの表計算ソフトにメモしてる人はPart2まで飛ばしてください。


2.表計算ソフトに突っ込む

 Excelが使える人はExcelを開いてください。
 使えない人は代わりにOpenOfficeのCalcを使うので、ダウンロードしてきてください。→ OpenOffice Download

 ・Excelを使う場合

 20120802-ex1.jpg

 「開く」を選択して先ほどのテキストファイルを選択します。


 20120802-ex-2.jpg

 するとこのようなウィンドウが出てきます。


 20120802-ex3.jpg

 画像のように「カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」にチェックが入っていることを確認して「次へ」をクリック。


 20120802-ex4.jpg

 メモ帳で各ポケモンの個体値、努力値、性格なんかの情報を分けている文字にチェックを入れると、読み込むときにそれらの間の文字列を分けてくれます。

 画像のように/でポケモン名とニックネームが分けられている場合は、その他にチェックを入れて右のボックスに/を書き入れると分けることができます。

 1マスに1つの情報が入ってることを確認できたら「次へ」をクリック。


 20120802-ex5.jpg

 特にいじるところはないので「完了」をクリック。これでExcelにメモ帳の内容を読み込ませることができました。



 ・Calcを使う場合

 20120802-2.jpg

 メモ帳の内容をコピーします。
 Calcを開いてA1のセルを選択してCtrl + Vで貼り付けをすると次のようなウィンドウが現れます。


 20120802-3.jpg

 Excelの場合と同じです。
 メモ帳で各ポケモンの個体値、努力値、性格なんかの情報を分けている文字にチェックを入れると、読み込むときにそれらの間の文字列を分けてくれます。

 画像のように/でポケモン名とニックネームが分けられている場合は、その他にチェックを入れて右のボックスに/を書き入れると分けることができます。

 1マスに1つの情報が入ってることを確認できたら「OK」をクリック。

 ここまでが表計算ソフトに情報を突っ込むまでの作業です。

 続きはPart2へ

 Part2 >>




 ポケットモンスターホワイト2 ポケットモンスターブラック2   ポケモン ブラック  ポケモン ホワイト

テーマ : ポケットモンスターブラック2・ホワイト2
ジャンル : ゲーム

個体値・努力値逆算アルゴリズム?

 勉強中ふと思いついて書いてみた。

 【定義】
・求める変数
 k : 個体値
 d : 努力値の4分の1の値

・入力する値
 S : 種族値
 C : 性格補正の逆数
 J : ステータス実数値
 L : レベル

 にはH,A,B,C,D,Sが入り、それぞれのステータスと対応


 目的関数
 minimize
    kH + kA + kB + kC + kD + kS
 (解説:努力値振りは基本的に最大まで行っていると考えると、入力されたステータスを実現する努力値と個体値を考えるとき、個体値の合計が最小になるときが実際のものに近くなると考える)

 制約関数
 subject to
    LkH + LdH = 100JH - 2SHL - 100L -1000
    LkA + LdA = 100JACA - 2SAL - 500
    LkB + LdB = 100JBCB - 2SBL - 500
    LkC + LdC = 100JCCC - 2SCL - 500
    LkD + LdD = 100JDCD - 2SDL - 500
    LkS + LdS = 100JSCS - 2SSL - 500
    dH + dA + dB + dC + dD + dS ≦ 127
    0 ≦ k ≦ 31(kは整数)
    0 ≦ d ≦ 63(dは整数)


 以上の制約を満たしながら、目的関数が最小になる個体値kと努力値dのそれぞれの値を求めろっていうナップサック問題です(たぶん)。
 連続緩和問題としてシンプレックス法を用いて解くか、分岐限定法を用いるかすれば解ける問題ですね。


 P.T.A.T.で実装してあるのは分岐限定法もどきのアルゴリズムです。分岐限定法ってのを知る前に組んだけどね!(´・ω・`)

 誰か挑戦してみたらいいんじゃないかな←
 個体値・努力値を予測できるのはあんまりない気がします。

テーマ : ポケットモンスターブラック2・ホワイト2
ジャンル : ゲーム

プロフィール

NLR

Author:NLR
ポケモンBWのツールをC#で開発中です。
絵はたしなむ程度ですが描くことがあります。

最新記事
リンク
カテゴリ
Counter
最新コメント
月別アーカイブ
最新トラックバック
カレンダー
07 | 2012/08 | 09
- - - 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 -
検索フォーム
QRコード
QR
アフィリエイト・SEO対策
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。