|
|||||||
This is a discussion on "Subject substitution and verbs" in the Top Mud Sites MUD Coding forum : I'm in the process of enhancing the emotion mechanics of Inferno. In other games, when using a marker for subject substitution, do the mechanics also substitute the first person pronoun and correct the verb? If so, do the mechanics just use more markers to identify the verbs? For example: emote With a big grin, @ turns and walks away. yields: With a big grin, Malifax turns and walks away. Do you use a marker to identify the verb, like: emote With a big grin, @ >turns and >walks away. Which gives you: With a big grin, you turn and ... |
|
You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our MUD community today! If you have any problems with the registration process or your account login, please contact us. If you are a registered member of the old TMS forums, please click here
|
![]() |
|
|
LinkBack | Thread Tools |
|
|
#1 |
|
Member
Join Date: Mar 2006
Posts: 70
![]() |
I'm in the process of enhancing the emotion mechanics of Inferno. In other games, when using a marker for subject substitution, do the mechanics also substitute the first person pronoun and correct the verb? If so, do the mechanics just use more markers to identify the verbs?
For example: emote With a big grin, @ turns and walks away. yields: With a big grin, Malifax turns and walks away. Do you use a marker to identify the verb, like: emote With a big grin, @ >turns and >walks away. Which gives you: With a big grin, you turn and walk away. for the enactor and: With a big grin, Malifax turns and walks away. for everyone else? Or do you just use a name/sDesc? Thanks! -Mal |
|
|
|
|
|
#2 |
|
Legend
Join Date: Apr 2002
Name: Richard
Location: München
Home MUD: God Wars II
Posts: 1,532
![]() ![]() |
I use 'your character' instead of the name. In the past I tried changing it to 'you' and automatically working out the verbs, but it got messy and complicated, and the code often made mistakes.
I don't think I'd want to make the player add extra tags to each verb, either, as that's a lot of additional typing effort for something that only the author of the emote will see, but I suppose you could make it optional. I do still use some substitution though. For example: > emote @man grins at you, throws a stick at you, kicks your dog and wonders what you're going to do about it Your character grins at the crusty old man, throws a stick at him, kicks his dog and wonders what he is going to do about it. |
|
|
|
|
|
#3 | |
|
Posts: n/a
|
Quote:
emote @man glares at you and snarls 'Now you shall die'. And the rarer but still conceivable recursive quotes: emote @man peers at you and ponders, 'Did you really just say "you stink" to the king?' Incidentally, kind of off on a tangent, but in most DIKU style MUDs, most MUD-generated actions (as opposed to emotes) let an act function handle all the name-expanding stuff. So it wouldn't be very hard to set up a pronoun system which would extend beyond single lines. Compare: The guard's slash wounds you. The guard's slash wounds you. To: The guard's slash wounds you. His slash wounds you. The violence function would be sending the same data twice to the action function, but the action function would detect that in the 2nd line, the guard is already the subject. I'm not saying whether such a system would be _better_ or not, just different, and I've thought about coding it in as a configurable option.. though the same trouble with quotes arises there as well |
|
|
|
|
#4 | ||
|
Legend
Join Date: Apr 2002
Name: Richard
Location: München
Home MUD: God Wars II
Posts: 1,532
![]() ![]() |
Quote:
Quote:
emote @man peers at you and ponders, "Did you really just say "you stink" to the king?" While this is two separate quotes: emote @man peers at you and ponders, "Did you really just say to the king?". He scratches his beard and continues, "The king won't be happy if he finds out." And it's going to be difficult for the mud to work out which is which unless you can be sure that the players will follow a specific syntax (such as placing a comma before a new quote). |
||
|
|
|
|
|
#5 |
|
Legend
Join Date: Apr 2002
Name: Richard
Location: München
Home MUD: God Wars II
Posts: 1,532
![]() ![]() |
In regard to "The guard's slash wounds you." vs "His slash wounds you.", you may end up with rather ambigious messages. As a simple example, what happens when a wolf attacks the guard? The word 'his' could refer to either the guard or the wolf, depending on whether the subject is changed during the message or after. If the subject is only changed after a message has been sent then you could end up with something like "A timber wolf bites at his right leg". But if you automatically change the subject during the message you could also end up with something like "A timber wolf lunges at the guard, sinking a timber wolf's fangs into the guard's right leg".
|
|
|
|
|
|
#6 |
|
Senior Member
Join Date: Apr 2002
Location: New England
Posts: 604
![]() |
Regarding combat: Using pronouns would make things really confusing if there was more than 1 attacker and more than 1 attackee. How would everyone know which "him" is doing which damage? Better to leave it a little clunky and avoid the confusion.
As for including communications (talking) within emotes, I prefer those games which provide the reverse: including emotes with communications. That gives the coder more flexibility in coded language development. If your game has coded languages, then bypassing that code by including quotations in emotes would have to be against the rules. It isn't a difficult rule to follow as long as you have the coded ability to include emoting in talking. So: emote waves at @man, saying, "Hello there!" would be replaced with tell man (waving at @man) Hello there! That way, if an onlooker doesn't speak that language, he'll end up seeing something like: Waving at the man, the woman says something. and everyone who does understand the language would see: Waving at the man, the woman says, "Hello there!" Of course all of that is a matter of trust between staff and players; if your playerbase isn't trustworthy to maintain the integrity of the tools provided to them, you're better off not having a detailed emoting system at all and just sticking with canned socials. To answer Mal's question directly: In Armageddon at least, it's left clunky. You write the emote out similarly to how you would use act in Inferno, except with the added benefit of dynamic symbols. So in Inferno, Niclas' player might type: act waves at the group, his eyes sparkling with mirth as he reaches for his gem-studded neuvaldian dagger and says, "Spencer, ladies, gents, everyone else". He is writing in the third person, as if Niclas was someone else. The same would happen in the dynamic emote (or in this case, the dynamic say-emote): say (to @spencer, with a wave at the group, his eyes sparkling with mirth as he reaches for @dagger) Spencer, ladies, gents, everyone else. So if there's a misalen in the crowd and he doesn't speak common, he will see only: To Spencer, with a wave to the group, his eyes sparkling with mirth as he reaches for his gem-studded neuvaldian dagger, Niclas says something in an unknown language. Maybe if the misalen has only 2 ranks of common, he might hear something like: ....Spen--, la----- g----, -ver--n- e-s-." or even random letters replacing the correct ones, until his skill is good enough to understand the whole thing. |
|
|
|
|
|
#7 | |
|
Posts: n/a
|
Quote:
Example. The female guard's punch bruises the female slave! The female guard's kick pelts the female slave! The male guard's slash wounds the female slave! His stab cuts her! He changes his target to the male slave! The male guard's slash devastates the male slave! The male guard changes his target to the female slave! His stab maims her! The slavemaster's whip massacres her! She is DEAD! He takes 5 gold coins from her corpse*. There is no ambiguity here: each time a pronoun is used, it refers to the agent of appropriate gender who most recently had their name expanded to the viewer. Thus in line 4, there is no doubt that "her" is the female slave, not the female guard. The ordering is based on line number and ignores position within the line, so in line 3, the MUD sees that there are two candidates tied for "generic female" role, and so does not use the pronoun. In line 5, the male guard is still unchallenged as generic male, because the male slave's claim to that position won't come into effect until AFTER this line. Hence the word "he". In line 6, both actors' names are fully expanded, because they are tied as most recent. *the final line illustrates a less trivial, more ambitious extension of the idea to objects. Certain specific objects indicate ownership in their shortdescs, eg corpses, Godwars style soulblades, etc. With more work, pronouns could be extended to these as well. Which brings up another point, some mobs would need to be specifically flagged as nonpronoun, for example "the king's guard". Otherwise the following would be ambiguous: The king's guard's slash hits you! His pierce cuts you! In the second line, whose pierce is cutting you -- the king's guard, or the king himself? EDIT: on further reflection, I think for certain objects it'd be worth doing this project even if the larger project were not done. For example, "Erdos stops using his soulblade" looks much better than "Erdos stops using Erdos's soulblade", no matter how you consider it. To someone who can't see Erdos, "Someone stops using Erdos's soulblade" gives away too much info (as would "Someone stops using his soulblade", since invisibility masks gender too. A better line would be "Someone stops using their soulblade") |
|
|
|
|
#8 | |||
|
Legend
Join Date: Apr 2002
Name: Richard
Location: München
Home MUD: God Wars II
Posts: 1,532
![]() ![]() |
Quote:
Your usage of the word 'the' also raises another point. If there's only one guard fighting, then it's fairly obvious who "the male guard" is. But what if there are two or three male guards? You could call them things like "the second guard" and "the third guard", but that would have to be done relative to the viewer (eg perhaps the second guard is invisible) - and that in turn could prove more confusing than cool for the players. Unless the mob is unique, I always refer to them as "a male guard" or whatever - the only exception is your current opponent, who would be referred to as "the male guard"/etc. Quote:
> l erdos You look at Erdos. You see Erdos, blah blah blah. He is wearing: A white cotton shirt on his neck, body, back and arms. A pair of brown leather trousers on his groin and legs. A pair of black leather boots on his feet. His soulblade in his right hand. That reads a bit strangely to me. I honestly think it would read better if it said "Erdos's soulblade in his right hand". "A soulblade" would read even better still, but then the viewer can't see that it's specifically yours, and that might be important from a gameplay perspective. In regard to using the weapon, I refer to every item you're wearing or wielding as 'your'. Thus "You draw your soulblade from across your back with your right hand", "You sheathe your soulblade across your back", "You slash at the air with your soulblade", etc. The only exception to this is body parts, which use 'a' or 'an' (because "You bash at the air with your severed head" makes it look like you're using your own severed head). I even extend this to plurals (eg "You reach down and draw your knives from your boots"). However what you're suggesting becomes particularly nice when you're talking about personalised items which aren't being carried by anyone. For example if someone slices off your arm, it looks a lot nicer to see "Your severed arm falls to the ground" than "Erdos's severed arm falls to the ground". I did actually have this partially working within my mud at one point, but it's currently commented out due to various problems I had with it. I really should go over it again some time and fix it. Quote:
On the other hand, if I've stolen your soulblade and am wielding it, it's fairly reasonable that you would recognise it even if you didn't recognise me |
|||
|
|
|
|
|
#9 | |
|
Posts: n/a
|
Quote:
On the subject of duplicate mobs, it was pretty easy on Aethar to set up an mcombine system so that on look, for example, A stern guard watches the gate. A stern guard watches the gate. A stern guard watches the gate. ...gets changed to A stern guard watches the gate. (3) I'm really surprised Aethar seems to be about the only MUD to do this-- the analogous system for combining objects is almost all-pervasive by now. EDIT: the "second guard" thing reminds me of a subtler problem with MUDs in general, which is that the whole world is keenly impacted by this mysterious force called "room order". It's mostly invisible when you don't know what to look for, but a veteran MUDder can figure out ways to exploit it. In Realms of Despair we did tricks to manipulate room order to make major changes to battles, sometimes borderline outright cheating. Ideally, low level details like the specific order of linked lists should have no tangible in-game effects, but that would require some kind of CPU-intensive randomization stuff to fix... |
|
|
|
|
#10 | |||
|
Legend
Join Date: Apr 2002
Name: Richard
Location: München
Home MUD: God Wars II
Posts: 1,532
![]() ![]() |
Quote:
Quote:
Quote:
Three stern guards watch the gate. Obviously that would require the addition of a plural description for each mob, but I already do that for objects and I think it was worth the effort. I didn't bother doing this for creatures because: 1. I use randomised keywords, so you're unlikely to have two guards with the same name. 2. It's not common to encounter more than one mob at a time. 3. I include distance/direction, so both mobs would need to be standing on the exact same spot. What I've considered in the past as an alternative is to provide some sort of grouping mechanism for mobs, so that I could take my three guards ("a tall muscular guard", "a fat dark-haired guard" and "a thin pock-faced guard") and put them into a container called "Three stern guards" that patrols the city, and spits out its individual guards when they're needed for a fight, grouping them back together afterwards. |
|||
|
|
|
|
|
#11 |
|
New Member
Join Date: Apr 2005
Posts: 6
![]() |
Hello,
In regards to the emote scripting and all. Have you looked at the mobprog functions mpemote and such to see how they pass variables? I know I've also seen different versions of these like the dg scripts for circle. There are already tons of examples for that. In regards to, A stern gate guard is here. (3) I don't know if you are running a diku deriv'd mud but if so, the code you need for that is already there in show_char_to_char. Look at the PLR_COMBINE section of the code where it consolidates objects. All you have to do is add a check for if IS_NPC and then do the same thing as the object code. Just my ideas, Chris |
|
|
|
|
|
#12 |
|
Senior Member
Join Date: Apr 2002
Location: New England
Posts: 604
![]() |
I rather like the way Armageddon does it. Instead of
a burly gate guard is here (3) which is pretty distracting from an RP perspective, from the perspective of someone who wants to be immersed in a "novelesque" atmosphere... A few burly gate guards are here. seems much more fluid to me. Plus there are "drop" descriptions so if you put 20 green widgets on the floor, you'd see: Many green widgets are here. but the player dropping them can make it look, instead, like this: Many green widgets, each covered with dried spattered blood, are stacked up against the west wall. The command if I remember is something like this: drop widget ~, each covered with dried spattered blood, are stacked up against the west wall. If there's only 1 widget left after someone steals the other 19 it'll look stupid but chances are no one's going to steal exactly 19 |
|
|
|
|
|
#13 | |
|
Posts: n/a
|
Hey, interesting idea about having the player indicate the longdesc as they drop the object. In a big powergaming MUD that would lead to lots of abuse, but I can see how that would be pretty awesome in a smaller RP mud.
As far as "RP distraction" goes, I think the same would be said about combining objects, if that weren't already standard. That's an interesting phenomenon in MUDs, the things we are raised around (combined objects but not combined mobs) seem so natural, "how on earth could it ever be different?" And yet if we were raised without them, they'd be absurd or silly. A good example is the "sanctuary" spell on most hacknslash MUDs. Imagine if sanctuary had never been invented, and today in 2006 someone on a huge 1000 player hacknslash MUD posted a suggestion for a spell which reduces all damage by 50%. It would be the laughingstock of the week! Spindiggy: there ARE a few things different between combining mobs and combining objects. On the typical diku-deriv MUD, the object's longdesc is totally static, possibly with the exception of some flags like "(Magic)" which only show up if the player detects them. Mobs, on the other hand, have very dynamic longdescriptions. If one of the gate guards is attacking the player in question, and the other is asleep, you definitely don't want to combine them. And then the real thing which makes mobs different, is the famous "spell effect indicated by line after longdesc", eg, "The guard is shrouded in a holy aura" to indicate sanctuary. One must pluralize this appropriately, to get something like this: Quote:
|
|
|