Subject: Graphical Moo

From: [email-masked]
Date: Wed, 28 Apr 1993 06:54:21 -0700

Hi all !

Since two weeks or so I am building a graphical moo.
I have taken tinytalk (telnet substitution) and added
some graphical features. Now, if a player logs in, an
additional graphic output window is opened.
Conversation is still done via the xterm, but graphics
are displayed in this window.
My client also recognizes mouse clicks and cursor key presses.

The moo server stays unmodified. The graphic commands are
sent to the client like ordinary text. The speciality is,
that each graphic command starts with a ~ (tilde).
The client recognizes these commands and does the stuff
in the graphics window.

The client understands the following commands:

- Set translation table. This command allows different mud
  systems to choose the set of bitmaps they require.
  In game, the moo only uses the numerical or one character
  IDs of the bitmaps.
  At the moment, the bitmaps have to be available on the 
  client's machine.

- Upload new (background) map. This map may be larger than
  the window. The map is sent as a array of strings. The
  client then translates these strings into bitmap IDs
  using the translation table.

- Add a new (foreground) object (e.g. a player/monster/...)
  These objects all have numerical IDs, so that the moo
  is not bounded to 256 (127 ?) characters.

- Delete an object.

- Change position of an object.

- Set focus to an object. If the focused object is moved,
  then the window scrolls to keep the object in the middle
  of the window.

Cursor keys are translated into the proper direction, e.g. 
" n" + CR.
Mouse clicks are sent as a tripple:  {x_pos,y_pos,key_number}.
Where x and y position is the position in squares on the
map.

This system works quite nice now. At least on our local
net at home (4 workstations).

But one of the reasons why I write this message is the
following:

I am also just thinking about a suitable (fantasy) combat 
system. I want to build the combat system like the one
used in the Gurps roleplaying system.

There should be a time between one attack and the next one.
Just like a time the player needs to re-ready the weapon.

Also, I want to prevent players from running around
and hitting the enemy occasionaly. Like engage, attack
and run away. That would end in rather a dance than a fight,
and the player with the faster connection to the moo would 
probably win.

What about the following procedure:

Whenever a player attacks, it takes at least one second
until the player re-readies his weapon. During this second
the player can neither attack nor move. If readying the
weapon takes longer, the player may move, but not attack.

Also, moving and attacking exhausts the player (fatique).
If the player is exhausted, he is unable to move for some
seconds (until he refreshes a bit).

I think it is not good to change the fork command and allow
intervals of less than one second for delaying the actions (?)

Any comments / ideas ?

Greetings,    Stefan

--
[email-masked]

---

From: Paul Herbert Reavis <[email-masked]>
Date: Wed, 28 Apr 1993 14:32:30 -0700

> used in the Gurps roleplaying system.

I've been working on this as well.

> intervals of less than one second for delaying the actions (?)

Gurps is one of the best RPG systems I've seen, and seems optimal for
computer implementation... however, as with any combat system, real time
is almost always going to be much longer than game time. The gurps system
is based on rounds of one second, but it takes more than that just to
specify what you want to do in that second! A Gurps combat session might
last a half hour or more in real time, but the combat being modeled might
only have taken 30 seconds or so of game time. For the most part, MOO game
time = real time, so you can't just use the game system straight; you have
to sacrifice some of the realism and make each combat round just long
enough to specify an action. 
	AD&D combat is actually a little better suited, timewise, since a
combat round in AD&D is considered to consist of a flurry of blows and
parries, rather than the single round -> single attack concept of gurps. I
believe an AD&D combat round is six seconds or so. However, I loathe AD&D
combat so much due to its unsophistication and complete lack of anything
resembling real parry rules, so gurps it is. You could (as most game
systems do) separate the combat sequence completely from normal game
sequences, throwing the combatants into a special state independent of
everyone else. Then you could have a prompt-based combat system, which
makes the outcome more dependent on the character's level and abilities
than on the player's typing speed. (within reason, you need to jog them
somewhat to keep things going at a reasonable pace) But then you still
have to deal with the time problem, because regardless of all the
abstractions you throw in its path, the rest of the MOO's time is still
plodding on.
	Easiest and most practical: an "attack" by one character on
another initiates a single combat sequence in which the antagonist
attacks, and the protagonist is prompted for parrying/defense if
applicable. This will be a COMPLETE nightmare, however, with large pitched
battles. Maybe you could rule that all combat can only take place on every
nth second or something, for synchronization and sanity's sake.
	Blah, blah, blah. Sorry so disorganized, just some of my thoughts
on the subject. I don't claim to be very experienced with MOO combat, so
may be making some pretty damn obvious statements. Disclaim off.

paul.

{{{{{{{{{{}}}}}}}}}}}}}}}}}}{{{{{{{{{{{{{{{{{{}}}}}}}}}}}}}}}}}{{{{{{{{{{{}}}}}

		Hey, there, look at you! Don't you look like Siouxie Sioux. How
	long it take to get that way? What a terrible waste of energy. You wear
	black clothes you're so poetic; sad to say you're just pathetic. Get 
	into the grooves, get out of my way. I came here to drink, not to get 
	laid. Why don't you just go on home? If you want to moan you'll have to
	moan alone.

						-the dead milkmen