Elin
153 ratings
KK Generate Settings
4
4
3
   
Award
Favorite
Favorited
Unfavorite
Gameplay: General
Asset: NPC
File Size
Posted
Updated
122.673 KB
1 Nov, 2024 @ 12:49am
10 Jan @ 10:48pm
9 Change Notes ( view )

Subscribe to download
KK Generate Settings

Description
Feature Description
  • Adjusts the age and gender of randomly generated characters.
  • Affects all generic NPC generation including immigrant candidates, random encounters, and first-time area visits.
  • Does not affect already generated characters.
  • For safety reasons, characters with fixed age and gender are not modified by default, but can be changed through settings.
  • While mainly intended to control NPC generation, some settings may affect player character rerolls during new game creation due to system specifications.



Recommended MOD
・ModOptions https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/3381182341
While this MOD can function without ModOptions, you will need to manually edit the cfg files.
Due to the complexity of the settings, we strongly recommend installing ModOptions.
Additionally, most settings can be changed without requiring a game restart.

If you choose to make manual changes, you can configure settings in the following file. By default, no changes are applied:
Elin/BepInEx/config/KKGenerateSettings.cfg



Age Settings
To control generic NPC age generation, first enable this setting (disabled by default):
enableAgeSetting = false

Age settings will be limited to humans only. Since target settings have been added, this setting may be discontinued in the future.
enableHumanOnly = true

This setting has been deprecated. Please remove it from the configuration file if it still exists
ageRange = 0

Set spawn rates for each age group: children, youth, adults, and elderly.
Adjust to total 100. Age ranges for each group follow official standards and vary by race. Long-lived races may have children over 100 years old.
childSpawnRate = 25 youthSpawnRate = 25 grownUpSpawnRate = 25 oldSpawnRate = 25

Age Settings (Force Mode)
The following settings allow configuration beyond normal game parameters. Please use with caution.
Set minimum and maximum age limits.
For example, while Yerles normally generate between 8-50 years, setting forceAgeMax to 40 will limit generation to 8-40 years. Even long-lived races can generate young characters like 10-year-old Apostles.
Ages are first generated according to SpawnRate settings, then recalculated if they exceed limits.
forceAgeMin = 0 forceAgeMax = 999999999

Enable this to apply age settings to fixed-age characters.
For example, allows generation of 10-year-old Loytel:
enableForceAgeMode = false



Gender Settings
To control generic NPC gender generation, first enable this setting (disabled by default):
enableGenderSetting = false

Set the ratio of generated NPC genders. 100 for male-only, 0 for female-only (excludes fixed-gender characters):
maleRatio = 50

Control generation of base game's rare ??? gender characters. True maintains rare generation, false disables it:
enableUnknown = true

Gender Settings (Force Mode)
The following settings allow configuration beyond normal game parameters. Please use with caution.
Enable this to apply gender settings to fixed-gender characters.
For example, allows generation of female Loytel:
enableForceGenderMode = false



Target Settings
This part gets a bit complex.
Using target settings, you can specify IDs for specific Charas or Races to individually apply age and gender settings.
All Charas and Races that are written will be targeted (OR condition).
targetChara = sister,sister_cat,sister_undead targetRace = norland

However, these settings will be ignored if written in "KKGenerateSettings.cfg".
The base configuration "KKGenerateSettings.cfg" will always target all characters and all races.

Please copy "KKGenerateSettings.cfg" and create a new file named "KKGenerateSettings_[custom name].cfg" in the same folder.

For example, to create a group where medusa, loytel, and succubus are fixed as female:
Create a config file named "KKGenerateSettings_female.cfg" with the following settings:
# Enable gender settings enableGenderSetting = true # Set male generation rate to 0% maleRatio = 0 # Disable unknown gender generation enableUnknown = false # Enable forced gender mode as Loytel is a fixed male character enableForceGenderMode = true # Enter target IDs targetChara = loytel targetRace = succubus,medusa
The targets specified (medusa, loytel, succubus) will be fixed as female according to "KKGenerateSettings_female.cfg",
while other Charas and Races will follow the base settings in "KKGenerateSettings.cfg".
You can create multiple custom settings files (KKGenerateSettings_male.cfg, KKGenerateSettings_sister.cfg, etc.).

The priority order is targetChara > targetRace > KKGenerateSettings.cfg.
For example, if settings are:
KKGenerateSettings_A.cfg targetChara = sister KKGenerateSettings_B.cfg targetRace = roran
Although younger sister(sister) is roran, it will follow KKGenerateSettings_A.cfg settings because targetChara has priority.
Similarly, little girls of roran will follow KKGenerateSettings_B.cfg settings.

Chara IDs and Race IDs can be checked here, but please note these are Elin's internal data:
https://docs.google.com/spreadsheets/d/1CJqsXFF2FLlpPz710oCpNFYF4W_5yoVn/



Troubleshooting

•This mod is not working properly (Linux or Steam Deck users)

For Linux or Steam Deck users, there have been reported cases where the mod loading mechanism does not function correctly.
Please refer to the official DEVROOM page for countermeasures.

