オーエンさんのメモ置き場

一部のゲームでぐぐってわかりづらかったものとか自身が攻略したときの物を気まぐれで置いてます

Tshock Config.jsonについて

大体このページ参照してこっちでわかりやすいように書いてるつもりです
https://tshock.atlassian.net/wiki/display/TSHOCKPLUGINS/Configuration+File+Docs
ここでかいてあることわかんねぇよって方は上記URLみて自分で確認してください。

私より先に書いてるお方がいらっしゃいました
http://blog.iehok.net/
1つ前のconfig.jsonの解説なので若干異なる部分もあります。

わからないものだらけなのであまり需要あるものは書けなさそうです。
わかるものだけ書いておきます

参照しているバージョンは
TShock.4.2.3.0720 のConfig.Jsonファイルです
Tshockの更新に伴い追加変更になることがあります。

またSSC関係は別のJsonファイルにて設定できます
(書いてほしい人はコメしてくれれば書きます)

"InvasionMultiplier": 1, ※不明

"DefaultMaximumSpawns": 2,
敵の沸く基本上限を設定します。
バイオームやイベントによって上下することがあります。
0だとどうやっても出なくなる

"DefaultSpawnRate": 1800,
敵の沸く速度を設定します
数値を増やせばその分敵の沸きが遅くなる
逆に減らせば早くなる
0だと絶え間なく沸く

"ServerPort": 7777, ※不明
立てるときに聞かれるし、どこで使うかいまいちわからない

"EnableWhitelist": false,
これをtrueにするとWhitelist.txtに記入されている人しか入れなくなります

"InfiniteInvasion": false, ※未確認
侵略系イベントが延々と続くみたいです、やったことがないので不明扱い
trueにすると永久に続きます。

"PvPMode": "normal", ※未確認
PvP状態をサーバーで指定します
"always" にすると常にPvP状態
"disabled" にするとPvP不可能な状態になる・・・はず

"SpawnProtection": false,
trueにすると開始地点を保護状態にします
保護範囲内だとブロックや物が設置、破壊はできません。

"SpawnProtectionRadius": 10,
開始地点から指定した数値のブロックマス分を保護する
この場合スタートから範囲10ブロック分保護する

"MaxSlots": 20,
接続できるプレイヤー数
windowsだと制限あるようで最大20までが限度のようです
linax鯖なら255人までできるんだったかな・・・

"RangeChecks": true,
飛び道具の有効範囲を設けます
trueにすると一定範囲離れると無効になる
rocket4とかはずした時もこれで安心かも?

"DisableBuild": false,
これをtrueにすると設置、破壊が一切不可能になる。
展示マップ向け

"SuperAdminChatRGB": [
0.0,
128.0,
0.0
],
SuperAdmin(以下SA)権限のチャットの色はここで変更します
要サーバー再起動とちょっとめんどい

"SuperAdminChatPrefix": "(GM) ",
SAの名前の前の文字列を決める
多分うちの鯖いったとき(GM)owen@~って見たことある人いるかもしれない

"SuperAdminChatSuffix": "",
こっちは名前の後ろ側の文字列

"BackupInterval": 0,
バックアップを自動で取るときの頻度
数字は分単位 60だと1時間に1回バックアップを取る

"BackupKeepFor": 60,
バックアップを維持する時間
これも分単位。
1日くらいとっておきたいなら1440
2日なら2880くらいにしとくといいんじゃないかな?

"RememberLeavePos": false,
trueにすると終了したところから開始になる
IPでみてるようなのでIP変えたりすると設定したSpawnに戻される。
また、サーバーを閉じると位置を保存しないようでやはりSpawn地点に戻される。
あと・・・SSC鯖では効果がなかったよ・・・

Verupで内部に変更が入ったようなのでもしかしたらSSCでも位置情報でその場からかもしれない

"HardcoreOnly": false,
trueにするとキャラクターがHardcoreのキャラのみしか入れなくなる。
それ以外で接続すると自動でキックされます。

"MediumcoreOnly": false,
こっちはMediumcoreキャラクターのみ
一緒にtrueにしたら多分鯖が動かなくなる

"KickOnMediumcoreDeath": false,
trueにするとMediumcoreのキャラが死んだ時キックされるそうです

"BanOnMediumcoreDeath": false,
trueにするとこっちはBAN、サバイバルプレイにどうぞ。

"AutoSave": true,
自動でセーブするしてくれる
falseにすると当然/saveや/offを使わないとセーブしない。
セーブタイミングはデフォルトで4:30

"AnnounceSave": true,
セーブ時にメッセージを出力します、多分赤い字で見たことあるかも?

