Doofus the Gnome LORD IGM - Current Development notes.
Mid-March 2005 -- current date:  DG-Notes.txt
=================================================

Started work to create new IGM's skeleton program on Wednesday
afternoon using code files from Violet's Cottage II as template.

March 23: * 1st compile achieved of DOOFUS.EXE at 10:10 pm.
          * next step is to test usage in LORD of the program.
          * initial work version data: 1.25 Alpha.

          * DOOFUS INSTALL - worked fine at 10:26 pm.
            -- COnfirmed creation of doofus.dat file.
            -- Confirmed entry written properly in 3rdparty.dat.
            -- Confirmed igm install entry written in lognow.txt.

          * DOOFUS REMOVE - worked fine at 10:30 pm.
            -- COnfirmed deletion of dg2time.dat and doofus.dat files.
            -- Confirmed entry written properly in 3rdparty.dat.
            -- Confirmed igm removal entry written in lognow.txt.

          * DOOFUS CONFIG - worked fine at 10:32 pm.
            -- Confirmed changes were made correctly to doofus.dat
               lines for Sysop Handle and Max Visits/Day.

          * DOOFUS REPORT - Confirmed error message about there
            not being a DG2PLAY.DAT player database file yet.

March 25: * worked on converting lady script statements into
            pascal equivalents.  Did about half of gnomeldy.pas
            work file.
          * compiled doofus.exe with current code files, with
            the new processes added to gnome1.pas not enabled
            for actual execution yet.

March 26: * All of LOOK runsub process code is converted to
            pascal statements, and RunSub_Look proc is
            compiling OK.
          * About halfway through coding of RunSub_Secret
            procedure.
          * current gnome1.pas compiling OK.

March 27: * Worked on analysis of LADY script variables used in
            the Secret Deals sub-routine. work done on paper.
          * Activated access to runsub_Look inside igm.
          * Tested successfully Trade of 200 gems for 600 Max HPs.

          * Dropped Wisdom, Gold variables from player database.
          * Renamed Gems variable to Gems_Traded.
          * Added Gems_Stolen variable to database.

          * Changed Adoptions database var from BYTE to INTEGER.

          * Revised code in Write_Traders_Report process, and
            in List_Traders process, to reflect following changes.
            -- The 4 Potions columns and Gems Traded columns are
            6 spaces in length, including the commas. Each field
            has to cover 1-32,000 data ranges.
            -- In second usage report - coded only in DG2Usage.txt,
            changed the Adoptions column to be 6 spaces in length,
            since IGM will allow multiple purchases of orphans.
            -- Changed HitPoints column name to HPs Lost - since IGM
            does not grant HitPoints for anything, but it does
            confiscate them if player is punished for stealing or
            for cheating.
            -- Changed spacing between columns from 2 spaces in some
            places to uniform 3-space filler between all columns in
            both reports' column layouts.
            -- In second usage report, added an Gems Stolen column,
            and removed initial column for Experience - which is not
            handled by the LADY script at all.

            * Changed version data from 1.25 alpha to 1.28 Beta
            following successful usage of IGM in Max Hps trading.

            * Successfully tested trades of 200 Gems for 600 Strength;
              200 gems for 600 Defense.  Found glitch in Charm trade
              where it did not work correctly.  A missing comment
              bracket caused the Charm code to fail to execute properly.

            * Added igm status update to top of doofus.txt file.

            * Changed IGM to version 1.30 beta.

March 28:   * Finished LADY-to-PASCAL code conversion work on the
              RunSub_Secret sub-routine.
            * merged runsub_secret code into gnome1.pas and compiled
             new doofus.exe program.

            * until I have it at least partially tested, no one is
            allowed access to Secret sub-routine in igm usage unless
            they play using my name as Sysop_Name config variable
            in their doofus.dat file.

            * quit computer work to go to bed. 3:29 am.

March 29:   * fixed igm to show Intro only if player asks to see
              it.  Tested igm's Secret Deals - Horse trade - where
              player already had a horse.
            * tested Special Deals - Kids trade. 60 gems traded
              for 15 kids.  TlordRec.Gem, TLordRec.Kids stats
              were updated properly along with TGnome.Gems_Traded
              stat.
            * Fixed Runsub_Secret to work for everyone.
            * changed igm to version 1.35 beta.

