
Mods / Trait Tailor
Author: Otaku
Side: Both
Created: Dec 22nd 2024 at 4:26 AM
Last modified: May 3rd at 10:51 PM
Downloads: 1072
Follow Unfollow 84
Latest release (for outdated Vintage Story v1.19.8):
traitstailor_0.8.3.zip
1-click install
Change the attributes that come pre-selected with each class.
Comes with a server-side config for balancing the user experience.
Adds a command .ttailor
that allows players for one time customization of class attributes.
Admins can use /player <playername> atto
to allow the player to customize thier attributes one more time.
Important! Current workaround for showing selected attributes is using a command .ttailor show
With these config settings you can limit which attributes is the player able to choose
and how much big of a bonus or penalty is the player able to apply.
Inside ModConfig\TraitTailorConfig.json
- classPerks
First value(key) is the ingame code name of the class.
Second value(value) is the ingame code name of the attribute.
In the current version of the mod the default configuration assigns unique class attribute[1] based on the selected class by the player. (exluding commoner)
Currently you can only assign one free attribute to class and it's valHundredths will be 1.
- attributeValues
By default attributeValues is a list composed of all vanilla attributes.
- Names
- Code: The ingame code name[2] of the attribute
- Name: Easier to read name of the attribute that will be shown to the player
- Bools (true or false)
- positiveValue: Only put false if the attribute being negative is actaully positive for the player
(e.g. attribute armorWalkSpeedAffectedness being negative is actually slowing the player less while wearing armor if its negative) - percentileValue: Only false if the attribute affects the player stats by a rational number (e.g. 5, 1.5, 0.75) instead of %
(e.g. attribute maxhealthExtraPoints adds or removes set number from the deafult player health value so its percentileValue is false)
- positiveValue: Only put false if the attribute being negative is actaully positive for the player
- Attribute value
- valHundredths: If the percentileValue is:
true: 0.01 will be 1% and 0.15 will be 15%
false: is for attributes that read values as rational number or integer, 1 will be 1, 2.5 will be 2.5
- valHundredths: If the percentileValue is:
- Slider values
- stepRangeNeg: how many times can the player move the slider under the value of 0
- stepRangePos: how many times can the player move the slider over the value of 0
Both accept only full positive numbers (To set only positive or negative range set the other value to 0)
(e.g. for attribute maxhealthExtraPoints valHundredths=0.5, stepRangeNeg=3, stepRangePos=8
With those settings the slider for this attribute can be moved maximally 3 times from 0 to the left
resulting in possible range of attribute values being -0.5*1=-0.5, -0.5*2=-1 and finally -0.5*3=-1.5
or 8 times to the right resulting in maximal possible value being 0.5*8=4) - pointValue: Accepts only positive integers.
This point value is multiplied by each "step" of selected attribute.
(For each "step" to the left on the slider, the points will be multiplied by -n "steps" to the left or by +n when moving to the right
unless positiveValue is set to false)
In order for the player to finalize his selection, the sum of points must be 0 or higher - stepSetVal: leave at 0, it is set to the multiplied valHundredths when using the slider
- Vanilla attributes table
You can safely remove any whole {} from inside attributeValues list[].
In case you want to re-add any attribute or just change default values remeber
to set positiveValue and percentileValue according to the table below
Code | positiveValue | percentileValue | additional info |
rangedWeaponsDamage | true | true | |
rangedWeaponsAcc | true | true | |
bowDrawingStrength | true | true | |
animalLootDropRate | true | true | |
animalHarvestingTime | false | true | |
walkspeed | true | true | |
forageDropRate | true | true | |
wildCropDropRate | true | true | |
vesselContentsDropRate | true | true | |
rustyGearDropRate | true | true | |
wholeVesselLootChance | true | true | stepRangeNeg=0 |
animalSeekingRange | false | true | |
mechanicalsDamage | true | true | |
temporalGearTLRepairCost | false | false | valHundredths = 1 or 2, stepRangePos=0 |
meleeWeaponsDamage | true | true | |
armorDurabilityLoss | false | true | |
armorWalkSpeedAffectedness | false | true | |
miningSpeedMul | true | true | |
maxhealthExtraPoints | true | false | |
oreDropRate | true | true | |
hungerrate | false | true | |
healingeffectivness | true | true |
If you want unique perks to be selectable too
you can remove keys and values from classPerks and
add them to attributeValues with following values:
Code: Class,
Name: Class,
positiveValue: true,
percentileValue: false,
valHundredths: 1,
stepRangeNeg: 0,
stepRangePos: 1,
stepSetVal: 0
pointValue: You decide ;)
Class | Class unique attribute |
commoner | |
hunter | bowyer |
malefactor | improviser |
clockmaker | tinkerer |
blackguard | merciless |
tailor | clothier |
0.8.1
- Added
/ttailor <playername> reset
command to remove all attributes from a player, remember
to use/ttailor <playername> atto
to allow the player to change his attributes again. - Now
.ttailor show
opens a gui instead of listing all the attributes in chat - Fixed a bug that allowed players to open
.ttailor
gui before confirming class
0.8.2
- Players gain the privilege to use the
.ttailor
command after confirming thier class selection
0.8.3
- Player can now disconnect without losing the ability to use .ttailor
- Added
healingeffectivness
attribute to the default config - Added
/ttailor config default
command to reload the config file to the default settings (requires restart)
Known issues
- Items vanishing from invetnory (for some re-connecting reappears the missing items for others disabling the mod)
Planned features
- More commands for admins (e.g. /attribute <playername> reset)
- Commands to configure the config ingame
- Gui for looking up selected attributes
- Support for translation
- Support for modded classes with custom attributes
Uncertain features
- Integration of selected attributes into the character info GUI
- Integration of the mod into the character creator screen
The mod will be public on GitHub after 1.0 relese
If you want to add your translation or add your custom class attributes from your mod please contact(ping) me(@Entheru) on official VS discord server.
Big thanks to ket_ler0 on Instagram for the thumbnail art!
Version | For Game version | Downloads | Release date | Changelog | Download | 1-click mod install* |
---|---|---|---|---|---|---|
v0.8.4-rc.1 | 139 | May 3rd at 10:51 PM | Show | traitstailor_0.8.4-rc.1.zip | 1-click install | |
v0.8.3 | 658 | Dec 27th 2024 at 5:25 PM | Show | traitstailor_0.8.3.zip | 1-click install | |
v0.8.2 | 73 | Dec 27th 2024 at 12:49 AM | Show | traitstailor_0.8.2.zip | 1-click install | |
v0.8.1 | 89 | Dec 25th 2024 at 11:02 PM | Show | traitstailor_0.8.1.zip | 1-click install | |
v0.8.0 | 113 | Dec 24th 2024 at 12:54 AM | Show | traitstailor_0.8.0.zip | 1-click install |
In version 1.20.X game crashes once you use the command .ttailor which is very very sad, because this mod looks awsome and I want to be able to use it on custom servers.
It is a class creator and I love it. I would love to see it balanced with a trait picking system like in Stellaris to have it employed into severs with a manageable amount of balance- make it so you have a certain number of "trait points" which you can pick varying perks with but if you go negative in points you have to pick a disadvantage to bring the points to 0.
Hey! Just wanted to know how far 1.20.x support is at? Heck, I would download even the broken 1.20-rc versions, if the custom traits stick around even after the mod is removed!
In version 1.20.3 game crashes once you use the command .ttailor
Is it just me, or do adjustments reset ever time I stop playing the game, making me have to remake adjustments every time I start playing with this mod?
Otaku
It's ok, mods probably require a lot of effort to resolve unforseen issues. I disabled all other mods to root out conflict in 1.20-rc6, loaded a new world, tested to see if items disappeared from inventory, then saved and exited and returned. Same issue, it's exclusively this mod that's causing it.
Hey! I just wanted to let you know that when this mod is active, whenever I create a world, exit the game completely and resuming the world, chunk loading is frozen and no I can no longer pickup objects. It basically renders the game unplayable. I haven't tested if deleting the mod resumes the world to its original state but I generally avoid playing on worlds with deleted mods.
ambiguousentity
As of now I am unable to locate the source of this issue, During tests using version 1.19.8 I didnt manage to replicate this bug so for now I removed all mentions of 1.20-rc* versions from the mod files.
I want to point the finger at 1.20 still being unstable or another mod that comes in conflict with mine but probably Im just missing something to find the issue from my side so I need some more time to resolve this.
For now if you're playing on singleplayer you can safely disable the mod and the changes should stay with your character.
EKB133 The issue should now be fixed in the 0.8.3 version, if you still get a message about lacking permissions use /player <playername> atto command.
Let me know if you encounter this issue again
Otaku Same here, I noticed my items disappeared when dropped, then I would have to reload the world in order to fix it. Once your mod was disabled the problem disappeared, and returned when reenabled.
Oh yes, also it only happens after saving and exiting. On first play session it seems to work fine.
Leonix Thats really wierd, the mod doesnt change anything that has to do with vanilla GUI's.
Could you please try to restart the game, disable my mod and re-enter the world.
And if the issue really goes away restart again and enter with my mod re-enabled.
If the issue really comes from my mod while its enabled please send me your modlist on official VS discord, ill try to look into this issue
The latest modification update for v1.20.0-rc.6, which I'm currently playing, is causing me problems with the inventory. Things are disappearing or duplicating, when they're not really there anymore... o.o
I think there is a compatability issue between this mod and Kemono, no matter what class I pick, if I try to use .ttailor to bring up the menu, it tells me that I should use .charsel first to pick a class before using that command.
Edit: actually, It doesn't seem to be Kemono, for some reason the mod just isn't recognizing that I picked a class to allow me to use the command.
Korcz Could you message me on discord and list me all the mods you had installed when the crash happend so i could pick out the one that causes the issue and try to fix it?
Unfortunately crashes on 1.20 (possibly conflicting with something else), but otherwise sounds like a great idea
What an amazing mod!
Indeed project zomboid was a big inspiration for this mod, but I also wanted to have more control over class traits instead of making a whole new class everytime.
Looks like zomboid trait system