
TWS Structures

This information file is copyright (C) 1996 BBS Consultants, Inc., all
rights reserved.  Distribution to any party who is not a legitimate license
holder for The Wild Side! is prohibited without the written permission of
the author.

NOTE:  This information is provided in the event that license holders
need to manually manipulate or correct The Wild Side! databases with
dBASE or another third party product.  It is also provided for the
benefit of persons who wish to create programs which act on these
databases.  Please note, however, that the structures are subject to
change without notice.  Further note that the author WILL NOT RESPOND
to questions about the structures, the purpose or potential values
of any field, etc.  Use this information at your own risk!




GENERAL NOTES

Player names (aliases), user comments, item names, etc. are ALWAYS in
UPPER CASE unless otherwise specifically noted or observed in the
databases.

There are many cases where the various databases are linked by common
fields.  Further, some things (like room numbers) are actually record
number references.  YOU CANNOT JUST DELETE RECORDS OR CHANGE INFORMATION
WITHOUT CORRECTING THE REFERENCES WHICH MIGHT BE IN OTHER DATABASES.
Study the databases and their fields VERY CAREFULLY before arbitrarily
making changes and/or deletions, as you will likely strand things
if you're not careful.




MAP.DBF        Map Database

Record number is room number in this database.

NORTH          N    4    Room number to vector to (0 if none)
SOUTH          N    4    "
EAST           N    4    "
WEST           N    4    "
SPECIAL        N    2    Special tool or item in this room
                         0 = None, 1 = Phone, 2 = Vector, 3 = Lube,
                         4 = Shower, 5 = Fridge
NAME           C    20   Name of the area
UP             N    4    Room number to vector to (0 if none)
DOWN           N    4    "
CREATOR        C    15   Alias of user who created room (blank if system)
SEXTIMES       N    4    Number of times people have had sex in this room
                         since last reset




ITEMS.DBF      Item Database

ITEMSP.NDX          Index on PLAYER
ITEMSR.NDX          Index on ROOM

PLAYER         C    15   Player alias (blank if in room)
INAME          C    20   Item name
ROOM           N    4    Room item is in (blank if player has it)
MATCH          C    1    Match factor for offensive/defensive
                         Non-unique code to match an offensive item
                         to its matching defensive item
                         Usually a single CAPITAL LETTER
TYPE           N    1    Type of item (0 = offensive, 1 = defensive)
STRENGTH       N    2    Strength of item (usually 1 to 10)




PLAYERS.DBF    Player Database

PLAYREAL.NDX        Index on REAL
PLAYPLAY.NDX        Index on PLAYER
PLAYROOM.NDX        Index on ROOM
PLAYPTS.NDX         Index on POINTS

REAL           C    30   Player's real name (system name)
                         "@SHILL" (case sensitive) if shill player
PLAYER         C    15   Player's alias
LASTPLAY       D    8    Date player last played
MOVES          N    4    Moves taken by player today
RESIST         N    3    Resistence of player (< 0 = recovering)
POINTS         N    8    Point total of player
TOTAL          N    3    Number of encounters
WILLING        C    45   String to send when willing to have sex
UNWILLING      C    45   String to send when unwilling to have sex
GENDER         C    1    Gender:  M = Male, F = Female
PREFER         C    1    Preference:  G = Gay, S = Straight, B = Bi
                         (Lesbian choice, L, is translated to G when
                         when stored)
ROOM           N    4    Room player is in currently
ONLINE         N    1    Online?  0 = No, 1 = Yes
PROTECT        N    1    Protection?  0 = No, 1 = Yes
AROUSE         N    1    In arousal?  0 = No, 1 = Yes
LUBE           N    1    Possess lube?  0 = No, 1 = Yes
AROUSER        C    15   Alias of user they're in arousal with
                         (not cleared when arousal is over with)
CHAT           N    1    In chat?  0 = No, 1 = Yes
IUSER          N    5    IUSERBOX record last read offset
SPECIALS       C    10   Holds information about specials (non-lube)
                         currently used for fridge and shower only
                         "4" is in this field if showered
                         "5" is in this field if fridge
                         order of appearance doesn't matter
                         padded with blanks
COMPAT         C    4    Sexual compatibility data, currently used
                         for top/bottom and oral active/passive
                         preferences
                         First position holds top/bottom preference
                         Second position holds oral preference
                         A = Active, P = Passive, D = Don't Like, E = Either




SYSTEM.DBF     System Configuration Database

