.:: Bots United ::.

.:: Bots United ::. (http://forums.bots-united.com/index.php)
-   Half-Life 2 SDK (http://forums.bots-united.com/forumdisplay.php?f=62)
-   -   HL2DM bots... (http://forums.bots-united.com/showthread.php?t=3629)

MarD 20-07-2008 03:17

Re: HL2DM bots...
 
Heyyo,

Quote:

Originally Posted by DrEvil (Post 58516)
Hey guys. I'm working with Tony who works on SDK stuff for Valve and we are working out the new and improved bot interface stuff. Currently I'm working on TF2 with the new interface. I have them playing CTF and CP maps, engy bots building everything so far, in a couple days worth of evening work. The new interface will allow server plugin bots for DOD:S, CS:S, and any other mod that implements the appropriate accessor for their mod.

TF2 Teaser Pic

Dr. Evil.. I love you.... in a heterosexual way of course. ;)

That's a few words I had to say. :D

Btw Dr. Evil.. if you could indulge me, do bots properly recognize what a teleporter is, and do they use them properly? I remember back in I think it was Natural Selection, there wasn't a proper way to setup bots recognition of teleporters so it was all random....

Also, are you using the same template as OmniBot for it that you were trying to use before, or is it all new? and one more if I may.. are the spy bots just as deliciously... evul as the ones from foxbot? :P

DrEvil 20-07-2008 03:55

Re: HL2DM bots...
 
I have them building all the buildables already, and I'm in the process of getting them to actually use the teleporters. They used teleporters nicely in Foxbot, and they will again this time around. I haven't gotten to the spy abilities yet. I've only spent a grand total of a few hours for about 3 nights supporting what I have so far. Luckily with the way Omni-bot is set up, I'm re-using a majority of the Team Fortress code I wrote for Fortress Forever and ETF. I'll probably work through each class and get each ones specific abilities supported. I already have pipe trap code written that will be re-usable for TF2, and other than that The scout double jump, spy sapper and invis behavior are the main tasks.

MarD 20-07-2008 06:20

Re: HL2DM bots...
 
Heyyo,

Quote:

Originally Posted by DrEvil (Post 58527)
I have them building all the buildables already, and I'm in the process of getting them to actually use the teleporters. They used teleporters nicely in Foxbot, and they will again this time around. I haven't gotten to the spy abilities yet. I've only spent a grand total of a few hours for about 3 nights supporting what I have so far. Luckily with the way Omni-bot is set up, I'm re-using a majority of the Team Fortress code I wrote for Fortress Forever and ETF. I'll probably work through each class and get each ones specific abilities supported. I already have pipe trap code written that will be re-usable for TF2, and other than that The scout double jump, spy sapper and invis behavior are the main tasks.

Excellent news indeed. Foxbot and OmniBot are fun times, so this should be great! :D

I for one look forward to a good release, beta or otherwise. I'm already subscribed to this thread and a few others. :)

stefanhendriks 20-07-2008 20:46

Re: HL2DM bots...
 
More words:

GREAT!!! Do you have a source-code template? :D

edit: I know you have some source codes on your site, but i mean the one who works with CS : S and such ;) Don't wanna push, but this is exciting news indeed.

DrEvil 21-07-2008 00:28

Re: HL2DM bots...
 
I don't have anything for CS:S right now. At the moment developing this requires a custom engine.dll(that goes in the source sdk base 2007\bin folder), and custom dlls for TF2, and running TF2 as a mod. At some point in the future this new bot interface stuff will be rolled out to the public in an update. Right now he has mostly been adding accesors to mod side data for TF2. If you can put together a list of CS:S specific data you are going to need to access I can push for that to get added. Same for anyone who knows DOD:S pretty well. By mod specific data I mean information specific to the mod itself, such as TF2 accessing the buildables for an engineer, the disguise status for spy, etc.

Generic information, such as accessing ammo and weapon information has all been added, so a very basic bot such as for HL2DM would be fully possible with just the new vanilla bot interface.

Using the old bugzilla post as an example:

http://developer.valvesoftware.com/c..._bug.cgi?id=16
#1,2,5,8,10,11,12,13 have all pretty much been addressed.
#3 and 6 naturally require some accesors(through a generic interface) be added to individual mods based on the requirements of the mod. Here's an example.


Code:

pluginvariant val, empty;
if(pInfo->GetCustomInfo(TF2::TFPLAYERINFO_EDICT_SENTRY, val, empty))
{
    pMsg->m_SentryStats.m_Entity = HandleFromEntity(val.Edict());
    if(val.Edict())
    {
        IEntityInfo *pSgInfo = EntInfo((edict_t*)val.Edict());
        if(pSgInfo)
        {
            health = pSgInfo->GetHealth();
            maxHealth = pSgInfo->GetMaxHealth();
        }
        if(pInfo->GetCustomInfo(TF2::TFPLAYERINFO_SENTRY_LEVEL, val, empty))
        {
            level = val.Int();
        }
        if(pInfo->GetCustomInfo(TF2::TFPLAYERINFO_SENTRY_AMMO_SHELLS, val, empty))
        {
            shells = (val.Int()>>8) & 0xFF;
            maxshells = val.Int() & 0xFF;
        }
        if(pMsg->m_SentryStats.m_Level > 2)
        {
            if (pInfo->GetCustomInfo(TF2::TFPLAYERINFO_SENTRY_AMMO_ROCKETS, val, empty))
            {
                rockets = (val.Int()>>8) & 0xFF;
                maxrockets = val.Int() & 0xFF;
            }
        }
    }
}

pInfo is a greatly expanded playerinfo interface. There is also a new IEntityInfo interface that allows a bunch of information to be accessed for entities in general, and not be limited to just player info.

Information specific to the mod will need to be supported and added for access via these GetCustomInfo paths.

stefanhendriks 21-07-2008 10:19

Re: HL2DM bots...
 
So basically what you're saying is that the new bot framework has to be released from Valve's side and all will be exposed as we'd like it to?

When would that be? (eta release date?)

As for CS: S .

Weapon info is already known as you told us. So all i need to know is:
- carry bomb yes/no?
- has hostage used yes / no (pointer to pEdict or something)

I think CS : S is basically a simple mod. I can't think of anything special just now for that. Perhaps other bot developers have an idea?

Also, how is bot handling now? I mean, you're using the plain plugin code delivered by Valve i suppose?

KWo 21-07-2008 13:43

Re: HL2DM bots...
 
Are You planning guys, to make the bot for HL2/CS : S/TF2 etc as a standalone dll or as a metamod-source plugin?

The Storm 21-07-2008 14:06

Re: HL2DM bots...
 
After the new bot interface is released I'm planning to make the bot as server plugin using the valve system. :)

stefanhendriks 21-07-2008 14:29

Re: HL2DM bots...
 
When the official interface exposes the needed functions, there is no need to use another layer (ie metamod-source). So i think it is most likely bots will be made for the valve / source interface.

DrEvil 21-07-2008 18:58

Re: HL2DM bots...
 
Honestly I can't even guess when this might be rolled out to the public. I believe Tony might want to have as complete as possible first pass at events/accessors for all supportable valve mods before trying to push it through the system. If we know Valve we know that time tables can't really be predicted. I'll try to push Tony into adding these accessors. CS:S seems simple enough that those can be added easily. In the meantime, if you know anyone around this forum who knows DOD:S very well I would appreciate if they can put together a list if custom accessor data they might need. I haven't played much DOD:S myself.

Btw, one more thing I should mention. The extended bot interface is specific to Orange Box engine. Tony has told me Valve has no plans to put these sdk updates into the old engine. This means that only mods/games based on the Orange Box engine will benefit from the extended bot interface. So far DOD:S has been ported to Orange Box, and CS:S is in progress afaik, naturally TF2 was born in Orange Box. I'm told they plan to update HL2DM to Orange Box as well, probably last.

Anyways, the quicker we get a list of needed accessor information to Tony the sooner he can have his part ready at least. Then it's just a matter of waiting on the changes to get through whatever Valve vetting process he has to push it through.

DrEvil 21-07-2008 19:35

Re: HL2DM bots...
 
Quote:

Originally Posted by stefanhendriks (Post 58540)
Also, how is bot handling now? I mean, you're using the plain plugin code delivered by Valve i suppose?

It's pretty much the same as it has been using the bot interface. There's just more functions added to get information we need, and a new IEntityInfo interface that you can get information from arbitrary non player edicts.

stefanhendriks 22-07-2008 15:11

Re: HL2DM bots...
 
yes, i have heard as well that CS : S will be ported to the Orange Box version of the source engine. If that is the case, it is of no use to code for the normal Source engine or whatsoever.

DrEvil 25-07-2008 09:43

Re: HL2DM bots...
 
How about a teaser?

http://www.youtube.com/watch?v=MHHEetn64Vo

botman 25-07-2008 16:24

Re: HL2DM bots...
 
Awesome news! I'm gonna have to get off my butt and get back to some bot coding for Source.

botman

Bluesman 25-07-2008 18:49

Re: HL2DM bots...
 
Quote:

Originally Posted by DrEvil (Post 58593)
How about a teaser?

Thanks! :)

