LoP1.38 Questions/Issues/Anomolies
< Newer Topic
:: Older Topic >
#41 Nov 7, 2009 11:03 am
GroupMembers
Posts196
JoinedNov 25, 2007
1pfiles.tgz created 1022/2009
File last modified 10/16/2009
Flags gag nopdelete~
2pfiles.tgz created 10/29/2009
File last modified 10/16/2009
Flags gag nopdelete~
3pfiles.tgz created 11/03/2009
File last modified 10/16/2009
Flags gag nopdelete~
It's definitely there and pretty much correct. I hadn't logged that char in since 10/16 - was too busy watching the Yankees on the road to the World Series by then to test stuff
I'll make a couple more dummy mortals and test it again.
File last modified 10/16/2009
Flags gag nopdelete~
2pfiles.tgz created 10/29/2009
File last modified 10/16/2009
Flags gag nopdelete~
3pfiles.tgz created 11/03/2009
File last modified 10/16/2009
Flags gag nopdelete~
It's definitely there and pretty much correct. I hadn't logged that char in since 10/16 - was too busy watching the Yankees on the road to the World Series by then to test stuff
I'll make a couple more dummy mortals and test it again.
#42 Nov 8, 2009 11:30 am
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Ah ok found the issue, good find.
The problem is that it stops after the sex part is done and the flags isn't till alot farther down so Id say open up save.c and change the place where the pcflags get saved to right before sex. That should take care of that issue
The problem is that it stops after the sex part is done and the flags isn't till alot farther down so Id say open up save.c and change the place where the pcflags get saved to right before sex. That should take care of that issue
#43 Nov 8, 2009 3:56 pm
GroupMembers
Posts196
JoinedNov 25, 2007
I assume you mean in the function void save_char_obj? or fwrite_char? or fread_char? or everything?
In other words, I'm not a coder so could you be a bit more specific please?
In other words, I'm not a coder so could you be a bit more specific please?
#44 Nov 8, 2009 5:02 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
My bad fwrite_char in save.c look for the part where it saves the pc flags and move it up to above sex.
#45 Nov 10, 2009 9:13 pm
GroupMembers
Posts196
JoinedNov 25, 2007
Ok, did the above. Will let you know in 5 days if it worked.
Question: Is there a reason you gave the building commands mapout and mpedit to level Leader and not to Builders? I can change that with cedit, right?
Question: Is there a reason you gave the building commands mapout and mpedit to level Leader and not to Builders? I can change that with cedit, right?
#46 Nov 10, 2009 10:33 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Not really, just where I put them lol.
Yea you can change them with cedit (don't think I added in any hard coded checks for it).
Cool, it should work fine as long as it's saving the flags before the sex in the pfile. So if they log on and it resaves the flags it will do fine, if they don't relog then it will still have the flags in the old location and it will not keep it from deleting the pfile.
Yea you can change them with cedit (don't think I added in any hard coded checks for it).
Cool, it should work fine as long as it's saving the flags before the sex in the pfile. So if they log on and it resaves the flags it will do fine, if they don't relog then it will still have the flags in the old location and it will not keep it from deleting the pfile.
#47 Nov 11, 2009 10:00 am
GroupMembers
Posts196
JoinedNov 25, 2007
It's a good thing you mentioned that cause I didn't even think to check the pfile after. I just checked it now and apparently I put the flags after sex not before, lol, probably a slip of the cursor. So thanks for helping me catch that or I would have been still crying "It doesn't work!"
#48 Nov 13, 2009 11:07 am
Last edited Nov 13, 2009 11:37 am by Hanaisse
GroupMembers
Posts196
JoinedNov 25, 2007
I'm writing out my own detailed building guide as some things are a little different then what I'm used to.
I'm wondering if Armorclass always defaults to 96, and when would Master and/or Leader be used in mset? (I'm assuming as a member of nation and/or clan?)
What is the field 'defpos' for? I can mset it, but I don't see anything in mstat about it?
I'm wondering if Armorclass always defaults to 96, and when would Master and/or Leader be used in mset? (I'm assuming as a member of nation and/or clan?)
What is the field 'defpos' for? I can mset it, but I don't see anything in mstat about it?
#49 Nov 13, 2009 2:35 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
I'm writing out my own detailed building guide as some things are a little different then what I'm used to.
Cool and yea some things are different.
I'm wondering if Armorclass always defaults to 96, and when would Master and/or Leader be used in mset? (I'm assuming as a member of nation and/or clan?)
Master and Leader aren't set by mset etc... it's shown to let you know if they are following someone etc...
Well the armor class depends on what the armor field is set to, and if they are awake it adds their dexterity / 5.
Looks like it defaults the armor to 0 when a mobile is created. But when it creates the mobile it sets it somewhat based on level? lol I'll have to look at it more sometime.
What is the field 'defpos' for? I can mset it, but I don't see anything in mstat about it?
defpos stands for Default Position and is used when saving the mobile etc... it is the default position the mobile takes when being reset in the area.
#50 Nov 13, 2009 6:22 pm
GroupMembers
Posts196
JoinedNov 25, 2007
Remcon said:
Well the armor class depends on what the armor field is set to, and if they are awake it adds their dexterity / 5.
Looks like it defaults the armor to 0 when a mobile is created. But when it creates the mobile it sets it somewhat based on level? lol I'll have to look at it more sometime.
Ah, ok. I don't like not being able to see the real field lol. You're correct about ac.
int get_ac( CHAR_DATA *ch ) { if( !ch ) return 0; return ( ch->armor + ( is_awake( ch ) ? ( get_curr_dex( ch ) / 5 ) : 0 ) ); }
I played around with mset armor and it resets armorclass to the correct value based on that calculation. Setting armor to 0 though sets armorclass to 2, so really the default armor on mcreate is 94. Which is very interesting considering a newly created player's armor is around 3. Maybe you can tell me where this default is so it can be changed to default to 0.
It also has nothing to do with level from what I've tested.
Remcon said:
defpos stands for Default Position and is used when saving the mobile etc... it is the default position the mobile takes when being reset in the area.
Wow, I kept thinking defensive position lol. That makes more sense. Now, wouldn't pos and defpos typically be set the same?
#51 Nov 13, 2009 8:10 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Well position changes based on all kinds of things and you wouldn't want it using position. And you might want a mobile to start off in a different position and have programs etc... change it later etc...
take a look in db.c create_mobile function for
If the ac is set it will set it to the index ac, if not set it will set it using interpolate.
take a look in db.c create_mobile function for
if( pMobIndex->ac ) mob->armor = pMobIndex->ac; else mob->armor = interpolate( mob->level, 100, -100 );
If the ac is set it will set it to the index ac, if not set it will set it using interpolate.
#52 Nov 16, 2009 12:23 am
Last edited Nov 16, 2009 12:27 am by Hanaisse
GroupMembers
Posts196
JoinedNov 25, 2007
I don't know what interpolate means, but I'll figure it out later.
I've been going through objects that require values (and the help values
I've been going through objects that require values (and the help values
#53 Nov 16, 2009 5:19 am
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
I don't know what interpolate means, but I'll figure it out later.
/* Simple linear interpolation. */ int interpolate( int level, int value_00, int value_32 ) { return value_00 + level * ( value_32 - value_00 ) / 32; }
I've been going through objects that require values (and the help values
Your welcome, I always found it annoying that it didn't give better info on those lol.
A scroll has a "V5 = (Set to 1 if you want it so spells can be scribed onto it)"
A pill has a "V5 = (Set to 1 if you want it so spells can be concocted into it)"
When I was looking at salve I remembered you could 'mix' one but it requires an "empty tin". I suppose an object can be created as type 'container' but wouldn't that suggest that container should have a value to set if you want to mix in it?
Same with staff/carve and wand/imbue.
You dont need a value for these since those two only can have one spell and if there isn't a spell on it they can put one and if one is on it they can't.
Scrolls, pills and potions can have more then one so it needed something to know if more can be put on it or not. Like I could make 2 heal pills. One with v5 set to 1 (players can add more spells to it), and one with v5 set to 0 (means thats all this pill will do and players can't add anything else to it).
You wouldn't create the object as a container. You would go ahead and create it as what you want. Like a pill you could set to type pill, v5 to 1, the rest of the values to 0. Then players can use concoct to put spells on it.
#54 Nov 16, 2009 12:20 pm
Last edited Nov 16, 2009 12:30 pm by Hanaisse
GroupMembers
Posts196
JoinedNov 25, 2007
Remcon said:
You dont need a value for these since those two only can have one spell and if there isn't a spell on it they can put one and if one is on it they can't.
Scrolls, pills and potions can have more then one so it needed something to know if more can be put on it or not. Like I could make 2 heal pills. One with v5 set to 1 (players can add more spells to it), and one with v5 set to 0 (means thats all this pill will do and players can't add anything else to it).
Ok, I get that.
Remcon said:
You wouldn't create the object as a container. You would go ahead and create it as what you want. Like a pill you could set to type pill, v5 to 1, the rest of the values to 0. Then players can use concoct to put spells on it.
Still slightly confused. Let's use an example for MIX.
i.e.;
mix heal You have no tin to use for mixing.
Alright, so, if I created an object called 'small steel tin' is this what I would set as objecttype 'salve'?
Ahhh, nevermind. I looked at do_mix and answered my own question.
(Answer - yes, the 'tin' would be objecttype salve)
#55 Nov 16, 2009 2:01 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Glad you figured it out
#56 Nov 17, 2009 12:08 pm
GroupMembers
Posts196
JoinedNov 25, 2007
Classes
When viewing an existing class they all display;
Has this requirement been removed, (or half-removed) ? It's not part of the class file.
I see in classes.c in do_setclass there's a line;
that's not in the current help file of setclass. Which makes me think you took it out, but it's kinda still there.
If I comment out the following lines in void show_class I can effectively remove it from display, right?
Would there be anything else I'd need to remove so I don't break it? I see references to class_restriction - is that part of the disallowed classes bit?
Honestly, it's not logical to disallow classes to a class so I want to remove all reference to it. Maybe you should clean up the classes.c file?
When viewing an existing class they all display;
Disallowed classes: Allowed classes: Cleric Druid Mage Paladin Ranger Thief Warrior Augurer
Has this requirement been removed, (or half-removed) ? It's not part of the class file.
I see in classes.c in do_setclass there's a line;
send_to_char( "Usage: setclassclasses [ ]\r\n", ch );
that's not in the current help file of setclass. Which makes me think you took it out, but it's kinda still there.
If I comment out the following lines in void show_class I can effectively remove it from display, right?
pager_printf( ch, "&wDisallowed classes:\r\n&W%s\r\n", ext_class_string( &Class->class_restriction ) ); ct = 0; send_to_pager( "&wAllowed classes:&W\r\n", ch );
Would there be anything else I'd need to remove so I don't break it? I see references to class_restriction - is that part of the disallowed classes bit?
Honestly, it's not logical to disallow classes to a class so I want to remove all reference to it. Maybe you should clean up the classes.c file?
#57 Nov 17, 2009 12:11 pm
GroupMembers
Posts196
JoinedNov 25, 2007
Oh, and what is classpercent? Is it still used? If so, how can I see what it's set at for existing classes?
#58 Nov 17, 2009 2:32 pm
Last edited Nov 17, 2009 2:32 pm by Remcon
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Classes
When viewing an existing class they all display;
Disallowed classes: Allowed classes: Cleric Druid Mage Paladin Ranger Thief Warrior Augurer
Has this requirement been removed, (or half-removed) ? It's not part of the class file.
I see in classes.c in do_setclass there's a line;
send_to_char( "Usage: setclassclasses [ ]\r\n", ch );
that's not in the current help file of setclass. Which makes me think you took it out, but it's kinda still there.
If I comment out the following lines in void show_class I can effectively remove it from display, right?
pager_printf( ch, "&wDisallowed classes:\r\n&W%s\r\n", ext_class_string( &Class->class_restriction ) ); ct = 0; send_to_pager( "&wAllowed classes:&W\r\n", ch );
Would there be anything else I'd need to remove so I don't break it? I see references to class_restriction - is that part of the disallowed classes bit?
Honestly, it's not logical to disallow classes to a class so I want to remove all reference to it. Maybe you should clean up the classes.c file?
Actually it makes perfect sense and no it hasn't been removed. It was something that got added and the reason nothing is in the class files is because all classes are allowed with others by default. It is there for ones who might want to use the easy multi-classing code so they could allow/not allow certain classes to be used together.
But to answer your question yes that would take it out of the display. And nope not taking it out as stated above
Oh, and what is classpercent? Is it still used? If so, how can I see what it's set at for existing classes?
This is another part of the multi-classing code. If a player has 2 or more classes it will allow them to be able to set where the exp they gain goes in percentage. Like if I had 2 classes and did each class at 50% all exp will be split between the classes etc...
#59 Nov 17, 2009 7:23 pm
GroupMembers
Posts196
JoinedNov 25, 2007
Oh man, I forgot about the new multi-classing! Doh!
Ok, then forget everything I just said, now it does make sense, and this -
"Usage: setclass classes []"
would be used to set the 'allowed' classes that each class can multi with (if I decide to use multiclass)?
(Although, that usage line isn't in the help file)
Ok, then forget everything I just said, now it does make sense, and this -
"Usage: setclass
would be used to set the 'allowed' classes that each class can multi with (if I decide to use multiclass)?
(Although, that usage line isn't in the help file)
#60 Nov 17, 2009 8:43 pm
GroupAdministrators
Posts1,946
JoinedJul 26, 2005
Forgot to put it in the help file lol.
Actually it will be used to toggle the classes on or off if i remember right. They default to on (allowed) so doing it would turn them off (no longer allow).
Actually it will be used to toggle the classes on or off if i remember right. They default to on (allowed) so doing it would turn them off (no longer allow).