NEW  |  HOME  |  OLD

varとfvarの相互変換

5/3
00:11 (hitachi) http://hitachi5300.blog.fc2.com/blog-entry-288.html
00:11 (vesper0) [URL] 変数の垣根を取り払う画期的な技術? ?@ひたちがゆく!
00:11 (hitachi) これは凶悪どころかMUGENの革命だと思うの
00:18 (lunatic__) ほう、これは面白いな
00:24 (Oracle) んー・・・?
00:24 (Oracle) fvar(0)にint記憶できるとして
00:24 (Oracle) それをfvar(1)に移すとそのまま?
00:24 (hitachi) うん
00:25 (Oracle) 16777217って数値を代入したとして
00:25 (hitachi) floatとして解釈するとNaNになる数値でもちゃんと変換できる
00:25 (lunatic__) fvar(1):=fvar(0)って感じに移動させておいて使うときはfvar(40):=fvar(1)でsysvar(0)読み込みって感じかな
00:25 (hitachi) そうですね
00:26 (lunatic__) 一応sysvar(0)の保存用変数がほしいから通常変数として使えるのは98かな(それでも多いけど
00:26 (Oracle) 十分ですね
00:27 (Oracle) int値で保存されるから参照しても正しく16777217って出てくるのね
00:27 (hitachi) です
00:27 (hitachi) 2^23とか関係なしにできます
00:27 (Oracle) わぁ
00:28 (hitachi) -1(INTなら32ビット全部1)とかでもできたんで
00:28 (Oracle) 面白い記述が出来上がりそうですね
00:30 (Oracle) ビット演算の記述をそれで行う場合
00:30 (Oracle) どうやればできるだろう・・・悩んでる
00:31 (hitachi) fvar(40):=fvar(0)とやって
00:31 (hitachi) sysvar(0)&xxxと
00:31 (hitachi) やればfvar(0)に保存した値のビット演算ができる
00:32 (Oracle) var(60):=(sysvar(0)|2)って感じかなあ
00:32 (hitachi) そですね
00:33 (Oracle) ビット弄る前にsysvarにfvar(40)を移して
00:33 (Oracle) そいつを元に弄るか
00:36 (Oracle) 一手間かかるけどいいね。
00:36 (hitachi) ええ
00:36 (Oracle) AIとかの救いにもなるんじゃないかな
00:37 (hitachi) ただこれを先に見つけてたら変数圧縮を開発しなかったかもしれない
00:37 (Oracle) えーと、これを使えるようになるってことは
00:38 (Oracle) ひたちさんの親変更変数記憶も完璧にできて、変数余る・・・?
00:38 (hitachi) そですねえ
00:38 (Oracle) かなり実用的になってきたなあ
00:39 (hitachi) さすがにfvar含めて100個全部使われたら保存しきれませんけど
00:39 (Oracle) fvarは無理だと思います・・・
00:40 (Oracle) varだけでも戻せるのは大きい
00:40 (hitachi) 番号保存用変数にfvarの番号であるというフラグを作ってやればfvarもカバーできますね
00:41 (Oracle) できるのかー
00:41 (Oracle) ふーむ、ネロ完成したらテスト兼撃破挑戦キャラを作りましょうかね
00:42 (Oracle) 勉強しよう
00:42 (hitachi) まあ変数60個分くらいまでならgametime貫通用変数と両立しつつ復元できますかね
00:46 (hitachi) というか
00:46 (hitachi) varだけ復元するなら60個分の領域が確保できるからわざわざ圧縮なんてしなくてもいい
00:48 (hitachi) 私のやり方で保存すると相手の変数1つあたり1.2個の保存用領域が必要なので
00:49 (hitachi) 相手がvar全部使うことはそうそうないということを利用して対象の変数が0ならそれを飛ばすという処理をやってるので
00:50 (Oracle) 確かにその条件なら圧縮は無駄ですね
00:58 (Oracle) fvar(40)のときにvar(60)も出てたけど
00:59 (Oracle) fvar(40)の話が%nFvar弄りくらいしか使えないもんだと思って宝、全然意識してなかったなあ
01:00 (hitachi) 私もこれさっきtwitter見て気づいた
01:02 (hitachi) https://twitter.com/hitachi_5300/statuses/462236696453476353
01:02 (vesper0) [URL] Twitter / hitachi_5300: そうかfvar(60)とvar(40)も使えばsysfvar ...
01:03 (Oracle) IRCでvar(60)がうんたらって誰か言ってた気がするんだよなあ
01:03 (hitachi) それも俺
01:04 (Oracle) 最初そのツイートみてもよく分からなかった。
01:04 (Oracle) あ、そうでございましたか
01:04 (Oracle) 具体例を提示されてやっと処理が分かったよ
01:06 (hitachi) 最初に見つけた時は自分でも流してたんだけどねえ

リンク:var(60)によるint→float変換[lunaの倉庫]

NEW  |  HOME  |  OLD

Comment

コメントの投稿


管理者にだけ表示を許可する

Trackback

http://kyoakumugenirc.blog61.fc2.com/tb.php/2721-cddb2276

NEW  |  HOME  |  OLD

 検索フォーム


 全記事表示リンク

 全記事表示(500件ずつ)


 プロフィール

vesper

Author:vesper

IRCチャンネルの
#凶悪MUGEN
#凶悪MUGEN_雑談
のログからMUGENに関するものを編集・公開しています。
修正した方が良い箇所があった場合は知らせてもらえると助かります。
MUGEN界隈からはリンクフリーです。
その他からのリンクはご遠慮ください。
このブログをリンクに追加

IRCへの入り方などは
IRCに関する記事
をご覧ください。

簡易凶悪MUGEN IRC情報
・ホスト名
 [irc.friend-chat.jp]
・ポート番号
 [6664]
・チャンネル名
 [#凶悪MUGEN]
 [#凶悪MUGEN_雑談]
 (以下はお好みで)
 [#凶悪MUGEN_艦これ]
 [#凶悪MUGEN_スマブラ]
 [#凶悪MUGEN_麻雀]
 [#凶悪MUGEN_緋想天]
 [#凶悪MUGEN_アカツキ]
 [#凶悪MUGEN_小説]
 [#凶悪MUGEN_絵チャ]

・推奨IRCクライアント
 LimeChat2


 カテゴリ

記述の子カテゴリは目安程度に考えてください。

 最新コメント


 最新記事


 カウンター

累計の閲覧者数:

現在の閲覧者数:

 RSSリンクの表示


他ブログ更新情報(最新70件)

仕様上、下記のリンク一覧でサイトリンクにあるサイトはこの一覧に出ません。

Twitter


基礎リンク集


リンク

サイトに断り書きがない限りリンクさせてもらっています。
リンクしてほしくない場合はお気軽におっしゃってください。