Thranduin 06-08-2008 11:17

Re: HL2DM bots...
 
Hello guys,

I'm just following this thread for some time now.
I'm searching the SDK for some possibility to connect my CS-Bots (currently working with the 1.6 version).
So what I haven't got throughout the thread: is there already some kind of interface the bot could be connected to? (i know that not all functionalities are given). And if yes, where can I find it?

thanks a lot for your answers

regards

Bluesman 10-09-2008 00:32

Re: HL2DM bots...
 
Quote:

Originally Posted by DrEvil (Post 58593)
How about a teaser?

Got some more teasers? ;)

Bluesman 29-09-2008 21:37

Re: HL2DM bots...
 
More news from DrEvil:
http://www.omni-bot.de/e107/news.php

And a new teaser, Omni-bot in Team Fortress 2 - Demo-man:
http://www.youtube.com/watch?v=40XYSjkWphs

Cheeseh 29-12-2008 15:00

Re: HL2DM bots...
 
Can I ask how to gain access to this interface? (Is it made by valve ?)

Edit:

Actually no need,

see here:

http://wiki.alliedmods.net/Entity_Pr...es#Enumeration

use :

"CBasePlayer" and "m_iAmmo" for (int*) Ammo List

TF2 Ammo lists:

starting values in round brackets
ammo list index in square brackets

