Kiteria's LORD Bank LORD IGM - Development notes.
July 09, 2005 - current date:

Saved old KB-Notes.txt file as KB13Note.txt on 07/10/2005.
=================================================

July 09: Started work on KLBank Editor Utility.
         - Adapted from Lpedit code.
         - first working compile done of KLBUnit.pas file.

July 10: Got first compilation of KLBEdit.exe before going
         to bed Sunday morning.  Not tested yet.
         --------------------------------------------

         * Kiteria1.pas: Added code for recognizing/processing
           change in Lord Character Name by incoming player
           in Used_Stuff process.  Not compiled yet.

         * KLBEdit notes:  Changed to version 0.50 Beta.
           Released for full usage with IGM at 11:12 pm.

           - Usage notes:  Kiteria's Lord Bank v1.30 for DOS
             Lord and Chris's Lord/32 version both use the
             same player database structure (I Think).  So it
             is POSSIBLE that you can use KLBEdit with the
             Lord/32 igm.  But I'm not promising that it will
             work properly, so I prefer that you use it ONLY
             with the DOS Lord IGM.

           - Player Number in the IGM database is the player's
             LORD Player Number.  The field is display-only.
             I do not see valid reason for anyone to change
             this data field.  If it is changed by LORD, the
             IGM may change to the new Player Number value.
             * NOT SURE  on this one. *

           - Record Deletion:  All number fields, except for
             Lord Player #, are reset to zero.  In this case,
             and this one ONLY, KBLEdit changes value of Player
             number to 160.  That will never be a valid # so
             it should not cause any problems.

             Actual deletion of the deleted record will not occur
             until the IGM runs Daily Maintenance the next day.

             You can force Daily Maint process to run again
             immediately by deleting the banktime.dat file and
             re-entering the IGM.

           - Player Search: You can search for a player record
             using either their LORD character name or their
             LORD real name.  No color codes are allowed.

           - New Day for Player: Resets Deposits and Withdrawn
             fields for Gold and Gems to zero.  Resets Visits
             to zero.  Resets Gold Interest to zero if it has
             a non-zero balance.  Resets Paid Interest boolean
             field to False.

         * IGM Utility is certified for immediate BBS usage,
           however I do not advise anyone using KLBEdit while
           the LORD IGM is running.  So do NOT do that!

         * At current time, I am not ready to re-open the IGM
           for new development.  So there is no new compilation
           of KITBANK.EXE.  Some data files such as Kitbank.diz,
           Kitbank.txt, ccl-apps.txt have been brought up-to-date.
        ========================================================

July 11: * Worked on edits of bankvars.inc and KLBEdit code files.
         * Changed KLBEdit to v0.55 beta - Switched locations of
           the Lord Name and Visits fields on editor screen.
         * Added listing for KBLEdit to ccl-apps.txt file.

         * Bankvars.inc: Added entries to player database structure
           but they are commented-out for the time being.
           -- Charm - Integer var.  For gain/loss from flirting
           with Samantha. -- Gold_Transfers, Gems_Transfers -
           LongInt vars. Amount of Gold/Gems transferrred today.
           -- Gold_TransCount, Gems_TransCount - BYTE Vars. Counters
           to track usage of Gold/Gems Transfers each day.

         * Bankvars.inc: Added entries igm config file structure.
           Code is enabled in file, but not in actual igm files.

           -- Added 2 sysop-configurable limit variables for them
           to use in controlling # of Gold/Gems transfers made daily.
           Used BYTE for both Vars, so valid range for them is 0-255.
           Variable names are GemsTrans_Limit and GoldTrans_Limit.

         * KLBUnit: Variable name changes made.  TBank to TBEdit.
           Bank_File to Editor_File.  Bank_FN to Editor_FN.
           - Renamed ReadBankFile to Read_Banking_File.
           - Renamed WriteBankFile to Write_Banking_File.
           - Renamed BankNum to RecordNum.

         * KLBUnit/KLBEdit: Changed all code to use TBEdit.* var names,
           Editor_File, Editor_FN, and RecordNum var name changes.

         * KLBEdit screen: Changed to show Visits and LORD Player #
           in two columns on Line 6.  Changed to show LORD Name below
           Real Name of player on Line 5.  Line 7 is currently now blank.

         * KLBEdit.  Realized IGM allows up to 50 visits/day, so editor
           will allow user to configure Visits field between 0 and 50 now.
           ---------------------------- Ended Klbedit work 11:57 pm.

