本ドキュメントは、PNGTuberPlusTanu が提供するローカル TCP ベース外部制御 API の仕様書です。
備忘録および外部公開を目的としています。
このファイルはChatGPTに自動生成させたHTMLを一部編集しています。
極端に悪意のある攻撃(DoS等)は想定していません。
JSON オブジェクトを TCP で送信します。
{
"type": "<command>",
...
}
必ず JSON で返却されます。
{
"ok": true | false,
"code": "CODE_STRING",
"message": "human readable message"
}
{
"type": "model",
"path": "user://example/avatar.save"
}
{
"ok": true,
"code": "OK",
"message": "model loaded"
}
{
"type": "zoom",
"value": 1.2
}
Camera2D の zoom を等倍で変更します。
{
"ok": true,
"code": "OK",
"message": "zoom changed"
}
{
"type": "costume",
"costume": 3
}
モデル側で定義されている 1?10 のプリセット番号を指定し、 小物・衣装などの状態を変更します。
{
"ok": true,
"code": "OK",
"message": "costume requested"
}
| コード | 説明 |
|---|---|
| OK | 正常終了 |
| コード | 説明 |
|---|---|
| MISSING_PARAM | 必須パラメータ不足 |
| INVALID_JSON | JSON が不正、または Dictionary でない |
| UNKNOWN_COMMAND | 未定義コマンド |
| コード | 説明 |
|---|---|
| FILE_NOT_FOUND | 指定ファイルが存在しない |
| MAIN_NOT_FOUND | Main ノードが存在しない |
| CAMERA_NOT_FOUND | Camera2D が見つからない |
| AVATAR_ERROR | アバターロード処理でのエラー |
以下は PNGTuberPlusTanu クライアント実装で使用されるコードです。
| コード | 説明 |
|---|---|
| RESPONSE_ERROR | 通信失敗、接続エラー、レスポンス JSON の解析失敗など |
PNGTuberPlusTanu External Control API
Version: 現行(非バージョン固定)