カテゴリー
fun

カードゲームMtGのカードで夫に妊娠を告げた人

妊娠をオタクな方法で夫に告げたかった(I wanted a nerdy way to tell husband that I am pregnant…) というタイトルで Imgur に投稿した ChimeraOfEbony さん。

二人ともがマジック・ザ・ギャザリング(MtG)で遊ぶカップルということで、 ChimeraOfEbony さんは、「驚きがあり、記念に取っておくこともできる知らせ方」として、カードの改造を考えたそうです。

表はこちら「愛溢れる妻(Loving Wife)」

「ゲーム中に一回、変身させることができる」「彼女は多くは望みません。少しのチョコレートがあれば幸せ」

変身で裏がえすと「妊娠した妻(Pregnant Wife)」に

「タフネスが10に達すると、子供トークンが投入される」「神々の名において、より多くのチョコレート!」

あとは、ブースターパッケージを上から破いて開ける夫のために、下からパッケージを開けてこのカードを差し込み、糊付けで未開封のように仕上げて、夕方に渡したということ。(その前にも何度かブースターを「本屋に寄ったから」とか言って買って渡すようにしていた、と。用意周到です)

あとは、一枚一枚何のカードが入ってるか確認する夫が気づくのを見守るだけ、と。

I wanted a nerdy way to tell husband that I am pregnant…

カテゴリー
ネットのサービス

マジック・ザ・GIFニング – 面白動画を載せたMtGのカードを生成するプログラム

カードゲーム「マジック・ザ・ギャザリング(MtG)」のデータを使ったネタプログラミングが Hacker News で話題となっていました。

Pythonで書かれ、GitHubで公開されているこのツールは、MtGのカードのタイトルに合った内容のアニメーションGIFを埋め込んで、MtGのパロディカードを生成するというプログラム。

生成したカードを定期的にツイッターにつぶやく bot 機能も持っていて、作者自身によるデモアカウント@MTGIFening では、6時間おきに一枚、新作カードが自動投稿されています。

ハウル・フロム・ビヨンド(彼方からの雄叫び)というカード名から生成されたのが、こちらのカード

なるほど、雄たけんでるように見えなくもない。

仕組み

Readme/ソースによれば、このツールの仕組みはこんな感じ。

カードデータの入手

MTG JSONで提供されている、全カードのJSONデータを取得する。そんなデータが有志によって管理されているんですね。これもGitHub上で管理更新されているようです。日本語データファイルもありました

ここからJSONファイルをダウンロードし、それを前処理のスクリプトで必要なレコードのみのcsvを作り、それを使って動いています。

ネタになるアニメーションGIFの入手

アニメーションGIF版 YouTube、みたいなサイトGIPHYAPIが提供されていて、その中にキーワード検索APIもあるので、ランダムに選んだMtGのカードのタイトルを食わせています。タイトルによってはGIFが見つからない場合もあるみたいですが、その時は見つかるまで繰り返しています。

“MtG”で検索して最初にでてきたのがこれ。

Giphy sample

オリジナルのカード画像に、GIFをはめ込む

MtG公式からカード画像を取得し、MoviePyライブラリで、動画の各フレームを書き換えているようです。カードの世代によって画像の位置やサイズが違うので、世代にあわせて埋め込み座標を変えたりもしています。

ツイートする

PythonでTwitterを読み書きするTwythonを使い、生成されたGIFをツイッターに投稿させています。

これらをパッケージする Docker ファイルも置いてあり、自分の環境で簡単に再現できます。ツイッターに投稿するところは動かしませんでしたが、ローカルで動かしてみてできた画像がこちら。

コードも完結で短く、データやAPIを組み合わせてうまく作ってるなと思いました。

via Hacker News