.:: Bots United ::.

.:: Bots United ::. (http://forums.bots-united.com/index.php)
-   Grave Bot (http://forums.bots-united.com/forumdisplay.php?f=56)
-   -   Waypointing (http://forums.bots-united.com/showthread.php?t=3068)

hiyahin 27-11-2004 19:15

Waypointing
 
Hi. Like all people new to a forum, I'll praise your effort put into this bot. Afterall, I've heard of 1 or 2 bots that had problems like attacking their own scientists, attacking you when you have the scientists. Although I haven't tried this bot yet, I like the look and features that your bot has.

Anyway, just a question or two:
1. Wouldn't waypointing your bot be like waypointing all other HPB-based bots?
2. Would you release a bot that's metamod compatible?
3. What are the "few major but unnecessary features" (if you don't mind sharing it)
4. Will the bots vote for a research?

Thanks in advance,
hiyahin

Ghoul 27-11-2004 21:35

Re: Waypointing
 
Hello.

1. Yes, but the waypoints are a little more advanced. Along with having flags (such as item waypoint, or weapon waypoint), they also have item names associated with them, such as item_healthkit, weapon_shotgun. This helps the bots locate waypoints with specific items they need better. Grave Bot, in fact, is able to import old HPB Bot waypoints. If they're waypointed well, you just have to run "waypoint update" in the console to associate waypoints with their nearby items, then "waypoint save" to save the new data.

2. Eventually. I've never used metamod, so I'm not sure what goes into making a bot meta mod enabled. That's one of the reasons why I released the source, so if someone wants to, they can port it themselves. If I find some free time soon, I'll look into it.

3. While I've always loved HPB Bot, when it comes to actual game play.. the bot just isn't that good. It's never aware of what weapons it needs and doesn't need, or whether it should get more ammo for weapon X, etc. In combat, it simply charges enemies and tries to crowbar them.

Grave Bot is not like that. The bots do keep track of what weapons they have, how much ammo they have, and intelligently seek out weapons they don't have. If you put a bot in a level and let it roam around undisturbed, it will eventually collect every weapon it can (they need to be waypointed), and max out all ammo, along with maxing out health and armor. It doesn't do it by chance either, because it actually knows what to do. :P

As far as combat goes, they won't necessarily engage an enemy unless they believe it's possible for them to win. This depends on their weapon, armor, and health, and the enemies weapon, armor, and health. If they do decide to 'engage' an enemy, they will track that enemy down via waypoints even if that enemy goes out of site. In close combat, the bots will circle strafe, rather then just run up and crowbar, and if they have the long jump they'll use it to jump around and confuse their enemy.

4. For S&I, there are many features I wasn't able to complete, or rather didn't want to just yet due to time constraints. Bot voting was one of them. I plan to create a dyanmic system which weighs all the technology different amounts depending on the situation of the team. If the team is winning, they'll probably want more defensive techs (more armor). If the team is loosing, they'll want offensive techs (more speed). Getting the bots to vote isn't too difficult (just a matter of them sending a command to the server), it's getting them to vote for the correct technology.

hiyahin 28-11-2004 03:25

Re: Waypointing
 
Back from a game of S&I with GraveBot. Apparently, my friend was hosting a listenserver (non-steam) via LAN, and the game crashed twice in about 1h30mins. I freshly installed HL on both computers and the only modification I made to the mod was just adding the bots. There were a total of 22 bots + 2 players. It seemed to crash during intense combat. I haven't tried playing with less bots yet, so I'll keep you updated to see what happens.

(RE: Answer 3: So you mean you haven't implented that yet? I read something about that on your bot guide, so I assumed you added it in already. :D)

Ghoul 28-11-2004 09:51

Re: Waypointing
 
I've been having issues with S&I. Sometimes the bot will run fine for long periods of time, hours on end. I haven't been able to pinpoint an exact source of the crashes, I'm not even sure if it is Grave Bot or not (though it most likely is, but do note I never tested non-Steam S&I). Two crashes in an hour and a half isn't that bad, considering all of the chaos constantly going on. This makes tracking problems down extremely difficult. Tomorrow I'll run a long lasting listen server to see if I can track down any problems with MSVC++'s debugger.

Between HLDM and S&I, S&I is by far the lesser tested of the two. I'll continue testing though I'm not sure how heavily. School sucks. :-/

Everything I said in 3 is implemented.

Today I was able to get the metamod version of HPB bot to compile, so getting a meta mod version of Grave Bot should be pretty simple. Though I'm not sure how long it will take me, due to time constraints.

I'm interested in knowing how the bot performed, as far as getting scientists, defending dropped scientist, stuff like that. I've never been a big S&I player, so their AI most likely isn't nearly as good as it good be.

Thanks for your interest in Grave Bot. :)

hiyahin 28-11-2004 14:19

Re: Waypointing
 
Sounds good, but take your time. BTW, if you have a scientist, the bots will sometimes follow you and guard you. When in combat and you die, the bot guarding you usually gets the scientist by accident anyway.;)

Also, I haven't really noticed they defend the scientist on purpose, since usually the defending bot delays or kills the attacking bot and the scientist returns back to his spot.

Oh yeah, can you program it so that the bot is given a random personality and/or a random order of importance and will vote according to its personality? eg. Bot A: defensive, speed, aggressive, money
Bot B: money, speed, defensive, aggressive
It seems like I'm giving you a lot to do. Take your time. 9_9

Edit: I found out that the bots will shoot the flies that come out of that alien weapon instead of the person with the alien weapon in HLDM

Pierre-Marie Baty 28-11-2004 14:30

Re: Waypointing
 
all that looks pretty good for a beta 0.1 anyway !

hiyahin 28-11-2004 16:53

Re: Waypointing
 
Just a quick update about the crash bug. It doesn't seem to be anything about the number of bots, the intensity of the fights or the time. I don't know what's wrong, so I'll just do a few spyware/virus checks on the computer.

Edit: I'm starting to wonder if it's because the spawn points in overtime were too clumped and had too many bots in there. I don't know how to waypoint/edit waypoints, so I can't test to see whether have less waypoints in the spawn points would be effective.

Edit2: Ahh... stupid me. I should have checked more forums before posting things.
Quote:

Originally Posted by Mr. Bonzo
Install SI normally, by pointing the installer to your Half-Life (WON) folder.

Then delete the file "[Half-Life]\si\settings.scr".

I haven't got time to see whether I can get through a round first. I'll update again when I've tried it.

Edit3: Meh, I've renamed the file, but the game still crashes. Something's wrong

Ghoul 29-11-2004 00:31

Re: Waypointing
 
Yeah, I did some tests earlier today and there are definately a few issues. Tracking them down, however, will be a problem.

At some point or another, the code is hitting an infinite loop. I'm not sure where though. I also experienced a problem where Science and Industry crashed (not Grave Bot, since the dll which crashed was si.dll, however Grave Bot most likely caused it) for some reason after I added and kicked some bots, not sure what's going on there.

Stay tuned for more updates!

hiyahin 30-11-2004 15:35

Re: Waypointing
 
So your guesses are that Grave Bot causes si.dll to have an infinite loop. Hmm... seems like I can't help you there. As far as I know, it doesn't have a pattern when si decides to crash. Sometimes I get really far into the game, sometimes I've just played for 4 mins or so; sometimes there's heavy gunfights, somtimes there was peace everywhere. And I don't see how adding and kicking bots would cause an infinite loop, unless the kicked bots are still loading something.

Ghoul 30-11-2004 21:57

Re: Waypointing
 
No no, the si.dll crash was an actual crash. An access violation, according to MSVC++. So, si.dll had the problem, but it was most likely caused by something Grave Bot did. I was adding and kicking bots at the time, messing with settings, so I may have fugled something.

The infinite loop issue is something else entirely, and seems to happen randomly during game play. I still have no idea what is causing it, but once I have more free time, I'll try to figure it out (exam week at school :-/).

hiyahin 01-12-2004 19:06

Re: Waypointing
 
So the infinite loop doesn't cause a crash? So what does the infinite loop do (besides taking up cpu and resources)?

Ghoul 02-12-2004 05:13

Re: Waypointing
 
The infinite loop stops the game from progressing. It uses up all CPU power trying to do the loop, and never does anything else. To the user, it looks like the game freezes, since the renderer stops, as do all other game functions.

So, it's pretty much like a crash, except harder to find.

hiyahin 03-12-2004 18:43

Re: Waypointing
 
Oh right. So I should say that my game freezes instead of crashing. I haven't experienced any crashing yet.

CoCoNUT 08-12-2004 18:29

Re: Waypointing
 
1 Attachment(s)
Hi, I liked Science and Industry. Tried Gravebot and it worked fine. I made a few waypoints for some maps- only "rough sketch" without jump-crouch and -lift -waypoints. The bots seemed to have some trouble at doors. Worked fine overall, bots completed the goals fine. Would be nice to have some more detailed infos about the waypoint-flags (lift, doors etc.). Anyway, anyone may use these waypoints and tweak them (maybe this saves some time). Have fun! :)

Attachment: Some waypoints :P

hiyahin 08-12-2004 18:37

Re: Waypointing
 
Hey, thanks a lot. I must try it now. =)

Edit: I've just had a game of si_urban with bots (13bots + me). I mean, a full game. No crashes, no freezes, nothing wrong what-so-ever, except that the bots didn't go up the ladders on the rooves. I think the problem that makes the game freeze is either:
1) Waypoint flags
2) si_overtime waypoints has problems