July 15: * Updated KLBEdit.  It now shows number of records
           in player database next to the Record Number on
           Line #2 of the Player Record Info Screen.
         * recompiled utility, briefly tested it. works fine.

July 16: * Worked on Flirt event code for Samantha.

July 17: * Finished recoding Flirt_Wendy into Flirt_Samantha in KLBFLIRT.PAS file.

July 18: * Added Flirt_Gordon using revision of Flirt_Wendy as template,
           inside KLBFLIRT.PAS work file.

         * Worked on IGM's Player editor.  Re-arranged screen layout
           for better visual appearance.

         * Added variables Flirt_Gordon, Flirt_Sam, and Wisdom to
           player database structure.  Disabled until ready to use in IGM.

         * Recompiled KLBEDIT as version 0.70 beta after re-disabling all
           code related to Gems/Gold Transfers variables, Charm, Flirt
           variables, and Wisdom variable.

Aug. 04: * Updated Kiteria1.pas.  Updated KLBEDIT utility.
           -- Added code in Used_Stuff to determine if returning
           player has different LORD Player # than was recorded
           in IGM database during their previous visit.
           -- Replaced code in KITBANK.PAS for Display_File.
           -- Added Local_Pause process in KITBANK.PAS.
           -- Removed usage of LordLock unit from KITBANK.PAS.
           -- Added Repair_Over_Range_Stats process.
           -- Added Repair_Negative_Stats process - replaced
              old Repair_Lord_Stats process.
           -- Replaced old MarriedTo Function code.
           -- Added use of IGM_Exit boolean var and did revision
              of Horse status data in View_Stats.
           -- Rewrote Exit process to allow players to leave
              IGM faster.

           -- Kiteria1.pas unit recompiled.
           -- No compile done today of KITBANK.EXE.
              Not ready to have igm in full development again.

Aug. 08: * Edited kiteria2.pas code. Removed IF Max_Visits > xx code
           following PromptOK statements, since the code block was
           never getting executed.

         * recompiled kiteria2.pas unit file. No EXE program update made.

Aug. 12: * Worked on KLBEDIT. Changed to version 0.75 beta.

         * Fixed utility to terminate immediately if there is
           not an bankplay.dat file to work with in the IGM
           directory KLBEDIT is configured to access.

         * Fixed KLBEDIT to use original v1.30 database structure
           for Bank_Player TYPE code block in bankvars.inc.
         * Changed new Bank_Player code to New_Bank_Player
           record structure in bankvars.inc.

         * Fixed KLBEDIT to use BankPlayer_FN instead of old
           BankPlayerFN.  Added use of Kiteria_FN variable.

         * Recompiled KLBEDIT.  Still has problem with gibberish
           showing up whenever it accesses bankplay.dat file
           made by KLBank v1.30 igm.  Unsure of cause.

         * KLBEdit changed to v0.75 beta.

Aug. 16: * Fixed problem in KLBEDIT where it was corrupting database records.
           - Playnum in April was ShortInt. Structure was using BYTE.
           - Visits in April was INTEGER.  Structure was using BYTE.
           - The incorrect data value types used in bankvars.inc over the
             past month or so was what was causing the record data corruption.

         * Recompiled KLBEDIT using version 0.76 beta.

Aug. 23: * Eliminated usage of KLBUNIT.PAS unit file. Merged its contents
           into the KLBEDIT.PAS program file.
         * Recompiled utility using version 0.80 beta. Retested usage.

Aug. 30: * Recompiled KLBEDIT.EXE as version 1.00 for official release.

         * Updated documentation files - kitbank.txt and kbledit.txt.

         * Decided to use KBEDIT10.ZIP as distribution archive filename
           for release of KLBEDIT utility for full-time public usage.

         * Updated Klbedit.diz and Kitbank.diz files.
         * Created KBEDIT10.ZIP archive file.

         * Tested KLBEDIT.EXE v1.00 with Kiteria's Lord Bank/32 IGM.
           Result was gibberish in various variable field positions.
           The utility is NOT compatible with the Lord/32 IGM that
           Chris Martino made for me.

Aug. 31: * Docs: Updated Lordmenu information section.

         * Official release was made of KLBEDIT v1.00 using
           KBEDIT10.ZIP archive on Aug. 31 to Castle Camelot
           web-site, NightfallGames server, Fidotel BBS server,
           and to the Camelot LordNews FDN.

