home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / v612docs.zip / VC7 < prev    next >
Text File  |  1993-12-16  |  33KB  |  643 lines

  1. .TOPIC:                                            
  2. Customizing VBBS
  3.  
  4.                                             VBBS 6.12 Documentation --  7-1
  5.  
  6.          ╔════════════════════════════════════════════════════════════════╗
  7.          ║ CHAPTER SEVEN     CUSTOMIZING VBBS                             ║
  8.          ╚════════════════════════════════════════════════════════════════╝
  9.  
  10.                 The configurability of VBBS can not be overstated.
  11.                 
  12.                 Because of the way VBBS is structured, it's possible to
  13.          configure the program to look and feel like some other BBS soft-
  14.          ware; you can borrow features from several different BBS soft-
  15.          wares to create your own design.  You might just take a vacation
  16.          from reality one night and decide to make VBBS look just like
  17.          GEnie or some other CIS.  Aside from the obvious limitations on
  18.          actual storage space, you could accomplish the "look-alike" to
  19.          the point where a user could not tell the difference!  By using
  20.          scripts (and the source code, if you've registered for it), you
  21.          can do many things that simply aren't possible with other BBS
  22.          softwares.
  23.                 Unlike source code, which normally contains strict rules
  24.          on code segment distribution (VBBS included), VSCRIPT-based ap-
  25.          lications, function blocks, and menus may be distributed freely
  26.          in full, or even in entire configuration sets.
  27.  
  28.  
  29.          Menus, Function Blocks, Scripts, and Mods
  30.          ═════════════════════════════════════════
  31.  
  32.                 Customization and modification of VBBS comes in several
  33.          forms: changing the menus to suit your personal tastes and set-
  34.          up, rearranging function-block commands, installing scripts for
  35.          special applications, and even modifying the source code (if
  36.          you've registered at the source level).
  37.                 Menus and function blocks are closely interrelated, so
  38.          if you find yourself flipping back and forth between the sec-
  39.          tions on the two, don't worry; it's normal.
  40.                 For the remainder of this manual, the term "script" will
  41.          apply exclusively to programs utilizing the VSCRIPT script lan-
  42.          guage; the term "mod" will refer exclusively to modifications
  43.          made at the source-code level.  It should be pointed out here
  44.          that you do not need to register VBBS to write scripts or ex-
  45.          change scripts with other sysops via VirtualNET; registration
  46.          and an additional fee ARE, however, required to obtain the VBBS
  47.          source code.  
  48.                 There are other good reasons to register VBBS; we'll get
  49.          to those presently.
  50.  
  51.         
  52.          "Heart-Code ANSI"
  53.          ═════════════════
  54.  
  55.                 If you've read this far, you've run across the term
  56.          "heart-code ANSI" a time or two.  Since customization often in-
  57.          volves changing colors and menus and adding system taglines,
  58.          this is probably a good place to explain what "heart-code ANSI"
  59.          is.
  60.  
  61.                                              VBBS 6.12 Documentation -- 7-2
  62.  
  63.  
  64.                 If you've ever used the DOS "type" command to look at a
  65.          file you've created using TheDraw or some other ANSI drawing
  66.          program, you know it consists mainly of "garbage" resembling
  67.          Chinese.
  68.  
  69.          This is the ANSI (American National Standards Institute) code
  70.          for introducing color changes into text files so that the colors
  71.          will show up onscreen; in order to display these color changes,
  72.          you need to have the statement
  73.  
  74.                 DEVICE=ANSI.SYS
  75.  
  76.          somewhere in your CONFIG.SYS file (remember, though, about the
  77.          ANSI bomb -- see "First-Time Startup" for details on alternate
  78.          ANSI drivers).
  79.                 A while back, a good number of BBS programs  began
  80.          using a method of color changing called "heart-code ANSI",
  81.          in which color changes were represented by a heart character
  82.          followed by an alphanumeric character.  The heart-code system
  83.          has the benefit of taking only two bytes to accomplish what
  84.          takes 4-6 bytes in "raw" ANSI, thereby reducing the size of
  85.          network transfers, especially where large numbers of color
  86.          changes are involved.
  87.                 In an effort to maintain compatibility other bulletin
  88.          board networks, VBBS was designed to handle heart-code
  89.          ANSI.  The heart-code colorization system has become the stan-
  90.          dard for these BBS softwares.
  91.                 When you're starting out with heart-code ANSI, it's a
  92.          good idea to go into the VBBS FSE and press [Ctrl-P][?], and
  93.          look at the color combinations that appear at the bottom of
  94.          the screen.  The same set of color combinations can be seen
  95.          when you go into your [D]efaults setup and start changing
  96.          your screen display colors; you might consider printing out
  97.          that screen using [Shift-Print Screen].
  98.  
  99.          --> IMPORTANT NOTE:  If you print-screen the default-menu
  100.                               color change information, be aware that
  101.                               all the codes are "off" by one; for exam-
  102.                               ple, the screen code for gray on black is
  103.                               1, but the heart-code for gray on black
  104.                               is 0 (zero).  Likewise, the bright-red on
  105.                               black is screen code 7, but heart-code 6.
  106.  
  107.          ╔═╗    Using heart-code ANSI takes some getting used to, but       
  108.          ╚═╝    with practice, it's not terribly more difficult than
  109.                 the "raw" ANSI produced by TheDraw or other ANSI draw
  110.                 programs.  Heart-code ANSI is best for menus, taglines,
  111.                 and other features that have patterned or infrequent
  112.                 color changes.
  113.                 
  114.                                              VBBS 6.12 Documentation -- 7-3
  115.  
  116.  
  117.                 The easiest way to produce a heart-code menu or tagline 
  118.          is to first use an ANSI drawing program to make the menu/tag-
  119.          line, then save it as a straight ASCII text file.  Then, pull
  120.          it into the VBBS FSE and use [Ctrl-P] codes to change the co-
  121.          lors (see Appendix C for details).
  122.                 To introduce a heart-code color change into an ASCII
  123.          text file, turn Num Lock ON; while holding down the [Alt] key, 
  124.          type in either "3" or "259" (whichever works) FROM THE NUMERIC 
  125.          KEYPAD.  A heart character should appear on your screen.  The 
  126.          second keystroke should be a number from 0-9 or a letter from
  127.          A-Z, depending on what color you want to produce.
  128.  
  129.  
  130.          Customizing Menus
  131.          ═════════════════
  132.  
  133.                 The VBBS archive includes a default set of function blocks
  134.          (see below) and their accompanying menus.  After running the de-
  135.          faults for a while, however, most sysops want to customize their
  136.          menus to more accurately reflect their personal tastes and give
  137.          their BBS a distinctive look.
  138.                 Default VBBS has four different types of menu files:
  139.  
  140.                         .MNU files (the default)
  141.                         .ANS and .ASC files
  142.                         .PDM files
  143.  
  144.          We'll take a moment to explain each one in detail (there is one
  145.          more menufile type if your BBS is set up to use the R.I.P.
  146.          (Remote Imaging Protocol).
  147.  
  148.          On startup, VBBS looks for menu files with the .MNU ex-
  149.          tension.  The .MNU files included with VBBS are done in heart-
  150.          code ANSI, and serve "double duty".  If the user's video display
  151.          will support ANSI graphics, the color changes will be included,
  152.          but if it won't (user's defaults set to ASCII), VBBS will strip
  153.          out the color changes for display to that user.  The main bene-
  154.          fit of this system is that by using the heart-code .MNU files, 
  155.          only one set of menu files is needed for both ANSI and ASCII 
  156.          users.  Another point in favor of the .MNU files is that they
  157.          seem to display a little bit faster -- this is probably due to
  158.          the fact that it takes only two bytes to make a color change.
  159.  
  160.                 The second set of menu formats -- .ANS and .ASC files --
  161.          is what VBBS will look for if it doesn't find .MNU files.  The
  162.          .ANS format is "raw" ANSI, such as that produced by TheDraw;
  163.          an .ASC extension represents an ASCII (text) menu.  The advan-
  164.          tages to having these files in lieu of .MNU files is that they
  165.  
  166.                                              VBBS 6.12 Documentation -- 7-4
  167.  
  168.  
  169.            1) are a little bit quicker to produce, i.e., you draw a 
  170.               menu directly in ANSI, save it twice (in .ANS format 
  171.               and in .ASC format), and you're done.
  172.            2) are easier to make, especially if you have very com-
  173.               plex menus and color changes; the heart-code system 
  174.               can be a little daunting if your menus are ornate.
  175.  
  176.          The downside of this method is that you must have two copies of
  177.          each menu, one for ANSI users and one for ASCII users; if a user
  178.          with ASCII defaults gets an .ANS menu, he/she will receive gar-
  179.          bage characters (as shown above) and probably won't call back.
  180.  
  181.                 The final set of files are VBBS' "pull-down" menus, which
  182.          have a .PDM extension.  These are for users who have selected
  183.          "Enhanced ANSI" as their screen display default.  These are ac-
  184.          tually ASCII text files that VBBS colorizes as part of the de-
  185.          fault color selection.  A user may opt to use .PDMs at any sys-
  186.          tem prompt by pressing the [Esc] key -- and you should try it
  187.          to see how they work.  The default FILES.PDM file is shown
  188.          below:
  189.  
  190.                 Directory
  191.                  C Change Directory [C]
  192.                  L List Files       [L]
  193.                  S Search All Dirs  [S]
  194.                  N New Files List   [N]
  195.                  F Find Description [F]
  196.                 Transfer
  197.                  D Download Files  [D]
  198.                  U Upload Files    [U]
  199.                  B Batch Functions [B]
  200.                  R Review Files    [R]
  201.                  Y Your Stats      [Y]
  202.                 Other
  203.                  J New File Scandate       [J]
  204.                  P Popular Downloads       [P]
  205.                  M Download Master List    [M]
  206.                  Q Quit to Main Menu       [Q]
  207.                  G Log Off                 [G]
  208.  
  209.          These files are preconfigured, but easily changed using any text
  210.          editor.  They don't need to be changed, though, unless you re-
  211.          group or add commands within the function blocks.  But --
  212.  
  213.          --> IMPORTANT NOTE:  Any changes you make in your .MNU or
  214.                               .ANS/.ASC menus should also be made in
  215.                               your .PDM files.
  216.  
  217.          
  218.                                              VBBS 6.12 Documentation -- 7-5
  219.  
  220.  
  221.  
  222.                 Creating your own .MNU menus is simple enough: after 
  223.          making backups of the original menu files (just in case), use 
  224.          your favorite drawing program (or even a text editor capable of 
  225.          handling "extended ASCII" characters, although this is a LOT 
  226.          more work) to make an ASCII menu file.  To add the color 
  227.          changes you want, pull the file into the VBBS FSE and use 
  228.          heart codes to add color (as described earlier).
  229.  
  230.          ╔═╗    Menus are a great means of customizing your BBS.  They're
  231.          ╚═╝    also the primary method by which a user interacts with
  232.                 your BBS, so you want to design menus that are as func-
  233.                 tional as possible.  Please note that complete script/
  234.                 function block/menu/pdm packages emulating the look and
  235.                 feel of several other bbs softwares have been developed.
  236.                 The most notable of these is MVMEN by David Bell with
  237.                 emulations of WWIV, Remote Access, WildCat, Renegade, and
  238.                 others, in addition to multi-language VBBS modules.
  239.  
  240.  
  241.          Function Blocks
  242.          ═══════════════
  243.  
  244.                 At the heart of VBBS' command structure is the FUNCTION
  245.          BLOCK, which is in turn represented by a menu.  A function block
  246.          is an easy-to-modify ASCII file which allows the sysop to define 
  247.          every single function of any menu -- what each key does, whether 
  248.          it is calling an internal function, an external VSCRIPT, external
  249.          .EXE file (shrinking or not shrinking VBBS out of memory as de-
  250.          sired), or calling another function block.
  251.                 Creating and editing function blocks may be done with any
  252.          ASCII text editor; the resulting files should be placed in the 
  253.          VBBS \V or \VSCRIPT directory you have set up in VCONFIG.  
  254.  
  255.          For example, for your FILES.FB, the first line of the function
  256.          block might now read FILE1.  This would instruct VBBS to display 
  257.          a menu file called FILE1.MNU, FILE1.ANS, FILE1.ASC, or FILE1.PDM
  258.          (depending on which menuing scheme you're using and the user's 
  259.          default display setting).  Similarly, your START.FB might call
  260.          up the MAIN.xxx menu file, while your SYSOP.FB might call up the
  261.          SYSOP1.xxx menu file.
  262.                 The second line holds the letter designators of any topic
  263.          areas that "go with" the function block.  For example, if you
  264.  
  265.                                              VBBS 6.12 Documentation -- 7-6
  266.  
  267.          have message topic areas A, B, C, and D, the second line of your
  268.          START.FB should read
  269.  
  270.                 ABCD
  271.  
  272.          Otherwise, your users would only see ONE topic area; the "A"
  273.          topic that came preconfigured as a default.  Many new sysops for-
  274.          get to add these other topic designators in; it's not difficult
  275.          to overlook this, even though it IS crucial.
  276.  
  277.                 Each subsequent line of a function block enables a "hot-
  278.          key" to perform a particular command or function.  Lines in the
  279.          "body" of a function block MUST follow this particular format
  280.          and appear in strict columns:
  281.  
  282.                 k xxx y cccccccccccc
  283.  
  284.          An explanation is given below.
  285.  
  286.          Part   Column(s)  Explanation
  287.          ─────  ─────────  ────────────────────────────────────────────
  288.          k          1      The letter or symbol serving as the hot-key
  289.          xxx       3-5     The minimum SL needed to access the function 
  290.                              (must be three digits, like "050" or "007")
  291.          y          7      The command type (a digit 0-5; more on that 
  292.                              below)
  293.          cccccc     9+     The name of the routine/script/.EXE command 
  294.                              line, etc.; this section is of variable 
  295.                              length, depending on what you're trying to 
  296.                              do.
  297.  
  298.                 The "y" in the command line represents a digit from 0
  299.          through 5 that tells VBBS how to execute the command, according
  300.          to the following list:
  301.  
  302.          Digit  Command-type Description                               
  303.          ─────  ───────────────────────────────────────────────────────
  304.            0    Null (no operation)
  305.            1    Internal command (like SENDEMAIL)
  306.            2    Script
  307.            3    DOS function (don't shrink VBBS out of memory)
  308.            4    DOS function (shrink VBBS out of memory)
  309.            5    Transfer control to a different function block
  310.  
  311.                 A sample function block to handle E-mail might look some-
  312.          thing like this (without the parts inside angle-brackets):
  313.  
  314.                 EMAIL           <name of menu file>
  315.                                 <no database attached; E-mail's automatic>
  316.                 e 001 1 sendemail
  317.                 m 001 1 reademailto
  318.                 f 001 1 feedback
  319.                 s 001 1 reademailsent
  320.                 q 000 5 start   <on quitting, return to START.FB>
  321.  
  322.                                              VBBS 6.12 Documentation -- 7-7
  323.  
  324.  
  325.          The Default START.FB
  326.          ────────────────────
  327.  
  328.                 VBBS could easily have been distributed with a blank menu;
  329.          instead, a default START.FB is included which reflects the con-
  330.          figuration of the software on the author's BBS, "Virtual Techno-
  331.          logies".  Note the columnation at the beginning of each line and
  332.          the topic-area designator on the second line.  Other points of
  333.          interest include:  1) the 255 SL required to transfer control to 
  334.          the SYSOP.FB function block; 2) the VBBS-AUX commands that shrink
  335.          the BBS out of memory to execute the associated program; and 3)
  336.          the nonalphabetic characters used as hot-keys.
  337.  
  338.                 MAIN
  339.                 A
  340.                 $ 001 1 choosetopic
  341.                 > 001 1 nextbase
  342.                 < 001 1 prevbase
  343.                 c 001 1 selectbase
  344.                 j 001 1 setquickscan
  345.                 s 001 1 scanmsg
  346.                 n 001 1 readnewmsg
  347.                 r 001 1 readseqmsg
  348.                 p 001 1 post
  349.                 e 001 1 sendemail
  350.                 y 001 1 reademailfrom
  351.                 m 001 1 reademailto
  352.                 q 001 1 quickmail
  353.                 f 001 1 feedback
  354.                 o 001 1 door
  355.                 z 001 4 vbbs-aux %1 telecon
  356.                 d 001 1 account
  357.                 l 001 1 pagesysop
  358.                 t 001 5 files
  359.                 b 001 4 vbbs-aux %1 textfiles
  360.                 k 001 1 listcallers
  361.                 u 001 4 vbbs-aux %1 listusers
  362.                 a 001 1 autopost
  363.                 v 001 4 vbbs-aux %1 vote
  364.                 i 001 1 sysinfo
  365.                 w 001 1 who
  366.                 x 001 4 vbbs-aux %1 listnet
  367.                 * 255 5 sysop
  368.                 g 000 1 logoffyn
  369.  
  370.                 Making changes is as simple as pulling the START.FB file
  371.          into a text editor (even the VBBS FSE, from WITHIN the board!)
  372.          and adding in the desired function(s).  For example, you might
  373.          add in the following line to invoke a script that shows a user
  374.          his/her credit total:
  375.  
  376.                 # 001 2 crcheck
  377.  
  378.          Notice that all this is presented in lower-case; function blocks
  379.          are NOT case-sensitive, so the number of commands you may have
  380.  
  381.                                              VBBS 6.12 Documentation -- 7-8
  382.  
  383.  
  384.          is limited to 26 letters + 10 digits + however many punctuation
  385.          and nonalphabetic characters you can come up with (of course, if
  386.          any FB ever gets that big, you'll probably want to split it into
  387.          smaller chunks anyway).
  388.  
  389.          ╔═╗    If you start breaking your function blocks into smaller
  390.          ╚═╝    pieces, it's important to choose letter commands -- "hot
  391.                 keys" -- in such a way that commands will be consistent
  392.                 across menus.  For example, if you have the [M] key set
  393.                 to jump to the Message Menu in one function block, try
  394.                 to make it do the same thing in ALL function blocks.
  395.                 This may not be easy, but your users will appreciate not
  396.                 having to learn a different set of hotkeys at each menu.
  397.  
  398.  
  399.          The Default FILES.FB and SYSOP.FB
  400.          ─────────────────────────────────
  401.  
  402.                 There are two other default function blocks: FILES.FB,
  403.          which governs the file transfer section(s), and SYSOP.FB, which
  404.          contains the commands for the sysop function block.  These func-
  405.          tion blocks are shown below:
  406.  
  407.          FILE1                          SYSOP1
  408.          F
  409.          g 000 1 logoffyn               m 255 1 readallemail
  410.          m 001 1 dlmasterlist           e 255 1 editfile
  411.          u 001 1 remoteupload           u 255 1 useredit
  412.          d 001 1 downloadfile           s 255 4 vbbs-aux %1 security
  413.          r 001 1 reviewfile             v 255 1 validate
  414.          c 001 1 selectbase             c 255 1 cleanup
  415.          j 001 1 setnewfilesscan        q 000 5 start
  416.          l 001 1 listfiles
  417.          n 001 1 newfiles
  418.          s 001 1 searchall
  419.          b 001 1 batchdl
  420.          f 001 1 findfiles
  421.          > 001 1 nextbase
  422.          < 001 1 prevbase
  423.          p 001 1 topdownloads
  424.          y 001 1 ratio
  425.          z 255 1 sysopupload
  426.          x 255 1 reviewuploads
  427.          q 000 5 start
  428.  
  429.  
  430.          One change to FILES.FB you might want to try right off the bat
  431.          -- if you have more than one files area and want to fiddle with
  432.          the function blocks (and if Roland hasn't added it in as a de-
  433.          fault command yet) -- is to add in this line:
  434.  
  435.                 $ 001 1 choosetopic
  436.  
  437.          No compilation is necessary ... just save it, and the the [$]
  438.          command to move between files topic areas is enabled, just like
  439.  
  440.                                              VBBS 6.12 Documentation -- 7-9
  441.  
  442.  
  443.          in the message bases!  Make sure, though, that you add the com-
  444.          mand in your menus so your users can take advantage of it.
  445.  
  446.                 Rearranging the commands in function blocks isn't that
  447.          difficult -- it's just a matter of making sure you don't leave
  448.          out any commands.  For example, I have separate function blocks
  449.          for the Main Menu (12 whole commands!), E-mail, transfers, and
  450.          subsystems, coupled with the ability to jump between FBs with
  451.          one keystroke.  Of course, my menu structure is quite different
  452.          from the default setup -- but that's the beauty of VBBS.  It
  453.          didn't blink an eye when I installed the changes!
  454.                 One caveat, however: your main function block MUST be
  455.          called START.FB.  It is the function block that takes over when
  456.          the START.V script finishes running.
  457.  
  458.  
  459.          Scripts and Mods
  460.          ════════════════
  461.  
  462.                 As stated earlier, the term "scripts" refers to programs
  463.          written using VSCRIPT and compiled using the program VCOM.EXE;
  464.          "mods" refers to source-code modifications (just a reminder).
  465.  
  466.                 The VSCRIPT language is one of the most powerful features
  467.          of VBBS (if not THE most powerful).  It's a small programming
  468.          language, somewhat similar to the REXX script language, that 
  469.          incorporates many of VBBS' functions into single command state-
  470.          ments (with or without command-line arguments).  All it takes 
  471.          is your favorite ASCII text editor or word processor and some 
  472.          familiarity with the VSCRIPT language (that's a separate part 
  473.          of the documentation; see Chapter 10  for details), and you can
  474.          be customizing your BBS via scripts in no time.
  475.                 As an example, let's take the script mentioned earlier
  476.          that allows users to check their credits.  It consists of only
  477.          three lines:
  478.  
  479.                 tr
  480.                 tr "You currently have " $credits " credits."
  481.                 tr
  482.  
  483.          Save this file in your \V or \VSCRIPT directory (as you have it
  484.          configured in VCONFIG) under the name CRCHECK.V (to maximize
  485.          efficiency, you might want to keep a copy of VCOM.EXE in this 
  486.          directory as well).  Compile the script:
  487.  
  488.                 VCOM CRCHECK.V
  489.  
  490.          and you will see two NEW files in the directory:  CRCHECK.COD
  491.          and CRCHECK.LIT.  These are the files VBBS will look for when
  492.          you execute the script from the function block in which it's
  493.          placed.
  494.                 There are literally dozens, if not hundreds, of VSCRIPT-
  495.          based applications available through VirtualNET (more about that
  496.          later).  Some enterprising programmers have created casino games,
  497.          alternate mail and voting routines, scripts to welcome new users
  498.  
  499.                                              VBBS 6.12 Documentation -- 7-10
  500.          
  501.  
  502.          and take them on a tour of the BBS, show user information ... 
  503.          it's difficult to describe the variety of scripts that have been 
  504.          written by sysops and users alike!  
  505.  
  506.                 VBBS may also be modified through direct changes to the
  507.          source code, a process known as "source modding" or simply "mod-
  508.          ding".  This DOES require that you have a copy of either Micro-
  509.          soft's QuickBASIC compiler (version 4.5 or later). The "QBASIC"
  510.          that comes with MS-DOS is NOT sufficient for this purpose.
  511.                 
  512.                 VBBS employs a mixed programming environment using assem-
  513.          bly-language routines for fast COM port and program I/O, while
  514.          using QuickBASIC as an affordable and easy-to-modify environment.  
  515.          This is in sharp contrast to many other BBS softwares, which re-
  516.          quire a knowledge of Pascal or C and their associated compilers.
  517.          It should be noted here, however, that in order to keep the 
  518.          source-code files from being too large, there are very few com-
  519.          ments in the default program; this can make for an -- <ahem!> -- 
  520.          INTERESTING time when you're looking for a particular routine or 
  521.          section of the code.  Just thought we'd let you know in ad-
  522.          vance ...!  :-)
  523.  
  524.          ╔═╗    Some helpful hints to make your source modding easier:
  525.          ╚═╝
  526.                 1) Make backup copies of the existing source code.  It
  527.                    might save you truckloads of grief later.
  528.                 2) Print out the source code (make a pot of coffee or
  529.                    something while you do ... it takes a while) and read
  530.                    through it BEFORE you start modding.  The files are
  531.                    simply too complex to try to keep up with on a screen-
  532.                    by-screen basis.  Highlighting's much easier, too; my
  533.                    source-code printout has so much red ink on it that it
  534.                    looks like a bad high-school English paper.
  535.                 3) Make sure you're thoroughly familiar with the functions
  536.                    and commands of VBBS; this will make it easier to spot
  537.                    their associated source routines.
  538.                    
  539.          --> IMPORTANT NOTE:  Access to the QB4.5 DOS source code is
  540.                               governed by a specific licensing agreement.
  541.                               You may not possess any portion of the source
  542.                               without having obtained a license to do so 
  543.                               from the VBBS author, and in no case shall 
  544.                               more than 100 lines of VBBS code be con-
  545.                               tained within a published modification at
  546.                               any time.
  547.  
  548.          ▒▒ OS/2 Version   :  Please note that source code is not made
  549.                               available for source modding. Full scripting
  550.                               is possible.
  551.  
  552.                                              VBBS 6.12 Documentation -- 7-11
  553.  
  554.  
  555.          Scripts and Mods on VirtualNET
  556.          ──────────────────────────────
  557.  
  558.                 Once your BBS is a VirtualNET node (more on that in a
  559.          bit), there are many message subs dedicated to VBBS scripts
  560.          and mods.  Two main subs are:
  561.  
  562.                        VBBS Script Technical Support
  563.                        VBBS Source Technical Support
  564.  
  565.          The "VBBS Script Technical Support" sub is for the discus-
  566.          sion of scripts and mods -- questions, troubleshooting, and the
  567.          like.  The "Virtual ModNET" is EXCLUSIVELY for the posting of
  568.          script/mod code -- no discussion.
  569.  
  570.          System Taglines
  571.          ═══════════════
  572.  
  573.                 Many sysops whose BBSs are part of VirtualNET like to
  574.          "personalize" posts originating from their system by adding a
  575.          system tagline to the posts.
  576.                 System taglines are optional; if they are used, however,
  577.          they must follow several guidelines:
  578.  
  579.                 1) They must include the name of the BBS, its geo-
  580.                    graphic location, VirtualNET node number, and
  581.                    version of VBBS being used;
  582.                 2) They must be 3 lines or less AND 300 bytes or
  583.                    less (i.e., a 3-line, 350-byte tagline is NOT
  584.                    acceptable);
  585.                 3) They must be colorized using ONLY heart-code 
  586.                    ANSI (no "raw" ANSI allowed).
  587.  
  588.                 Creating a system tagline is similar to creating a new
  589.          menu; you make and save an ASCII version of the tagline, then
  590.          bring it into the VBBS FSE to colorize it with heart codes.
  591.          Since any experimental color changes are also saved with the
  592.          tagline, it's usually a good idea to use your ASCII text edi-
  593.          tor to delete any unnecessary color changes after you've got
  594.          your tagline looking the way you want it.
  595.                 Taglines reside in your \TXT directory under the name(s)
  596.          TAGLINE.xxx, where "xxx" is a number from 1 to 999.  It should
  597.          be noted that single- or double-digit extensions to these files
  598.          should be just that, i.e., TAGLINE.1 or TAGLINE.22, and not
  599.          TAGLINE.001 or TAGLINE.022.
  600.  
  601.          ╔═╗    A word or two on system taglines:  they should be as dis-
  602.          ╚═╝    tinctive as possible without being gaudy or distracting
  603.                 from the body of the message.  "Eyesore" taglines are 
  604.                 sometimes the butt of jokes on VirtualNET.  In addition, 
  605.                 some sysops try to cram every bit of information they
  606.  
  607.                                              VBBS 6.12 Documentation -- 7-12
  608.  
  609.  
  610.                 can about their systems into their taglines; this is 
  611.                 frequently viewed as being distracting, and in general, 
  612.                 a "less-is-more" approach is best advised.  If you want 
  613.                 to advertise your huge file base or the 42 game doors
  614.                 your system currently has, it's usually better to make 
  615.                 a BBS ad for the "BBS Advertisements" sub instead
  616.                 of trying to cram this information into your tagline.
  617.  
  618.  
  619.          R.I.P. Remote Imaging Protocol GUI Interface
  620.          ════════════════════════════════════════════
  621.  
  622.                 VBBS is now compatible with R.I.P. graphic standards.
  623.          RipTerm is an optional mouse-driven terminal program which
  624.          interfaces with VBBS.  R.I.P. supports user's-end VGA graphics
  625.          (sorry, no VGA locally -- the "overhead" local VGA would intro-
  626.          duce would be of truly epic proportions) and is icon-driven.  As
  627.          of this writing, a number of communication programs now
  628.          support R.I.P. graphics.
  629.                 Details on R.I.P.may be found in the documentation that ac-
  630.          companies the RipTerm Program. Adding R.I.P screens is yet
  631.          another way you can customize your VBBS installation, and the
  632.          early reviews are enthusiastic, to say the least!
  633.  
  634.                 As you can see, there are quite a few ways you can cus-
  635.          tomize your VBBS to get exactly the "look-and-feel" you want.
  636.          It's pretty much a case of you being limited only by your imagi-
  637.          nation.  You can make the graphics, menus, and command structure
  638.          as simple or complex as you want them.  Just keep in mind that
  639.          when you make changes to your user interface, it should be to
  640.          make your users' lives easier, NOT to push everything to the
  641.          max for the sake of doing it.
  642.  
  643.