Thank you for visiting SotAwiki, a Shroud of the Avatar Wiki Encyclopedia. If you see any information that is outdated, please take the time to update it, or if you prefer, leave a message for other editors. This community wiki is for the benefit of all Avatars!

User:Winfield/Draft

From Shroud of the Avatar Wiki - SotA
Jump to navigation Jump to search

Potential Page Name: Community: Ink Events Crier script

Ink Programming - Conversational NPC Dialog[edit]

Events Crier[edit]

This script is designed to keep the NPC Owner as far away from the programming code as possible by using CONSTant variables to define up to five events in the NPC event listing.

Script[edit]

CONST c_AsOfDate = "Dec 7, 2021"

CONST c_NPC_Name = "Events Crier"
CONST c_NPC_Job = "Winfield hired me to be his Events Crier. Just ask me about EVENTS."
CONST c_NPC_Owner = "Winfield"
CONST c_NPC_ScriptVersion = "EventsCrier-1.0, Dec 7, 2021, Winfield"

// EVENTS - DEFINE YOUR EVENTS:

// Event 1:
CONST event_1_title =   "Lightbringer Isle Christmas Ball"
CONST event_1_keyword = "Christmas Ball"
CONST event_1_date =    "Dec 14"
CONST event_1_time =    "2 PM CT"
CONST event_1_loc =     "Lightbringer Isle"
CONST event_1_host =    ""
CONST event_1_desc =    "Hemnu Lightbringer and friends are hosting a wondrous 1st Annual Christmas Ball at Lightbringer Isle. Grab your party favors, and journey to this very well decorated Player-Owned Town on December 24th at 2PM CT. Feasting and festivities abound!"
CONST event_1_twitch = ""

// Event 2:
CONST event_2_title =   "New Years Eve Party"
CONST event_2_keyword = "Eve Party"
CONST event_2_date =    "Dec 31"
CONST event_2_time =    "10PM to midnight CT"
CONST event_2_loc =     "Jade Tavern in Jade Valley"
CONST event_2_host =    "Jade Dragons"
CONST event_2_desc =    "Head on over to the Jade Tavern in Jade Valley at 10PM to Midnight CT on December 31st to celebrate the New Year with friends, family, fireworks, and random prizes! This is the 7th Annual party they’ve hosted, so don’t miss out on this tradition! Music will be provided by DJ Alleine Dragonfyre from Virtue Radio."
CONST event_2_twitch = "AlleineDragonfyre"

// Event 3:
CONST event_3_title =   "PaxLair 24th Anniversary"
CONST event_3_keyword = "PaxLair"
CONST event_3_date =    "Jan 19, 2022"
CONST event_3_time =    "6 PM CT"
CONST event_3_loc =     "PaxLair at LOTI Castle"
CONST event_3_host =    "Winfield, Sean Silverfoot"
CONST event_3_desc =    "PaxLair is 24 years old! It was established Jan 19, 1998 in Ultima Online and created in SotA on April 30, 2015 as the first Player Owned Town. Come celebrate!"
CONST event_3_twitch =  "WinfieldPaxlair"

// Event 4:
CONST event_4_title =   ""
CONST event_4_keyword = ""
CONST event_4_date =    ""
CONST event_4_time =    ""
CONST event_4_loc =     ""
CONST event_4_host =    ""
CONST event_4_desc =    ""
CONST event_4_twitch =  ""

// Event 5:
CONST event_5_title =   "NBNN Live: Lunch with Laz and Jack"
CONST event_5_keyword = "NBNN"
CONST event_5_date =    "Mon-Fri"
CONST event_5_time =    "Noon NBT (CT US)"
CONST event_5_loc =     "Owl's Head (NBNN Lot, North housing inside walls)"
CONST event_5_host =    "Lazarus Long, Jack Sinassist"
CONST event_5_desc =    "Come listen to Laz and Jack as they interpret the Shroud News so you don't have to! Participate in prizes and games."
CONST event_5_twitch =  "NBNNnews, sinassist"

///////////////////////////
// YOU DO NOT NEED TO CHANGE ANYTHING BELOW THIS UNLESS:
//// You have more than 5 events, so you need to copy and paste more event functions to the structure below.
-> start

=== function event_1_listing ===
    {event_1_title: [{event_1_keyword}] -- {event_1_date} {event_1_time: at {event_1_time}}: {event_1_title} {event_1_loc: ({event_1_loc})} {event_1_twitch: - Twitch.tv/{event_1_twitch}}}
=== function event_1 ===
    {event_1_title}
    {event_1_date} at {event_1_time}
    At {event_1_loc}
    {event_1_host: Host is {event_1_host} }
    {event_1_desc}
    {event_1_twitch: twitch.tv/{event_1_twitch} }
        