Sept. 28: * Updated kitbank.txt to include dedication notice
            for KLBEDIT.  Utility is dedicated to Daryl Stout.
==============================================================

Oct. 13:  * Resumed full-time development of KL Bank IGM.
          * reopened development process for KLBEDIT utility.
          * Recompiled kitbank.exe and klbedit.exe.

          * First compilation done of Flirt event code, and of
            initial day's work on Bank Gold transfers process.

          * Kiteria1.pas notes:  Added Max_Gold_Transfer
            constant set at 100 Million gold.
            - Added Max_Gems_Transfer constant set at 32000 gems.
            - Added Target_Code variable for use with
              Which_Player, Transfer_Gems, Transfer_Gold.
            - Added Record_Num variable for Read_Bank_Record use.
            - Added Player_recNum variable for use by
              Read_Bank_Record and Save_Bank_Record.
            - Changed global GEMS var from INTEGER to Longint.
            - Changed global Gems_Temp var from INTEGER to Longint.
            - Added Gold, Gold_Temp longint variables.
            - Added LordMail_File variable for mail file access.
            - Added PlayerDatFile2 var for Read_Bank_Record use.
            - Added Bank_File var for Read_Bank_Record use.
            - Added TPlayer var for Read_Bank_record, Save_Bank_Record.
            - Added Target_Found, Transfer_Cancelled vars.

Oct. 14:  * Finished second day of testing of new Gold Transfers coding,
            and testing of new Gems Transfers coding.
          * Added third IGM Usage report file to Write_Reports_File
            and thoroughly testing changes via KITBANK REPORT command usage.

          * Renamed TPlayer VAR to TBankY.
          * Added player number field to usage report #2.  Tested
            addition using KITBANK REPORT.

          * NOT UPDATED YET:  LIST_CUSTOMERS on-screen reports process.

          * Changed IGM to version 1.34 Beta.  Recompiled Kitbank.exe as v1.34.
          * Rewrote Klbedit.diz, Kitbank.diz.
          * Did initial updates to this file, KB-Notes.txt.

          * Added constants, usage not enabled yet:
          - Gold_Trans_Limit - set at 500 million.
          - Gems_Trans_Limit - set at 100,000.
          - Wisdom_limit - set at 50 million.
          - Gems_With_Limit - set at 100,000.
          - Gems_Dep_Limit - set at 100,000.

          * Sent second day's BETA compilation to beta testers.

Oct. 15: * Created third usage report code in List_Customers.
         * Added Player Number column code to List_Customers
           for usage report #2.
         * Changed Max_Gems_Transfer constant to 25000 gems.
         * Renamed Release_Date to Vers130_Date.
         * Recompiled IGM.  No version number change needed yet.

Oct. 16: * Fixed glitch where some players were not being recognized
           by the Gems Transfers and Gold Transfers event processing
           code.

         * Fixed glitch in KLBEDIT where it was not properly toggling
           the boolean variables for Flirting between True and False.

         * Changed IGM to v1.38 beta.  Recompiled Kitbank.exe.
         * Changed KLBEDit to v1.04 beta.  Recompiled KLBEdit.exe.

         * Reduced maximum Experience reward from 50 million to 10
           Million.  Reduced formulas used to compute the Exp. rewards.
         * Wisdom_Limit constant reset to 10 Million.

         * Changed alternate Charm rewards to be level-based.

         * Verified that Flirt_Gordon code and Flirt_Samantha code
           works correctly.  Both are fully enabled for usage by
           all users of the IGM.

         * In KLBEdit, Changed the constant names for the Flirt
           boolean variables to Gordon and Samantha, from Flirt_Gordon
           and Flirt_Sam.

         * Disabled or removed debug code used on Saturday and Sunday
           to detect problems in Used_Stuff and Save_Player_Data where
           incoming repeat visit players were not being recognized.

         * Problems with irregular execution of code to detect and
           process changes in LORD Name or in Player Number were
           analyzed and solved, I hope permanently.

         * Added option to Flirt with either Gordon or Samantha to
           the opening menu, and verified its usage with both male
           and female LORD characters.

         * Changed Title_Screen to end with 4-seconds delay
           instead of Pause and Aclr statements.

Oct. 21: * Worked on CVTKBANK.EXE program.
           - Renamed OldKtBank to Old_Database_File.
           - Renamed NewKtBank to New_Database_File.
           - Renamed OldKtBRec to Old_BankRec.
           - Renamed NewKtbRec to New_BankRec.

