Lattice in the Lettuce

The monologue of a scientist.

DarkStorm Copybot Viewerのメモ

セカンドライフのチートツール、DarkStorm Copybot Viewer(以下DS)についての感想である。情報更新でグチャグチャになったので一部書き直した(2015年末)。なので内容的にはその時のものである。

DSはtorrentをよく探せば落ちてる。
http://forum.kinggoon.co/thread-68387.html
ここで落とせる。

DSはFirestorm(以下FS)の変造ビルドで、一部のMeshオブジェクト(つーかメッシュボディ)への対応が不十分なため、同じようなFS変造ビルドを探した方がいい。そっちはMesh対応もしっかりしてるし普通のビューアとまるで変わらない。

その変造ビルド(確か4.6.9だったか)が2015年冬にFS開発チームからブロックされた。FS開発チームは古いビルドを定期的に排除している。今回はなんでか知らないが恐らく顔と手のリグ点追加関係。で、ブロックの回避方法だが

The EASIEST one-step way to unblock this viewer is to go into
USERS\\AppData\Roaming\Firestorm\user-settings\fsdata.xml file
and remove everything between BlockedReleasesand "EventsMOTD"
Make the file READ-ONLY and open your viewer.
You are no longer blocked!

らしい。

この対策だけではダメらしくFirestormは起動時にphoenixviewer.comに必ずアクセスするが、この時ブロックされたバージョンを読みだしており、上記ファイルの内容と合わせてチェックするというバカみたいな事をしている。

ので、phoenixviewer.comをHOSTSファイルでNSLOOKUP出来なくしてやらないといけない。

127.0.0.1 phoenixviewer.com
127.0.0.1 www.phoenixviewer.com

でOK。

使い方

DS類(他のもまとめてそう呼ぶ)の基本的な付加機能は2つである。

1.DS自体が独自に持つ部分
  Mesh以外の形状のXML等への書き出し、ターゲットUUIDの取得

2.ローカルキャッシュにおいてのパーミッションの無視
  テクスチャのダウンロード、colladaのダウンロード

これ以外については普通のビューアと何の違いもない(フォルダ構成が少し違うが)ので、出来る事は限られる。

SLは他のネトゲ同様にクライアントでのローカルチェッカと鯖側のチェッカが存在し、パーミッションは双方でのチェックがある。DSで弄れる部分はローカルオンリーのため、鯖側のパーミッションチェックに引っかかるような事は基本的に無理。
ただし鯖側パーミッションチェックはログアウト時とエステートの移動時にしか行われないため、ローカルの表示は一時的にであればその範疇を逸脱可能。つまり自分のビューアの表示だけなら、そこらの他人のオブジェを消したりテクス張り替えたりといった事も出来る。鯖側では反映されないので他のアバターから見た際の表示は変わらないが。

通常オブジェクト・スカルプテッドプリムのオブジェクト

XML、HPAでのピーコが可能。テクスも自動的にピーコしてくれる。貼ってあるテクスのUUIDも取得できる。ただしオブジェクトのみであり、中身は一切ピーコしてくれない。

ピーコしローカル保存した物は、sandbox等Rez権限のある場所で、プリムが十分であればRez可能。装着物であれば装着位置もピーコされており、自動的に装着される。テクスチャはアップロードされず、UUIDで指定して勝手に貼ってくれる。L$使ってテクスチャアップロードも可能。
内部的な仕組みはXMLを読めば分かるが、オブジェクトの位置やサイズ等及びリンク情報を記録しておき、スカルプテッドテクスチャや画像をUUID指定で貼り付けてるだけ。だからmeshは生成不可能。

Meshオブジェクト

colladaでの吐き出しのみ可能。テクスチャも自動的に吐ける。中身は無理。リグ情報等は取得してくれない。アップロードするには通常の手順が必要になる。オブジェクトはUUIDで取得するわけではないので。

DSオリジナルの機能で吐いてるわけではなく、ビューアに元々あるCOLLADA吐き出し機能のパーミッションチェックを回避しているだけなので、リグやらウェイトその他形状データ以外のほとんどが消えたデータとなる。よって服等を吐き出した場合自分でリギングの再設定が必要(検証してみたらマテリアルは残っていたが、複数MAPが1MAPに統合されており分けなくてはいけない)。

Meshオブジェクトの吐き出しは出来るが、はっきりいって、Blender/avastar等でリギング、ウェイトペイント出来るスキルがあるならまともに作った方が早い。パクってきたMeshなんか使うよりテメエでモデリングした方がずっと楽(かどうかはスキル次第か)。サブデビ適用後のmeshをチマチマ編集するのも大変だし。

