Author Topic: Bot Control  (Read 11307 times)

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Bot Control
« on: January 05, 2011, 02:41:24 AM »
Post below is outdated. The most up to date version is on the svn: http://ownageclan.com/svn/war3source/War3Source_Addon_BotControl.sp

Just grab the latest version and enjoy

Decided to put together all my bot tweaks...

Bot Evasion:
Since bots have no trouble seeing you even with 100% transparency I decided to give the player evasion against bots. If you have transparency and a bot shoots you, you gain half your invisibility as evasion. For example Orcish Horde's Wind Walker changes your alpha to 0.4 -> 1.0 - 0.4 = 0.6 / 2 = 0.3 = 30% Evasion.

Cvars:
war3_bots_invisibility_gives_evasion "1" // Enable/Disable

___________________________________________________

Bot Race/Level scrambler:
Enables bots to distribute skill points when leveling as well as randomize their races/levels. Unlike the standalone version the bots now respect the rules for distributing skill points and won't level their skills in a way that causes them to reset 'em.

Commands:
war3_botscramble - Requires slay flag - scrambles all bots races/levels, setting them to a random race with a level depending on the cvars.

Cvars:
war3_bots_scramble_level "-1" // The level the bots should be scrambled to. -1 Means the max level of the specific race.
war3_bots_scramble_random "1" // Should the bots be assigned the level set by war3_bots_scramble_level or a random level from 0 to war3_bots_scramble_level? Set to 1 to activate
war3_bots_scramble_on_round "1" // Set to 1 to scramble bots each round.
war3_bots_scramble_announce "1" // Set to 1 to announce the scrambling in chat.

___________________________________________________

Bot Item support:
Enables bots to buy items based on predefined loadouts or just random items on spawn.

Cvars:
war3_bots_buy_items "1" // Enable/Disable
war3_bots_buy_random "1" // Random items or predefined loadouts?
war3_bots_buy_random_chance "70" // Chance a bot will try to buy a item on spawn. If he has max items he won't try it. Everytime he buys a item the chance is multiplied by 0.8 and rerolled (So a bot can buy multiple items on spawn!)

Config:
Put war3source_bots_loadouts.cfg into addons/sourcemod/config.

Notes:
If you want you can try adding your own loadouts to this file, just stick with the item 1/item 2/item 3 pattern.

Bugs:
The runner loadout doesn't buy the cloak (For some reason the exploded string returns "cloa" instead of "cloak" :( ). The file part of this code is just a big copy & paste from something else and my knowledge of handling Strings in such a low level language is pretty nonexistant, so if somebody could help me improve this stuff it would be really nice! Namely the functions ParseLoadoutList and OnWar3EventSpawn (The part that is run in the else of if(GetConVarBool(botBuysRandom)))

___________________________________________________


Changelog:
1.1.1: Bots don't get scrambled to a race with "nobots" flag.
1.1: Added random bot item buy
1.0: Release
« Last Edit: March 21, 2012, 12:49:34 PM by Glider⠠⠵ »

[Oddity]TeacherCreature

  • Sr. Member
  • ****
  • Posts: 467
    • View Profile
Re: Bot Control
« Reply #1 on: January 05, 2011, 08:41:21 AM »
Was there ever a native created to add bots for a duration and define their team weapon etc?

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Bot Control
« Reply #2 on: January 05, 2011, 10:33:31 AM »
No. That was terrible in 1.6 and I don't want anything to do with that.

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Bot Control
« Reply #3 on: January 05, 2011, 10:33:48 AM »
Was there ever a native created to add bots for a duration and define their team weapon etc?

no



OMFG KVs

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Bot Control
« Reply #4 on: January 05, 2011, 11:15:58 AM »
Updated OP with random item buying support for bots

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Bot Control
« Reply #5 on: January 05, 2011, 04:49:27 PM »
OP?

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Bot Control
« Reply #6 on: January 05, 2011, 05:10:44 PM »
dude single addons would be better since i can package them in one by one

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Bot Control
« Reply #7 on: January 05, 2011, 06:02:33 PM »
OP?

