Skip to content

SourceChara

表の説明

ソーステーブルを作成するときは、必ず公式ソーステーブルの最初の3行をそのままコピーして、4行目以降にデータを入力してください。列の順番は絶対に変えないでください。

タイプ説明
idテキストその項目を唯一無二に識別するための最重要IDです。キャラ表内で他のすべての項目と区別するために使われます。このIDがバニラや他のMODのIDと被った場合、最後に読み込まれたテーブルが優先されます。スペースは絶対に入れず、必要ならsnakecase(例:mymod_chara_yajyuu_senpai)を使うことをおすすめします。
_id整数図鑑での表示順を決める数値です。重複しても問題ありません。
name_JPテキストゲーム内で実際に表示される日本語の名前です。
nameテキストゲーム内英語名です。他の言語はSourceLocalization.jsonで対応します。
aka_JPテキストゲーム内で表示される二つ名・肩書きの日本語表記です。
akaテキスト二つ名・肩書きの英語表記です。他の言語はSourceLocalization.jsonで対応します。
idActorテキストPCCパーツを使って描画するかどうかを制御します。例:pcc,unique,jure と書くと、pcc/unique/jureからPCCパーツを読み込みます。
sortテキストSourceCharaでは使用していません。
sizeテキストこのキャラが占めるタイルサイズです。通常は空欄。2,2のように指定すると2×2タイルを占有し、押し出されなくなります。
_idRenderDataテキストスプライトシートの参照先を制御します。chara/chara_LなどはTexture ReplaceのテクスチャとtilesのタイルIDを使用(スロットに限りがあり上書きされる可能性あり)。@charaTexture内にある同じIDのテクスチャを直接使用します。MODキャラは必ず@charaを使用してください。
tiles整数スプライトシートのタイルID、またはMODキャラの場合はskinsetです。
tiles_snow整数雪マップで使用する代替タイルIDです。MODキャラはテクスチャバリエーションを使用してください。
colorMod整数主に100と組み合わせて使用し、グレースケールのスプライトにmainElementの色を乗せる機能です。
componentsテキストSourceCharaでは使用していません。
defMatテキストSourceCharaでは使用していません。
LV整数キャラの「危険度」。マップの危険度に応じた生成判定、選択コスト(奴隷商人・調教師)、種族/職業ごとの基礎ステータス生成に影響します。
chance整数マップ生成確率の補正値(販売リストにも影響する可能性あり)。初期値は100です。
quality整数0–2:通常モンスター。3:ユニークモンスター(卵入手可能だが友達・捕獲・調教不可)。4:ユニークキャラ(卵のみ。友達にはなれるが捕獲・調教不可)。
hostilityテキストプレイヤー・味方・傍観者に対する性格。空欄だとHostile(敵対)。Neutralは攻撃されない限り先制攻撃しない。Friendは味方に対して敵対的な対象を攻撃し、プレイヤーが怒っているときも攻撃します。
biomeテキスト指定した床タイプでの生成率が上昇(場合により2倍)、それ以外では低下(場合により半減)します。例:Waterにすると水上の床を強く好みます。
tagテキスト既知のタグ:mini(スプライト半分サイズ)、noRandomProduct(幸運の太鼓で下着が出ない可能性)、random_colorcolorMod=100時に髪の色をランダム化)、randomFishstaticSkin(性別によるスプライト割り当てを固定)、snow(雪マップを好む)、water(水タイルを好む)など。
traitテキスト複雑な特性の羅列です。特性ドキュメントとTrait*クラスの実装を参照してください。
raceテキストSourceRaceの種族IDを指定します。
jobテキストSourceJobの職業ID。省略時はnoneになります。
tacticsテキスト割り当てられた職業のデフォルト戦術を上書きします。
aiIdleテキスト待機時のAI行動を追加・上書きします。例:Stand(完全に動かず攻撃されても反応しない)、Root(攻撃されるか勧誘されるまで動かない)。
aiParamテキスト3つの数値(敵との理想距離、毎ターンその距離に移動する確率、まれに使う再移動確率)。
actCombatテキスト戦闘中に使用可能なSourceElementのIDをカンマ区切りで指定。/Nで使用確率を固定できます。バフ系は/ptを付けるとパーティ全体に効果(味方バフのみ)。例:ActThrowPotion/30,SpWeakness,SpSpeedDown,SpWisdom/50/pt。省略時は確率100。
mainElementテキスト主要属性親和性。FireColdLightningDarknessNetherSoundChaosPoisonCutAcidImpactから選択。
elementsテキスト受動的なSourceElementをカンマ区切りで指定。/Nでレベル・数値を設定可能。0や負の値で種族からの継承を無効化・調整できます。例:invisibility/1(有効)、invisibility/0(継承無効)、antidote/-30(肉に毒を付与)など。
equipテキスト職業のランダム装備テンプレートを上書きします(種族のEQが空でない場合のみ有効)。例:盗賊職業にequip=Archerとすると弓兵装備になりますが、犬種族のように種族EQが空の場合は装備が生成されません。
lootテキスト追加ドロップアイテム(Thing/ThingVのID)をカンマ区切りで指定。後ろに/Nを付け、20で+1%のドロップ率になります。例:medal/500=25%、medal/3000=150%(確定1個+50%でもう1個)。
categoryテキストほとんどの項目はデフォルトのcharaを使用します。
filterテキストSourceCharaでは使用していません。
gachaFilterテキストガチャで最初にカテゴリ(resident/livestock/Unique/defaultなど)を選び、このフィルターで条件に合うキャラを抽出します。例:livestockカテゴリではlivestockタグを持つものだけが対象になります。
toneテキスト日本語テキストの会話トーン修飾子です。
actIdleテキスト非戦闘時の特殊行動。例:readBook(ランダム本を生成・読書・削除)、buffMage(定期的にspResElementspHeroなどのバフ魔法を唱える)など。
lightDataテキストSourceCharaでは使用していません。発光色を設定できます。
idExtraテキストSourceCharaでは使用していません。追加の描画データ。
bioテキストスラッシュ区切りの値(空白なし):genderm/f/n、必須)、birthyear(任意)、height(任意)、weight(任意)、chara_tone.xlsxtone(任意)、chara_talk.xlsxtalk(任意)。例:f/51044/152/46/friendly|私|あなた
faithテキスト固定の信仰。設定するとゲーム内で変更できなくなります。
worksテキストSourceHobbyのaliasを指定します。
hobbiesテキストSourceHobbyのaliasを指定します。
idTextテキストCharaTextテーブル内の対応するIDと紐付けます。
moveAnimeテキスト移動アニメーションの種類。hopまたは空欄。
factoryテキストSourceCharaでは使用していません。
componentsテキストSourceCharaでは使用していません(重複列)。
recruitItemsテキスト特殊な勧誘会話用アイテム。現在はmani専用です。
detail_JPテキストSourceCharaでは使用しません。メモ用途としてご自由にどうぞ。
detailテキストSourceCharaでは使用しません。メモ用途としてご自由にどうぞ。

