LOP Suggestion Thread
< Newer Topic
:: Older Topic >
Pages:<< prev 1 next >>
#1 Sep 29, 2009 4:18 pm
Last edited Sep 29, 2009 4:25 pm by Sanus Compleo
GroupMembers
Posts153
JoinedMar 25, 2008
It seems that whenever I have a question, or find a bug about LOP it turns into this whole huge suggestion thread before too long, so now I'm putting up a thread dedicated to suggestions about LOP, if that's alright with Remcon, of course. (If it's not, may he delete this thread, and burn down my house, etc. etc.)
I'd also like to start us off with some ideas I'm implementing in my own LOP mud.
Dynamic Armor Classes, I kind of hate it when I see "Your blow bounces off of [x]'s armor" when they have a high dex, and likely no armor, and should've just gotten out of the way. So I'm making things like int armordodge, and int armorarmor etc, which build up to show overall armor class, though whichever one is dominant, will have a different message, and different affect (Blows being absorbed by armor damage the armor, and blows being dodged entirely have no affect)
AC and HR are currently wacky as hell. With 100 hr, it takes an armor class of 400 before they're not getting hit by me at all.
Damage Reduction was something I've been thinking about, and having to overcome damage reduction before being able to do any damage at all with what you've got. (Dragon with reduction to piercing, or w/e, say, 50 points, if you do less than 50 points of damage, no damage at all, if you do more, you do a little bit of damage.)
Critical Hits, by all means sound really really really fun.
Changing the five saves (Which I've never really seen used in a mud) to the ol' fashioned DnD Will/Fortitude/Reflex saves, though, could add more for flavor "Roll a Sanity Save" always sounded fun to me
BUG NOTICE: Apparently setting a skill to increase both hr/dr only increases one...? What, and why?
Setting a skill to incrase AC by... oh, say 3, from 25, sends your AC to 32...?
Also, apparently if you have multiple affects that have a duration like... L/5, it will add them.
Example Skill:
Hum, Nonmagical, accumulative(Which doesn't accumulate, by the by), Group
Mana 5, beats 6, target Ignore
Affect 1 hitroll by L/8 for L/5
Affect 2 damroll by L/8 for L/5
Affect 3 armor by 3 for L/5
Starting hr/dr/ac: 64, 64, 25
Ending hr/dr/ac: 64, 88, 32
Duration: 60 rounds.
I'd also like to start us off with some ideas I'm implementing in my own LOP mud.
Dynamic Armor Classes, I kind of hate it when I see "Your blow bounces off of [x]'s armor" when they have a high dex, and likely no armor, and should've just gotten out of the way. So I'm making things like int armordodge, and int armorarmor etc, which build up to show overall armor class, though whichever one is dominant, will have a different message, and different affect (Blows being absorbed by armor damage the armor, and blows being dodged entirely have no affect)
AC and HR are currently wacky as hell. With 100 hr, it takes an armor class of 400 before they're not getting hit by me at all.
Damage Reduction was something I've been thinking about, and having to overcome damage reduction before being able to do any damage at all with what you've got. (Dragon with reduction to piercing, or w/e, say, 50 points, if you do less than 50 points of damage, no damage at all, if you do more, you do a little bit of damage.)
Critical Hits, by all means sound really really really fun.
Changing the five saves (Which I've never really seen used in a mud) to the ol' fashioned DnD Will/Fortitude/Reflex saves, though, could add more for flavor "Roll a Sanity Save" always sounded fun to me
BUG NOTICE: Apparently setting a skill to increase both hr/dr only increases one...? What, and why?
Setting a skill to incrase AC by... oh, say 3, from 25, sends your AC to 32...?
Also, apparently if you have multiple affects that have a duration like... L/5, it will add them.
Example Skill:
Hum, Nonmagical, accumulative(Which doesn't accumulate, by the by), Group
Mana 5, beats 6, target Ignore
Affect 1 hitroll by L/8 for L/5
Affect 2 damroll by L/8 for L/5
Affect 3 armor by 3 for L/5
Starting hr/dr/ac: 64, 64, 25
Ending hr/dr/ac: 64, 88, 32
Duration: 60 rounds.
#2 Sep 29, 2009 7:48 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Good find
open handler.c and find
change that to
It is just one of those things that never got updated lol. This seems to fix all the problems you had with the bug.
As for the ideas hmm i don't know lol. I might look into a few of them.
As for this thread it is fine
open handler.c and find
/* * Add or enhance an affect. * Limitations put in place by Thoric, they may be high... but at least they're there */ void affect_join( CHAR_DATA *ch, AFFECT_DATA *paf ) { AFFECT_DATA *paf_old; for( paf_old = ch->first_affect; paf_old; paf_old = paf_old->next ) { if( paf_old->type == paf->type ) { paf->duration = UMIN( 1000000, paf->duration + paf_old->duration ); if( paf->modifier ) paf->modifier = UMIN( 5000, paf->modifier + paf_old->modifier ); else paf->modifier = paf_old->modifier; affect_remove( ch, paf_old ); break; } } affect_to_char( ch, paf ); }
change that to
/* * Add or enhance an affect. * Limitations put in place by Thoric, they may be high... but at least they're there */ void affect_join( CHAR_DATA *ch, AFFECT_DATA *paf ) { AFFECT_DATA *paf_old; for( paf_old = ch->first_affect; paf_old; paf_old = paf_old->next ) { if( paf_old->type != paf->type ) /* Check same type */ continue; if( ( paf_old->location % REVERSE_APPLY ) != ( paf->location % REVERSE_APPLY ) ) /* Check same location */ continue; if( !xSAME_BITS( paf_old->bitvector, paf->bitvector ) ) /* Check bitvectors */ continue; if( ( paf->location % REVERSE_APPLY ) == APPLY_EXT_AFFECT && paf->modifier != paf_old->modifier ) /* Check for same modifier */ continue; paf->duration = URANGE( paf_old->duration, ( paf->duration + paf_old->duration ), 1000000 ); /* Don't increase APPLY_EXT_AFFECT modifier */ if( ( paf->location % REVERSE_APPLY ) != APPLY_EXT_AFFECT ) { if( paf->modifier ) paf->modifier = URANGE( paf->modifier, ( paf->modifier + paf_old->modifier ), 50000 ); else paf->modifier = paf_old->modifier; } affect_remove( ch, paf_old ); break; } affect_to_char( ch, paf ); }
It is just one of those things that never got updated lol. This seems to fix all the problems you had with the bug.
As for the ideas hmm i don't know lol. I might look into a few of them.
As for this thread it is fine
#3 Sep 30, 2009 10:28 am
GroupMembers
Posts196
JoinedNov 25, 2007
Only thing I've noticed so far is with the trivia code. I typed 'trivia start' and nothing happened. Since there are no questions loaded I think it should actually tell you "There are currently no trivia questions available" or something. Minor issue, but I can be picky like that lol.
#4 Sep 30, 2009 2:16 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Cool hope you enjoy the code
And although it seems you are doing so already (which is good)...feel free to suggest changes and report bugs.
As for the trivia I don't seem to have the same problem when I test it out.
And although it seems you are doing so already (which is good)...feel free to suggest changes and report bugs.
As for the trivia I don't seem to have the same problem when I test it out.
Pages:<< prev 1 next >>