I haven't tried laser or deep yet. I'll get to it someday.

Edit2: I've just tried si_deep. It freezes. The similarities between overtime and deep is that the bot gets stuck in the spawn room in both of them. Still got laser to try

Ghoul 09-12-2004 05:04

Re: Waypointing
 
Thanks for your testing, things like that help narrow the problem down. I'm hoping that with some testing this weekend I'll be able to figure out what is causing the issue. I plan on running many games with certain features disabled, this will hopefully track down the issue to a certain function or set of code, which I can then analyze for problems.

The fact that it could be waypoint related does make me think. Waypoints do a LOT of looping (looping through waypoints, looping through entities near waypoints, etc.). I had to write some custom waypoint finding code for S&I due to the way gathering weapons is handled (weapon_generic and weapon_experimental can be any weapon or weapons).

As for the waypoint flags, most of them are pretty simple and are the same flags that HPB bot uses, although they don't really serve any practical purpose. You'll notice that si_overtime doesn't use any flags except team flags and item/health/armor flags. Even so, I'll expand the documentation when I find time.

Thanks for your input!

CoCoNUT 09-12-2004 13:05

Re: Waypointing
 
1 Attachment(s)
A little waypoint-update (doors are fixed):

Maps:
si_deep, si_laser, si_mercato, si_metropolis, si_mtg, si_retrovirus, si_urban

