Elin
167 ratings
KK Generate Settings
4
4
3
   
Award
Favorite
Favorited
Unfavorite
Gameplay: General
Asset: NPC
File Size
Posted
Updated
123.322 KB
1 Nov, 2024 @ 12:49am
24 Aug @ 6:50am
10 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://gtm.steamproxy.vip/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

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)
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)
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

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/

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.



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).
40 Comments
Sephira jo 26 Aug @ 2:22am 
I'm not sure if I'm missing something but I'm still getting 40 year old children and 2 year old adults?
OVERLORD 24 Aug @ 7:07am 
thank you :steamthumbsup:
Krois0s  [author] 24 Aug @ 6:56am 
[20250824更新 EA23.181(23.183)]
-EA23.183以降の年齢仕様に対応
-オプション画面のUI崩れを少しだけマシに(100%未満はどうしても崩れます)

-Supports the age specifications from version EA23.183 and onward.
-Slightly improved the UI layout on the options screen. (Note: The layout will still break at scaling below 100%).
Sonnet_Songbird 17 Aug @ 5:21am 
そろそろSteamはベータビルド向けにMODのバージョン管理機能を作るべきですね
Krois0s  [author] 17 Aug @ 4:57am 
報告ありがとうございます。新しいメソッドやプロパティを参照することは、それまでのバージョンとの互換性を失うことを意味します。 修正作業は既に完了していますが、公開は安定版が更新されてからになる予定です。

Thank you for your report. Using the new methods and properties from the test build would break compatibility with the current stable version of the game. The necessary code changes for the mod are already complete, but I plan to release the update once the game's stable version is updated.
Sonnet_Songbird 17 Aug @ 4:32am 
The getter for property reference is broken due to a change in method name in the Biograph class. It seems that simply rebuilding will resolve the issue.
OVERLORD 17 Aug @ 1:24am 
Bug Report
In EA23.181 nightly,noa Changed internal handling of age-related processing.

player.log

[CWL][INFO] [ExceptionProfile] Biography.GenerateBirthday
+PREFIX: KKGenerateSettings::AgeAdjuster.Prefix
+POSTFIX: KKGenerateSettings::AgeAdjuster.Postfix
Biography.RerollBio
Biography.Generate
+POSTFIX: KKGenerateSettings::ForceAgeAdjuster.Postfix
Chara.OnCreate
Card.Create
+PREFIX: CustomWhateverLoader::ReverseIdMapper.OnSetIdMat
+POSTFIX: CustomWhateverLoader::CardOnCreateEvent.OnCreate
万剑君 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?