.:: Bots United ::.  
filebase forums discord server github wiki web
cubebot epodbot fritzbot gravebot grogbot hpbbot ivpbot jkbotti joebot
meanmod podbotmm racc rcbot realbot sandbot shrikebot soulfathermaps yapb

Go Back   .:: Bots United ::. > Cyborg Factory > POD-Bot mm > Releases, Installers, Docs & Coding
Releases, Installers, Docs & Coding Where the official development happens

Reply
 
Thread Tools
PODBOT2.6MM after PMB...work still pending
Old
  (#1)
SoUlFaThEr
Moderator
 
SoUlFaThEr's Avatar
 
Status: Offline
Posts: 860
Join Date: Mar 2004
Default PODBOT2.6MM after PMB...work still pending - 14-04-2004

here is our new podbot 2.6mm thread.

lets continue the work on it in here.

first items to fix:

1. that the bots dont hit buttons at all unless a flagged waypoint is there.
2. that a button flag is no longer an automatic thing. it needs to be added to the menus in the waypoint editor so WE can place a button flag if theres REALLY a button a bot needs to hit... this is a huge problem solve!

behavior is not an issue right now. but if this is easy:
1. bomb carriers have a default NORMAL behavior pattern
2. hostage holders have a default AGGRESSIVE behavior
3. a VIP has a default NORMAL behavior.



Last edited by SoUlFaThEr; 14-04-2004 at 21:28..
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#2)
Pierre-Marie Baty
Roi de France
 
Pierre-Marie Baty's Avatar
 
Status: Offline
Posts: 5,049
Join Date: Nov 2003
Location: 46°43'60N 0°43'0W 0.187A
Default Re: PODBOT2.6MM after PMB...work still pending - 14-04-2004

Out of curiousity I've had a quick look in the code for that button problem and I've found something horrible.

The button flag on waypoints doesn't have any purpose.
It's useless. The bots just ignore it.

It's there, you can set the flag, but there's no code to tell the bot how to handle it!

The bots only press the buttons they see on a random basis.

This needs to change. And while you're at it, implement the button usage the right way this time, like Stefan is saying.

And about the personality thingy, here's at least something I can tell you :

The bot personalities are set during the BotCreate() function, i.e. when the bot is created, NOT when the round is restarted. In order for the bomb carrier or the VIP to have a personality depending on its role in the team, you have to change that and alter the bot personalities in BotSpawnInit() which is the function that resets the bot at each start of a new round. If you do so however, don't forget to randomize the personalities for the bots that neither have a bomb nor are the VIP, else you'll end up with only "normal" personalities bots.



RACC home - Bots-United: beer, babies & bots (especially the latter)
"Learn to think by yourself, else others will do it for you."
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#3)
SoUlFaThEr
Moderator
 
SoUlFaThEr's Avatar
 
Status: Offline
Posts: 860
Join Date: Mar 2004
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

cool PM thanks for that extremely valuable info.

im really wondering why he added a button flag that doesnt have a corresponding code to tell the bot about it. crazy shit.

is Austin capable of doing what Stephan did with the buttons/trigger-multiples? He was writing me his idea of how it should happen and it seemed really similar to Stephans thing.

and the personality thing seems like it COULD work...
so thats a good sign !!

Austin?

here is StephanHendricks theory about the door which works on maps like de_prodigy and de_rats(whose buttons are not func_buttons but rather...trigger_multiples!) :

- find a button to open the door (target/targetname match)
- traceline
- when traceline fails
- check on why
- when traceline returns "worldspawn" AND you are checking for a trigger_multiple, find a waypoint/node very close to this.
- when available. RETRY the traceline
- on success, still go to it!



Last edited by SoUlFaThEr; 15-04-2004 at 03:59..
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#4)
sPlOrYgOn
<-- He did it.
 
sPlOrYgOn's Avatar
 
Status: Offline
Posts: 1,558
Join Date: Jan 2004
Location: Los Angeles, California, USA, North America, Earth, Solar System, Milky Way.
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

Alright heres a list of what i've changed from the Podbot SDK
Quote:
+ Stopped bots from randomly pushing buttons (WARNING: Since there is no code to handle button flags the bots will NOT push buttons at all)
+ Button flag no longer added automaticly
+ Fixed the bug i found.. about the addbot command in the podbot.cfg
BOTS WILL NOT PUSH BUTTONS!!!
I do not know how to implement this well but I have an idea how to..
I do not feel that I know enough to add my 'idea' of how it should be done..
http://www.mapzap.org/podbot.zip
my releases will be uploaded there.

[edit]
I have also just decided I will try to implement them pushing buttons when there is a button flag but I will be expecting someone (Austin) to take a look at it and fix up any errors.
[/edit]
[edit2]
I have just changed my mind..
This is way out of my head..
[/edit2]
[edit3]
*just wondering* Why doesn't podbot just use TraceToss for calculating where to throw a nade?
(just found TraceToss in Metamod's Engine Notes, me know nothinga bout it.)
[/edit3]
[edit4]
I uploaded the wrong file and just reuploaded.
[/edit4]
[edit5]
btw no linux build. that linux build is from last version. If you read my other posts you would know why.
Anyways it shouldn't be any useful to linux people since they don't push buttons. This is more of a release for waypointers since SF suggested that button flag no longer automaticly added to waypoints
[/edit5]
[edit6]
just rebuilt because I just realized that if i removed auto placing of button flags and theres no option for manually placing them then they're as good as gone.. so I just added the button flag to the Change Flag menu.
Please redownload.
[/edit6]
[edit7]
I just noticed that the angle "problem" that was fixed by pmb in the other thread about 10 pages back isn't in the podbot sdk..
on purpose or no?
[/edit7]

Last edited by sPlOrYgOn; 15-04-2004 at 03:33..
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#5)
SoUlFaThEr
Moderator
 
SoUlFaThEr's Avatar
 
Status: Offline
Posts: 860
Join Date: Mar 2004
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

before i download.......did you put in the button flag that the bot should USE. and also place in our flag menu?...does it have a sprite so we know it? is it part of the flag mentions on the upper left like pmb has done for us?

did you test if the bot is pressing anything it sees without a button flag anywhere?

if you did, and all the things i mentioned above are IN it...... then ill download this file.
and THANK you too

did you test it?

your 7 edits makes me wonder......doesnt look good man (changed my mind/wrong upload)

also please toss the code you made for these new options into this thread when you update ........that will be standard procedure on updates for the bot from now on. please do this......we will be able to correct bugs in it much faster this way if theres a question about it.

also Musicman was making some things happen.......and they are surely NOT in your portion.......this is what i meant about getting organized you guys



Last edited by SoUlFaThEr; 15-04-2004 at 04:04..
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#6)
sPlOrYgOn
<-- He did it.
 
sPlOrYgOn's Avatar
 
Status: Offline
Posts: 1,558
Join Date: Jan 2004
Location: Los Angeles, California, USA, North America, Earth, Solar System, Milky Way.
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

Alright sorry.
I was sorta in a rush..
I'll go look for the code right now.
I only tested if it auto added button flags and it didn't so that part is working.
But i didn't delete it all. I only delete the part that checks for if a button is near.
I'll go look through the code again and see what I changed and post it. I'm on a different computer right now... I keep getting kicked off of my fast computer :'(
[edit]
in bot.cpp around line 996 find:
Code:
        if ((strcmp ("func_button", STRING (pent->v.classname)) == 0)
             && (strncmp ("cam", STRING (pent->v.target), 3) != 0))
         {
            bCanPickup = TRUE;
            iPickType = PICKUP_BUTTON;
         }
and change it to:
Code:
/*         if ((strcmp ("func_button", STRING (pent->v.classname)) == 0)
             && (strncmp ("cam", STRING (pent->v.target), 3) != 0))
         {
            bCanPickup = TRUE;
            iPickType = PICKUP_BUTTON;
         }*/
in waypoint.cpp around line 394 find:
Code:
  while (!FNullEnt (pent = FIND_ENTITY_IN_SPHERE (pent, pHostEdict->v.origin, radius)))
   {
      strcpy (item_name, STRING (pent->v.classname));

      if ((strcmp ("func_button", item_name) == 0)
          && (strncmp ("cam", STRING (pent->v.target), 3) != 0))
      {
         UTIL_HostPrint (HUD_PRINTCENTER, "Button detected. Setting Flag!\n");
         p->flags = W_FL_USE_BUTTON;
      }
   }
and change it to:
Code:
/*   while (!FNullEnt (pent = FIND_ENTITY_IN_SPHERE (pent, pHostEdict->v.origin, radius)))
   {
      strcpy (item_name, STRING (pent->v.classname));

      if ((strcmp ("func_button", item_name) == 0)
          && (strncmp ("cam", STRING (pent->v.target), 3) != 0))
      {
         UTIL_HostPrint (HUD_PRINTCENTER, "Button detected. Setting Flag!\n");
         p->flags = W_FL_USE_BUTTON;
      }
   }*/
also in waypoint.cpp around line 218 find:
Code:
  char item_name[64];
and change it to:
Code:
//   char item_name[64];
in bot_globals.cpp around line 595 find:
Code:
menutext_t menuWaypointAddFlag =
{
   0x3FF,
   " Waypoint Flags\n"
   "1. Add Block with Hostage\n"
   "2. Add T ONLY Camp\n"
   "3. Add CT ONLY Camp\n"
   "4. Del Block with Hostage\n"
   "5. Del T ONLY Camp\n"
   "6. Del CT ONLY Camp\n"
   "\n"
   "0. Cancel"
};
and change it to:
Code:
menutext_t menuWaypointAddFlag =
{
   0x3FF,
   " Waypoint Flags\n"
   "1. Add Block with Hostage\n"
   "2. Add T ONLY Camp\n"
   "3. Add CT ONLY Camp\n"
   "4. Add Use Button\n"
   "5. Del Block with Hostage\n"
   "6. Del T ONLY Camp\n"
   "7. Del CT ONLY Camp\n"
   "8. Del Use Button\n"
   "\n"
   "0. Cancel"
};
in dll.cpp around line 2066 find:
Code:
                    case 4:
                        WaypointChangeFlags (W_FL_NOHOSTAGE, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;

                     case 5:
                        WaypointChangeFlags (W_FL_TERRORIST, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;

                     case 6:
                        WaypointChangeFlags (W_FL_COUNTER, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;
and change it to:
Code:
                    case 4:
                        WaypointChangeFlags (W_FL_USE_BUTTON, 1);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;

                     case 5:
                        WaypointChangeFlags (W_FL_NOHOSTAGE, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;

                     case 6:
                        WaypointChangeFlags (W_FL_TERRORIST, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;

                     case 7:
                        WaypointChangeFlags (W_FL_COUNTER, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;

                     case 8:
                        WaypointChangeFlags (W_FL_USE_BUTTON, 0);
                        EMIT_SOUND_DYN2 (pEntity, CHAN_WEAPON, "weapons/he_bounce-1.wav", 1.0, ATTN_NORM, 0, 100);
                        break;
there thats it.
[/edit]
[edit2]
i think i said this but i guess u didn't see or something. I said i stoped them from pushing buttons at random, but because the code does not implement the button flag even if you put a button flag there they will not push a button. So the dll I released, they do NOT push buttons at all.

PMB already put the Use Button flag in the upper left corner if the flag is on the waypoint. No there are no sprite changes or color changes the only way to know if the button flag is there is to move upto a waypoint and check if the button flag is listed in the upper left corner.
[/edit2]

Last edited by sPlOrYgOn; 15-04-2004 at 07:06..
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#7)
SoUlFaThEr
Moderator
 
SoUlFaThEr's Avatar
 
Status: Offline
Posts: 860
Join Date: Mar 2004
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

ok very cool and thanks for doing that
I really appreciate it!

so,
if i add a flag right now with that .dll, the bots still wont push the button there? or they will.......


  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#8)
stefanhendriks
RealBot Author
 
stefanhendriks's Avatar
 
Status: Offline
Posts: 3,088
Join Date: Nov 2003
Location: Netherlands
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

for pushing buttons i guess you just have to stand close to it. Ie in de_prodigy you have to touch it in order to push the button. I did not do more then a distance check for that.


Author of RealBot, "Arrakis" and "Dune 2 - The Maker" | co-Founder of Bots-United | Fundynamic | Blog | E-Mail me
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#9)
MusicMan
Member
 
Status: Offline
Posts: 236
Join Date: Feb 2004
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

could the code:

Code:
if (pBot->bIsVIP == TRUE)
{
	pBot->bot_personality = 2;
}
 
else if (pBot->bIsLeader == TRUE)
{
	 pBot->bot_personality = 1;
}
 
else
 
//Randomize personalities
could this code be used to define personalities of bots who are bomb carriers, and bots that are VIP's? and how do I determine if a bot is escorting hostages?

Thanks in advance

MusicMan

Last edited by MusicMan; 15-04-2004 at 18:12..
  
Reply With Quote
Re: PODBOT2.6MM after PMB...work still pending
Old
  (#10)
Pierre-Marie Baty
Roi de France
 
Pierre-Marie Baty's Avatar
 
Status: Offline
Posts: 5,049
Join Date: Nov 2003
Location: 46°43'60N 0°43'0W 0.187A
Default Re: PODBOT2.6MM after PMB...work still pending - 15-04-2004

@MusicMan: yes
And there is a function like this (or similar)
bool BotHasHostage (bot_t *pBot)
which returns TRUE if the bot is carrying a hostage around. You could use it.



RACC home - Bots-United: beer, babies & bots (especially the latter)
"Learn to think by yourself, else others will do it for you."
  
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump



Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
vBulletin Skin developed by: vBStyles.com