Feature Specification: Portaling

Scripted ALFA systems & related tech discussions (ACR)

Moderators: ALFA Administrators, Staff - Technical

Locked
User avatar
ç i p h é r
Retired
Posts: 2904
Joined: Fri Oct 21, 2005 4:12 pm
Location: US Central (GMT - 6)

Feature Specification: Portaling

Post by ç i p h é r »

Portaling
Portaling as defined by the APM is detailed below. I'd like to see details that are missing filled in by our resident ACR experts.

For a short explanation of the feature specification format, visit:
http://www.alandfaraway.org/phpbbforum/ ... hp?t=27229

Functional Requirements
One of the items in a PC’s inventory will be a 'visa'. The appearance will vary from server to server, but they all stop a PC from (e.g.) logging out of Shadowdale and then directly into Waterdeep.

A PC with an invalid visa or no visa at all will be redirected at the new server to a Quarantine area. The only escape from Quarantine is with DM assistance. PCs who travel via legitimate 'border' area transitions, will have their visa for the departed server revoked during portalling and a visa for the new server issued and will not go to Q.

Tampering with a visa is prohibited. Players cannot sell, drop or trade visas. Attempts to do so will be written to the server log.

PCs will have two minutes to connect to a server before attempts to validate a visa expire. This is necessary to prevent endless or excessive looping. Such PCs will be rendered immobile upon eventual entry and DMs must be apprised of the situation on the DM channel.

There will be a global toggle to disable/enable visa checking. BETA servers do not require valid visas to connect, only Live servers do.

NWN Object Dependencies
Server Visa, Server Passport, Portaling Waypoints

Local Variables and External Configs
None

Logging and Debugging (global LOG & DEBUG (on/off) constants)
Connection Source, Connection Success, Connection Date/Time Stamp, Player Visa Removal Attempts (include PC Name, Public CD Key, GSID and Server)

Persistence Requirements
Current Server and Location

Event Dependencies
OnClientEnter, OnClientLeave, OnUnAcquireItem
Locked