May 2003
- NetGames 2003: CFParticipation Sugih Jamin
- MUD codebases Chris Saik
- MUD codebases Ammon Lauritzen
- MUD codebases Caliban Tiresias Darklock
- MUD codebases Linder Support
- MUD codebases J C Lawrence
- Flow of messages sanxion sanxion
- Flow of messages Ammon Lauritzen
- Flow of messages Ben Chambers
- Flow of messages Travis Casey
Friday, May 02, 2003, 10:21:50 AM, sanxion sanxion wrote:
> I have been pondering upon the flow of messages that are handled
> on the server when something occurs. Lets say a player gives
> another player items. This generates a bunch of information for
> example:
> 1. Text relevant to all players in the room:
> Player X1 gives Y to Player X2.
> Etc.
> 2. Text relevant to the giver:
> Player X2’s hands are full.
> 3. Text relevant to the receiver:
> Player X1 tries to give you Y, but your hands are full.
> 4. Events sent to npc:s:
> Event(Player X1, give, Y, Player X2)
> Up to now I have used a model that resembles sending e-mail. I set
> a 1) content-type, 2) content, and 3) add a number of
> receivers. Receivers can be clients, npc:s, special scripts, or
> loggers. Content-types can be text or events. Each receiver parses
> the message in the way they were designed to. A npc might perform
> an action, loggers would log text to a file, a client send a
> message to the buffer etc. etc.
> I have come to the understanding that most muds process messages
> in the same function/method. This seems fairly inflexible to
> me. Anyone agree or disagree? Is the model I’m using something to
> extend upon or are there better solutions? Perhaps someone could
> give me a breakdown of what they use and if I’m out hiking?
There's two different things involved here, really:
1 - Getting messages to objects.
2 - Deciding what messages to send to which objects.
Most muds have basic message functions which handle #1, and it
sounds like you do too. On #2, many muds simply leave that up to
the programmer to accomplish -- but there are some which have
functions to handle common cases for the programmer.
For example, the Lima mudlib provides several things for this. If
I'm remember right (it's bee a few years), it has:
1 - a character does an action which everyone in the same room can
see. Optionally, the action may have a target.
2 - a character does an action which only the character and a
specific list of recipients can see. Optionally, the action may
have a target.
3 - a character does a targetted action which only the character
and the target can see
(IIRC, #3 is just a "wrapper function" which calls #2 and is
provided for convenience, since #2 could always be used where #3
is used.)
Further, these functions take a string which has variables in it,
and objects are supplied to match the variables. There's also some
special marking to indicate verbs which may need to change. A
parser figures out what message should be sent to whom, and sends
it.
An example will probably help:
"$N $vattack $t.", attacker, target
send this with the "everyone in the room can see" function, with the
attacker being Buffy and the target Boffo.
Buffy sees: You attack Boffo.
Boffo sees: Buffy attacks you.
everyone else in the room sees: Buffy attacks Boffo.
There are also variables which can be used to generate appropriate
pronouns for an object, depending on gender, and to generate the
correct indefinite article for an object ("a" or "an").
Lima doesn't do the thing for NPCs which you mention, but I don't
think it would be too terribly hard to add.
--
Travis Casey
efindel@earthlink.net - Flow of messages Brian Lindahl
- Flow of messages Ben Chambers
- Flow of messages Brian Lindahl
- Flow of messages sanxion sanxion
- Flow of messages Brian Lindahl
- UDP vs TCP for MUD/MMORPG project. Jason Slaughter
- UDP vs TCP for MUD/MMORPG project. Matt Mihaly
- UDP vs TCP for MUD/MMORPG project. Ryan Arthur
- UDP vs TCP for MUD/MMORPG project. Crosbie Fitch
- UDP vs TCP for MUD/MMORPG project. William
- UDP vs TCP for MUD/MMORPG project. Byron Ellacott
- UDP vs TCP for MUD/MMORPG project. Evan Cortens
- UDP vs TCP for MUD/MMORPG project. J C Lawrence
- UDP vs TCP for MUD/MMORPG project. Amanda Walker
- Customization in games, as a design tool / gameplay element ceo
- Warrior Challenge on PBS Madrona Tree
- Warrior Challenge on PBS Edward Glowacki
- Warrior Challenge on PBS Travis Casey
- Warrior Challenge on PBS Michael Chui
- MudDev FAQ - part 2 Marian Griffith
- MudDev FAQ - part 2 Mats Lidstrom
- MudDev FAQ - part 2 J C Lawrence
- MudDev FAQ - part 2 J C Lawrence
- Storytelling in a PSW from a Player's Persepctive Talanithus HTML
- Storytelling in a PSW from a Player's Persepctive Michael Chui
- Storytelling in a PSW from a Player's Persepctive David Kennerly
- Storytelling in a PSW from a Player's Persepctive Michael Chui
- Storytelling in a PSW from a Player's Persepctive Talanithus HTML
- Storytelling in a PSW from a Player's Persepctive J C Lawrence
- relevance of paper RPGs (was D& D vs. MMORPG "complexity") Travis Casey
- WAP MUD GAME DEVELOP Richard Ruan
- WAP MUD GAME DEVELOP Edouard Kock
- D&D and MMORPGs Michael Tresca
- D&D and MMORPGs Sean Kelly
- D&D and MMORPGs shren
- D&D and MMORPGs Threshold RPG
- D&D and MMORPGs Taylor
- D&D and MMORPGs Chris Holko
- D&D and MMORPGs Daniel James
- D&D and MMORPGs Peter Tyson
- D&D and MMORPGs Jason Murdick
- D&D and MMORPGs Michael Tresca
- D&D and MMORPGs Michael Tresca
- Database vs. Disk Tom
- Database vs. Disk Sean Kelly
- Database vs. Disk Ben Garney
- Database vs. Disk Adam Dray
- Database vs. Disk Hans-Henrik Staerfeldt
- Database vs. Disk Brian Lindahl
- Database vs. Disk Chris Holko
- Database vs. Disk Daniel.Harman@barclayscapital.com
- Database vs. Disk Weston Fryatt
- Database vs. Disk J C Lawrence
- Database vs. Disk Byron Ellacott
- Database vs. Disk Dave Rickey
- Database vs. Disk J C Lawrence
- Database vs. Disk Bruce Mitchener
- Database vs. Disk J C Lawrence
- Database vs. Disk Bruce Mitchener
- Database vs. Disk Jason Gauthier
- Database vs. Disk J C Lawrence
- Database vs. Disk Nicolai Hansen
- Database vs. Disk Zach Collins {Siege}
- Database vs. Disk J C Lawrence
- Database vs. Disk Zach Collins {Siege}
- Database vs. Disk J C Lawrence
- Database vs. Disk Kwon Ekstrom
- Database vs. Disk J C Lawrence
- Database vs. Disk John A. Bertoglio
- Database vs. Disk corrine_123@hotmail.com
- Database vs. Disk Kwon J. Ekstrom
- Database vs. Disk J C Lawrence
- Database vs. Disk Peter "Pietro" Rossmann
- Database vs. Disk Marc Bowden
- Database vs. Disk Kwon J. Ekstrom
- Database vs. Disk Sulka Haro
- Thoughts on a simplified multiplayer game. Jason Slaughter
- Thoughts on a simplified multiplayer game. Edward Glowacki
- Thoughts on a simplified multiplayer game. J C Lawrence
- Thoughts on a simplified multiplayer game. Bruce Mitchener
- Thoughts on a simplified multiplayer game. Edward Glowacki
- Thoughts on a simplified multiplayer game. J C Lawrence
- Thoughts on a simplified multiplayer game. Bruce Mitchener
- Thoughts on a simplified multiplayer game. Christopher Allen
- Thoughts on a simplified multiplayer game. ghfdh fcgdfgdfg
- ADMIN: Untoward unsubscriptions J C Lawrence
- Bringing out the barbaric in each of us David Kennerly
- Horizons Valerio Santinelli
- RP, MMORPGs, and their Evolution Talanithus HTML
- RP, MMORPGs, and their Evolution Brian Lindahl
- RP, MMORPGs, and their Evolution Michael Chui
- RP, MMORPGs, and their Evolution Marian Griffith
- RP, MMORPGs, and their Evolution Paul Schwanz
- RP, MMORPGs, and their Evolution J C Lawrence
- RP, MMORPGs, and their Evolution Matt Mihaly
- Account retention (was: D& D vs. MMORPG "complexity") Byron Ellacott
- Object-Oriented Databases John A. Bertoglio
- Object-Oriented Databases Weston Fryatt
- Object-Oriented Databases Travis Nixon
- Object-Oriented Databases Bruce Mitchener
- Object-Oriented Databases John A. Bertoglio
- Object-Oriented Databases Jeff Bachtel
- Object-Oriented Databases Sean Kelly
- TECH: Application-level branch prediction? ceo
- DID vs. MORAG "complexity" Jeff Cole
- DID vs. MORAG "complexity" Dave Rickey
- DID vs. MORAG "complexity" Matt Mihaly
- Objects Ben Chambers
- Scripting languages Jason Murdick
- Scripting languages Brian Hook
- Scripting languages Jason Gauthier
- Scripting languages Sanvean
- Scripting languages Jason Murdick
- Scripting languages Mark 'Kamikaze' Hughes
- Scripting languages Ling Lo
- Scripting languages Jay Carlson
- Scripting languages Mark 'Kamikaze' Hughes
- Scripting languages Lars Duening
- Scripting languages Mark 'Kamikaze' Hughes
- Scripting languages Lars Duening
- Scripting languages Kwon J. Ekstrom
- Scripting languages Lars Duening
- Scripting languages justice@softhome.net
- Scripting languages MIKE MacMartin
- Scripting languages Kwon J. Ekstrom
- Scripting languages Bruce Mitchener
- Scripting languages Kwon J. Ekstrom
- Scripting languages Dr. Cat
- Scripting languages Jay Carlson
- Scripting languages David H. Loeser Jr.
- Scripting languages Shu-yu Guo
- Scripting languages Lars Duening
- Scripting languages David H. Loeser Jr.
- Scripting languages criscal@gmx.de
- Scripting languages eric
- Scripting languages Smith, David {Lynchburg}
- Scripting languages John Buehler
- Scripting languages Mike Shaver
- Scripting languages sanxion sanxion
- Scripting languages Mark 'Kamikaze' Hughes
- Scripting languages Mike Shaver
- Scripting languages sanxion sanxion
- Scripting languages Mark 'Kamikaze' Hughes
- When marketroids attack! Tess Snider
- Moo mailing list issue _DESPARATE FOR HELP! Ms Leigh Canny
- Moo mailing list issue _DESPARATE FOR HELP! David Clifton
- When Player Communities Rebel / Fanbois Gone Rogue vladimir cole
- When Player Communities Rebel / Fanbois Gone Rogue Andrew Barratt {MIS}
- NWN player modules (was: D&D and MMORPGs) Lars Duening
- NWN player modules (was: D&D and MMORPGs) Jonathan Grant
- Simpsons player types Matt Mihaly
- Dealing with cloned NPCs Thomas Sullivan
- Dealing with cloned NPCs Sasha Hart
- Dealing with cloned NPCs Mark 'Kamikaze' Hughes
- Dealing with cloned NPCs Kristen Koster
- Dealing with cloned NPCs Marc Bowden
- Dealing with cloned NPCs Kristen Koster
- Dealing with cloned NPCs Thomas Sullivan
- Dealing with cloned NPCs Owen Matt
- Dealing with cloned NPCs John Buehler
- Dealing with cloned NPCs Owen Matt
- Dealing with cloned NPCs Thomas Sullivan
- Dealing with cloned NPCs Vincent Archer
- The Laws of the Virtual Worlds Tamzen Cannoy