Oct. 29: * Renamed CVTKBANK.EXE/PAS/TXT files to CONVBANK.* files.
           - Program Name renamed from CVTKTBUsrs to CONVBANK.
         * Recompiled CONVBANK.EXE.  Added use of Compile_Date constant.

         * Kitbank.exe: Worked on List_Customers process.
           - Stopped automatic execution at igm entry of the
             Display_user_Notes process.
           - Did testing of Flirt processes.
           - Edited code in used_Stuff process.
         * Recompiled kitbank.exe.

Oct. 31: * Added code to reset TlordRec.On_Now to TRUE if player
           is in IGM.  Lord 4.07 beta is sending players to igms
           with On_Now turned off, which screws up a lot of code
           in Pawn Shop and Werewolf II igms for me.

========================================================
Nov. 01: * Updated DIZ/TXT files for new development month.

Nov. 02: * Recompiled IGM using version 1.39 Beta.

Nov. 03: * Brought work notes file fully up-to-date.
         * KLBEDIT proc name changes:  Changed six procs
           from DO* names to Do_RealName, Do_LordName,
           Do_PlayNum, Do_PlayerDelete, Do_PlayerSearch,
           and Do_NewDay.

         * Recompiled KLBEDIT.EXE using v1.05 Beta.
         * Updated KLBEDIT.TXT, DIZ files, and Kitbank.txt files.

Nov. 05: * Created shell file for Kiteria3.pas, using Trader3.pas
           as source file.  Named file Kit3work.pas for initial
           usage work.

         * Kiteria1: Removed DOS from USES statement.
           -- Moved Bank_Index, UserNum, Max_Visits, SavePlay_Count,
           SavePlay_Num, LordFIle, Config_FIle, PlayerX, IGMMode,
           Sysop_User, Camelot_User, Sex_ID, Partner, BBSName,
           IGMPath, LordPath, ProgPath, GamePath, Stats_Date,
           Stats_Time, Lord_name var statements to Kiteria3.

           -- Moved Create_Database_File, Read_Config, Bank_Intro,
           Write_Customers_Report, List_Customers, Init_Customer_Values,
           Save_Player_Data, Run_IGM, Inside_Bank, View_Stats, Title_Screen,
           Update_Database_File, Repair_Negative_Stats, Delete_Temp_Files,
           Ask_YesNo, and Repair_Over_Range_Stats to Kiteria3 unit.

           - Discontinued use of YesNo Function. Replaced it with Ask_YesNo.

           - Moved MaxPlayerData, GetPlayerName, and MarriedTo to Kiteria3.
           - Moved Display_Menu_Code, Display_User_Notes, BankTime to Kiteria3.
           - Moved used_Stuff, Reset_IGM_Files to Kiteria3.
           =============================================================

         * Kiteria3 unit.  Tested igm for 2+ hours to make sure it would
           run properly with the new Unit file in use.

         * Verified usage of all relocated functions and procedures related
           to igm entry and igm exit process.  Verified usage of relocated
           Inside_Bank process and did more verification of Flirt processes.

         * Kitbank.pas: Added Kiteria3 unit to the USES statement area.
           - Changed REPORT code to access/run Write_Usage_reports from Kiteria3.

         * Verified revised use of KITBANK REPORT command.

         * Verified revised use of LIST_CUSTOMERS and Write_Usage_reports
           when they were executed in IGM session from Kiteria3 unit.

Nov. 06: * No work done on IGM, ConvBank, or on KLBEdit.

Nov. 07: * No work on any Lord programs done Sunday.