=== function event_2_listing ===
    {event_2_title: [{event_2_keyword}] -- {event_2_date} {event_2_time: at {event_2_time}}: {event_2_title} {event_2_loc: ({event_2_loc})} {event_2_twitch: - Twitch.tv/{event_2_twitch}}}
=== function event_2 ===
    {event_2_title}
    {event_2_date} at {event_2_time}
    At {event_2_loc}
    {event_2_host: Host is {event_2_host} }
    {event_2_desc}
    {event_2_twitch: twitch.tv/{event_2_twitch} }
        
=== function event_3_listing ===
    {event_3_title: [{event_3_keyword}] -- {event_3_date} {event_3_time: at {event_3_time}}: {event_3_title} {event_3_loc: ({event_3_loc})} {event_3_twitch: - Twitch.tv/{event_3_twitch}}}
=== function event_3 ===
    {event_3_title}
    {event_3_date} at {event_3_time}
    At {event_3_loc}
    {event_3_host: Host is {event_3_host} }
    {event_3_desc}
    {event_3_twitch: twitch.tv/{event_3_twitch} }
        
=== function event_4_listing ===
    {event_4_title: [{event_4_keyword}] -- {event_4_date} {event_4_time: at {event_4_time}}: {event_4_title} {event_4_loc: ({event_4_loc})} {event_4_twitch: - Twitch.tv/{event_4_twitch}}}
=== function event_4 ===
    {event_4_title}
    {event_4_date} at {event_4_time}
    At {event_4_loc}
    {event_4_host: Host is {event_4_host} }
    {event_4_desc}
    {event_4_twitch: twitch.tv/{event_4_twitch} }
        
=== function event_5_listing ===
    {event_5_title: [{event_5_keyword}] -- {event_5_date} {event_5_time: at {event_5_time}}: {event_5_title} {event_5_loc: ({event_5_loc})} {event_5_twitch: - Twitch.tv/{event_5_twitch}}}
=== function event_5 ===
    {event_5_title}
    {event_5_date} at {event_5_time}
    At {event_5_loc}
    {event_5_host: Host is {event_5_host} }
    {event_5_desc}
    {event_5_twitch: twitch.tv/{event_5_twitch} }
        
// This is where things really start and you can customize things if you want:
== start
Welcome. {c_NPC_Job: {c_NPC_Job}} I can give you information I've heard around New Britannia.
My information is current as of {c_AsOfDate}.
-> main

// MAIN MENU
== main
    + Events
        -> events
    + BYE
        -> bye
    + NPC Info
    	-> npcinfo


// Main Branches:

== events
// Listings:
    HERE ARE MY EVENT LISTINGS:
    {event_1_listing()}
    {event_2_listing()}
    {event_3_listing()}
    {event_4_listing()}
    {event_5_listing()}

    -> keyword_options
    
    = keyword_options
    + ALL EVENT DETAILS
        -> ListAll_events
        
    * {event_1_title} \ {event_1_keyword}
        -> event_1_more
    * {event_2_title} \ {event_2_keyword}
        -> event_2_more
    * {event_3_title} \ {event_3_keyword}
        -> event_3_more
    * {event_4_title} \ {event_4_keyword}
        -> event_4_more
    * {event_5_title} \ {event_5_keyword}
        -> event_5_more
    + BACK to Main
        -> main
    + {event_1_more} ({event_1_keyword})
        -> event_1_more
    + {event_2_more} ({event_2_keyword})
        -> event_2_more
    + {event_3_more} ({event_3_keyword})
        -> event_3_more
    + {event_4_more} ({event_4_keyword})
        -> event_4_more
    + {event_5_more} ({event_5_keyword})
        -> event_5_more

    = event_1_more
        ~ event_1()
        -> keyword_options
    = event_2_more
        ~ event_2()
        -> keyword_options
    = event_3_more
        ~ event_3()
        -> keyword_options
    = event_4_more
        ~ event_4()
        -> keyword_options
    = event_5_more
        ~ event_5()
        -> keyword_options
        
// Full Listings with Descriptions
    = ListAll_events
        {event_1_title: 
            _
            ~ event_1()
        }
        {event_2_title: 
            _
            ~ event_2()
        }
        {event_3_title: 
            _
            ~ event_3()
        }
        {event_4_title: 
            _
            ~ event_4()
        }
        {event_5_title: 
            _
            ~ event_5()
        }
        + BACK to Events
            -> events
        + BACK to Main
            -> main

== npcinfo
I was updated {c_AsOfDate}. My owner is {c_NPC_Owner}. I am script version {c_NPC_ScriptVersion}. If you see inaccurate information or want more details, reach {c_NPC_Owner}.
	-> main
	
== bye
    Check back regularly for more event information. Take care!
    -> ending
== ending
    \* The crier listens for more information *
    -> END