Register FAQ Search Today's Posts Mark Forums Read
Go Back   JazzJackrabbit Community Forums » Open Forums » Beyond Jazz Jackrabbit 2

Jazz2 BOTS?

Reply
 
Thread Tools
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 24, 2002, 11:15 PM
Unhit is offline
Reply With Quote
Jazz2 BOTS?

I don't really know what the people of J2HG can actually do with some programming languages, but I think it is quite much. Well: someone of J2HG, do you think it was possible to programme something like bots for JJ2? This was funny for empty servers !
__________________
<center>somebody holds the key</center>
Refalm

JCF Member

Joined: Feb 2002

Posts: 58

Refalm has disabled reputation

Aug 25, 2002, 01:29 AM
Refalm is offline
Reply With Quote
Most of the J2HG programme in Visual Basic (I'm going to join them once I've learned that language).

And even some people that could programme in C++ couldn't manage to put bots in JJ2...

Quote:
Trafton AT: There was, a while a go, quite a bit of testing done with bots. The bots, however, proved unstable. They could crash servers they entered. They had to have their programming changed for each new level they played in. It took a few months for each level, and it was unreasonably hard. And the final project AI was week, it played like a n00b with rabies. The perfect behavor was near-impossible to program, and thus the project was deemed not worth the effort. Issue 2 of Stuff is Good Magazine is scheduled to have an article on this entitled "The Bots vs. The Programmers".
__________________
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 25, 2002, 01:46 AM
Unhit is offline
Reply With Quote
Okay...
__________________
<center>somebody holds the key</center>
Super Saiyan

JCF Member

Joined: Nov 2001

Posts: 416

Super Saiyan is doing well so far

Aug 25, 2002, 02:32 AM
Super Saiyan is offline
Reply With Quote
So this project has been stopped?
__________________
Bla.
Newspaz Newspaz's Avatar

JCF Member

Joined: Jan 2001

Posts: 2,678

Newspaz has disabled reputation

Aug 25, 2002, 03:01 AM
Newspaz is offline
Reply With Quote
I've researched quite a lot with bots in the past and I came to the conclusion that it's almost impossible.

It gets possible when you find addresses to control the player (got them)
You'll also need the addresses to locate other players (got them).


The last two pieces are making the character read the level, so he won't walk into a wall when going after a player. And creating it's artificial intelligence. There was only one real atempt to this which got into a working stadium. I will quote the story of the old forgotten player AstroniA here . It's a story I found on the old Jazz2City.

Quote:

Hi Wakeman, it's AstroniA here

I'm afraid I have some bad new for you to post. The
Jazz 2 Bot project has been cancelled.
The reason for this being that the Bots were too
buggy. I admit I'm still a bit of a beginner as far
as writing progs go, so they've been scrapped.
These were some of the bugs I could not resolve:

*) When starting a server, some Bots would not spawn,
despite the settings, causing weird things to
happen.

*) Couldn't figure out how to get a Client-side Bot
to join a server properly. Could cause the game to
crash.

*) Had hassles coding the Bots to "understand" CTF
properly. They seemed to be more interested in
roasting than capturing their enemy's flag.

*) Had hassles coding the Bots for Treasure. Bots
could die when shot, and sometimes didn't drop
gems when shot. Also, Bots would crash game if
they tried to exit.

*) Bots would sometimes just stop playing. They would
also just jump around in one spot like an idiot
and shoot like crazy.

*) Bots sometimes fired 3 weapons at once!

And other misc. techie bugs.

Sorry about it. I know a lot of people were looking
forward to it. Oh well. Hey Epic, what do YOU make of
it? (hint hint )

Please post this up.
Thanks
However, I think he used a strange technique noone ever got the hang of. The mystery of port 10052. Which is being used on every game to move the players. Oh well. Who knows.... I'll ask Wakeman if he can help me getting AstroniA up here to inform you a little more.
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 25, 2002, 03:38 AM
Unhit is offline
Reply With Quote
Thx for the research.
__________________
<center>somebody holds the key</center>
MaGoo