"MaximumLoginAttempts": 3,
/loginでログイン失敗した回数によってkickされます。
この場合3回失敗で追い出される。

"RconPassword": "", ※不明
ごめんこれわかんない…誰か教えて

"RconPort": 7777, 不明

RconはVer4.2.7で項目自体が削除された
もともと未実装で使われていないものだったらしい。

"ServerName": "owenhousou",
サーバーに名前付けられます
付けるとプロンプトにその名前がつく、複数立ち上げるときとか便利かも?

"UseServerName": false, 未確認
trueにするとjoin履歴に指定したサーバネームが表示されたはず。。。だけど
不具合あるようでtrueにするとミニマップが入るたびにリセットされてしまう

"MasterServer": "127.0.0.1", ※不明
今は多分使われてない可能性も・・・

"StorageType": "sqlite", ※不明
sqlitemysqlか選べるらしい・・・こういうの私わかりません
わからない人はそのままで

"MySqlHost": "localhost:3306", ※不明
"MySqlDbName": "",
"MySqlUsername": "",
"MySqlPassword": "",
これらMysql絡みなんだろうけど私にはわかりません・・・使い方は各自調べてください

"MediumcoreBanReason": "Death results in a ban",
Mediumcore以降で死んでBANの時に出力されるメッセージです
ハイクを詠め 慈悲はない

"MediumcoreKickReason": "Death results in a kick",
こちらは追い出された時のメッセージです。

"EnableDNSHostResolution": true, ※不明
よくわからない・・・

"EnableIPBans": true,
BANしたユーザーのIPが同一であればそいつも入れなくする
つまりBANされたら別キャラできても無駄ですよということです、イイネ?

"EnableUUIDBans": true,
IP同様UUIDも見られてます
※UUID http://e-words.jp/w/UUID.html よくわからん・・・

"EnableBanOnUsernames": false, ※未確認
trueにするとすでにBANされているキャラ名と一致したら自動でキックしてくれるようです。
便利そうだけど巻き添えもでそう。

"DefaultRegistrationGroupName": "default",
アカウント作成したときの権限グループを決められます

"DefaultGuestGroupName": "guest",
アカウントない人の権限はここで指定したものになる
デフォルトはguest、アカウントなしでもここで指定したグループに権限与えれば使えるようになる。

"DisableSpewLogs": true, ※不明
多分アドミンでしか見れないメッセージを権限ないものに非表示にするためのものだと思う

"HashAlgorithm": "sha512", ※不明
"sha512", "sha256", "md5"から選べるようだけどよくしらない

"BufferPackets": true, ※不明
バッファーためて処理終わったら送るようにするためのもの・・・らしい?
falseのほうがいいのかな・・・?

"ServerFullReason": "Server is full",
満員で鯖に入れないときのメッセージを決められる
現状20人以上くることなんてありえないからまずみることはないだろう。多分

"WhitelistKickReason": "You are not on the whitelist.",
ホワイトリストをtrueにした時、リストに入ってない者が入った時に出るメッセージ

"ServerFullNoReservedReason": "Server is full. No reserved slots open.",
入ろうとしたら枠いっぱいで入れない・・・そういう時に出るメッセージらしい

"SaveWorldOnCrash": true,
異常を検出したら鯖落ち直前にセーブしてくれるらしい・・・けど
期待しない方がいい

"EnableGeoIP": false, ※不明
文言見た感じ接続時にプレイヤーのIP表示させるものなのかな・・・?
英語訳しきれてないためわかりません・・・;;

"EnableTokenEndpointAuthentication": false, ※不明
Rest Api関連みたいですがよくわからない

"RestApiEnabled": false, ※不明
Rest Apiを使うかどうか・・・らしいけどなんなんだろうこれ
インタフェース絡みの何かを使うときにtrueにするのかなぁ・・・

"RestApiPort": 7878,
RestApiを介するときのポートだと思う・・・

"DisableTombstones": true,
trueにするとお墓が立たなくなる
falseだとでてきます。

"DisplayIPToAdmins": true,
接続時にサーバープロンプト内でIP表示させるもの
申し訳ないですがIPは表示させてもらってます。

"KickProxyUsers": true, ※未確認
串さしてる人を入れないようにするものらしいよ?

"DisableHardmode": false,
これをtrueにするとWofを倒してもハードモードに行かなくなる
Wofのドロップアイテムは手に入るがハンマーで祭壇はハード行かないと壊せないので注意

"DisableDungeonGuardian": false,
trueにするとoldmanが保護される
ケルトロンだそうとしたらスポーン地点に強制送還されます。

