コトバノウタカタ

よしなしごとをつらつらとつづるばしょ。

Subnautica VR

Subnauticaは標準でVRに対応している。ただしVRコントローラやゲームコントローラは使えないので、キーボード&マウスでプレイすることになる。

oculus quest2の場合、

  1. oculus quest 2 を起動
  2. USBケーブルをPCとつないでoculus link開始
  3. リモートデスクトップでSubnauticaを起動

これだけ。XBOX Game Pass版でやってるけどなぜかSteam VRが起動するので、もしかするとSteam VR入ってないとだめかも?

なお、ターゲッティングはマウスではなく視線。視線を合わせてマウスのボタンを押す。オプションの「コントロール」>「視線認識カーソル」をオンにしておくとよいかと。

XBOX Game Pass版のDead CellsのセーブデータをSteam版に移す

まずSteam版はインストールして一回起動させておく。****のところは何らかの文字列または数値。

C:\Users\(ユーザ名)\AppData\Local\Packages\MotionTwin.DeadCellsWin10_***********\LocalCache\Local\MotionTwin\DeadCells

の「user_0.dat」「user_1.dat」ファイルを以下にコピー。

C:\Program Files (x86)\Steam\userdata\********\588650\remote

自分はこれでできたけれど、成功するかどうかはわからないので自己責任でよろしく。

久々にAndroid Studioでsyncしたらエラー

「could not find com.android.tools.build:gradle:3.1.2」みたいなエラーが出た。

build.gradleの以下のgoogle()を追加したらなんか進んだ。また別のエラー出たけど。

buildscript {
    repositories {
        google()
        jcenter()
    }

qiita.com


別のエラーは「License for package Android SDK Build-Tools *** not accepted.」みたいなの。

SDKツールのバージョン指定インストールでいけたっぽい。SDKマネージャで、SDK Toolタブを選択して、バージョン指定はDetailとかなんとかをチェックすると出てくる。

www.javadrive.jp

Amazon終了確認18

javascript: var d = document;
dv = d.getElementsByClassName('D0Lu_p');
var cnt = dv.length;
var cnttg = document.createElement('div');
cnttg.textContent = cnt;
d.getElementsByClassName('_vfqY6')[0].appendChild(cnttg);
for (i = 0;
    i < dv.length;
    i++) {
        aa = dv[i].getElementsByTagName('img')[0];
    nm = aa.getAttribute('alt');
    asin = dv[i].firstElementChild.getAttribute("data-automation-id").substr(8);
    ;
    ln = 'https://www.amazon.co.jp/s/ref=nb_sb_noss?__mk_ja_JP=カタカナ&url=node%3D4217521051&field-keywords=' + asin;
    var req = new XMLHttpRequest();
    rm = dv[i].getElementsByClassName('_1Opa2_')[0];
    req.rm = dv[i];
    req.ln = ln;
    req.nnm = nm;
    req.onreadystatechange = function () {
        if (this.readyState == 4 && this.status == 200) {
            x = this.responseXML;
            r3 = x.getElementById("n/4217521051");
            hit = false;
            if (r3 != null) {
                ls = this.responseXML.getElementsByClassName('rush-component s-latency-cf-section');
                if (ls.length > 0) {
                    hit = true;
                    chs = ls[0].children;
                    en = '';
                    for (chi = 0;
                        chi < chs.length;
                        chi++) {
                            ch = chs[chi];
                        h5 = ch.getElementsByClassName('s-line-clamp-4');
                        if (h5.length > 0) {
                            tnm = h5[0].textContent.trim();
                            if (tnm == this.nnm) {
                                en = '終了確認';

                            }
                        }
                    } if (en != '') {
                        a = d.createElement('a');
                        a.href = this.ln;
                        a.textContent = en;
                        a.setAttribute('target', '_blank');
                        dd = d.createElement('div');
                        a.setAttribute('style', 'float:right');
                        dd.appendChild(a);
                        this.rm.appendChild(dd);
                        hit = true;

                    } else {
                        this.rm.style.display = 'none';

                    }
                }
            } if (hit == false) {
                this.rm.style.display = 'none';

            } cnt--;
            cnttg.textContent = cnt;

        }
    };
    req.open('GET', ln, true);
    req.responseType = "document";
    req.send(null);

};

Amazon終了確認17

javascript: var d = document;
dv = d.getElementsByClassName('D0Lu_p');
var cnt = dv.length;
var cnttg = document.createElement('div');
cnttg.textContent = cnt;
d.getElementsByClassName('_3aE6se')[0].appendChild(cnttg);
for (i = 0;
    i < dv.length;
    i++) {
    aa = dv[i].getElementsByTagName('img')[0];
    nm = aa.getAttribute('alt');
    asin = dv[i].firstElementChild.getAttribute("data-automation-id").substr(8);;
    ln = 'https://www.amazon.co.jp/s/ref=nb_sb_noss?__mk_ja_JP=カタカナ&url=node%3D4217521051&field-keywords=' + asin;
    var req = new XMLHttpRequest();
    rm = dv[i].getElementsByClassName('_1Opa2_')[0];
    req.rm = dv[i];
    req.ln = ln;
    req.nnm = nm;
    req.onreadystatechange = function () {
        if (this.readyState == 4 && this.status == 200) {
            x = this.responseXML;
            r3 = x.getElementById("n/4217521051");
            hit = false;
            if (r3 != null) {
                ls = this.responseXML.getElementsByClassName('rush-component s-latency-cf-section');
                if (ls.length > 0) {
                    hit = true;
                    chs = ls[0].children;
                    en = '';
                    for (chi = 0;
                        chi < chs.length;
                        chi++) {
                        ch = chs[chi];
                        h5 = ch.getElementsByClassName('s-line-clamp-4');
                        if (h5.length > 0) {
                            tnm = h5[0].textContent.trim();
                            if (tnm == this.nnm) {
                                en = '終了確認';
                            }
                        }
                    }
                    if (en != '') {
                        a = d.createElement('a');
                        a.href = this.ln;
                        a.textContent = en;
                        a.setAttribute('target', '_blank');
                        dd = d.createElement('div');
                        a.setAttribute('style', 'float:right');
                        dd.appendChild(a);
                        this.rm.appendChild(dd);
                        hit = true;
                    }
                    else {
                        this.rm.style.display = 'none';
                    }
                }
            }
            if (hit == false) {
                this.rm.style.display = 'none';
            }
            cnt--;
            cnttg.textContent = cnt;
        }
    }
        ;
    req.open('GET', ln, true);
    req.responseType = "document";
    req.send(null);
}
;