Elin
Player Gene System (Stable)
28 Comments
23n1nbb Oct 4 @ 8:42pm 
@grueshanker
the hybrid one sounds make sense
grueshanker  [author] Oct 4 @ 2:39pm 
@Drury Man
hi

1) you can use Mod Config GUI: https://steamcommunity.com/sharedfiles/filedetails/?id=3379819704

or,

2) while the game is not opened, you can edit: C:\Program Files (x86)\Steam\steamapps\common\Elin\BepInEx\config\vic.playergenes.cfg


the reason i implement this:
WarnOnBodyPartOverflow = true

is so that I can have up to max 18 body part from gene showing in my UI without overflow:
MaxGeneSlots = 18

since I cannot fix that overflow bug 😅
Drury Man Oct 4 @ 2:16pm 
How do I edit the configuration? If I wanted to change MaxGeneSlots or FeatCostMultiplier, for example, how would I do it?
grueshanker  [author] Oct 4 @ 12:07pm 
@23n1bb

hybrid idea:
a) Gain the Spell at the <#> spell level.
b) keep track of how many charge for the spell is used in the day
c) guarantee recharge for gene spell on sleeping, but restore only lost charge count

this way you can keep the spell indefinitely, at the <#> spell level, and get charges each day to use them
grueshanker  [author] Oct 4 @ 11:32am 
@23n1bb
>> Daily recharge idea
this seems like not a bad compromise, although natural sleeping should occasionally do this sometime. do you ask for feature to definitely restore <#> on the gene spell each sleep, no random chance?

>> Level
this may or may not work, because some of the gene spell <#> is very high like 40 so it can be overpowered for player.

>> removing?
for removing the spell, currently I just subtract gene <#> on removal. I wonder if to balance I should just remove all the spell charge accumulated, or all simply all charges, while keep spell level.

if <#> we decide to make the spell level, we could subtract spell level of gene on removal while keep the charge.

so thinking of balance is not as easy as it seems :)
grueshanker  [author] Oct 4 @ 11:30am 
@23n1bb
the thing is, with how AI use gene spell, there is no direct 1:1 feature.

https://ylvapedia.wiki/wiki/Elin:DNA_List
for Ally, the number represent: "where x is a number from 1 to 100, is the spell/ability chance to be on the ally's action list every turn. Allies chooses one spell/ability on their action list to use (which one is reliant on circumstances and their AI) and any spell/ability who fails the roll is automatically excluded for that turn." for player, this cannot work the same.
23n1nbb Oct 4 @ 4:32am 
It seems that gene applied to companions wont use out their spell, making this bit of unfair to player.
Maybe make the gene level become amount of spells' daily recharge or their level will be better?
grueshanker  [author] Oct 2 @ 12:11am 
@23n1bb

Learning spell from gene will gain charges for that spell.

When charges reach zero, the spell disappears but keeps its level same as vanilla. You can relearn it from genes, books, or sleeping to get charges back at the same spell level.

Adding a gene gives you charges, removing a gene takes charges away. If multiple genes give the same spell, their charges add together.

hope you can test if this feels balanced or any suggestions :)
23n1nbb Oct 1 @ 5:51pm 
how the gene unlocked magics' cast times work? will they refresh or just disappear after use out?
grueshanker  [author] Sep 22 @ 10:27pm 
Fixed Regression: Gene removal dropdown now instantly updates to remove deleted genes from the list.
grueshanker  [author] Sep 22 @ 9:39pm 
✨ New Features (unsub / resub)

- Rich Gene Information Display: Gene removal dropdown shows detailed info with colors
- Shows source, slots, cost, effects with star ratings and actual levels like <<Memory of Endurance>> [*] (4)
- New WarnOnBodyPartOverflow setting too many body part insertions depending on gene slot

⚙️ New Settings

- WarnOnBodyPartOverflow:
- True: Shows warning and blocks insertion when body parts from gene would exceed remaining gene slot count
- False: Allows all body part gene insertions without restrictions
grueshanker  [author] Sep 21 @ 10:58pm 
Update fix: Gene Removal Dropdown should now properly reflect removed gene instantly
Yuka Sep 18 @ 5:12am 
nice
grueshanker  [author] Sep 17 @ 7:17pm 
This mod will stay on Stable for now. Any new features/nightly changes will be split to new mod, as necessary
grueshanker  [author] Sep 17 @ 1:25am 
@DK
LOL
DK Sep 17 @ 1:08am 
@grueshanker annnnnnd we got a stable patch an hour after my comment.
grueshanker  [author] Sep 17 @ 1:03am 
@DK

thanks! I'll hold off on the Stable builds til release day.
grueshanker  [author] Sep 17 @ 1:01am 
Update: Fixed Gene Shock accidentally giving stat buffs and penalties disappearing after save/load. Gene removal now shows exact stamina cost per gene in Gene Removal UI (when ExhaustionOnShockedRemoval is true)
DK Sep 16 @ 11:55pm 
next Elin Stable patch should come soon (around 20th ish usually) so I think there's no rush to release a stable build for now - less work is best work
grueshanker  [author] Sep 16 @ 10:48pm 
Update: Fixed gene removal bug - genes now properly reverse all effects (stats, spells, abilities) instead of just disappearing from the list.
grueshanker  [author] Sep 15 @ 1:18pm 
Updated title to Nightly to reflect supported build for Elin. Will try to split to stable build
grueshanker  [author] Sep 15 @ 1:06pm 
@CrownClown

Interesting...that's possible, I don't play Stable much so I couldn't really test it. Thanks for the log, it looks like method signature might've change. Might need to split the mod into two if that's the case
CrownClown Sep 15 @ 12:48pm 
someone told me the kick method was changed in nightly so this mod wont work on stable
CrownClown Sep 15 @ 11:04am 
i installed YK framework + Stable CWL but i get this error when i click on any character in the gene machine menu :

A mod is incompatible with your game version.
MissingMethodException: Method not found: void .Chara.Kick(Point,bool,bool)
<[RMB] close>
<[MMB] do not show>

Sequence of events (most recent on top):
ListPeopleSelect.OnClick
BaseListPeople.<List>b__17_1
UIList+Callback`2[T1,T2].OnClick
<>c__DisplayClass67_0.<Refresh>b__0
InvokableCall.Invoke
UnityEvent.Invoke
UIButton._OnPress
<>c__DisplayClass69_0.<OnPointerClick>b__0
BaseCore+<_WaitForEndOfFrame>d__22.MoveNext
SetupCoroutine.InvokeMoveNext
grueshanker  [author] Sep 15 @ 8:49am 
Hi, I think @LaderN plays on Stable and confirmed it works. I will make a note to use Stable CWL for stable version.
DK Sep 15 @ 6:10am 
there is stable version of CWL and you can use that instead. CWL mods can work with either version of CWL. Unless this mod itself has nightly specific features.
Inquisition Time! Sep 15 @ 2:54am 
Only works with the nightly version?
LaderN Sep 14 @ 11:30pm 
I've tried it, and the mod runs quite smoothly—so far there are no issues.