(Status 4/2/03 -- We're likely to keep smart creatures special.)
Topic 55
- Luminary
- Exile
- Post #2
Topic 55
I hear tell of one of the older monster AI GMs writing either an AppleScript, or an application that could hunt rats. Now this isn't a "walk back and forth in the Rat Towers, accidentally tripping over rats" script. This was a full-blown AI, that ran on the client machine. It could sense the location of the rats, and move the character in the appropriate direction. It kept track of the character location and could detect when the character had left the Rat Towers and re-enter.
Other functions could have been added pretty easily. A rudimentary share-the-healer AI. A return greeting (aa waves) AI, and so on.
My point is that maybe some really complex monster AIs could be run from a special "Monster Client" from machines other than the server. If the client was a faceless background task, DT might even be able to let non-GMs run it on their local computer. Think of it as Distributed Computing meets Clan Lord, ClanLord@Home.
Things could get really scary with a distributed monster client...Consider monsters that could use their own sunstone channel to coordinate.
Other functions could have been added pretty easily. A rudimentary share-the-healer AI. A return greeting (aa waves) AI, and so on.
My point is that maybe some really complex monster AIs could be run from a special "Monster Client" from machines other than the server. If the client was a faceless background task, DT might even be able to let non-GMs run it on their local computer. Think of it as Distributed Computing meets Clan Lord, ClanLord@Home.
Things could get really scary with a distributed monster client...Consider monsters that could use their own sunstone channel to coordinate.
- Greyfox
- Exile
- Post #3
Topic 55
Some AI for the gate guards would also be a good idea. If they are going to stand at the gates, they ought to swipe at incoming monsters (at least things bigger than vermine). The current NPCs are OK for store clerks and town gossips, but at least some NPC's should be smarter.
- Xel
- Exile
- Post #4
Topic 55
Some monsters already coordinate. Have you seen orga zealots since some versions ago? They group up into a straight line formation and advance at speeds and angles allowing themselves to stay in line. I was very surprised when I saw this. (You're more likely to see it when you're fallen in an orga invasion than if you're running around alive)
- Kojiro
- Exile
- Post #5
Topic 55
Luminary wrote:) My point is that maybe some really complex monster AIs could be run from a special "Monster Client" from machines other than the server. If the client was a faceless background task, DT might even be able to let non-GMs run it on their local computer. Think of it as Distributed Computing meets Clan Lord, ClanLord@Home.
Things could get really scary with a distributed monster client...Consider monsters that could use their own sunstone channel to coordinate.
Super excellent ++good idea.
- Hidden
- Exile
- Post #6
Topic 55
That was Chum.Luminary wrote:I hear tell of one of the older monster AI GMs writing either an AppleScript, or an application that could hunt rats.
Problems:My point is that maybe some really complex monster AIs could be run from a special "Monster Client" from machines other than the server. If the client was a faceless background task, DT might even be able to let non-GMs run it on their local computer. Think of it as Distributed Computing meets Clan Lord, ClanLord@Home.
a) Players hack the monster client, wreck havoc.
b) Player machine crashes while monster is attacking. Easy pickings for exiles.
c) Player on 56k connection. Laggy monster?
- Kojiro
- Exile
- Post #7
Topic 55
Hidden wrote:
Problems:
a) Players hack the monster client, wreck havoc.
b) Player machine crashes while monster is attacking. Easy pickings for exiles.
c) Player on 56k connection. Laggy monster?
Solutions:
a) Havoc is entertaining!
b) Exile machine crashes while monster is attacking. Easy pickings for Monsters.
c) Exile on 56k connection. Laggy exiles!
I say bring it on.
- Jeff Ray
- Exile
- Post #8
Topic 55
>> My point is that maybe some really complex monster AIs could be
>> run from a special "Monster Client" from machines other than the
>> server. If the client was a faceless background task, DT might even
>> be able to let non-GMs run it on their local computer. Think of it
>> as Distributed Computing meets Clan Lord, ClanLord@Home.
Most game AI's "cheat", using additional information pulled out of the game engine and not available to normal players, because AI's are still too stupid to compete with humans. For example, human players aren't able to look at a pride of sky maha and immediately tell which one is "weakest". To make this work, there would have to be a way for the client to send queries for sensitive data to the server, and the exploit potential of that would be enormous.
> Problems:
> a) Players hack the monster client, wreck havoc.
> b) Player machine crashes while monster is attacking. Easy pickings for exiles.
> c) Player on 56k connection. Laggy monster?
All true, but the core idea has potential. The GM's have complained about how limited they are in terms of what a server script can to.
What if high level monsters each had a rudimentary AI (similar to or even simpler than the current monster scripts) running on the server, for security and as a fallback, and a "higher level" monster AI running on some restricted DT system? The higher level AI's could be a bunch of threads spawned from a Monster AI server, and if the frame-to-frame chores are left to the low level server script, they wouldn't even need to be synchronous with the server; they could just issue "commands" (get status of nearby monsters and exiles; heal Monster 378; attack Exile 64; yell "Avast, Ye, Maeght! Time to die!").
Taking the discussion in a different direction now, should the GM's document some subset of the monster script system, and run a contest for player-scripters to see who can come up with the best new monster AI?
-jrr
>> run from a special "Monster Client" from machines other than the
>> server. If the client was a faceless background task, DT might even
>> be able to let non-GMs run it on their local computer. Think of it
>> as Distributed Computing meets Clan Lord, ClanLord@Home.
Most game AI's "cheat", using additional information pulled out of the game engine and not available to normal players, because AI's are still too stupid to compete with humans. For example, human players aren't able to look at a pride of sky maha and immediately tell which one is "weakest". To make this work, there would have to be a way for the client to send queries for sensitive data to the server, and the exploit potential of that would be enormous.
> Problems:
> a) Players hack the monster client, wreck havoc.
> b) Player machine crashes while monster is attacking. Easy pickings for exiles.
> c) Player on 56k connection. Laggy monster?
All true, but the core idea has potential. The GM's have complained about how limited they are in terms of what a server script can to.
What if high level monsters each had a rudimentary AI (similar to or even simpler than the current monster scripts) running on the server, for security and as a fallback, and a "higher level" monster AI running on some restricted DT system? The higher level AI's could be a bunch of threads spawned from a Monster AI server, and if the frame-to-frame chores are left to the low level server script, they wouldn't even need to be synchronous with the server; they could just issue "commands" (get status of nearby monsters and exiles; heal Monster 378; attack Exile 64; yell "Avast, Ye, Maeght! Time to die!").
Taking the discussion in a different direction now, should the GM's document some subset of the monster script system, and run a contest for player-scripters to see who can come up with the best new monster AI?
-jrr
- Hor
- Exile
- Post #9
Topic 55
Hmm... why a so difficult approach?
The time and cost to develop such a distributed computing AI system could be
spent on a new server machine instead.
A machine that is like 5 times as fast as the current server is not really costing lots
of coins these days. Just check ebay for some small ultra-sparc machines....
HWC Hor
The time and cost to develop such a distributed computing AI system could be
spent on a new server machine instead.
A machine that is like 5 times as fast as the current server is not really costing lots
of coins these days. Just check ebay for some small ultra-sparc machines....
HWC Hor
- Tigger
- Exile
- Post #10
Topic 55
Even using DSL/cable, having the server spawn a bunch of connections and send a bunch of round-trip data to external servers for each frame sounds like it would induce considerable lag (even assuming those external processors were secure/robust). Would CL still be able to run at 4+ fps in this scenario? Even at a very optimistic 50ms of added latency per exchange per frame (2 delays at server connection, 2 at distributed client, plus transmission delay), thats 200ms (1/5 second) of additional delay per second. Then there's the actual processing time of the process and some additional overhead for the CL server to wrangle all that data together and integrate it.Hidden wrote:c) Player on 56k connection. Laggy monster?
It's an interesting notion, but it seems highly unlikely it could work under anything resembling the current architecture. I think Hor has the right idea: you want more sophiticated AI, get a faster server.
- Haze
- Exile
- Post #11
Topic 55
Hor wrote:Hmm... why a so difficult approach?
The time and cost to develop such a distributed computing AI system could be
spent on a new server machine instead.
A machine that is like 5 times as fast as the current server is not really costing lots
of coins these days. Just check ebay for some small ultra-sparc machines....
HWC Hor
That was my exact thought... is Clan Lord still running on an 85MHz Sparc 5?
- Kojiro
- Exile
- Post #12
Topic 55
Tigger wrote:Even using DSL/cable, having the server spawn a bunch of connections and send a bunch of round-trip data to external servers for each frame sounds like it would induce considerable lag ...Hidden wrote:c) Player on 56k connection. Laggy monster?
We're just talking about a client app that runs monsters. I don't see how that would induce lag any more than the client app that runs exiles does.
- Tigger
- Exile
- Post #13
Topic 55
Kojiro wrote:We're just talking about a client app that runs monsters. I don't see how that would induce lag any more than the client app that runs exiles does.
Luminary originally said "My point is that maybe some really complex monster AIs could be run from a special 'Monster Client' from machines other than the server." External machines = transmission delays + latency + overhead of packaging and parsing data = lag (and security, uptime, and synchronization issues). But if you really mean something running right on the CL server alongside the CL server app, then what's the point of having it be a separate program? Maybe I'm not understanding exactly what it is that this "monster client" is supposed to do that can't be done now?
- Hidden
- Exile
- Post #14
Topic 55
Basically the suggestion is really smart bot-monsters, run on player machines. They would have some lag, but no more than regular players.
The problem with this, is that programming an AI smart enough to make it worthwhile is probably beyond current technology. Humans can deal with small amounts of lag subconsciously, because we're good at heuristic calculation ("eyeballing it"). Computers can't do that, so they'd be screwed with anything above a 125ms ping.
Plus, a bunch of people could dedicate themselves to running the monster client and start some huge download to purposefully induce lag, thus making the monsters easy pickings.
Add in the obvious security issues, and, well...
The problem with this, is that programming an AI smart enough to make it worthwhile is probably beyond current technology. Humans can deal with small amounts of lag subconsciously, because we're good at heuristic calculation ("eyeballing it"). Computers can't do that, so they'd be screwed with anything above a 125ms ping.
Plus, a bunch of people could dedicate themselves to running the monster client and start some huge download to purposefully induce lag, thus making the monsters easy pickings.
Add in the obvious security issues, and, well...
- zarutian
- Exile
- Post #15
Topic 55
Very good ideaLuminary wrote:
My point is that maybe some really complex monster AIs could be run from a special "Monster Client" from machines other than the server. If the client was a faceless background task, DT might even be able to let non-GMs run it on their local computer. Think of it as Distributed Computing meets Clan Lord, ClanLord@Home.