@@ -313,35 +313,73 @@ void BOT_SoldierAssignSkills(edict_t *ent)
313313
314314void BOT_MageAssignSkills (edict_t * ent )
315315{
316- BOT_UpgradeSkill (ent , FIREBALL , 1 );
317- BOT_UpgradeSkill (ent , POWER_REGEN , 3 ); // clvl 2
318- BOT_UpgradeSkill (ent , FIREBALL , 9 );
319- BOT_UpgradeSkill (ent , POWER_REGEN , 2 ); // clvl 8
320- BOT_UpgradeSkill (ent , METEOR , 10 ); // clvl 13
321- //BOT_UpgradeSkill(ent, NOVA, 10);
322- BOT_UpgradeSkill (ent , FIREBALL , 5 );
323- BOT_UpgradeSkill (ent , METEOR , 5 );
324- //BOT_UpgradeSkill(ent, NOVA, 5);
325- BOT_UpgradeSkill (ent , LIGHTNING , 10 );
326- BOT_UpgradeSkill (ent , FIREBALL , 10 );
327- BOT_UpgradeSkill (ent , LIGHTNING_STORM , 10 );
316+ if (random () > 0.5 )
317+ {
318+ // ice/cold-lightning build
319+ BOT_UpgradeSkill (ent , GLACIAL_SPIKE , 1 );
320+ BOT_UpgradeSkill (ent , POWER_REGEN , 3 ); // clvl 2
321+ BOT_UpgradeSkill (ent , GLACIAL_SPIKE , 9 );
322+ BOT_UpgradeSkill (ent , POWER_REGEN , 2 ); // clvl 8
323+ BOT_UpgradeSkill (ent , FROZEN_ORB , 10 ); // clvl 13
324+ BOT_UpgradeSkill (ent , POWER_REGEN , 5 ); // clvl 15: PCR is maxed
325+ BOT_UpgradeSkill (ent , NOVA , 10 ); // clvl 20: all ice skills are level 10
326+ BOT_UpgradeSkill (ent , FROZEN_ORB , 5 );
327+ BOT_UpgradeSkill (ent , GLACIAL_SPIKE , 5 ); // clvl 25
328+ BOT_UpgradeSkill (ent , NOVA , 5 ); // clvl 28: all ice skills are level 15
329+ BOT_UpgradeSkill (ent , STATIC_FIELD , 10 ); // clvl 33: lightning build begins with SF, which benefits all skills
330+ BOT_UpgradeSkill (ent , LIGHTNING_STORM , 10 );
331+ BOT_UpgradeSkill (ent , LIGHTNING , 10 ); // clvl 43: all lightning skills are level 10
332+ BOT_UpgradeSkill (ent , STATIC_FIELD , 5 );
333+ BOT_UpgradeSkill (ent , LIGHTNING_STORM , 5 );
334+ BOT_UpgradeSkill (ent , LIGHTNING , 5 ); // clvl 50: all lightning skills are level 15
335+ }
336+ else
337+ {
338+ // lightning-ice/cold build
339+ BOT_UpgradeSkill (ent , LIGHTNING , 1 );
340+ BOT_UpgradeSkill (ent , POWER_REGEN , 3 ); // clvl 2
341+ BOT_UpgradeSkill (ent , LIGHTNING , 9 );
342+ BOT_UpgradeSkill (ent , POWER_REGEN , 2 ); // clvl 8
343+ BOT_UpgradeSkill (ent , LIGHTNING_STORM , 10 ); // clvl 13
344+ BOT_UpgradeSkill (ent , POWER_REGEN , 5 ); // clvl 15: PCR is maxed
345+ BOT_UpgradeSkill (ent , STATIC_FIELD , 10 ); // clvl 20: all lightning skills are level 10
346+ BOT_UpgradeSkill (ent , LIGHTNING_STORM , 5 );
347+ BOT_UpgradeSkill (ent , LIGHTNING , 5 ); // clvl 25
348+ BOT_UpgradeSkill (ent , STATIC_FIELD , 5 ); // clvl 28: all lightning skills are level 15
349+ BOT_UpgradeSkill (ent , GLACIAL_SPIKE , 10 ); // clvl 33: ice/cold build begins with GS to freeze enemies in-place
350+ BOT_UpgradeSkill (ent , FROZEN_ORB , 10 );
351+ BOT_UpgradeSkill (ent , NOVA , 10 ); // clvl 43: all ice/cold skills are level 10
352+ BOT_UpgradeSkill (ent , GLACIAL_SPIKE , 5 );
353+ BOT_UpgradeSkill (ent , FROZEN_ORB , 5 );
354+ BOT_UpgradeSkill (ent , NOVA , 5 ); // clvl 50: all ice/cold skills are level 15
355+ }
328356}
329357
330358void BOT_KnightAssignSkills (edict_t * ent )
331359{
332360 BOT_UpgradeSkill (ent , PLASMA_BOLT , 1 );
333361 BOT_UpgradeSkill (ent , ARMOR_REGEN , 1 );
334362 BOT_UpgradeSkill (ent , REGENERATION , 1 );
335- BOT_UpgradeSkill (ent , ARMOR_UPGRADE , 10 ); // clvl 2- 7
336- BOT_UpgradeSkill (ent , REGENERATION , 4 );
337- BOT_UpgradeSkill (ent , VITALITY , 3 ); // clvl 10
338- BOT_UpgradeSkill (ent , ARMOR_REGEN , 4 ); // clvl 11- 12
339- BOT_UpgradeSkill (ent , PLASMA_BOLT , 4 ); // clvl 13- 14
363+ BOT_UpgradeSkill (ent , ARMOR_UPGRADE , 10 ); // clvl 7
364+ BOT_UpgradeSkill (ent , REGENERATION , 3 ); // clvl 8
365+ BOT_UpgradeSkill (ent , VITALITY , 4 ); // clvl 10
366+ BOT_UpgradeSkill (ent , ARMOR_REGEN , 4 ); // clvl 12
367+ BOT_UpgradeSkill (ent , PLASMA_BOLT , 4 ); // clvl 14
340368 BOT_UpgradeSkill (ent , POWER_REGEN , 2 ); // clvl 15
341369 BOT_UpgradeSkill (ent , ARMOR_REGEN , 5 );
342- BOT_UpgradeSkill (ent , REGENERATION , 5 ); // clvl 20
370+ BOT_UpgradeSkill (ent , REGENERATION , 6 ); // clvl 21
371+ BOT_UpgradeSkill (ent , PLASMA_BOLT , 5 ); // clvl 23: all primary skills are level 10
372+ BOT_UpgradeSkill (ent , POWER_REGEN , 4 );
373+ BOT_UpgradeSkill (ent , VITALITY , 6 ); // clvl 28
374+ BOT_UpgradeSkill (ent , ARMOR_UPGRADE , 5 );
375+ BOT_UpgradeSkill (ent , ARMOR_REGEN , 5 );
376+ BOT_UpgradeSkill (ent , REGENERATION , 5 );
377+ BOT_UpgradeSkill (ent , PLASMA_BOLT , 5 ); // clvl 38: all primary skills are level 15
378+ BOT_UpgradeSkill (ent , RESISTANCE , 5 );
379+ BOT_UpgradeSkill (ent , GHOST , 5 ); // clvl 43
380+ BOT_UpgradeSkill (ent , ARMOR_UPGRADE , 5 );
343381 BOT_UpgradeSkill (ent , PLASMA_BOLT , 5 );
344- BOT_UpgradeSkill (ent , POWER_SHIELD , 10 );
382+ BOT_UpgradeSkill (ent , POWER_REGEN , 4 ); // clvl 50
345383}
346384
347385void BOT_VampireAssignSkills (edict_t * ent )
@@ -360,13 +398,19 @@ void BOT_VampireAssignSkills(edict_t* ent)
360398
361399void BOT_NecroAssignSkills (edict_t * ent )
362400{
401+ BOT_UpgradeSkill (ent , SKELETON , 1 );
363402 BOT_UpgradeSkill (ent , POWER_REGEN , 4 ); // clvl 2
364- BOT_UpgradeSkill (ent , SKELETON , 10 ); // clvl 7
365- BOT_UpgradeSkill (ent , POWER_REGEN , 2 ); // clvl 8
366- BOT_UpgradeSkill (ent , AMP_DAMAGE , 10 ); // clvl 13
367- BOT_UpgradeSkill (ent , SKELETON , 5 ); // clvl 16
368- BOT_UpgradeSkill (ent , STATIC_FIELD , 10 ); // clvl 21
369- BOT_UpgradeSkill (ent , AMP_DAMAGE , 5 ); // clvl 23
403+ BOT_UpgradeSkill (ent , SKELETON , 9 ); // clvl 7
404+ BOT_UpgradeSkill (ent , GOLEM , 10 ); // clvl 12: skeleton/golem is level 10
405+ BOT_UpgradeSkill (ent , AMP_DAMAGE , 10 ); // clvl 17
406+ BOT_UpgradeSkill (ent , LIFE_TAP , 10 ); // clvl 22: curses are level 10
407+ BOT_UpgradeSkill (ent , POWER_REGEN , 2 ); // clvl 23
408+ BOT_UpgradeSkill (ent , GOLEM , 10 );
409+ BOT_UpgradeSkill (ent , SKELETON , 10 ); // clvl 33: skeleton/golem is level 20
410+ BOT_UpgradeSkill (ent , AMP_DAMAGE , 10 );
411+ BOT_UpgradeSkill (ent , LIFE_TAP , 10 ); // clvl 43: curses are level 20
412+ BOT_UpgradeSkill (ent , PLAGUE , 10 ); // clvl 48
413+ BOT_UpgradeSkill (ent , POWER_REGEN , 4 ); // clvl 50: PCR is maxed
370414}
371415
372416void BOT_UpgradeWeapon (edict_t * ent , int weapID )
@@ -392,7 +436,7 @@ void BOT_UpgradeWeapon(edict_t* ent, int weapID)
392436 while (ent -> myskills .weapon_points > 0 )
393437 {
394438 max = ent -> myskills .weapons [w ].mods [i ].soft_max ;
395- //gi.dprintf("soft max: %d level: %d\n", max, ent->myskills.weapons[weapon_index ].mods[i].current_level);
439+ //gi.dprintf("soft max: %d level: %d\n", max, ent->myskills.weapons[w ].mods[i].current_level);
396440 if (ent -> myskills .weapons [w ].mods [i ].current_level < max )
397441 {
398442 ent -> myskills .weapons [w ].mods [i ].current_level ++ ;
0 commit comments