Skip to content

EA 23.308 Nightly โ€‹

May 22, 2026

43 files modified. 1 new file created.

Important Changes โ€‹

None.

ActEffect โ€‹

void AddCon<T>(int rate, int power) where T : Condition

cs
	{
		CC.PlaySound("clean_floor");
		Msg.Say("exterminate");
		List<Chara> list3 = EClass._map.charas.Where((Chara c) => c.isCopy && !c.IsPCFaction).ToList(); 
		List<Chara> list3 = EClass._map.charas.Where((Chara c) => (c.isCopy || c.isHatchling) && !c.IsPCFaction).ToList(); 
		if (list3.Count == 0)
		{
			Msg.SayNothingHappen();

ActRush โ€‹

public override bool CanPerform()

cs
		return false;
	}
	Act.TP.Set(flag ? EClass.scene.mouseTarget.pos : Act.TC.pos);
	if (Act.CC.isRestrained || Act.CC.HasCondition<ConEntangle>()) 
	if (Act.CC.isRestrained || Act.CC.HasCondition<ConEntangle>() || Act.CC.isBlind) 
	{
		return false;
	}

Card โ€‹

public bool isFav

cs
		}
	}

	public bool isHatchling 
	{ 
		get 
		{ 
			return _bits2[11]; 
		} 
		set 
		{ 
			_bits2[11] = value; 
		} 
	} 
	public bool isBackerContent => c_idBacker != 0;

	public SourceBacker.Row sourceBacker

public void HatchEgg()

cs
		if (chara != null && isChara)
		{
			chara.SetHostility(Chara.OriginalHostility);
			chara.isHatchling = true; 
		}
	}
}

ContentConfigTest โ€‹

public class ContentConfigTest : ContentConfig

cs

	public UIButton toggledDntCancelIfZeroDamage;

	public UIButton toggleCacheEffect; 
	public Slider sliderBrightness;

	public Slider sliderExtraHeight;

public override void OnInstantiate()

cs
	{
		base.config.test.toolNoPick = on;
	});
	toggleCacheEffect.SetToggle(base.config.test.cacheEffect, delegate(bool on) 
	{ 
		base.config.test.cacheEffect = on; 
		base.config.Apply(); 
	}); 
	toggleCompressSave.SetToggle(base.config.test.compressSave, delegate(bool on)
	{
		base.config.test.compressSave = on;

CoreConfig โ€‹

public class Test

cs

		public bool compressSave;

		public bool cacheEffect; 
		public float brightnessNight;
	}

public void Apply()

cs
			camSupport.beautify.bloom = test.bloom2;
			camSupport.cam.allowHDR = graphic.hdr;
			ApplyScale();
			EClass.core.effects.KillAll(); 
			EClass.core.effects.effects.usePool = test.cacheEffect; 
		}
	}

Effect โ€‹

public enum Type

cs
	public Vector3 destV;

	[NonSerialized]
	public bool pooled; 
	[NonSerialized] 
	public Transform poolParent; 
	public Vector3 orgLocalScale; 

	[NonSerialized]
	public List<Material> materialsToDestroy;

public enum Type

cs
	[NonSerialized]
	public Point destPos;

	protected bool killed; 
	[NonSerialized]
	public Tween killTimer;

public static T Get<T>(string id) where T : Effect

