クラステンプレートのテンプレート引数推論が入ったので false的なものを受け取ると例外を投げるクラスを書いてみた

C++17で [https://cpprefjp.github.io/lang/cpp17/type_deduction_for_class_templates.html:title=クラステンプレートのテンプレート引数推論が入ったので
コンストラクタでfalse的なものを受け取ると例外を投げるクラスを書いてみた

使用想定

テストなどで、注目度の低いエラー処理を雑に処理する

std::optional<Foo> make(int arg);

Test(Foo_f_test_)
{
      // makeは成功する前提で書いてる+makeは別のテストでしているので  このテストでmakeのエラー処理はあまり書きたくない
      // 万が一makeが失敗した場合、noneを受け取ったFactのコンストラクタがこのテストを失敗させる
    Fact a = make(42);

    ASSERT_EQ(a->f(13) == false);       // このテストの主要部
}

実装

template<class T>
class Fact :public T{
public:
    Fact(T const&val):T(val) {
        if (! val) {
            throw std::runtime_error("hoge");
        }
    }
};

星の欠片の物語、 ひとかけら版雑ダダ駄弁り 【この記事にはネタバレを含みます!!】

星の欠片の物語、 ひとかけら版をクリアしたので雑に駄弁り

クリア済みの人はわかるわ~ってなるかもしれないから読むといいかもよ
で、自分でも記事を書いてくれ。おれもわかるわ~ってなりたいし、その記事を通して作品をもう一度見たい


ネタバレアリにつき未プレイ・未クリアの方は読まないほうがいいと思われます

続きを読む

星の欠片の物語、 ひとかけら版 をプレイしたよ(ネタバレ無し)

自転車創業さんの新作「星の欠片の物語、ひとかけら版」が発売されたのでプレイしたよ
そのネタバレのない範囲での紹介
『星の欠片の物語、ひとかけら版』
www.jp.playstation.com


ゲームの概要

閉じ込められた女の子に協力して女の子を助けよう系ノベルゲーム/謎解き脱出アドベンチャーVR

女の子(わし~のじゃ系巨乳)がとある辺境の惑星に閉じ込められてしまった!!!
そしてあなたは偶然にもその世界とリンクしてしまった!!!
女の子を助けよう!!!

みたいな

総プレイ時間

12時間くらい?
しょうもない箇所で3,4時間くらいつまってた気もする。
ヤバイ詰まりがなければ8時間かからないと思うし、詰まる人はもっと詰まると思う

ゲーム感

PSVRを有効活用したアドベンチャーゲームだわ。これはPSVRのアドベンチャーですね。VRだわ」って感じ。
あんま喋ると何かのネタバレになりそうだからあんまり何がどうVRなのかは言わない
オススメ

ただ全体としてテンポの悪さは感じる。

おはなし

- 本作はプロローグ編です
- 本作はあまり万人受けしないシナリオを書くことに安定性のある自転車創業製です
……なのでお話に関しては素直に布教しづらい感じis有るアルヨ

オススメ対象

以下のどれかに該当する人はオススメ
- PSVR持っててVRゲーを漁ってる人
- 前作(ノベルゲームの枠組みを変えるノベルゲーム)をクリアできた人(前作との関連性はとくにない)
- 謎解きゲーが好きな人
- PSVRもってなくて悩んでるんだったら前作(http://www.anos.jp/anos7/anos7.htm なんとamazonでも買える) を遊んでから考えてみるのもいいと思うよ。PSVR買うよりは安いし

その他アドバイス

- 椅子に座ってプレイする人も多いとおもうんだけれど、ポジション合わせだけはスケール感とかの関係で立ってやるべき

プログラミング言語に対するイメージ in 2018

言語に対するイメージを書き残しておいたら3年後とか楽しいんじゃないかなって

知ってる言語

C++

みんなのなんか何とかしてくれる系言語。最近まともな感じになってきたような気がしなくもない
CentOSではその最近まともな奴が使えない
標準ライブラリがしょっぱい

python

ライブラリや機能を作るためではなく「使う」ための言語という印象。何故かあまり好きなれない
名前付き引数とか本当にうらやましいし、ポイントポイントで見るとすごくいい言語だと感じるのになんか宗教観が合わない
機械学習とか色々なライブラリがあって強いが、なぜこんなにいっぱいライブラリがあるのかよくわからない
かなり大きなものを作れる感じだが、大きなものは静的型付け言語で作りたいという気持ちがある

prolog

人類の夢。そしていまだ夢
yumとかで簡単にインストール出来て、文法をもう少し近代化して、シェルからperlくらい簡単に使えるようになれば
また違う使われ方もあるんじゃないかと思ってる

erlang

オブジェクト指向の一つの答え。しかし筋肉が足りない
オブジェクト指向の実装」やという視点で見るとprologと同じくらい好きな言語なのだが、しかしとにかく筋肉が足りない
型がない。抽象に使える道具が少なすぎる。文法がなぜかprologを引きずってしまった。ライブラリがしょぼい。
そのくせerlangで書きたいものは大体デカい
類まれなる武器を持ちながら、しかし解くべき問題に対して筋肉が足りない

C

C++ではない。断じてない。高級アセンブラ
この言語がなかったらC++は生まれてないわけだが、C++の問題の根源の60%を占めるという独自調査があったりなかったり
ルールが小さいことと書くことが簡単なことは全然関係ないことを人類に教えてくれるが、そもそも本当にルールが小さいかは不明

perl

perlナイフ。簡単な文字列処理ならかなり強い

なんとなく知ってる言語

Dart

名前だけしってる

ruby

better perlperlより配列処理に強い
web系にも強いらしいけれどよく知らない

C#

いい言語。Unityの登場でなんかすごく強い感じになってしまったと聞くが、unityでつかえるC#は古いという話を聞いた気がしなくもない
割といい言語のイメージがある。あとフロントでもサーバサイドでも使えるって話も聞いた。

lua

Cで使う言語なのになぜ文法をCに似せなった
コルーチンがある点は強いと思う
あと早い

scala

実はC++の後継はこいつなんじゃないかと個人的に考えてる。コンパイルがクソ重い点も含めて
マルチパラダイムで悪いことができてコンパイルがクソ重いとかC++かよ
今後の活躍とインテルのCPUの開発に期待したい

Haskell

なぜかC++erがたしなんでる印象がある。すごい純粋な言語

OCaml

早いCaml。Haskellほど厳密ではなくて木構造処理に強いイメージ
言語処理するやつでまれに見た

D言語

C++の後継者を名乗ってる言語のひとつ
コンパイル処理が強い

Rust

C++の後継者を名乗ってる言語のひとつ
所有権が厳密だとか未定義な挙動がないとか聞く

elixir

近代的なerlangというイメージ。

golang

ジェネリックなし・継承なし・例外なし」と聞いてキレたが(主にジェネリックがないという部分で)
その後「シェルの代わりに使ってる」という話を聞いてもしかすると
「きたるOSS時代を想定した誰でもかけてどこでも動く言語」「ましなbash
のような用途の言語なのかもしれないと勝手に想像して興味が出てきてる。2018年弄ってみたい言語のひとつ




ほかに何かあった気がするけれどぱっと思いつくのはこれくらいか

C93 頒布物について

1日目東ク 58aにスペースもらってます。TXT.TXTです。
C93の 頒布物についてですが
こんな感じの一人用カードゲームがでます
f:id:txttxt:20171228200147p:plain


BASYです。BABANUKI NO SYUUSAKUです

無料配布になります。当日はよろしくお願いします

以下、ゲームのルールについてreadmeからのコピペ

ゲームのルール

■ざっくりとしたゲームの説明
「カードの背面の色からカードの内容が少し予想できる」カードを使って、自分がどのカードを引けば最も少ない損失で済むかを考えながらやるババ抜きです


■ゲームの流れ
ゲームの目的: ラウンド終了時に手札にあるカードが失点になります。なるべく失点しないように立ち回りましょう

## ラウンド開始
1. まず手札が配られます
2. 手札に同じ数字のカードがあれば、そのカードを捨てることができます(※英字のカードは仮に同じ英字だったとしても捨てることはできません)

## ターンについて
1. 自分の手番が来たら「まだこのターン手札を引かれていないプレイヤー」の手札からカードを引くことができます
2. 引いたカードと同じ数字のカードが手札にある場合、 そのカードを捨てることができます(※英字のカードは捨てることはできません)
3. 手番をカードを引かれたプレイヤーに移します
4. 「まだこのターン手札を引かれていないプレイヤー」がいなくなったらこのターンは終了になり新しいターンが始まります
これをラウンドが終了するまで繰り返します

## ラウンドの終了について
以下のいずれかの条件を満たした場合、ラウンドは終了します
- 誰かの手札がなくなる
- 「全ての数字カードが捨てられている色」が3色以上になる
- 「B」「A」「S」「Y」のカードを手札に集める
手札にある数字の合計がこのラウンドの失点となります

ゲームの終了条件をみたすまで、ラウンドを送り返します
### 特殊ルールについて
「B」「A」「S」「Y」のカードを手札に集めてゲームが終了した場合、
次回以降 『「全ての数字カードが捨てられている色」が3色以上になる』 の"3色"の部分が1色減ります
この効果は重複します

つまり、前回、前々々回のラウンドでBASYのカードを揃えてラウンドが終了した場合、
今回以降は『「全ての数字カードが捨てられている色」が1色以上になる』というルールでゲームを進めていきます

## ゲームの終了について
いずれかのプレイヤーが500点失点するか、
「B」「A」「S」「Y」のカードが計3回手札に集められた場合、ゲームは終了となります
このときもっとも失点の少なかったプレイヤーが勝者となります

■ カード内訳
#数字カード
赤 1,96,101: 各4枚
青 25,50,75: 各4枚
緑 3,5,107: 各4枚
橙 16 : 4枚 0,4,8,32: 各2枚

#英字カード
赤 B,S
青 B,A
緑 S,Y
橙 A,Y

C93 参加します 一日目東ク 58a 「TXT.TXT」です

一日目東ク 58aにスペースもらってます。
当日はよろしくお願いします

頒布物について

どみだらよじゃないものがあります。ジャンルはカードゲームです

ちなみにこれはどみだらよの開発を断念するものではありません。念のため

  • どみだらよの開発に難航している関係でここ数年新しいものを作っていないため新しい何かを作らないと技術や精神に悪かった
  • どみだらよの開発に使っていたライブラリが開発終了してしまい、新しいライブラリに乗り換える必要があるため、新しいライブラリの手習いとして

等の理由で作っています。どみだらよの開発を断念するものではありません。念のため

シナスタジアスーツを体験してきた

シナスタジアスーツをrez areaXで体験させてもらってきたよ

シナスタジアスーツとは

この記事にたどり着いてる人にとっては必要ないとは思うけれど一応説明
シナスタジアスーツとは現在開発中の全身用振動フィードバック装置
すげェ平たく言えば「着る振動パック」である
腕・腹・足などに振動装置(ウーファー的な?)を取り付けることによりゲームの表現、主にフィードバックさを拡張する


着るとパワースーツ感あってアメリカンヒーローっぽさがあるがプレイ中は光ってOh, Invisible Man In A Fluorescent Suit……みたいなことをおもった。
いや、蛍光色でも透明人間でもないけれど

参考記事
www.jp.playstation.com

振動というフィードバック。ただし全身

体験した話である

プレイ当初の正直な感想は「うわ、ゲーム中急に肩がたたかれた」である
ゲーム中オカンに「あんたー宿題やったのー!?」と同類で
「ゲーム中に急に*ゲーム外の異物*が割り込みをかけてきた」というのが正直初めの感想であった
自分のゲーム世界に存在しない感覚だからである

しかし、プレイをしていくと脳が「これはフィードバックである」であると認識し始める
そうするとすごい。すごいぞ
ゲームのフィードバックがよりすごくなり、よりゲームに近づくのである


いまさら言うまでもなく、ゲームはアクションとフィードバックのループの螺旋でできている

撃つというアクションに射撃音というフィードバックが乗り
撃つというアクションは当たるというフィードバックが発生し
撃つというアクションの結果爆発というフィードバックが発生する
引き金を引く!弾が出る!敵を破壊!爆発!!!気持ちいいいいい!!!!


ゲームの面白さについて少なくとも一部はこんな感じだと自分は考えている
引き金を引いていろいろ起きるから引き金を引くことが楽しいのであって、少なくとも引き金を引くこと自体が楽しいんじゃない


つまりフィードバックはすごいのである


で、これらのフィードバックは基本的に映像と音声、目と耳で脳に反応させているのであるが
シナスタジアスーツではこれに振動というフィードバックが乗る。それも手の平サイズではなく全身で感じるのである
つまりフィードバックがよりすごくなりより結果より入り込めるのである
これがどういうことか?
つまり要するにゲームがよりノリノリになるんだよ
やったー!


ぶっちゃけたはなし、どこがどう振動していたか?等はあまり覚えていない
もしかしたら実は振動装置は動いてなかったのかもしれない。今記事を書いてて地味に不安だ。
そのくらい振動という現象は脳の認識からはずれている
何故覚えていないか?なぜなら俺は椅子に座って黙って振動を楽しんでいたのではなく、ゲームをしていたからだ

最高にノリノリで

おそらくそれは、フィードバックがおれを光の海に引き込んでくれたのであろう
振動がより強くおれを光の海に引きずり込んだのであろう

俺は間違いなく光の海を泳いでた

その他

体験会で何気なく置かれてて「え、聞いてない……」ってなったんだけれど
www.iam8bit.jp
rezのサントラですって
10/11発売!
これで好きなだけ「エェェェヤァボボボYェヤェェェ」できるね♪(Cycle of Silence)