Login
User Name:

Password:



Register

Forgot your password?
Changes list / Addchange
Author: Khonsu
Submitted by: Khonsu
6Dragons mp3 sound pack
Author: Vladaar
Submitted by: Vladaar
AFKMud 2.2.3
Author: AFKMud Team
Submitted by: Samson
SWFOTEFUSS 1.5
Author: Various
Submitted by: Samson
SWRFUSS 1.4
Author: Various
Submitted by: Samson
Users Online
Google

Members: 0
Guests: 25
Stats
Files
Topics
Posts
Members
Newest Member
488
3,788
19,631
595
Khonsu

Today's Birthdays
There are no member birthdays today.
» SmaugMuds » Codebases » LoP Codebase » LOP Suggestion Thread
Forum Rules | Mark all | Recent Posts

LOP Suggestion Thread
< Newer Topic :: Older Topic >

Pages:<< prev 1 next >>
Post is unread #1 Sep 29, 2009 4:18 pm   Last edited Sep 29, 2009 4:25 pm by Sanus Compleo
Go to the top of the page
Go to the bottom of the page

Sanus Compleo
Magician
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.

Post is unread #2 Sep 29, 2009 7:48 pm   
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,914
JoinedJul 26, 2005

 
Good find
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 :)

Post is unread #3 Sep 30, 2009 10:28 am   
Go to the top of the page
Go to the bottom of the page

Hanaisse
Magician
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.

Post is unread #4 Sep 30, 2009 2:16 pm   
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,914
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.

Pages:<< prev 1 next >>