I forgot to mention this in my last message... On Sun, Dec 09, 2001 at 10:04:07PM -0800, Daniel Damouth wrote: > From: "Mark Mielke" <mark at mark.mielke.cc> > intelligent 'bots > > I actually started coding away. As I intend all 'bots to function as > > appendages to a single unit, I've had to take a look at socket code. > What is the point of designing a robot team that cheats by communicating > through sockets instead of normal messaging? The bots will be playing a > different game than the humans. A different game? Isn't that what makes Netrek so interesting? With so many variables, it is not often that one will see the 'same game', twice. The planets will not be taken in the same order, the same number of armies are not initially bombed in the same length of time, etc. It is the *same game*, in that both games are Netrek. Both sets of clients are forced to follow "THE" rules, in that they must all pass through the ntserv interface. The fact that humans would rarely be capable of synchronization at such a granular level may mean a significant advantage for the robot team, but is this really morally wrong somehow? Should the robot team restrict itself to "reflexes that a human could make"? (i.e. purposefully don't notice the plasma, if the way it is drawn on the COW client makes it invisible on top of the enemy ship... wait until it gets closer...) What kind of restrictions are these? The "rules" of Netrek are defined in the server that this mailing list was created for. There is no "rule" that says that team mates cannot share information either through talking to each other (on the phone, or across the room), or through datastream. A human can relay a rather complicated message through the messaging system such as "ogg F4, sync on R2". They can often generate these messages using macros. A human player can parse the message, use a little bit of interpretation regarding where and how they should be positioned, and jump into it, with the confidence that they will be able to deal with any situation that arises by carefully watching their opponents. Other than inefficiency, this is no different than 'bots communicating with each other, or further, a single 'bot manipulation all ships. As I mentioned before, one of the primary problems with 'bots of the past, is the scheduling of available resources. Two robots should never bomb the same planet at the same time unless it is determined that sufficient armies exist on that planet, and that there is a time window that requires two robots to performing bombing in order to complete successfully instead of one. Human players instinctly know this, and when they see somebody ahead of them, will usually choose correctly as to who remains and bombs, and who tackles another planet. The 'bots don't know *anything* instinctively. Programming them to think ahead by several planets, and several enemy moves, and then distributing the work appropriately is only more efficient. It isn't really any worse than having a Captain of the team who is an observer, messaging the team "Ok, R2... you take Hyd, and R3, you bomb Ear." It's just more efficient. Would you expect a robot team to be more efficient, or less efficient, than a human team? mark -- mark at mielke.cc/markm at ncf.ca/markm at nortelnetworks.com __________________________ . . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder |\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ | | | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada One ring to rule them all, one ring to find them, one ring to bring them all and in the darkness bind them... http://mark.mielke.cc/