home home

downloads files

forum forum

docs docs

wiki wiki

faq faq

Cube & Cube 2 FORUM


Bots for Sauerbraten

by Quin on 09/25/2006 10:28, 30 messages, last message: 05/03/2008 16:59, 15334 views, last view: 05/17/2024 10:32, closed on 05/04/2008 05:15

I've noticed (recently) alot of interest in Bots being written for the Sauerbraten Engine, and have decided to heed that call as it seems an interesting modification project.

So far, it's allowed me to test Sauerbraten's modding capabilities, learn a bit about three dimensional programming, and play with some AI ideas (during the creation of this so far, I have run into some limitations).

Note that no textbooks or tutorials (and etc) were consulted when making these, I used "monster.h" as a reference and went from there, learning things the way I like to: By doing.

Even though it is (extremely) alpha, I thought I'd put it out there (on the forum only) for anyone who's interested (IMPORTANT: you're gonna need the CVS version of Sauerbraten for best chances of success). I'd be very much interested in feedback, suggestions, and (friendly) critiques.

You can grab the archive at: http://qreeves.googlepages.com/sauerbot.zip

Happy fragging :)

   Board Index    Go to next 20 messagesGo to last 20 messages

#1: ..

by Passa on 09/25/2006 11:10

Very nice indeed. Made for some good instagib practise :P

Of course it is very buggy, but promising. Unfortunately scores arent tabulated, among other bugs, but still promising stuff.

