Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(2 edits)

I've modified the script portion into a mod for 0.5.18:

Version 0.2 https://mega.nz/#!sXxmDAqZ!hmiE948bEroR3U2naD3vpNdnlVAh9Rfi2Ckf9l4YmDw

I've modified how the selection logic works in this version, info.txt details it further, but now race takes precedence, and it won't set a portrait for a male unless it can find a portrait for that race that has male and not female.

  1. Extract into your user mods folder, "%appdata%\Strive\mods" (Alternatively, run game, click mods, then click "open folder"), but may need to re-run to see mod in list.
  2. Run the game, click mods
  3. Click "randomportraits" so it is enabled.
  4. Click apply, game will exit
  5. re-run the game, mod should work now.

Mod works by replacing "func randomportrait(person):" contents with what is in the mod file, leaving the rest of the character constructor alone. Thus as long as the mods continue to work the same way, this should work with future versions, without worrying about the rest of the file.  I did have issues when randomBody function existed, the mod code seems fragile and was inserting in an empty function.  Collapsed it down into the main function and all is working.

If you want to revert the mod, I haven't had much luck from in-game.  Guessing this will be fixed later, but for now can revert by

  1. exit game
  2. Delete FileOrder.ini from "%appdata%\Strive\mods"
  3. In game folder, copy contents of "Backup" to "files".

Could you give an example of a perfectly named portrait to take full advantage of this mod? e.g male-adult-scylla-blond.png

I don't know if the words have to be in a certain order or what.

Also, do you know if the new mod support system allows you to change absolutely any script in the game? (If one were smart enough to do so)

(1 edit)

The text can be anywhere in the filename, or directory path. It gets list of all portraits, then checks against their file path for the following to shrink the list down. If any of these shrinks the list to 0, it disregards the results and uses the prior list. So like, if Sex returns 0, then it returns back the full list. That's why you don't see Female in any of them. The search is case insensitive.

  • Sex - It starts off looking for female/male, which seems flawed to me. Any file with female will be matched by search for male. I think this code needs to be updated to exclude female when searching for male.  I think that's why the current packs in here are female only.  I could tweak this so it checks for male/futanari, and if not present, it assumes female? I think this would work better.
  • Age - If age is Teen or Child, then it searches for Loli.  Not however, it does not exclude Loli from adult.  Could be updated to also exclude Loli from adult, or function in some more advanced way.  I'm open to suggestions to tweaking my mod version of it.
  • Race - Searches for race, It removes the space from Halfkin and Beastkin, so it matches on HalfkinCat BeastkinCat, etc.  It treats Halfkin* and Beastkin* separately.
  • Hair - Searches for hair color

Lastly, it checks if there is a matching Body image.  It basically wants an identically named file in the Bodies folder, and if so, then it sets the body image to that as well.

Note since it searches the entire path, if you name multiple races, etc.  then a file can match for multiple.  Maybe useful if you think one applies to multiple.

Edit - Using this further and thinking about it, it really bothers me it doesn't filter by Race first. When it filters on sex/age first, the entire race section can be excluded before it gets to it, so you get a lot with the wrong race and that bothers me more than other mismatches.

In the packs in here, there's only 2 male files, so if it's a male, suddenly it'll get a dragonkin portrait/body.  I almost prefer that if it can't find a male portrait for appropriate race, it doesn't set one at all. So I'm going to tweak this to specifically want male and not female in a file if it's a male, and if it can't find any, it doesn't apply.  futanari will fallback to unspecified still.

Then it filters too harshly on Age i think. If it's teen/child, it suddenly limits itself greatly.  I think it'll be better if it excludes Adult for Teen,  and for Adult, excludes Loli. Avoids big mismatches.

Link above modified, has details in info.txt of the selection logic, which I've modified to something I like more.  Additionally, I think the code is a bit easier to read or adjust both sequencing, or specific rules it follows. If you have suggestions, let me know.

Nice work :)

SexiestManAlive is working on a HUGE female portrait pack. That is going to have pictures named with gender, race, hair color, breast size, skin tone, and butt size. It would be great if you two could get chatting and come up with a standard file naming method that will pull images correctly. Don't know if he is working on a script too or not.

I agree that race should be searched for before age.

Problems might arise when 'body parts' have the same color (eg brown skin and brown hair). So long as everyone is on the same page with naming files, this shouldn't be an obstacle. Maybe agree that skin tones need altered name like brwn, bluu, greeen etc

I think just appending Hair or Skin should be sufficient. I'm thinking in that case, it'd be best to instead read through the file list once, cache it, and then do more complicated analysis on the name to capture out attributes.  BrownHair BrownSkin = specific attributes, Brown without a qualifier however is treated as hair.  As long as everything is consistent, I'm sure I can make something to match it. Biggest thing is to make sure the body matches the portrait path.

I also noticed there's an issue with Elf vs DarkElf. where Elf will match all DarkElf currently.  Also wondering how best to handle DarkElf vs. Drow.  Visually I'm not aware of any difference between the two? Thinking it makes sense for DarkElf and Drow to accept protraits named for either. Or should that be left up to the portrait pack to name the file with both?

Drow's have blue, paleblue or purple skin while Dark elves have tan, brown or dark. So I'd leave it to the portrait pack to name both.

Sorting DarkElf from Elf.... I'm not sure it's worth it. Their eyes have slightly different color ranges, but surely that's not a big deal. Maybe just work on adding sorting by skin tone, and leave that to sort them. Any DarkElf labeled with brown or dark skin color wouldn't be assigned to a normal Elf, because they never spawn with that skin tone.