TOPCLEAN       N    2    Month of last top of month clear
CARRIAGE       N    2    Number of items a player can carry
RATIO          N    3    Ratio of items to rooms (this is the number of
                         items per room, average)
MOVES          N    4    Moves per day allowed
EXPER          N    3    Encounters required for experienced level (25%)
STUD           N    3    Encounters required for stud level (50%)
PRO            N    3    Encounters required for pro level (100%)
PROTECT        N    5    Cost of protection in points
INJECT         N    5    Cost of injection in points
REQENCO        N    1    VD level (1 in x gets it!)  OBSOLETE, NOT USED
INITPTS        N    4    Points to give a new player
SEXPTS         N    4    Points for each rookie encounter
DEFRES         N    2    Default resistance level
AWAKEN         N    1    # of arousals which will cause a recovering
                         player to wake-up   OBSOLETE, NOT USED
CLEANUP        N    1    Internal cleanup flag
                         0 = Maintenance not taking place currently
                         1 = Maintenance IS taking place currently
ROOMTHRESH     N    8    Points needed before qualified to buy a room
RCROOKIE       N    8    Cost to buy a room for rookie players
RCSTUD         N    8    Cost to buy a room for stud players
RCEXPER        N    8    Cost to buy a room for experienced players
RCPRO          N    8    Cost to buy a room for professional players
SEXEXPER       N    4    Points for each expert encounter
SEXSTUD        N    4    Points for each stud encounter
SEXPRO         N    4    Points for each pro encounter
CFRIDGE        N    4    Cost in points for fridge special
CSHOWER        N    4    Cost in points for shower special
CLUBE          N    4    Cost in points for lube special
CVECTOR        N    7.5  Cost in points for secret passage special
                         This is a multiplier; the actual cost is the
                         players current score multiplied by this value
                         Should be fractional (.0015 suggested)
ROOMSEX        N    4    Bonus points for each encounter in a room you own
LUBEBONUS      N    4    Bonus when lube is used during intercourse
SHWRBONUS      N    4    Bonus when showered during oral (they on you)
EATBONUS       N    4    Bonus when fridge during oral (you on them)
COMPBONUS      N    4    Sexual compatibility bonus
INCBONUS       N    4    Sexual incompatibility penalty
REVEALM        N    7.5  Reveal location cost multiplier
                         Should be fractional (.0017 suggested)
ZAPROOK        N    3    Points to zap rookie user arousing recovering player
ZAPSTUD        N    3    Points to zap stud user arousing recovering player
ZAPEXPER       N    3    Points to zap exper user arousing recovering player
ZAPPRO         N    3    Points to zap pro user arousing recovering player
ONLBONUS       N    4    Bonus to give when player does someone online
RESWKBON       N    4    Bonus when a player's defensive item works
LEAVETAX       N    7.5  Multiplier to tax a player when they leave an item
DEFITEMS       N    4    Number of items to keep in database on auto-reset
PERLET         N    4.2  Bonus Points PER LETTER OF MESSAGE for Sending Mail
SHILLRAN       N    4    Shill player random points factor
DEFITCOM       N    7.4  Defensive item cost multiplier (strength * this)
TELECOPEN      N    7.5  Phone sex bonus/penalty multiplier (points * this)
MINAGE         N    2    Minimum age required to play game
SKELNAME       C    12   Name of map database to invoke and be used with
                         top-of-month auto-reset
DLLIST         N    7.5  Multipler to download a room list




IUSERBOX       Inter-User Message Database

TO and FROM fields usually will hold the record number from the player
database.  Special numbers are 0 (TO or FROM the system) and 99999 (TO
all users IN CHAT at the moment).

TO             N    5    Record number of player message is to
FROM           N    5    Record number of player message is from
MESSAGE        C    80   Text of message




TWSLOG         System Log File Database

A              C    1    Event code
                         A = Had intercourse, B = Oral active
                         C = Oral passive, D = 69, E = Added a room
                         F = Changed handle
B              C    15   Active user alias
                         Holds old user alias if event F
C              C    15   Passive user alias
                         Holds room number as string if event E
                         Holds new user alias if event F
D              D    8    Date of event
E              C    8    Time of event
F              C    20   Optional data
                         Holds name of room if event E




MAILSYS        Mail Database (Post-Encounter Mail)

As messages are added to the system, the game searches for any records
whose TO field is "111111111111111" (15 ones), and will replace that
record with new information.  If none are found, a new record is appended.
Once mail is read, the TO field is changed to the 15 ones.

TO             C    15   Alias of user mail is to
FROM           C    15   Alias of user mail is from
MESSAGE        C    254  Contents of message

