FC2ブログ
2017/05/31

jtalesを解析してみる その1

マイIPやらルーターやらで最近手を付けていた所が忘れてしまったのでこの機にjtalesを解析したいと思います。

TalesWeaverのエミュ鯖はjtalesというELF形式のファイルを中心に動いているそうな。このファイルを解析することで将来的にはおそらく下記の事項が達成可能と思われます。

・ステータスの上限を255以上に
・Lvの上限、EXPテーブルの上限を255以上に
・Tickの上限値(時間関連)を変更
・〇〇.jtalesを読み込む際のテーブル数の上限の変更
・・・etc

それで解析するにあたってまずELF形式のファイルってなんぞ?ということでちょっと調べてみました。

ELFはExecutable and Linkable Formatの略らしく、直訳すると実行可能およびリンク可能な形式・・・・らしい。ようするにSolaris版のexeファイルってことかな?このELF形式を解析するにあたってobjdumpというコマンドを使用するとプログラムをアセンブリ言語っぽく出力してくれます。Windowsでこのコマンドを使用するにはMinGWをインストールする必要があります。グーグル先生に聞けばすぐ分かるのでインストール方法は割愛。

objdumpの他にもコマンドがありますがまずnmコマンド。オブジェクトファイルのシンボルを表示できるとのことでよく分からず試してみたらずら~~~~~~っと関数だか変数名っぽいものが表示されました。
080cbf41 t _c_LevelManager__canLevelup_
080cbec8 t _c_LevelManager__forcedLevelupExp_
080cdc1d t _c_LevelManager__getFinishByLevel_
080cd475 t _c_LevelManager__increaseUserVital_vitalType_value_
080cb608 t _c_LevelManager__initialize
080cc213 t _c_LevelManager__levelup_
080cbd79 t _c_LevelManager__neededExp_
080cce45 t _c_LevelManager__parseLevelupPointTable
080cb6f1 t _c_LevelManager__parseLevelupTable
080cbe01 t _c_LevelManager__totalNeededExp_
こんな感じに。

あと他にもreadelfコマンド。引数によって出力結果が変わるようですが多分 -w -a付けて出力するのがよろしいかと。出力結果はこんな感じ。
<2><2ced96>: Abbrev Number: 57 (DW_TAG_variable)
<2ced97> DW_AT_name : maxHP
<2ced9d> DW_AT_decl_file : 35
<2ced9e> DW_AT_decl_line : 20572
<2ceda0> DW_AT_type : <0x2989e1>
<2ceda4> DW_AT_location : 2 byte block: 91 60 (DW_OP_fbreg: -32)
<2><2ceda7>: Abbrev Number: 0
<1><2ceda8>: Abbrev Number: 60 (DW_TAG_subprogram)
<2ceda9> DW_AT_sibling : <0x2cee6c>
<2cedad> DW_AT_name : HardCode_itemDownHP
<2cedc1> DW_AT_decl_file : 35
<2cedc2> DW_AT_decl_line : 20620
<2cedc4> DW_AT_prototyped : 1
<2cedc5> DW_AT_type : <0x2989e1>
<2cedc9> DW_AT_low_pc : 0x8272d3d
<2cedcd> DW_AT_high_pc : 0x8272eb2
<2cedd1> DW_AT_frame_base : 1 byte block: 55 (DW_OP_reg5 (ebp))
テキストファイルに書き出したら200万行くらいあってファイルサイズも100MB近くありました(笑)

う~ん・・・・いろいろいじってみたいけどどういじればいいんだ??バイナリエディタでいじっていいのかな?バイナリエディタいじるにしても上記のような出力結果からどう結びつければ良いのだろうか・・・。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/30

とりあえずルータを買いました。

先日、ヤマダ電機に寄ったついでに買っちゃいました。買ったルーターはAterm WG1800HP2で8000円程。ちゃんとPPTPに対応しているし何よりも再起動まではIPアドレスが変わらないのが大きいです。前のルーターは再起動しなくてもしょっちゅう変わってたので、エミュ鯖Wikiに書いてある外部接続が手順通りにできなかったんですよねー。とりあえず新しいルーターは再起動しない限りはグローバルIPが変わることがないのでPPTPとかVPNとかでうまくいかなかった場合は、以前のように停電などでルーターが再起動された場合その都度にbatファイルをアップロードする形式にしたいと思います。(非常にめんどうですが)

ただ外部接続の問題は半分解決したようなものですがサーバー用のPCがとうとうお亡くなりになられたので・・・しばらく外部公開は控えたいと思います。う~ん・・・今年中に買えたら良いなぁ。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/25

マイIPの試用期間が終了しそうなので退会しました