"DisableClownBombs": false,
trueにするとピエロの爆弾が出ないようにするようですが。
Tshockだともともとダメージないぽい?
1.2以降からブロックが破壊されなくなったため特に気にすることもないだろう

"DisableSnowBalls": true,
trueにするとフロストレギオンの雪だるま達が雪玉を投げてこなくなる。
本来はフロストレギオンの雪玉は着弾後雪ブロックになる
掃除が面倒くさい人向け。

"ChatFormat": "{1}{2}{3}: {4}",
チャットの形式を変更するのに使う、変数は以下の通り
{0} = Group Name,
{1} = Group Prefix
{2} = Player Name
{3} = Group Suffix
{4} = Chat Message


"ChatAboveHeadsFormat": "{2}", ※不明
キャラの頭に出るチャットメッセージの形式・・・だと思う

"ForceTime": "normal",
ザ・ワールド normalの部分を変えることによって時間を昼か夜に固定することもできる
config.json変更保存で/reloadするとすぐ効果を発揮する
normal 通常の時間の流れ
day ずっと昼(PM12:00固定)職人歓喜
nignt ずっと夜(AM12:00固定) 夜戦バカ歓喜

"TileKillThreshold": 1600,
指定した数字以上の個数を1秒いないでブロック等を破壊したら凍ってしまう

"TilePlaceThreshold": 60,
こちらも1秒で指定した個数以上置くと凍る

"TileLiquidThreshold": 30,
こっちは液体

"ProjectileThreshold": 150,
飛び道具等、ノースポールやメガシャークの弾丸等もこちらに含まれる
特にノースポールはデフォルトのままだと1回振るだけで凍りつくことがあります
Threshold系の数字はデフォルトのまま遊ぶとすぐに凍りつくほど低いです
どれも3倍くらいの数値に上げておいた方が難なく遊べます

"ProjIgnoreShrapnel": true, ※未確認
クリスタルの弾丸の拡散弾はprojectile制限から除外するものらしい

"RequireLogin": false,
ログインしていないユーザーは動けないようにします。
うちの鯖では動けるようにしていますがモディファイ権限(ワールド編集の権利)はないためブロックの設置破壊や物はおけないようになってます。
ていうかどのTshock鯖でも遊ぶならログインしたほうがいいです。

"DisableInvisPvP": false,
PvP時透明バフが無効になる、透明ポーション涙目

"MaxRangeForDisabled": 40, ※未確認
飛び道具の射程制限が有効な場合の範囲
この場合40ブロック分、これでも広くした方です。
これ以上はプレイヤーがいないと無効になります。多分

"ServerPassword": "",
デフォルトのサーバーパスワードはここで変更します。
すでにアカウントを作成していた場合パスワードなしで入れたと思う。

"RegionProtectChests": false, ※未確認
リージョンで保護されたエリアのチェストの中身まで保護する機能
使ってないので機能するかわかりません。

"DisableLoginBeforeJoin": false,
trueにするとアカウントがある場合でもパスワードを求められるようになる

"DisableUUIDLogin": false, ※不明
UUIDでログインできないようにするものらしい。

"KickEmptyUUID": false,
UUIDを送信しないユーザーをキックします

"AllowRegisterAnyUsername": false,
trueにするとregisterのアカウントネームを好きな名前で登録できる機能らしい・・・
けどおすすめしないので許可してません、自動でログインしないだろうし。

"AllowLoginAnyUsername": true,
trueにするとloginコマンドで他のアカウントにログインできる
他人のパスわかっても自分のアカウント以外でやらないでください。

ちなみにhistoryはアカウントでみているため、他のアカウントにログインしてると履歴は壊したときのアカウントで登録されます。(まあログイン履歴がプロンプトに乗ってるから結果的にばれますけどね・・・)

"MaxDamage": 12000,
プレイヤーやモブが与えられる最大のダメージです
これを越えると無効になり凍りつく、相手は死なない

"MaxProjDamage": 15000,
飛び道具などで与えられる最大ダメージ
※MaxDamage系は現状軽く500ダメは出しやすいため少なくとも1000以上は推奨します、また、ヴァンパイアに杭撃つこと考えたら10000以上はあったほうがいいかもしれません。
あと・・・多分2万越えたら鯖追い出される・・・

"KickOnDamageThresholdBroken": false, ※不明
上記の受けすぎたダメージでサーバーから追い出されるのを防ぐもの・・・なのかな?
もしかしたら指定したダメージ上限与えたら蹴られる可能性もある。


"IgnoreProjUpdate": false, ※未確認
trueにすると設置の制限をなくすものだと思う。

"IgnoreProjKill": false, ※未確認
こっちはブロックなどの破壊の制限をなくすものかなぁ。