Original Post.

dude single addons would be better since i can package them in one by one

But annoys the fuck outta me when I have to update 5 different plugins for my two servers just because I did some tweaks ;o. If you're interested in anything particular I can put up the code for only those things you're interested in.

I'll look into adding the nobots flag to the race scrambler later. Updated OP with a new version that doesn't scramble bots to a nobots race
« Last Edit: January 05, 2011, 06:07:19 PM by Foolishfox »

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Bot Control
« Reply #8 on: January 05, 2011, 06:48:39 PM »
wut tweak?

each addon would be independent of each other

[Oddity]TeacherCreature

  • Sr. Member
  • ****
  • Posts: 467
    • View Profile
Re: Bot Control
« Reply #9 on: January 24, 2011, 11:17:15 AM »
No. That was terrible in 1.6 and I don't want anything to do with that.
Not familiar with what your talking about..

I mean if I want a race like Cryptlord to spawn a carrion beetle. I want to take a bot force it to the crypts team teleport it to the crypt make the model look liek a beetle and tehn give it a knife , or skills etc, and after 20 seconds i want it to be removed from the server.

In CSS this is posing a problem if u use bot_add u can add the bot check teams force to u etc etc but removing the bot does not want to work

if you use bot_kick and use the bots name or id it works but then any remaining bots on the server change their names for some odd reason. anyon have an idea about this

Crazy-acm

  • Newbie
  • *
  • Posts: 39
  • STEAMWorld admin
    • View Profile
Re: Bot Control
« Reply #10 on: March 24, 2011, 03:54:21 AM »
war3_bots_scramble_announce "1" // Set to 1 to announce the scrambling in chat.
don't work, i set it to 0, and message apear agai and again

knitfox

  • Newbie
  • *
  • Posts: 2
    • View Profile
    • Email
Re: Bot Control
« Reply #11 on: April 18, 2011, 06:58:20 AM »
Does this still work after the patch? I had it working perfectly before, but now I got the error:

"L 04/18/2011 - 05:51:18: [SM] Unable to load plugin "war3\War3Source_Addon_BotControl.smx": Native "War3_GetGame" was not found"

Thanks,

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Bot Control
« Reply #12 on: April 18, 2011, 10:07:08 AM »
need to compile it with latest version

micazoid

  • Newbie
  • *
  • Posts: 5
    • View Profile
Re: Bot Control
« Reply #13 on: February 11, 2012, 07:01:17 AM »
Compiling isnt working

/// War3Source_Addon_BotControl.sp
// C:\servers\csswc2\css\cstrike\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp(43) : warning 213: tag mismatch
// C:\servers\csswc2\css\cstrike\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp(188) : error 017: undefined symbol "War3_SetSkillLevel"
// C:\servers\csswc2\css\cstrike\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp(213) : error 017: undefined symbol "War3_SetSkillLevel"

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Bot Control
« Reply #14 on: February 11, 2012, 07:56:39 AM »
Change War3_SetSkillLevel to War3_SetSkillLevelINTERNAL

micazoid

  • Newbie
  • *
  • Posts: 5
    • View Profile
Re: Bot Control
« Reply #15 on: February 12, 2012, 06:17:21 AM »
 THX that worked.

Thank you for this plugin

micazoid

  • Newbie
  • *
  • Posts: 5
    • View Profile
