View Full Version : [FVG]: Difficulty Levels
Mike Ciance
15-07-2004, 23:57
i know this doesnt need to be decided right away, but i figured why not start now? we need to decide some things:
how many difficulty levels we want to have
which are available from the beginning and which must be accessed
has anybody noticed how much i love the list code? :D
what we want to name the different difficulty levels
JoeXIII'007
16-07-2004, 14:04
how many difficulty levels we want to have
what we want to name the different difficulty levels
We should start off with 3 diffuculty levels:
Rookie == easy == limited AI, a few smart moves by the computer, etc.
Veteran == norm == good AI, more smart moves, etc.
Expert == hard == extremely good AI, makes very smart moves, able to predict opponets moves, etc.
I am tempted to put a 4th, harder level of difficulty, but these three will do.
:D
Clark Gilbert
16-07-2004, 14:45
We should start off with 3 diffuculty levels:
Rookie == easy == limited AI, a few smart moves by the computer, etc.
Veteran == norm == good AI, more smart moves, etc.
Expert == hard == extremely good AI, makes very smart moves, able to predict opponets moves, etc.
I am tempted to put a 4th, harder level of difficulty, but these three will do.
:D
Rookie Mode
Normal Mode
13 Year Veteran Mode
Dean-Like Mode
Expert == hard == extremely good AI, makes very smart moves, able to predict opponets moves, etc.The only problem with the difficulty being the AI is, well, that AI is hard to do, expecially considering that there will be dozens/hundereds of robots that the AI might have to handle, each with different capabilties/stregths. Also, the field isn't very static, meaning there are balls bouncing around, other robots... All in all, AI will be the hardest part of the project (after we get the framework up, of coures.
A better idea might be to make the different levels give your particualar robot various levels of "handicaps." For instance, on rookie, your robot might be able to always climb the platform (assuming it's so equipted). Also, HP accuracy is something easy to write that could be used.
Rookie Mode
Normal Mode
13 Year Veteran Mode
Dean-Like Mode
Perhaps not "Dean-like Mode" but simply "Dean Mode". That would be amusing :)
MrToast
Mike Ciance
16-07-2004, 17:13
i was actually thinking it should be:
Rookie
Veteran
Expert
Gracious Professional :D
Astronouth7303
16-07-2004, 17:35
The only problem with the difficulty being the AI is, well, that AI is hard to do, expecially considering that there will be dozens/hundereds of robots that the AI might have to handle, each with different capabilties/stregths. Also, the field isn't very static, meaning there are balls bouncing around, other robots... All in all, AI will be the hardest part of the project (after we get the framework up, of coures.
A given AI will only support a given set of bots.
I've been thinking, and here's how it goes:
The AI is sepperate from the robot (malicious code)
The AI recieves info on the robot's speed, position, orientation, and the feed back data.
The AI outputs an OI packet
The packet is screened before going to the bot (malicious code)
The goal is to prevent an AI from interacting directly with the robot (preventing cheaters), but allow the AI to be easily made and quickly ran.
We should start off with 3 diffuculty levels:
Rookie == easy == limited AI, a few smart moves by the computer, etc.
Veteran == norm == good AI, more smart moves, etc.
Expert == hard == extremely good AI, makes very smart moves, able to predict opponets moves, etc.
I am tempted to put a 4th, harder level of difficulty, but these three will do.
:D
I think the levels should be:
Preseason Scrimage - barely functional opponents
Early Regional - half of Opponets work and little strategic play
Late Regional - 3/4 of Opponents work and play strategically
Championship - all Opponents work and play strategically
I was thinking that one way we could change the AI would be to add time delays to when the AI receives/can use and react to the other robots. So hard, when you moved the AI would know almost immediately and be able to react to you and prevent you from doing something faster, where as on easy maybe add a few tenths of a second to that, so it would be like the AI driver had slow reflexes... just a thought.
The AI is sepperate from the robot (malicious code)
The AI recieves info on the robot's speed, position, orientation, and the feed back data.
The AI outputs an OI packet
The packet is screened before going to the bot (malicious code)
The goal is to prevent an AI from interacting directly with the robot (preventing cheaters), but allow the AI to be easily made and quickly ran.
If this is the case, then each robot would have to include a ranking of its strengths and weaknesses (e.g., more defensive, better hanger, etc.). Note that it would be rather complicated, and not necessarily very effective (esp. for time put in) to do it this way, -- at least at initial inspection. It seems to me, though, the computer AI needs just be a generic bot (maybe have several based on different strengths/weaknesses), but the AI seems very much a property of the bot. Of course, and this is a BIG of course, it is waaaaaaaaaaaaaaay to early to really be discussing any of this seriously. The AI can wait, because it is all for naught if no energy is put into the basic structure, the very backbone of the game. What will the competition framework be like? How will matches be handled? Start thinking in terms of:
Basic element is Robot, of which two constitute an alliance. 2 alliances passed to Match, which returns winning alliance. List of Robots passed to Tournament, which includes a Scheduler which gets all the pairings and timing set up (a fair amount of thought needed if you allow many players across a network connection; for instance, it seems heuristic methods for a "bin packing" problem might be needed--but now I commit your sin and digress :P). Tournament includes Scheduler, some Referee element (makes sure all stay in field, robots aren't hit too hard, pinning limited, etc.), a Scorer(for Match, and then one for Tournament), which scores the match and some way to record the running score of the whole tournament. Etc.
There's a bunch more elements like this. I may have even been too specific; it helps to start out with general outlines like such, so everyone is thinking of the same thing, ...and so that once it is fleshed out more, elements like AI Design can be tackled in turn and everyone can see what they might be able to add discussion to, etc. Of course, ignore my poor example and just use it as a general springboard for thought, not necessarily a suggestion for your particular structure--which I can't even begin to make, as I don't know many basic things that need to be decided first ... e.g., do you plan to allow multiple players through network connections eventually? if so, should know so you can plan for it now ... do you plan to play through a whole tournament season, and then go to nationals perchance, or just a single match or a series of matches? ... etc. You can see, I hope, that the basic questions must needs be discussed, so that the basic structure can begin to be discussed, so that the more specific elements can be discussed, so that algorithms and pseudocode can be created, so that eventually you can program the darn thing. (Disclaimer: Some steps missing.)
kjohnson
19-07-2004, 08:26
We should start off with 3 diffuculty levels:
Rookie == easy == limited AI, a few smart moves by the computer, etc.
Veteran == norm == good AI, more smart moves, etc.
Expert == hard == extremely good AI, makes very smart moves, able to predict opponets moves, etc.
I am tempted to put a 4th, harder level of difficulty, but these three will do.
:D
I like those three for the first three levels. If adding in a fourth level, it should only be available after beating the whole third/expert level - kind of like a secret level.
Rich Kressly
19-07-2004, 11:00
Sorry for tossing in my two cents without reading all of the threads about the video game. Maybe this has already been discussed, but wouldn't it be great to be able to help another team in the pit area, have alliances congratulate eachother, etc? In short, if you REALLY want a game about FIRST, then it needs to be something other than just the game. These things could be done with a combination of text and simple objects without actual people to model if that was too hard. OK, I'm done. Congrats on a great project and good luck.
Maybe this has already been discussed, but wouldn't it be great to be able to help another team in the pit area, have alliances congratulate eachother, etc?Cool idea. For the first versions, we'll probably just go for game play, but maybe after we get that working well, we can have break downs, with a few decisions on what you should do... :D
We might also be able to have a few scenes created in 3DS showing one team congratualting another. Obviously you couldn't do all of them, but, you could do some...
Astronouth7303
22-07-2004, 15:25
Sorry for tossing in my two cents without reading all of the threads about the video game. Maybe this has already been discussed, but wouldn't it be great to be able to help another team in the pit area, have alliances congratulate eachother, etc? In short, if you REALLY want a game about FIRST, then it needs to be something other than just the game. These things could be done with a combination of text and simple objects without actual people to model if that was too hard. OK, I'm done. Congrats on a great project and good luck.
A built-in pit chat? maybe...
some clips from various comps would be cool. Also: if you're in the pits, how about watching the game?
(This is all for LAN/Web play, of course).
vBulletin® v3.6.4, Copyright ©2000-2017, Jelsoft Enterprises Ltd.