codemp/game/chars.h

Go to the documentation of this file.
00001 // Copyright (C) 1999-2000 Id Software, Inc.
00002 //
00003 //===========================================================================
00004 //
00005 // Name:                        chars.h
00006 // Function:            bot characteristics
00007 // Programmer:          Mr Elusive (MrElusive@idsoftware.com)
00008 // Last update:         1999-09-08
00009 // Tab Size:            4 (real tabs)
00010 //===========================================================================
00011 
00012 
00013 //========================================================
00014 //========================================================
00015 //name
00016 #define CHARACTERISTIC_NAME                                                     0       //string
00017 //gender of the bot
00018 #define CHARACTERISTIC_GENDER                                           1       //string ("male", "female", "it")
00019 //attack skill
00020 // >  0.0 && <  0.2 = don't move
00021 // >  0.3 && <  1.0 = aim at enemy during retreat
00022 // >  0.0 && <  0.4 = only move forward/backward
00023 // >= 0.4 && <  1.0 = circle strafing
00024 // >  0.7 && <  1.0 = random strafe direction change
00025 #define CHARACTERISTIC_ATTACK_SKILL                                     2       //float [0, 1]
00026 //weapon weight file
00027 #define CHARACTERISTIC_WEAPONWEIGHTS                            3       //string
00028 //view angle difference to angle change factor
00029 #define CHARACTERISTIC_VIEW_FACTOR                                      4       //float <0, 1]
00030 //maximum view angle change
00031 #define CHARACTERISTIC_VIEW_MAXCHANGE                           5       //float [1, 360]
00032 //reaction time in seconds
00033 #define CHARACTERISTIC_REACTIONTIME                                     6       //float [0, 5]
00034 //accuracy when aiming
00035 #define CHARACTERISTIC_AIM_ACCURACY                                     7       //float [0, 1]
00036 //weapon specific aim accuracy
00037 #define CHARACTERISTIC_AIM_ACCURACY_MACHINEGUN          8       //float [0, 1]
00038 #define CHARACTERISTIC_AIM_ACCURACY_SHOTGUN                     9       //float [0, 1]
00039 #define CHARACTERISTIC_AIM_ACCURACY_ROCKETLAUNCHER      10      //float [0, 1]
00040 #define CHARACTERISTIC_AIM_ACCURACY_GRENADELAUNCHER     11      //float [0, 1]
00041 #define CHARACTERISTIC_AIM_ACCURACY_LIGHTNING           12
00042 #define CHARACTERISTIC_AIM_ACCURACY_PLASMAGUN           13      //float [0, 1]
00043 #define CHARACTERISTIC_AIM_ACCURACY_RAILGUN                     14
00044 #define CHARACTERISTIC_AIM_ACCURACY_BFG10K                      15      //float [0, 1]
00045 //skill when aiming
00046 // >  0.0 && <  0.9 = aim is affected by enemy movement
00047 // >  0.4 && <= 0.8 = enemy linear leading
00048 // >  0.8 && <= 1.0 = enemy exact movement leading
00049 // >  0.5 && <= 1.0 = prediction shots when enemy is not visible
00050 // >  0.6 && <= 1.0 = splash damage by shooting nearby geometry
00051 #define CHARACTERISTIC_AIM_SKILL                                        16      //float [0, 1]
00052 //weapon specific aim skill
00053 #define CHARACTERISTIC_AIM_SKILL_ROCKETLAUNCHER         17      //float [0, 1]
00054 #define CHARACTERISTIC_AIM_SKILL_GRENADELAUNCHER        18      //float [0, 1]
00055 #define CHARACTERISTIC_AIM_SKILL_PLASMAGUN                      19      //float [0, 1]
00056 #define CHARACTERISTIC_AIM_SKILL_BFG10K                         20      //float [0, 1]
00057 //========================================================
00058 //chat
00059 //========================================================
00060 //file with chats
00061 #define CHARACTERISTIC_CHAT_FILE                                        21      //string
00062 //name of the chat character
00063 #define CHARACTERISTIC_CHAT_NAME                                        22      //string
00064 //characters per minute type speed
00065 #define CHARACTERISTIC_CHAT_CPM                                         23      //integer [1, 4000]
00066 //tendency to insult/praise
00067 #define CHARACTERISTIC_CHAT_INSULT                                      24      //float [0, 1]
00068 //tendency to chat misc
00069 #define CHARACTERISTIC_CHAT_MISC                                        25      //float [0, 1]
00070 //tendency to chat at start or end of level
00071 #define CHARACTERISTIC_CHAT_STARTENDLEVEL                       26      //float [0, 1]
00072 //tendency to chat entering or exiting the game
00073 #define CHARACTERISTIC_CHAT_ENTEREXITGAME                       27      //float [0, 1]
00074 //tendency to chat when killed someone
00075 #define CHARACTERISTIC_CHAT_KILL                                        28      //float [0, 1]
00076 //tendency to chat when died
00077 #define CHARACTERISTIC_CHAT_DEATH                                       29      //float [0, 1]
00078 //tendency to chat when enemy suicides
00079 #define CHARACTERISTIC_CHAT_ENEMYSUICIDE                        30      //float [0, 1]
00080 //tendency to chat when hit while talking
00081 #define CHARACTERISTIC_CHAT_HITTALKING                          31      //float [0, 1]
00082 //tendency to chat when bot was hit but didn't dye
00083 #define CHARACTERISTIC_CHAT_HITNODEATH                          32      //float [0, 1]
00084 //tendency to chat when bot hit the enemy but enemy didn't dye
00085 #define CHARACTERISTIC_CHAT_HITNOKILL                           33      //float [0, 1]
00086 //tendency to randomly chat
00087 #define CHARACTERISTIC_CHAT_RANDOM                                      34      //float [0, 1]
00088 //tendency to reply
00089 #define CHARACTERISTIC_CHAT_REPLY                                       35      //float [0, 1]
00090 //========================================================
00091 //movement
00092 //========================================================
00093 //tendency to crouch
00094 #define CHARACTERISTIC_CROUCHER                                         36      //float [0, 1]
00095 //tendency to jump
00096 #define CHARACTERISTIC_JUMPER                                           37      //float [0, 1]
00097 //tendency to walk
00098 #define CHARACTERISTIC_WALKER                                           48      //float [0, 1]
00099 //tendency to jump using a weapon
00100 #define CHARACTERISTIC_WEAPONJUMPING                            38      //float [0, 1]
00101 //tendency to use the grapple hook when available
00102 #define CHARACTERISTIC_GRAPPLE_USER                                     39      //float [0, 1]  //use this!!
00103 //========================================================
00104 //goal
00105 //========================================================
00106 //item weight file
00107 #define CHARACTERISTIC_ITEMWEIGHTS                                      40      //string
00108 //the aggression of the bot
00109 #define CHARACTERISTIC_AGGRESSION                                       41      //float [0, 1]
00110 //the self preservation of the bot (rockets near walls etc.)
00111 #define CHARACTERISTIC_SELFPRESERVATION                         42      //float [0, 1]
00112 //how likely the bot is to take revenge
00113 #define CHARACTERISTIC_VENGEFULNESS                                     43      //float [0, 1]  //use this!!
00114 //tendency to camp
00115 #define CHARACTERISTIC_CAMPER                                           44      //float [0, 1]
00116 //========================================================
00117 //========================================================
00118 //tendency to get easy frags
00119 #define CHARACTERISTIC_EASY_FRAGGER                                     45      //float [0, 1]
00120 //how alert the bot is (view distance)
00121 #define CHARACTERISTIC_ALERTNESS                                        46      //float [0, 1]
00122 //how much the bot fires it's weapon
00123 #define CHARACTERISTIC_FIRETHROTTLE                                     47      //float [0, 1]
00124