diff --git a/Dalamud/Game/Text/SeStringHandling/Payloads/PartyFinderPayload.cs b/Dalamud/Game/Text/SeStringHandling/Payloads/PartyFinderPayload.cs
index 8a9124504..0931ab03f 100644
--- a/Dalamud/Game/Text/SeStringHandling/Payloads/PartyFinderPayload.cs
+++ b/Dalamud/Game/Text/SeStringHandling/Payloads/PartyFinderPayload.cs
@@ -75,6 +75,12 @@ namespace Dalamud.Game.Text.SeStringHandling.Payloads
///
public override PayloadType Type => PayloadType.PartyFinder;
+ ///
+ public override string ToString()
+ {
+ return $"{this.Type} - ListingId: {this.ListingId}, PartyFinderLinkType: {this.LinkType}";
+ }
+
///
protected override void DecodeImpl(BinaryReader reader, long endOfStream)
{
diff --git a/Dalamud/Game/Text/SeStringHandling/SeStringBuilder.cs b/Dalamud/Game/Text/SeStringHandling/SeStringBuilder.cs
index b32741005..36bb10a2d 100644
--- a/Dalamud/Game/Text/SeStringHandling/SeStringBuilder.cs
+++ b/Dalamud/Game/Text/SeStringHandling/SeStringBuilder.cs
@@ -186,6 +186,20 @@ public class SeStringBuilder
/// The current builder.
public SeStringBuilder AddStatusLink(uint statusId) => this.Add(new StatusPayload(statusId));
+ ///
+ /// Add a link to the party finder search conditions to the builder.
+ ///
+ /// The current builder.
+ public SeStringBuilder AddPartyFinderSearchConditionsLink() => this.Add(new PartyFinderPayload());
+
+ ///
+ /// Add a party finder listing link to the builder.
+ ///
+ /// The listing ID of the party finder listing.
+ /// Whether the listing is limited to the recruiting world.
+ /// The current builder.
+ public SeStringBuilder AddPartyFinderLink(uint id, bool isCrossWorld = false) => this.Add(new PartyFinderPayload(id, isCrossWorld ? PartyFinderPayload.PartyFinderLinkType.NotSpecified : PartyFinderPayload.PartyFinderLinkType.LimitedToHomeWorld));
+
///
/// Add a payload to the builder.
///