"IgnoreNoClip": false, ※不明
多分ブロックに埋まった時前の場所に戻されるかどうかの判定を行うものかも
trueにするとtpで壁に埋まっても戻されなくなるはず。

"AllowIce": false, ※不明
権限がないと氷ブロックがおけなくなるらしい・・・けど気にしたことがない

"AllowCrimsonCreep": false,
"AllowCorruptionCreep": false,
"AllowHallowCreep": false,
これら3つは不浄、クリムゾン、聖域の浸食させるためのものです
trueにしたら浸食される、falseでも氷ブロックは浸食されることがある(バグ?)

"StatueSpawn200": 12, ※全部不明
"StatueSpawn600": 24,
"StatueSpawnWorld": 40,
石像の発生にかかわるもの・・・なのかな?
よくわからない

"PreventBannedItemSpawn": false,
trueにするとitemやgiveで禁止されたアイテムを出せないようにできる

"PreventDeadModification": true, ※不明

"EnableChatAboveHeads": false, ※未確認
キャラの頭にチャットメッセージを表示させないようにするためのものらしい・・・

"ForceXmas": true,
クリスマスモードになる
主に敵からプレゼントドロップ、条件でサンタがくる、クリスマスのみのモンスターがくる
クリスマス限定アイテムは売られないので注意

"AllowAllowedGroupsToSpawnBannedItems": false, ※不明
禁止しているアイテムを許可されたグループなら/iで増やせるということなのだろうか?

"IgnoreChestStacksOnLoad": false, ※未確認
trueにするとインベントリーエディッターなどで許容範囲を越えた個数(ボスアイテム999個とか)を持っても凍らなくなる
また、sefe bankはTshockで管理してないため、適応対象外となる
ちなみにインベントリーエディッター使えば21億くらいスタックできる。

"LogPath": "tshock",
ログデータを保管するフォルダを指定する

"PreventInvalidPlaceStyle": true, ※不明
"BroadcastRGB": [
127.0,
255.0,
212.0
],
ブロードキャストチャットの色を変更する、これもサーバー再起動が必要。

"RestUseNewPermissionModel": true, ※不明
Rest Apiの新しいモデルを使うようにするもの・・・?

"ApplicationRestTokens": {}, ※不明
Rest Api自体触れたことがないのでわかりません・・・

"ReservedSlots": 20,
リザーブスロット権限があれば超過しても入れるようです
でもここの満員時はwindowsの制限に引っ掛かって入れないと思うけど・・・

"LogRest": false, ※未確認
trueにするとリザーブスロット権限の特別枠が適用されるらしい

"RespawnSeconds": 2,
死んだ時のリスポーンまでの時間

"RespawnBossSeconds": 10,
ボスに倒された判定があるとこの時間が適用される

"TilePaintThreshold": 60,
1秒間に数字以上のブロックに色を塗ると凍ります
デフォルト時のペイントスプレイヤー使用時はよく凍る。・゚・(ノ∀`)・゚・。

"EnableMaxBytesInBuffer": true, ※不明
最大パケットバッファーに関係するらしい、trueにしてるけどfalseのほうがいいかなぁ

"MaxBytesInBuffer": 25242880, ※不明
Number of bytes in the packet buffer before we disconnect the player.
ディスコネクトになる原因・・・もしかしてこれ?

"ForceHalloween": true,
ハロウィンモードにします。
かぼちゃが勝手に生える、特定のアイテムドロップ、専用モブ追加など
また、クリスマスモードと併用可能
その場合ごちゃまぜででてくる。

"AllowCutTilesAndBreakables": true, ※未確認
壊れたチェストなど、本来消えるものをそのまま残したりできるもの?
Tshockの説明に何も記述がないのでわかりません・・・

"CommandSpecifier": "/",
この部分を変更するとコマンド入力時の/から別の物に変更できる

"KickOnHardcoreDeath": false,
ハードコアで死んだときにキックされます。

"BanOnHardcoreDeath": false,
ハードコアで死んだときにBANされます。
おばけにすらなれない。

"HardcoreBanReason": "Death results in a ban",
ハードコアで死んだ時にBANされた時のメッセージ

"HardcoreKickReason": "Death results in a kick",
こっちはキック、細かいなあ

"AnonymousBossInvasions": true
ボスアイテム使って召喚した時はプロンプトに乗るのです

"MaxHP": 500,
最大HPの上限値、超えると凍らされる
"MaxMP": 200
最大MPの上限値、同じく超えると凍らされる
buffによる上限突破はもんだいないっぽい!

New
"SaveWorldOnLastPlayerExit": false
trueにすると最後の1人がログアウトすると自動でセーブされるようになる