最近遊んだ・遊んでないボドゲメモ2
光ネッサンス
概要:ルールが未定義、そんなことより俺もこういうの作ったことある
圧倒的なんだこれゲー
ルールが未定義
ゲームとしてはハンドからカードを使ってカードの効果に従うという処理の繰り返しなのだが
肝心かなめのカードの効果が一部どうとでも取れる表現で書かれており
結果「こうかん」というカードで「全プレイヤーが手札のカードを360度回転させる」
というよくわからない事態になるゲーム
5_こうかん - 光ネッサンス
このページを見てもらえればなんとなくどんなゲームかよくわかる
そんなことより俺もこういうの作ったことある
世の元少年よ!
お前も昔こういう風にオリジナルのカードゲームを作ったことがあるだろ!!
紙をカードサイズに切って鉛筆で絵をかいてさぁ!!!
もちろん自分もある。当然だ
そして今でも同じようなことをやっている。恐ろしいことに。本当に恐ろしいことに
……今の自分は光ネッサンスより面白いものが作れてるのだろうか、小学生の自分より面白いものを作れてるんだろうか
昔の自分を思い出して勝手にへしょげてた
キングドミノ
概要:シンプルで悩みがあると面白い
シンプルで悩みがあると面白い
キングドミノは最大4つのタイルから1つを選び自陣に置くだけの簡単なゲームである
しかしその「タイルを選ぶ」という行為が自分の利益・相手の利益・未来への期待値に割と直接的に絡んでくるため
決断を要求される
全員が同じ戦略になるというはないが二人ぐらいが同じ系統の戦略をとることはよくあり、
結果有限なタイルを奪い合う、自分の利益を蹴ってでも妨害に走らなきゃいけなくなる、戦略の変更を要求される、など苦悶に満ちていてとても良い
前評判のよいゲームだったが、実際とても優等生的なゲームだと感じた。おもしろい
ピタンゴ
概要:パーティーゲーム
見た目こそアルゴだが、これはパーティーゲームです。
手札のお題カードに沿ったしりとり(ただしターン制ではなくリアルタイム制)をして、手札をなくすことが目的となります
つまり、大のアホな大人が集まるとバカゲーとなります
子供とやると本来の目的通り「頭のよくなるゲーム」として遊べるのかもしれませんが残念ながらamazonで子供は売ってなかったので試せてません
ぶくぶく
概要:ハーツ系
ハーツが好きな人が好きなゲーム
ウィザード
概要:変形トランプによるトリックテイキング
シンプルだが純度が高めな感じがあるトリックテイキング
ナポレオン
概要:正体隠匿要素のある対戦系?トリックテイキング
ルールはウィザードの系統
ただし各ラウンドごとにナポレオン+副官(いないこともある)チームとその他に別れ戦う
サイノメコロシアム
概要:装備してカードで殴れ
良いのだけれどこのゲーム、サイの出目よりカードのほうが重要だった気がしなくもない
最近やったゲームメモ(秘封祭)
ボドゲメモ(やったボドゲとその特徴や感想)
今後何かの役に立つかもしれないので、やったボドゲとその特徴を書く
ゲームの紹介ではない
tichu
概要:変則大富豪
特徴:チーム戦・カード交換・割れ目系システム・得点カードの配置
割れ目系システム
ラージテーチュー、スモールテーチュー、と呼ばれるある種の割れ目システム
スモールテーチューはカードを一枚も出していない状態で宣言することができる。(パスし続けて一枚もカードを出さず、ゲーム終盤に宣言することも可能である)
宣言したプレイヤーが1位になった場合+100。なれなかった場合-100
ラージテーチューは手札が8枚配られた段階でのみ宣言でき(手札は全部で14枚)、宣言したプレイヤーが1位になった場合+200,なれなければ-200
億点カードの配置
tichuでは
5:5点
T,K:10点
鳳凰(オールマイティ):-25点
竜(単体最強。ただし、これでトリックをとった場合、そのトリックの得点は相手プレイヤーに行く):+25点
となっている
TやKのようなカードに10点を配置したのはゲームに味が出ている
Dancing Dragons
特徴:通し
通し
このゲームは手役を揃え、それを味方に指摘してもらうことで得点するゲームである
したがってチーム間で通しをする必要がある
また、敵が手役を完成させていると思ったらそれを指摘することができる。
その場合も得点できる
いかさまゴキブリ
特徴;いかさま
いかさま
このゲームはいかさまで手札を処分することを目的としたゲームである
いかさまの事例は、2枚だし、カードを引くべき場面で引かない、手札からカードを落とす、山札に戻す、何気なく出す、眼鏡に刺す(現行犯でないと捕まえられないのであとで気が付いても遅い)、等々
王への請願
特徴;運命操作
ぞんかま
電力会社
フェーズ終了時に場に出ている最も高額なカードが山札の下に行き、最終ターンにドバドバ出てくるのがバランス的にうまいなと思った
ドミニオン 帝国
新システム「借金」は6金帯の効果のカードを気軽に生み出せるヤバイシステムだと思った
棺担ぎのクロ6巻を買ってきてた
わーい。
以下メモ。ネタバレとかあるかも。注意
10時間くらいハーツの攻略法を考えてる
唐突にハーツがとても面白いゲームのような気がしてきて延々とCPU相手にハーツをしていた
「ハーツ 攻略」ググればはもっといいのがジャンジャンバリバリ出てくる気がするが
自分の中でかみ砕いたことが大事なのでそれを忘れないように
および自分の中で整理するために書き残しておこうと思う
ただCPU戦で考えた方法なので机上の空論感はある
カードの価値についての考察
戦略にもよる
低いカード (2-4とか)
リードを譲るために必要なのでとても大事
自分が同じ色を独占している場合、他プレイヤーがその色をすでに使い切っている可能性もあるので要注意
高いカード(AKとか)
リードをとることができる。後述のマリア対策などで活躍するかもしれない
ただ取った後どうするかのイメージがないと危険物質である。ヤバイと思ったら早めに捨ててしまおう
高めのカードを持っていることはそれを出さない方法があるなら(つまり低いカードを持っている状況なら)
そこまで不利にならないと思う。むしろ他との比率が重要
ダイヤが3,4,Aみたいなのは良い。
T,Q,Kみたいなのは不本意なリードをとらされ続けたりするのでよくない感じ
中くらいのカード(7-9とか)
とくにないです
スペードのJ以下
何を出してもマリアをつかまされることがないから安心
マリア対策
ブラックマリアは超怖いので取りたくない
スペード狩り
J以下のスペードを延々と出し続けてQの自爆or KAの登場を待つ
その他の色狩り
クラブorダイヤをリードを守りつつ1,2回上から出して
マリアを持っているプレイヤーがその色を切らしたと思ったら弱いカードを出し、他人にリードをとらせマリアをとっていただく
カンに頼ってるので一歩間違えると死ぬ。
スペードのAKが残っててスペード狩りされると死ぬときにオススメ
シュートザームーン
シュートザームーンは(4人対戦なら)相手に計78点入るのでマリアの6倍強い?
CPU相手ならそこそこ決まるので手札によっては狙うのは選択肢としてアリだと思う
シュートザームーンを狙うには?
大体AKとか+一色になる必要がある。ハートのAKがあると楽
概ね最終盤にリードを守り切る必要がある。
なので最終的に
何が出ても勝てるカード(AKとか)+リードをとり続けることができる同じ色のカード
の状態になる必要があり、そういう手札である必要がある
また、ハートの低い数字は持っていると失敗率が上がるので交換してしまうべき
(自分がそのカードを獲得す出来る状況は相手がハートを持っていない状況など。ハートがたくさんあるのならば問題ないかもしれない)
その他の色の低いカードは序盤に適当に捨ててしまう
感覚的にはハートのAK+ハートの高い数字+同じ色でリードを守り切れるカード5枚くらいで狙いだせる気がする
失敗したなと思ったら(例えばハートを独占しようとしたけれどどう考えてもこのまま上から出していくと最後に数枚持っていかれるときとか)
あきらめて独占色の下から出そう。他人にリードが移る可能性がある
ハートのA-Jがそろってるとほぼ決まる
その他
リードをとっても良い時はビジョンをもって積極的にリードをとるべきだと思った
C91 txt.txt欠席します
体調を崩してしまい参加が困難であるため、欠席します
申し訳ありません
それでも構造体をtupleに変換したい
前 最近書いたマクロ(構造体をtupleに変換したい) - TXT.TXT
これもC++ Advent Calendar 2016の9日目の記事です
はじまり
struct S { int x; std::string s; };
構造体に
bool operator<(S const&lhs,S const&rhs) { return std::tie(lhs.x,lhs.s) < std::tie(rhs.x,rhs.s); }
自動生成できるものを自動生成したい
それにはやっぱりtupleへの変換が必要だ
構造化束縛なら?
C++17(1z)で構造化束縛(Structured Bindings)という機能が入る
C++1z 構造化束縛 - Faith and Brave - C++で遊ぼう
詳しくは上などを見てほしいが結論を言うと
template<class T> auto to_tie(T&&s) { auto &[x1,x2] =s; return std::tie(x1,x2); }
こういうこういう関数が作れる
[Wandbox]三へ( へ՞ਊ ՞)へ ハッハッ
ただ残念ながら自分は[X1,X2]の部分を可変長にする方法は知らない
これは必要なだけ書きなぐれば解決するのでそこまで困らないのだが
問題はこれをSFINAEの文脈で使う方法を思いつかないので適切な関数に振り分ける方法が思いつかない
なのでコンストラクタの引数の数から推定しようと思う
万能解とは言えないが、今回のケースではうまく行くし大丈夫な時は大丈夫だろう
だめでも構造化束縛で失敗するだろうし
実装
面倒なので1-3要素まで
まず構造体の引数の数をコンストラクタの引数の数から推測する
template<class T>auto impl(Nice<3>*)->decltype(T{{},{},{}},Idx<3>{}){return {};} template<class T>auto impl(Nice<2>*)->decltype(T{{},{}},Idx<2>{}){return {};} template<class T>auto impl(Nice<1>*)->decltype(T{{}},Idx<1>{}){return {};} template<class T> auto len(){return impl<T>(static_cast<Nice<3>*>(nullptr));}
それを元に構造体束縛でtieする
template<class T> auto impl2(T&s,Idx<1>){auto &[x1] = s;return std::tie(x1);} template<class T> auto impl2(T&s,Idx<2>){auto &[x1,x2] = s;return std::tie(x1,x2);} template<class T> auto impl2(T&s,Idx<3>){auto &[x1,x2,x3] = s;return std::tie(x1,x2,x3);} template<class T> auto to_tie(T&s){return impl2(s,len<T>());}
後はそれを元にやりたいことをやる
template<class T> bool cmp(T const&lhs,T const&rhs) { return to_tie(lhs) < to_tie(rhs); }