Koron
Sorcerer

Group: Members
Posts: 384
Joined: Jun 7, 2008
|
#16 id:36905 Posted Oct 29, 2009, 2:13 am
|
The first solution we implemented to reduce combat spam (and we've since moved onto better things) was to add two variables multi_hit, num_hits and total_damage. When it called one_hit, it did it something to the tune of if ((dam_swing = one_hit(ch, vict, blah blah blah)) > 0) {dam_total += dam_swing; num_hits++;}. The damage func was then called with those variables, which in turn called the dam message stuff. We had to do a fair share of code acrobatics to make sure everything worked as intended.
That seemed the simplest solution, but it definitely wasn't the best one. We've since revamped combat (more than once, actually) to include more complicated mechanics. In the process we also removed multi hits. It makes things much simpler to work with and is far easier (for me, at least) to understand at a glance.
The take-away from this is what David's getting at: stock combat systems are complicated and thus easy to mess up.
As far as the OP goes, I would say that it's silly to have a huge list of skills that all do the same thing, especially if they all belong to the same class. There are some good suggestions in this thread for minor variation. Those are excellent starting points. Go from there.
|
|
|
sam.j.brown
Apprentice

Group: Members
Posts: 15
Joined: Oct 7, 2009
|
#17 id:36907 Posted Oct 29, 2009, 2:22 am
|
Actually i had not thought about this, it would make sense to roll damage for each successful attack and sum up the results (adding this to todo list), thus keeping closer to what smaug did originally, however i do not think it really makes much of a difference as everyone gets to play by the same rules, and apart from a few minor tweaks here and there, players have not really noticed the difference at all. BTW i did not write the code, it was given to me from the original author to use, also the author has made the snippet public domain, so anyone can use it.
|
|
|
Tonitrus
Conjurer

Group: Members
Posts: 163
Joined: Jul 11, 2009
|
#18 id:36909 Posted Oct 29, 2009, 4:18 am
|
On the subject of Smaug combat spam reduction, I had had an idea on how to handle it the last time I was messing with Smaug. I never got around to writing it, so (like many of my ideas) it's probably either a really great idea or a really dumb one, I'm not much for middle ground.
Anyway, the idea was to add static variables to damage(), last_victim and last_attacker. I think I'd probably need about 5 (10) other static variables, for the damage (and type) of up to 5 attacks. Then I planned to add an extra damage at the end of each multi_hit and melee_hit where it would pass some magic number and a bunch of nulls. I think that's how it was going to work, I forget. Anyway, the gist is that as long at the attacker and the defender were the same, damage() would just keep track of the numbers, when they differed, it would display all the damage messages at once on one line.
The trouble with this is that you'd have to basically tell damage to "flush" and just display what it has without waiting around anymore. I wouldn't think that'd be a terribly big deal, but it would involve some busy-work in going through the skills/spells.
|
|
......................... [00:01:15] KaVir: That's why I'm always careful to empty my inventory before picking up players.
|
|
Runter
Wizard


Group: Members
Posts: 1,851
Joined: Jun 1, 2006
|
#19 id:36912 Posted Oct 29, 2009, 6:14 am
|
Antron said:okay, this is more of a kvetch than an actual question, but is there any difference between bash, blitz, cuff, headbutt, elbow, jab, kick, knee, leap, lunge, punch, punt, pummel, roundhouse, shoulder, spinkick, spurn, strike, swat, swipe, uppercut, and vault?
do we really need 22 ways to strike someone who you are already swinging your sword at five times per second?
No. Personally I have a distaste for games that use multiple skills that do the same thing. As I do for games where a bunch of spells named different things do the same thing.
|
......................... CoralMud project
For once you have tasted flight Ruby you will walk the earth with your eyes turned skywards,
for there you have been and there you will long to return. --
Leonardo Da Vinci Yukihiro Matsumoto
Last edited Oct 29, 2009, 6:16 am by Runter
|
|
KaVir
Wizard


Group: Members
Posts: 1,638
Joined: Jun 19, 2006
|
#20 id:36915 Posted Oct 29, 2009, 6:52 am
|
Runter said:Personally I have a distaste for games that use multiple skills that do the same thing. As I do for games where a bunch of spells named different things do the same thing.
But how strictly do you define "the same thing"? For example, how would you feel about the following:
* Firebolt and icebolt: These do the same thing, except one inflicts heat damage and the other cold damage.
* Fireball and Flamestrike: These do the same thing, except one takes longer to cast and the other has a shorter range.
* Icestorm and Iceblast: These do the same thing, except one does it on everyone within range while the other only effects your target.
* Heal and Harm: These do the same thing on living and undead creatures respectively, reversed if cast on the other type (eg Harm heals undead).
* Sonicblast and Sonicwave: These do the same thing, except one requires a gesture and the other requires speech.
* Shadowbolt and Shadowstream: These do the same thing, but require different gestures to cast.
* Stoneskin and Sanctuary: These do the same thing, but the former only works against physical damage, while the latter only works against evil creatures.
* Soulblade and Spiritblade: These do the same thing when used on their own, but each are tied to separate skill trees which provide different options and enhancements.
|
......................... KaVir at God Wars II: godwars2.org 3000 Roomless world. Manual combat. Endless possibilities.
|
|
Igabod
Wizard


Group: Members
Posts: 1,084
Joined: Jul 23, 2008
|
#21 id:36916 Posted Oct 29, 2009, 7:12 am
|
the only ones I would count in the category runter mentioned would be shadowbolt/shadowstream if the damage and effects are the same. The different gestures are simply cosmetic. And sonicblast/sonicwave for the same reasons. The rest are only similar.
|
|
......................... Every man has his follies, and often they are the most interesting thing he has got - Josh Billings
Two things are infinite: the universe and human stupidity; and I'm not sure about the universe. - Albert Einstein
I have a love interest in every one of my films... a gun. - Arnold Schwarzenegger
Recession is when a neighbor loses his job. Depression is when you lose yours. - Ronald Reagan
I like long walks, especially when they are taken by people who annoy me. - Fred Allen
|
|
Runter
Wizard


Group: Members
Posts: 1,851
Joined: Jun 1, 2006
|
#22 id:36917 Posted Oct 29, 2009, 7:14 am
|
I'm mostly referring to muds where they invent 100 spells and 90% of them random names with spell damage based on the level you train them. If they're not tactically different I see no purpose other than to claim to have more content than you really do.
|
......................... CoralMud project
For once you have tasted flight Ruby you will walk the earth with your eyes turned skywards,
for there you have been and there you will long to return. --
Leonardo Da Vinci Yukihiro Matsumoto
|
|
KaVir
Wizard


Group: Members
Posts: 1,638
Joined: Jun 19, 2006
|
#23 id:36923 Posted Oct 29, 2009, 7:48 am
|
Igabod said:the only ones I would count in the category runter mentioned would be shadowbolt/shadowstream if the damage and effects are the same. The different gestures are simply cosmetic.
I actually have two spells that work like that. One requires you to snap your fingers and then point, the other requires you to point and than snap. Other than that, the spells are indeed identical, and there is no advantage in using one rather than the other.
However if you have both, that means you can snap, point, snap, point, snap, point, and each gesture (after the first) will cast a spell. By having both spells, you're able to attack your opponent with every gesture instead of every second gesture (one spell every 3 seconds instead of every 5).
Both spells are the same, but there is still a clear advantage in having both.
Igabod said:And sonicblast/sonicwave for the same reasons.
But in order to cast sonicblast you'd need to have a hand free, and someone could break your fingers or chop off your arm to prevent you casting it. On the other hand, a silence spell or broken jaw would prevent you from casting sonicwave. If you had both spells, it would be much harder for people to block your magical abilities - and if an opponent captured you, they would need to both tie you up and gag you in order to neutralise you.
Depending on the specifics of the magic system, you might even be able to cast both spells in parallel (one using speech, the other using gestures).
|
......................... KaVir at God Wars II: godwars2.org 3000 Roomless world. Manual combat. Endless possibilities.
Last edited Oct 29, 2009, 7:49 am by KaVir
|
|
Igabod
Wizard


Group: Members
Posts: 1,084
Joined: Jul 23, 2008
|
#24 id:36924 Posted Oct 29, 2009, 7:55 am
|
ok well I kinda forgot how in-depth your mud goes, but in most diku based muds you don't have those options. I only mention diku based muds cause that's where the majority of my experience lies.
|
|
......................... Every man has his follies, and often they are the most interesting thing he has got - Josh Billings
Two things are infinite: the universe and human stupidity; and I'm not sure about the universe. - Albert Einstein
I have a love interest in every one of my films... a gun. - Arnold Schwarzenegger
Recession is when a neighbor loses his job. Depression is when you lose yours. - Ronald Reagan
I like long walks, especially when they are taken by people who annoy me. - Fred Allen
|
|
KaVir
Wizard


Group: Members
Posts: 1,638
Joined: Jun 19, 2006
|
#25 id:36925 Posted Oct 29, 2009, 8:17 am
|
Lost limbs and broken bones aren't that uncommon on Diku derivatives though.
But my general point is that I think it's always a good idea to look at the big picture, rather than judging the skills and spells in isolation. I've had this argument with my players on a number of occasions in regard to balance, too (some players tend to directly compare their individual powers with those of other classes, without considering other factors).
|
......................... KaVir at God Wars II: godwars2.org 3000 Roomless world. Manual combat. Endless possibilities.
|
|
Koron
Sorcerer

Group: Members
Posts: 384
Joined: Jun 7, 2008
|
#26 id:36937 Posted Oct 29, 2009, 1:41 pm
|
KaVir said:But how strictly do you define "the same thing"? . . . * Firebolt and icebolt: These do the same thing, except one inflicts heat damage and the other cold damage.
If the mud in question has fully functional damage realms and resists/vulns, the two no longer do the same thing.
Quote:* Fireball and Flamestrike: These do the same thing, except one takes longer to cast and the other has a shorter range.
Again, this is a good distinction if the mud has a clear division between ranges. If your mud's only concept of range is "in the same room vnum," they're effectively identical.
Quote:Icestorm and Iceblast . . . Heal and Harm . . . Sonicblast and Sonicwave . . . etc.
You've provided the differences for these and the above responses hold true here too. Whether they are "different" is a factor of the individual mud's mechanics. Most dikurivatives I've seen don't have code in place for these sorts of distinctions to be important. In that context, they're identical and thus redundant.
|
|
|
Antron
Apprentice


Group: Members
Posts: 14
Joined: Aug 28, 2009
|
#27 id:36942 Posted Oct 29, 2009, 3:34 pm
|
Well, there's been some great things about combat output compression, but back to the main point, the 22 skills I mentioned.
In stock SMAUG, they all have the exact same help file:
Code (text): 1
2
3
4
5
6
7
8 | <SKILL>
Syntax: <skill>
<skill> is a skill which can only be used once a fight has started, and
can only be used against your primary opponent. If it successfully
lands, it inflicts damage on your opponent. |
I agree that hey MIGHT all have different uses, causing blindness, knockdown affects, spell disruption to name a few. But in stock SMAUG, do they?
I'm with Runter that I very much dislike thing added just to bulk up the list. Also I see a lot of MUDs that advertise "25 playable races! 60 classes! level cap of 250!" ... The best MUD I have ever played was one called Untamed Lands which had one race, no classes, and no levels.
|
......................... For a more cogent example of what I am talking about, see planes09.wikia.com
|
|
David Haley
Wizard


Group: Members
Posts: 6,913
Joined: Jun 30, 2007
|
#28 id:36943 Posted Oct 29, 2009, 3:56 pm
|
I already gave a reason that's actually rather plausible for why many would exist: if you want progression of power of the skills as you gain levels, but can't parametrize skill damage the way you want (or, you simply don't know how), you could make them separate and have different damage formulas for each. In other words, the reason for having many might be merely technical, and they weren't bothered enough by it to address the underlying technical problem.
That said, some of the skills do have special effects, for example 'bash' as was already mentioned.
|
|
|
KaVir
Wizard


Group: Members
Posts: 1,638
Joined: Jun 19, 2006
|
#29 id:36950 Posted Oct 29, 2009, 7:02 pm
|
Koron said:KaVir said:But how strictly do you define "the same thing"? . . . * Firebolt and icebolt: These do the same thing, except one inflicts heat damage and the other cold damage.
If the mud in question has fully functional damage realms and resists/vulns, the two no longer do the same thing.
That depends entirely on how strictly you define "the same thing", and is the reason why I asked the question in the first place.
Koron said:Quote:* Fireball and Flamestrike: These do the same thing, except one takes longer to cast and the other has a shorter range.
Again, this is a good distinction if the mud has a clear division between ranges. If your mud's only concept of range is "in the same room vnum," they're effectively identical.
If the only concept of range is "in the same room" then clearly you have no concept of a "shorter range". My example only makes sense in the context of a mud which differentiates between ranges.
Koron said:Quote:Icestorm and Iceblast . . . Heal and Harm . . . Sonicblast and Sonicwave . . . etc.
You've provided the differences for these and the above responses hold true here too. Whether they are "different" is a factor of the individual mud's mechanics. Most dikurivatives I've seen don't have code in place for these sorts of distinctions to be important. In that context, they're identical and thus redundant.
You appear to have completely missed the point. The examples I gave represent scenarios where two spells do "the same thing" without being identical. The fact that most stock muds don't support such features really isn't the point. What I was trying to do was see where Runter drew the line.
|
......................... KaVir at God Wars II: godwars2.org 3000 Roomless world. Manual combat. Endless possibilities.
|
|
Koron
Sorcerer

Group: Members
Posts: 384
Joined: Jun 7, 2008
|
#30 id:36953 Posted Oct 29, 2009, 8:15 pm
|
I don't think it was I who missed the point. If you'll allow me my cognitive dissonance, your analogy wasn't entirely relevant. You've created a scenerio in which the various skills authentically do have situational uses, whereas the OP provided a list of skills that are in no way requisits of one another and all end with the same result (close range melee damage with a miss percentage that, in my experience, is consistent from one to the other with largely no lasting effect beyond the initial ouch!). Only a single one of them has any real purpose in learning, and that is the one that does the most damage. In this case, most of them all do the same thing. This is especially true if they each belong to your generic warrior class, as stock muds love to do so much.
The skills you listed are different enough from one another that they are all interesting, and they form a diverse pool from which you can derive a combat strategy. In a mud without those kinds of implementations, you have no reason to do anything other than bot the punch skill (or what have you).
|
|
|