Note: These waypoints are only "rough sketch" (but they work).
Only flags: team, weapon, health, armor, door, crouch, ladder

8)

hiyahin 09-12-2004 15:15

Re: Waypointing
 
Ooo... more waypoints. Thanks a lot.

Go on Ghoul. Make him your official waypointer... =P.

Ghoul 10-12-2004 04:11

Re: Waypointing
 
I'll have to take a look at this some time during the weekend.

The major idea I must stress behind waypointing is checking the paths between waypoints. I often find that waypointers just add waypoints and let the auto-connecter do the work for them. It doesn't always do the best job, and sometimes connects waypoints above other waypoints, or waypoints on the other side of something like a fence.

Wouldn't want the bot running into a grate thinking it could get to the other side. :-/

CoCoNUT 10-12-2004 09:52

Re: Waypointing
 
1 Attachment(s)
Some waypoint-update (doors and jump-flags, some paths fixed). Bots play well and the mod is fun :).

Maps:
si_deep, si_laser, si_mercato, si_metropolis, si_mtg, si_retrovirus, si_urban

Note: These waypoints are only "rough sketch".
Only flags: team, weapon, health, armor, door, crouch, ladder, jump

hiyahin 10-12-2004 11:09

Re: Waypointing
 
Wait... the bots work fine for you CoCoNUT? Doesn't the game freeze when you play on si_overtime?

CoCoNUT 10-12-2004 12:33

Re: Waypointing
 
1 Attachment(s)
No, I have no freezing on si_overtime. Here are some si_urban-waypoints with some sniper-waypoints. The bots behave a bit stupid there, but check it out :).
---Edit---
Another update for the waypoints: all-in-one-zip. Fixed some things and added si_mill. Very good bot overall. I saw them having trouble going through breakables with certain weapons (si_mill). And they tend to use the same paths too much. Everyone try it- really fun! :)
---Edit---
Now I had this freezing- with 14 bots ingame9_9

hiyahin 11-12-2004 14:14

Re: Waypointing
 
So, how many bots do you usually test your waypoints with?

CoCoNUT 11-12-2004 17:16

Re: Waypointing
 
8-10 bots usually. Works fine and without any problems for me. Yesterday I played this mod online (I was a super-noob). Wonder how good they play. They know all tricks, this mod is not really easy online, but it was great fun. =)

Ghoul 11-12-2004 23:14

Re: Waypointing
 
Sniper waypoints don't work right now, but perhaps in the next release I'll have it so bots on a defensive role will camp at sniper points and use the crossbow and gauss.