もうマジで手詰まりだったので退会しました。

あとPPTP接続について調べてるうちにPPTPに対応してるルーターが必要かもしれないなーなんて思ったので楽天カード引き落ちたら買ってみたいと思います。今までLogitec製のルーターを使ってたのですが(この前買ったばっかり)、PPTP接続に対応してないし、再起動してないのになぜかWAN IPがころころ変わったりと挙動がおかしいような感じがしたので思い切って買います。

バッファロー製のルーターが値頃な価格設定だったのでBUFFALO BHR-4GRV2 を買ってみたいと思います。

・・・しかしそんなことよりも重要なお知らせがあるんですよね。本日の0:05にじっちゃん亡くなったので色々やることggg
はい、それでも合間には研究を続けたいと思います。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/23

外部から仮想OSのSolarisサーバーに接続ができない件について問い合わせてみた

そろそろマイIPの試用期間も近いのに一向に進展なしというのもアレなので思い切って問い合わせてみました。問い合わせた際に下記画像を送りました。


接続の状況図式

基本的に、Windows上に仮想OSでSolarisサーバーを立ち上げ、外部から固定IPアドレスで Solarisにアクセスする場合は、Solaris上でVPN接続して固定IPアドレスを割り当てる必要がございます。

Windows上でVPN接続を行い、Windowsに固定IPアドレスが割当たった状態で、Solarisにアクセスするには 技術的に可能か分かりませんが、基本OSのWindowsからSolarisへポートフォワーディングの設定を行うことで 実現できるかもしれません。

例えば、固定IPアドレスに対してSSHで接続する場合、TCP22番ポートのアクセス要求がWindowsに到着します。 その要求を仮想OSに転送するという設定です。

実現可能か仮想OSのベンダー(メーカー)様にご相談いただければ幸いです。

以上よろしくお願いいたします。

とのことでした。今までWindowsでPPTP接続をして割り当てられたIPアドレスをSolarisの192.168.1.86へ向けてルーター側からDMZするようにしていたのですが、設定が間違ってるか実現不可能なのか・・・?というかそもそもVPNがどういうものかも分かってないからそこからお勉強ですかな。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/18

Solarisって面倒くさすぎる!Part2

エミュ鯖スレ全然進んでない今日このごろ。

前回の続きでPPTPクライアントをインストールするのにrpmが必要だったのでrpmについてグーグル先生によ~く聞いてみたらhttp://rpm.org/wiki/Releases/4.4.2.3 にてrpm-4.4.2.3.tar.gzをダウンロードできることが分かった。ダウンロードしたファイルをgunzipで解凍、その後tarコマンドにて展開。その後展開したフォルダに移動して./configure、make、make installをすれば完了・・・と思いきやここでも躓く。

なんかbeecryptっていうのが必要らしいからhttps://sourceforge.net/projects/beecrypt/files/にてbeecrypt-4.2.1.tar.gzを ダウンロード。gunzipで解凍してtarコマンドで展開、./configure、make、make install・・・m4コマンドが見つからんと・・・

じゃあhttp://ftp.gnu.org/gnu/m4/ にてm4をインストール・・・新しいバージョンだとダメだめだったから一番古いバージョン にしたらar: コマンドが見つかりませんでしたと出た・・・。これもインストールが必要なのかと思いきやhttp://chinmai.net/~osakana/tech-memo/wiki.cgi?page=Solaris10+for+SPARC+Ver.03+%A1%C1%B3%AB%C8%AF%B4%C4%B6%AD%B9%BD%C3%DB%CA%D4%A1%C1を見てみるとmake, ld, as, ar, m4あたりは /usr/ccs/bin に転がっているので、ここにPATHを通しておけばいいとのこと。

・・・・・・・・・PATH通したらbeecryptはインストールできたっぽい。じゃあこれでrpmもいけるはず!

~~中略~~
checking for GNU xgettext... configure: error:
*** GNU gettext is required. The latest version
*** is always available from ftp://ftp.gnu.org/gnu/gettext/
. configure: error: ./configure failed for popt

んー・・・GNUをインストールすればいいのぉ?とこんな感じで一向にrpm -ivh pptp-1.7.0-1.i386.rpmが実行できません。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/17

Solarisって面倒くさすぎる!

マイIPによるVPN接続だと外部からの接続がうまくいかないことが発覚してから色々と試行錯誤してますが何の成果も得られなくて非常にもやもやしてる今日このごろです。

