Register forum user name Search FAQ

Gammon Forum

Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the password reset link.

Due to spam on this forum, all posts now need moderator approval.

 Entire forum ➜ SMAUG ➜ SMAUG coding ➜ Yet another idea....

Yet another idea....

It is now over 60 days since the last post. This thread is closed.     Refresh page


Posted by Tseris   (98 posts)  Bio
Date Sun 14 Oct 2007 12:41 PM (UTC)
Message
Saving throws in reverse. Id like to make attributes have alot more impact on the game. Is there a way to do the following:?

- Make your higher DEX lower your opponents hitroll when they are fighting you

- Make your higher INT lower your opponents save_spell when it tries to save against your spell

- Make your higher WIS increase your own save vs. spell


In this way, every melee attack becomes a balance between the attacker's STR and defender's DEX, and every spell cast becomes a fight between the caster's INT and the victim's WIS.
Top

Posted by Conner   USA  (381 posts)  Bio
Date Reply #1 on Sun 14 Oct 2007 08:33 PM (UTC)
Message
Of course there is a way that it can be done, but since it hasn't been done that way before (that I know of), you'd have to come up with the code to do it yourself. For the most part, it should eb fairly easy changes, but make sure you use grep to ensure you haven't missed anything.

-=Conner=-
--
Come test your mettle in the Land of Legends at telnet://tcdbbs.zapto.org:4000
or, for a little family oriented medieval fun, come join us at The Castle's Dungeon BBS at telnet://tcdbbs.zapto.org
or, if you just want information about either, check our web page at http://tcdbbs.zapto.org
Top

Posted by Gadush   (92 posts)  Bio
Date Reply #2 on Sun 14 Oct 2007 09:13 PM (UTC)
Message
Erm, isn't it already that way when you get right down to it?
Your Dex affects both your Armor Class and your Ranged attack, while your Str affects your Melee attack?
It isn't really a Saving Throw in reverse, but don't those attributes (stats) affect those things already?

Top

Posted by Tseris   (98 posts)  Bio
Date Reply #3 on Sun 14 Oct 2007 09:40 PM (UTC)
Message
Yeah when it comes to the Dex vs. Str thing it really is a question of semantics. Whether your dex lowers opponents hitroll or increases the chance they miss by Thac0 really amounts to the same thing. The part im really more interested in is when it comes to spells.

Id like when you cast an offensive spell such as fireball, your int reduces their chance to save. Likewise with a spell such as charm, your Cha reduces their chance to save. Finally I could make Cha important and valuable
Top

Posted by David Haley   USA  (3,881 posts)  Bio
Date Reply #4 on Sun 14 Oct 2007 10:55 PM (UTC)
Message
This should be pretty easy since IIRC the saving throws are implemented as functions. You would need to add a parameter to the saving throw functions that is the character causing the saving throw. That character's stats will add a modifier to the roll.

If that character is NULL, the modifier is 0.
If the character is non-null, you get the appropriate attribute from the character and apply it in whatever way is appropriate to the saving throw.

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
Top

Posted by Tseris   (98 posts)  Bio
Date Reply #5 on Mon 15 Oct 2007 06:05 AM (UTC)
Message
IIRC?
Top

Posted by David Haley   USA  (3,881 posts)  Bio
Date Reply #6 on Mon 15 Oct 2007 06:09 AM (UTC)
Message
if I remember correctly

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
Top

Posted by Tseris   (98 posts)  Bio
Date Reply #7 on Mon 15 Oct 2007 08:20 AM (UTC)
Message
Ahh hehe. Well I was scanning through some things tonight looking for how I might do that, its on the back burner for the moment while I work on the stat gains for level advancement. But Im thinking Im going to have to call up the caster's Int or Cha or whatever for each particular spell that I want this to effect, so that it only applies a +save_spell (bad) to the victim at the time the spell is cast. Otherwise it seems like it would permanently effect the victim's saves.
Top

Posted by David Haley   USA  (3,881 posts)  Bio
Date Reply #8 on Mon 15 Oct 2007 08:55 AM (UTC)
Message
I'm not sure what you mean by it permanently affecting the victim's saving throws. If you call the save function with a NULL "actor" parameter, it does the normal thing. Therefore, whenever you want the new system, you add the actor parameter; otherwise, you leave it as NULL.

Here's a hint: take the old version of the function and add the parameter and do the appropriate stuff. Then recreate the old function prototype, and have it be a wrapper to the new function with a NULL parameter. This way, by default, there will be no 'actor', and you get to decide exactly when to use the actor.

But on the other hand, not having the old function lying around will cause compiler errors everywhere the saving throw functions are called, which might be good because it lets you make individual decisions about each and every one of them.




All this said, I think you are quite correct to focus on one thing at a time... :-)

David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone

http://david.the-haleys.org
Top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


29,910 views.

It is now over 60 days since the last post. This thread is closed.     Refresh page

Go to topic:           Search the forum


[Go to top] top

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.