Skill/CS planner

This is an informational script very similar to BCC's profile snapshot, but with some critical differences.

All the information is stored locally, rather than online. The layout is a little different, and customizable to your liking.

It shows familiars, trophies, tattoos, and skills.

The skills come with a nice little Queue so that you can drag and drop them into place and sort them based on priority.

At the time of this writing the script is essentially finished, though I'm open to ideas.

Just copy and paste the following into mafia's gCLI and voila!
Code:
svn checkout http://almighty-saplings-ash.googlecode.com/svn/trunk/planner

Or, for you old-school kids who don't trust the newfangled svn, you can simply navigate your way to the above url and download the files, just remember to put relay_planner.ash in your /relay folder, and place planner.txt into /data, and enjoy!
 
Last edited:

icon315

Member
Here are some things i noticed

1).
Your script version checking is making a mistake, it says the current version is 1
To fix this just make this
Code:
int plannerVersion=1.1;
to
Code:
string plannerVersion="1.1";

2)
also change
Code:
void getskills(){
 print("Collecting skill information");
 remove opts["SKILL"];
 string b=visit_url("showplayer.php?who="+my_id());
 if b=substring(b,b.index_of("class=\"pskill\">"),b.index_of("Clan: <b>"));
 matcher am;
 piece this;
 int v;
 foreach sub,sort in allInfo["SKILL"]{
  this=allInfo["SKILL",sub,sort];
  v=0;
  if (b.index_of(">"+this.name+" (P)")>0) v=1;
  if (b.index_of(">"+this.name+" (<")>0) v=2;
  if (b.index_of(">"+this.name+"</a> (P)")>0) v=1;
  if (b.index_of(">"+this.name+"</a> (<")>0) v=2;
  if ((v<2)&&(opts["SKILL",sub,sort].r==3))v=3;
  this.r=v;
  opts["SKILL",sub,sort]=this;
 }
}
to
Code:
void getskills(){
 print("Collecting skill information");
 remove opts["SKILL"];
 string b=visit_url("showplayer.php?who="+my_id());
 if (contains_text ("class=\"pskill\">", b)) 
 {
 b=substring(b,b.index_of("class=\"pskill\">"),b.index_of("Clan: <b>"));
 matcher am;
 piece this;
 int v;
 foreach sub,sort in allInfo["SKILL"]{
  this=allInfo["SKILL",sub,sort];
  v=0;
  if (b.index_of(">"+this.name+" (P)")>0) v=1;
  if (b.index_of(">"+this.name+" (<")>0) v=2;
  if (b.index_of(">"+this.name+"</a> (P)")>0) v=1;
  if (b.index_of(">"+this.name+"</a> (<")>0) v=2;
  if ((v<2)&&(opts["SKILL",sub,sort].r==3))v=3;
  this.r=v;
  opts["SKILL",sub,sort]=this;
 }
 }
 else
 print("No Skills");
}
That way it checks if you even have permanent skills.....or you could check http://127.0.0.1:60080/charsheet.php
3)
Your Script should check the inventory for familiar Hatchlings

4)
Your wiki linking doesn't seem to work....for the tattoos....Boozetefarian is spelled Boozetafarian
Nice Script By the way
 
Last edited:

heeheehee

Developer
Staff member
Alternatively, you could change the version variable's datatype to a float -- the error's arising because 1.1 isn't an int. What exactly are the JS/CSS issues that you're encountering?

BGcolors for permed skills aren't very useful, since the images themselves have a white BG. Perhaps a div overlay, but meh, too much work, IMO. Also, you'll probably run into errors if the player doesn't have a clan. Just a heads up.
 
Last edited:
BGcolors for permed skills aren't very useful, since the images themselves have a white BG. Perhaps a div overlay, but meh, too much work, IMO.

Thanks for pointing out everything guys! I'm in the process of fixing up all the current discrepancies... save this one.
I don't understand, the bgcolors for the permed skills work fine for me and are a great visual tool.
 
They all have the same image, no name and the image URLs are all of the form http://kol.coldfront.net/thekolwiki/index.php/0C, http://kol.coldfront.net/thekolwiki/index.php/1 and so on.

As far as I know, the only thing that might cause this is lack of skill names in the planner_username.txt file.

