JKaiUI改良版 配布中

JKaiUI改良版をファイル置き場にて配布中です。

最新版はここから落とせます。追加機能の使い方の説明は落としたファイルのReadMeファイルを参照してください。

オリジナルのJKaiUIの使い方、Mac上でのXLink kaiの情報はMac de Kaiを参照してください。

JKaiUI改良版はまだ開発版です。オリジナルからそう多く変更していないので大丈夫だともいますが、ご利用は自己責任でお願いします。

2013年8月31日土曜日

迷惑メール対策

メールを利用していればたいてい迷惑メールを受信したことがあると思う。
迷惑メールはかなり面倒な存在である。
これらの対策にはいろいろな方法が存在し、いろいろ提供されている。
プロバイダで提供しているもの、クライアントソフトで提供しているものなどがある。
今回は私が利用しているメーラーThunderbirdでの方法を説明する。
Thunderbirdを前提にした説明になるが他の環境でも応用は可能である。

対象環境

  • IMAP
  • Thunderbird

方針

  • 受信ボックス一カ所だけだけ見れば新着がすべて見れるようにする。
    • 新着は受信ボックスのみ見ればよく手間が減る。
    • スマホなどで利用するとき受信ボックスがアクセスしやすいものを考慮している。
    • 例:iphone標準の「メール」
  • 受信時に自動的にメールにタグをつける。
    • フォルダ分けされていなくてもタグにて色分けさせメールの見分けがつけやすくする。
  • 利用者は受信ボックスを見てタグ付けが問題なければタグに基づいてフォルダ振り分けを行う。
    • 受信ボックスの件数を減らし、可読性をよくする。

方法

説明用の環境例としてgmailを用いる。

  1. サーバー側での自動的なフィルタリング(迷惑メールフィルタも含む)は行わない。
    • gmailではデフォルトで迷惑メールフィルタが動作するのでこれをオフにする。
      • webブラウザでgmailにアクセスし、from欄に「*」を入力したフィルタを作成する。
  2. クライアント側で受信時に各メールにタグをつける。
    • Thunderbiradのメッセージフィルタを利用する。
    • フィルタを適用するタイミングを「メールチェック時と手動実行」にする。
    • フィルタの設定は後述する。
  3. ユーザーは後にタグに基づいてメールをフォルダに振り分ける(フィルタリングルールを作って自動で行う)。 
    •  Thunderbiradのメッセージフィルタを利用する。
    •  フィルタを適用するタイミングを「手動実行」にする。
    •  フィルタの設定は後述する。 

メッセージフィルタルール

メッセージフィルタを用いてタグ付けとフォルダ振り分けを行う。
タグ付けの後にフォルダ振り分けを行う。
以下はその一例である。
  1. タグ付けルール
    1. 信頼できるアドレス(完全一致)
      • 例:差出人がアドレス帳にある
    2. ある程度信頼できるアドレス(ドメインなどでタグ付け)
      • 通販サイトや企業、学校などからのメールを想定
        • 例:差出人が次で終わる@apple.com
        • 例:差出人または宛先、CC、BCCに次を含む
      •  メーリングリストなどでは件名に規則的なものがつかわれているばあいがある。
        • 例:件名に次を含む
    3. 迷惑メール1
      • 基本的にドメインを見て判定します。
        • 例:差出人が次で終わる .mobi
          • 末尾がcom, co.jp, jp, ac.jpなど決まったところ以外はだいたい迷惑メールの傾向がある
          • orgなど他にもあるので自分のやりとりするアドレスの傾向を見て決める。
        • 例:差出人が次で終わる @docomo.ne.jp
          • 携帯からのメールは知り合いのアドレスを登録しておいて引っかからないようにする。
          • PCメールに携帯メールは知り合い以外からはそこまで送られてこないと仮定している
    4. 迷惑メール2
      • 自分宛ではないメール
        • 自分のアドレスが差出人、CC、BCCにない場合は迷惑メールとする。
        • タグがない場合以外ではタグをつけない。
          • メーリングリストなどでは自分のアドレスが含まれない場合があるため。
          • 他のフィルタでタグ付けされるように設定する。
        • 例:
          • 条件1:差出人または宛先、CC、BCCに次を含まない 自分のアドレス
          • 条件2:タグが空 
  2. フォルダ振り分けルール
    1. タグに基づいてフォルダ振り分けを行う
      • 例:タグに次を含む

まとめ

迷惑メールフィルタでは基本的にメールの中身を見て過去のメールと似たものを迷惑メールと判定している。
この方法では、迷惑メールではないものを迷惑メールと判定してしまう場合がどうしても発生する。
そのような場合がなるべくなくなるような方法を考案している。
また、スマホなどでフォルダ分けした場合に受信ボックス以外を見れないなどの弊害をなくすことも考慮している。