April 01: * Updated IGM files for new development month.
          * Max Visits/Day reduced to 10, from 15.

April 02: * Finished max visits/day setting changes.
          * Recompiled doofus.exe.

April 04: * Fine-tuned code. Did some more igm tests in LORD.
          * recompiled doofus.exe.

April 11: * fixed column alignment glitches in dg2usage.txt file's
            second usage report file.  Added code to write
            "DOOFUS.EXE:  Completed file update at TIME on DATE"
            at end of the usage reports file.
          * recompiled DOOFUS.EXE, gnome1/gnome3 unit files.
          * Tested DOOFUS REPORT - working satisfactorily now.

April 15: * Changed IGM to version 1.40 beta.  Started work on
            modifying Fairy Trade code from Gem Trader igm to
            work in Doofus the Gnome IGM.

          * Decided to synchronize Horse, Fairy, and Orphan Gems
            Trades cost between Gem Trader, Pawn Shop, and Doofus.
            New fees when implemented will be as follows:

            15 Gems will get you a Horse.  25 Gems will buy a Fairy.
            And 40 Gems will buy ONE Orphan Child.  Access fee for
            Special Deals Menu is going up to 5 Gems.

          * Updated player database structure, adding two counters
            for tracking daily trades for Horses and Fairies.

April 20: * recompiled doofus igm. Added some debug code to help
            with analysis of how igm handles multiple adoptions,
            so I can adapt the data for use with Gem Trader igm.
          * debug code is only shown on-screen if you use CASTLE CAMELOT
            as your bbs name, so it won't bother you or your bbs users
            otherwise. No change needed yet in version number.

April 30: * Worked on Deals_Penalty, adoption code.

May 02:   * Finished rewrite of doofus.txt.
          * Updated documentation files, source code for new month.

May 08:   * reactivated some debug code for my own personal use.
          * recompiled doofus.exe.  Updated dg-notes.txt, doofus.txt files.

May 16:   * Horse Sale. Player already has horse, and asks to buy one.
          * identified error - not fixed yet.  Player offered 15 gems,
            which is correct price.  IGM shows Cheater code for the orphans
            trade.  Reason not identified yet.
          * Tested Grizelda event. Seems to work fine.

          * Verified usage of Repair_Lord_Stats in igm.
          * Verified usage of Potions_Penalty with Max HPs trade in igm.

          * Changed version to 1.42 beta.  Updated DIZ file, Docs files.

May 17:   * Added Cheater_News process from Gem Trader IGM code. Usage untested.
          * Added Adoption_News process, created today, from Gem Trader
            IGM code.  Usage untested.

          * Modified IGM's children code to use Adoption_News when adoptions
            processing has been completed in IGM.

May 30:   * Changed version to 1.44 beta.  Added code to grant small amount
            of Forest Fights when extra gems are paid for a horse.

          * Verified use of Potions_Penalty, Adoption_News, Cheater_news.

          * Removed ALL on-screen debug statements from usage in igm.

          * Changed version to 1.50 beta.  Extra Gems/Horse code works fine.

          * Created Horse_Sale code, containing some new dialogue.
          * Limited amount of Gems accepted for a Horse to 60.
          * Extra gems yeilds player up to 15 Strength points.

          * Increased amount of Hit-Points lost due to injury when player
            tries to buy Horse, when they already have one.
          * Changed penalty for embarassment from Defense loss to Charm loss.

June 02:  * Updated DIZ file, documentation files for IGM.
          * Recompiled doofus.exe.

June 03: * Retested usage of DOOFUS INSTALL and DOOFUS REMOVE
           setup program processes.  Both worked fine.

           program functions were tested and re-verified.

June 15: * Player database update: Added Potions_Sold variable.
             - Renamed HitPoints VAR to HPs_Lost.

         * List_Traders update: Added code for second on-screen usage report.
           Compiled - yes.  Fully coded - yes.  Tested in LORD? - DONE.

         * recompiled doofus.exe for testing.  DONE. Used v1.52.
         * New usage layout works fine.  Testing of usage of Potions_Sold
           variable worked as intended.

         * Changed version from 1.52 to 1.60 beta.

June 20: * Recompiled igm.  Revised doofus.txt some.

         * At this time, DOOFUS THE GNOME, unlike the Gem
           Trader and Pawn Shop IGMs, does not limit Potions
           purchases each day, or Adoptions each day.  But
           that will be changed sometime soon.