cs
		return manager.effects.Get(id) as T;
	}

	private void Awake() 
	{ 
		orgLocalScale = base.transform.localScale; 
	} 
	public void Play(float delay, Point from, float fixY = 0f, Point to = null, Sprite sprite = null)
	{
		Point _from = from.Copy();

public void Kill()

cs
{
	TweenUtil.KillTween(ref killTimer);
	TweenUtil.KillTween(ref moveTween);
	killed = true; 
	timer = 0f; 
	spriteIndex = 0; 
	base.transform.localScale = orgLocalScale; 
	OnKill();
	manager.Remove(this);
	if (pool && manager.effects.usePool)

public virtual void OnKill()

cs

	public void OnDisable()
	{
		if ((bool)base.transform.parent && !test) 
		if ((bool)base.transform.parent && !test && (!pool || !manager.effects.usePool)) 
		{
			Kill();
		}

public Effect SetParticleColor(Color color, bool changeMaterial = false, string

cs
		if (changeMaterial)
		{
			Material material = particleSystem.GetComponent<ParticleSystemRenderer>().material;
			materialsToDestroy.Add(material); 
			if (!manager.effects.usePool || !pool) 
			{ 
				materialsToDestroy.Add(material); 
			} 
			material.SetColor(idCol, color);
		}
		else

GameUpdater โ€‹

public override void FixedUpdate()

cs
		}
		List<Chara> charas = EClass._map.charas;
		float gameDelta = Core.gameDelta;
		SetUpdatesPerFrame(charas.Count, 0.05f); 
		bool flag = false; 
		for (int i = 0; i < charas.Count; i++)
		{
			Chara chara = charas[i];

public override void FixedUpdate()

cs
				break;
			}
			chara.roundTimer += gameDelta;
			float actTime = chara.actTime; 
			if (chara.roundTimer > actTime) 
			while (chara.roundTimer > chara.actTime) 
			{
				chara.Tick();
				chara.roundTimer -= actTime; 
				chara.roundTimer -= chara.actTime; 
				if (chara.ai is GoalEndTurn)
				{
					chara.SetNoGoal();
					break; 
					return; 
				}
				if (i > charas.Count)
				{
					flag = true; 
					break;
				}
			}
			if (flag) 
			{ 
				break; 
			} 
		}
	}
}

+GrowSystemRose โ€‹

File Created
cs
public class GrowSystemRose : GrowSystemFlower
{
	protected override bool UseGenericFirstStageTile => false;
}

SourceArea โ€‹

public class Row : BaseRow

cs
		["detail"] = 7
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["textAssign_JP"] = "string", 
		["textAssign"] = "string", 
		["detail_JP"] = "string", 
		["tag"] = "string", 
		["detail"] = "string"
	}; 
	public override string[] ImportFields => new string[1] { "textAssign" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceBacker โ€‹

public string Text

cs
		["original"] = 20
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["valid"] = "bool", 
		["lang"] = "string", 
		["name"] = "string", 
		["text"] = "string", 
		["type"] = "int", 
		["skin"] = "int", 
		["gender"] = "int", 
		["tree"] = "string", 
		["deity"] = "string", 
		["chara"] = "string", 
		["loot"] = "string", 
		["isStatic"] = "int", 
		["done"] = "bool", 
		["loc"] = "string", 
		["original"] = "string"
	}; 
	[NonSerialized]
	public List<Row> listRemain = new List<Row>();

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceBlock โ€‹

