Elin:解析/未分類: Difference between revisions

(乳を飲ませたときの挙動の段落を追加。私の理解が間違っている可能性もあります。)
m (他ページに記載があるものは削除。井戸水を飲んだ時のイベントの項を追加)
 
(4 intermediate revisions by 3 users not shown)
Line 7: Line 7:
編集者の方へ: 追加された各セクションについて、テストされたゲームのバージョンを明記してください。
編集者の方へ: 追加された各セクションについて、テストされたゲームのバージョンを明記してください。


== 素材表 解析値バージョン(EA23.58 Nightly) ==
素材が装備品の各パラメータに与える補正値を、ランキング形式ではなく解析値で記載した表です。


[[Elin:素材|'''素材''']]ページの表と重複する一部のパラメータは省いています。
==乳を飲ませたときの挙動(EA23.78 Nightly Patch 1)==
{{sticky header}}
参照元:TraitDrinkMilkMother.cs
{| class="wikitable sortable sticky-header" style="width: 60%;"
 
概要的な説明としては、乳を飲ませた時のステータス上昇量の式が''「乳親のベースステータス」 * 赤ちゃんの基本潜在 / (100 + 50 * ((乳親の中で何番目に高い数値''<ref>同値ならIDが大きい順、スキルを持っていないなどはカウントが上昇しない</ref> ''- 1) ) / 2'' である。
 
乳親のベースステータスは、まず乳親の種族、職業を記録し、そして乳のレベルに応じてレベルアップさせる。そのレベルは''(5 + 5 x 乳の+値)'' 。
 
そしてレベルアップで上がるステータスの計算式は''class/race attribute/skill scaling * (100 + (Level - 1 + [RNG ((Level / 2 + 1) -1) ]) * character's lvFactor / 10) / 100 + [RNG between 0 and ((Level / 3) -1) ] * character's lvFactor / 100であり、''
 
これには乱数(RNG)が含まれており、しかもかなり変動するため、通常は正確なステータスを計算することは非常に困難である。
 
ただし、乳内部の「乳親のベースステータス」は乱数が強制的に1になるために一定であり、同じ+の乳なら同じステータスになる。
 
<references />
==井戸水を飲んだ時のイベント (EA23.67)==
{{バージョン|23.67}}
<syntaxhighlight lang="c#" line="1">
public override void TrySetAct(ActPlan p)
{
p.TrySetAct("actDrink", delegate
{
if (Charges <= 0)
{
EClass.pc.Say("drinkWell_empty", EClass.pc, owner);
return false;
}
EClass.pc.Say("drinkWell", EClass.pc, owner);
EClass.pc.PlaySound("drink");
EClass.pc.PlayAnime(AnimeID.Shiver);
if (IsHoly || EClass.rnd(5) == 0)
{
ActEffect.Proc(EffectId.ModPotential, EClass.pc, null, (!polluted && (IsHoly || EClass.rnd(2) == 0)) ? 100 : (-100));
}
else if (EClass.rnd(5) == 0)
{
BadEffect(EClass.pc);
}
else if (EClass.rnd(4) == 0)
{
ActEffect.Proc(EffectId.Mutation, EClass.pc);
}
else if (EClass.rnd(EClass.debug.enable ? 2 : 10) == 0 && !polluted && !EClass.player.wellWished)
{
if (EClass.player.CountKeyItem("well_wish") > 0)
{
EClass.player.ModKeyItem("well_wish", -1);
ActEffect.Proc(EffectId.Wish, EClass.pc, null, 10 + EClass.player.CountKeyItem("well_enhance") * 10);
EClass.player.wellWished = true;
}
else
{
Msg.SayNothingHappen();
}
}
else if (polluted)
{
EClass.pc.Say("drinkWater_dirty");
BadEffect(EClass.pc);
}
else
{
EClass.pc.Say("drinkWater_clear");
}
ModCharges(-1);
return true;
}, owner);
}
</syntaxhighlight>
 
* このコードは、井戸の水を飲むと何が起こるかを説明しています。
* これらの効果は段階的に適用されます。
* 5分の1の確率で、主能力の潜在が50%上昇または50%低下します。
** 聖なる井戸の場合、これが強制的に発動し、100%上昇します。
* 次に、さらに1/5の確率で、PCに悪影響が適用されます。その影響は、盲目、麻痺、睡眠、中毒、気絶、病気、混乱のうちいずれか1つが等しい確率で発生します。
* 次に、さらに1/4の確率で、PCに変異が発生します。
* さらに1/10の確率で、PCが今年まだ願い事をしておらず、井戸が汚染されていない場合、願いが叶う。
** デバッグモードの場合、この確率は1/2に増加する。
** 願いの強度は、「10 + 10 * 黒猫のよだれの数」を掛けたものとなる。
* その後、通常の効果が発生する。
** 井戸が汚染されている場合、PCにデバフがかかる。
** 井戸が汚染されていない場合、PCは本物の水を飲んだのと同じ状態になる。
 
* 聖なる井戸ではなく、汚染されていない普通の井戸の全体的な確率:
** 10% 主能力の潜在能力上昇
** 10% 主能力の潜在能力低下
** 16% 7種類のPCへの状態異常のうちの1つ
** 16% PCへのランダムな突然変異
** '''4.8% 願い'''(PCが要件を満たす場合)
** 43.2% 普通の水。
 
==養蜂 (EA23.84)==
<syntaxhighlight lang="c#" line="1">
int soilCost = EClass._zone.GetSoilCost();
int num = Mathf.Min(100, 70 + (MaxSoil - soilCost));
int flower = 5;
int lv = 1;
EClass._map.bounds.ForeachCell(delegate(Cell cell)
{
if (cell.obj != 0 && cell.sourceObj.tag.Contains("flower"))
{
PlantData plantData = cell.TryGetPlant();
if (plantData != null && plantData.seed != null)
{
lv += plantData.seed.encLV + 1;
}
else
{
lv++;
}
flower++;
}
});
lv /= flower;
int num2 = 0;
foreach (Thing thing7 in EClass._map.things)
{
if (thing7.IsInstalled && thing7.trait is TraitBeekeep && !thing7.things.IsFull())
{
flower -= 3 + EClass.rnd(5 + num2 * 4);
num2++;
if (flower < 0)
{
break;
}
if (EClass.rnd(100) <= num)
{
Thing thing3 = ThingGen.Create("honey");
thing3.SetEncLv(lv / 10);
thing3.elements.SetBase(2, EClass.curve(lv, 50, 10, 80));
thing7.AddThing(thing3);
}
}
}
</syntaxhighlight>
 
*生産されるハチの巣の+値は、マップ上境界内に存在する全ての花の+値の平均によって決定される。(小数点以下切り捨て)。
 
ハチの巣の+値 = ((マップ上の花の+値合計 + マップ上の花の数) / (マップ上の花の数 + 5)) / 10
 
*ハチの巣の生産数は、マップ上境界内に存在する全ての花の数に依存し、肥沃度の余りによって減衰され、乱数によって生産数が上下する。
*肥沃度の余りによる減衰は+29で0%の減衰、-71で100%の減衰となり生産されなくなる。
*1度の生産処理で養蜂箱に生成されるハチの巣は1個のみ。本来の生産数に対して養蜂箱が足りなかった場合、足りていない分は生産されない。
 
 
下記の表は肥沃度の余りが29(100%の生産)かつ養蜂箱が十分にある場合の花の数に応じたハチの巣の生産数である。
{| class="wikitable"
|+ハチの巣の生産数
!
! colspan="3" |ハチの巣生産数
|-
|-
!素材
!花の数
!品質
!最小
!DV
!中央値
!PV
!最大
!面数
!命中
!ダメージ
|-
|-
|紙
|7
|12
|0
|0
|100
|15
| -10
|-
|ゼリー
|10
|5
|7
|100
|12
| -2
|-
| 生もの
|10
| -5
| -5
|100
| -5
| -5
|-
| 草
|2
|4
| 2
|100
| 2
| -2
|-
|藁
|5
|8
|1
|100
| -1
| -1
|-
|麻
| 6
|7
|14
|100
|1
| 1
|-
|綿
|8
|9
|0
|0
|100
|0.61
|2
|1
|1
|-
|-
|シルク
|17
|12
|2
|100
|6
| -2
|-
|蜘蛛糸
|26
|22
|14
| 100
| 7
|3
|-
|砂
|1
| -5
| -5
|100
| -5
| -5
|-
| 鱗
|11
|12
|11
|120
|14
|6
|-
|革
|22
|13
|6
|100
|12
|2
|-
|ウール
|25
|16
|12
|100
|3
|3
|-
|カシミア
|28
|15
|18
|100
|2
|1
|-
|ザイロン
|30
|21
|16
|100
|5
|5
|4
|-
|ミカ
|12
|12
|0
|0
|100
|1.33
|10
| -2
|-
|珊瑚
|18
|10
|7
|120
|7
|2
|-
|霊布
|45
|34
|6
|100
|3
|3
|2
|-
|-
|宵晒
|46
|35
|15
|100
|10
|10
|8
|-
|プラスチック
|11
|16
|4
|100
|12
|1
|1
|-
|2.02
|骨
|8
|7
|6
|130
|10
|4
|-
|翼鳥鱗
|42
|32
|24
|150
|16
|17
|-
|竜鱗
|44
|29
|24
|160
|25
|24
|-
|珪砂
|12
|17
|0
|100
|19
|0
|-
|グラナイト
|6
|2
|10
|125
|4
|8
|-
|オーク
|10
|3
|6
|100
|2
|3
|-
|水晶
|25
|16
|19
|150
|19
|14
|-
|金
|34
|14
|22
|140
|13
|18
|-
|銀
|16
|4
|11
|130
|6
|7
|-
|真珠
|29
|18
|12
|140
|18
|6
|-
|銅
|7
|4
|4
|5
|110
|6
|5
|-
|-
|青銅
|12
|1
|5
|100
|2
|5
|-
|白金
|28
|14
|17
|140
|16
|11
|-
|鉄
|14
|3
|14
|135
|8
|8
|-
|黒曜石
|16
|13
|14
|140
|16
|10
|-
|鋼
|21
|8
|18
|140
|12
|13
|-
|アメジスト
|38
|10
|18
|200
|14
|26
|-
|エメラルド
|38
|18
|28
|190
|22
|23
|-
|クロム
|30
|12
|22
|150
|15
|15
|17
|-
|タイタニアム
|40
|19
|35
|180
|21
|18
|-
|ミスリル
|38
|25
|17
|190
|20
|18
|-
|ダイヤ
|48
|13
|31
|220
|19
|27
|-
|ルビナス
|46
|31
|24
|190
|38
|18
|-
|アダマンタイト
|42
|8
|42
|240
|11
|38
|-
|エーテル
|48
|35
|8
|250
|8
|45
|-
|淡水
|1
|0
|0
|100
|0
|0
|-
|海水
|1
|0
|0
|100
|0
|0
|-
|南の島の水
|1
|0
|0
|100
|0
|0
|-
|水
|1
|0
|0
|100
|0
|0
|-
|加工物
|10
|0
|0
|100
|0
|0
|-
|灰
|1
|0
|0
|100
|0
|0
|-
|青い土
|1
|0
|0
|100
|0
|0
|-
|深い草
|1
|0
|0
|100
|0
|0
|-
|深土
|1
|1
|0
|2.50
|0
|100
|0
|0
|-
|森の草
|1
|0
|0
|100
|0
|0
|-
|森の土
|1
|0
|0
|100
|0
|0
|-
|温泉水
|1
|0
|0
|100
|0
|0
|-
|薄い色の土
|1
|0
|0
|100
|0
|0
|-
|明るい土
|1
|0
|0
|100
|0
|0
|-
|泥
|1
|0
|0
|100
|0
|0
|-
|神秘的な土
|1
|0
|0
|100
|0
|0
|-
|赤土
|1
|0
|0
|100
|0
|0
|-
|雪
|1
|0
|0
|100
|0
|0
|-
|土
|1
|0
|0
|100
|0
|0
|-
|黄色い土
|1
|0
|0
|100
|0
|0
|-
|神秘的な草
|3
|0
|0
|100
|0
|0
|-
|海砂
|1
| -5
| -5
|100
| -5
| -5
|-
|白砂
|1
| -5
| -5
|100
| -5
| -5
|-
|フィライト
|8
|4
|7
|110
|8
|6
|-
|氷
|5
|0
|0
|110
|0
|0
|-
|炭
|6
|3
|6
|100
|2
|3
|-
|樺
|10
|3
|6
|100
|2
|3
|-
|杉
|10
|3
|6
|100
|2
|3
|-
|モミ
|10
|3
|6
|100
|2
|3
|-
|パルル
|10
|3
|6
|6
|100
|2
|3
|-
|-
|パイン
|10
|3
|6
|100
|2
|3
|-
|ポプラ
|10
|3
|6
|100
|2
|3
|-
|柳
|12
|3
|6
|100
|2
|3
|-
|竹
|16
|3
|6
|100
|2
|3
|-
|桜
|20
|20
|3
|6
|100
|2
|2
|3
|3.00
|-
|シルト
|12
|7
|7
|110
|8
|8
|6
|-
|-
|アカシア
|25
|10
|3
|6
|100
|2
|2
|3
|3.46
|-
|マホガニー
|10
|10
|3
|6
|100
|2
|3
|-
|-
|ライムストーン
|30
|6
|1
|11
|100
|6
|9
|-
|ローズウッド
|10
|3
|6
|100
|2
|2
|3
|3.85
|-
|スレート
|11
|11
|6
|9
|120
|6
|8
|-
|-
|大理石
|35
|16
|6
|10
|120
|6
|8
|-
|ラピス
|12
|3
|3
|8
|4.25
|120
|4
|8
|-
|ダイオライト
|13
|13
|4
|9
|125
|5
|9
|-
|-
|オニキス
|40
|8
|1
|12
|130
|0
|11
|-
|バサルト
|11
|2
|11
|130
|3
|3
|11
|4.62
|-
|オパール
|29
|16
|16
|130
|14
|9
|-
|コバルト
|12
|2
|10
|120
|4
|8
|-
|翡翠
|18
|2
|10
|125
|4
|8
|-
|ターコイズ
|28
|14
|14
|130
|13
|12
|-
|トパーズ
|28
|16
|15
|15
|135
|14
|13
|-
|-
|アクアマリン
|45
|36
|3
|4.97
|16
|16
|25
|180
|20
|18
|-
|-
|サファイア
|50
|38
|3
|16
| 5.30
|25
|180
|20
|18
|18
|-
|-
|メテオライト
|55
|40
|4
|24
|5.61
|38
|230
|20
|20
|31
|-
|-
|ダークマター
|60
|1
|4
|0
|5.93
|0
|21
|100
|0
|0
|}
|}
==陰陽師:霊符(EA23.54)==
<syntaxhighlight lang="c#" line="1">
    case MixType.Talisman:
{
int num2 = EClass.pc.Evalue(1418);
Thing thing4 = ai.ings[1];
SourceElement.Row source2 = (thing4.trait as TraitSpellbook).source;
int num3 = thing4.c_charges * source2.charge * (100 + num2 * 50) / 500 + 1;
int num4 = 100;
Thing thing5 = ThingGen.Create("talisman").SetNum(num3);
thing5.refVal = source2.id;
thing5.encLV = num4 * (100 + num2 * 10) / 100;
thing.ammoData = thing5;
thing.c_ammo = num3;
EClass.pc.Say("talisman", thing, thing5);
thing4.Destroy();
break;
}
</syntaxhighlight>
*剣術の特性「霊符の知識2」は、作成した霊符の効果にプラスの影響を与える。具体的には
** 陰陽師が作成するチャージの数は、'''(魔法書の回数 × 読んだ時に得られる魔法のストック数 × 2 / 5) + 1''' となる。 通常のPCの場合、チャージ数は'''(魔法書の回数 × 読んだ時に得られる魔法のストック数 × / 5) + 1''' となります。
*** 例えば、1回読むごとに10チャージされる魔法書が3冊残っている場合、陰陽師による霊符チャージ数は13、通常のPCによる霊符チャージ数は7となる。
** 陰陽師の霊符レベルは120に固定され、通常のPCの霊符レベルは100に固定される。
== 乳を飲ませたときの挙動(EA23.78 Nightly Patch 1) ==
参照元:TraitDrinkMilkMother.cs
概要的な説明としては、乳を飲ませた時の式が''「乳親のベースステータス」 * 赤ちゃんの基本潜在 / (100 + 50 * ((乳親の中で何番目に高い数値''<ref>同値ならIDが大きい順、スキルを持っていないなどはカウントが上昇しない</ref> ''- 1) ) / 2'' である。
乳親のベースステータスは、まず乳親の種族、職業を記録し、そして乳のレベルに応じてレベルアップさせる。そのレベルは''(5 + 5 x 乳の+値)'' 。
そしてレベルアップで上がるステータスの計算式は''class/race attribute/skill scaling * (100 + (Level - 1 + [RNG ((Level / 2 + 1) -1) ]) * character's lvFactor / 10) / 100 + [RNG between 0 and ((Level / 3) -1) ] * character's lvFactor / 100であり、''
これには乱数(RNG)が含まれており、しかもかなり変動するため、通常は正確なステータスを計算することは非常に困難である。
ただし、乳内部の「乳親のベースステータス」は乱数が強制的に1になるために一定であり、同じ+の乳なら同じステータスになる。
[[Category:JA]]
[[Category:JA]]
[[Category:Elin Spoiler]]
[[Category:Elin Spoiler]]
{{DEFAULTSORT:カイセキ,ミブンルイ}}
{{DEFAULTSORT:カイセキ,ミブンルイ}}

Latest revision as of 08:34, 23 February 2025


このページは、今のところ他のページに分類されていない解析を情報を特集するための一時置き場です。

このページの内容は他ページに随時移動していく予定ですので、 wikiの記事をこのページにリンクすることはご遠慮ください。

編集者の方へ: 追加された各セクションについて、テストされたゲームのバージョンを明記してください。


乳を飲ませたときの挙動(EA23.78 Nightly Patch 1)

参照元:TraitDrinkMilkMother.cs

概要的な説明としては、乳を飲ませた時のステータス上昇量の式が「乳親のベースステータス」 * 赤ちゃんの基本潜在 / (100 + 50 * ((乳親の中で何番目に高い数値[1] - 1) ) / 2 である。

乳親のベースステータスは、まず乳親の種族、職業を記録し、そして乳のレベルに応じてレベルアップさせる。そのレベルは(5 + 5 x 乳の+値)

そしてレベルアップで上がるステータスの計算式はclass/race attribute/skill scaling * (100 + (Level - 1 + [RNG ((Level / 2 + 1) -1) ]) * character's lvFactor / 10) / 100 + [RNG between 0 and ((Level / 3) -1) ] * character's lvFactor / 100であり、

これには乱数(RNG)が含まれており、しかもかなり変動するため、通常は正確なステータスを計算することは非常に困難である。

ただし、乳内部の「乳親のベースステータス」は乱数が強制的に1になるために一定であり、同じ+の乳なら同じステータスになる。

  1. 同値ならIDが大きい順、スキルを持っていないなどはカウントが上昇しない

井戸水を飲んだ時のイベント (EA23.67)

バージョン EA23.67: この記事は、Elin最新の安定版リリースに、少なくとも20のマイナーバージョンが遅れています。ページの更新をお願いします。
public override void TrySetAct(ActPlan p)
	{
		p.TrySetAct("actDrink", delegate
		{
			if (Charges <= 0)
			{
				EClass.pc.Say("drinkWell_empty", EClass.pc, owner);
				return false;
			}
			EClass.pc.Say("drinkWell", EClass.pc, owner);
			EClass.pc.PlaySound("drink");
			EClass.pc.PlayAnime(AnimeID.Shiver);
			if (IsHoly || EClass.rnd(5) == 0)
			{
				ActEffect.Proc(EffectId.ModPotential, EClass.pc, null, (!polluted && (IsHoly || EClass.rnd(2) == 0)) ? 100 : (-100));
			}
			else if (EClass.rnd(5) == 0)
			{
				BadEffect(EClass.pc);
			}
			else if (EClass.rnd(4) == 0)
			{
				ActEffect.Proc(EffectId.Mutation, EClass.pc);
			}
			else if (EClass.rnd(EClass.debug.enable ? 2 : 10) == 0 && !polluted && !EClass.player.wellWished)
			{
				if (EClass.player.CountKeyItem("well_wish") > 0)
				{
					EClass.player.ModKeyItem("well_wish", -1);
					ActEffect.Proc(EffectId.Wish, EClass.pc, null, 10 + EClass.player.CountKeyItem("well_enhance") * 10);
					EClass.player.wellWished = true;
				}
				else
				{
					Msg.SayNothingHappen();
				}
			}
			else if (polluted)
			{
				EClass.pc.Say("drinkWater_dirty");
				BadEffect(EClass.pc);
			}
			else
			{
				EClass.pc.Say("drinkWater_clear");
			}
			ModCharges(-1);
			return true;
		}, owner);
	}
  • このコードは、井戸の水を飲むと何が起こるかを説明しています。
  • これらの効果は段階的に適用されます。
  • 5分の1の確率で、主能力の潜在が50%上昇または50%低下します。
    • 聖なる井戸の場合、これが強制的に発動し、100%上昇します。
  • 次に、さらに1/5の確率で、PCに悪影響が適用されます。その影響は、盲目、麻痺、睡眠、中毒、気絶、病気、混乱のうちいずれか1つが等しい確率で発生します。
  • 次に、さらに1/4の確率で、PCに変異が発生します。
  • さらに1/10の確率で、PCが今年まだ願い事をしておらず、井戸が汚染されていない場合、願いが叶う。
    • デバッグモードの場合、この確率は1/2に増加する。
    • 願いの強度は、「10 + 10 * 黒猫のよだれの数」を掛けたものとなる。
  • その後、通常の効果が発生する。
    • 井戸が汚染されている場合、PCにデバフがかかる。
    • 井戸が汚染されていない場合、PCは本物の水を飲んだのと同じ状態になる。
  • 聖なる井戸ではなく、汚染されていない普通の井戸の全体的な確率:
    • 10% 主能力の潜在能力上昇
    • 10% 主能力の潜在能力低下
    • 16% 7種類のPCへの状態異常のうちの1つ
    • 16% PCへのランダムな突然変異
    • 4.8% 願い(PCが要件を満たす場合)
    • 43.2% 普通の水。

養蜂 (EA23.84)

int soilCost = EClass._zone.GetSoilCost();
int num = Mathf.Min(100, 70 + (MaxSoil - soilCost));
int flower = 5;
int lv = 1;
EClass._map.bounds.ForeachCell(delegate(Cell cell)
{
	if (cell.obj != 0 && cell.sourceObj.tag.Contains("flower"))
	{
		PlantData plantData = cell.TryGetPlant();
		if (plantData != null && plantData.seed != null)
		{
			lv += plantData.seed.encLV + 1;
		}
		else
		{
			lv++;
		}
		flower++;
	}
});
lv /= flower;
int num2 = 0;
foreach (Thing thing7 in EClass._map.things)
{
	if (thing7.IsInstalled && thing7.trait is TraitBeekeep && !thing7.things.IsFull())
	{
		flower -= 3 + EClass.rnd(5 + num2 * 4);
		num2++;
		if (flower < 0)
		{
			break;
		}
		if (EClass.rnd(100) <= num)
		{
			Thing thing3 = ThingGen.Create("honey");
			thing3.SetEncLv(lv / 10);
			thing3.elements.SetBase(2, EClass.curve(lv, 50, 10, 80));
			thing7.AddThing(thing3);
		}
	}
}
  • 生産されるハチの巣の+値は、マップ上境界内に存在する全ての花の+値の平均によって決定される。(小数点以下切り捨て)。
ハチの巣の+値 = ((マップ上の花の+値合計 + マップ上の花の数) / (マップ上の花の数 + 5)) / 10 
  • ハチの巣の生産数は、マップ上境界内に存在する全ての花の数に依存し、肥沃度の余りによって減衰され、乱数によって生産数が上下する。
  • 肥沃度の余りによる減衰は+29で0%の減衰、-71で100%の減衰となり生産されなくなる。
  • 1度の生産処理で養蜂箱に生成されるハチの巣は1個のみ。本来の生産数に対して養蜂箱が足りなかった場合、足りていない分は生産されない。


下記の表は肥沃度の余りが29(100%の生産)かつ養蜂箱が十分にある場合の花の数に応じたハチの巣の生産数である。

ハチの巣の生産数
ハチの巣生産数
花の数 最小 中央値 最大
0 0 0.61 1
5 0 1.33 3
10 1 2.02 4
15 1 2.50 6
20 2 3.00 8
25 2 3.46 10
30 2 3.85 11
35 3 4.25 13
40 3 4.62 15
45 3 4.97 16
50 3 5.30 18
55 4 5.61 20
60 4 5.93 21