Jump to content

Creature Race Tag Compatibility Workarounds?


Recommended Posts

TL/DR: The authors of many creature animations giving the creatures weird names for the 'race' of that creature causes many sex mods to be completely unwilling to call the animation. "That animation doesn't go with that creature, Sir!" "But... but... the two critters have the same freaking skeleton! They're both werewolves!" etc.

 

I just thought to post this, never have before. Has anyone ever found a good work around for creature race-tag issues? Let me give a few examples of what I mean, I might be mentioning specific mods here, but it is by no means unique to the mods I mention, and I don't mean to single anyone out, so if I do, I apologize.

 

Scent of Sex will rarely call the creature animations I need it to for a variety of creature types. Horny Creatures of Skyrim's 'wolf on rabbit' animation won't play when I try to use it with the Dawnguard Huskies, because a 'husky' is not 'wolf' race. The rabbit air-humps, the husky stands there looking derpy.

 

Pet Collar and Scent of Sex will not allow female-werewolf animations for a player who has transformed into a werewolf, even with the use of Sexlab Tools' manual animation changing feature, because a 'werewolf' is not a 'werewolfgal' race. So if you want to be a werewolf femme who is still submissive to your mate/lover/follower, you're out of luck.

 

These are just two examples, but if you get into any exotic creature animation mods, these are absolutely rampant. Aroused Creatures and some other mods handle it fine because they just use the Sexlab Quick-Start function (I think), but the lack of race tag standardization makes a bunch of mods trip over their own shoe laces.

 

I do not know if there IS any kind of solution, but I hope there is, or wish there was. Does anyone know what I'm talking about, or have useful input?

Link to comment
  • 2 weeks later...

this should help fix the "werewolfgal" problem for now:

(tip: reset the animation registry)

 

"husky on rabbit" is a problem with SLAL's limitations, it wont let me reuse hkx files in different animation sets, so i would need to make a renamed copy of the animation set to make that work.

 

edit: http://www.loverslab.com/files/file/4130-more-nasty-critters-slal-edition/

Link to comment
  • 4 weeks later...

I guess more comprehensive solution for this would be some kind of "race alias" system.  If it's dependent on sexlab validating the races, then the system would need to be hooked in sexlab I think?  In simple terms, you'd just define aliases like, "modname_bearrace = bear" and the like.  If you wanted to make it more complicated then it could have some added attributes, like "werewolfgal = werewolf [female]".  In a simple form I imagine it wouldn't be very complicated.  When race-qualifying animations, you'd just first look up alias database to expand valid races, then qualify any animations that match one of the races.

Link to comment

this is a old thread, all dog/wolf/werewolf problems have been fixed in MNCv10.1A:

http://www.loverslab.com/files/file/4130-more-nasty-critters-slal-edition/

 

and HCOS was updated for MNCv10.1A as well.

 

Sure, that's great.  It doesn't fix old grumpy of the underground bath house though, or the modname_bearrace in general.  I realize it's less acute than the more generic issues like that, and possibly not wide enough issue to warrant writing a solution - but there are cases where mods use custom race that doesn't match anything recognized by SL.  What I was writing about is a slightly different issue.

Link to comment

 

 

thanks to nicholas8 a fare number of mod races have been added (on top of whats already been made available):

Creepy zombies V2.0

Colorful Magic V1.26

Monster Mod V4

Skyrim Immersive Creatures v6.5

Beyond Reach V3.51

GCE Follower Torte V1.1

Iris - The elven doll V1.4

Donyaakin Followers V1.2

Darkend V1.2

Helveton The Fate of the Mountain Ver.1.04b1

Equilibrium Encounters Ver.1.535

Beasts of Tamriel V3.7

Apotheosis - Lifeless Vaults Ver.2.0.0

Molag Bal's Inferno Ver.1.6

Skyrim Underground Ver.3.6

Salem - Arena Tournament and DLC Ver.FINAL

The Wheels of Lull Ver.3.01

Sewer Rats - Mihail Monsters and Animals Ver.1.2

Peacocks- Mihail Monsters and Animals Ver.1.2

Mammoth Expansion - Elements of Skyrim pt.2 Ver.1

 

and they made a script for adding new ones with a json file, but it's not working right on my end so i'm not using it yet. but it's not hard to add new races into MNC anyways.