public override RenderParam GetRenderParam(SourceMaterial.Row mat, int dir, Poin

cs
		["detail"] = 30
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["sort"] = "int", 
		["reqHarvest"] = "string[]", 
		["hp"] = "int", 
		["idThing"] = "string", 
		["_tileType"] = "string", 
		["_idRenderData"] = "string", 
		["tiles"] = "int[]", 
		["anime"] = "int[]", 
		["snowTile"] = "int", 
		["colorMod"] = "int", 
		["colorType"] = "string", 
		["value"] = "int", 
		["LV"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["category"] = "string", 
		["roof"] = "int", 
		["autoFloor"] = "string", 
		["concrete"] = "bool", 
		["transparent"] = "bool", 
		["transition"] = "int[]", 
		["tag"] = "string[]", 
		["soundFoot"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public Dictionary<int, Row> _rows = new Dictionary<int, Row>();

	public static RenderData FallbackRenderData;

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void BackupPref()
	{
		_rows.Clear();

SourceCalc โ€‹

public class Row : BaseRow

cs
		["bonus"] = 4
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["num"] = "string", 
		["sides"] = "string", 
		["bonus"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceCategory โ€‹

public string GetIdThing()

cs
		["flag"] = 21
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["uid"] = "int", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["_parent"] = "string", 
		["recipeCat"] = "string", 
		["slot"] = "element_id", 
		["skill"] = "element_id", 
		["maxStack"] = "int", 
		["tileDummy"] = "int", 
		["installOne"] = "bool", 
		["ignoreBless"] = "int", 
		["tag"] = "string[]", 
		["idThing"] = "string", 
		["recycle"] = "string[]", 
		["costSP"] = "int", 
		["gift"] = "int", 
		["deliver"] = "int", 
		["offer"] = "int", 
		["ticket"] = "int", 
		["sortVal"] = "int", 
		["flag"] = "int"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceCellEffect โ€‹

public override int GetTile(SourceMaterial.Row mat, int dir = 0)

cs
		["detail"] = 18
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["sort"] = "int", 
		["_tileType"] = "string", 
		["_idRenderData"] = "string", 
		["tiles"] = "int[]", 
		["anime"] = "int[]", 
		["colorMod"] = "int", 
		["value"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["category"] = "string", 
		["tag"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public static RenderData FallbackRenderData;

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnAfterImportData()
	{
		int num = 0;

SourceChara โ€‹

public override string GetName()

cs

	public static readonly IReadOnlyDictionary<string, int> RowMapping;

	public static readonly IReadOnlyDictionary<string, string> TypeMapping; 
	public Dictionary<string, Row> _rows = new Dictionary<string, Row>();

	public static Row rowDefaultPCC;

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void BackupPref()
	{
		SourceAsset._SavePrefs("prefs_auto");

static SourceChara()

cs
		dictionary["detail_JP"] = 48;
		dictionary["detail"] = 49;
		RowMapping = dictionary;
		Dictionary<string, string> dictionary2 = new Dictionary<string, string>(); 
		dictionary2["id"] = "string"; 
		dictionary2["_id"] = "int"; 
		dictionary2["name_JP"] = "string"; 
		dictionary2["name"] = "string"; 
		dictionary2["aka_JP"] = "string"; 
		dictionary2["aka"] = "string"; 
		dictionary2["idActor"] = "string[]"; 
		dictionary2["sort"] = "int"; 
		dictionary2["size"] = "int[]"; 
		dictionary2["_idRenderData"] = "string"; 
		dictionary2["tiles"] = "int[]"; 
		dictionary2["tiles_snow"] = "int[]"; 
		dictionary2["colorMod"] = "int"; 
		dictionary2["components"] = "string[]"; 
		dictionary2["defMat"] = "string"; 
		dictionary2["LV"] = "int"; 
		dictionary2["chance"] = "int"; 
		dictionary2["quality"] = "int"; 
		dictionary2["hostility"] = "string"; 
		dictionary2["biome"] = "string"; 
		dictionary2["tag"] = "string[]"; 
		dictionary2["trait"] = "string[]"; 
		dictionary2["race"] = "string"; 
		dictionary2["job"] = "string"; 
		dictionary2["tactics"] = "string"; 
		dictionary2["aiIdle"] = "string"; 
		dictionary2["aiParam"] = "int[]"; 
		dictionary2["actCombat"] = "string[]"; 
		dictionary2["mainElement"] = "string[]"; 
		dictionary2["elements"] = "elements"; 
		dictionary2["equip"] = "string"; 
		dictionary2["loot"] = "string[]"; 
		dictionary2["category"] = "string"; 
		dictionary2["filter"] = "string[]"; 
		dictionary2["gachaFilter"] = "string[]"; 
		dictionary2["tone"] = "string"; 
		dictionary2["actIdle"] = "string[]"; 
		dictionary2["lightData"] = "string"; 
		dictionary2["idExtra"] = "string"; 
		dictionary2["bio"] = "string"; 
		dictionary2["faith"] = "string"; 
		dictionary2["works"] = "string[]"; 
		dictionary2["hobbies"] = "string[]"; 
		dictionary2["idText"] = "string"; 
		dictionary2["moveAnime"] = "string"; 
		dictionary2["factory"] = "string[]"; 
		dictionary2["components"] = "string[]"; 
		dictionary2["recruitItems"] = "string[]"; 
		dictionary2["detail_JP"] = "string"; 
		dictionary2["detail"] = "string"; 
		TypeMapping = dictionary2; 
	}
}

SourceCharaText โ€‹

public class Row : BaseRow

cs
		["kill"] = 11
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["calm_JP"] = "string", 
		["fov_JP"] = "string", 
		["aggro_JP"] = "string", 
		["dead_JP"] = "string", 
		["kill_JP"] = "string", 
		["calm"] = "string", 
		["fov"] = "string", 
		["aggro"] = "string", 
		["dead"] = "string", 
		["kill"] = "string"
	}; 
	public override string[] ImportFields => new string[5] { "calm", "fov", "aggro", "dead", "kill" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceCheck โ€‹

public class Row : BaseRow

cs
		["lvMod"] = 9
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["element"] = "element_id", 
		["targetElement"] = "element_id", 
		["subFactor"] = "float", 
		["targetSubFactor"] = "float", 
		["baseDC"] = "int", 
		["critRange"] = "int", 
		["fumbleRange"] = "int", 
		["dice"] = "int", 
		["lvMod"] = "float"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceCollectible โ€‹

public class Row : BaseRow

cs
		["detail"] = 10
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["rarity"] = "int", 
		["prefab"] = "string", 
		["num"] = "int", 
		["filter"] = "string", 
		["tag"] = "string[]", 
		["sound"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceDeco โ€‹

public override int GetTile(SourceMaterial.Row mat, int dir = 0)

cs
		["detail"] = 27
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["sort"] = "int", 
		["idBiome"] = "string", 
		["reqHarvest"] = "string[]", 
		["hp"] = "int", 
		["_tileType"] = "string", 
		["_idRenderData"] = "string", 
		["tiles"] = "int[]", 
		["anime"] = "int[]", 
		["colorMod"] = "int", 
		["value"] = "int", 
		["LV"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["category"] = "string", 
		["edge"] = "int", 
		["autotile"] = "int", 
		["autotilePriority"] = "int", 
		["autotileBrightness"] = "float", 
		["soundFoot"] = "string", 
		["tag"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public Dictionary<int, Row> _rows = new Dictionary<int, Row>();

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void BackupPref()
	{
		_rows.Clear();

SourceElement โ€‹

public bool IsEncAppliable(SourceCategory.Row cat)

cs
		["adjective"] = 56
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["altname_JP"] = "string", 
		["altname"] = "string", 
		["aliasParent"] = "string", 
		["aliasRef"] = "string", 
		["aliasMtp"] = "string", 
		["parentFactor"] = "float", 
		["lvFactor"] = "int", 
		["encFactor"] = "int", 
		["encSlot"] = "string", 
		["mtp"] = "int", 
		["LV"] = "int", 
		["chance"] = "int", 
		["value"] = "int", 
		["cost"] = "int[]", 
		["geneSlot"] = "int", 
		["sort"] = "int", 
		["target"] = "string", 
		["proc"] = "string[]", 
		["type"] = "string", 
		["group"] = "string", 
		["category"] = "string", 
		["categorySub"] = "string", 
		["abilityType"] = "string[]", 
		["tag"] = "string[]", 
		["thing"] = "string", 
		["eleP"] = "int", 
		["cooldown"] = "int", 
		["charge"] = "int", 
		["radius"] = "float", 
		["max"] = "int", 
		["req"] = "string[]", 
		["idTrainer"] = "string", 
		["partySkill"] = "int", 
		["tagTrainer"] = "string", 
		["levelBonus_JP"] = "string", 
		["levelBonus"] = "string", 
		["foodEffect"] = "string[]", 
		["langAct"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string", 
		["textPhase_JP"] = "string", 
		["textPhase"] = "string", 
		["textExtra_JP"] = "string", 
		["textExtra"] = "string", 
		["textInc_JP"] = "string", 
		["textInc"] = "string", 
		["textDec_JP"] = "string", 
		["textDec"] = "string", 
		["textAlt_JP"] = "string[]", 
		["textAlt"] = "string[]", 
		["adjective_JP"] = "string[]", 
		["adjective"] = "string[]"
	}; 
	[NonSerialized]
	public List<Row> hobbies = new List<Row>();

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		hobbies.Clear();

SourceFaction โ€‹

public class Row : BaseRow

cs
		["detail"] = 11
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["type"] = "string", 
		["faith"] = "string", 
		["domain"] = "string", 
		["relation"] = "int", 
		["textType_JP"] = "string", 
		["textType"] = "string", 
		["textAvatar"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override string[] ImportFields => new string[3] { "textType", "textBenefit", "textPet" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceFloor โ€‹

public override int GetTile(SourceMaterial.Row mat, int dir = 0)

cs
		["detail"] = 29
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["sort"] = "int", 
		["idBiome"] = "string", 
		["reqHarvest"] = "string[]", 
		["hp"] = "int", 
		["_tileType"] = "string", 
		["_idRenderData"] = "string", 
		["tiles"] = "int[]", 
		["anime"] = "int[]", 
		["colorMod"] = "int", 
		["value"] = "int", 
		["LV"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["defBlock"] = "string", 
		["bridgeBlock"] = "string", 
		["category"] = "string", 
		["edge"] = "int", 
		["autotile"] = "int", 
		["autotilePriority"] = "int", 
		["autotileBrightness"] = "float", 
		["soundFoot"] = "string", 
		["tag"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public Dictionary<int, Row> _rows = new Dictionary<int, Row>();

	public static RenderData FallbackRenderData;

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void BackupPref()
	{
		_rows.Clear();

SourceFood โ€‹

public class Row2 : Row

cs
		["detail"] = 47
	};

	public new static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["_origin"] = "string", 
		["name_JP"] = "string", 
		["unit_JP"] = "string", 
		["name"] = "string", 
		["unit"] = "string", 
		["name2_JP"] = "string[]", 
		["name2"] = "string[]", 
		["unknown_JP"] = "string", 
		["unknown"] = "string", 
		["tiles"] = "int[]", 
		["parse"] = "string[]", 
		["vals"] = "string[]", 
		["trait"] = "string[]", 
		["elements"] = "elements", 
		["idTaste"] = "string", 
		["TST"] = "int", 
		["NUT"] = "int", 
		["STR"] = "int", 
		["STR2"] = "int", 
		["END"] = "int", 
		["END2"] = "int", 
		["DEX"] = "int", 
		["DEX2"] = "int", 
		["PER"] = "int", 
		["PER2"] = "int", 
		["LER"] = "int", 
		["LER2"] = "int", 
		["WIL"] = "int", 
		["WIL2"] = "int", 
		["MAG"] = "int", 
		["MAG2"] = "int", 
		["CHA"] = "int", 
		["CHA2"] = "int", 
		["LV"] = "int", 
		["chance"] = "int", 
		["value"] = "int", 
		["weight"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["category"] = "string", 
		["tag"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row2

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void Reset()
	{
		base.Reset();

SourceGlobalTile โ€‹

public class Row : BaseRow

cs
		["detail"] = 13
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["tiles"] = "int[]", 
		["floor"] = "int", 
		["zoneProfile"] = "string", 
		["tag"] = "string[]", 
		["dangerLv"] = "int", 
		["trait"] = "string[]", 
		["idBiome"] = "string", 
		["attribs"] = "int[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public Dictionary<int, Row> tileAlias = new Dictionary<int, Row>();

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceHobby โ€‹

public class Row : BaseRow

cs
		["detail"] = 19
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["type"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["ai"] = "string", 
		["talk"] = "string", 
		["area"] = "string", 
		["destTrait"] = "string", 
		["workTag"] = "string", 
		["expedition"] = "string", 
		["resources"] = "int[]", 
		["randomRange"] = "int", 
		["modifiers"] = "string[]", 
		["tax"] = "int", 
		["things"] = "string[]", 
		["elements"] = "elements", 
		["skill"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	[NonSerialized]
	public List<Row> listHobbies = new List<Row>();

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceHomeResource โ€‹

public class Row : BaseRow

cs
		["detail"] = 7
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["expMod"] = "int", 
		["maxLv"] = "int", 
		["reward"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceJob โ€‹

public void WriteNote(UINote n)

cs
		["detail"] = 19
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["playable"] = "int", 
		["STR"] = "int", 
		["END"] = "int", 
		["DEX"] = "int", 
		["PER"] = "int", 
		["LER"] = "int", 
		["WIL"] = "int", 
		["MAG"] = "int", 
		["CHA"] = "int", 
		["SPD"] = "int", 
		["elements"] = "elements", 
		["weapon"] = "string[]", 
		["equip"] = "string", 
		["domain"] = "elements", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceKeyItem โ€‹

public class Row : BaseRow

cs
		["detail"] = 5
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceMaterial โ€‹

public Row Select()

cs
		["altName_JP"] = 33
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["category"] = "string", 
		["tag"] = "string[]", 
		["thing"] = "string", 
		["goods"] = "string[]", 
		["minerals"] = "string[]", 
		["decal"] = "int", 
		["decay"] = "int", 
		["grass"] = "int", 
		["defFloor"] = "int", 
		["defBlock"] = "int", 
		["edge"] = "int", 
		["ramp"] = "int", 
		["idSound"] = "string", 
		["soundFoot"] = "string", 
		["hardness"] = "int", 
		["groups"] = "string[]", 
		["tier"] = "int", 
		["chance"] = "int", 
		["weight"] = "int", 
		["value"] = "int", 
		["quality"] = "int", 
		["atk"] = "int", 
		["dmg"] = "int", 
		["dv"] = "int", 
		["pv"] = "int", 
		["dice"] = "int", 
		["bits"] = "string[]", 
		["elements"] = "elements", 
		["altName"] = "string[]", 
		["altName_JP"] = "string[]"
	}; 
	public static Dictionary<string, TierList> tierMap = new Dictionary<string, TierList>();

	public override string[] ImportFields => new string[1] { "altName" };

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		Cell.matList = rows;

SourceObj โ€‹

public class Stage

cs
		["detail"] = 31
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["_growth"] = "string[]", 
		["costSoil"] = "int", 
		["objType"] = "string", 
		["vals"] = "string[]", 
		["tag"] = "string[]", 
		["sort"] = "int", 
		["reqHarvest"] = "string[]", 
		["hp"] = "int", 
		["_tileType"] = "string", 
		["valType"] = "string", 
		["_idRenderData"] = "string", 
		["tiles"] = "int[]", 
		["anime"] = "int[]", 
		["snowTile"] = "int", 
		["colorMod"] = "int", 
		["colorType"] = "string", 
		["value"] = "int", 
		["LV"] = "int", 
		["chance"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["matCategory"] = "string", 
		["category"] = "string", 
		["idRoof"] = "int", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public Dictionary<int, Row> _rows = new Dictionary<int, Row>();

	public static RenderData FallbackRenderData;

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void BackupPref()
	{
		_rows.Clear();

SourcePerson โ€‹

public class Row : BaseRow

cs
		["detail"] = 14
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["idActor"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["aka_JP"] = "string", 
		["aka"] = "string", 
		["portrait"] = "string", 
		["faction"] = "string", 
		["LV"] = "int", 
		["job"] = "string", 
		["race"] = "string", 
		["material"] = "string", 
		["bio"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override string[] ImportFields => new string[1] { "aka" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceQuest โ€‹

public class Row : BaseRow

cs
		["talkComplete"] = 16
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["type"] = "string", 
		["drama"] = "string[]", 
		["idZone"] = "string", 
		["group"] = "string", 
		["tags"] = "string[]", 
		["money"] = "int", 
		["chance"] = "int", 
		["minFame"] = "int", 
		["detail_JP"] = "string", 
		["detail"] = "string", 
		["talkProgress_JP"] = "string", 
		["talkProgress"] = "string", 
		["talkComplete_JP"] = "string", 
		["talkComplete"] = "string"
	}; 
	public override string[] ImportFields => new string[2] { "talkProgress", "talkComplete" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceRace โ€‹

public class Row : BaseRow

cs
		["detail"] = 44
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["playable"] = "int", 
		["tag"] = "string[]", 
		["life"] = "int", 
		["mana"] = "int", 
		["vigor"] = "int", 
		["DV"] = "int", 
		["PV"] = "int", 
		["PDR"] = "int", 
		["EDR"] = "int", 
		["EP"] = "int", 
		["STR"] = "int", 
		["END"] = "int", 
		["DEX"] = "int", 
		["PER"] = "int", 
		["LER"] = "int", 
		["WIL"] = "int", 
		["MAG"] = "int", 
		["CHA"] = "int", 
		["SPD"] = "int", 
		["INT"] = "int", 
		["martial"] = "int", 
		["pen"] = "int", 
		["elements"] = "elements", 
		["skill"] = "string", 
		["figure"] = "string", 
		["geneCap"] = "int", 
		["material"] = "string", 
		["corpse"] = "string[]", 
		["loot"] = "string[]", 
		["blood"] = "int", 
		["meleeStyle"] = "string", 
		["castStyle"] = "string", 
		["EQ"] = "string[]", 
		["sex"] = "int", 
		["age"] = "int[]", 
		["height"] = "int", 
		["breeder"] = "int", 
		["food"] = "string[]", 
		["fur"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceRecipe โ€‹

public class Row : BaseRow

cs
		["tag"] = 10
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["factory"] = "string", 
		["type"] = "string", 
		["thing"] = "string", 
		["num"] = "string", 
		["sp"] = "int", 
		["time"] = "int", 
		["ing1"] = "string[]", 
		["ing2"] = "string[]", 
		["ing3"] = "string[]", 
		["tag"] = "string[]"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceReligion โ€‹

public class Row : BaseRow

cs
		["textPet"] = 22
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["name2_JP"] = "string[]", 
		["name2"] = "string[]", 
		["type"] = "string", 
		["idMaterial"] = "string", 
		["faith"] = "string", 
		["domain"] = "string", 
		["tax"] = "int", 
		["relation"] = "int", 
		["elements"] = "elements", 
		["cat_offer"] = "string[]", 
		["rewards"] = "string[]", 
		["textType_JP"] = "string", 
		["textType"] = "string", 
		["textAvatar"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string", 
		["textBenefit_JP"] = "string", 
		["textBenefit"] = "string", 
		["textPet_JP"] = "string", 
		["textPet"] = "string"
	}; 
	public override string[] ImportFields => new string[3] { "textBenefit", "textType", "name2" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceResearch โ€‹

public class Row : BaseRow

cs
		["detail"] = 12
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["resource"] = "string[]", 
		["money"] = "int", 
		["tech"] = "int", 
		["req"] = "string", 
		["type"] = "string", 
		["expMod"] = "int", 
		["maxLv"] = "int", 
		["reward"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceSpawnList โ€‹

public override string GetEditorListName()

cs
		["filter"] = 7
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["parent"] = "string", 
		["type"] = "string", 
		["category"] = "string[]", 
		["idCard"] = "string[]", 
		["tag"] = "string[]", 
		["filter"] = "string[]"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceStat โ€‹

public class Row : BaseRow

cs
		["detail"] = 32
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["alias"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["type"] = "string", 
		["group"] = "string", 
		["curse"] = "string", 
		["duration"] = "string", 
		["durationMax"] = "int", 
		["hexPower"] = "int", 
		["negate"] = "string[]", 
		["defenseAttb"] = "string[]", 
		["resistance"] = "string[]", 
		["gainRes"] = "int", 
		["elements"] = "string[]", 
		["nullify"] = "string[]", 
		["tag"] = "string[]", 
		["phase"] = "int[]", 
		["colors"] = "string", 
		["element"] = "string", 
		["effect"] = "string[]", 
		["strPhase_JP"] = "string[]", 
		["strPhase"] = "string[]", 
		["textPhase_JP"] = "string", 
		["textPhase"] = "string", 
		["textEnd_JP"] = "string", 
		["textEnd"] = "string", 
		["textPhase2_JP"] = "string", 
		["textPhase2"] = "string", 
		["gradient"] = "string", 
		["invert"] = "bool", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	[NonSerialized]
	public Dictionary<string, List<Row>> groups = new Dictionary<string, List<Row>>();

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void OnInit()
	{
		foreach (Row row in rows)

SourceTactics โ€‹

public class Row : BaseRow

cs
		["detail"] = 18
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["dist"] = "int", 
		["move"] = "int", 
		["movePC"] = "int", 
		["party"] = "int", 
		["taunt"] = "int", 
		["melee"] = "int", 
		["range"] = "int", 
		["spell"] = "int", 
		["heal"] = "int", 
		["summon"] = "int", 
		["buff"] = "int", 
		["debuff"] = "int", 
		["tag"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceThing โ€‹

public override string GetSearchName(bool jp)

cs
		["detail"] = 51
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["name_JP"] = "string", 
		["unknown_JP"] = "string", 
		["unit_JP"] = "string", 
		["naming"] = "string", 
		["name"] = "string", 
		["unit"] = "string", 
		["unknown"] = "string", 
		["category"] = "string", 
		["sort"] = "int", 
		["_tileType"] = "string", 
		["_idRenderData"] = "string", 
		["tiles"] = "int[]", 
		["altTiles"] = "int[]", 
		["anime"] = "int[]", 
		["skins"] = "int[]", 
		["size"] = "int[]", 
		["colorMod"] = "int", 
		["colorType"] = "string", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["disassemble"] = "string[]", 
		["defMat"] = "string", 
		["tierGroup"] = "string", 
		["value"] = "int", 
		["LV"] = "int", 
		["chance"] = "int", 
		["quality"] = "int", 
		["HP"] = "int", 
		["weight"] = "int", 
		["electricity"] = "int", 
		["trait"] = "string[]", 
		["elements"] = "elements", 
		["range"] = "int", 
		["attackType"] = "string", 
		["offense"] = "int[]", 
		["substats"] = "int[]", 
		["defense"] = "int[]", 
		["lightData"] = "string", 
		["idExtra"] = "string", 
		["idToggleExtra"] = "string", 
		["idActorEx"] = "string", 
		["idSound"] = "string", 
		["tag"] = "string[]", 
		["workTag"] = "string", 
		["filter"] = "string[]", 
		["roomName_JP"] = "string[]", 
		["roomName"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public Dictionary<string, Row> _rows = new Dictionary<string, Row>();

	public override string[] ImportFields => new string[4] { "unit", "unknown", "roomName", "name2" };

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void BackupPref()
	{
		SourceAsset._SavePrefs("prefs_auto");

SourceThingV โ€‹

public class Row : SourceThing.Row

cs
		["detail"] = 23
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["_origin"] = "string", 
		["name_JP"] = "string", 
		["unit_JP"] = "string", 
		["name"] = "string", 
		["unit"] = "string", 
		["tiles"] = "int[]", 
		["skins"] = "int[]", 
		["parse"] = "string[]", 
		["vals"] = "string[]", 
		["trait"] = "string[]", 
		["LV"] = "int", 
		["chance"] = "int", 
		["value"] = "int", 
		["weight"] = "int", 
		["recipeKey"] = "string[]", 
		["factory"] = "string[]", 
		["components"] = "string[]", 
		["defMat"] = "string", 
		["category"] = "string", 
		["tag"] = "string[]", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override string[] ImportFields => new string[1] { "unit" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
		return RowMapping;
	}

	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
	public override void RestorePref()
	{
		foreach (SourceThing.Row row2 in EClass.sources.things.rows)

SourceZone โ€‹

public class Row : BaseRow

cs
		["detail"] = 23
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "string", 
		["parent"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["type"] = "string", 
		["LV"] = "int", 
		["chance"] = "int", 
		["faction"] = "string", 
		["value"] = "int", 
		["idProfile"] = "string", 
		["idFile"] = "string[]", 
		["idBiome"] = "string", 
		["idGen"] = "string", 
		["idPlaylist"] = "string", 
		["tag"] = "string[]", 
		["cost"] = "int", 
		["dev"] = "int", 
		["image"] = "string", 
		["pos"] = "int[]", 
		["questTag"] = "string[]", 
		["textFlavor_JP"] = "string", 
		["textFlavor"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override string[] ImportFields => new string[1] { "textFlavor" };

	public override Row CreateRow()

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

SourceZoneAffix โ€‹

public class Row : BaseRow

cs
		["detail"] = 7
	};

	public static readonly IReadOnlyDictionary<string, string> TypeMapping = new Dictionary<string, string> 
	{ 
		["id"] = "int", 
		["zone"] = "string", 
		["name_JP"] = "string", 
		["name"] = "string", 
		["textAssign_JP"] = "string", 
		["textAssign"] = "string", 
		["detail_JP"] = "string", 
		["detail"] = "string"
	}; 
	public override Row CreateRow()
	{
		return new Row

public override IReadOnlyDictionary<string, int> GetRowMapping()

cs
	{
		return RowMapping;
	}
	public override IReadOnlyDictionary<string, string> GetTypeMapping() 
	{ 
		return TypeMapping; 
	} 
}

WidgetSearch โ€‹

public override void Search(string s)

cs
		{
			foreach (Chara chara in EMono._map.charas)
			{
				if (!chara.IsNeutralOrAbove()) 
				{ 
					continue; 
				} 
				if (chara.mimicry != null && !chara.IsPCFactionOrMinion && !EMono.debug.showExtra) 
				{ 
					if (chara.mimicry.Card.Name.ToLower().Contains(s) || chara.mimicry.Card.sourceCard.GetSearchName(jp: false).Contains(s)) 
					{ 
						newCards.Add(chara); 
					} 
				} 
				else if (chara.Name.ToLower().Contains(s) || chara.sourceCard.GetSearchName(jp: false).Contains(s)) 
				if (chara.IsNeutralOrAbove() && (chara.mimicry == null || chara.IsPCFactionOrMinion || EMono.debug.showExtra) && (chara.Name.ToLower().Contains(s) || chara.sourceCard.GetSearchName(jp: false).Contains(s))) 
				{
					newCards.Add(chara);
				}