I am unable to reproduce this even wiping all my files and starting fresh with the zip file posted here (why doesn't this site allow .rar?)

Try reloading data (bottom of the page) and seeing if that helps...

EDIT: (thanks to clanmate Sentrion)

Make sure planner.txt is in the Data folder of mafia. If this is the problem though, then all parts of the script should fail (not just skills). Let me know either way.
 
Last edited:

AlbinoRhino

Active member
I'm having the same problem. My softcore character has 111 ascensions and yet it reports he has 0 skills. planner_username.txt contains no info on skills but planner.txt does. Same issues with the links and images reported above. The rest of it appears to be working as intended. Also the queues on the right are half outside of the frame and when I move the scrollbar to the right, everything on the page moves except the queues, which remain half inside and half outside the frame.
 
I'm having the same problem. My softcore character has 111 ascensions and yet it reports he has 0 skills. planner_username.txt contains no info on skills but planner.txt does. Same issues with the links and images reported above. The rest of it appears to be working as intended. Also the queues on the right are half outside of the frame and when I move the scrollbar to the right, everything on the page moves except the queues, which remain half inside and half outside the frame.
EDIT: I know what the problem with the skills is and am currently working to remedy it.

As for the frame size not working, that is what I was referring to when I said I still had some CSS issues to clear up. My intention is for you to not ever have to scroll to the right, under any circumstances... unless you have a laughably narrow window, I suppose. For now, you'll just have to deal with the queue being half outside the window (shouldn't be a real problem unless you queue more skills than you can see without scrolling down [try scroll wheel on the mouse in that circumstance?]) or you can edit the script yourself... search for "queuediv" and change the width percent to something smaller.
 

fronobulax

Developer
Staff member
(why doesn't this site allow .rar?)
Because people like me who run mafia on a Windows box don't want to clutter it up any more than necessary by installing 7Zip or something similar. The native support for zip files has certainly made me less interested in content that uses a different archive and compression format. Of course that was a rhetorical question...

Somewhat related, I actually would prefer two plain text files with instructions about where to put them rather than a smart package that knows what directories they belong in. I have no idea why I feel that way. Must be the Luddite coming out.

I see that you have some ideas so I won't try and elaborate on my report, but I will add that there are no SKILL entries in the relavent planner_user.txt files.

Tangentially, mafia seems to have an implicit naming convention along the lines of user_tag.txt as in the prefs, mood and session files. Any particular reason why you chose to reverse it? Since I am running three characters out of the same directory I am pretty used to sorting by filename if I want to clean things up.
 

Fluxxdog

Active member
Because people like me who run mafia on a Windows box don't want to clutter it up any more than necessary by installing 7Zip or something similar.
<looks at quote, look at his copy of 7-zip, Firefox, OpenOffice, Skype, Trillian, Notepad++, iTunes> ... So what you're saying is I shouldn't get Diablo 3 since I already have Solitaire? Heh, this is coming from a guy who had crashes BECAUSE Explorer tried to open a zip file ^^
 

fronobulax

Developer
Staff member
Because people like me who run mafia on a Windows box don't want to clutter it up any more than necessary

<looks at quote, look at his copy of 7-zip, Firefox, OpenOffice, Skype, Trillian, Notepad++, iTunes> ... So what you're saying is I shouldn't get Diablo 3 since I already have Solitaire? Heh, this is coming from a guy who had crashes BECAUSE Explorer tried to open a zip file ^^

*snickers at examples of what must clearly be necessary clutter except maybe iTunes*
 
Because people like me who run mafia on a Windows box don't want to clutter it up any more than necessary by installing 7Zip or something similar.
This has got to be the worst line of reasoning I've ever heard. I think you might be the first person EVER that prefers Windows' native handling of zip over ANY OTHER archiving utility available. WinRar is better, period. (See also: Windows' native handling of ... EVERYTHING ELSE)

I see that you have some ideas so I won't try and elaborate on my report, but I will add that there are no SKILL entries in the relavent planner_user.txt files.
This should be fixed with the most recent version, try again and let me know.

Tangentially, mafia seems to have an implicit naming convention along the lines of user_tag.txt as in the prefs, mood and session files. Any particular reason why you chose to reverse it? Since I am running three characters out of the same directory I am pretty used to sorting by filename if I want to clean things up.
Convention? That would require me to be aware of said convention (which I guess I might have been and simply ignored), and it makes far more sense to me for the data files to be ordered by the script that generated them rather than the user.

edit to add:
Code:
readme.txt

The files in folder X go in folder X.
 
Last edited:

StDoodle

Minion
First, can we please leave the OS-wars to elsewhere everyone? I already have to ignore enough of that on other sites as it is. ;)

Also, while I would prefer the mafia convention for naming data files IF we could specify sub-directories to the map loading & saving functions, since we can't, I agree that it makes more sense for them to end up with the same prefix for each script.
 

Theraze

Active member
That does appear to be the 'standard' for user scripts... AdventureAdvisor_Theraze.txt, custd_Theraze_commands, custd_Theraze_custom, custd_Theraze_settings, custd_Theraze_values, OCD_Theraze_Data, and vars_Theraze. Of the 4 scripts in data folder that store based on user name, all 4 are scriptprefix_UserName.
 

StDoodle

Minion
Well to be fair, Theraze, using half data files by me as your examples isn't exactly independent verification. ;)
 
Last edited:

Theraze

Active member
Just saying that there's 4 scripts currently storing stuff in my data folder currently and all of them are doing script_name. While the other folders generally do name_specifics instead, the data folder doesn't have anything official with a character name.

If we want to make Veracity give an aggrieved huff, we could point to zlib using it as authoritative. :D
 
Top