From 03ff2147db19d9816bd99d88288eced27bba62b4 Mon Sep 17 00:00:00 2001 From: tool4ever Date: Sat, 5 Jul 2025 08:54:14 +0000 Subject: [PATCH] True-Name Nemesis crashes on "$" Player name (#7944) --- .../java/forge/game/staticability/StaticAbilityContinuous.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java b/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java index 677991afc45..5e11e003501 100644 --- a/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java +++ b/forge-game/src/main/java/forge/game/staticability/StaticAbilityContinuous.java @@ -43,6 +43,7 @@ import forge.util.TextUtil; import org.apache.commons.lang3.StringUtils; import java.util.*; +import java.util.regex.Matcher; import java.util.stream.Collectors; /** @@ -273,7 +274,7 @@ public final class StaticAbilityContinuous { if (hostCard.hasChosenPlayer()) { Player cp = hostCard.getChosenPlayer(); input = input.replaceAll("ChosenPlayerUID", String.valueOf(cp.getId())); - input = input.replaceAll("ChosenPlayerName", cp.getName()); + input = input.replaceAll("ChosenPlayerName", Matcher.quoteReplacement(cp.getName())); } if (hostCard.hasNamedCard()) { final String chosenName = hostCard.getNamedCard().replace(",", ";");