何かを作る過程で、特定オブジェクトのMeshの流れを参考にしたいとか、巷で売られてる服の構造を真似してみるとか、自らデザイナーやってないかぎりはまず使わないはずだ。

HUDオブジェ

スクリプトが抜けないため意味なし。

テクスチャ

ローカル、インベントリに吐けるが、インベントリに吐いたものは鯖側チェッカに引っかかって消える。よってローカル吐きが必須。通常はUUIDピーコで手動で目的オブジェに貼る作業が必要。

DS(というかビューア全般に)では通常、ベークドのUUIDしか分からないため、オブジェのテクスはともかくアバターのテクスは直接抜けない。

とはいえメッシュアバターがデフォルトに近くなってきた現状では、必要なのは顔テクスチャのみであり、こちらはアバター装着テクスチャから普通に抜ける。

自分の複数アバターに同じ物を展開するときには重宝する。

アニメーション

アニメも他データ同様キャッシュから抜くため、SL内で一覧化しても、再生していないものは抜けない。よって一度、自分や他人のアバターで再生する必要がある。

シェイプ

インベントリに吐いても消えないのでやり放題。

スクリプト

基本的に無理。LSLはサーバーサイドスクリプトスクリプト自体でなく、計算されたデータが送られてくる)のため。ビューアでは鯖側パーミッションチェックを突破出来ない。余談だがLSLでトロイを組んだバカが昔いた。SLをDDoSの踏み台にしたバカも居た。オブジェクト志向でもないクソマクロ言語でよくやるものだ。

Rezされてないオブジェ(箱のやつ)

何も出来ない。

まとめ

はっきりいってDSの類で出来る事は少ない。せいぜいオブジェやアニメをパクる事くらい。

アニメは1個ずつしかピーコれないため、エロオブジェのコピ不可アニメの作者がSL辞めてて買えないときに引っこ抜いてくる程度の用途がせいぜい。売ってる物ならよほど高いのを除いて買った方がマシ。

Mesh以前の頃ならSIM内オブジェを片っ端から取得して1SIMまるごとピーコなんてのも出来たが、Meshだらけの現状では大した事は出来ない。晒スレなんかで言われてるような事はまず無理。

Mesh服もdemoはパーミッションのせいでcolladaを抜く以外の事は出来ないし、デモのcolladaデータから元の服を再現するほどのスキルがあるなら、まともに作った方が手っ取り早いと思う。

だいたい今のSLで何かやりたいなら、Blender/Photoshop/MMDのスキルはほぼ必須なわけで、3DCGやれない奴がDS入手したとしても、ほぼ何も出来ないに等しい。というわけで、DSはクリエイターにとっては有用だろうが、クリエイターでもビルダーでもなければあまり使う機会はなさそうだ。

逆にクリエイターにとってはこれほど面白いツールもないだろう。

気になったので上記ネタの検証

はじめに断っておくが検証は自分の作った服でやった。

まずボーンは消えていた。骨が消えても頂点Groupやシェイプキーは残ってるんじゃないかと思ったが、これも消えていた。ウェイトは全滅。

ただし、ウェイトはavastarさえ持っていれば、デフォルトのボディメッシュからのウェイトコピーだけで上半身はほぼ完璧。下半身はパンツならクリックポン、スカートは脚と腰のウェイトを弄らないとおかしくなる(最近のavastarではデフォルトのスカートメッシュから完璧に近いウェイトがコピー出来るようだが)。

UVマップは全部残っていた。これが意味するところはつまり、リグ入りじゃないオブジェクト(家なんか)は抜き放題という事と、服もリグとウェイトさえやれば再現可能という事。

ローポリの場合、三角ポリゴン化されていても編集モードでLキー叩くとジョインされている別体メッシュを選択分離出来る。
Lキーが役に立たないハイポリですら、スマートUV投影だの訳の分からない事をやられていなければ、UVマップ側で分離出来るためさほど難しくはない。テクスチャマッピングは完璧に再現出来るだろう。

ここまで書いた事を理解出来るなら、再現は容易なはずだ。ただ、UVが同一なオブジェクトは盗作の場合に明らかな証拠になってしまうため、佐野りたいなら土俵を変えた方が良いと思う(SL→MMDなど)。

BANについて

2ちゃんの雑魚がBANされる云々抜かしてるが嘘である。DSで出来る程度の事で直接的にBANされることはない。

あり得るのは先に述べたように、UVが同一で形状もそっくりなオブジェクトの盗作等していた場合くらいか。