Aug 24, 2002, 11:15 PM | |
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> |
Aug 25, 2002, 01:29 AM | ||
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:
__________________
![]() |
Aug 25, 2002, 01:46 AM | |
Okay...
__________________
<center>somebody holds the key</center> |
Aug 25, 2002, 02:32 AM | |
So this project has been stopped?
__________________
Bla. |
Aug 25, 2002, 03:01 AM | ||
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 ![]() Quote:
|
Aug 25, 2002, 03:38 AM | |
Thx for the research.
__________________
<center>somebody holds the key</center> |
Aug 25, 2002, 05:26 AM | |
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.
__________________
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> |
Aug 25, 2002, 06:34 AM | |
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. |
Aug 25, 2002, 08:32 AM | |
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. |
Aug 25, 2002, 12:34 PM | |
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) |
Aug 25, 2002, 01:14 PM | |
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.
|
Aug 25, 2002, 06:47 PM | |
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> |
Aug 25, 2002, 07:25 PM | ||
Quote:
__________________
I've been here since August 2002! |
Aug 26, 2002, 07:48 AM | ||
Quote:
__________________
<center>somebody holds the key</center> |
Aug 26, 2002, 09:50 AM | |
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> |
Aug 26, 2002, 11:30 AM | |
Not a bad idea, but won't weapons change some settings in the x.ai?
__________________
<center>somebody holds the key</center> |
Aug 26, 2002, 04:50 PM | |
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. |
Aug 26, 2002, 07:10 PM | |
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> |
Aug 26, 2002, 07:11 PM | |
Yes. Monolith is right. I think they should have adaptive intelligence.
|
Aug 26, 2002, 09:18 PM | |
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. |
Aug 26, 2002, 09:58 PM | ||
Quote:
Monolith is also right. Perhaps two modes: explore & learn...
__________________
<center>somebody holds the key</center> |
Aug 26, 2002, 10:27 PM | |
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) |
Aug 26, 2002, 10:58 PM | |
This is why the project was ditched in the first place.
|
Aug 27, 2002, 04:48 AM | |
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] |
Aug 27, 2002, 04:57 AM | |
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> |
Aug 27, 2002, 05:39 AM | ||
Quote:
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? |
Aug 27, 2002, 06:21 AM | |
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.
__________________
Interesting Jazz-related links: Thread: Gameplay Theories - Thread: Make Up Your Own Gametype |
Aug 27, 2002, 07:18 AM | |
So you guys are going to re-open the project? Why not giving a another try. Is it that hard?
![]()
__________________
Bla. |
Aug 27, 2002, 11:27 AM | |
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> |
Aug 27, 2002, 11:53 AM | |
Come on, if J2HG made those BOTS I'll be thankfull to them for the rest of my life
![]()
__________________
Bla. |
Aug 27, 2002, 05:34 PM | |
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> |
Aug 28, 2002, 04:06 AM | |
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) |
Aug 28, 2002, 09:50 AM | |
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 |
Aug 28, 2002, 10:29 AM | |
Good ideas, mirrow.
__________________
<center>somebody holds the key</center> |
Aug 28, 2002, 11:50 AM | |
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. |
Aug 28, 2002, 09:33 PM | |
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> |
Sep 1, 2002, 10:07 AM | |
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.
|
![]() |
«
Previous Thread
|
Next Thread
»
Thread Tools | |
|
|
All times are GMT -8. The time now is 12:42 PM.
Jazz2Online © 1999-INFINITY (Site Credits). Jazz Jackrabbit, Jazz Jackrabbit 2, Jazz Jackrabbit Advance and all related trademarks and media are ™ and © Epic Games. Lori Jackrabbit is © Dean Dodrill. J2O development powered by Loops of Fury and Chemical Beats. Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Original site design by Ovi Demetrian. DrJones is the puppet master. Eat your lima beans, Johnny.