Re: Bot Control
« Reply #16 on: February 12, 2012, 01:24:35 PM »
Now server crashes with following error :(

L 02/12/2012 - 13:29:14: [wc3\War3Source_Engine_DamageSystem.smx] You may not set damage mod percent here, use ....Pre forward
L 02/12/2012 - 13:29:14: [wc3\War3Source_Engine_DamageSystem.smx] War3Source_Addon_BotControl.smx
L 02/12/2012 - 13:29:14: [SM] Plugin encountered error 4: Invalid parameter or parameter type
L 02/12/2012 - 13:29:14: [SM] Native "PrintHintText" reported: Language phrase "You Evaded a Shot" not found
L 02/12/2012 - 13:29:14: [SM] Displaying call stack trace for plugin "War3Source_Addon_BotControl.smx":
L 02/12/2012 - 13:29:14: [SM]   
  •   Line 2551, W3SIncs/War3Source_Interface.inc::W3MsgEvaded()

L 02/12/2012 - 13:29:14: [SM]   [1]  Line 101, C:\Server\csswc2\css\cstrike\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp::OnW3TakeDmgBullet()

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Bot Control
« Reply #17 on: February 12, 2012, 05:07:22 PM »
I guess I should fix this stuff up properly and post a updated version. I'll see if I can get around it next week (Currently working ~10 hours per day)

nladefoged

  • Newbie
  • *
  • Posts: 15
    • View Profile
    • Email
Re: Bot Control
« Reply #18 on: February 13, 2012, 02:17:15 PM »
can i get a compiled version of that? :) im not sure how to do it, cant find any compile batch

micazoid

  • Newbie
  • *
  • Posts: 5
    • View Profile
Re: Bot Control
« Reply #19 on: February 13, 2012, 02:54:14 PM »
No Rush with the Fix. I thought I better tell ^^

To compile this you need sourcemod installed and the folder W3SIncs copied to sourcemod/scripting
Then copy the .sp file to the scripting folder and drag and drop it to the compile.exe

If all is right, then you will get a DOS-Prompt telling that compile was succesfull. You know have a smx file in sourcemod/scriping/compiled folder.

nladefoged

  • Newbie
  • *
  • Posts: 15
    • View Profile
    • Email
Re: Bot Control
« Reply #20 on: February 13, 2012, 03:00:53 PM »
yeah i seen on youtube how to do it , but when i download from ownage-clan, i dont get a compile batch file, i only get a map called "compiled" and in there everything is already compiled :P

Faqop

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Bot Control
« Reply #21 on: March 21, 2012, 03:22:16 AM »
First I just want to apologize if my question is dumb, I'm very new to this.  Literally just finished installing everything and getting the server up and running.

Anyways, I went to compile this file and got the following error message:
Code: [Select]
//SourceMod Batch Compiler
// by the SourceMod Dev Team


//// War3Source_Addon_BotControl.sp
// C:\HLServer\orangebox\tf\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp(43) : warning 213: tag mismatch
// C:\HLServer\orangebox\tf\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp(188) : error 017: undefined symbol "War3_SetSkillLevel"
// C:\HLServer\orangebox\tf\addons\sourcemod\scripting\War3Source_Addon_BotControl.sp(213) : error 017: undefined symbol "War3_SetSkillLevel"
//
// 2 Errors.
//
// Compilation Time: 0.39 sec
// ----------------------------------------

Press enter to exit ...

I'm sure I should be able to figure out how to fix that, but I looked through the code and found the lines with the errors and couldn't see anything wrong.  Like I said I'm very new to this, so any help would be greatly appreciated.

Thank you!

iceman

  • Full Member
  • ***
  • Posts: 220
    • View Profile
Re: Bot Control
« Reply #22 on: March 21, 2012, 05:19:38 AM »
Read the thread again  ;)

Ownz

  • Developer
  • Administrator
  • Hero Member
  • *****
  • Posts: 2437
  • chmod -R 777 *
    • View Profile
    • OwnageClan
Re: Bot Control
« Reply #23 on: March 21, 2012, 06:46:54 AM »
Change War3_SetSkillLevel to War3_SetSkillLevelINTERNAL

hm... why didnt glider update this?

Glider⠠⠵

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 472
  • ⠠⠵
    • View Profile
Re: Bot Control
« Reply #24 on: March 21, 2012, 11:48:59 AM »
Change War3_SetSkillLevel to War3_SetSkillLevelINTERNAL

hm... why didnt glider update this?

Rarely on my coding pc, working overtime and late shifts