JCF Member

Joined: Jun 2001

Posts: 2,059

MaGoo is doing well so far

Aug 25, 2002, 05:26 AM
MaGoo is offline
Reply With Quote
Half-Life bots are amazing. It's almost impossible to tell if they're real or not, exept for the fact that their ping is always 5.
__________________
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Michael Michael's Avatar

JCF Member

Joined: Apr 2001

Posts: 3,323

Michael is doing well so far

Aug 25, 2002, 06:34 AM
Michael is offline
Reply With Quote
I rememebr reading that :P

Bots wouldn't work in JJ2 or in any arcade game especially with custom level option IMO. I think project is dead and only some super nerd super midn alien could make them and would have to program for each level. they'd also get boring I think.
Super Saiyan

JCF Member

Joined: Nov 2001

Posts: 416

Super Saiyan is doing well so far

Aug 25, 2002, 08:32 AM
Super Saiyan is offline
Reply With Quote
Hmmz, can I give someone a idea by saying UT: bots?



Uhm wont work.. Nevermind. Can you guys restart the project and give it another try? Comeeee oooon!!! For as example, begin with Battle1, Battle since thats the easiest mode in jj2. Just please try it.
__________________
Bla.
EvilMike EvilMike's Avatar

JCF Member

Joined: Jun 2001

Posts: 3,478

EvilMike is OFF DA CHARTEvilMike is OFF DA CHARTEvilMike is OFF DA CHARTEvilMike is OFF DA CHART

Aug 25, 2002, 12:34 PM
EvilMike is offline
Reply With Quote
Jazz2 bots can't work due to pathfinding issues. If they are to be able to move around in a level, you need to be able to set up which way they can go IN THE J2L FILE. This is how UT bots work. You place certain bot pathfinding objects throughout the level, and the bots know where to go, where to jump, and so on because of that.
__________________
Download my JJ2 Episodes! (5 episodes)