・Settings are not being applied
Please check LogOutput.log:
/Elin/BepInEx/LogOutput.log
Right after game launch, the content of loaded settings files and any errors will be displayed at the bottom:
[Info :KKGenerateSettings] [Base] [GenderSetting:True ???:False Male: 60%] [AgeSetting:True HumanOnly:False Rates: 50%/ 30%/ 20%/ 0%/ 0-999] [Info :KKGenerateSettings] [apostle] [GenderSetting:FORCED ???:False Male: 0%] [AgeSetting:FORCED HumanOnly:False Rates: 100%/ 0%/ 0%/ 0%/ 0- 16] [Target:Race:servant] [Warning:KKGenerateSettings] Config file KKGenerateSettings_loran.cfg contains invalid targets: loran(race). These targets will be ignored.
In this example, the Race "loran" in "KKGenerateSettings_loran.cfg" doesn't exist in the game, so it's ignored (correct spelling is roran).
33 Comments
万剑君 22 Mar @ 12:03am 
MOD核心功能:自定义NPC年龄/性别生成规则,支持精准定制。
主要设置
年龄控制
- 调整儿童/青年/成年/老年比例(总和100%),可设全局年龄区间(如10-40岁),覆盖固定年龄角色(需开启强制模式)。
性别控制
- 设定男女比例(0=全女,100=全男),禁用“???”性别,强制修改固定性别角色(如男→女)。
精准定制
- 通过角色/种族ID单独配置(如指定魅魔全女性),多配置文件按优先级生效:**指定角色 > 指定种族 > 全局设置
安全兼容
- 仅影响新生成NPC,推荐ModOptions可视化操作,Linux/Steam Deck需特殊配置。
典型用途
- 全幼年精灵村|全女性魔族|青年主导城市
- 剧情NPC定制(如妹妹固定为儿童)
错误配置会触发日志警告,弃用参数需手动清理。
🌹彼岸花🌹 9 Feb @ 10:39pm 
thankyouu
'JJ 28 Jan @ 6:32am 
pls someone tell me whats the reason to have this mod?
Krois0s  [author] 10 Jan @ 10:51pm 
[20250111更新 EA23.74]
・前提MODとしてModOptionsに対応(なくても動きます)
・年齢固定のキャラクターについて23.62 NightlyからMODで設定された年齢が表示されていなかったのを修正
・年齢設定の「人間のみ反映」、かつ、「強制年齢モード」にしていた場合、人間でなくとも設定が反映されていたのを修正
Karmapowered 8 Jan @ 4:30am 
(2/2)

In other games, like Skyrim, Fallout 4, Rimworld, etc., there exists usually one central mod that helps doing this. For example :

https://www.nexusmods.com/skyrimspecialedition/mods/53000

I think it would be useful to have one equivalent in Elin as well, and mod authors using it for the additional comfort of their users/players. But there is no rush.

Thank you very much for your hard work and sharing your mods with us.
Karmapowered 8 Jan @ 4:29am 
(1/2)

As promised, I'm back with feedback after playing almost up to 100 days with your mod.

First I noticed that there are still many males with female portraits or females with male portraits. Elders of races that are not ??? also have children portraits sometimes.

As I said before, those are bugs. I believe they are best fixed by the game developper, not this mod.

This mod works fine. I notice less children and less elderly, which is how I set up my configuration file. I'm not particularly prude and want children in my Elin games, but I hope I will never see "let's watch the birds together" on a child during a succubus run for example.

About the mod that I linked to, I think it would be a good thing if mod authors decided among themselves which is the best mod to use to allow users to change their mod configuration in-game, because there's also this mod :

https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=3379819704

I just want to raise awareness at this point.
Krois0s  [author] 7 Jan @ 10:18am 
I was aware that my MOD requires very complex configurations, so I considered this a potential issue. The MOD you suggested would indeed allow for more flexible settings, so I would like to implement it if possible.

However, due to its flexibility, it seems there are many processes that need to be implemented on my MOD's side.

Therefore, it will take considerable time to implement, and I might even have to give up if it proves too difficult to achieve.
I would appreciate it if you could wait without having too high expectations.
Karmapowered 5 Jan @ 5:47am 
I ran into a bug with the new update and needed to find the mod that created it. Now I'm finally able to play again.

One small suggestion before I resume playing : would this mod be useful for players to change their settings of your mod more comfortably than a config file ?
Karmapowered 5 Jan @ 4:42am 
Thank you for your reply.

I noticed portraits not matching genders or age before using your mod.

I understand what you said about age, which in my opinion is a bug. It's very disconcerting to see an elderly person with the portrait of a young child, or vice versa.

I will report about portraits matching genders or not once I'm able to play with your mod for some longer time.
Krois0s  [author] 5 Jan @ 3:40am 
I have implemented functionality that resets portraits to match the gender when gender changes occur, so it's quite strange that portraits are being assigned that don't match the gender.
There are some androgynous portraits like c_f-37.png - perhaps these are being mistaken for male portraits?
Elin's portraits are stored in the following location:"\Elin\Package_Elona\Portrait", where c_f is for females and c_m is for males.

However, as you can see from the filenames, the portraits don't have any age concept built into them. This makes it difficult to select portraits based on age.
Whether the character is a child or elderly, if they're male, the portrait is randomly selected from c_m, and if female, from c_f - this is actually the same behavior that occurs in the vanilla game.