View Single Post
Old 12-24-2003, 12:40 AM   #4
visko
Member
 
Join Date: May 2002
Posts: 98
visko is on a distinguished road
Send a message via ICQ to visko Send a message via AIM to visko
Kind of a quick-and-dirty approach (and incidentally one that lends itself to room-based MUDs) is to have a range value on all objects (settable on objects of greater than range 0 or 1), and then the number corresponds to the number of rooms distant a player can hit something.

long_hit() can use the same value to call a recursive room-check function radiating out from the player every time he tries to hit something. If my shortbow doesn't have the range of that guys' arquebus, well, I guess I can't hit him.

One of the tricky questions is: does movement in terms of room-to-room movement have wait_states during combat? I've seen this problem circumvented on groundzero; because the map is tiny, all MOBs and players are automatically looking for targets to shoot; movement and a few extra commands are the only things the player has/needs constant control of. It's a solution, possibly not a viable one for a MUD in excess of a thousand or so MOBs.

You were talking about realism in terms of objects a player could take cover behind and the like; when I put guns into a MUD one of the other developers created a skill that allowed a player to take cover behind any furniture in the room; the condition of the furniture would decrease as it absorped the bullets, and eventually it would disintegrate and leave the player vulnerable again.

Anyway, some ideas. Ranged combat is pretty fun to explore, even in the boring "walk into a room and type 'k <victim>'"; it simply adds a new dimension of complexity, which I, for one, relish.

-Visko
visko is offline   Reply With Quote