Minecraft 1.8でプレイヤーのみ音声を変更する

マイクラ動画を幾つか勧められたのでちょっと観てみたらマイラクをプレイしたくなっちゃいましたw
なので久々にマイクラを起動するとv1.8.4までリリースされていました。
forgeは1.8のバージョンがでているみたいだけど、1.8.1で色々追加修正されているようなので、MOD制作は1.8.1以上のバージョンが出るまでお預け。

1.8以上のforgeは出ていないし、1.8でプレイかな?と思ってoptifineのページを見てみると独自に1.8.3に対応している!
スカイボックスの変更は使いたいので1.8.3でプレイする事に。

forgeと違ってライブラリに追加する方法なので少し面倒だったけど導入して、以前使っていたテクスチャパックをリソースパックへ変換して新しいワールドでプレイ!
いやー、バージョンアップってすごい。
1.5とか1.6と比べてバニラ状態でもサクサクプレイできちゃう(´ω`)
optifineを導入すると更にfpsが増加、マイクラで740台とか初めて見たw
と、とりあえず・・60fps以上は無意味なので垂直同期をONにして無駄なfps上昇を阻止。

設定やリソースパックのテクスチャ再構成に1時間ほど費やしてから本格的にプレイ。
大体5時間ほどプレイしてお家と倉庫ができあがりました。
Minecraft v1.8 - 久々にプレイ 1 Minecraft v1.8 - 久々にプレイ 2 Minecraft v1.8 - 久々にプレイ 5
Minecraft v1.8 - 久々にプレイ 3 Minecraft v1.8 - 久々にプレイ 4
既存のブロック数がかなり増えているのと、MODがなくても既存のブロックのモデルやUVを変更できるからバニラ状態でも十分遊べます。
工業系のMODはあまり好きではないのでこれで十分w

非公式wikiを読んでいると音声も変更できるようなので、プレイヤーがダメージを受けた時の音声を変更する事にしました。
デフォルトの音声はsounds/damage/にhit1-3、fallbig、fallsmallがあるのでリソースパックでコレを変更。
しかし・・これは他のモブと共通の音声で他のモブもウェアウルフな声にww

これはダメだ・・と言うことで海外のwiki(http://minecraft.gamepedia.com/Sounds.json)を見てみるとgame.player.hurtってエイリアスを発見。
sounds.jsonに記入するとプレイヤーのみ音声を任意の物へ変更できるよう。
続きを読む

イカロスオンラインをActiveXなしで起動する

2015/07/01追記:
 Firefoxからイカロスを起動できるアドオンを公開してみました、詳細はこちらの記事へ

昨日からOβが始まったイカロスオンライン。
ゲームの起動にはWebサイトからActiveXを使用するタイプなのでIE系系が必須。
残念なことにうちのPCはIEを消してあるので使えないw

幸いゲームクライアントの起動に必要な引数はゲーム起動ページ内に記載されているので、ゲーム起動のJavaScriptを乗っ取って引数をゲットすることにします。
乗っ取りのコードは簡単。

var body = document.getElementsByTagName("body")[0];
body.onload = null;
 
window.addEventListener("load", function() {
    var activeX = document.getElementById("wmoWebLauncher");
    activeX.object = true;
    activeX.ExecuteGameLauncher = function(path) {
        return 0;
    };
    activeX.execute = function(arg) {
        prompt("イカロスオンライン 起動コード", arg);
        return 0;
    };
    playstart();
}, false);

イカロスオンライン - 起動引数
1.BODYエレメントに記入されているonloadを無効化しゲーム起動やActiveXの確認をするplaystartの実行を阻止。
2.ActiveXが指定されているObjectエレメントにイカロスオンラインの起動に必要な変数等を設定する。
  このオブジェクトの変数やファンクションに乗っ取り用のコードを記入。
  今回は起動引数を渡しているファンクション「execute」にプロンプトを入れて、起動命令が出たらプロンプトに起動引数が表示される仕組み。
3.playstartを実行

本当に超簡単。
Greasemonkey用だけど、userChrome.jsでも動くと思う。
ダウンロードはGreasemonkey/userChrome.js配布ページから。

あとはゲットした起動引数をランチャーに渡すだけ
batファイルが楽で良いので作ってみる。

@echo off
setlocal
 
set gamedir=C:\WeMade Online\ICARUSONLINE\Bin32
set launcher=WGLauncher.exe
set runcode="no"
set confirm=0
 
cd /d "%gamedir%"
 
 
:code_input
set runcode="no"
cls
echo.
echo イカロスオンラインの起動コードを入力してください。
set /p runcode=
if not "%runcode%" == "no" (
    goto check
)
goto code_input
 
:check
set confirm=0
cls
echo.
echo 以下の起動コードでイカロスオンラインを起動します、宜しいですか? [yes/no]
echo %runcode%
echo.
set /p confirm=
if "%confirm%" == "yes" (
    goto run
)
if "%confirm%" == "y" (
    goto run
)
if "%confirm%" == "no" (
    goto code_input
)
if "%confirm%" == "n" (
    goto code_input
)
goto check
 
 
:run
cls
echo.
echo イカロスオンラインを起動しています...
start /d "%gamedir%" %launcher% %runcode%
 
:end

イカロスオンライン - 起動引数入力
インストールした場所をかえている場合はgamedirの値を変更するだけ。

起動引数を入力したら、コマンドプロンプトの指示に従えばランチャーが起動。
イカロスオンライン - ランチャー
あとはゲームを起動して遊ぶだけ!

ゲーム制作者側はいい加減ActiveXに頼らないプロトコル起動を採用して欲しい。

また楽天にやられた

15日に出先で立ち寄ったサークルK。
その会計中に「ポイントカードはお持ちですか?」と言われたので、「どのカード?」と答えると楽天ポイントカードの案内を見せてくれました。
「既に会員だから持ってるカードではだめなの?」と持っているカードを見せたけれど、それとは別のカードと説明された。
既に楽天の会員でも+Kのカードを楽天のIDへ追加登録するだけで、既存の楽天のポイントへ加算されるようになるってやつらしい。
Rポイントカード
楽天銀行を使っていた頃のポイントが結構貯まっているので、そのポイントが使えるなら・・・と言うことでカードを発行してもらい退店。

家に帰って登録を行おうとすると「メールアドレスが正しくない」と言うことで登録できず、サポートに連絡するとメールアドレスに記号が含まれているとダメだそう。
使っているメールアドレスを伝えると+がダメな要素らしい。
+の記号はRFC5321とRFC5322ってメールアドレスの規定で使ってもよい文字として定義されている物。

他のアドレスを使うように言われたが、楽天関係だからISPや携帯端末のメールアドレスは使いたくないw
なのでショップ関連用のGmailアドレスにエイリアスを使用したのに・・・

そのことを伝えると、実店舗に設置されているKステーションでメールアドレスなしで+K会員に登録できるとのことで、翌日登録することに。

で、翌日Kステーションで+K会員に登録しあとは楽天IDと紐付けするだけとなった。
帰宅後に楽天へログインしRポイントカードの利用登録をしようとすると・・・
Rポイントカード 利用登録

入力したRポイントカード番号は以下の可能性があります、ご確認のうえ、再度ご入力ください。
・すでに削除済みのRポイントカード番号
・実在しないRポイントカード番号
・他のユーザーが登録しているRポイントカード番号

続きを読む

Avira Free Antivirusでトレイアイコンを復活させる

昨日システムから「高負荷のサービスアプリケーションが実行中」と通知が出てました。
何かと思えばAvira Free Antivirusのアップデートが実行中で、なにやら新しいソフトを勝手にインストールされました。

それはMy AviraでAviraクラウドやAvira Antivirus等のサポート用ランチャーみたいな物。
このMy Aviraがインストールされると普通のAviraの通知トレイアイコンは消滅し、My Aviraのトレイアイコンに置き換わります。
そして、既存のAviraに加えMy Avira関連のプロセス2つが常時起動するようになりました。

このMy Aviraは.NET Framework 4.0のプロセスで、ランチャーとかそんな関連の物なのにメモリも結構食う。
やっぱり.netだからか・・・

勝手に新しいソフトをインストールされたのが気に入らないのでMy Aviraを無効化してやります。
まずは、タスクトレイアイコンの本体Avira.OE.ServiceHost.exeを殺すところから。
管理権限のあるコマンドプロンプトで下記コマンドを実行し、サービスを停止させ自動起動も無効化します。

sc stop "Avira.OE.ServiceHost"
sc config "Avira.OE.ServiceHost" start= disabled

次は、既存のAviraのタスクトレイアイコンを消しているAvira.OE.Systray.exeを殺します。
タスクマネージャ等でAvira.OE.Systray.exeを強制終了しスタートアップに登録されているのを解除します。

スタートアップは普通のレジストリ。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
にAvira Systrayがあるので消して終了。

同じ所にavgntが無い場合は
新しい文字値を作成しデータに下記を追加
"C:\Program Files (x86)\Avira\AntiVir Desktop\avgnt.exe" /min

これでMy Aviraは起動しなくなり、従来のAviraトレイアイコンが復活しました。
ちなみにMy Aviraを停止したからと言って、アンチウイルス等の機能に障害はありません。

アンインストールする場合は

"C:\ProgramData\Package Cache\{b050ed3d-9e75-4959-92f6-93cf74b461ff}\Avira.OE.Setup.Bundle.Migration.exe"  /uninstall
または
"C:\ProgramData\Package Cache\{b050ed3d-9e75-4959-92f6-93cf74b461ff}\Avira.OE.Setup.Bundle.Migration.exe" /uninstall /quiet

を実行するとアンインストールする事ができますが、共用モジュールが幾つかあるようなので試していません。

CLASSIDは環境によっても違うかもしれないので、違っている場合はレジストリで確認してみてください。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall