Skip to content

EA 23.171 Nyaightly

July 23, 2025

15 files modified. 1 new file created.

Important Changes

Possible breaking changes. Click the filename to view the chunk.

Net (1)

cs
public static async UniTask<bool> UploadFile(string id, string password, string name, string title, string path, string idLang, string cat = "Home") 
public static async UniTask<bool> UploadFile(string id, string password, string name, string title, string path, string idLang, string cat = "Home", string tag = "") 

ActEffect

@@ -608,7 +608,13 @@ public static bool DamageEle(Card CC, EffectId id, int power, Element e, List<Po

cs
				chara.hp = chara.MaxHP / 2;
			}
			EClass._zone.AddCard(chara, point);
			if (!(actRef.n1 == "monster") || actRef.refThing == null) 
			if (flag) 
			{ 
				Chara chara2 = chara; 
				Hostility hostility2 = (chara.c_originalHostility = Hostility.Enemy); 
				chara2.hostility = hostility2; 
			} 
			else if (!(actRef.n1 == "monster") || actRef.refThing == null) 
			{
				chara.MakeMinion(CC);
			}

@@ -633,14 +639,14 @@ public static bool DamageEle(Card CC, EffectId id, int power, Element e, List<Po

cs
		}
		CC.Say("spell_funnel", CC, element.Name.ToLower());
		CC.PlaySound("spell_funnel");
		Chara chara2 = CharaGen.Create("bit"); 
		chara2.SetMainElement(element.source.alias, element.Value, elemental: true); 
		chara2.SetSummon(20 + power / 20 + EClass.rnd(10)); 
		chara2.SetLv(power / 15); 
		chara2.interest = 0; 
		EClass._zone.AddCard(chara2, tp.GetNearestPoint(allowBlock: false, allowChara: false)); 
		chara2.PlayEffect("teleport"); 
		chara2.MakeMinion(CC); 
		Chara chara3 = CharaGen.Create("bit"); 
		chara3.SetMainElement(element.source.alias, element.Value, elemental: true); 
		chara3.SetSummon(20 + power / 20 + EClass.rnd(10)); 
		chara3.SetLv(power / 15); 
		chara3.interest = 0; 
		EClass._zone.AddCard(chara3, tp.GetNearestPoint(allowBlock: false, allowChara: false)); 
		chara3.PlayEffect("teleport"); 
		chara3.MakeMinion(CC); 
		return;
	}
	case EffectId.Breathe:

@@ -669,11 +675,11 @@ public static bool DamageEle(Card CC, EffectId id, int power, Element e, List<Po

cs
		{
			foreach (Point item in EClass._map.ListPointsInCircle(cc.pos, 6f, mustBeWalkable: false, los: false))
			{
				foreach (Chara chara3 in item.Charas) 
				foreach (Chara chara4 in item.Charas) 
				{
					if (chara3.ResistLv(957) <= 0) 
					if (chara4.ResistLv(957) <= 0) 
					{
						chara3.AddCondition<ConParalyze>(power); 
						chara4.AddCondition<ConParalyze>(power); 
					}
				}
			}

Chara

@@ -7580,6 +7580,13 @@ public Thing MakeGene(DNA.Type? type = null)

cs
		return DNA.GenerateGene(this, type);
	}

	public Thing MakeLunch() 
	{ 
		Thing thing = ThingGen.Create("lunch_love"); 
		thing.MakeRefFrom(this); 
		return thing; 
	} 
	public Thing MakeBraineCell()
	{
		return DNA.GenerateGene(this, DNA.Type.Brain);

ContentConfigGame

@@ -33,6 +33,8 @@ public class ContentConfigGame : ContentConfig

cs

	public UIButton toggleNet;

	public UIButton toggleAdult; 
	public UIButton toggleDisableAutoStairs;

	public UIButton toggleSmoothPick;

@@ -192,6 +194,10 @@ public override void OnInstantiate()

cs
	{
		base.config.net.sendEvent = on;
	});
	toggleAdult.SetToggle(base.config.net.noAdult, delegate(bool on) 
	{ 
		base.config.net.noAdult = on; 
	}); 
	SetSlider(sliderWait, base.config.game.waiter, delegate(float a)
	{
		base.config.game.waiter = (int)a;

CoreConfig

@@ -425,6 +425,8 @@ public class NetSetting

cs
		public bool receiveRealtime;

		public bool password;
		public bool noAdult; 
	}

	[Serializable]

CoreDebug

@@ -935,6 +935,7 @@ public void UpdateInput()

cs
		Chara targetChara = EClass.scene.mouseTarget.TargetChara;
		if (targetChara != null)
		{
			EClass.pc.Pick(targetChara.MakeLunch()); 
			EClass.pc.Pick(targetChara.MakeMilk());
			EClass.pc.Pick(targetChara.MakeGene());
			EClass.pc.Pick(targetChara.MakeBraineCell());

FactionBranch

@@ -885,6 +885,10 @@ void GetOutcome(Hobby h)

cs
									else
									{
										CraftUtil.MakeDish(thing4, num4 + 10, i);
										if (thing4.id == "lunch_dystopia") 
										{ 
											flag = true; 
										} 
									}
								}
								if (flag)

LayerUploader

@@ -35,6 +35,8 @@ public class LayerUploader : ELayer

cs

	public UIButton toggleClearLocalCharas;

	public UIButton toggleAdult; 
	public int limitSec;

	public HashSet<string> invalidIds = new HashSet<string>();

@@ -67,6 +69,11 @@ public override void OnInit()

cs
		{
			ex.clearLocalCharas = on;
		});
		toggleAdult.SetToggle(ELayer._map.exportSetting.tag.HasTag("adult"), delegate(bool on) 
		{ 
			ELayer._map.exportSetting.tag = ELayer._map.exportSetting.tag.SetTag("adult", on); 
			Debug.Log(ELayer._map.exportSetting.tag + " / " + ELayer._map.exportSetting.tag.HasTag("adult")); 
		}); 
	}

	private void Update()

@@ -144,7 +151,7 @@ public void Upload()

cs
		string text2 = inputPassword.text;
		SaveID();
		ExportMap();
		Net.UploadFile(text, text2, ELayer.pc.NameBraced, ELayer._zone.Name, savePath, Lang.langCode, (ELayer._zone is Zone_Tent) ? "Tent" : "Home"); 
		Net.UploadFile(text, text2, ELayer.pc.NameBraced, ELayer._zone.Name, savePath, Lang.langCode, (ELayer._zone is Zone_Tent) ? "Tent" : "Home", ELayer._map.exportSetting.tag); 
		nextUpload = (int)Time.realtimeSinceStartup + limitSec;
	}
}

Map

@@ -723,6 +723,7 @@ public void ExportMetaData(string _path, string id, PartialMap partial = null)

cs
	{
		name = EClass._zone.Name,
		version = BaseCore.Instance.version.GetInt(),
		tag = (EClass._map.exportSetting?.tag ?? ""), 
		partial = partial
	};
	custom.id = (mapMetaData.id = id);

MapExportSetting

@@ -7,4 +7,7 @@ public class MapExportSetting

cs

	[JsonProperty]
	public string textWelcome;
	[JsonProperty] 
	public string tag = ""; 
}

MapMetaData

@@ -12,6 +12,9 @@ public class MapMetaData : EClass

cs
	[JsonProperty]
	public string type;

	[JsonProperty] 
	public string tag = ""; 
	[JsonProperty]
	public int version;

Net

@@ -39,6 +39,8 @@ public class DownloadMeta

cs

		public string cat;

		public string tag; 
		public string date;

		public int version;

@@ -100,7 +102,7 @@ public void ShowChat(string logs)

cs
		}
	}

	public static async UniTask<bool> UploadFile(string id, string password, string name, string title, string path, string idLang, string cat = "Home") 
	public static async UniTask<bool> UploadFile(string id, string password, string name, string title, string path, string idLang, string cat = "Home", string tag = "") 
	{
		if (isUploading)
		{

@@ -120,6 +122,7 @@ public static async UniTask<bool> UploadFile(string id, string password, string

cs
	wWWForm.AddField("name", name);
	wWWForm.AddField("title", title);
	wWWForm.AddField("cat", cat);
	wWWForm.AddField("tag", tag); 
	wWWForm.AddField("idLang", idLang);
	wWWForm.AddField("password", password);
	wWWForm.AddField("submit", "Send");

@@ -131,6 +134,7 @@ public static async UniTask<bool> UploadFile(string id, string password, string

cs
	Debug.Log(title);
	Debug.Log(idLang);
	Debug.Log(password);
	Debug.Log(tag); 
	Debug.Log(array.Length);
	using (UnityWebRequest www = UnityWebRequest.Post("http://ylva.php.xdomain.jp/script/uploader/uploader.php", wWWForm))
	{

@@ -224,7 +228,8 @@ public static async UniTask<List<DownloadMeta>> GetFileList(string idLang)

cs
				title = array[3],
				cat = array[5],
				date = array[6].Replace("\"", ""),
				version = ((array.Length >= 9) ? array[8].ToInt() : 0) 
				version = ((array.Length >= 9) ? array[8].ToInt() : 0), 
				tag = ((array.Length >= 10) ? array[9] : "") 
			});
		}
	}

TaskHarvest

@@ -118,6 +118,10 @@ public static TaskHarvest TryGetAct(Chara c, Point p)

cs
	bool hasDiggingTool = t != null && t.HasElement(230);
	if (t != null)
	{
		if (t.trait is TraitToolBrush) 
		{ 
			return null; 
		} 
		if (t.trait is TraitToolShears)
		{
			return null;

+TraitFoodLunchLove

File Created
cs
public class TraitFoodLunchLove : TraitFood
{
	public override bool CanSearchContent => false;

	public override bool CanStack => false;
}

TraitMoongate

@@ -63,7 +63,7 @@ public async UniTask<bool> UseMoongate()

cs
		listOrg = listOrg.Where((Net.DownloadMeta m) => m.IsValidVersion()).ToList();
		listOrg.ForeachReverse(delegate(Net.DownloadMeta m)
		{
			if (!AllowedCat.Split(',').Contains(m.cat.IsEmpty("Home"))) 
			if (!AllowedCat.Split(',').Contains(m.cat.IsEmpty("Home")) || (EClass.core.config.net.noAdult && m.tag.HasTag("adult"))) 
			{
				listOrg.Remove(m);
			}

@@ -79,7 +79,7 @@ public async UniTask<bool> UseMoongate()

cs
		{
			foreach (Net.DownloadMeta item2 in list2)
			{
				if (item2.id == item.id && item2.version == item.version) 
				if ((item2.id == item.id && item2.version == item.version) || (EClass.core.config.net.noAdult && item2.tag.HasTag("adult"))) 
				{
					list2.Remove(item2);
					break;

@@ -132,6 +132,7 @@ public void LoadMap(MapMetaData m)

cs
		return;
	}
	Debug.Log("loading:" + m.name + "/" + m.path);
	Debug.Log(m.tag); 
	Zone_User zone_User = EClass.game.spatials.Find((Zone_User z) => z.idUser == m.id);
	if (zone_User == null)
	{

TraitMoongateEx

@@ -20,6 +20,13 @@ public override bool OnUse(Chara c)

cs
public void _OnUse()
{
	List<MapMetaData> list = ListSavedUserMap();
	list.ForeachReverse(delegate(MapMetaData m) 
	{ 
		if (EClass.core.config.net.noAdult && m.tag.HasTag("adult")) 
		{ 
			list.Remove(m); 
		} 
	}); 
	if (list.Count == 0)
	{
		EClass.pc.SayNothingHappans();

TraitTicketFurniture

@@ -18,7 +18,7 @@ public Zone zone

cs

	public override void TrySetHeldAct(ActPlan p)
	{
		if (EClass._zone.GetTopZone() != zone) 
		if ((!(EClass._zone is Zone_EmbassyPalmia) || !(zone is Zone_Palmia)) && EClass._zone.GetTopZone() != zone) 
		{
			return;
		}