External functions
These are Ink external functions. You call them with a tilde line:
~ SetStoryFlag("met_alex")
~ InstallApp("thegram")
You do not need to declare EXTERNAL … at the top of the file. Sexter strips old platform declarations and injects the real list at compile time. Harmless if you leave an old header in; fine if you omit it.
Apps
~ InstallApp("thegram")
~ UninstallApp("thegram")
Valid ids: injector, mictap, thegram, skipr, swiper, fansonly, contacts, sidedoor.
Modules also need to be enabled in Studio. If Show from start is off, InstallApp is what reveals the icon (or Side Door UI). mictap has no home icon; it only gates MIC TAP tags. See InstallApp and modules.
UninstallApp undoes an InstallApp. It does not hide a module that is set to show from start.
Profile and contacts
~ ChangeProfilePic("alex", "alex-new-avatar")
~ SetContactDescription("alex", "Contact blocked")
~ SetContactPersonality("alex", "Cold today")
~ SetContactHistory("alex", "Met at the party")
These override this player's view. They do not edit the character row for everyone else. Avatars update chat header, contact list, typing indicator, group bubbles.
Old fake tags like <profilepic-whapp-…> do nothing at runtime. Use ChangeProfilePic. Studio warns and the importer rewrites what it can.
Group chats
~ RenameGroupchat("Disaster Squad")
Only works in the current group conversation. Empty string clears back to the default "Alice, Bob, …" style title.
Flags and numbers
~ SetStoryFlag("ntr_route")
~ RemoveStoryFlag("ntr_route")
~ SetStoryNumber("cash", 50)
~ AddStoryNumber("cash", -10)
Reading them in Ink conditionals:
{
- GetStoryFlag("ntr_route"):
You went there.
-> ntr_branch
- else:
You kept it clean.
-> soft_branch
}
{ GetStoryNumber("cash") >= 20:
* Tip her
~ AddStoryNumber("cash", -20)
-> tipped
}
Flags and numbers persist across chapters and across Whapp / side conv / module DMs. More: Flags and numbers.
Social counters
~ AddTheGramFollowers("alex", 150)
~ AddFansOnlyFollowers("maya", 20)
Bump the displayed count for this player. Call alone on a ~ line (not inside a tricky lookahead). Match TheGram by username; FansOnly by username or uniqueId.
Transitions
~ ShowCustomTransition("Chapter 2", "The morning after")
Fullscreen title card before the next chat beats play.
Time helpers (read-only)
These return real-world clock values on the server (useful for flavor), not the fictional phone clock:
RealHour(),RealMinute(),RealDayOfWeek()IsWeekend(),IsNight(),TimeOfDay()
For story time jumps in the chat UI, use <pass-time-N> instead.
Dead / legacy
| Call | Reality on Sexter |
|---|---|
~ RunCommand("…") | No-op, except old install-injector which Studio wants rewritten to InstallApp("injector") |
~ GetPongResult("…") | Stub, always declined. Unity leftover |
If Studio complains about an unknown RunCommand, delete it or replace it with a real Sexter call.