Link to comment

Mayby I'm too stupid, but for what reason to create something above 'RaceKey' over this...

Any mod can add own race to RaceKey, isn't it?

quote from MadMansGun:

but it's not hard to add new races into MNC anyways.

Agree with him

 

Animations with different creatures? Even with CURRENT SexLab.

Just ANY bestiality mod might to do:

Example, Wolf-Boar-Dragon...

1. Fill array of animations for wolf (canines)

2. Fill array for Boar

3. Fill for Dragon.

4. Join matched animations - thats all you need!

 

Kind Regards.

Link to comment

Mayby I'm too stupid, but for what reason to create something above 'RaceKey' over this...

Any mod can add own race to RaceKey, isn't it?

quote from MadMansGun:

but it's not hard to add new races into MNC anyways.

Agree with him

 

Animations with different creatures? Even with CURRENT SexLab.

Just ANY bestiality mod might to do:

Example, Wolf-Boar-Dragon...

1. Fill array of animations for wolf (canines)

2. Fill array for Boar

3. Fill for Dragon.

4. Join matched animations - thats all you need!

 

Kind Regards.

 

Well it's more, I think, that people are making up names for races that can't get filled. I recall CPU complaining when debugging Scent of Sex that some of the animations were for a race named "wolfpanic", that did not actually exist in game somehow. Other similar race names, where authors insert their name into the race's name like how they name files in the construction kit conventionally occur, and it's not as simple as breaking the names down into ones that already exist.

 

Words that aren't actually races. The problem most often comes up with mods that search for anims BY race, like Scent of Sex, which does not use Sexlab's quick-start feature at all.

Link to comment

 

Mayby I'm too stupid, but for what reason to create something above 'RaceKey' over this...

Any mod can add own race to RaceKey, isn't it?

quote from MadMansGun:

but it's not hard to add new races into MNC anyways.

Agree with him

 

Animations with different creatures? Even with CURRENT SexLab.

Just ANY bestiality mod might to do:

Example, Wolf-Boar-Dragon...

1. Fill array of animations for wolf (canines)

2. Fill array for Boar

3. Fill for Dragon.

4. Join matched animations - thats all you need!

 

Kind Regards.

 

Well it's more, I think, that people are making up names for races that can't get filled. I recall CPU complaining when debugging Scent of Sex that some of the animations were for a race named "wolfpanic", that did not actually exist in game somehow. Other similar race names, where authors insert their name into the race's name like how they name files in the construction kit conventionally occur, and it's not as simple as breaking the names down into ones that already exist.

 

Words that aren't actually races. The problem most often comes up with mods that search for anims BY race, like Scent of Sex, which does not use Sexlab's quick-start feature at all.

 

Yuni, be aware about mods that just use quick-start. This function is ONLY humans relaible.

Creatures? Just look at "Animal Mansion Redux", or similar - I entered in mansion, Thaena is breathing with just standing, because 'wolf-on-rabbit' is called...

 

Kind Regards

Link to comment

Mayby I'm too stupid, but for what reason to create something above 'RaceKey' over this...

Any mod can add own race to RaceKey, isn't it?

Animations with different creatures? Even with CURRENT SexLab.

Just ANY bestiality mod might to do:

Example, Wolf-Boar-Dragon...

1. Fill array of animations for wolf (canines)

2. Fill array for Boar

3. Fill for Dragon.

4. Join matched animations - thats all you need!

 

Kind Regards.

 

i don't want to call you stupid (your much better at scripting then i am), but you are missing a bit of info...

for a creature race to be used by SexLab it needs to be registered or it wont be used at all.

 

Eg:

ScriptName MoreNastyCrittersFactory Extends sslAnimationFactory
import sslCreatureAnimationSlots
    String[] Dogs
    String[] Wolves
    String[] Canines
Function RegisterAnimations()
        AddRaceID("Dogs", "DwemmydograceIris")
        AddRaceID("Wolves", "00HyenaRace")
        AddRaceID("Wolves", "BoTHellhoundRace")
        AddRaceID("Canines", "DwemmydograceIris")
        AddRaceID("Canines", "00HyenaRace")
EndFunction

in this example if a animation is registered as "Dogs" then only "DwemmydograceIris" can use it,

