ToDo:
http://blog.64p.org/entry/2012/07/11/224008
via https://plus.google.com/102550604876259086885/posts/AnEoGQexUcG
scons なんて始まってもいねえよ! ってのが僕の感覚だなあ、たいしてしらないけど、必要じゃない機能ばっか充実しているという mukai さんのイメージに賛成する感じ。
scons に関していつも言ってる悪口に、ファイルが本当に変更された時にだけ依存関係をビルドしなおしてくれるという便利な機能がある。
これはどういうことかというと、 hello.c から hello.o と hello を作ったあと、 hello.c を touch してもビルドしなおしてくれないと。 stdio.h とか書きかえた時とか、そういう特殊なことしてるからわざわざ touch してるわけで、なんか余計なお世話としか言えない。で、しょうがないなと hello.c の末尾に空行を一行足したりすると、 hello.o はリビルドされるけど hello はされない。何故なら hello.o のチェックサムは変わってないから。
そしてその余計なお節介にしか思えない機能が自慢気に書いてあるあたり、なんかすくなくとも僕の感覚とはずれてるなあ…としか思えない。
http://www.scons.org/doc/0.98.5/HTML/scons-user/c779.html
で、まーそういう余計なお節介があると知ると、あの遅さがそういう余計なお節介のせいではないか…とか思われて、どうしたもんかと思ってしまう。
ただ、一応今ぐぐってみると、色々速くする方法はあるみたいだ…ただ make 系ツールのデフォルトの挙動を遅いものにするセンスからして、このへん頑張っても make 程度にも速くならないんじゃないかな…とか思ってしまうよね…
http://www.scons.org/wiki/GoFastButton
あといつも言ってることだけど、ビルドシステムってのは、こうなんか、人々に再生産させたくなるようなオーラがただよってるらしく、なんか許しがたい数既にあるので、 make にムカついて僕の考えた無敵のビルドシステムを作ろうとしてる人はコレを見て考えなおしてほしい…
http://en.wikipedia.org/wiki/List_of_build_automation_software
mukai さんも書いてる通り、 automake/cmake/gyp あたりは一つ上のレイヤにいるので、そのへんはまぁ OK 。 autoconf のレイヤは特に代替があまり作られてない気がするけど、まぁ Unix 乱立がおさまりすぎて、ああいうのの時代は終わりつつあるのかもな…
ところで autotools はひとくくりにして、嫌ってる人が多い気がするけど、僕的には autoconf は必要で automake は死んでもいい派。 autoconf 無しだと、わりと色々詰んでると思うんだけどな… cmake は autoconf 的なことを少しだけしてくれた気がしたけど、どうだっけ…
libtool は実際問題正しくライブラリ用の make 書ける気がしないから、本質的じゃないけどあれも必要かな…とか言ってると automake 無しで libtool 使うの大変とかで必要になってきて、こまるわけだ…一度 automake 抜きで autoconf/libtoolize 使うとか練習してみるのも良いかもしれない…
(00:57)
sucks シリーズ、 JS はあまりよく知らないのにすごいのがいっぱいあるから書いてなかったけど、ちょっと書いてみた。
http://shinh.skr.jp/h/?JSSucks
(01:23)
の話を聞いて、 GCC でコンパイルしたコンパイラは大丈夫で、そのコンパイラでコンパイルしたやつはまだ大丈夫だけど、次でクラッシュするバグがあった、みたいな話をしていた。
で、 TCC であそんでたとき似たようなのがふたつあったなーと思ってたんだけど、片方しか思い出せない。そっちの片方はまだ2世代目が3世代目をビルドする時のやつで、こんな感じだったと思う。
INT_MIN 以下の値のリテラルの扱いがバグってて、なんかデカい値になっちゃう。 GCC はそんなバグ持ってないから1世代目は大丈夫。2世代目はそのバグを持った1世代目コンパイラでコンパイルされているので、コード中に一箇所だけある INT_MIN 以下の値が出てくるぶぶんがおかしくなってる。そのデカい数字が何でできてるかっていうと、 32bit 相対 call で届くかをチェックする部分で、届かないから trampoline 作らんといかんのに作らないから届かなくて SEGV する、っていうような感じだった。
このクラッシュは記憶がたしかなら3世代目を tcc -run で実行してる時、つまり
tcc -run tcc.c -run tcc.c -c hello.c
的なことしてる時しか当時は再現しなくて、小さいプログラムだと件のチェックに漏れるような種類の長距離 call が出てこなかった、とかなんとか。このへん記憶あやしくて最後に走らせるコードは tcctest.c でも再現してたかもしれない。
このバグ再現させるには JIT 生成されたプログラムから負方向の 32bit を越える距離の関数 call をする必要があって、これが小さいプログラムだと起きない。なんでかっていうと、プログラムは malloc された空間に置かれてて、 glibc の malloc は小さい malloc に対して最初のうちは 32bit におさまるアドレスを返すから。でも、デカいプログラムだとデカい malloc をする必要があって、となると 64bit なアドレスがかえってきてやっと問題が再現する…とかいう感じだったと思う。
うーんでも詳細イマイチ覚えてない…
それをゴマかした時の変更はこれだったんだと思うんだけど、ただこれは上記の話をきちんと説明しきれてない気がするんだよな…
http://repo.or.cz/w/tinycc.git/commitdiff/51a7f163ad4a363953ae744afbc12cd7bd381097
あともう一個はよくある 32bit 命令を 64bit アドレスに対して使っちゃってた、っていう系だと思う。この手のバグは頻繁に起こりすぎてて、世代を経ると発生するみたいなヘンなヤツでもイマイチ詳細を覚えてないんだよな…
(00:04)
http://shinh.skr.jp/m/?date=20090416
微妙な記録を見つけた。
tcc -run tcc.c -run tcc.c は tcc -run tcc.c -run tcctest.c より先に動いたらしい。で、前者の方動かすのに最後に必要だった変更はそのデカい int literal だった、っていうのは、時期的にも正しい記憶だったようだ。
(00:11)
cydaea はなんか強かった。 FoT 的に細かい敵たくさんは案外めんどい。 NV 捨てて、 sweeping wind 入れて何度かやったら勝てた。倒した時はもういけるかとゴリ押ししたらかなりギリギリ感があった感じだった…
http://us.battle.net/d3/en/calculator/monk#abXkgi!XUY!acbaYY
azmodan は初見普段ビルドで余裕。 melee 的にはザコだな…まあ血の池弱くなってるんだよねたぶん…
iskatu もなんか強かった。細かい敵たくさんはやはりきつい。 FoT がきついので、 cripping wave とかを久々に入れてみる。あとはザコ多い戦闘では恒例の sweeping wind
http://us.battle.net/d3/en/calculator/monk#WbXkgi!XUT!YcbaYY
(14:19)
rakanoth 。結構強い。 sweeping wind 足したり防御重視にしたり。 sweeping wind はどうも普段からあると良いと思うんだけど、 primary 二つないとザコ戦しんどいんだよな… enchantress のスキル変えてみたりも。
http://us.battle.net/d3/en/calculator/monk#aiXhgj!XUT!aYbaYc
MoE と ally 頼りで殴り続けて、喰らいはじめたら breath of heaven 使って逃げるか、 serenity で殴り続ける。両方 CD の時は逃げ続ける
(16:07)
http://shinh.skr.jp/m/?date=20120703#p01
で書いた libarchive の tar は zip 内の symbolic link をちゃんと溶かしてくれないのであった…
(16:27)
モンク終了。
izual は WD の時はあれだけ苦労したのにザコだった。普段のスキルのまま倒せた。
diablo もまぁ長いだけでザコ…なんか第三形態って攻撃かなり激しくなってるんだな WD の時は常に離れてるから気付かなかった…スキルは rakanoth と同じ。
装備とかは ghom からなんも変わってないと思う…本当に ghom さんラスボスだった…
DPS16k armor6779(5339+1340) res708(all:450) life27961 LoH691
ghom の時と違う理由は単に二刀流か盾かってだけ。装備は全体的に spirit regen 無くてキツいな…という感じだった。
(22:53)
ghom たおした。
nerf とか入らんかったから farm だけで倒せる装備が入るの待つのがだるかったので、あっさり AH 無ししばりをヤメて安物を買いあさった。
最初は盾装備 15k くらいで戦ってて、あと1割くらいかなーてとこで enrage しちゃったので、1割くらいなら余計に殴れるかな…と思ったけど、また enrage すると悲しいので、盾やめて両手持ちにした。
DPS20k armor5482(3857+1625) res732(all:474) life28101 LoH600
http://us.battle.net/d3/en/calculator/monk#biXkgY!XUY!cYbaYc
買ったものは
ざっくり 1M くらいか。それでずいぶん強くなるなっていうか正直もうこれでクリアできる装備なんじゃないかな…
変わらなかったのは胸腰腕肩。
(00:47)
ついでに siegebreaker 倒した。 reflect damage ついてようが普段から LoH ついてるモンクからすればザコもいいとこだな…
act3 のこの部分元々簡単だったけど、それにしても簡単だった。どうもいい装備買いすぎた疑惑がありますね…目についたものを転売してたせいで金減るどころか増えてるんだけど…
そういえばウワサの vault てやつを回ってみた時に NV5 のまま belial ラクに殺せたりしたし(まあこの子は enrage さえしなければたいして問題じゃない)。
(01:36)
ねぼけて zip に使ってしまい、展開できてしまったことに驚く。
man によると
https://developer.apple.com/library/mac/#documentation/Darwin/Reference/Manpages/man1/tar.1.html
This implementation can extract from tar, pax, cpio, zip, jar, ar, and ISO 9660 cdrom images and can create tar, pax, cpio, ar, and shar archives.
とのこと。なんともはやだなー
で、 opensource.apple.com から gnutar をダウンロードしてみるも、どう見てもそんなパッチは入ってない。あーこれ BSD 由来なんかなーと --version してみると、 libarchive というものを使ってるとのこと。
なんか windows/mac フリーソフトウェア界が有史以前に通った道を21世紀にもなってやってる感じな気もしないでもないけど、しかし linux でもこれ使えるのは普通に嬉しい気がする…
とはいえ見てみると結構歴史の長いプロジェクトのようだった
(00:29)
ラスボスになったいうウワサの ghom 。実際なんかビビるくらい強い。ちょっとずつダメージ当たる系はゴミ装甲が目立って enrage どころの騒ぎじゃない感じ。
AH 無しで複数箇所の装備のアップデートを farm でゲットするのはしんどいんで、 AH 解禁するか nerf とかで弱くなるの待つ感じかな…だんだんやる気減ってるから待ってもいいんだけど、そうするとよりやる気がなくなるだろうな
(23:35)
enrage のせいでこのままじゃ無理じゃねーと思ってたけど、 belial たおせた。 belial 第二を倒した段階で zoltun 同様 DPS 上げる装備に変えた。今回は LoH もいらんだろうと amulet も変えた。ただそれだと盾無しだと腕で即死で、腕全部よけてると enrage に入るので、 passive で Resolve 入れたらなんとか耐えれるくらいになった。あと primary 二つはいらんかな…と DPS と spirit 回復兼ねて sweeping wind を入れた。他はそのままで良いと感じたのでそのまま。
戦闘は、3連打じゃない腕は cooldown と付近の health globe 次第であえて受けて、回復しつつそのまま殴り続けた。ブレスは ranged の時と立ってる位置が違うからか、当たるけど威力減ってる? という感じだったので、これも受けてそのタイミングで breath of heaven の時間を延長する感じにした。あと毒沼最後の方で無敵使えるならもったいながらず発動してその時間殴った。
そろそろ enrage だなーて時間だったけど入る前に倒せたので、時間的には少し余裕があった気がする。似たような立ち回りしてるつもりなのにあんま減ってない時もあったのは、 sweeping wind と ally 使い忘れてるタイミングがあったってことかな…と思う。あと毒沼でたまたま ally が長生きしてる時とかあったりするだろうし、運ゲー感も。
そのへんの運ゲーと理想的な立ち回り (毒沼中も ally 見て死んでたら生き返す、受けれる腕は全部正しく受ける、 near death experience も使って殴る、毒沼をなるべく前で避ける) あたりをやれば DPS 12k くらいでもいけるんじゃないかな…その根性はないが。
第三の成功率は WD で倒した時と似たようなもんだったと思うんだけど、第二が安定してるんで色々ためせるし、ずいぶんラクだった。修理費は 200k くらいとかかなたぶん…
http://us.battle.net/d3/en/calculator/monk#aiXQgj!ZUT!aYbZYc
DPS16k armor2824 res357 life32719
(04:27)
町医者的なのって一旦開業するとその後パッチ当たってないことが多くてけしからんよね、とかいう話をした。まぁ町医者の仕事の99%くらいはたぶん普通の風邪を普通になおすことだろうから、1%のケースで適切にデカい病院にディスパッチしてくれれば良いのかなぁとか思った。自分にパッチ当たってないことを自覚してわからんことはわからんと認めて。
その後思ったことは、医者もそうかもしれんけど、ていうかぼくらプログラマもそうだよね…とか。僕自身も学生の頃ほど新しいこと覚えてるとはとうてい思えん。
(13:56)
monk で inferno にまた来てしまった…今回は AH 無しでいけるとこまで行ってみようと思う。
Act1 は hell の時の装備と、 WD が最後の方に拾って売ってなかった monk 向きっぽい適当な装備で余裕。つっかえることなく終了。 hell
Act2 でだいぶキツくなって、 WD ほどじゃないけど結構死ぬし、スルーせざるを得ない elite が出たり、 NV5 が維持しにくくなった。
で、 zoltun で詰まった。雰囲気的にはラクに殺せるボスなんだけど、3分で enrage でこっち即死とかいう適当な buff が 1.0.3 で入ったせいで、キツかった。普段は AS と攻撃時回復重視の、 DPS 10k くらいの 1H+shield なんだけど、ひろった dps1k ちょいの 2H にして DPS 15k くらいにして、スキルの片方を seven sided strike のスタンにして、特攻気味の戦い方に変えたら勝てた。無敵で殴ってる時にゴーレム二人とも殴れててかつスローくらってなければ割となんとか…という感じだったので、結構運ゲー。
スキルは基本的にこんな感じ。モンクはやってること地味だけど、プライマリ二つにすると普段それなりに考えることとアクション性があってわりと楽しい、というかまぁ好みなアクション性に。
http://us.battle.net/d3/en/calculator/monk#abXQgj!YUT!acbZYc
たまにいじってるのは、 breath of heaven を blinding flash にしてみたり、 mystic ally を sweeping wind にしてみたり。遊んでる時は tempest rush で走りまわるのはまぁ楽しい。
passive は hell の時は combination strike 入れてたけど、費用対効果低すぎで外れてしまった。 one with everything は AH 無しの安物装備だと外せる気しないし、 transcedence 外せるか見てみる感じかなぁ。今ひとつどのくらい効いてるかよくわかっていない。ていうかこれ本当に仕事してるのかな…て回復量だなよく見ると。でも resolve あたり入れる方が正しい気もする… armor 4770 res 359 dps10k life 31k
(14:16)
jdk8 ビルドできた on linux
hg clone http://hg.openjdk.java.net/jdk8/jdk8 cd jdk8 sh get_source.sh _JAVA_OPTIONS=-Dfile.encoding=ASCII ALLOW_DOWNLOADS=true ANT_HOME= LANG=C JAVA_HOME= LD_LIBRARY_PATH= ALT_BOOTDIR=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.3.x86_64 make
以下くらいのものを入れた…とおもう
yum-builddep java-1.6.0-openjdk yum install lesstif-devel yum install libstdc++-static
(17:00)
読まないなーとおもったら diz とかいうファイルに圧縮されてた。
http://mail.openjdk.java.net/pipermail/build-dev/2012-March/005798.html
を見るに ZIP_DEBUGINFO_FILES=0 とかで圧縮されないげ
僕はとりあえず unzip した
(17:46)
なんか 1.0.3 でバランスをよくするって話で、まぁ方向性としては良いのかなーという変更があったみたいだった。
でも、どうも僕の使ってた witch doctor はぶっこわれたようだった。たぶん最後の方に行ってる人の7割くらいの人が使ってるであろうスキルが、元々クセがあったんだけど、ハンパなくクセが増えたというか、敵の死体とか味方とか、地面の模様とか越えられなくなって、いつも以上に場所取り考えないときつい感じに。最初はこういう nerf なのかなーたしかにクマみんな使いすぎだよね…とか思ってたんだけど、敵の死体とか床の模様とかあたりでさすがにおかしいのではないか、と見てみたらバグだったそうだ。
あと死亡無敵のスキルが、無敵期間中に敵を抜けられなくなったようだ。これも地味にキツい。
僕はまあクリアしてるしトレハンとかあんまやる気足りないからいいんだけど、もともと弱いとされてるクラスの一般的な戦法が意図的な nerf じゃなくて、バグによって致命的にきつくなるってのはひどいと怨嗟の声があがってるようだ。 SC2 ではこういうひどいバグはなかったので、大きい会社でもないけどチームによって結構違うんかなーとか思った。自社ゲームを WD でプレイしてる人が2人もいれば気付きそうなもんなんですけどね…
あとバランス調整は個人的には好みではなくて、要は敵の攻撃ゆるくしてやるから攻撃オンリーじゃなくて、ちゃんと防御あげろボケという話で、まあゲームの調整としては正しいんだろうけど、どっちかというと死ぬか殺すかが好みなのでイマイチ。
あと弱いクエストボスに、強いザコの能力をつけることで強化、みたいな、後半ステージのクッパはハンマーを投げます、みたいな雑な調整がなされていて、それもなんかひどい話だなぁ…と思う。あと enrage timer とかいう、強いザコと一定時間戦ってると時間が切れてこっちの体力がみるみる減りはじめる、っていうよくわからない機能があるんだけど、これもクエストボスについたりして、弱い状態で強い敵を時間かけて倒す的な楽しみが完全に不可能になってて、これもひどいな…とか。敵の攻撃ぬるくしたから攻撃力カスだけどガチガチに固めてる人が30分ずっとクリックしてるだけで勝利、みたいなイヤなんだろうけど…
(01:16)
前 | 2025年 7月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ lrlj [ghom ほんとに強いですよね…まだ倒せてないです…]