#General Wiki Chat

1 messages ยท Page 3 of 1

flat dust
#

Real nice

#

I wonder if you could have sped it up with console commands or something

#

Also I guess with all the decomp work, someone might eventually make tool to view the various maps in browser

#

So you could easily mark things there or take pictures from it

hallow jay
#

it was mainly just data entry that took that long

#

the finding and picture taking was the easy part imo

flat dust
#

I was gonna say that the list of medal locations could be it's own page but that would leave the small medal page empty

#

Maybe just start with it collapsed and a spoiler warning or something

hallow jay
#

I'd have to figure out how to do it

#

๐Ÿ˜›

flat dust
hallow jay
#

yes ty

#

๐Ÿ˜ซ

#

Effective time worked on that page: 12 hours

flat dust
#

It's nice though because the medal list is now effectively complete, at least information wise

hallow jay
#

Right

#

I reference that page for people all the time

#

and I get alot of questions about finding them

#

So now that theres a nice picture guide

#

I can send that link with pride

flat dust
#

"Searching the ground" does this just mean waiting?

hallow jay
stark sleet
#

That can work, but any pages merely mentioning the template will also in that special page, for example you can see my whole user page is on there (please don't delete that)

wheat folio
#

i mean this is why you have human eyes on it... but seriously you can just @ me for this stuff, the wiki is not that large and im not some mysteriously veiled wizard in my tower maneki i really dont mind

#

great work! thank you!

latent oriole
#

Why the hell someone deleted perfectly normal page with food stats and move tables in other food page. I'm okay with moving them, but new tables are useless. They don't have sorting! And previous ones had sorting. Who in their right mind can figure food stats without coping everything in excel now?!

#

And I think previous version with numbers only was better. It was easier to navigate. Now it complete mess. I don't need the descriptive words, I can easily read them in game. I need numbers!

#

Will do my own list gdocs tomorrow, I guess. Can't use food page in that state anymore.

stark sleet
#

ummm, we can add sorting real quick?

#

Would you mind tell me what table you are refering to?

latent oriole
#

Yeah, and the last one previously crops were separated into groups. Like in game. Because each dish need veg, fruit, nut or grain. Now it one big list. Lol.

latent oriole
#

They were on separate page before.

#

Now page is gone.

stark sleet
latent oriole
#

Yeah, can you navigate that mess?

stark sleet
#

Yeah... these things.

#

I understand, this page is currently under heavy construction, and I think the users haven't finished yet

latent oriole
#

Previous table was with numbers only. With sorting columns.

stark sleet
#

It is maintained and constantly updated, so you won't need to create your own google doc

latent oriole
#

If it wip, it okay. But may I ask to remove descriptive words from list? They not needed and there is already a general table on top with them.

stark sleet
latent oriole
#

In my opinion previous was perfect for it purpose. If someone go to wiki for stat in ingredient I doubt that person want to read descriptors.

stark sleet
#

Oh btw, are these tables useful in [[Elin:Cooking]]?

toxic houndBOT
stark sleet
#

Not sure if these tables are what you are refering to

#

The are probably moved from elsewhere, so...

latent oriole
#

Yeah. They exist. I thought they gone forever. ๐Ÿ˜‚

stark sleet
#

XD

latent oriole
#

It actually the old version I think.

stark sleet
#

Know they won't remove something that useful

latent oriole
#

But why they on two different pages now?

#

In different forms ever.

stark sleet
#

That I couldn't fathom as well

#

I'll at least add a sentence telling people to find sortable table at the other page

latent oriole
#

The separate page with simplified stats was the cleaner version instead of putting the list on each cooking related page.

stark sleet
#

True, true

hallow jay
#

a friend of mine and I found something really juicy

#

we havn't tested it with all the different potions from the casino but the ward monster potion only goes away after sleeping 3 times

#

so if you never sleep (because there's no drastic consequence outside of combat) you'll never lose its effect

#

and you can run around on the world map without ever really being attacked my monsters randomly

stark sleet
#

judging from the code:

public Condition SetPerfume(int duration = 3)
{
    base.isPerfume = true;
    base.value = duration;
    return this;
}
#

the base duration is 3, so if you tested as 3 sleeps, then perhaps it is

#

case CureType.Sleep:
{
for (int num2 = conditions.Count - 1; num2 >= 0; num2--)
{
Condition condition2 = conditions[num2];
if (!(condition2 is ConSleep) && !(condition2 is ConFaint))
{
if (condition2.isPerfume)
{
condition2.Mod(-1, force: true);
}
else if (condition2.Type == ConditionType.Bad || condition2.Type == ConditionType.Debuff)
{
condition2.Kill();
}
}
}

#

Yea it is, for every sleep, perfume duration is modded by -1

#

Hotspring, and the two blessing from Mifu and Nefu are also counted as perfume effect

#

Guess you want to do Lure metals then...

hallow jay
#

nice

#

lure metals infinitely would be a good strat

stark sleet
#

But there will be no sleep

#

God bless that Insanity and sleepiness is separated(

tepid coral
#

one thing real quick, on the small medals page the people shooting at me for breaking the table would suggest you do indeed get attacked, lol

hallow jay
#

yea....... we noted that as well

#

apparentl you can tele port rod a piece of furniture

tepid coral
#

ty for the photos on the page btw

#

I tried following it before and it was too much of a pain, the photos help a ton

hallow jay
#

good to know

#

we I didn't write the text yesterday

stark sleet
#

lol, so bandage do cures bleed condition for a bit

#

Ohhh nice, so cure body and cure mind each cures their corresponding conditions

#

this hasn't even come to my mind because how these spells worked in elona

flat dust
# stark sleet

That's useful to see, the spells really feel like a black box with how little information they give you

flat dust
#

Is the "death protection" or "death save" actually documented anywhere on the wiki? Didn't know about it until I saw these 3 from god pages but found no references elsewhere

Furthermore, the stamina-based fatal hit protection mechanic introduced in Elin allows fairies to survive death blows so long as they have stamina, making their play somewhat more forgiving. Nevertheless, while fairies are more kindly treated in Elin than in Elona, they should still not be up in harm's way.
With prayer now costing no piety and death protection costing stamina to activate, absorb stamina is less attractive, but it's always good to have options.
Prayer of Jure is an excellent healing option that is available to even non-caster archetypes, but since it draws from the same pool of stamina that fuels death saves, one needs to weigh the costs and benefits of using this powerful healing ability.

stark sleet
#

Let me search through the code first

robust rose
#

Is there a death save unless auto fighting?

#

Thought it was just for the permadeath oath and with autocombat

stark sleet
#

Nope, I don't think there is one

flat dust
#

I've noticed that me or allies frequently end up at what looks like 1 HP in auto combat on non perma death

robust rose
#

Yea in autocombat there is

stark sleet
#

Isn't that the automatic stop function?

robust rose
#

No

stark sleet
#

hummmm

robust rose
#

It eats stam

flat dust
#

Even if whatever just went down should have killed

robust rose
#

It's only during autocombat unless permadeath oath

stark sleet
#

well... then that's a complete different direction... search again

flat dust
#

Whoever did the god pages clearly felt it was important

stark sleet
#

if (hp < 0 && Religion.recentWrath == null)
{
if (isRestrained && IsPCFaction && EClass._zone.IsPCFaction && (!IsPC | (Chara.ai is AI_Torture && Chara.ai.IsRunning)))
{
EvadeDeath();
if (Chara.stamina.value > 0 && (EClass.rnd(2) == 0 || !IsPC))
{
Chara.stamina.Mod(-1);
}
}

#

there you go

#

wait no

#

scratch that

#

So for a fate character, you need to have more than half your stamina to evade death.

This will always trigger no matter if you are in auto combat, and I think this is known pretty well

#

if (attackSource != AttackSource.Finish && IsPCParty && Chara.host == null && EClass.pc.ai is GoalAutoCombat)
{
if (!EClass.player.invlunerable && (EClass.pc.ai as GoalAutoCombat).listHealthy.Contains(Chara))
{
EClass.core.actionsNextFrame.Add(delegate
{
Msg.Say(IsPC ? "abort_damage" : "abort_damgeAlly");
});
EClass.player.invlunerable = true;
EClass.player.TryAbortAutoCombat();
EClass.pc.stamina.Mod(-EClass.pc.stamina.max / 5);
}

stark sleet
#

So it is not just for fairies, but for all auto-combat characters, 20% stamina cost. And you have to return yourself to healthy (non-critical condition) for this to work a second time.

#

TIL moment again.

flat dust
#

man reading the decomp can be brutal

stark sleet
#

void EvadeDeath()
{
hp = 0;
if (Evalue(1421) > 0 && isChara && Chara.mana.value < 0)
{
Chara.mana.value = 0;
}
}

#

Oh and this, if you evade death by this mean, your HP is set at 0, if you are wraith, your MP is also set at 0

#

I think that answers the question

#

lol it is documented "somewhere" (in [[Elin:Combat]])

toxic houndBOT
flat dust
#

I went looking for anything "death" "protection" or "save" and got no where

stark sleet
#

I searched for stamina XD

strange mortar
#

Been rummaging through the code to find info about the Mikos' blessing and Eurika's blessing and I found this

c.c_dateStockExpire = EClass.world.date.GetRaw() + (flag6 ? 180 : 180) * 1440;
[...]
if ((c.trait is TraitMiko_Mifu || c.trait is TraitMiko_Nefu || c.trait is TraitEureka) && EClass.world.date.IsExpired(c.c_dateStockExpire))
{
Choice2("daBlessing", "_blessing");
}

So if I'm understanding this correctly the cooldown between blessings is 6 months?

stark sleet
#

It looks to be so

#

1440 = 24 hour * 60 minutes, then 180 days

flat dust
#

Surprised compiler didn't catch ? 180 : 180

stark sleet
#

that suppose to give an error?

flat dust
strange mortar
#

Nope, just redudant

#

Maybe he planned something then forgot

flat dust
#

It's like a compressed if statement

stark sleet
#

I think there was intended implementation of making the Mifu cooldown lower/higher

#

but whatever

#

now it is all 180 days(

flat dust
#
if(flag6)
  return 180;
else
  return 180;
#

Basically nothing happening, compiler often good about getting rid of them

stark sleet
#

So you are saying that the decompiled code shouldn't have this available to us...

#

hummmmmm

flat dust
#

Maybe compiler doesn't see that it does nothing or maybe the compiling settings aren't on full optimization

strange mortar
#

Welp hope it gets used sometime i guess

flat dust
#

What even is flag6?

strange mortar
#

bool flag6 = c.trait is TraitMiko_Mifu;

#

lol

#

Maybe he wanted to make one Miko cooldown lower than the other

flat dust
#

Got a link to that in the decomp?

stark sleet
flat dust
#

Also to avoid discord butchering code you can add ` 3 of these followed by "cs" then new line and put your code then end with 3 more ``

stark sleet
#

gotcha

strange mortar
#

Ah ok good to know

robust rose
#

Can also specify the language after the backticks for fancy syntax highlighting

flat dust
#

Looks like that code probably just got expanded / rewritten / repurposed and the flag6 is leftover from old

#

constantly surpressing urges to refactor when reading the decomp

#
            layer = EClass.ui.AddLayer<LayerList>().ManualList(delegate(UIList list, LayerList l)
            {
            77 lines here
            }).SetSize()
                .SetTitles("wTrain")
                .SetOnKill(SE.PopDrama);``` some of it's so criminal
strange mortar
#

If it works it works i guess

stark sleet
#

I want a pair of eyes that can automatically balance parenthesis

#

Hope Noa make this as a feat

flat dust
#

Hell even for just that part I pasted it into notepad++ so I could figure out what the hell was going on

#

highlights the other bracket for you

#

In this case I had to follow the line lol

stark sleet
#

Yeah... but I do enjoy the code searching provided by github, although I know some IDE can do things like that

flat dust
#

You can also rename variables / methods if you want to make things more readable

hallow jay
#

Do you know how to make it so the thumbnail here isn't this picture of fig 1 XD?

wheat folio
#

like the discord embed? it usually just pulls the first sequential image, I'm no discord wizard though

#

can put < > around links to prevent image embeds

hallow jay
#

ohhh is that just a discord thing

#

ahh mmkay then it doesn't matter

wheat folio
#

oh rooshi, your guide should be under your userpage, so User:Rooshi/Guidenamehere, so I'm gonna move it over there in a moment

hallow jay
#

@stark sleet Yo idk if you know this, but by any chance do you know what resists the ele damage from melee hits? Is it PV or Ele res? PDR or EDR?

stark sleet
#

So you are just talking about the physical damage from normal melee hits right?

#

PV have an effect of percentage decrease, something like 68% + 5d11

#

All other element resistance is in Evalue 950 - 972

#

within which 971 is a feat of full resistant damage

if (Evalue(971) > 0)
    {
    dmg = dmg * 100 / Mathf.Clamp(100 + Evalue(971), 25, 1000);
    }

range from 1% decrease to 90% decrease

#

So there are definitely multiple damage reduction to physical damage that can be done

hallow jay
stark sleet
#

Let me have a look, I could think of a few possibilities...

hallow jay
#

Ty โค๏ธ

stark sleet
#

I think I found something... not sure if this is the final answer

#

So for any element attack on melee weapons, the damage is first calculated, then went through PV first

#

num -= num10;
        num = TC.ApplyProtection(num) + num10 + num9;
        TC.DamageHP(num, num5, num6, (!IsRanged && !isThrow) ? 

#

after that, this damage id went through each element, and have a 25% chance to proc (independent of the value shown on the weapon)

#
foreach (Element item in list2)
            {
                if (!TC.IsAliveInCurrentZone)
                {
                    break;
                }
                if (item.source.categorySub == "eleAttack")
                {
                    int num11 = 25;
                    int dmg = EClass.rnd(num * (100 + item.Value * 10) / 500 + 5);
                    if (conWeapon == null && weapon != null && weapon.trait is TraitToolRangeCane)
                    {
                        num11 = 0;
                    }
                    if (num11 >= EClass.rnd(100))
                    {
                        TC.DamageHP(dmg, item.id, isThrow ? (100 + item.Value * 5) : (30 + item.Value), AttackSource.WeaponEnchant, CC);
                    }
                }
            }
#

the damage is calculated via the value shown on weapon though

#

but it depends on the already calculated damage after PV

hallow jay
#

so PV thwarts it?

#

or wait

#

are you saying both thwarts it :O?

stark sleet
#

so it should also go through element again

#

if (!e.source.aliasRef.IsEmpty() && attackSource != AttackSource.ManaBackfire)
            {
                dmg = Element.GetResistDamage(dmg, Evalue(e.source.aliasRef));
                dmg = dmg * 100 / (100 + Mathf.Clamp(Evalue(961) * 5, -50, 200));
            }

#

Yeah, it will go through that again

#

but on the bright side, a "50" extra lightning damage means a 25% chance of dealing 0~ 120% +5 the damage after PV

#

So here I have a [0, 3648] training dummy

#

it bearly does nothing, so PV absolutely thwarts

#

the only question is probably element resistance, but I think it should influence the damage as well as well

hallow jay
#

so, what about... using intonation?

#

would it use the same principle?

stark sleet
hallow jay
#

intonation of fire / lightning / cold / etc...

stark sleet
#

oh, the spell

hallow jay
#

sorry I should have wrote that more clearly

stark sleet
#

no, it is just I'm not playing in EN version

hallow jay
#

ahh

stark sleet
#

NOPE

#

fuck man intonation definitely go through PV

hallow jay
#

I cry

stark sleet
hallow jay
#

oh thank god

#

thats what I thought

stark sleet
#

I couldn't find the code, but at least I can test it

hallow jay
#

yea I've observed it like that

#

but I wasn't sure if it had some effect

#

I use intonation on my fairy executioner

#

I've noticed tho that intonations don't convert the ele dmg

stark sleet
#

they don't, but now these damage also ignore PV

#

these ele damages are done separately after the attack

#

So... what's the meaning of having 100% penatration again?

#

we can just... intonate it

hallow jay
#

yea lol right?

#

I was so worried on my melee build about having pen

#

then I realized... oh wait

#

intonations bypasses this

#

ig its for people without the ability to intonation alot

stark sleet
#

Yeah, now I can just use my 2d40+7 sledge hamma

hallow jay
#

gotta get that hunger for slaughter

stark sleet
#

I think you are thinking of the same thing as I do now...

#

Does earthquake...

hallow jay
#

earthquake bypasses everything

#

thats its biggest balancing issue

#

except EDR probs

stark sleet
#

I remember reading that the earth hammer triggered earthquake damage depend on your current lvl of earthquake magic

#

not sure though

hallow jay
#

oh there're so many things people have said about that weapon

#

that it scales off of your str

#

that it scales off of your tactics

#

that its static

#

etc etc

stark sleet
#

time to check then

hallow jay
#

So glad you're so fast at that ๐Ÿ˜›

#

I really should get dnspy instead of using the github repo

#

also I found this on my character sheet just now, wtf...

stark sleet
#

wait there is a living weapon enchantment??

hallow jay
#

it existed in Elona so I'd imagine its just not implemented yet

hallow jay
stark sleet
#

o.O

#

ate something funny? probably that

#

or death pen

hallow jay
#

So confused XD

#

its not a permanent thing but still

stark sleet
#

foreach (Element value2 in weapon.elements.dict.Values)
            {
                if (value2.source.categorySub == "eleConvert")
                {
                    num5 = EClass.sources.elements.alias[value2.source.aliasRef].id;
                    num6 = 50 + value2.Value * 2;
                    num7 = Mathf.Min(value2.Value, 100);
                    break;
                }
            }

#

there it is.

hallow jay
#

for intonations?

stark sleet
#

for the earth hammar

#

and also lulwy's bow etc

#

they use the eleConvert like eleConvert_impact eleConvert_lightning

hallow jay
#

wait but lulwy's bow converts damage whereas the earth hammer casts a spell

#

are you sure those are the same?

#

I'd imagine that the casting a spell feature would be different

stark sleet
#

I'm not sure if there is another eleConvert_impact that make sense

hallow jay
#

Here, look for a corollary

#

search for the ele staff's ele scar

#

maybe that'll give insight

stark sleet
#

Ahh, item menu

#

damn, you are right

#

so it is spEarthquake value 30

hallow jay
#

so it goes off of your earthquake lvl /30?

#

or its just set at 30

#

gandisplay has always displayed it as just "30" so I figured it'd be that, but I wasn't sure what that meant

stark sleet
#

When Spell power less than 400, spell power = lvl * 8 +50

#

So assume 290

#

Earthquake calculate via:

1+ power/ 30 (9) d 2+MAG/3

#

so 10d (2+MAG/3) damage? I'll need to test

hallow jay
#

so it scales off of magic o.O?

stark sleet
#

for me that should be 10d28 (I only have MAG 80)

stark sleet
hallow jay
#

I see, I wish I could go get a earth hammer

#

๐Ÿ˜

#

for testing purposes and to keep a look out

#

what's your str?

stark sleet
#

147, 138, 170,144

#

there you go, that should be about right

stark sleet
hallow jay
#

ahh so its scaling off of mag

#

cool

#

do you know what .cs file spells are located?

#

there's no documented formula for buff / debuff spells

stark sleet
#

that troubles me too, even if I search for the value for that spell, i still find nothing

#

Elin/SPELL.cs list the spell and their respective value

#

I assume all the buffs and debuff spells are directly done with buff and debuff

hallow jay
#

yea that's all I can find as well

#

cause afaik through emperical testing

#

the resisted stat listed removes either spell power or spell level down to 1

#

so for instance weakness is resisted by will

#

if something has 102321390138120321 willpower

#

and you have a lvl 100 weakness

#

it'll be reduced down to the effectiveness of at min a lvl 1 weakness

#

duration as well afaik

stark sleet
hallow jay
#

facts

stark sleet
#

May he take some rests some day

hallow jay
#

but anywhodawhatit. I've also noticed that somewhere in the game (maybe) it tells you that willpower has the chance to resist buffs being applied

#

or in OSRS terms, making it "splash"

stark sleet
#

something like conBlind, conBleed, etc.

#

maybe we can start from here

hallow jay
#
    {
        if (base.refVal2 == 266)
        {
            return 100 + (int)Mathf.Sqrt(base.power) * 2;
        }
        if (base.refVal == 79)
        {
            return (int)Mathf.Max(5f, Mathf.Sqrt(base.power) * 1.5f + 20f);
        }
        return (int)Mathf.Max(5f, Mathf.Sqrt(base.power) * 2f - 15f);```
#

@stark sleet

#

Could it be this?

#

with I think top being the "power" of the buff and the bottom being the "duration"

stark sleet
#

elements.SetBase(base.refVal, CalcValue() * ((!isDebuff) ? 1 : (-1)));

#

and if it is debuff the value calculated is set at minus

hallow jay
#

I've always wondered, idk if you know... but what is f in alot of these calcs?

stark sleet
#

Mathf?

#

oh, f

#

that is float

hallow jay
#

mathf.sqrt(base.power) * 2f - 15f

stark sleet
#

2f = 2.00

hallow jay
#

oh the float value

#

ahfdsalkfd

#

ahhh

stark sleet
#

๐Ÿ˜†

hallow jay
#

ty

#

so its a constant

#

I thought f was n declared variable somewhere

#

somehow

#

calling it from the ether

#

i'm not sure those are the formulas tho

#

Cause no way I shake it are my debuffs lasting as long as its saying

#

Are you using dnspy?

#

or ilspy?

robust rose
hallow jay
#

same then ๐Ÿ˜ฆ

#

do you use dnspy or ilspy moasseman?

robust rose
#

I have Zhentar's fork of ilspy that I used for Rimworld and everything else since, tho it's not really up to date

#

but for Elin I just use the online doc, it's generated with dnspy anyway so

#

no point inventing the wheel twice

hallow jay
#

dn spy lets you search across all .cs files I Think

#

or at least my bud pinja said something of that nature

latent oriole
#

May I ask what Each level has the effect of 2.5x Attractiveness in description of publicity on wiki mean? So publicity is 2.5 times stronger than attractiveness or it multiplies attractiveness? https://ylvapedia.wiki/wiki/Elin:Housing#Skills_&_Policies

A key part of Elin is managing My Home, a location the player sets up as a home base for housing.
Housing has several mechanics relating to land ownership, delegating tasks, raising your community, and Crafting.

hallow jay
#

So publicity probably is the thing that governs the rate of visitors visiting

#

and attractiveness is a land feature that can't be changed by any means

#

so if you put your land on say a snow biome with two attractiveness features

#

your publicity would be that much more effective

#

@latent oriole

latent oriole
#

So you think it multiplier?

#

The wording in wiki is confusing. You may also say it a weight of stat, like 2.5 attractivness equal 1 publicity.

#

People in question channel think it multiplier too. #๐Ÿ”ฐ-elin-questions-help message #๐Ÿ”ฐ-elin-questions-help message

#

Although I found a message from someone who may looked into the code and said it 2.5 atr = 1 pub. #elin-general message #๐Ÿ”ฐ-elin-questions-help message

hallow jay
#

well I guess if you put it the other way around

#

and say attractiveness is the only thing that matters

#

and publicity is just 2.5 * attractiveness

#

or rather attractiveness = attrativeness from land + 2.5 * publicity

#

tha'td make more sense

latent oriole
#

Yeah, I'm confused too. I think it multiplier too, but there is that person who pointed it the stat difference.

#

And wording in wiki not helping at all.

hallow jay
#

Tourism is a black box to me

#

idk who wrote the housing wiki page

#

but its something we need to work on

#

we're going to rename it to settlements and split it into 5 different pages

#

at least thats what was last said when it was brought up

latent oriole
#

Well, I'm not really interest in tourism also. But it should affect customers for shop, so I'm trying to find the truth. ๐Ÿ˜‚

hallow jay
#

well for one

#

the numbers notwithstanding

#

do you have a settlement built for attractiveness?

latent oriole
#

I'm planning to do it as my 6 town. So I'm thinking about forest full of caravan masters with double publicity. But get confused with all that attractivness stuff.

hallow jay
#

so why forest? for the more people?

latent oriole
#

Yeah, if 1 pub = 2.5 atr more people with publicity providing job and hobby the better.

hallow jay
#

nah I think it works like this

latent oriole
#

But if it multiplier things may be different.

latent oriole
#

Yeah, I feel like it should be like that. But did you look into the code?

hallow jay
#

I could

#

but you'd have ot give me a bit

latent oriole
#

It be great if you can. It also will clarify the thing for wiki. ๐Ÿ˜…

#

I wish we have more clear tooltips in game with at least proper description about stats and their effects. Not even saying we need full formulas.

hallow jay
#

@latent oriole

if (EClass.rnd(5) == 0 && this.policies.IsActive(2810, -1))
        {
            int num8 = 3 + this.lv + this.Evalue(2206) / 5 + this.Evalue(3702) * 2 + this.Evalue(2202) / 2;
            num8 = num8 * (100 + this.Evalue(3702) * 20 + this.Evalue(2206)) / 100;
            num8 = num8 * (100 + (int)Mathf.Sqrt((float)this.Evalue(2811)) * 3) / 100;
            if (EClass._map.CountGuest() < num8)
            {
                Chara chara;
                if (this.policies.IsActive(2822, -1) && Mathf.Sqrt((float)(this.Evalue(2822) / 2)) + 5f >= (float)EClass.rnd(100))
                {
                    chara = CharaGen.CreateWealthy(this.ContentLV);
                    EClass._zone.AddCard(chara, EClass._zone.GetSpawnPos(SpawnPosition.Random, 100) ?? EClass._map.GetRandomSurface(false, true, false));
                }
                else
                {
                    chara = EClass._zone.SpawnMob(null, SpawnSetting.HomeGuest(this.ContentLV));
                }
                if (chara != null && (chara.id == "nun_mother" || chara.id == "prostitute") && this.policies.IsActive(2710, -1))
                {
                    chara.Destroy();
                    chara = null;
                }
                if (chara != null)
                {
                    this.statistics.visitor++;
                    chara.memberType = FactionMemberType.Guest;
                    chara.SetInt(34, EClass.world.date.GetRaw(0));
                    chara.c_allowance = chara.LV * 100;
                    if (chara.IsWealthy)
                    {
                        chara.c_allowance *= 10;
                    }
                    if (date.IsRealTime)
                    {
                        Msg.Say("guestArrive", chara.Name, null, null, null);
                    }
                    else
                    {
                        chara.TryAssignBed();
                    }
                }
            }
        }
#

so lets parse this

#

So there's a 80% chance if open for business is active, then
num8 = 3 + (I'm guessing land lvl) + (attractiveness / 5) + (If ancient ruin value is active then, it * 2) + publicity / 2
num8 = num8 (from above) * (100 + ancient ruin * 20 + attractiveness) / 100
num8 = num8 (from above) * (100 + integer of the sqrt((of a float of tourist safety) * 3) / 100)

Then if Celeb heaven is on AND the sqrt(Celeb heaven / 2) + 5 is greater than or equal to a random number from 1-100
THEN

wealthy visitors are generated (based on something called content lvl (which may be danger lvl))
add the random visitors somewhere random

Then the next lines check to say if its a mother and if you have the anti mother policy

Then they get an allowance of their chara lvl * 100,
and if they're wealthy its * 1000
Then it assigns them a bed

#

@latent oriole

#

it might happen per day

#

I'm guessing num8 is the number of visitors

#

so I see what it means that publicity is more important than publicity and its worth 2.5x attrativeness

#

cause 10 attractiveness would get you 2 more visitors and 10 publicity would give you 5

#

BUUUUUUUUUT thats not including the second line

#

which then adds does the first line * (100 + how many ancient ruins - like feats you have active * 20 + attractiveness)/ 100

#

so then attractiveness double dips

#

its both an additive and multiplicative factor

#

so a maxed level area with open for buisness on on a snowy tile with ancient ruin (which is really important it seems)

#

would be an 80% chance a day to get 34 + publicity / 2 * 3.25 * (100 + (sqrt(tourist safety lvl) * 3) / 100)

latent oriole
#

It a huge info! I'm really grateful for your work! It the best info one can find in discord search tbh. ๐Ÿ‘

#

I will copy your post in txt for myself. ๐Ÿ˜‚

hallow jay
#

so if you had 100 publicity and 100 tourist safety

#

it'd be 84 * 1.4 * 1.03

#

121

#

you'd get 121 visitors

#

tldr; make sure you put it on a snowy ancient ruins

#

SUPER IMPORTANT

#

*correction that number is for a beach

#

snowy is better

latent oriole
#

It interesting how important attractiveness actually. Like not much people settle in snow land, judging from discord. ๐Ÿ˜‚

#

@rain geode you may want to look at the conversation above.

hallow jay
#

oh right

#

uhhhhhhh

#

i did some thigns wrong

#

its not 121

#

it'd be ... dear lord

#

84 * 3.25 * 1.3

#

354

latent oriole
#

I guess, snowfield, basin, ancient ruin is best choice for shop. Basin for extra admin to all the needed policies.

hallow jay
#

yea that'd be a super tourism area for sure

#

if you can do me a fav and actually make one

#

when you do lmk how many visitors you're getting so I can double check

rain geode
#

wait then how come my meadow with 100 pub has worse door sales than my beach house with 25 and 10 attraction

#

they both have the same policies active

latent oriole
rain geode
#

except meadow has higher overall policy level and has demon invocation on

#

does meadow just have a nat debuff or something lol

latent oriole
#

Demon policy increase content level now btw.

hallow jay
#

uhh so meadow having demon policy mght be generating more wealthy visotors

#

since it apparently calls for the area lvl at some point for wealthy visitors

rain geode
#

shouldn't it be more profitable then?

hallow jay
#

well beach house has a higher attractiveness

#

which is weighted very highly

#

it has so many factors XD

#

does your beach have an ancient ruin?

rain geode
#

oh it double dips

#

no it's network feat+fishing spot

#

my beach has triple the sales volume meadow does

latent oriole
#

Yeah, it seems to be work great in tandem. Atr and pub I mean.

rain geode
#

hmm guess I'll try pumping my beach house pub tomorrow

#

I didn't touch it because I was scared pumping it too high would do something silly and drop its sales to meadow levels

hallow jay
#

yea attractiveness is an addative attraction / 5 and a multiplicative

#

so if your attraction is I think you said 10

#

it'd be +2 visitors and 1.1x more visitors

#

oh also does your beach have mother's turned off?

rain geode
#

none of my bases have the mothers policy on

hallow jay
#

because they'd dilute the visitors with money

#

turn that shit ooooooooon

#

according to what I found it matters alot

#

lmk if it does tho

#

cause idfk XD

rain geode
#

really? I thought it was funnier if my guests get fucked in their sleep after I drain all their money

#

I'll try turning it on for a couple months and compare the profits

hallow jay
#

well I think m other's count towards the visitor count

#

and they don't bring money afaik

#

also Idk how to add the link to this new page to this list XD
https://ylvapedia.wiki/wiki/Elin:Code_Analysis

This page does not contain information obtained through legitimate play, but rather through Elin's data analysis, debug mode, and internal file viewing.
It may contain serious spoilers or information that may detract from the enjoyment of playing the game.
Please view at your own risk and refrain from publicly discussing the contents of this pag...

stark sleet
#

Well first I'll move the page to [[Elin:Code_Analysis/Housing]]

hallow jay
#

ahh ty

stark sleet
#

[[Category:Elin Spoiler]]
[[Category:EN]]

stark sleet
#

these are the two lines of code you need to add to the bottom of the page for it to be able to add to the dynamic list

#

then need to refresh that page to make it appear

#

now for the code...

hallow jay
#

ahh right, okay ty

#

I don't have the strength to parse that into readable english

stark sleet
#

ohhh interesting...

#

Would you mind if I change the code to the version we have in the Elin decompile repo?

#

Just for people to have an online source to verify

hallow jay
#

change it however you want

#

Idm

stark sleet
#

XD

stark sleet
#

Wait, what?!

#

num7 = num7 * efficiency / (IsTaxFree ? 100 : 1000);

#

If you are not in tax free land your resident tax is reduced by 90%???

hallow jay
#

oh yea

#

i knew that

#

that coutns for anything that you get from your settlement actually

stark sleet
#

Mysilia, here comes my fuc*ing nuke!

hallow jay
#

including tourism

#

etc

latent oriole
#

Yeah... There are a few messages about how tax work here #elin-general message List with hobbies and gods #elin-general message #elin-general message.

#

I found it very helpful and easy to understand how he describe it.

stark sleet
#

there you go

#

it is pretty long...

#

You know I thought religion tax is biased against those that have a religion

#

Never thought it is those who worship the void that got taxed the most...

hallow jay
#

damn now your section looks better than my copy pasta'd section

#

XD

#

I ought fix that later

stark sleet
#

Now where is my nuke again...

#

Like seriously, 90%?! No wonder mysilia became a god damn lake in the next 30 years

#

and those goddamn worthless fake bronze gold bars

latent oriole
#

Well, that why we have 3 no tax lands...

#

3 is decent number tbh.

stark sleet
#

Yeah. 3 piece of land for the rich and visitors, the rest for supply chain and slaves...

latent oriole
#

And you can go aroung the land like ones a year to refill the shops from suppliers, so it not a huge thing.

latent oriole
#

Btw, because I will start looking for proper snow land for shop tomorrow, maybe someone know difference between normal snowfield and enchanted snowfield or how it called?

#

If the difference is even exist for now.

#

Oh, I get it. Snowfields just have some prefixes like enchanted, terrifying and so on. It seems no difference in actual "snowfield" feat.

hallow jay
#

@stark sleet Added to the page and touched up my own sections. If you don't mind taking a look at it when you get a chance.

#

also added in where hte code can be found exactly in what file and what line

#

If we can keep that up for other code analysis pages that'd be cool

robust rose
#

@hallow jay What is The income from your Inn in total is now num4 / 2 rounded down * 2 referring to?

#

this.incomeInn += EClass.rndHalf((int)num4) + EClass.rndHalf((int)num4); that?

hallow jay
#

is that wrong?

robust rose
#

rndhalf is "half + random amount of other half"

#

So rndHalf(50) would be 25 + rnd(25)

hallow jay
#

ohhhhhhhh thats much different than i thought

#

okay I can change it

#

The income is equal to: Num4 / 2 + a random number between (1 - Num4 / 2) + Num4 / 2 + a random number between (1 - Num4 / 2)

#

That make more sense? @robust rose

#

ig in that case it'd be Num4 + rnd(1 - Num4 / 2) + rnd(1 - Num4 / 2)

#

or written more plainly:
The income is equal to: Num4 + a random number between (1 - Num4 / 2) + a random number between (1 - Num4 / 2)

robust rose
#

Or written even more plainly, num4 + 2x rnd(num4/2)

hallow jay
#

those arn't the same number right?

#

it would roll it twice, right?

robust rose
#

summing 2 rndhalf is just num/2 + rnd(num/2) + num/2 + rnd(num/2)

#

num/2 + num/2 = num

hallow jay
#

yea yea, I'm following

robust rose
#

so we're left with num + rnd(num/2) + rnd(num/2)

#

and num + num = 2 * num

hallow jay
#

yes but 2 * rnd(num/2) is not equal to rnd(num/2) + rnd(num/2)

robust rose
#

But yea you're right that it won't be exact

hallow jay
#

its not as... easy to understand I guess

#

but its more correct XD

#

since it has double the randomness

#

which is actually good

#

less variance that way afaik

#

like the difference IG between 2d10 and 1d20

robust rose
#

Bell curve instead of a linear line yes

#

Less chance to roll extremes, both ways

hallow jay
#

anywhodawhatit, any other issues that might be in there?

robust rose
#

No idea, didn't read

hallow jay
#

there're some things I don't quite understand

#

oh lol

#

just saw that thing at the bottom ๐Ÿ˜›

robust rose
#

Yea I saw it and it didn't make sense so I tried to find it in the code block and couldn't

hallow jay
#

also I have NO clue what this.worth is

#

which is why its footnoted

latent oriole
#

Btw, while you guys working with housing article, maybe also clarify the description of stockpile sign? Wiki have just a little info.
Designates a room or a 3 block radius as a stockpile. Items collected in build mode are transferred to the area.
Also people don't know then and why use it. For example it exist in usual autofarming setup for some reason, but it not needed there. With shared containers both autofarming harvests and job/hobby results will go in proper containers without the sign.

#

There is even post from Noa about it doing nothing. #elin-general message Idk if something changed since then. Search on discord didn't show any changelog results.

stark sleet
#

People are probably gonna work on what they are most interested in first, and this wiki is always short on hands...

#

The pace of Noa keep updating this game also keeps a high pressue too

#

Not saying it's not great, but for other games 20 update = 20 weeks, for Noa, 20 update = a new year week

hallow jay
#

Yea I don't mind working on the wiki but often times its wiki work over playing the game

#

I try to recruit people to help with the wiki work from the voice channel tho

#

even if its to help me with a project

#

like the small medal pictures

#

That was 3-4 people working with me

latent oriole
#

No pressure guys, sorry if my previous posts sound like that. ๐Ÿ˜… I'm really appreciate your work. The thing is, it not only update pace, but the difficulty of acquiring info. For example I worked on a wiki for mod for one strategy game before, but I was able to consult with devs themselves and look at the code. I'm not a coder, but it was simple scripts in txt files, so was doable in pair with the help of devs. And here, idk if Noa have time or want to tell about some mechanics more deeply. So we have errors or even myths spreading and info in general not clear.

robust rose
#

no need to get it open yourself

latent oriole
#

As I mention, I'm not a coder and can only understand simple one. ๐Ÿ˜…

robust rose
#

Same

wheat folio
#

but uh, if you're having a really hard time understanding snippets, chatgpt does an "ok" job of walking you through code line by line and what it does or references. obviously ai hallucinations still happen, but it's less likely to hallucinate explaining what something does vs generation lol

#

especially for very simple mathematic stuff

latent oriole
#

I like that ai can help with it. But honestly I barely know what chatgpt is itself. Guess need to learn about it. ๐Ÿ˜‚

stark sleet
#

Here is something interesting

#

[[Elin:Code_Analysis/Feats#featManabond_(Bonded_with_Mana)]]

stark sleet
#

If you want to train mana capacity skill, you want to cast high cost spell at low mana, instead of going really, really deep into the minus by casting small spells

#

Because the experience gained is calculated by the mana you used, not the amount you depleted.

flat dust
#

Is the detailed information on lure / perfume function anywhere?

hallow jay
#

What do you want to know?

stark sleet
#

So what is this "chat channel" Noa is talking about in the update?

hallow jay
#

So I've noticed that lowering attributes via ether diseases makes it faster to train that skill

#

I then thought: "Well why not temp lower it and see if it does the same thing"

#

It doesn't :c

stark sleet
#

X(

hallow jay
#

just sat here for like 30 minutes while watching anime and letting a gagu beat the shit out of me

robust rose
#

Temp lower doesn't affect the base

#

ether cancer does

hallow jay
#

yea I figured that's the difference

#

just wanted to test it to see if it was indeed true

hallow jay
#

has the wiki documented how damage mitigation works?

stark sleet
#

Don't think so

#

Code analysis/Combat is way out of date

hallow jay
#

I've been looking for a while

#

Any idea where we could find the code describing the damage mitigation functionality?

#

@stark sleet

stark sleet
#

that would be the DamageHP function in Card.cs

hallow jay
#

Tyvm good sir

stark sleet
#

but I don't think this includes how PV worked

#

so probably still need Attackprocess.cs

#

no wait

#

ApplyProtection function in Card.cs is that

hallow jay
#

card.cs doesn't reference any evalues pertaining to mitigation

#

such as PV / light armor / heavy armor

#

unless it just calles it this.pv

#

-_-

#

This is surpisingly simple actually

#

dmg = dmg *100 / (100 + PV + armor skill + dex/10)

#

and theeeeeen for an example

#

num = 150 + 100 + 100/10 = 260
num 3 = num / 4 = 260 / 4 = 65
num2 = num3/10 + 1 = 6.5+1 = 7.5
sides = num3/num2 = 65/7.5 + 1 = 9.66
dmg = 100/100+260 = 1/3.6
=num4 = dice.roll(num2,sides,bonus,this) = 9d7
dmg -= num4 * mod/100
dmg = dmg - num4

#

if dmg is = 1000, then dmg / 3.6 - 9d7

#

so its both flat and multiplicative

stark sleet
#

it is a very similar system to elona

#

except the exact result is not shown in Elin

pseudo heron
#

Is it just me of the festival page broke??

#

nvm a lot of it broke not just festival page

stark sleet
#

cannot reproduce?

pseudo heron
#

ok what part gone wrong i wonder

stark sleet
#

Not sure man, skin maybe?

pseudo heron
#

what is skin in this context

stark sleet
#

Not sure, mine looks fine on all skins

pseudo heron
#

i just open the page in firefox dark mode and didn't touch anything else

stark sleet
#

Maybe internet connection? Sometimes when it is unstable something like that might happen

pseudo heron
#

hmmmmm

#

my internet is still the same

#

and whether what page is affected seem completely random

stark sleet
#

Do you have a collection of what page are affected?

#

Maybe we can find some similarities

wheat folio
#

try ctrl+f5 on affected pages too to see if maybe you have a weird broken cache

pseudo heron
stark sleet
#
            if (IsPCParty && EClass.pc.ai is GoalAutoCombat)
            {
                dmg = dmg * 100 / Mathf.Min(105 + EClass.pc.Evalue(135) / 10, 110);
            }
#

It seems like the higher the strategy skill (Evalue 135), the lower our damage goes, until 100/110?

#

This should be a bug

hallow jay
#

yea thats bizarre

#

so if you had 0 strategy, you'd be getting 100/105, then if you have higher than 50 strategy, you get 100/110?

#

wtf -_-

#

but in general auto combat reduces damage?

latent oriole
#

There were some changes. #updates-ๆ›ดๆ–ฐ message
Removed the damage penalty (5-10%) applied to enemies during auto-combat.

stark sleet
#

Yeah, now the damage penalty only apply to IsPCParty (T_T

#

hum. wait

#

Oh shit, yeah this make sense

#

it is calculated for received damage lol

#

my bad my bad

grizzled cloak
#

1Win: ะ’ัะต, ั‡ั‚ะพ ะฝัƒะถะฝะพ ะทะฝะฐั‚ัŒ ะพ ะฒะตะดัƒั‰ะตะผ ะพะฝะปะฐะนะฝ-ะบะฐะทะธะฝะพ ะ•ัะปะธ ะฒั‹ ะธั‰ะตั‚ะต ะฝะฐะดะตะถะฝัƒัŽ ะธ ัƒะฒะปะตะบะฐั‚ะตะปัŒะฝัƒัŽ ะฟะปะฐั‚ั„ะพั€ะผัƒ ะดะปั ะฐะทะฐั€ั‚ะฝั‹ั… ะธะณั€, ะฒะฐะผ ัั‚ะพะธั‚ ะพะฑั€ะฐั‚ะธั‚ัŒ ะฒะฝะธะผะฐะฝะธะต ะฝะฐ 1Win 1Win ะพั„ะธั†ะธะฐะปัŒะฝั‹ะน ัะฐะนั‚. ะญั‚ะฐ ะพะฝะปะฐะนะฝ-ะฟะปะฐั‚ั„ะพั€ะผะฐ ะทะฐ ะบะพั€ะพั‚ะบะพะต ะฒั€ะตะผั ะทะฐะฒะพะตะฒะฐะปะฐ ะฟะพะฟัƒะปัั€ะฝะพัั‚ัŒ ัั€ะตะดะธ ะธะณั€ะพะบะพะฒ ะฟะพ ะฒัะตะผัƒ ะผะธั€ัƒ. ะ’ ัั‚ะพะน ัั‚ะฐั‚ัŒะต ะผั‹ ะฟะพะดั€ะพะฑะฝะพ ั€ะฐััะผะพั‚ั€ะธะผ, ั‡ั‚ะพ ะฟั€ะตะดะปะฐะณะฐะตั‚ ัะฐะนั‚ 1Win, ะบะฐะบ ะทะฐั€ะตะณะธัั‚ั€ะธั€...

stark sleet
wheat folio
#

Thanks for the ping

#

blocked and delted

bronze lagoon
wheat folio
#

Sigh, gonna swap around the captcha tonight I guess, sudden influx of spam

hallow jay
stark sleet
#

It might not be the best idea though

#

If there is one, there will be ten, so probably at least some protection

stark sleet
hallow jay
#

so on the note of finding what hte buff / debuff spell formulas are

#

anyone have any luck finding them / have a clue what they are?

robust rose
#

They're in stats.csv iirc

#

Uno momento

hallow jay
#

๐Ÿ˜ฎ

robust rose
#

Duration is I assume power/4 + 10, buff potency to both stats is power/30 + 5

hallow jay
#

oh wait

#

is that in a spreadsheet somewhere?

robust rose
#

On my pc at least

#

I'd imagine in some google docs too but I use local copies

hallow jay
#

do you have hte info on all the buffs / debuffs?

robust rose
#

I'd imagine they all here

#

it's just stats.csv if you extract it

#

A lot of stuff about applying is in ActEffect.cs

hallow jay
#

How do you get ahold of the .csv file for stats?

robust rose
#

Source extractor mod

wheat folio
#

there's a mod on the workshop that will rip the csv's

robust rose
#

It yeets them as csv for comfy looking around

hallow jay
#

okay so do you all think that attributes effect the spells that npc's cast at all?

robust rose
#

Probably not but I've paid 0 attention nor looked it up

hallow jay
#

I'm thinking it works like this:
Spellpower is the larger one between Spell Level x 8 + 50 or Char Level x 6 + 30 it's not Player Character

#

so in this case it'd be just spellpower is the higher of (in this case the bell is lvl 56):
40 * 8 + 50 = 370
56 * 6 + 30 = 366

#

and duration is apparently according to the csv file, p/15 + 8

#

and its duration is 48 for me

#

so...

370 / 15 + 8

#

so 32..., which isn't right

#

so working backwards, its spell level should actually be. . .

48 = p / 15 + 8;
p = 40*15 = 600

#

600 = SL * 8 + 50
SL = 550 / 8 = 68.75

#

Or its character level should be...

600 = CL * 6 + 30
CL = 570 / 6 = 95

#

unless willpower is included somehow

robust rose
hallow jay
#

ahh nvm kingrebel apparently knew all about this

#

Its here

#
    {
        int num = base.Value * 8 + 50;
        if (!c.IsPC)
        {
            num = Mathf.Max(num, c.LV * 6 + 30);
            if (c.IsPCFactionOrMinion && !base.source.aliasParent.IsEmpty())
            {
                num = Mathf.Max(num, c.Evalue(base.source.aliasParent) * 4 + 30);
            }
        }
        num = EClass.curve(num, 400, 100, 75);
        if (this is Spell)
        {
            num = num * (100 + c.Evalue(411)) / 100;
        }
        return num;
    }
#

so its also att * 4 + 30

#

the higher of those three

#

and its curved down too

#

we confirmed its what I got in game as well

#

updated the code analysis page for combat accordingly

hallow jay
#

Updated the code analysis page for combat to also have the formulas for buff / debuff spells

#

although I have no idea what intonation of (element)'s power is....

#

res,(p2/40+1)*5

#

wtf is p2?

#

p^2?

#

p^(1/2)?

#

p*2?

robust rose
hallow jay
#

So its just charisma XD?

robust rose
#

Sure seems like it

hallow jay
#

let me check this out

robust rose
#

Yea ez to make sure ingame :D

hallow jay
#

yup

robust rose
#

Yep, definitely is

hallow jay
#

its charisma

#

-__

#

-_-

#

what a weird departure

#

ty for the assist

robust rose
#

Really, really don't know what the link is between cha & intonations

#

doesn't frankly make a whole lot of sense but nonetheless

hallow jay
#

yea ...

#

its a strange departure when everything else in the buff / debuff list is dependant on spellpower

#

but looking at all my intonations now, they're all over the place in terms of lvl, and they all have 23 res

#

oh so someone in voice pointed out @robust rose that its a song

#

so IG that's how it makes sense

#

The power of RIZZ compells you

robust rose
#

Do the other spells have no verbal components? Why does enchanting your weapon with an element give you resist based on Cha but doesn't affect the weapon itself?

#

Also why on earth are they not Cha spells, I woulda accepted that

#

but they're Mag spells that somehow scale heavy on Cha

hallow jay
#

yup, idk

#

strange all around

wheat folio
#

intoning is a type of vocalization/prayer in shinto

#

(<- the backer behind intonations)

#

it was meant to tie into the onmyodo theme of sword sage (onmyoji in jp)

#

alongside talismans

robust rose
#

and why not make hte Intonations Cha spells instead of Mag spells :D

stark sleet
#

intonation... I remember the first time we talked about this I didn't even realize the english version used "intonation"

#

the JP version used something more incline to "song"

wheat folio
#

if it's ng, we'll try something else

tribal trench
#

We've enabled some basic IP blocklists.

stark sleet
#

Probably need to check on the others

wheat folio
latent oriole
#

So judging from conversation above it actually good to give her cha food?

#

Or you guys researching intonation mechanic for pc? Don't fully understand. It was conversation about spells for pets before. ๐Ÿ˜…

robust rose
#

so I wouldn't go out of my way to get cha food for em

latent oriole
#

Oh, it for resists. Yeah, agree, the bits of cha they get from food already enough than.

hallow jay
#

one more thing to end this ... buff / debuff charade

#

anyone know how spellpower (presumably) vs. the willpower of enemies interacts with how likely you are to put a debuff on them?

#

I know willpower resists it, and I'm assuming spellpower is what increases your chances

robust rose
#

c.power = 100 * c.power / (100 + defenseAttribute.Value); (in Chara.cs)

#

c.power is Condition c's power, defenseAttribute.Value is, believe it or not, the value of the defenseAttribute (stats.csv has these)

hallow jay
#

so its ... spellpower vs will (for most things) like i thought XD?

#

ohhhh wait, I think this is the reduction

#

not the chance to apply

#

yea it can't be this isn't a %, it returns spellpower

#

But this is useful, ty

#

This is actually how I thought it reduced as well

robust rose
#

Yea I dunno if it affects chance to apply at all, only see power reduction

#

tho if power goes down low enough I believe it won't apply

hallow jay
#

I think it might be chara.cs 8992

#

Oh I see that's where you found that line of code

#

it should be somewhere around here

#

    // Token: 0x060015E9 RID: 5609 RVA: 0x00098090 File Offset: 0x00096290
    public void AddResistCon(Condition con)
    {
        if (con.power <= 0 || con.GainResistFactor <= 0)
        {
            return;
        }
        int id = con.id;
        if (this.resistCon == null)
        {
            this.resistCon = new Dictionary<int, int>();
        }
        if (this.resistCon.ContainsKey(id))
        {
            Dictionary<int, int> dictionary = this.resistCon;
            int key = id;
            dictionary[key] += con.power * con.GainResistFactor / 100;
            return;
        }
        this.resistCon[id] = con.power * con.GainResistFactor / 100;
    }

    // Token: 0x060015EA RID: 5610 RVA: 0x00098120 File Offset: 0x00096320
    public void ResistCon(Condition con)
    {
        if (con.power <= 0 || this.resistCon == null)
        {
            return;
        }
        int a = this.resistCon.TryGetValue(con.id, 0);
        if (1000 < EClass.rnd(a))
        {
            con.power = 0;
            return;
        }
        if (500 < EClass.rnd(a))
        {
            con.power /= 5;
            return;
        }
        if (200 < EClass.rnd(a))
        {
            con.power /= 2;
        }
    }
#

Could it be this?

#

I think... gainresistfactor is this:

grizzled cloak
#

The sections on the โ€œElin:Housingโ€ page have been made into independent pages; Moongate, Residents, Home Skills & Policies, Land Feats, and Signs & Bulletin Boards (as a utility) have been made into their own pages.
I would like to create new categories to add to these pages, but โ€œElin Housingโ€ doesn't match the meaning from the perspective of native EN users. So I would like EN users to decide on appropriate category names.

wheat folio
#

Thank you for the hard work!

robust rose
#

Should the table reflect Meadow's 3rd land feat (+5 admin points)?

#

It specifically mentions that it's an example of Meadow, and Meadow gets the extra 5 (as do all others after network and Meadow being 7)

latent oriole
#

Meadow and Hill Cave than. They both have same feat.

#

Don't know if Hill Cave start will be finished any time soon though.

robust rose
#

Yea but the text specifies Meadow

latent oriole
#

Oh yeah, I missed that. Need more coffee to function properly it seems. ๐Ÿ˜…

wheat folio
#

could remove the meadow part and just write (land feat # unlocked at this level)

#

and genericize it

robust rose
#

Ye

#

Need to fix the danger level then too

#

as it assumes Meadow distance

#

Probably easiest would be to yeet the column, the formula is presented right below it anyway

flat dust
#

Most of the obvious ones need "Player" prefixed since they could also just refer to the existing villages / settlements / locations / plots / maps

#

And big shout out to all you guys working hard to make a good wiki, it's refreshing to see in a world of fandom garbage wikis

#

And you guys getting it done real early so instead of awful results when using search engines, I imagine Elins wiki will probably hit the top the majority of the time

grizzled cloak
hallow jay
#

@wheat folio Can you put all the housing pages tree'd on the side bar?

wheat folio
#

sure thing, I'll add them in at some point tonight

hallow jay
#

โค๏ธ

hallow jay
#

True Parka Administrator found the code for debuff application

#
        case EffectId.Debuff:
        {
            CC.DoHostileAction(TC);
            bool isPowerful = TC.IsPowerful;
            string n = actRef.n1;
            int a2 = power;
            int num6 = TC.WIL * (isPowerful ? 20 : 5);
            ConHolyVeil condition = TC.GetCondition<ConHolyVeil>();
            if (condition != null)
            {
                num6 += condition.power * 5;
            }
            if (EClass.rnd(a2) < num6 / EClass.sources.stats.alias[n].hexPower && EClass.rnd(10) != 0)
            {
                TC.Say("debuff_resist", TC);
                CC.DoHostileAction(TC);
                break;
            }
            TC.AddCondition(Condition.Create(n, power, delegate(Condition con)
            {
                con.givenByPcParty = CC.IsPCParty;
                if (!actRef.aliasEle.IsEmpty())
                {
                    con.SetElement(EClass.sources.elements.alias[actRef.aliasEle].id);
                }
            }));
robust rose
#

Ye it's in ActEffect

hallow jay
#

so if I'm understanding this correctly...

Its:
a2 = spellpower
num6 = the enemy's WIL * 5 (if not an elite)
num6 = the enemy's WIL * 20 (if an elite)
If it is affected by holy veil then:
num6 = num6 + spellpower (of holy veil) * 5
else
nothing gets multiplied
THEN:
If rnd(spellpower) < num6 / hexpower AND rnd(10) != 0
(so if rnd(sp) is less than num6/hexpower, but rnd(10) rolls a 0 (so a 9.091% chance) it still goes through)

you fail to apply and its a hostile action

else

you apply it

grizzled cloak
# wheat folio sure thing, I'll add them in at some point tonight

I have created some additional pages related to housing. Please add these to the sidebar as well.
The content is empty, but I will write a detailed explanation soon.

Housing๏ผˆใƒใ‚ฆใ‚ธใƒณใ‚ฐ๏ผ‰
ใƒปResidents๏ผˆไฝไบบ๏ผ‰
ใƒปHome Skills & Policies๏ผˆใƒ›ใƒผใƒ ใ‚นใ‚ญใƒซใƒปใƒใƒชใ‚ทใƒผ๏ผ‰
ใƒปLand Feats๏ผˆๅœŸๅœฐใƒ•ใ‚ฃใƒผใƒˆ๏ผ‰
ใƒปHome Ranking๏ผˆใƒ›ใƒผใƒ ใƒฉใƒณใ‚ญใƒณใ‚ฐ๏ผ‰
ใƒปTax Revenue๏ผˆ็จŽๅŽ๏ผ‰
ใƒปTourism Value๏ผˆ่ฆณๅ…‰ไพกๅ€ค๏ผ‰
ใƒปMoongate๏ผˆใƒ ใƒผใƒณใ‚ฒใƒผใƒˆ๏ผ‰

tribal trench
#

We'll be going down for a quick reboot, bear with me.

tribal trench
latent oriole
#

I mean, everyone know who is Loytel, right? But for treasure hunt it is Slan... Who is Slan?! ๐Ÿ˜‚
Poppy, Slan, Captain's hobby

grizzled cloak
#

Good idea! I'll do it.

wheat folio
stark sleet
#

If you want to stay consistent with the Elona wiki, ใ‚ใŒๅฎถ or ็‰ฉไปถ, or use ใƒ—ใƒฌใ‚คใƒคใƒผๆ‹ ็‚น probably also work?

wheat folio
#

i used waga ie originally when setting up the wiki originally (back when we only had the tech demo), but it's not consistent with elin lol

#

mostly want to avoid the situation like where we had a couple of different words for piety floating around in jp

stark sleet
#

I think ๆ‹ ็‚น should be enough? everything else in the title are pretty short, and don't use a combination of two different words

#

ๆ‹ ็‚น also don't have too much room for different interpretation, like, talking about that it must be yours

#

But probably want to hear from others, we can always change it whenever we like

wheat folio
#

yeah, the joy of wikis is that things can always be changed owokettle

stark sleet
grizzled cloak
#

Inno's suggestion of "ๆ‹ ็‚น" would be the most appropriate Japanese translation.

wheat folio
#

I'll add it in tonight then!

hallow jay
#

I kinda want to confirm this is completely false before I go through and change all of these pages

#

but it says on the fairy page for instance at the bottom that fairies can only get the cannibalism feat from eating fairies

#

and not from other normal conventionally "human flesh" meats

buoyant canyon
#

Hmm, I can investigate tomorrow @hallow jay

hallow jay
#

I only have conjecture based on my own experiences

#

and it seems very much so false

wheat folio
#

i know a couple fairy players were eating human flesh pizza for months , but that was alpha

wheat folio
#

We're going to be testing a different kind of captcha to see if it keeps out bots, if it works we'll add more questions to it over time.

latent oriole
#

Kyrie tested fisherman village with grandmaster npcs. #elin-general message He got a lot of fish #elin-general message, but no small medals even with that strong npcs #elin-general message. Wiki article mention about jobs small medals are rare drop fisherman can get.

`Very small chance of fishing up small medals

Fishermen and tourists job `

But we think it not true. Maybe it is possible ti check in code or edit the wiki article to remove the chance of small medals until it clear?

robust rose
#

I do not know if fishermen can produce medals via the work, but when they're actively fishing (when you're around) they should have a 1/3200 - 1/800 chance (based on fishing lvl)) of pulling up a medal (The check for "rare" table is "if player OR rnd(20)==0")

latent oriole
#

Well, it about actuall fishing, the phisical one. But the article is about jobs and hobbies, right?

robust rose
#

No clue

latent oriole
#

I know npc can fish everything physically. Remember snow putit fishing farms? However it have nothing to do with their production from jobs.

robust rose
#

No, the hobby of fishing can only produce Fish category stuff it seems

latent oriole
#

If article mean the physical fishing it should clarify it. And tbh the job and hobbies article is not the place to mention physical fishing.

#

So article is wrong that part need to be gone.

Very small chance of fishing up small medals

robust rose
#

Wait, medal is fish?

latent oriole
#

What?! juaAAH

robust rose
#

Nvm this can't be what it refers to since it says lucky coins and adventurer license are also fish, so it's probably some completely different thing

latent oriole
#

Oh... Everything is fish. ๐Ÿ˜‚

stark sleet
#

If small medals are fish, why can't I make bonito wine with them ๐Ÿ˜ฆ

latent oriole
#

@hallow jay finally tested snow, ancient ruin visitors. It took time because I did it in my normal game. So here are some numbers:
28 tourist protection -- 141 publicity -- 146 visitors (nocturnal life)
29 tourist protection -- 141 publicity -- 134 visitors (nocturnal life)
29 tourist protection -- 141 publicity -- 149 visitors (nocturnal life)
30 tourist protection -- 141 publicity -- 132 visitors (no nocturnal life)
I tested last month without nocturnal life and honestly didn't feel any difference. Not even sure if it affect visitors.

#

Will play without nocturnal life a few more months tomorrow.

hallow jay
#

I'm not asserting it effects visitors, but instead generates more profit

#

also then that means its most likely 20 not 200

#

so the lower one

#

eitherwise your visitors would be up in the 300+ range

latent oriole
#

But my tourist protection is low compare to publicity, don't it have effect? In your example it were 100 for both.

hallow jay
#

tourist protection iirc is much less important

#

and your publicity is much higher

latent oriole
#

I see... Yeah, but it surprisingly close to your 144 visitors from the example. ๐Ÿ˜…

#

So my 41 extra publicity is like 70 tourism protection? imothonk

hallow jay
#

possibly

latent oriole
#

Ok, thanks. I will try another test. Will load my shop with berries only and look at the sales with and without nocturnal life then. It should be done tomorrow or in two days. Initial setup of the town and everyday tasks in game took the majority of my time.

#

Because my current sales are based on assorted stuff including furniture and stolen goods, so it fluctuate a lot.

hallow jay
#

how much are you making?

latent oriole
#

I looked at screens and it range of 90k-235k. On average it 120k-130k with nocturnal life. Although some of the screen are from time I have less publicity, so I think I will try to test it properly tomorrow in equal setting.

#

I also on and off premium store, depends on the backlog of goods, so numbers are inconsistent. ๐Ÿ˜…

#

It was the maximum. Don't remember the goods I load in shop in that time. Maybe it was furniture from carpentry training.

stark sleet
#

I'm pretty heavy on good backlogs, and the income is usually pretty consistent

#

not sure what you guys are testing though, I'll try to help after a few days when I finish my work on hand ๐Ÿ˜ฆ

latent oriole
#

Oh it part of #1249592549681791017 message.
From code analysis in wiki:
A number of visitors will arrive. This number is: [3 + Land lvl + Your Land's Attractiveness / 5 + Publicity / 2 + 20^] * ((100 + Your Land's Attractiveness + 200^^) / 100) * (100 + sqrt(Tourist Safety lvl * 3) / 100) ^^Currently unsure if this is 200 or 20

#

So from my tests it look like it 20.

#

And now I'm looking if nocturnal life will increase shop sales. At least I'm trying. ๐Ÿ˜…

#

Also I need to mention, I really like snow, ancient ruin land. It have great potential. The 1.35 multiplier to all visitors number is huge and publicity gain from exploration job/hobby is uncapped, so it will be better and better. Think about making second one after the test and separating restaurant and general store + furniture + fence license. And activating inn in restaurant one.

buoyant canyon
#
    bool flag2 = IsHumanFlesh(food);
    bool flag3 = IsUndeadFlesh(food);
    bool flag4 = c.HasElement(1205);
    bool flag5 = food.IsDecayed || flag3;
...
    if (flag2)
    {
        if (!flag4)
        {
            if (c.IsHuman)
            {
                c.AddCondition<ConInsane>(200);
                c.SAN.Mod(15);
            }
            if (EClass.rnd(c.IsHuman ? 5 : 20) == 0)
            {
                c.SetFeat(1205, 1, msg: true);
                flag4 = true;
            }
        }
        if (flag4)
        {
            c.SetInt(31, EClass.world.date.GetRaw() + 10080);
        }
    }
#

Faires don't have a "Human" tag, therfore they only gain cannibalism with a 5% chance instead of a 20% chance

#

Also it seems like the thing that decides if you'll be a cannibal or not on your next meal is how long it took between said meals

#

I couldn't find any other reference to this

hallow jay
#

so fairies can get cannibalism from eating fairies but at a lower rate than eating meat with a human tag?

buoyant canyon
#

No, no

#

Races with the human tag are more likely to take up cannibalism

#

I am not certain what determines if the food is considered human flesh or not

hallow jay
#

Well I'm claiming that the assertion on the fairy page is wrong

buoyant canyon
#
public static bool IsHumanFlesh(Thing food)
{
    if (food.HasTag(CTAG.notHumanMeat))
    {
        return false;
    }
    if (food.id == "deadbody")
    {
        return true;
    }
    if (food.source._origin != "meat" && food.source._origin != "dish")
    {
        return false;
    }
    string[] components = food.source.components;
    for (int i = 0; i < components.Length; i++)
    {
        if (components[i].Contains("egg"))
        {
            return false;
        }
    }
    if (!IsHumanFlesh(food.refCard))
    {
        return IsHumanFlesh(food.refCard2);
    }
    return true;
}

hallow jay
#

Fairies are not humans, so eating human flesh does not increase their insanity or risk gaining the cannibalism feat. However, eating fairy corpses does count as cannibalism for them.

buoyant canyon
#

According to code, yes, Faires can be cannibals

hallow jay
#

this statement is wrong

buoyant canyon
#

It is possible it's outdated

hallow jay
#

true

#

I know from my own experience that fairies can eat other humans and get the cannibalism feat

#

I'm not sure if fairies can eat fairies and gain cannibalism

#

that's where I'm not sure

buoyant canyon
#

oh, from what I see, that may not be possible

#

There are two functions for IsHumanFlesh~

#

One takes a Thing, one takes a Card

#
public static bool IsHumanFlesh(CardRow r)
{
    if (r == null)
    {
        return false;
    }
    if (r.id == "chara")
    {
        return EClass.pc.race.tag.Contains("human");
    }
    if (r.isChara)
    {
        return EClass.sources.races.map[EClass.sources.charas.map[r.id].race].tag.Contains("human");
    }
    return false;
}
#

if the eaten card has an id of chara, then we check if the player character is a human...

#

Oh

#

It's actually a check for if we're eating our own corpse

#

Otherwise we check the race of the eaten dead person

#

So, a Fairy corpse will never be a cannibalistic meal

hallow jay
#

cool. I'm just deleting that at some point

#

that lore & trivia section that says two false statements ๐Ÿ˜›

buoyant canyon
#

Hold up

#

A fairy corpse can be considered cannibalistic

hallow jay
#

oh?

buoyant canyon
#

But only if it's specifically a dead corpse

hallow jay
#

do you mean as opposed to meat?

buoyant canyon
#

Yeah

#

I'm not sure if the meat chunks you get are of id "dead corpse"

#

No, no, they are not

#

It has to be specifically a dead body, not butchered

hallow jay
#

so for all intents and purposes its just plain wrong, cause idk how you even get a fairy "corpse"

buoyant canyon
#

I think butchers sell them, but whether those hold info about the race... dunno

#

The raw meat you get from killing an enemy is not a dead corpse. It;s a "_meat"

#

I guess

#

You can open a restaurant with Fairy sashimi and nobody should call you out on that

hallow jay
#

fairy on fairy violence is supported

#

10/10

buoyant canyon
#

I'll refraind from further commenting

hallow jay
#

XD

buoyant canyon
#

I'd argue that noa coded in Cannibalism wrong

hallow jay
#

but as always daikons, thanks for looking that up

#

I think noa should make cannibalism race dependent

#

as it stands I think its static

buoyant canyon
#

"Cannibalism is the act of consuming another individual of the same species as food." - Wikipedia

hallow jay
#

exactly

buoyant canyon
#

It's actually eating a humanoid race.

It'd probably be more effort to add all the tags

pseudo heron
#

Weapon page, Shooting Weapons section, don't tell anywhere which range use which attribute.

Unless you telling me that any reader can correlate the skill used with its attribute, I say someone should add it somewhere

robust rose
#

Be my guest

hallow jay
#

like... what ranged weapon uses which attribute?

pseudo heron
hallow jay
#

Oh yea I suppose a table like that wouldn't be that hard

pseudo heron
#

nothing on the weapon page state that Gun scale off Perception while Bow scale off Dex

hallow jay
#

Its pretty self evident though in game, but for consistency it shouldn't be hard to make a chart

#

You're welcome to do it, its not terribly hard

buoyant canyon
#

Frankly, a wiki does serve as a way to check something when you're not in game too, so best make it as good as possible

hallow jay
#

Yea true

pseudo heron
hallow jay
pseudo heron
#

oh nice! thank you

hallow jay
robust rose
#

As far as I know, all it does is reduces happiness of people by 20, and I don't think Happiness has any effects yet?

hallow jay
#

so my reasoning for thinking it might affect it is: I think new visitors gets spawned in hourly and I'm not sure if the people being awake effects anything

#

Its a stretch, but I figured it could just be tested

robust rose
#

Might be, tho empirical testing on something which varies so much with rng is kinda difficult, need a real sample size instead of just dozen or two

latent oriole
#

Tbh it will be failed test most likely. ๐Ÿ˜… I'm still doing it, my plan is four months with and without nocturnal policy. Done three months and a half yesterday. But the sales fluctuate a lot. For example here the result of two months with the all same stats and same berries in shop. I'm selling +17, +18 and +19 berries, so sales can naturally fluctuate by like 10% more or less, but real fluctuation is much more. I believe it all about npc spawn and how much cash they have, so it to random to measure.

hallow jay
#

if its too much randomness then I would just forget about it

latent oriole
#

Well, I'll do it anyway. I'm interested in it too and already learn a few things on the way. The sales fluctuation for example. The only thing I did wrong is my berries. At the start the were mostly +18 and at the and they will be mostly +19. But as I say, difference in price of berries is like 10% and don't represent real fluctuation I experience.

grizzled cloak
#

In my opinion it should be allowed.
But the EN side has a Modding wiki, so I'd like to confirm which one I should post it on.

flat dust
grizzled cloak
#

I guess the way to exclude MOD pages from search is to give them a category for MOD pages (e.g. Elin MOD) and exclude pages with that category from the Wiki search.

wheat folio
#

I could add a namespace if this is something that has a lot of demand, or the user could make the page on their userpage as a subpage and link it on the mods page (similar to how we do player guides)

hallow jay
#

do we have any information for the wiki about what enchantments noa is adding correspond to which weapons?

#

It states that the enchantments will be put as initial enchantments for certain weapon types

wheat folio
grizzled cloak
hallow jay
#

Would eye of mana be considered magic or willpower or maybe... charisma?

#

How would one tell?

robust rose
#

What in seven sausages is eye of mana

hallow jay
#

its an ability that death gazes have that steal mp directly

#

I think this is its calc in the calc csv file

#

I just got a gene from a mani statue

robust rose
#

public const int ActGazeMana = 6623;

#

I think ActGazeMana would fit your description

hallow jay
#

hmmm

#

ty

robust rose
#

Is it DrainMana? Dunno

#

I gotta get back to work instead of being here :D

hallow jay
#

nah you're right

#

and ty for hte help

#

I just gotta find its formula in the csv files somewhere

#

I confirmed its mag tho

pseudo heron
#

On Elin:Status#Ailments_&_Status
**Lighting **Damage?

robust rose
#

fix'd

pseudo heron
#

I spend some time trying to figure out how PV math work by searching the code in discord (specifically the Apply protection function) and try comprehend it since there's only code analysis on evasion (aka PV).

The purpose of this post is:

  1. To confirm whether I understand correctly or is there any other factor I miss.
  2. As reference for people who want to add PV calculation on the wiki (or anyone try searching in discord)

This is my best attempt at translating the code language to human language.

PV reduce the damage by Percentage THEN reduce it by flat amount according to a dice roll which scale with PV and affected by luck.

The damage got multiple by (100 / (100 + pv)) which
Which make it into human readable formula is 100 - ((100 / (100 + pv)) * 100) result in the graph in the second picture

For flat damage reduction:

The number of dice is (PV/4) / 10 + 1
With integer rounding it mean the dice number start off at 1, become 2 at 18 DV and increase by 1 every 40 DV after.

The number of side of the dice is (PV/4) / the number of dices + 1
With integer rounding, the side increase diminishingly (and reduce by 1 every time the dice number jumped) until it flat line at 11 sides at 1102 PV

This result in the graph in 3rd picture.

Here's the link to Desmos graph if you want to play with it www.desmos.com/calculator/l3unqy0dex

Anyway, I gonna go to sleep now, this post was done out of ADHD urge and im run out of juice.

hallow jay
#

I understand it decently well

#

I've been planning on adding it to the wiki for some time now but I just havn't gotten around to it

#

We should probably make a new code analysis page for it and evasion

#

Maybe rename combat analysis to offensive combat analysis and make a defensive combat analysis

#

idk

flat dust
#

Slightly related, something I personally would love to see is calculators. I'm not sure if that sort of thing can be easily embedded into the wiki but even links to well made desmos calculators would be enough.
Recently I found myself making a desmos graph for another game (Crawl: Stone Soup) because I wanted to know how various gear choices would affect my stats

robust rose
#

Get writing the js and you can have em

flat dust
#

I know that most players don't want / need calculators but it's a nice option to have somewhere for those that do and it also would help avoid duplicate work, since I've seen quite a few good desmos graphs posted here by various people doing good work

robust rose
#

Yea get writing js and you can have em

#

:D

flat dust
#

Even if it's just links to those calculators from various analysis pages I think it would be very helpful, at least for the niche of wiki work and weirdos like me

flat dust
pseudo heron
robust rose
#

No js as in python

#

Yes js as in javascript

pseudo heron
#

ah

pseudo heron
flat dust
robust rose
#

#1249592549681791017 message

pseudo heron
#

Also the first picture in that post IS javascript

#
    var QuarterOfPV = Math.round(pv / 4);
    var DiceNumber = Math.round(QuarterOfPV / 10 + 1);
    var Sides = Math.round(QuarterOfPV / DiceNumber + 1);
      var PerCentReductiom = 100 - ((100 / (100 + pv)) * 100);
    console.log("PV:" + pv + ", Percent reduction: " +  PerCentReductiom + "%, Flat damage cut: " + DiceNumber + "D" + Sides );
}```
robust rose
#

Tldr if we want calculators, graphs etc gotta make a module

flat dust
pseudo heron
#

i see

flat dust
robust rose
#

Tbf osrswiki has bloody everything

#

so could just go do the classic ctrl c ctrl v from there and fix what's needed :D

#

for the modules

flat dust
robust rose
#

Yea the point was that they've done it, we don't need to do it again

#

just borrow them

flat dust
#

Ah you mean it like that

pseudo heron
#

welp good luck guys, imma go play more elin

robust rose
#

I haven't played Elin in almost couple months

#

it's more fun rummaging through the decomp

flat dust
flat dust
#

And good wiki's make me happy