On Mon, 15 Jan 2001 11:00:10 -0800, Brandon Bennett wrote:
>Here are some ideas for the update on Sammys Ascii Playerfiles:
>
> * Move the load_char() save_char() to pfdb.c or pfiles.c
> This way you don't have to poke though all of db.c just to
> add a varible to your pfiles
I think this is a good idea. It would also make handpatching much
more straightforward.
Does anyone have any objections to this?
> * Give each player it's own directory
> This may be overkill but we can add player objects and player
> aliases to the same directory. To delete a play would be as
> simple as system(rmdir) (I know there is a better way so don't
> whine about that)
I think some time in the future I'll move aliases back into the pfiles
as they were in 2.0b. That would save a lot of inodes and make
maintenence a little eaiser.
If it's easier player deletion you want, that is already take care of
in the next release. You can have it now if you replace your
remove_player() function in db.c with this one:
void remove_player(int pfilepos)
{
char file_name[128];
if(!*player_table[pfilepos].name)
return;
unlink(file_name); /* remove pfile */
if((get_filename(player_table[pfilepos].name, file_name,
CRASH_FILE)))
unlink(file_name); /* remove rent file */
if((get_filename(player_table[pfilepos].name, file_name,
ALIAS_FILE)))
unlink(file_name); /* remove alias file */
destroy_mail(player_table[pfilepos].id); /* remove player's mail */
/* this will remove cool stuff in the future */
/*if((get_filename(player_table[pfilepos].name, file_name,
ETEXT_FILE)))
unlink(file_name);*/ /* remove alias file */
/* Unlink any other player-owned files here if you have them */
sprintf(buf, "PCLEAN: %s Lev: %d Last: %s",
player_table[pfilepos].name, player_table[pfilepos].level,
asctime(localtime(&player_table[pfilepos].last)));
log(buf);
player_table[pfilepos].name[0] = '\0';
save_player_index();
}
> Also You can add wizfiles for immortal specific varibles that
> need to be saved. Or a olc pref's file in the same directory
> The olc pref file could contain zone permissions.
I'm not sure I understand why you would want to move data out of the
pfiles and into seperate files. If you have immortal-only data, you
don't need to put it in mortal pfiles. As an example of this,
currently save_char() and load_char() assume all immortals have 100%
in all skills, -1 thirst/hunger/drunk, and 25's in the basic six
attributes. If you have immortal-only data, you can apply the same
principle in reverse.
> * Redo player structs
> If you are going to do it right totaly redo the player structs in
> structs.h. Even without ascii pfiles this could get a good reworkin.
>
> I belive there was a snippit on redoing the structs in structs.h
I'll probably leave that part up to Jeremy and George. While I agree
that this should be done, they may have a better idea of how it
should be reorganized.
What I will do, though, is to go through my code and make sure I've
used the GET_* macros as much as possible. That way the structures
can be changed all you want without having to modify any of the ascii
pfile code.
> * Add a modifed XAP objects to the patch
> Yet again overkill? Probally. I have done this before you remove all
> the if (!xap) shit and just do the normal xap saving scheme. Also remove
> all the toggle and conversion fuctions. This cleans up XAP objects quite
> well indeed.
I've only briefly looked at xapobjs a long time ago when I was
considering trying to release my version of ascii object files. I
seem to remember deciding that I liked his version better. Ditto for
ascii board files. I've never actually used either, though. I think
if circle is going in the direction of ascii data files, then we might
as well go whole hog.
>As far as documentation just keep it stupid because their is a large group
>now
>using or wanting to use the ascii pfile patch. What do you expect, It's
>trendy :P.
I'm going for a mixture of simple and detailed in the future. The
quick-start guides will be as short and simple as I can make them,
while the real documentaion will be a very large user's guide I'm
working on. I'll provide an outline sometime soon.
>And good work so far with all your patches sam.
Thanks for the suggestions,
Sam
--
+---------------------------------------------------------------+
| FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
| Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
+---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/03/01 PST