干し石榴長文用

長文以外はTumblrへ徐々に移します。

DynamoDBへ出力するfluentdのDockerコンテナのビルド

タイトルのことをやらないといけなくなったのですが、
普通にfluent-plugin-dynamodbいれても "Broken pipe" で繋がらなくて唸ってたところ、

Apache→fluentd→DynamoDB でハマったこと - echo ${MY_OUTPUT} >>blog

☆ハマりポイント3 DynamoDBプラグインAWS-SDKの2.x未対応

えええと思って、記事の通りgemのaws-sdk-v1入れようとしたのですが、
これが依存関係でnative extensionを含んでおり、
環境がfluentdのDockerコンテナなのでgccやなんかのインストールから始まるし
やっとfluent-gem installできたと思ったらjsonの1.8と2.1がコンフリクトしたりなど、
半日すったもんだして以下のDockerfile(というかRUN)で成功しました。

FROM fluent/fluentd:debian

RUN apt-get update && \
    apt-get install -y ruby-dev gcc zlib1g-dev patch make net-tools && \
    fluent-gem install fluent-plugin-dynamodb -v 0.1.12 && \
    fluent-gem uninstall --force --executables aws-sdk aws-sdk-core aws-sdk-resources -v "~>2" && \
    fluent-gem install aws-sdk -v "~>1" && \
    fluent-gem uninstall --force json -v "~>2" && \
    apt-get purge -y ruby-dev gcc zlib1g-dev patch make && \
    apt-get autoremove -y && \
    apt-get clean

COPY ./fluent.conf /fluentd/etc/

イメージサイズがめちゃくちゃ膨らんだのでaptで入れたものも掃除してあります。
fluent-plugin-dynamodbがaws-sdkの2.xに対応してくれれば

RUN fluent-gem install fluent-plugin-dynamodb

の一発で済むんじゃが…

サガスカ1周目レオナルド編クリア

発売から5ヶ月くらいかかりようやく1周しました。
いやーめっちゃ面白かったので感想というかポイントを

シナリオ
  • 忘備録が便利で話を見失いにくい
    • というか本編中で出てこない重要事項がサラッと書いてあったりする
  • 初見の情報なしでも行き詰まらなかった
  • 基本的に相方との掛け合いなので過去作より瑞々しい印象
  • 自由っぷりは相変わらず
  • 門番モブが妙にかわいい
システム
  • 技ランク・ロールがありキャラメイク要素強い
    • 得意武器の技コンプで終了という過去作とは一線を画す
    • とにかくバトルでの使い込み=愛が必要
  • 各バトルにミッションがあるため周回がさほど脳死しない
    • 1戦が重いので時間と精神力的に辛いとも言える
  • ダメージ規模はおそらく過去作の1/5くらい
    • 最終盤の地ずり残月でようやく1000オーバー
バトル
  • とにかく無駄な技がない
  • 連撃の仕様上、パーティ内で素早さがバラけている方が良い
  • 回復手段がめちゃくちゃ乏しい
    • 回復術あるものの詠唱ターンを要するのでそもそも攻撃した方が早い
  • 壁役を入れてから圧倒的に安定し始めた
    • プロテクト技は対象の味方を指定可能で身代わりになる
    • 壁役の盾ガード&武器ガードが結構発動するので極端な話敵を無力化できる
  • 素早いリザーブ解除役がいないと動きにくい
  • 挑発技で敵のタゲを制御できる
    • かつてなくカウンター技を狙いやすい
  • インタラプト技は素早さに関係なく先制する手段として優秀
    • 早い敵に疾風打でバンプ → フィニッシャーで倒す
  • 術は序盤から終盤まで有用
    • 序盤:サイレン・フラッシュファイア1発で勝負が決する
    • 中盤:毒霧・超重力が強い
    • 終盤:召雷ゲー
  • WP・JPがなくBP共有&初ターンはBP少ない
    • 全員で最強技連発で瞬殺という過去作の常套手段が使えない
    • かつてなく毒・麻痺・眠りが意義をなしている
    • 各キャラの残りWP・JPを気にしながら進めるストレスがない