if the animation is registered as "Wolves" then only "00HyenaRace" and "BoTHellhoundRace" can use it,

but however if the animation is registered as "Canines" then "DwemmydograceIris" and "00HyenaRace" can use it but "BoTHellhoundRace" cant, unless "AddRaceID("Canines", "BoTHellhoundRace")" is added to the list.

 

 

note: this is only a example, there are other things like FNIS lists, behavior files and SLAL json to take into account.

Link to comment

Well it's more, I think, that people are making up names for races that can't get filled. I recall CPU complaining when debugging Scent of Sex that some of the animations were for a race named "wolfpanic", that did not actually exist in game somehow. Other similar race names, where authors insert their name into the race's name like how they name files in the construction kit conventionally occur, and it's not as simple as breaking the names down into ones that already exist.

Words that aren't actually races. The problem most often comes up with mods that search for anims BY race, like Scent of Sex, which does not use Sexlab's quick-start feature at all.

 

 

wolfpanic/werewolfgal was not a race, it was a String that only MNC used (and i deleted them when i did the SLAL conversion)

i seriously don't know why "werewolfgal" was even made, if a animation was registered as "werewolfgal" then only "WerewolfbeastRace" could use it.

ScriptName MoreNastyCrittersFactory Extends sslAnimationFactory
import sslCreatureAnimationSlots
    String[] Dogpanic
    String[] Wolfpanic
    String[] Werewolfgal
    String[] Werewolfpanic
Function RegisterAnimations()
        AddRaceID("Dogpanic", "DogRace")
        AddRaceID("Dogpanic", "DogCompanionRace")
        AddRaceID("Dogpanic", "MG07DogRace")
        AddRaceID("Dogpanic", "DA03BarbasDogRace")
        AddRaceID("Dogpanic", "DLC1HuskyArmoredCompanionRace")
        AddRaceID("Dogpanic", "DLC1HuskyArmoredRace")
        AddRaceID("Dogpanic", "DLC1HuskyBareCompanionRace")
        AddRaceID("Dogpanic", "DLC1HuskyBareRace")
        AddRaceID("Wolfpanic", "WolfRace")
        AddRaceID("Wolfpanic", "DLC1DeathHoundCompanionRace")
        AddRaceID("Wolfpanic", "DLC1DeathHoundRace")
        AddRaceID("Wolfpanic", "_00AspectRace")
        AddRaceID("Wolfpanic", "FoxRace")
        AddRaceID("Werewolfgal", "WerewolfbeastRace")
        AddRaceID("Werewolfpanic", "WerewolfbeastRace")
        AddRaceID("Werewolfpanic", "DLC2WerebearBeastRace")
        AddRaceID("Werewolfpanic", "_00GreaterShoggothRace")
        AddRaceID("Werewolfpanic", "_00WerebearBeastBlackRace")
        AddRaceID("Werewolfpanic", "_00WerebearBeastSnowRace")
        AddRaceID("Werewolfpanic", "_00WereSkeeverBeastRace")
        AddRaceID("Werewolfpanic", "_00DaedrothRace")
        AddRaceID("Werewolfpanic", "_00DramanBeastRace")
        AddRaceID("Werewolfpanic", "_00DwarvenPunisherRace")
        AddRaceID("Werewolfpanic", "_00WerewolfKingBeastRace")
EndFunction
Link to comment

 

Mayby I'm too stupid, but for what reason to create something above 'RaceKey' over this...

Any mod can add own race to RaceKey, isn't it?

Animations with different creatures? Even with CURRENT SexLab.

Just ANY bestiality mod might to do:

Example, Wolf-Boar-Dragon...

1. Fill array of animations for wolf (canines)

2. Fill array for Boar

3. Fill for Dragon.

4. Join matched animations - thats all you need!

 

Kind Regards.

 

i don't want to call you stupid (your much better at scripting then i am), but you are missing a bit of info...

for a creature race to be used by SexLab it needs to be registered or it wont be used at all.

 

Eg:

ScriptName MoreNastyCrittersFactory Extends sslAnimationFactory
import sslCreatureAnimationSlots
    String[] Dogs
    String[] Wolves
    String[] Canines