June 28:  * recompiled igm.

----------------------------------------------------------------
June 30-July 01: Worked on DOS LPEDIT update, and on
                 LPEDIT/32 utility creation.

July 02: * Recompiled Gem Trader IGM and Doofus the Gnome IGM.

July 04: * Recompiled IGM.  Did igm testing on July 05 morning.
         * Edited code used during DOOFUS CONFIG process.

July 05: * recompiled IGM.

July 08: * Code revision done to doofus.pas -no recompile today.
         * Revised the USES section comments for CHASWIGM.

July 11: * Recompiled igm.

July 16: * Changed dedication lines in Credits to reflect that IGM is
           now in tribute to Gordon Lewicky's memory.  Removed Gordon's
           beta tester data from igm documentation.
         * recompiled igm.

July 19: * Doofus.exe recompiled with code to update LordName
           field of incoming player if it is different from
           what is recorded for them in their database record.

July 22: * Revised gnomevar.inc Player database structure to
           better match one used by Gem Trader igm for purposes
           of creation of DG2EDIT.EXE program at later time.
            - Renamed TGnome.Gems_Traded VAR to TGnome.GemsTraded.
            - Renamed TGnome.Potions_Sold VAR to Elixirs.

         * Changed IGM to version 1.63 beta.
         * Recompiled doofus.exe.

         * Changed IGM Max Visits/Day back to 10, from 8.
           Visits is only field in igm that currently has a limit
           defined for it.  Adoptions access is denied if player
           is at or over 32,000 Kids.  Gems theft access is denied if
           player is at or over 32,000 gems.

         * Created DOOFUNIT.PAS, DOOFEDIT.PAS.
         * Created and fully tested DOOFEDIT.EXE utility program.
         * Went from 0.10 beta to 0.50 beta for DOOFEDIT.

         * Changed DOOFUS.EXE to 1.65 beta.

July 25: * Updated Range_Check procedure and Cottage_Ending process
           to handle over-range Game Level, Weapon Number, Armour
           Number, Kids, Player Kills, and Lays.

         * Changed IGM to 1.67.50 beta for testing of over-range
           LORD Stats handling.

July 26: * Reduced usage of Pause statements in IGM code at
           Daryl Stout's request.  Recompiled igm.

July 27: * Renamed Repair_Lord_Stats to Repair_Negative_Stats.

         * Added Repair_Over_Range_Stats process from GemTrade IGM code.

         * Rewrote IGM exit process using modified GemTrade igm code.

         * Version changed to 1.70 beta.

         * Created Display_Limits_Info process.  Verified usage.

         * Moved Display_Doofus_Info into main igm menu.  Verified usage there.

         * Put into effect 8,000 adoptions per day limit in igm code.
           Usage not verified yet.

           Not built into igm yet for sysop-configurable variable control
           from doofus.dat file - do that at later time.

         * Fixed glitch in Usage Reports where invalid Gems Traded column
           data was being displayed for players.

         * Fixed igm to stop clearing database values for Potions sales,
           gems traded, etc, when they are negative, in Update_Database_File
           and List_Traders processes.

         * Added code recognizing visits 6 through 10.  Added code to send
           player home after 10 visits, inside Title_Screen process - untested.

July 28: * Changed to v1.70.50 beta for testing of TConfig.KidsDay code.
         * Other testing needed: Use of Create_Database_File:
           - use of Visit #11+ coding:
           - use of KidsDay code in Stats screen:
           - use of KidsDay code in Read_Config:
             (a) handling of negative value.  (b) handling of value over 8000.
           - code in Secret Deals menu about Adoptions/Day limit.

July 29: * Worked on IGM and DOOFEDIT program updates.

July 30: * Worked on IGM and DOOFEDIT program updates.
         * Fixed problem where REad_Config processed kids/day limit incorrectly.

         * Changed DOOFEDIT to v.0.60 beta.
           - Now shows 'None' in numeric fields whose value is zero.

         * Changed IGM to v1.72 beta.

July 31: * worked on igm.  Limited Grizelda to one attack on
           a player per igm visit.

August 02: * Recompiled IGM and DOOFEDIT utility for new month.

           * Stats: Added value of Max_Gems_Traded limit to Gems Traded data.

           * Renamed GemsTrade_Limit in gnome3.pas to Max_Gems_Traded.