Nov. 08: * Finished testing of igm using relocated processes.
         * Reverified proper usage of Gold Transfers and Gems Transfers
           processes.  Reverified usage of Flirt processes.

         * Fixed IGM to only allow Flirting with Gordon once a day,
           and with Samantha once a day.

         * Fixed problem with MarriedTo function where it was looking
           for Marbard.dat/Marrage.dat LORD files in the igm directory.

         * verified usage of View_stats in Kiteria3.pas unit, and that
           it properly showed status of NPC Marriages to the player.

         * Resumed use of MaxPlayerData, using BYTE instead of INTEGER,
           from the Kiteria1.pas unit.

         * Resumed use of Title_Screen, Repair_negative_Stats, and
           Repair_Over_Range_Stats procs from Kiteria1.pas unit.

         * Added use of Get_Max_PLayers_Count from Pawn Shop code.
           May eventually use it full-time and cease using MaxPlayerData.

         * Removed majority of Nov. 05's debug statements from Kiteria1
           and Kiteria3 unit files.

         * Edited code in Transfer_Gold and Transfer_Gems processes.
           Verified changes worked fine.

         * Finished verification of Process_Wisdom_Reward process.
           Removed old, now unused experience, alternate reward code
           statements from ending of Flirt_Samantha & Flirt_Gordon.

         * Changed IGM to use BLANK(x) commands instead of BLANK_LINE
           at Stephen Gibbs' suggestion.  BLANK(X) is Chasware library
           process for writing blank line to local and remote screens.

         * Changed IGM to version 1.41 Beta, Recompiled Kitbank.exe as v1.41.
         * updated documentation and DIZ files for the IGM.

         * Brought work notes up-to-date for Nov. 05 work on IGM.

Nov. 22: * Edited CONVBANK.PAS.  Updated to use code developed for use
           in CONVHITS program.
         * Recompiled CONVBANK.EXE.  Added Version constant, set to v1.00.

Nov. 25: * edited log-code.pas unit file.
         * recompiled kitbank.exe
==============================================================

Dec. 01: * Recompiled IGM and KLB-Edit for new month.

Dec. 13: * Recompiled igm.  Updated documentation files.
         * recompiled CONVBANK.EXE for new month.

Dec. 14: * Disabled debug code used during first-use-of-day
           IGM execution, and normal igm entry process.
         * Recompiled kitbank.exe.

Dec. 27: * Edited DIZ files to update LORD 4.07 compilation date
           info if needed to refer to December 2005 instead of
           November 2005.
         * Did editing cleanup on some of the IGM's INC files.

Dec. 31: * Edited DIZ and documentation files for new year (2006)
           and for new development month (January).
==============================================================

Jan. 02, 2006: * Renamed TConfig.BBSName to TConfig.BBS_Name.
         * revised bankvars.inc file.

         * Did not compile updates of CONVBANK.EXE, KLBEDIT.EXE,
           KITBANK.EXE, and the Kiteria?.TPU files.  Will do
           them tomorrow or on Wednesday.

Jan. 11: * Converted IGM to use KITBANK2.dat and new configuration
           file structure.
         * Did initial testing using BANKCONV.EXE program.
         * Created Kiteria4.pas unit file with Bankconv.pas info.
         * updated Bankvars.inc.
         * compiled and thoroughly tested KITBANK.EXE using kiteria4.pas
           code, and new CONVERT_CONFIG_FILE procedure.
         * IGM changed to v1.42.5 after testing of KITBANK CONVERT command.

         * Did retesting of KITBANK INSTALL, KITBANK CONFIG, KITBANK REPORT,
           and KITBANK REMOVE processes.
         * Identified and fixed glitch where IGM was failing to write
           the current Version number to 3rdparty.dat file, when user
           requested it to be included.

           The LordIGMProgName statement in Kitbank.pas did not have
           code for Version Number.  Changed the IGM so that the
           LordIGMProgName:= IGMName+VersionC statement is properly in use.

         * Changed IGM to version 2.44 Beta.
         * Has not been tested in LORD game yet.  But all tests using
           revisions to Kiteria2.pas unit worked just fine using kitbank2.dat.

         * Verified that KITBANK INSTALL works properly, and
           that Version # data is written to 3rdparty.dat
           using correct data, when user requests its inclusion.

Jan. 18: * Updated copyright data in documentation, code files.
           -- KitBank.exe files, KLBEdit.exe files,
              and ConvBank.exe files.

         * Revised Convbank.pas, kiteria1.pas, kiteria4.pas,
           and klbedit.pas code/program files.

         * Updated compilations of Kitbank.exe, Convbank.exe,
           and klbedit.exe.  Kiteria1.tpu, kiteria3.tpu and
           Kiteria4.tpu files were recompiled.

Jan. 20: * Dropped several DELAY statements to use shorter delay times
           in Kiteria1, Kiteria3, and Kitbank code files.
         * Recompiled Kitbank.exe.  Changed IGM to version 2.45 Beta.

Jan. 23: * Compiled Kitbank.exe.

Jan. 24: * Revised kitbank.txt and ccl-apps.txt files.