Visit My JJ2 Blog (HOLD YOUR HORSES I'M WORKING ON IT SHEESH)
Bobby aka Dizzy

(-)(-)(-)(-)(-)istrator

Joined: Jan 2001

Posts: 1,560

Bobby aka Dizzy is doing well so far

Aug 25, 2002, 01:14 PM
Bobby aka Dizzy is offline
Reply With Quote
To do bots in jj2 we would first have to understand the .j2l level files so bots could "learn" levels. Also, if bots were to "learn" levels someone here would basically need to be a complete AI expert and be capable of programming a very very smart bot especially considering it would have to work off of memory addresses.
Monolith

JCF Member

Joined: Mar 2001

Posts: 2,221

Monolith is doing well so far

Aug 25, 2002, 06:47 PM
Monolith is offline
Reply With Quote
Actually, neither the AI or pathfinding should be that hard. Programming paths into level like in UT is only an optimization for 3D worlds. As long as you could just access the collision mask for the level, that would be enough. Movement is only limited to running left or right, and jumping. Jumping onto platforms would be the hardest part, but still possible. Actually, we would also probably have to access the events infomation for the level too.
__________________
<div style="float: right; width: 100px; height: 70px; margin: 5px 15px;"><img src="http://madskills.org/monolith/idleserver.gif" style="width: 98px; height: 65px;"><img src="http://madskills.org/monolith/theserver.gif" style="width: 98px; height: 65px; position: relative; top: -65px;"></div><div style="margin: 0 3em; font-size: 80%; font-style: italic;">Love is patient, love is kind. It does not envy, it does not boast, it is not proud. It is not rude, it is not self-seeking, it is not easily angered, it keeps no record of wrongs. Love does not delight in evil but rejoices with the truth. It always protects, always trusts, always hopes, always perseveres.</div><div style="text-align: right; text-size: 80%;">1 Corinthians 13:4-7</div>
Tmansdc

JCF Member

Joined: Aug 2002

Posts: 110

Tmansdc is doing well so far

Aug 25, 2002, 07:25 PM
Tmansdc is offline
Reply With Quote
Quote:
Originally posted by MR MAGOO
Half-Life bots are amazing. It's almost impossible to tell if they're real or not, exept for the fact that their ping is always 5.
what half-life bots would those be? Tell me so I can download them please.
__________________
I've been here since August 2002!
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 26, 2002, 07:48 AM
Unhit is offline
Reply With Quote
Quote:
Originally posted by EvilMike
This is how UT bots work.
I also thought of something like that. Could that perhaps be fixed with a small programm (ok, someone needed to make waypoints for all levels he wants to play then....and the AI depended on the one making the waypoints...)
__________________
<center>somebody holds the key</center>
Cpp Cpp's Avatar

JCF Member

Joined: Mar 2001

Posts: 1,557

Cpp is doing well so far

Aug 26, 2002, 09:50 AM
Cpp is offline
Reply With Quote
I think I have an idea for this AI.
I suggest that the bot program should be able to write available paths for each level by itself. So far I know how to retreive the file name form jj2 so the prog can save these AI files into AI folder for example with the same file name as the level but with different extension like: Battle1.j2l, Battle1.ai. This would allow bots to learn how to play different levels by them selves. For example the first time when a bot enters an unknown level it will try different moves like running left/right for example and detect if it is moving. If it is not it will probably jump up and continue moving right to see if it goes anywhere. If not the bot program will write that data down (which will later be saved into the Battle1.ai and loaded the next time this level loads) to remember it so the bot will never try to jump here again. After that he should turn around and do the same thng. Then start with jumping, buttstomping, flying, etc. so slowly we can get the whole image map of a level. And for each level as well. We'd just need to spend a lot of time on this.

I hope you guys like my idea.

EDIT: Bugs...
__________________
<a href="http://nmap.org/"><img border="0" alt="Nmap Security Scanner" src="http://images.insecure.org/nmap/images/prop/nmap_bnr_matrix_pfos.gif"/></a>
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 26, 2002, 11:30 AM
Unhit is offline
Reply With Quote
Not a bad idea, but won't weapons change some settings in the x.ai?
__________________
<center>somebody holds the key</center>
Trafton AT

JCF Member

Joined: Mar 2002

Posts: 1,712

Trafton AT is doing well so far

Aug 26, 2002, 04:50 PM
Trafton AT is offline
Reply With Quote
Wow, someone actually quoted meh. ^_^

Except for the SiG part, it all remains true. Bots do not look like they will be happening any time soon. Oh well.
Monolith

JCF Member

Joined: Mar 2001

Posts: 2,221

Monolith is doing well so far

Aug 26, 2002, 07:10 PM
Monolith is offline
Reply With Quote
Good idea Overlord. Another thing that would help that process along would be to have the bot 'watch' what the other human (or bot) players do. That would make the learning process go a lot faster rather than just randomly guessing.
__________________
<div style="float: right; width: 100px; height: 70px; margin: 5px 15px;"><img src="http://madskills.org/monolith/idleserver.gif" style="width: 98px; height: 65px;"><img src="http://madskills.org/monolith/theserver.gif" style="width: 98px; height: 65px; position: relative; top: -65px;"></div><div style="margin: 0 3em; font-size: 80%; font-style: italic;">Love is patient, love is kind. It does not envy, it does not boast, it is not proud. It is not rude, it is not self-seeking, it is not easily angered, it keeps no record of wrongs. Love does not delight in evil but rejoices with the truth. It always protects, always trusts, always hopes, always perseveres.</div><div style="text-align: right; text-size: 80%;">1 Corinthians 13:4-7</div>
Trafton AT

JCF Member

Joined: Mar 2002

Posts: 1,712

Trafton AT is doing well so far

Aug 26, 2002, 07:11 PM
Trafton AT is offline
Reply With Quote
Yes. Monolith is right. I think they should have adaptive intelligence.
URJazzCC

JCF Member

Joined: May 2001

Posts: 97

URJazzCC is doing well so far

Aug 26, 2002, 09:18 PM
URJazzCC is offline
Reply With Quote
Overlord's Idea sounds pretty good. Then whenever you create a new level you could get a bot to 'learn' the level, then add it into the zip. But one hard thing will be programing the bot. Like wheather it should get a carrot, weapons, or attack, or capture the flag, or something else. And if a bot is created, then a command-mode would be nice. Namely for CTF, so you could say the commands that are oftenly used in team chat and it will respond to them.
__________________
You are only ugly on the outside.
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 26, 2002, 09:58 PM
Unhit is offline
Reply With Quote
Quote:
Originally posted by URJazzCC
Overlord's Idea sounds pretty good. Then whenever you create a new level you could get a bot to 'learn' the level, then add it into the zip. But one hard thing will be programing the bot. Like wheather it should get a carrot, weapons, or attack, or capture the flag, or something else. And if a bot is created, then a command-mode would be nice. Namely for CTF, so you could say the commands that are oftenly used in team chat and it will respond to them.
That's a good idea, something like the menu in UT.

Monolith is also right. Perhaps two modes: explore & learn...
__________________
<center>somebody holds the key</center>
EvilMike EvilMike's Avatar

JCF Member

Joined: Jun 2001

Posts: 3,478

EvilMike is OFF DA CHARTEvilMike is OFF DA CHARTEvilMike is OFF DA CHARTEvilMike is OFF DA CHART

Aug 26, 2002, 10:27 PM
EvilMike is offline
Reply With Quote
I *think* the best way a bot can be programmed to adapt to a level (most skillfully, at least), is for it to observe the keystrokes of the players (this probably can't work for a whole server; just one player), and look for patterns regarding keypresses and the x,y coordinates. That way it will be able to jump into ammo, over pits, and so on. Of course, this will be extremely, extremely, extremely difficult to program. Heck, let's just say it's impossible.
__________________
Download my JJ2 Episodes! (5 episodes)

Visit My JJ2 Blog (HOLD YOUR HORSES I'M WORKING ON IT SHEESH)
Trafton AT

JCF Member

Joined: Mar 2002

Posts: 1,712

Trafton AT is doing well so far

Aug 26, 2002, 10:58 PM
Trafton AT is offline
Reply With Quote
This is why the project was ditched in the first place.
Txl Kill

JCF Member

Joined: Sep 2001

Posts: 273

Txl Kill is doing well so far

Aug 27, 2002, 04:48 AM
Txl Kill is offline
Reply With Quote
Does anyone know how to get a freaking bot to accually connect into your server.. how to spawn one...? I cant figure it out i want to play around with a few things will someone tell em?
__________________
[no marquees allowed]
Cpp Cpp's Avatar

JCF Member

Joined: Mar 2001

Posts: 1,557

Cpp is doing well so far

Aug 27, 2002, 04:57 AM
Cpp is offline
Reply With Quote
Observing other players may not be a that good idea since some players would take an advantage if that and do dumb things that bots will then learn and do. It would be good only when players pass an area bots were unable to pass by themselves. Or maybe when finding secret warps.
__________________
<a href="http://nmap.org/"><img border="0" alt="Nmap Security Scanner" src="http://images.insecure.org/nmap/images/prop/nmap_bnr_matrix_pfos.gif"/></a>
White Rabbit White Rabbit's Avatar

JCF Member

Joined: Aug 2001

Posts: 4,478

White Rabbit is doing well so far

Aug 27, 2002, 05:39 AM
White Rabbit is offline
Reply With Quote
Quote:
Originally posted by Monolith
Good idea Overlord. Another thing that would help that process along would be to have the bot 'watch' what the other human (or bot) players do. That would make the learning process go a lot faster rather than just randomly guessing.
Come on! They're only bots! Not humans. Bots are "stupid"!They're not human beings, who can actually learn things! They only do what they're programmed to do and nothing else. And if you could make bots do that, who would have the programming skills to do it?

Btw, what about the demo in Jazz2? If you leave Jazz2 alone for a while, it starts a kind of demo. I dunno if it's just a recorded game, but if it isn't, then something must be controlling the rabbit in the demo. What do you think?
FQuist FQuist's Avatar

JCF Member

Joined: Sep 2001

Posts: 3,251

FQuist is an asset to this forumFQuist is an asset to this forum

Aug 27, 2002, 06:21 AM
FQuist is offline
Reply With Quote
It's a macro, White Rabbit.

Well, some good suggestions here. It got me an idea similar to Evilmike's.

Have a program which records your keystrokes and coordinates. You just play a few internet games in a level, and after a while a list of possible coordinates and places with springs/weapons will have been collected. With these coordinates the bot will be able to see how the level looks like(it assumes walls are at unknown places)

I had another thought.. the jj2 level format is compressed. But in order to load a level jj2 has to decompress it and put it somewhere in the memory. So you should be able to find it.
__________________
“The truth is that everything that can be accomplished by showing a person when he's wrong, ten times as much can be accomplished by showing him where he is right.” - Robert T. Allen

Interesting Jazz-related links:
Thread: Gameplay Theories - Thread: Make Up Your Own Gametype

Spotify.fm

Super Saiyan

JCF Member

Joined: Nov 2001

Posts: 416

Super Saiyan is doing well so far

Aug 27, 2002, 07:18 AM
Super Saiyan is offline
Reply With Quote
So you guys are going to re-open the project? Why not giving a another try. Is it that hard? You guys have a lot ideas, so my opinion is just go start that project.
__________________
Bla.
Newspaz Newspaz's Avatar

JCF Member

Joined: Jan 2001

Posts: 2,678

Newspaz has disabled reputation

Aug 27, 2002, 09:04 AM
Newspaz is offline
Reply With Quote
Well, who with a reasonable knowledge of a fast programming language is going and have a try on it?
Cpp Cpp's Avatar

JCF Member

Joined: Mar 2001

Posts: 1,557

Cpp is doing well so far

Aug 27, 2002, 11:27 AM
Cpp is offline
Reply With Quote
Probably the J2HG when we have enough time and realize it's time to put more work into it.
__________________
<a href="http://nmap.org/"><img border="0" alt="Nmap Security Scanner" src="http://images.insecure.org/nmap/images/prop/nmap_bnr_matrix_pfos.gif"/></a>
Super Saiyan

JCF Member

Joined: Nov 2001

Posts: 416

Super Saiyan is doing well so far

Aug 27, 2002, 11:53 AM
Super Saiyan is offline
Reply With Quote
Come on, if J2HG made those BOTS I'll be thankfull to them for the rest of my life
__________________
Bla.
Monolith

JCF Member

Joined: Mar 2001

Posts: 2,221

Monolith is doing well so far

Aug 27, 2002, 05:34 PM
Monolith is offline
Reply With Quote
Well, I could help whoever to flesh out how to program the AI, but I won't have the time to actually do the programming.
__________________
<div style="float: right; width: 100px; height: 70px; margin: 5px 15px;"><img src="http://madskills.org/monolith/idleserver.gif" style="width: 98px; height: 65px;"><img src="http://madskills.org/monolith/theserver.gif" style="width: 98px; height: 65px; position: relative; top: -65px;"></div><div style="margin: 0 3em; font-size: 80%; font-style: italic;">Love is patient, love is kind. It does not envy, it does not boast, it is not proud. It is not rude, it is not self-seeking, it is not easily angered, it keeps no record of wrongs. Love does not delight in evil but rejoices with the truth. It always protects, always trusts, always hopes, always perseveres.</div><div style="text-align: right; text-size: 80%;">1 Corinthians 13:4-7</div>
Krezack Krezack's Avatar

JCF member

Joined: Nov 2001

Posts: 5,156

Krezack has disabled reputation

Aug 28, 2002, 04:06 AM
Krezack is offline
Reply With Quote
It has been tried before. As far as I know it never panned out.
__________________
"Are we not threatened with a flood of information? And is this not the monstrousness of it: that it crushes beauty by means of beauty, and annihilates truth by means of truth? For the sound of a million Shakespeares would produce the very same furious din and hubbub as the sound of a herd of prairie buffalo or sea billows."
—Stanisław Lem, Imaginary Magnitude (1973)
~SPLASH~

JCF Member

Joined: Apr 2001

Posts: 1,210

~SPLASH~ is doing well so far

Aug 28, 2002, 07:28 AM
~SPLASH~ is offline
Reply With Quote
1. Fly over to a country where slavery is legal
2. Get slaves
3. Make them play Jazz2
4. Forbid them to use the chat function

Et voila, 4 simple steps to get decent bots!
mirrow

JCF Member

Joined: Apr 2001

Posts: 151

mirrow has disabled reputation

Aug 28, 2002, 09:50 AM
mirrow is offline
Reply With Quote
aw make routes for each lvl like overlord said and if another player is in the area (10 tiles arround the place where the bot actually is) the bot returns to fight after this guy until this guy is maybe 30 tiles awaay from his route and maybe u could add some extra jumps for each lvl 'taught by any good player' to use them if the enemie is in any special position...
if the bot has just 3 hearts he searches for an carrot ...

this will work :P
__________________
max-e 15:16:45: how are the girls ?
Overlord 15:17:07: who?
max-e 15:17:18: your girls?
Overlord 15:17:24: 404
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 28, 2002, 10:29 AM
Unhit is offline
Reply With Quote
Good ideas, mirrow.
__________________
<center>somebody holds the key</center>
Super Saiyan

JCF Member

Joined: Nov 2001

Posts: 416

Super Saiyan is doing well so far

Aug 28, 2002, 11:50 AM
Super Saiyan is offline
Reply With Quote
I think the hardest of this will be the 'brains' of those BOTS. Like, what should a bot do when your out of his sight...? Going to cirkel the lvl around and around, or hunt you? And like, how is a BOT supposed to get ammo if the ammo wont regenerate caused by lag in the server. But I really want J2HG, or whoever to give it a try to make it, it might turn on well, Or not
__________________
Bla.
Unhit Unhit's Avatar

Pornocrat

Joined: Nov 2001

Posts: 3,771

Unhit is doing well so far

Aug 28, 2002, 09:33 PM
Unhit is offline
Reply With Quote
I guess an even bigger problem is to get the bot using weapons where they are useful, i.e. RF in big free spaces or bouncers when the enemy hides behind a wall...
__________________
<center>somebody holds the key</center>
$tilettø

JCF member

Joined: May 2001

Posts: 3,221

$tilettø has disabled reputation

Aug 31, 2002, 11:19 PM
$tilettø is offline
Reply With Quote
you can program something in it like Player is at pos 5.5 shoot bouncers towards the wall i gues?

and if the bot dies just let him respawn with all levels so you wont get that lagg problem ;P
Trafton AT

JCF Member

Joined: Mar 2002

Posts: 1,712

Trafton AT is doing well so far

Sep 1, 2002, 10:07 AM
Trafton AT is offline
Reply With Quote
Hmmm...Several people have been lately pretending to be chatting bots, and someone (maybe even me) may make a chatting bot, but not a playing bot.
Reply

Thread Tools

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 On

Forum Jump

All times are GMT -8. The time now is 06:42 PM.