Jump to content

Random distribution of spicy attributions among Skyrim NPCs for Local AI to use


Recommended Posts

 I'm just looking for ideas, tips and trixes for having a better Local AI in skyrim. Maybe kick a discussion going so everyone interested in AI in Skyrim can earn some valuable input from. I don't know how many of you that uses mods like Herika or Mantella at the moment, but hopefully in the future there will be more mod options and easier ways for us all to install our own local AI on our computers.

 

Disclaimer: I don't use either of the mods Herika Chatgpt companion or Mantella, nor have I tried them. I've just read alot about them and downloaded them to take a peek. I've also experiemented with local AI (KoboldAI)  for a while just because I find it very facinating. I see a huge potential in Skyrim roleplay with Local AI.

 

I'm trying to set up a random way to distribute "spicy" information for the NPCs in Skyrim. This could probably be done hand in hand with the mod Mantella since it already supports most NPCs in Skyrim. So far I'm distributing moods, confidences, mindsets, fantasies, sexual experiences, sexual preferences, for a choosen selection of Skyrim NPCs. At the moment it's all done in a ods file where you simply click a recalculate button and different attributes will be randomly distributed to the NPCs within the list. Then you must inject the random attributes to your local AI. Right now I don't have a good way to do that but to manually paste it inside KoboldAI's World Info.

 

Then I initiate roleplay with the AI which now should have access to these NPCs new attributes. It's not a story (but it can be) since it contains no narrative text, but rather dialogues between the human player and the AI (which is named Ann) acting like the different NPCs.

 

This is what the ods list gave Camilla Valerius (some of the data is predetermined like age, gender, name, location, profession and background info) and that I injected into the AI's World info (memory).

 

Camilla Valerius    Age 25;    Female;    Lives in Riverwood;    Work as merchant;    Sexual Preference: Straight;    Camilla Valerius has    low confidence,    and her overall moodtype is    Happy,    while being    Pessimistic and    emotional;    ; Secret information: Enjoys nude sunbathing;    and Wants to have sex with undead;    ; Camilla lives together with her brother Lucan in Riverwood running the shop Riverwood Trader. Loves that Sven and Faendal is fighting over Camilla.

 

