PF Analysis puts a community score, a profile and a progression lookup on every person who joins your party, and lets you rate them once the duty is over. It runs your Party Finder too.
Three tabs. My Profile is where a character's standing lives, and where the people you just finished a duty with wait to be rated. Click through them.
Only people you actually finished a duty with in the last 24 hours, and only once each.
Scores show on people you are actually grouped with. They are deliberately not shown while browsing the Party Finder.
Every one of these is off with a single click, and the plugin keeps working without them.
One click, submitted immediately. No star scale and no confirm step: after one duty with a stranger you know whether you would play with them again and little else.
Drawn in HTML using the plugin's own palette rather than captured, so it stays in step with the window instead of ageing into a stale screenshot. The job squares stand in for the game's own job icons, which cannot be redistributed here. Names and figures are examples.
A reputation system is only as good as its resistance to being gamed. Most of the design effort here went into that rather than into the voting.
A thumb up or down, one click, submitted the moment you press it. Scores are a signed tally rather than a percentage, because three unanimous friends and thirty unanimous strangers both read 100% and those are not the same standing.
A friend or Free Company member's vote counts half. Voting on the same person again counts a tenth, and the two stack, so a friend's repeat vote lands at a twentieth. The weight is always computed on the server from its own ledger; the client never sends one.
Every party member gets a card: job, level, world, their standing, and how the votes split. FFLogs, Tomestone and the Lodestone are one button each, and you can search any character by name and world.
Voting is open on somebody for 24 hours after you finish a duty with them, once. The gate lives in the service, not the screen, so no new window can forget it. A lookup can show you anyone's score while being able to rate nobody.
Every character is stored as a keyed hash of name and world under a server-held pepper, so the database holds no character names at all. Search still works because your client sends the name and the server hashes it to compare.
Everyone in the party with their job, their score, and what the listing is recruiting for, including somebody else's listing you joined across worlds. Report, kick and blacklist sit in a menu on each row, and blacklisting drives the game's own list.
The recruitment half of the plugin, which is where it started.
Save any number of recruitment setups and post one in a click: duty, objective, comment, role slots, completion, item level, loot rules, languages and password. There is a button beside the game's own Recruit Members.
Per-slot role or individual job selection using the same categories as the in-game window, or let the game auto-adjust roles the way "Seek Job Distributions" does.
Re-posts your listing on a timer with a live countdown, at any interval from 1 to 55 minutes, optionally stopping on its own after a set number of hours.
Every preset exports to a single-line code you can paste into Discord, and Import takes one back in from your clipboard.
Install XIVLauncher and enable Dalamud.
Open Dalamud settings with /xlsettings, go to Experimental
→ Custom Plugin Repositories, and add this URL:
Open the plugin installer with /xlplugins, search for
PF Analysis, and install it.
Type /pfa in game to open the window.
| Command | Effect |
|---|---|
/pfa | Toggle the PF Analysis window |
/pfa apply <name> | Post a preset by name; put this in a hotbar macro |
/pfa list | List your presets and the duty each one is set to |
/pfa refresh | Re-post your current listing immediately |
/pfanalysis, /pfp and /pfpresets are aliases, so every
old macro still works. apply matches case-insensitively and accepts a partial
name; if it is ambiguous it says so rather than guessing.
Two separate things, and you can switch off either one.
A vote is a direction and a keyed hash of the target's name and world. The pepper is held on the server and never shipped in the plugin, so the database cannot be read back into a list of characters. The record of who you met is a separate file on your own disk, not part of the plugin's config, so it can be pointed at and deleted on its own.
A locally generated install id and the plugin version, and only if you leave full usage reporting on, how many presets you have made and applied and which duties you applied them for. No character name, account id, world, party or preset contents ever leaves your machine, and the server discards IP addresses.