人間らしい会話にするには

Race表でhumanまたはhumanSpeakタグを付ける以外に、Chara表にhumanSpeakタグを付けることで、会話時に括弧()を使わない自然な話し方になります。

生成設定

tag列を使って生成に関する設定を行えます。

特定のエリアに自動生成

キャラを特定のエリアに生成させたい場合は、addZone_*タグを使い、*の部分を対象エリアのidに置き換えてください。*のままにするとランダムなエリアに生成されます。

例:スタート地点の原野に生成させる → addZone_startSite テルフィ地下1階に生成させる → addZone_derphy/-1

SourceGame/Zoneid列を参考にしてください。

addZoneタグは1つにつきそのエリアに必ず1体生成されます。 例:addZone_lumiest,addZone_little_garden,addZone_specwing,addZone_* と書くと、指定した3エリア+ランダム1エリアの計4体が生成されます。

img

初期装備・アイテムの追加

生成時に初期装備や所持アイテムを設定できます。addEq_ItemID#RarityaddThing_ItemID#Countタグを使用します。

装備を指定する場合はaddEq_ItemID#Rarityを使います。Rarityは以下のいずれかです:Random、Crude、Normal、Superior、Legendary、Mythical、Artifact。省略すると#Randomになります。

(粗悪,普通,高品質,奇跡,神器,特別製)

例:奇跡級のBS_Flydragonswordと通常のaxe_machineをメインウェポンに設定したい場合

addZone_palmia,addEq_BS_Flydragonsword#Legendary,addEq_axe_machine

所持アイテムを追加する場合はaddThing_ItemID#Countを使います。#Countを省略すると1個になります。