Function RegisterAnimations()
        AddRaceID("Dogs", "DwemmydograceIris")
        AddRaceID("Wolves", "00HyenaRace")
        AddRaceID("Wolves", "BoTHellhoundRace")
        AddRaceID("Canines", "DwemmydograceIris")
        AddRaceID("Canines", "00HyenaRace")
EndFunction

in this example if a animation is registered as "Dogs" then only "DwemmydograceIris" can use it,

if the animation is registered as "Wolves" then only "00HyenaRace" and "BoTHellhoundRace" can use it,

but however if the animation is registered as "Canines" then "DwemmydograceIris" and "00HyenaRace" can use it but "BoTHellhoundRace" cant, unless "AddRaceID("Canines", "BoTHellhoundRace")" is added to the list.

 

 

note: this is only a example, there are other things like FNIS lists, behavior files and SLAL json to take into account.

 

Really

MadMans, with

in this example if a animation is registered as for "Dogs" then not only "DwemmydograceIris" can use it,.

Not only "DwemmydograceIris" shares 'Dogs', contrary, all Dogs can can be used along with 'DwemmydograceIris'.

But if as it made in my "Animals and Followers":

    AddRaceID("Wolves", "vlkAF_CustomWolfRace")

    AddRaceID("Wolfpanic", "vlkAF_CustomWolfRace")

    AddRaceID("Wolves", "vlkAF_CustomDLC1DeathHoundRace")

    AddRaceID("Wolfpanic", "vlkAF_CustomDLC1DeathHoundRace")

    ClearRaceKey("affWolves")

    AddRaceID("affWolves", "vlkAF_CustomWolfRace")

    AddRaceID("affWolves", "vlkAF_CustomDLC1DeathHoundRace")

With this we have (still not updated to yours MNC v10+ ;), but) affWolves race keys CAN ONLY use caress aniamtions, i.e. not default Dogs/Wolwes, but ONLY my custom. No one else will see this aniamations.

First operators just add my race to play all available animations from SL, MNC, and above 'affWolves' are available only for MY critters.

 

Again, stupid me, but i'm trying. At my Russian i would be clearer, maybe. Sorry. ;)

 

Kind Regards

 

ADDED: quote

as "Dogs" then only "DwemmydograceIris" can use it,

You're going ('против шерсти') against wool?

Link to comment

.

 

i think you may have misinterpreted the example; in the example DwemmydograceIris is the only dog in all of skyrim.

 

in reality with both sexlab and MNC it looks more like this:

AddRaceID("Dogs", "DogRace")
AddRaceID("Dogs", "DogCompanionRace")
AddRaceID("Dogs", "MG07DogRace")
AddRaceID("Dogs", "DA03BarbasDogRace")
AddRaceID("Dogs", "DLC1HuskyArmoredCompanionRace")
AddRaceID("Dogs", "DLC1HuskyArmoredRace")
AddRaceID("Dogs", "DLC1HuskyBareCompanionRace")
AddRaceID("Dogs", "DLC1HuskyBareRace")
AddRaceID("Dogs", "DwemmydograceIris")
AddRaceID("Dogs", "AKDogDraugrRace")
AddRaceID("Wolves", "WolfRace")
AddRaceID("Wolves", "DLC1DeathHoundCompanionRace")
AddRaceID("Wolves", "DLC1DeathHoundRace")
AddRaceID("Wolves", "_00AspectRace")
AddRaceID("Wolves", "FoxRace")
AddRaceID("Wolves", "00HyenaRace")
AddRaceID("Wolves", "00DracoRace")
AddRaceID("Wolves", "I5KDraugrDogRace")
AddRaceID("Wolves", "00drakerace")
AddRaceID("Wolves", "mihailpoisondograce")
AddRaceID("Wolves", "SalamanderRACE")
AddRaceID("Wolves", "EQ145_Bonehound_attacks")
AddRaceID("Wolves", "BoTHellhoundRace")
AddRaceID("Canines", "DogRace")
AddRaceID("Canines", "DogCompanionRace")
AddRaceID("Canines", "MG07DogRace")
AddRaceID("Canines", "DA03BarbasDogRace")
AddRaceID("Canines", "DLC1HuskyArmoredCompanionRace")
AddRaceID("Canines", "DLC1HuskyArmoredRace")
AddRaceID("Canines", "DLC1HuskyBareCompanionRace")
AddRaceID("Canines", "DLC1HuskyBareRace")
AddRaceID("Canines", "DwemmydograceIris")
AddRaceID("Canines", "AKDogDraugrRace")
AddRaceID("Canines", "WolfRace")
AddRaceID("Canines", "DLC1DeathHoundCompanionRace")
AddRaceID("Canines", "DLC1DeathHoundRace")
AddRaceID("Canines", "_00AspectRace")
AddRaceID("Canines", "FoxRace")
AddRaceID("Canines", "00HyenaRace")
AddRaceID("Canines", "00DracoRace")
AddRaceID("Canines", "I5KDraugrDogRace")
AddRaceID("Canines", "00drakerace")
AddRaceID("Canines", "mihailpoisondograce")
AddRaceID("Canines", "SalamanderRACE")
AddRaceID("Canines", "EQ145_Bonehound_attacks")
AddRaceID("Canines", "BoTHellhoundRace")
Link to comment

 