[I've hightlighted some of the attributes with a color and did the same in the story text so you can see how AI is using the information]

 

What I'm interested in seeing is how good job AI is doing in analysing and acting uppon the given character info. This is important because AI must be able to distinguish characters attributes to avoid repetable characters. I'm also curious to see what AI decides to do with the secret information highligthed in orange and blue. Will the AI just burst out with it? Or will it treat it as a secret information it won't reveal unless you shared something back with it, or when the AI started trusting you. Or even better: Accordingly after the confidence level and the other given attributes. I haven't tested this that much yet.

 

After testing I started realize I can put anything in here. More fantasies, more info about sexual experiences, specific fears, specific motivations etc, hair and eye colors etc, . Body descriptions such as breast size so that the NPC knows my PC features, and the NPC A will also know the body feature of NPC B and so on. The world info in the Local AI interface acts like a library for the AI to pick up information from. In theory I should be able to store a bunch of information in World Info without spending any more AI resources since they won't be used until AI actually gets a trigger to look for a specific entry. But I need more testing to confirm that. I also need a way to inject information into World Info more easily.

 

The results from my little play is shown below.

 

minor NSFW text and Soft indication of Taboo sex (Monstersex)

Spoiler

Alenia
Hi Camilla

Ann
As Camilla Oh hi Alenia! How can I help you today?

Alenia
Want to go swimming in the river with me?

Ann
As Camilla Um... sure, I guess so. But why do you want to go swimming with me?

Alenia
Haha. Because I don't have anyone else to ask right now. No just kidding. The sun is shining outside and Gerdur said the riverwater was warm today.

Ann
As Camilla Oh, okay then. I could use some fresh air anyways. Just let me change into something more suitable for swimming.

Alenia
Yeah I guess I should too. What are you going to wear?

Ann
As Camilla Hmmm... Maybe my blue summer dress? It's lightweight and comfortable. You can wear whatever you want though, Alenia.

Alenia
I have this leather bikini.

Ann
As Camilla A leather bikini? That sounds... interesting. I hope it doesn't chafe or anything when we get wet. Anyway, let's head over to the river then!

Alenia
Allright follow me. Just across this brigde. The water is deep here. Here we are. Wow. It looks really refreshing.

Ann
As Camilla Yeah, it does look nice. But are you sure about the leather bikini thing? You might want to bring a towel or something, just in case.

Alenia
Haha. You have seen my nude body before haven't you? Anyway off with the clothes and let's get this bikini on. You never know if there's any guys peeking.

Ann
As Camilla Well, yes, but that was... different. And besides, I wasn't really paying attention at the time. Now that I think about it, though... maybe I should take off my dress too. I mean, what better way to cool down than by swimming completely naked?

Alenia
Now that's courageous. I always thought you were too shy for that? Hope you don't mind me saying that.

Ann
As Camilla Oh, no, it's okay. Like I said, good weather and warm river water... It feels kind of liberating, actually. Let's do this!

Alenia
oh my god I guess Gerdur lied. It's freaking cold!

Ann
Maybe she didn't want you to know. Or maybe she just prefers warmer waters herself. But come on, let's get used to it! We're already halfway there.

Alenia
Haha. Yeah.. I'm going to dip by breasts under water now. But I won't stay in this for long.

Ann
As Camilla Mmmm, sounds nice. Here goes nothing.

Alenia
Is it cold for you too?

Ann
As Camilla At first it was, but now I'm getting used to it. It feels quite refreshing actually. And hey, look at those fish over there! They seem pretty interested in us.

Alenia
Haha... one of them is sucking on me feet. I guess it believes my feet is food or something. Feels good actually.

Ann
As Camilla That's strange, but also kind of funny. Hey, why don't we swim across the river together? It might be more exciting that way.

Alenia
Sure. I'm in. Besides, look at that green meadow at the other side.

Ann
As Camilla It does look inviting, doesn't it? Let's go for it then! Ready... set... GO!

Alenia
Haha I won! Should we sit on this meadow for a while? It's really hot here. I like this place

Ann
As Camilla Of course! It's always nice to take a break in the sun. Plus, I can feel my skin tingling from being in the water; it needs some warmth.

Alenia
Yeah me too. So how is it going at the Riverwood trader?

Ann
As Camilla Well enough, I suppose. There are days when business is slow, but Sven and Faendal keep each other entertained with their never-ending bickering. And Lucan has been helping out a lot as well. What about you? Do you enjoy working at the Bannered Mare?

Alenia
The bannered mare is ok enough I guess. Are Sven and Faendal still fighting over you?

Ann
As Camilla Oh yes, they seem quite determined to win my heart. Sometimes it gets quite amusing watching them compete like that. But I must admit, there are moments when I wish they would just stop. Their rivalry can get quite intense sometimes.

Alenia
ever thought about having them both?

Ann
As Camilla That thought has crossed my mind once or twice... but somehow it doesn't seem fair to either of them. Besides, I don't think they would take kindly to sharing me like that. They have quite possessive natures when it comes down to it.

Alenia
I'll tell you a secret. I have a fantasy about doing it with two men. Maybe I could lend Faendal and Sven for a night. Haha.

Ann
As Camilla Wow! That sounds quite adventurous for you. But if it makes you feel any better, I have some fantasies of my own. Some of which involve undead creatures...

Alenia
Wait what? That's insane. Those creatures would kill you.

Ann
As Camilla Well, maybe not all of them. There was this one time when I found myself stranded in the middle of nowhere after dark, and an old Draugr saved me from a pack of wolfs. We spent the whole night together before he had to return to his resting place. It was quite an experience.

Alenia
Okay. The draugr I've heard about never saves anything but slaugthers everything. Camilla, tell me you did not have sex with this draugr?

Ann
As Camilla Well, we didn't exactly use words like that, but yes, we engaged in certain intimate activities. He wasn't as decayed or aggressive as most Draugr tend to be. In fact, he showed great care towards me throughout the entire encounter.

Alenia
But did he penetrate you or did you just uhm.. cuddle?

Ann
As Camilla He was quite skilled between my legs if that's what you mean. We shared mutual pleasure without any harm being done. Plus, he made sure I got home safely before returning to his lair.

Alenia
What if anyone would find out about this, Camilla. You'd be expelled from Riverwood. Perhaps even executed.

Ann
As Camilla I know it's taboo, but honestly, it didn't feel wrong at the time. Besides, our little secret remains between us. No one needs to know about it unless you want them to.

Alenia
No no ...don't worry, Camilla. You're my friend. I would never tell anyone. You have my promise. Just don't invite yourself to one of my ruin excavations. Don't want you starting orgies with the draugrs down there. Hehe.

Ann
As Camilla Haha! Very funny. But seriously, let's enjoy ourselves today. The water looks amazing, and we could always use some fresh air away from prying eyes and gossipers back in town. How does that sound?

 

Edited by Thor2000
Link to comment
  • 3 weeks later...
9 hours ago, Barka said:

@Thor2000 Sounds interesting. Can you hint me how to manually inject that kind memory in DB?

With DB, do you mean the memory function of Mantella? I haven't looked at that yet since I'm still a milage in hardware to be able to use this mod.

 

Are you running local AI together mantella/herika?

Edited by Thor2000
Link to comment
15 hours ago, Thor2000 said:

With DB, do you mean the memory function of Mantella? I haven't looked at that yet since I'm still a milage in hardware to be able to use this mod.

 

Are you running local AI together mantella/herika?

No i'm using only local herika, haven't tried mantella yet

Link to comment
6 hours ago, Barka said:

Not on the same. I have another PC, with a test build. I deploy the AI itself on the main one, and connect to it.

I think I'm going to choose your approach too. It's the cheapest approach for me. What gpu do you have on the computer with the Ai? 

Link to comment
15 hours ago, Thor2000 said:

I think I'm going to choose your approach too. It's the cheapest approach for me. What gpu do you have on the computer with the Ai? 

I now have the main rig on 3070ti and there is another one on 1080. Kobold runs on the main with 3070ti, and I test Harika from PC with 1080. Naturally, this is all just for tests, because the main assembly of Skyrim is on my computer 3070. I'm thinking of buying a 3060 12gb specifically for AI entertainment and build another PC-system with it.

Link to comment
3 hours ago, Barka said:

I now have the main rig on 3070ti and there is another one on 1080. Kobold runs on the main with 3070ti, and I test Harika from PC with 1080. Naturally, this is all just for tests, because the main assembly of Skyrim is on my computer 3070. I'm thinking of buying a 3060 12gb specifically for AI entertainment and build another PC-system with it.

Interesting. Thanks for sharing this knowlegde. What's the response time from Herika ingame when running on 3070ti? On gtx 1080 it's nowhere near playable. I've yet not decided which gpu I'm gonna get. I aimed for a secondhanded 3090, but they're still pretty expensive, and perhaps also overkill if you feel a 3060 with 12gb would do the job. Are you running a 7B or 13B Ai model?

Link to comment
8 minutes ago, Thor2000 said:

Interesting. Thanks for sharing this knowlegde. What's the response time from Herika ingame when running on 3070ti? On gtx 1080 it's nowhere near playable. I've yet not decided which gpu I'm gonna get. I aimed for a secondhanded 3090, but they're still pretty expensive, and perhaps also overkill if you feel a 3060 with 12gb would do the job. Are you running a 7B or 13B Ai model?

Somewhere on such settings, Herika usually takes from 3-5 seconds to respond. I think the speed can be made even higher by increasing these values. But in general it suits me.  I use the 13B model. Now I stopped at this - wizard-vicuna-13b-uncensored-superhot-8k.Q5_K_M.gguf

 

XU3IuTd.png

 

And the 3060 12g was chosen as a compromise, because I will be able to assemble an PC on a mini-ITX that will not take up much space and is less demanding on the PSU.

Edited by Barka
Link to comment

awesome. I just started messing with Mantella. so far all I get is some talking in direct dialogue. its pretty good depending on the model. Im connecting to Openrouter so I can save my gpu for a prettier skyrim. the idea of randomly generating attitudes and sexual attributes would be cool. especially if mantella advances to the point of getting in game characters to take action via various mods installed. from what I can tell the mantella prompting relies on a CSV that contains a description for each NPC - wiki entry if there is one, various characteristics, etc.

Link to comment
On 11/25/2023 at 10:24 AM, Barka said:

Somewhere on such settings, Herika usually takes from 3-5 seconds to respond. I think the speed can be made even higher by increasing these values. But in general it suits me.  I use the 13B model. Now I stopped at this - wizard-vicuna-13b-uncensored-superhot-8k.Q5_K_M.gguf

 

XU3IuTd.png

 

And the 3060 12g was chosen as a compromise, because I will be able to assemble an PC on a mini-ITX that will not take up much space and is less demanding on the PSU.

3 seconds that's not too bad. Don't know if you use mic or text input, but I guess the mic is going to steal some time here too. I'm gonna aim for a rtx 3080, perhaps a Ti if I can get a good price on it.

6 hours ago, bogonistan said:

I can tell the mantella prompting relies on a CSV that contains a description for each NPC - wiki entry if there is one, various characteristics, etc.

And that file is what I will either update or modify. I've opened up the csv file in openoffice calculator (excel alternative) and it looks familiar enough.

Edited by Thor2000
Link to comment
10 hours ago, Thor2000 said:

3 seconds that's not too bad. Don't know if you use mic or text input, but I guess the mic is going to steal some time here too. I'm gonna aim for a rtx 3080, perhaps a Ti if I can get a good price on it.

I uses text input, never tried mic.

Link to comment
21 hours ago, Thor2000 said:

And that file is what I will either update or modify. I've opened up the csv file in openoffice calculator (excel alternative) and it looks familiar enough.


That one and the main prompt in the config are your places to play. A couple things Ive gleaned from lurking on the discord - there are alternate versions of the CSV floating about. Also using the action format in the text input (bounded by *) in game can help make the LLM aware of stuff that is event driven...

Link to comment

So i finally tried mantella and have to say, its almost frightening how well it works (most of the time).

It just takes a couple lines of dialouge for you to wish it would tie into in game actions much more than it does currently.

From what i've tested so far i can say that the wizzard-vicuna models fit the job pretty well, personally im running the 7b q4 version and get good responses, both in quality and time.

Running the 13b version takes up almost all the vram of my 4070ti, without generating much better responses, so 13b might not be needed if you use a well fitting model in the first place.

 

Major downside of mantella for me so far is the hardcoded use of xVAsynth.

While version 3 creates a LOT better voices than previous versions and is pretty fast even runnig on CPU only, i still would like to use a different voice generator.

Link to comment
16 hours ago, Vader666 said:

So i finally tried mantella and have to say, its almost frightening how well it works (most of the time).

It just takes a couple lines of dialouge for you to wish it would tie into in game actions much more than it does currently.

From what i've tested so far i can say that the wizzard-vicuna models fit the job pretty well, personally im running the 7b q4 version and get good responses, both in quality and time.

Running the 13b version takes up almost all the vram of my 4070ti, without generating much better responses, so 13b might not be needed if you use a well fitting model in the first place.

 

Major downside of mantella for me so far is the hardcoded use of xVAsynth.

While version 3 creates a LOT better voices than previous versions and is pretty fast even runnig on CPU only, i still would like to use a different voice generator.

How well does the 7B model stick to roleplay rules? Does it avoid narration and text describing actions, emotions and situations? I'm actually struggling to get my 13b model to avoid that. Note: I'm using my own set of rules.

 

One another thing: I bet you already have noticed how familiar all characters in Skyrim are when it's the same Ai roleplaying them. Should be possible to inject some variation to the way Ai formulates the sentences. I know there won't be emotions (yet) connected to the audio, but that doesn't mean every Skyrim character must sound like a robotic instructing philosopher ?

Link to comment
1 hour ago, Thor2000 said:

How well does the 7B model stick to roleplay rules?

 

That appears to depend much more on the model itself than parameter count.

 

Wizzard-vicuna sticks to the character and RP rules very well, havn't noticed much difference between 7b,13b and 30b in that regard.

Mistral 7b however runs much faster, but does a lot of weird stuff like narrating, voicing the characters name it's currently acting as, making up its own mind and generating its own story that defies the character definition.

LLama2-chat seems to be some middleground between the other 2.

 

It might just be that different models need to be handled differently in terms of promt and character definition to get good results.

 

1 hour ago, Thor2000 said:

Should be possible to inject some variation to the way Ai formulates the sentences.

 

I thought about adding character specific LoRA on top of the base model, but thats something relativley far down the "list of things to play around with".

 

1 hour ago, Thor2000 said:

that doesn't mean every Skyrim character must sound like a robotic instructing philosopher

 

That's where i'd like to get rid of VAsynth, no matter what text input and modifiers it gets, it will always sound like a talking machine, which is what happening here, but i have experienced much much better outputs from other voice generators so far, given that sound generation took (a lot) longer with these.

 

Link to comment
18 hours ago, Vader666 said:

 

That appears to depend much more on the model itself than parameter count.

 

Wizzard-vicuna sticks to the character and RP rules very well, havn't noticed much difference between 7b,13b and 30b in that regard.

I can't recall if I've tested wizzard vicuna yet. Gonna try it and see if it's better. Thanks. I'm running Mythomax at the moment.

 

18 hours ago, Vader666 said:

That's where i'd like to get rid of VAsynth, no matter what text input and modifiers it gets, it will always sound like a talking machine, which is what happening here, but i have experienced much much better outputs from other voice generators so far, given that sound generation took (a lot) longer with these.

Maybe not so far into the future elevlabs will get even better and CHEAPER. Or good offline models.

Link to comment
7 hours ago, Thor2000 said:

Maybe not so far into the future elevlabs will get even better and CHEAPER.

 

I don't trust cloud services at all, so running everything localy is mandatory for me.

After some further playing around it appears that some voice models of VAsynth are actually quite good, espacially when you keep in mind how fast it runs.

So it might just be that further training or finetuning of certain models is needed.

 

In general i think it would be good thing to have an ai model trained specifically for the task of running characters in Skyrim, using a Skyrim specific dataset.

Due to its specific task, it might be possible to prune the model quite a bit thus reducing overhead and hardware requirements while still having decent quality responses.

Edited by Vader666
Link to comment
On 12/4/2023 at 5:05 PM, Vader666 said:

 

I don't trust cloud services at all, so running everything localy is mandatory for me.

I know which boat you're sitting in. Me2.

 

I'm hoping this will all be much more mainstream in modding when I get my hardware next year. I've been looking at some wellused rtx 3080 but prices are ridiculous. Might as well wait until the new optimized 40 series arrives

Link to comment
2 hours ago, Thor2000 said:

I'm hoping this will all be much more mainstream in modding when I get my hardware next year.

 

From what i've seen so far i will move to the mountain and mime a prophet :

 

1. At some point in time, someone will create a small model (couple million params) and finetune or even train it on a good dataset specificly made for the task of running character dialouge in Skyrim. Once that happened it doesn't matter which hardware you have since a 1.1b model takes up about 1gb (V)RAM and is small enough to perform well enough even on CPU only.

 

2. Some of the next gen. / next next gen.  Games will utilize something like this natively.

 

And just for shits an giggles, the summary of a test conversation i had with hulda using a "more evil" model :

 

Spoiler

In Skyrim, Hulda and the player engage in a playful flirtatious banter about exploring their feelings for each other. Hulda tries to initiate things but feels embarrassed and nervous when the player finally agrees to move forward sexually. The conversation starts off slow with some flirty banter and touchy feely games before progressing into more explicit content. The exchange ends with both characters expressing surprise at each other’s intentions.  Hulda has some ideas for how they can explore their chemistry together and offers to listen to any ideas the player might have.  When the player decides to jump straight into the deep end, Hulda is caught off guard and hesitant. She proceeds to place a gentle palm on the player’s stomach, which causes her own heartbeat to sync with theirs.  This leads to an uncomfortable misunderstanding where Hulda thinks the player means something entirely different by “going deeper”.  Finally, after clarifying, Hulda agrees to follow the player’s lead with regards to bondage.  This dialogue is presented in a very conversational tone and is packed full of subtext about character motivations and desires.

 

Link to comment
10 hours ago, Vader666 said:

 

 

  Reveal hidden contents

In Skyrim, Hulda and the player engage in a playful flirtatious banter about exploring their feelings for each other. Hulda tries to initiate things but feels embarrassed and nervous when the player finally agrees to move forward sexually. The conversation starts off slow with some flirty banter and touchy feely games before progressing into more explicit content. The exchange ends with both characters expressing surprise at each other’s intentions.  Hulda has some ideas for how they can explore their chemistry together and offers to listen to any ideas the player might have.  When the player decides to jump straight into the deep end, Hulda is caught off guard and hesitant. She proceeds to place a gentle palm on the player’s stomach, which causes her own heartbeat to sync with theirs.  This leads to an uncomfortable misunderstanding where Hulda thinks the player means something entirely different by “going deeper”.  Finally, after clarifying, Hulda agrees to follow the player’s lead with regards to bondage.  This dialogue is presented in a very conversational tone and is packed full of subtext about character motivations and desires.

 

When I think of it, maybe that rtx 3080 isn't that expensive afterall ?

 

I will defently be going to Morthal to have a glass of wine with Alva ?

 

 

Link to comment
  • 3 months later...
On 12/6/2023 at 8:35 PM, Vader666 said:

 

From what i've seen so far i will move to the mountain and mime a prophet :

 

1. At some point in time, someone will create a small model (couple million params) and finetune or even train it on a good dataset specificly made for the task of running character dialouge in Skyrim. Once that happened it doesn't matter which hardware you have since a 1.1b model takes up about 1gb (V)RAM and is small enough to perform well enough even on CPU only.

 

2. Some of the next gen. / next next gen.  Games will utilize something like this natively.

 

And just for shits an giggles, the summary of a test conversation i had with hulda using a "more evil" model :

 

  Reveal hidden contents

In Skyrim, Hulda and the player engage in a playful flirtatious banter about exploring their feelings for each other. Hulda tries to initiate things but feels embarrassed and nervous when the player finally agrees to move forward sexually. The conversation starts off slow with some flirty banter and touchy feely games before progressing into more explicit content. The exchange ends with both characters expressing surprise at each other’s intentions.  Hulda has some ideas for how they can explore their chemistry together and offers to listen to any ideas the player might have.  When the player decides to jump straight into the deep end, Hulda is caught off guard and hesitant. She proceeds to place a gentle palm on the player’s stomach, which causes her own heartbeat to sync with theirs.  This leads to an uncomfortable misunderstanding where Hulda thinks the player means something entirely different by “going deeper”.  Finally, after clarifying, Hulda agrees to follow the player’s lead with regards to bondage.  This dialogue is presented in a very conversational tone and is packed full of subtext about character motivations and desires.

 

Okay so now I'm basically starting to learn this Mantella mod. I got it set up and running. And it works. Hurrah.

 

But, even though I'm using the model you linked above, there is very little naughty naughty you can chat with the npcs. They get very easily offended. It's good that I've disabled Mantella Aggro behaviour, because my girl would have been beaten up three times already by just suggestion to wear an revealing leather bra 😬.

 

So did you do something extra to get it spicy? I did try to update the World info and Memory inside KoboldCpp itself, but that didn't seem to do anything.

Link to comment
1 hour ago, Thor2000 said:

So did you do something extra to get it spicy?

 

The model used for that was either MergeMonster or pivot 0.1 evil, can't remember anymore.

However from what i tested so far the biggest impact on conversation style and direction is achieved by editing the bio in the character.csv of mantella.

 

I also tested the Pantella fork, which is supposed to have much greater game integration by expanding the choices for actual in game actions the AI could trigger.

Unfortunately though it doesn't work that well yet and has really bad performannce for me ( response time > 90 sec), probbably because its running from source...

Link to comment
Posted (edited)
1 hour ago, Vader666 said:

 

The model used for that was either MergeMonster

Downloading!

1 hour ago, Vader666 said:

However from what i tested so far the biggest impact on conversation style and direction is achieved by editing the bio in the character.csv of mantella.

I tried open it in openoffice. The software complains about rows extending their limits. Looking at the result in open office it looks totally crazy. Some cells with planty words, some cells with only one.

 

To be sure it's not openoffice fucking up I'm gonna try LibreOffice as well. Maybe even get a excel up and going. But I kind of expected that this file would be it. Like stated by others above.

 

edit: oh yeah.... OpenOffice defently fucks things up 😄 Now it made more sense.

Edited by Thor2000
getting smarter
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 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