I've been doing testing in attempts to locate the crash/loop, it's prooving to be a very difficult task. So far the bug seems to be related to weapon usage somehow:

1. In games where spawn equipped and everything researched on, the crash usually seems to happen within 5 minutes, sometimes in less than 1.

2. When I disabled weapon switching (the bots only stayed on one weapon), the crash didn't happen (at least not in the three or so hours of steady gameplay).

3. When I told the bots only to use a few weapons (colt, shotgun, tommy gun, uzis), the crash took an hour to occur, rather than a few minutes.

In the games where freezing doesn't occur, are there any specific research paths you're not taking? Not researching a lot of weapons? I'm also looking into if it is related to collecting resources and the forced "resource weapon". Do the games you've played without crashes have resources or no? Any details are appreciated.

Thanks for using my bot, despite this horrible bug. :P

Oh yeah, the bot has been ported to metamod and is working fine. The next release will have both the standard 'hooker' method, and a metamod DLL.

Good day!

BuMHeD 12-12-2004 04:56

Re: Waypointing
 
Great news Ghoul!! Wow you work fast :)... Glad to hear it. I'll definitely try to give the bots a test run when you release the metamod version, and will be glad to keep detailed logs for you to help debug. Once I test them and confirm that they're working, maybe we can talk about a bubblemod project in the near future :)... Keep up the good work man... and happy holidays!! If this all works out, don't be surprised if you have a present under the tree from a recently-acquired fan... BuMHeD :)

*~BuM~*

hiyahin 12-12-2004 15:43

Re: Waypointing
 
Actually, you might be right about the weapon thing. I like to do research where it is as little weapon-based as possible, so that I can take someone/some bot's weapon and take it back to base.

This is just a really guess, but would it be because of the ranges you told the bots to use certain weapons actually clashed? eg:
0m-5m Briefcase
5m-10m Shotgun (double barrel)
10m-12m Shotgun (single barrel)
11m-15m Tommy gun

So, when a bot stands near you at 11.5m it then has to decide whether to use the "shotgun (single barre)"l or the "tommy gun", but because both weapons fit within the radius and the bot tries to use both weapons, causing a loop. (Note: This is a guess from a person who doesn't do any coding at all)

BuMHeD 12-12-2004 20:21

Re: Waypointing
 
Quote:

Originally Posted by hiyahin
Actually, you might be right about the weapon thing. I like to do research where it is as little weapon-based as possible, so that I can take someone/some bot's weapon and take it back to base.

This is just a really guess, but would it be because of the ranges you told the bots to use certain weapons actually clashed? eg:
0m-5m Briefcase
5m-10m Shotgun (double barrel)
10m-12m Shotgun (single barrel)
11m-15m Tommy gun

So, when a bot stands near you at 11.5m it then has to decide whether to use the "shotgun (single barre)"l or the "tommy gun", but because both weapons fit within the radius and the bot tries to use both weapons, causing a loop. (Note: This is a guess from a person who doesn't do any coding at all)

Yes, another experienceless person with an opinion here (me)... but I think he may be on to something. I remember reading through Botman's error log history, and there was, at one point, a conflict with weapon usages (it was for TFC) that would cause a problem that eventually led to the crash of the servers. Here's a link to his news page... scroll down to the date http://www.planethalflife.com/botman/old_news.shtml September 29th, 2001 perhaps that will give you some answers. The error that he references in that news report is the same error I was getting on my server when the bots would crash it. I suspect it had something to do with bots being added or removed at inappropriate intervals, but I can't say for certain. It's possible that bubblemod caused the problem since we do have some modified weapons that could be related to this looping issue... *shrug*. I will be willing to test this theory in the coming weeks with and without certain weapons to see if the crash issue comes back.

*~BuM~*

Ghoul 12-12-2004 21:20

Re: Waypointing
 
The way weapons are handled for the bots should make it so even if some ranges are overlapping (and a lot of them do, there's no reason a bot shouldn't use a colt at 100 units or a shotgun at 100 units) the weapon to be used is chosen by priority. Each weapon has a priority value (which can be changed if you want), 0 - whatever, 0 being the best (which is the brief case).

This is the case in both HLDM and S&I, and HLDM can run for hours on end fine. It's really confusing me. :-/

CoCoNUT 13-12-2004 07:33

Re: Waypointing
 
1 Attachment(s)
A little waypoint-update. You can disable certain techs and researches in the listenserver.cfg (cvarlist.txt). So maybe the problem can be isolated (didnīt have the time to do it myself). Maybe you should disable some researches for the bot until the problem is fixed. Nevertheless the bot is great fun overall and the missing of one or two features can be "fixed" with harder bots :P. I mean for me thereīs only one 12-slot server with a good ping available online and I think many people would love to try the mod with bots. All details and goodies can be added later ;).

Maps:
si_daybreak, si_deep, si_laser, si_mercato, si_metropolis,
si_mill, si_mtg, si_replicant, si_retrovirus, si_urban

Note: Some more complicated paths are not waypointed yet.
Only flags: team, weapon, health, armor, door, crouch, ladder, jump
---
Edit: You see in my posting that I donīt have a clue about bot-programming, anyway, hope you can fix it :D

hiyahin 13-12-2004 17:36

Re: Waypointing
 
Actually, have you tried playing with the bots using metamod instead of just changing liblist to target grave_bot.dll?

PS: It's nice to see people working really hard. CoCo with the waypoints, Ghoul with the bot. Couldn't really ask for anymore, eh? =)