Finally gave me a chance to try the new menu in-game too.. I dont have anything positive to say about that (just try to check the scores while your're playing now, insanely difficult no? ;)

reply to this message

#2: ..

by Max of S2D [Fr] on 09/25/2006 13:06

Man, IT'S AMAZING !

http://img169.imageshack.us/img169/7467/sauerbotswu2.jpg

reply to this message

#3: ..

by makkE on 09/25/2006 13:19

Nice ! Looks like a good start.

reply to this message

#4: Re: ..

by Quin on 09/25/2006 13:35, refers to #1

"Of course it is very buggy, but promising. Unfortunately scores arent tabulated, among other bugs, but still promising stuff."

Yeah, they're stupid and don't follow nodes very well. Frags require modification to the server part, I was aware they don't tabulate yet :)

As for the menu, yeah terribly hard to use/see at the moment, but you just know it'll be fixed. On the subject of positive things to say, what features are most important (and thus should be worked on first)?

I'm still playing with navigation somewhat (as you can see by the bots being so random), but I think the auto-node generation provides a fairly decent 3d 'mesh' [botshow 1] of the level.

reply to this message

#5: ..

by Max of S2D [Fr] on 09/25/2006 17:04

If i don't get wrong, the bots follow the trajectory you do ? They learn from you ? :)

I can see bots simply don't follow the rules of the playerstart : they appear at a random "node".

At the other side, i'll hope that menu will be ameliored, cause it's not very cool yet...

reply to this message

#6: Re: ..

by Quin on 09/25/2006 17:40, refers to #2

@ Max of S2D [Fr]

I notice you are using edit mode, thought you might like to know /spectator works offline in sauerbot (I needed it to 'watch without interfering').

Bots spawn at PLAYERSTART's, you just may not be noticing it. I've made every effort to have the bots play and have access to only the things that the player has (including the functions that control item pickups, spawning, etc). This keeps the system semi-fair.

Also, you'll have to tell me what 'ameliored' means, I'm guessing it got lost in translation.

'/botrate 1; botadd 15' - Should give you guys a run for your money!

reply to this message

#7: bot suggestions

by maximusDM on 09/25/2006 23:07

Realy a good start as makke said.
The bots are activs and cover most part of the map. I also suggest:

1. Bots to gain interest in items: ammo and health etc
2. Strife and little strategy: avoid fight when health low, atack distance adjusting for each weapon(when they will know use)
3. Correct jumps on jumppads
4.And of course ... gibs

reply to this message

#8: ..

by shadow,516 on 09/25/2006 23:14

Great job dude!

Now, if only we could get rick to come out of #cube and take a look...

/me peaks in

Yup, he's still there... alone

reply to this message

#9: ..

by Drakas on 09/26/2006 09:11

I'm using GNU/Linux. Tried to adopt a makefile, but doesn't do the job.
There are many compiling errors.

Could somebody write a proper Makefile for the sauerbot on GNU/Linux OS`es?

I'll try doing so further :)

THanks

reply to this message

#10: ..

by Rick|1 on 09/26/2006 21:11

Looks nice. Guess I don't have to worry anymore now :-)

reply to this message

#11: Re: ..

by Passa on 09/26/2006 23:48, refers to #10

Or.. you can work with Quin to make em better :P

reply to this message

#12: quin you are a legend

by chads bro on 09/27/2006 07:08

Thanks for your contribution. The only thing i am not sure is how to select what multiplayer mode to fight ie instagib without being killed when you access the main menu whilst in the middle of the game with bots.I don\\\\\\\\\\\\\\\'t like how the mouse freezes in the middle of a selection. Is it possible to include a pause key which freezes the bots movements before accessing the main menu.

A little funny feature i noticed was when you hit the esc key and move forward you go through the selection screen. Very strange. Likewise when you press and hold the tab key and move forward the player rankings are also like another curtain. A glitch with attitude.

All i ask is a pause key possible to add.
cheers.

reply to this message

#13: Update v1.1

by Quin on 09/27/2006 09:15

Firstly, I'd like to note that I am trying to follow Aard's coding philosophy as much as possible (minimalism).

These bots may never be incredibly smart, but they will offer what the current AI in sauerbraten doesn't: Multiplayer action. I will endeavour to make use of all game modes, but so far only basic DM play is really accounted for. There may even be a use for COOP SP.

I'll probably look at using Quadropolis soon, just not ready for anything but a preview release on the forums yet.

@shadow: lol, Rick banned me from #cube a while ago when I first came to #sauerbraten.

@Drakas: I have a headless Linux server, I'll try to make some Makefiles and binaries for v2 if no-one else cares to offer their assistance.

@chads_bro: The menu isn't my doing, that's the preview of the menu system that will be (I use the CVS version for development). If you need to move around and use the menu, try '/spectator 1'.

I had a fair bit of time offline last night (net was down) which gave me the opportunity (read: I was forced) to keep myself occupied by improving the bots.

* colourful ''to'' and ''from'' waypoint nodes in botshow mode
* improved navigation choices
* bots node choices limited to ones that haven't been to last
* waypoint dropping takes into account corners and finds/creates needed nodes if out of sight
* improved waypoint dropping to take into account line of sight (no more paths through walls)
* preliminary strafing with added randomness
* reduce fakeness of retaliation by homing in first (to look like a search)
* limit line of sight angles
* limit line of sight distances
* update internal nodes after teleport
* force bots to wait a few secs after being fragged
* cl.bs.botkilled() added for cl.dodamage()

And of course, the new v1.1 preview release: http://qreeves.googlepages.com/sauerbot11.zip

reply to this message

#14: Re: Update v1.1

by noro on 09/27/2006 11:08, refers to #13

Super!!
Hope bots does using all weapons ?!
And jumppads?

reply to this message

#15: Re: Update v1.1

by chads bro on 09/27/2006 11:09, refers to #13

man i was not expecting you to upgrade it that soon. I bet many people out there will be happy. I'm pretty pleased. Keep up the great work.

many thanks

reply to this message

#16: Re: ..

by Quin on 09/27/2006 14:13, refers to #9

I've realised that with a headless machine, I would not be able to test any binaries I compiled, and installing the libraries would be a waste for one program.

To render a new makefile, you must modify the makefile to use the alternate bot sources, as the bots are _based_ on the CVS version of sauerbraten, I suggest you check that out of the sourceforge repository if you haven't already. The included source files in ./src/bot *replace* certain ones in the main source tree, make sure you've extracted the zip (retaining paths) into the sauerbraten root directory.

What follows is a short description of what to do.

$ cd src
$ cp Makefile Makefile.bot

Then edit Makefile.bot and replace the necessary file `fps.cpp -> bot.cpp`, and add src/bot/ to the _front_ of the list of includes.

WARNING: Do not use my provided 'pch.cpp' and 'pch.h', these are ones I needed to tailor to enable use of a Dev-C++ compilation environment only.

The includes will be automatically pulled in by 'bot.cpp'. When you're done compile it using your new Makefile.

$ make -f Makefile.bot [whatever]

TIP: If you're someone who commits to Sauerbraten but needs to ignore the modified bot files, use .cvsignore

I dunno if I can be more or less verbose here, but that'll do.

reply to this message

#17: Thank u for this script !

by rock.n.rol on 09/27/2006 16:10

Man, this script is really cool !

First i didnt wanna download it, since i dont like the singleplayermode very much, but its really very useful to test and try out the overall playability of selfmade maps, congratulations for that !

reply to this message

#18: ..

by Rick|1 on 09/27/2006 20:13

"Rick banned me from #cube a while ago when I first came to #sauerbraten."

Just to clear things up; that couldn't be me. Before yesterday it was a few months since the last time I used IRC.

Anyway good to see you're progressing well :)

reply to this message

#19: Re: ..

by shadow,516 on 09/28/2006 00:26, refers to #18

Heh, well then someone impersonating you was banning everyone saying "I don't like people"

But nice to see you're back ;)

reply to this message

#20: Update for GUI Edition

by Quin on 12/13/2006 10:14

For all those hungry to play GUI Edition with bots. Here you go: http://qreeves.googlepages.com/sauerbot_03_gui_edition.zip

Enjoy!

---
Changes
---
* make cg shooting smarter/faster
* don't populate bots automatically on waypointless maps
* update internal nodes after teleport
* entity/pickup emulation
* timings tweaks to improve stupidity:accuracy ratio
* bots avoid shooting teammates directly in team games
* preliminary weapon switching
* improved source layout for modularity and compilation on other machines/mods

reply to this message

   Board Index    Go to next 20 messagesGo to last 20 messages


Thread closed!

This thread has been closed, which is why you can't post any more messages in it.


content by Aardappel & eihrul © 2001-2024
website by SleepwalkR © 2001-2024
54025552 visitors requested 71805282 pages
page created in 0.030 seconds using 10 queries
hosted by Boost Digital