TUTORIAL - Simple Phone "Invite To" Interaction (Patreon)
Downloads
Content
I've been asked to make this tutorial, this is going to be simple because we'll not need to touch many things. If you want to customise it more than I'll do it, then you'll need to open also the "continuations" and very likely edit the situation too, but for the purpose of this mod that is unnecessary.
We want to create a meet up app that allows to pick any Sim in world.
As you know, the "Invite To" interaction in game only works AFTER you've meet those Sims, we'll remove that restriction and make ours a stand-alone interaction.
We're going to start from the closest thing in game to what we want to achieve, which is the phone_Picker_InviteTo_NEW interaction I was talking about above. Open Sims4Studio and go under Tool -> Create empty package. Name your package and go once again under tool -> export tuning. Write the name of the interaction in the text box, select it and add it to your package:
Let's see what's in this interaction and what we need to change.
This interaction pushes a continuation we will NOT need to change in this mod, but that's what I was talking about before.
We surely want to change the interaction display name to a name of our liking:
We need to change the filter, this is the most important part of our mod.
Let's start from changing the name and giving it an unique key, write it down
Then go back under Tool -> Hash Generator, paste the new display name of the interaction in the text box and pick the number it gives you:
Change the number in the interaction to the new number, leaving the 0x in front of it:
We'll later add this into a String Table
Now the filter, this is what will change our interaction behaviour:
Let's import it into our package and look at it:
We will not need to change the blacklist in the beginning unless we want our picker to include the Sims listed there like the Grim Reaper:
What we need to change it the relationship bit test because that's what's blocking the picker from listing all the Sims you've not met yet.
I also what to change the min age of the sims that will be listed there to TEEN, you can change it to CHILD, YOUNGADULT or whatever you want, or leave it be.
Let's start by removing the relbit restriction, you can collapse entire sections of the XML with the - and expand them with the +, I suggest using this function to delete entire parts of the tuning.
Collapse and select this part of the filter than press Backspace to delete it all:
Now for the age, I just want to write TEEN in place of TODDLER:
So my interaction will only display Sims from Teen up
Last thing I want to do is restrict it to Humans, otherwise it will list also pets...
There is already a test in this filter:
This basically is to exclude FOXES from the picker, that's not what I want, I want it to pick only humans. (invert_score means that instead of filtering only foxes, the test filter everyone isn't a fox)
So I want my interaction to filter all the humans and humans alone, I'll set the invert_score to false (you can also delete it)
And I'll write HUMAN in place of FOX.
So far I've been editing Maxis tuning though:
I don't want my interaction to override Maxis so I need to make it stand-alone.
I can do it by switching to the DATA tab of the two XML and changing the name, write a name you want with you modder name and : in front of it, for example Tutorial:filter_TravelPicker , by doing so and clicking on the white, Sims4Studio will automatically give your interaction a new instance and TunindID
Do the same for the interaction and you will have something new that overrides nothing from Maxis
Now, our interaction doesn't know the tuningID or our new filter so we need to change it:
Open the local tuning at the bottom to find all the tuning currently in your package and look for the filter you edited:
Replace it in the interaction. We don't need to make other changes.
We cannot yet load the game though, because without a snippet our interaction will not appear on the phone. Download the template attached to this post and select "batch import", find the file on your PC and add it to your package:
You'll find yourself in front of this:
Go on the Data tab to change the name like you did for the other XML
Now change the interaction in the tuning with yours:
Time to add a String Table or our display name will not appear:
Scroll to find String Table, you need a new instance number for it from the hash generator:
Click OK to create it and then go to Edit to add lines into it, we want to add our display name:
Change the Locale to ENGLISH
The interaction is done, it's time to test it in game, don't forget to load the game with the XML Injector installed:
Here it is let's see if it works like I wanted:
As you see it's listing all the Sims in game from Teen up either that I've meet them or not! Let's see if inviting some of them at the park works:
And... it does but no one was happy about it!
VARIATIONS:
- Changing the Relbit filter to this will only list sims you have not yet met:
This will only allow you to invite cats:
This will only allow you to invite the Grim Reaper:
If you remove him from here... I don't know why he's blacklisted twice!
Anyway, this is to say... you can play with it as much as you want!