あるSkypeユーザーさんからマイIP利用時のサーバサイドの設定について調べていただいちゃいました。
http://www.teitoku.com/arsenal-information-homeserver-myip.html
見たことあるサイトなんですがWindowsにPPTPクライアント入れればいいや~と思って読み飛ばしていました。しかしもしかしたらWindows側にPPTPクライアントを入れてVPN接続してるから外部から接続出来ないのかな?と思ったのでちょっと試しにやってみました。

心が折れそうになった。

wgetとrpmコマンドが使えない件について。rpmインストールするのにyum?が必要?yumインストールするのにrpmが必要?!意味分からん!!・・・・と1日中調べてたらhttps://deadlockprocess.wordpress.com/2010/07/18/how-to-reinstall-rpm-and-yum-without-rpm-and-yum-in-centosrhel/でrpm / yumを使わずにrpmとyumを再インストールできるみたいなことが書いてあったのでやってみる・・・。

Wget使えないからできねえ・・・

しょうがないからwgetをインストールしてみてwgetコマンドを実行してみる・・・ld.so.1: wget: fatal: libgnutls.so.26: open failed: No such file or directory Killedとか出て実行できねえ・・・・。

えぇ・・・・どうすりゃいいんですか・・・。調べてみてもそれらしいサイトが見つからない←今ここ

う~ん・・・どうしよう(笑)



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/13

外部接続ができてない・・・だと!?

最近加入したあるテスターさんから マルチサーバリストに現在何も表示されていない状態です。 (スタートを押下すると、数十秒固まり真っさらなマルチサーバリストが表示される)
とのコメントを頂きました。
マイIPによる固定IPにしてから以前利用されていたテスターさんから全く音沙汰が無かったのでてっきり接続できてるものかと思っていましたが・・・・ログ確認したら自分以外誰も接続した形跡がありませんでした。外部接続ができてないままマイIPの固定料金支払い始めてたらマヌケすぎて凹んでた・・・(笑)
マイIPの仕様じゃないことを信じたいですが・・・何分素人な者なのでで使ってます。テスターさんからのコメントの状況に似た状況が以前にもありました。それは初めて外部接続に触れたときです。その時はポートの解放がうまくできなかったようでどうせ鯖は仮想PC内だしDMZ(いわゆるポート全開放)したら接続できるようになりました。ということは・・・DMZで指定しなきゃいけないIPアドレスが違うのか・・・・?公開IPアドレスにマイIPで取得したグローバルIP、クライアントPC IPアドレスには鯖のIPアドレス192.168.1.86を指定していますがやり方違ったかな?VPN接続で外部から接続できた人いたらどこが間違ってるか知恵をお借りしたいです。(ちなみに自PCから別PCの鯖には接続できてる・・・はずです)


もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/10

【テイルズオブリンク】溜まってたガシャ動画

アイナナコラボガシャ以外もう終わっちゃってるから載せる意味がなさそうだけどせっかくなんで載せてみました。いや~ウィズとかパズドラとかと違って30連程度じゃ何も出ませんね。


SpringSchoolガシャ

アイナナコラボガシャ

英雄フェス(ガイとリタ)

セリフ極力いれないようにすると動画時間こんなに短くなるのね・・・。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/08

ソロモンよ!私は帰って来た!!

田舎から帰宅しました!予想通り全然PCいじれなかったので全く更新できませんでした・・・orz

とりあえず鯖は起動しておきます。現在詰まってるのがデスダイダなどを装備品のアイコンが画面に出たり、装備グラを表示したりすると蔵落ちしてしまう件についてです。DACのフォーマットが違うのかな・・・と思いきやそうでもなさそうな感じがします。もしかしたらDACファイル19999以上、TEXファイル3000以上読み込めるようにはしたけど実際は読み込めてないのかな?ちょっとこの辺が分からないです・・・。おそらく設定してるうちに誰かがこの問題にぶつかるはずなのでとりあえず放置しておくべきかな・・・。

今やってる研究課題は以下の4つですかね。

・tickの計算がおかしい?のでdateコマンドで日付を設定しないと数秒で接続が切れる。
・ある一定数の番号からTEXファイルとDACファイルを読み込むと蔵落ちする。
・Effect IDの設定の仕方 ・Lv、ステータスの上限値の変更

色々付き合いがあるのであまりエミュ鯖の方に時間が割けませんがEffect IDの方を調べるのがベストかな?ただアニメーションの設定っぽいからDACファイルを中心に調べてますがあまり成果がありません・・・DACファイルじゃないのかな?



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!

2017/05/06

5/6から5/9はサーバーを停止いたします。

5/6から5/9の3日間、田舎に帰省するためサーバーを停止いたします。(PC放置で火事が怖いため)
エミュ鯖の研究もその間やる機会がないと思われますのでご了承を。



もしよろしければ私のモチベーションアップの為にチャンネル登録お願いします!