Code:

Scout
[1] Scatter gun (32)
[2] Pistol (36)
[3] ? (100)

Sniper
[1] Sniper Rifle (25)
[2] Auto Rifle (75)
[3] ? (100)

Soldier
[1] Rockets (16)
[2] Shotgun (32)
[3] ? (100)

Demoman
[1] Grenades (16)
[2] Stickies (24)
[3] ? (100)

Medic
[1] ?Syringe Gun? (150)
[2] ?Syringe Gun? (150)
[3] ? (100)

HWGuy
[1] Minigun (200)
[2] Shotgun (32)
[3] ? (100)

Pyro
[1] Flame (200)
[2] Shotgun (32)
[3] (100)?

Spy
[1] ?  (20)
[2] Pistol (24)
[3] ? (100)

Engineer
[1] Shotgun (32)
[2] Pistol ? (200)
[3] Wrench ? (200)

e.g.

Code:

int *CClassInterface :: getAmmoList ( edict_t *edict )
{
        static unsigned int offset = 0;
 
        if (!offset)
                offset = findOffset("m_iAmmo","CBasePlayer");
       
        if (!offset)
                return NULL;
 
        IServerUnknown *pUnknown = (IServerUnknown *)edict->GetUnknown();

        if (!pUnknown)
        {
                return NULL;
        }
 
        CBaseEntity *pEntity = pUnknown->GetBaseEntity();

        return (int *)((char *)pEntity + offset);
}

unsigned int CClassInterface :: findOffset(const char *szType,const char *szClass)
{
        ServerClass *sc = UTIL_FindServerClass(szClass);
        SendProp *pProp = UTIL_FindSendProp(sc->m_pTable, szType);

        if ( pProp )
                return pProp->GetOffset();

        return 0;
}

use

"CBaseEntity" and "m_iTeamNum"

to get the team index (int)

ZombieLuvva 29-01-2009 05:31

Re: HL2DM bots...
 
im so confused... hi guys im neither a programmer, analyzer nor am i a bot developing code descripting machine like you guys, all i do is pretty much play and review games and i have been really really wanting to play some HL2DM with some bots... i have read about these posts but got nowhere, can i have a clue or rather point by point instructions on how to play a game of HL2DM with some bots lol thanks!

Bluesman 29-01-2009 19:17

Re: HL2DM bots...
 
Quote:

Originally Posted by ZombieLuvva (Post 59606)
i have read about these posts but got nowhere, can i have a clue or rather point by point instructions on how to play a game of HL2DM with some bots lol thanks!