.

 

i think you may have misinterpreted the example; in the example DwemmydograceIris is the only dog in all of skyrim.

 

in reality with both sexlab and MNC it looks more like this:

AddRaceID("Dogs", "DogRace")
AddRaceID("Dogs", "DogCompanionRace")
AddRaceID("Dogs", "MG07DogRace")
AddRaceID("Dogs", "DA03BarbasDogRace")
AddRaceID("Dogs", "DLC1HuskyArmoredCompanionRace")
AddRaceID("Dogs", "DLC1HuskyArmoredRace")
AddRaceID("Dogs", "DLC1HuskyBareCompanionRace")
AddRaceID("Dogs", "DLC1HuskyBareRace")
AddRaceID("Dogs", "DwemmydograceIris")
AddRaceID("Dogs", "AKDogDraugrRace")
AddRaceID("Wolves", "WolfRace")
AddRaceID("Wolves", "DLC1DeathHoundCompanionRace")
AddRaceID("Wolves", "DLC1DeathHoundRace")
AddRaceID("Wolves", "_00AspectRace")
AddRaceID("Wolves", "FoxRace")
AddRaceID("Wolves", "00HyenaRace")
AddRaceID("Wolves", "00DracoRace")
AddRaceID("Wolves", "I5KDraugrDogRace")
AddRaceID("Wolves", "00drakerace")
AddRaceID("Wolves", "mihailpoisondograce")
AddRaceID("Wolves", "SalamanderRACE")
AddRaceID("Wolves", "EQ145_Bonehound_attacks")
AddRaceID("Wolves", "BoTHellhoundRace")
AddRaceID("Canines", "DogRace")
AddRaceID("Canines", "DogCompanionRace")
AddRaceID("Canines", "MG07DogRace")
AddRaceID("Canines", "DA03BarbasDogRace")
AddRaceID("Canines", "DLC1HuskyArmoredCompanionRace")
AddRaceID("Canines", "DLC1HuskyArmoredRace")
AddRaceID("Canines", "DLC1HuskyBareCompanionRace")
AddRaceID("Canines", "DLC1HuskyBareRace")
AddRaceID("Canines", "DwemmydograceIris")
AddRaceID("Canines", "AKDogDraugrRace")
AddRaceID("Canines", "WolfRace")
AddRaceID("Canines", "DLC1DeathHoundCompanionRace")
AddRaceID("Canines", "DLC1DeathHoundRace")
AddRaceID("Canines", "_00AspectRace")
AddRaceID("Canines", "FoxRace")
AddRaceID("Canines", "00HyenaRace")
AddRaceID("Canines", "00DracoRace")
AddRaceID("Canines", "I5KDraugrDogRace")
AddRaceID("Canines", "00drakerace")
AddRaceID("Canines", "mihailpoisondograce")
AddRaceID("Canines", "SalamanderRACE")
AddRaceID("Canines", "EQ145_Bonehound_attacks")
AddRaceID("Canines", "BoTHellhoundRace")

Don't be preoccupied, i'm not guru. ;) Sometimes i'm stupid and wrong. It's life. I see no reason to be positioned as 'ideal'. I'm just man (Человече) ;)

All I want - 'секас для всех'

:) :) :)

We just trying to make something useful.

 

Kind Regards

 

 

Link to comment

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use