Ghoul 13-12-2004 22:58

Re: Waypointing
 
Yes, actually I haven't tested the old 'hooker'/liblist method for a few days now, the crash occurs in both.

hiyahin 14-12-2004 17:30

Re: Waypointing
 
Actually, would it be the snuzis that are making the loop? Because it has two sets of ammo and might mess up things.

CoCoNUT 15-12-2004 11:50

Re: Waypointing
 
1 Attachment(s)
Morning, a few more and some updated waypoints =):

Maps:
si_alley, si_daybreak, si_deep, si_highrise, si_laser, si_mercato, si_metropolis,
si_mill, si_mtg, si_replicant, si_retrovirus, si_urban

Note: Some more complicated paths are not waypointed yet.
Only flags: team, weapon, health, armor, door, crouch, ladder, jump

hiyahin 19-12-2004 22:22

Re: Waypointing
 
So... any new news from our great bot creator?

BuMHeD 20-12-2004 06:34

Re: Waypointing
 
Yeah... no pressure bro... but the Xmas holiday is fast approaching and I would REALLY love to get that metamod Grave Bot running on our server... :)

*~BuM~*

Ghoul 23-12-2004 00:15

Re: Waypointing
 
Sorry, I've been busy.

Last week I did a ton of tests. Figured out the cause of the problem (kind of), but not a solution. It seems to occur when a bot switches weapons. My guess is it is something to do with what the bot is doing at the time it switches weapons. The number of bots doesn't seem to have an effect, other than more bots makes it more likely one will cause the problem. The same goes for the number of weapons, more weapons to switch to leads to more likely a problem.

I've tried everything I can think of, but nothing seems to be working. Soooo.. the next step is to just start trying random things. I'm going to try and disable weapon switching and certain situations to see if I can figure it out.

Good luck to me.

MrBozo 23-12-2004 18:12

Re: Waypointing
 
In SI if you play with si_fastweapons 0 (which is the default setting), you can't switch weapon right away after firing. This is the case for the Shotgun, Colt and Rocket Pistol. For exemple in the Shotgun code you have:

Code:

BOOL CShotgun::CanHolster( void )
{
#ifdef CLIENT_DLL
  extern int m_FastWeaponsMode;
  if ( !m_FastWeaponsMode )
#else
  extern cvar_t si_fastweapons;
  if ( !si_fastweapons.value )
#endif
  {
        // can't put away right after shooting if si_fastweapons 0
        if ( m_flNextPrimaryAttack - 0.3 > UTIL_WeaponTimeBase() )
          return FALSE;
  }
 
  return TRUE;
}

Maybe this is related to the crash, maybe not. Try playing with si_fastweapons 1 and see if you still get the crash.

And congrats on the bots :)

Rifleman 31-12-2004 12:29

Re: Waypointing
 
Maybe *someone* should make some hldm waypoints ... I really enjoy the game with this bot , they rock !

BuMHeD 31-12-2004 23:15

Re: Waypointing
 
Quote:

Originally Posted by Rifleman
Maybe *someone* should make some hldm waypoints ... I really enjoy the game with this bot , they rock !

If I'm not mistaken, there were some made already and packaged with the bot. I didn't check, but I do recall someone mentioning them, only because I requested that they add crossfire to the package because it's the only map our clan plays and is very popular worldwide. *shrug*... double check... or create some yourself ;)

*~BuM~*


All times are GMT +2. The time now is 00:13.

Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.