Only HL2DM bots I know of, is RCBot ( http://rcbot.bots-united.com/ ) and HurricaneBot ( http://www.hurrikhan.net/ )

But the page to RCBot seems down now, and I don't know if people still working on the HurricaneBot

MarD 30-01-2009 06:36

Re: HL2DM bots...
 
Heyyo,

Quote:

Originally Posted by ZombieLuvva (Post 59606)
im so confused... hi guys im neither a programmer, analyzer nor am i a bot developing code descripting machine like you guys, all i do is pretty much play and review games and i have been really really wanting to play some HL2DM with some bots... i have read about these posts but got nowhere, can i have a clue or rather point by point instructions on how to play a game of HL2DM with some bots lol thanks!

Your best bet? RCBot 2:
http://filebase.bots-united.com/inde...ct=view&id=260

Here's the waypoints:
http://filebase.bots-united.com/inde...ct=view&id=395

If you're feeling lucky? you can give RCBot 2 TF2 alpha test a go too:
http://filebase.bots-united.com/inde...ct=view&id=449

ZombieLuvva 30-01-2009 22:34

Re: HL2DM bots...
 
once i download 1 of these... what do i do with it lol? sorry im not that great at this stuff but thanks!

Minh-Lo-Hwang 30-01-2009 22:48

Re: HL2DM bots...
 
You need to install it. There should be informations about that in the included readme files. Read them, for further instructions.

ZombieLuvva 31-01-2009 01:08

Re: HL2DM bots...
 
thanks!

ZombieLuvva 01-02-2009 00:10

Re: HL2DM bots...
 
hmm i have seemed to encounter yet another problem... my lack of skills has completely overwhelmed me... i dont have HL2DM on steam i have it in a file... and the ReadMe says put in steam folder... lol man this is complex... I ENVY YOUR SKILLS!!

MarD 01-02-2009 03:47

Re: HL2DM bots...
 
Quote:

Originally Posted by ZombieLuvva (Post 59631)
hmm i have seemed to encounter yet another problem... my lack of skills has completely overwhelmed me... i dont have HL2DM on steam i have it in a file... and the ReadMe says put in steam folder... lol man this is complex... I ENVY YOUR SKILLS!!

Heyyo,

Np.. lemme give you a quick rundown of how it should look:

Now i'm using my email as an example, but whatever email or username you used to setup steam is where you'd replace my email address.

if you installed steam in the default spot? it should look like this:

Code:

C:\Program Files\Steam\steamapps\jagged_jimmy_j@yahoo.com\
and in there you put the "rcbot2" folder which inside has the "waypoints" folder and such.... And then?

Code:

C:\Program Files\Steam\steamapps\jagged_jimmy_j@yahoo.com\half life 2 deathmatch\bin
In that "bin" folder needs to go the "HPB_bot2.dll" file.... and once more..

Code:

C:\Program Files\Steam\steamapps\jagged_jimmy_j@yahoo.com\half life 2 deathmatch\hl2mp\
In here make a folder and call it "addons".. and inside the addons folder you need to place the "HPB_bot2.vdf" file.

That's it man. It's mainly you just need to know where those three things go. ;)

ZombieLuvva 01-02-2009 06:00

Re: HL2DM bots...
 
thanks man this will definitely help! i just need to reinstall HL2DM in my Steam acount lol i forgot i havnt done it since i got a cracked version after my computer died lol but thank you i will try this asap! and long live the D!!

ZombieLuvva 01-02-2009 07:40

Re: HL2DM bots...
 
ok so i downloaded this... http://filebase.bots-united.com/inde...ct=view&id=260 ... followed you instructions exactly and double checked lol but when i go to steam to try see if it worked it says "This game is unavailable" ... when i remove all the files it works again so the bots arent working for me have i done something wrong?

ZombieLuvva 01-02-2009 08:03

Re: HL2DM bots...
 
ok i have tried it once more and i think i must have spelt "addons" wrong or something cos now the game works but... and its a pretty annoying but... there are no bots to be found in the game... do i have to change a setting or bring up a console or something?

ZombieLuvva 01-02-2009 08:25

Re: HL2DM bots...
 
AHAHAHA!! YEA!! i have actually done it! lol wow, ok the bots, they work! and actually work wonderfully! thank you so much man! woo!

MarD 02-02-2009 06:33

Re: HL2DM bots...
 
Heyyo,

Glad you got it all figured out man. Happy fragging. :D

bojidar4oto 24-09-2011 08:38

Re: HL2DM bots...
 
Hello, I am new here.
Well I recently installed rcbot2 by following MarD's instructions,but when I try to load the plugin it shows me:
No valid signature found for [fullpath to .dll]. :(
What am I doing wrong?

MarD 16-05-2013 17:43

Re: HL2DM bots...
 
Heyyo,

I'm guessing you we're following these instructions:
http://rcbot.bots-united.com/forums/...showtopic=1374

If so and you get "No valid signature?" You need to right-click the game in your Steam menu and then go to "Properties". From there you go into "Set Launch Options". In the launch options you need to set..

Code:

-insecure
And that will disable signature checks and let RCbot load.

bojidar4oto 20-05-2013 13:27

Re: HL2DM bots...
 
Thanks, I'll try it. But what about non-steam version?

P.S.: Funny, you replied almost 3 years later... xD

MarD 20-05-2013 19:17

Re: HL2DM bots...
 
Heyyo,

Heh I didn't even notice that lol... But sorry man, we don't support piracy so there's zero support for non-steam versions. The game isn't expensive anymore so support Valve and buy the game.

Cheeseh 06-06-2013 11:58

Re: HL2DM bots...
 
Hey. Rcbot2 may well work for non steam, it's not designed for non steam, it's designed to support the latest version of steam always but there are measures to support lower versions of interfaces, just like metamod

bojidar4oto 08-06-2013 09:28

Re: HL2DM bots...
 
Well I tried it in both ways (steam and non-steam). It doesn't work... :(


All times are GMT +2. The time now is 08:27.

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