Aug. 04: * Updated IGM.  Updated DOOFEDIT utility.
         * Doofedit had glitch where Search for Player had the
           wrong menu code assigned to it.  Fixed glitch.

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

         * recompiled unit file.  * edited DoVisits code in doofedit.pas.
         * recompiled doofus.exe and doofedit.exe.

Aug. 12: * Worked on DOOFEDIT. Changed to version 0.65 beta.

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

Aug. 15: * Tweaking work on IGM.

Aug. 16: * Revised column #2 layout of Usage Reports.
           - dropped tracking of Hps_Lost database stat.
           - Added columns for Fairy Trades & Horse Trades.
         * Rewrote and retested Write_Usage_Reports.
         * Rewrote List_Traders process.
         * Changed IGM version to 1.74 beta.

         * Fixed glitch in doofedit.  When Gems Stolen value
           was changed, its data was being written to wrong
           location.  Fixed to write data to correct spot.

         * Since IGM does not allow potions trading beyond
           8,000 max points a day, I changed DOOFEDIT's editor
           code to allow Max HPs, Strength, Defense, Charm,
           and Forest menu entries to allow editing in -1,000
           to 8,000 data range.

        Negative values are allowed during initial coding of
        editor for use in testing how the IGM handles them.

         * Doofedit version changed to 0.675 Beta.

Aug. 17 - 20: * gnome1.pas, gnome2.pas - no changes made to files.
         * gnome3.pas - no changes made to file.

Aug. 20: * Eliminated usage of DOOFUNIT.pas. Moved its contents
           into the DOOFEDIT.PAS file.
         * Compiled and tested DOOFEDIT.EXE.  Works fine.
         * Added missing X menu code to Run_Editor process
           so that Search for Player will work properly in DOOFEDIT.

         * IGM version changed to 1.74 beta.
         * Doofedit version changed to 0.75 beta.

Aug. 21: * Gnome3.pas: Eliminated Max_Gems_Traded constant.
         * Edited View_Stats process.
         * Recompiled doofus.exe.

Aug. 31: * Recompiled Doofus.exe. No change made to Doofedit.
         * Docs: Updated Lordmenu information section.
============================================================

Sept. 01: * Doofus the Gnome changed to v1.75 Beta.
          * DoofEdit changed to version 0.80 beta.

Sept. 07: * Minor work on igm.  Recompiled doofus.exe.

Sept. 08: * Updated Title_Screen - Author lines.
          * recompiled gnome3.tpu file.
          * no change made to doofus.exe

Sept. 12: * Revised DOOFEDIT to v0.82 Beta, so it shows
            database record Number starting with 1, not 0.
          * compiled DOOFEDIT.exe.  Updated docs files.

Sept. 14: * Revised Kids_Day settings in igm code files.
          * New default setting is 1,250 adoptions/day.
          * New maximum setting is 5,000 adoptions/day.
          * did not recompile doofus.exe at this time.

Sept. 15: * Revised gnomevar.inc file.  Updated player
            database format.  Replaced HPs_Lost var with
            Kids_Lost.  Changed Gems_Stolen from LongInt
            to Integer.  Added Grizelda boolean var.
          * Revised gnome1.pas code to use Grizelda and
            Kids_lost player database variables.
          * Revised report #2 layout in Write_Usage_Reports
            to write a Kids_Lost column.

          * IGM version changed to 1.80 beta.  NOT TESTED YET.

          * Doofedit.  updated/not tested yet.
          * Changed Doofedit to use Kids_Lost, Grizelda Vars.
          * Changed Doofedit to version 0.86 beta.

          * Compiled & tested: Doofedit.exe.
          * Compiled doofus.exe.  Not retested yet in LORD session.

Sept. 16: * Rewrote the REPORT code block in DOOFUS.PAS to
            use standard code from Gem Trader with igm for
            executing the IGM's DOOFUS REPORT command.

          * Recompiled DOOFUS.EXE.

Sept. 18: * Verified igm works fine with new player database
            variables for Grizelda, Kids_Lost.
          * recompiled DOOFUS.exe.  Retained version 1.80 beta.

          * fixed glitch in DOOFEDIT.  Was showing Kids_Lost
            data where Grizelda info was supposed to be shown.
          * recompiled DOOFEDIT.exe.  Changed it to v0.88 beta.