例:padoru_giftを10個、援軍の巻物を5個持たせる場合

addZone_palmia,addThing_padoru_gift#10,addThing_1174#5

冒険者として登録する

traitにAdventurerBackerを設定すると、そのキャラが冒険者として登録され、冒険者ランキングに表示されるようになります。

独自の商人在庫を設定する

addStockタグと在庫用JSONファイルを使って、商人独自の在庫を定義できます。

在庫ファイルはLangMod/**/Data/フォルダにstock_識別子.jsonという名前で配置します(識別子はキャラIDや任意の文字列でOK)。例:stock_my_cnpc.jsonstock_unique_armor.json

addStockタグだけ書くと、そのキャラのIDがそのまま使用されます。複数の在庫を組み合わせることも可能です。 例:addStock,addStock_unique_items,addStock_unique_armor

在庫ファイルの構造

json
{
  "Items": [
    {
      "Id": "example_item",
      "Material": "",
      "Num": 1,
      "Restock": true,
      "Type": "Item",
      "Rarity": "Random",
      "Identified": true
    },
    {
      "Id": "example_item_limited",
      "Material": "granite",
      "Num": 1,
      "Restock": false,
      "Type": "Item",
      "Rarity": "Artifact",
      "Identified": true
    }
  ]
}
  • Items:在庫アイテムの配列
  • Id:必須。ThingのID(一部のタイプではElementのaliasや数字IDも可)
  • Material:素材名。空欄だとThingに定義されたデフォルト素材を使用
  • Num:個数(デフォルト1)
  • Restockfalseにすると補充されなくなり、1回限りで在庫がなくなる
  • RarityRandomCrudeNormalSuperiorLegendaryMythicalArtifactから選択(デフォルトNormal
  • IdentifyLevel:鑑定状態(IdentifiedRequireSuperiorIdentifyKnowQualityUnknown
  • BlessedState:祝福状態(DoomedCursedNormalBlessed

必要のない項目は省略できます。最低限Idだけあれば有効です。

在庫アイテムの種類

Type説明
Item通常のアイテム。素材・レア度・個数に対応
Blockブロック。ブロックaliasと素材から生成
Cassetteカセットテープ。IdはBGMの数値IDです
Currency通貨。moneymoney2platmedalinfluencecasino_coinecopoなどが指定可能
Letter手紙。Idは手紙ID、本文はLangMod/XX/Text/Scrollに配置
ObjObjオブジェクト。aliasを指定
Perfume香水。ElementのaliasまたはID
Plan計画書。ElementのaliasまたはID
Potionポーション。ElementのaliasまたはID
Recipeレシピ
RedBook赤本。Idは書籍ID、本文はLangMod/XX/Text/Bookに配置
Rod杖。ElementのaliasまたはID。Numで充填回数
Runeルーン。ElementのaliasまたはID
RuneFree無法のルーン。ElementのaliasまたはID
Scroll巻物。ElementのaliasまたはID
Skill技術書。ElementのaliasまたはID
Spell魔法書。ElementのaliasまたはID
Usuihon薄い本。宗教IDを指定

セリフ&吹き出し

状況別吹き出し

特定の状況でキャラの頭上に短いセリフを吹き出しで表示できます。

これらのセリフはCharaTextテーブルに書き、キャラ側のidText欄にそのIDを入れることで紐付けます。

状況
calm普段
fov視界に入ったとき
aggro戦闘開始時
dead死亡時
kill敵を倒したとき

「話がしたい」

キャラに「話がしたい」と話しかけたときの専用会話を追加したい場合は、LangMod/**/Dialog/フォルダにdialog.xlsxを用意します。

このテーブルの形式はゲーム本体のElin/Package/_Elona/Lang/_Dialog/dialog.xlsxと同じですが、uniqueシートだけ使い、自分のキャラIDの行だけ書けば大丈夫です。

ここでのIDはキャラのIDと完全に一致させてください。

注意

dialog.xlsxのデータは5行目から書き始めてください(ソーステーブルの4行目開始とは異なります)。

剧情(ドラマ)

選択肢付きの会話や特殊な動作を組み合わせた、深い交流システムです。

剧情に関する詳細は別章に移動しました。

This project is an unofficial documentation site and is not affiliated with, endorsed by, or associated with Elin or Lafrontier / Noa. All trademarks are the property of their respective owners.