バトルまとめ
  • パーティー5人のうち以下4つは必須
    • 火力 (大剣・斧)
    • 妨害・リザーブ解除 (槍・弓・小剣・長剣)
    • 壁 (長剣・槌)
    • 術士
  • 残り1枠は仲間と相手に応じてどれか一つ
    • デバフ (斧・槌・大剣)
    • インタラプト (小剣・槌)
    • 挑発・カウンター (大剣・体術)
    • タイムライン移動 (槍・体術)
まとめ
  • 自由
  • かといってサガフロほど投げっぱなしではない
  • 主人公と相方が可愛い
  • バトルは勘所を掴むとめちゃくちゃ面白い

そんなところで以下レオナルド編ダイジェスト
(Twitter画像投稿埋め込み多数)

続きを読む

【LoV3】VACUUM of VERMILION【ギルド演習】


すみません、この時点で【】ミリアと【】リリスが混ざっていました…

さけ部にて「やりますか!」ということで実際やってみることに。
言い出しっぺなので録画がんばろうと思い戦闘を追っていたのですが、
録画予約ボタン押し忘れました…すみませんでした…何をしに来た感がやばい

というわけでみなさんの動画をお借りします。

結果として、

  • リリスの吸引はARMSのクールタイムが長いので無限ループはしない
  • 普通にやるとロックブーケ圧勝
  • 対ミリアでは吸引こそないものの自ら魅了されにいって破滅する様が妄想通りでGood

僕はサブテーマとして七英雄単でいくことにしたのですが、
静謐ハイアーツでいけるやろという慢心がありましたが50カウントほど足りず。
普通に召喚してしまうとハイアーツによるカット分が美味しくないので、
中盤までマナ貯めは意識してなかったのですが、

  • マナモン刈り全力
  • 静謐ハイアーツ前に池袋・新宿・大久保は超覚醒

しとけばいけそうな感じがあり、模擬戦で1回試しときゃよかった…

そんなわけで、お付き合いいただいたみなさんありがとうございました!
普段は散々全国対戦で殺伐ofヴァーミリオンだからね、やっぱりギルド演習は良いものだね。

開発用の証明書がRevokeされていたときの対処メモ

会社の共有iOS開発者アカウントで別チームの人が証明書をRevokeしてしまったらしく、
ビルド時に以下のメッセージが出たときのXcode8対処メモです。

The certificate used to sign "Hoge" has either expired or has been revoked. An updated certificate is required to sign and install the application.

  1. プロジェクト名 → "TARGETS" → "Signing" → "Team" をNoneにする
  2. キーチェーンアクセスを開いて当該証明書を削除
  3. プロジェクト名 → "TARGETS" → "Signing" → "Team" を再設定する

これで証明書が自動で再作成されました。 

サガフロ2やり直しおわった

発売当初の中学の頃になんとなくやり散らかしたサガフロ2をやり直しました。
大人になってからやり直したいタイトルオブザイヤー2017

テラバトルに期間限定付き周回要素が入ってから疲れてやめてしまい一気に進んだ感あります。
もう数日間に何十周も必要なゲームはできんのじゃ

最終的に風と樹のうた&魂の歌の習得に苦悩することになったのですが、
グールの塔のアニマグール&スライム(7)でグスタフがサクッと覚えました。
スライム(7)は滅茶苦茶強いですが即死が効くので焼殺&断滅でサクサク回せました。
最初は炎の将魔&メガリスドラゴンで覚えようとしてましたが流石に1回あたりの時間かかりすぎで断念

以下、主に町人の味わい深い名言集など

続きを読む

iOSアプリ用アイコンにリサイズするスクリプト

iOSアプリは死ぬほどアイコンのサイズバリエーションが必要なのですが、
いつもMacに入っているsipsコマンドでリサイズしてたのですが、
一個ずつ手打ちするのが面倒なのでシェルスクリプト書きました。

参考:MacOSX固有コマンド『sips』を使って画像のリサイズをする - ONILOQ NOTE

いやはやシェルスクリプトでループとか初めて真面目に書きました。
サイズやファイル名などは適宜書き換えてください。

シェルスクリプトで実数の計算は面倒らしいので、83.5の2xはやむなく167で代用してます。

#!/bin/sh

sizes=(20 29 40 60 76 167)
scales=(1 2 3)

for size in ${sizes[@]}
do
  for scale in ${scales[@]}
  do
    scaled_size=`expr $size \* $scale`
    file_name=icon_${size}_${scale}x.png
    sips -Z $scaled_size origin.png --out gen/${file_name}
  done
done