この方法では欠点もある。
1つ目は設定が煩雑であること。
自分が送受信するメールのアドレスをある程度把握している必要がある。
また、送受信するアドレスが変化した場合にフィルタのメンテナンスが必要であること。
2つ目はフィルタリングが多段になるために処理が時間がかかること。

以上のような利点と欠点を持っているが、個人的にはかなり便利になった。
迷惑メールで困っている方の参考になれば幸いです。

2013年8月24日土曜日

Javaコーディング規約

ここのがすごい参考になりました。
http://www.acroquest.co.jp/webworkshop/javacordingrule/javacordingrule.html

2013年8月17日土曜日

gmailに他のメールアドレスを統合

gmailで他のメールを受信するようにすることでメールアカウントを統合できます。

やり方は以下を参照。
https://support.google.com/mail/answer/21289?rd=1

gmailでの受信はpop3に対応している必要があります。
統合するとGmailを介しているだけ受信が遅くなります。
また、Webからアクセスしている場合からなら受信アドレスにあわせて送信アドレスを変更できます(設定が必要)。
しかし、メールクライアントソフトウェアを利用している場合はそれができない場合があります(Thunderbiardにて確認)。

1つの(無料)gmailアカウントで受信できるpop3アカウントの制限は5つです。
ただし、多段にすることで簡単にその制限をなくせます。

例:
  • gmail#1
    • gmail#2
      • yahoo#3
      • yahoo#4
    • yahoo#1
    • yahoo#2
    • hotmail#1
    • icloud#1

例では合計8つのアカウントを統合しています。
黒丸が統合先アカウント、白丸がgmail#1で受信するアカウント、黒四角がgmail#2で受信するアカウントになります。
この方法の問題点は段の低い方(例では黒四角)がより受信に時間がかかるということです。
なので、低い段には重要度が低いアドレスをおくといいです。

2013年8月10日土曜日

吉里吉里 KAGでのfor, foreachマクロ

吉里吉里のKAGには繰り返しがありません。
そこでマクロを作ってみました。

そこそこうまくできたのですが、不満点というか欠点として繰り返し処理(for文の中身)を一連の流れの外に書く必要があります。
もっと使いやすくしたのですが現状ではここまでが限界でした。
もっといいのがある。もっと良くできる。など意見があれば連絡ください。

マクロの説明

最初に通常KAGで私が書くときの書き方を
次に、作成したマクロの使用例をいくつか書きます。
最後にマクロの中身です。


KAGでのfor文

0から9を表示するだけです。


for, foreachマクロの使用例


for文1
上の例と同じく0から9を表示します。
tf.iを増やしながら*doのラベルの処理を行います。
tf.iの初期値は0です。

for文2
こちらは2から9を表示します。
startでtf.iの初期値を指定できます。

foreach文1
foreach文の例です。
この例では配列内の数値が順番に表示されます。
listに配列もしくは配列の入った変数名を指定できます
tf.elemが各要素になります。

foreach文2
scenarioフォルダ内のファイルを表示する例です。

foreach文3
bgmフォルダ内のファイル一覧から再生リストを作成する例です。
listを指定しない場合はtf.listが操作される配列になります。
そうすることでtf.listとtf.iでtf.elemのかわりをすることができます。
tf.elemで書くと面倒な場合などで利用できます。
この場合、tf.elemにそのまま置き換えるとファイル名が変数名と判断されるためにエラーになるためにこのようにしています。
(tf.elemでもエスケープシーケンスを使って文字列扱いにすれば解決できます。)

foreach文4
tf.list以外を利用したときはlistに変数名を指定します


for, foreachマクロの実装

重要な部分だけ説明します。
まず、[eval exp="mp.val=Scripts.eval(mp.list)"]の行です。
KAGのマクロでは引数は文字列で渡されるようです。
そこでScripts.eval()で変数名から中身の配列への参照を得ています。
次に[call target="&mp.func"]の行です。
func引数に指定された文字列のラベルにジャンプします。
ジャンプ先の最後のreturnタグで戻ってくることを想定しています。
またKAGにおいてマクロは呼び出し元のコンテキストで実行されるようです。
すなわち、storage引数が呼び出しもとファイルと同じ物となります(forマクロと呼び出し元は異なるファイルと仮定)。
そのため、このコードでは呼び出し元と同じファイル中のラベルをfunc引数に指定する必要があります。
違うファイルのラベルを呼べるようにするにはstorage引数を追加するだけでおそらく可能です。

2013年8月3日土曜日

AVGの演出技術

AVGの演出技術に調べていて大変参考になるものを見つけたので紹介しておきます。

http://hwm2.gyao.ne.jp/serio/games/direction.html

長いけどとても参考になります。
2011年が最終アップデートなので最近の情報がないのが残念な点です。
が、今でも十分に通用するでしょう。
もう一つ、残念な点に文字ばっかりというのがありますが版権の都合上しょうがないかと。
体験版探して自分で確かめるのが一番いいかも。
もちろん、時間とお金があれば製品版で確かめるのもありです。

というか、どれくらいゲームやったのかが気になる・・