Various Games: Improve Custom Death Link Option Description (#4171)

Co-authored-by: Exempt-Medic <60412657+Exempt-Medic@users.noreply.github.com>
Co-authored-by: Scipio Wright <scipiowright@gmail.com>
Co-authored-by: LiquidCat64 <74896918+LiquidCat64@users.noreply.github.com>
This commit is contained in:
SunCat
2025-07-15 23:01:53 +03:00
committed by GitHub
parent 749c2435ed
commit 9e748332dc
7 changed files with 19 additions and 35 deletions

View File

@@ -207,11 +207,7 @@ class EnemyScaling(DefaultOnToggle):
class BlasphemousDeathLink(DeathLink): class BlasphemousDeathLink(DeathLink):
""" __doc__ = DeathLink.__doc__ + "\n\n Note that Guilt Fragments will not appear when killed by death link."
When you die, everyone dies. The reverse is also true.
Note that Guilt Fragments will not appear when killed by Death Link.
"""
@dataclass @dataclass

View File

@@ -175,11 +175,7 @@ class DamageMultiplier(Range):
class BRCDeathLink(DeathLink): class BRCDeathLink(DeathLink):
""" __doc__ = DeathLink.__doc__ + "\n\n This can be changed later in the options menu inside the Archipelago phone app."
When you die, everyone dies. The reverse is also true.
This can be changed later in the options menu inside the Archipelago phone app.
"""
@dataclass @dataclass

View File

@@ -1,6 +1,6 @@
from dataclasses import dataclass from dataclasses import dataclass
from Options import (OptionGroup, Choice, DefaultOnToggle, ItemsAccessibility, PerGameCommonOptions, Range, Toggle, from Options import (OptionGroup, Choice, DefaultOnToggle, ItemsAccessibility, PerGameCommonOptions, Range, Toggle,
StartInventoryPool) StartInventoryPool, DeathLink)
class CharacterStages(Choice): class CharacterStages(Choice):
@@ -507,12 +507,11 @@ class WindowColorA(Range):
default = 8 default = 8
class DeathLink(Choice): class CV64DeathLink(Choice):
""" __doc__ = (DeathLink.__doc__ + "\n\n Explosive: Makes received death links kill you via the Magical Nitro " +
When you die, everyone dies. Of course the reverse is true too. "explosion instead of the normal death animation.")
Explosive: Makes received DeathLinks kill you via the Magical Nitro explosion instead of the normal death animation.
""" display_name = "Death Link"
display_name = "DeathLink"
option_off = 0 option_off = 0
alias_no = 0 alias_no = 0
alias_true = 1 alias_true = 1
@@ -575,7 +574,7 @@ class CV64Options(PerGameCommonOptions):
map_lighting: MapLighting map_lighting: MapLighting
fall_guard: FallGuard fall_guard: FallGuard
cinematic_experience: CinematicExperience cinematic_experience: CinematicExperience
death_link: DeathLink death_link: CV64DeathLink
cv64_option_groups = [ cv64_option_groups = [
@@ -584,7 +583,7 @@ cv64_option_groups = [
RenonFightCondition, VincentFightCondition, BadEndingCondition, IncreaseItemLimit, NerfHealingItems, RenonFightCondition, VincentFightCondition, BadEndingCondition, IncreaseItemLimit, NerfHealingItems,
LoadingZoneHeals, InvisibleItems, DropPreviousSubWeapon, PermanentPowerUps, IceTrapPercentage, LoadingZoneHeals, InvisibleItems, DropPreviousSubWeapon, PermanentPowerUps, IceTrapPercentage,
IceTrapAppearance, DisableTimeRestrictions, SkipGondolas, SkipWaterwayBlocks, Countdown, BigToss, PantherDash, IceTrapAppearance, DisableTimeRestrictions, SkipGondolas, SkipWaterwayBlocks, Countdown, BigToss, PantherDash,
IncreaseShimmySpeed, FallGuard, DeathLink IncreaseShimmySpeed, FallGuard, CV64DeathLink
]), ]),
OptionGroup("cosmetics", [ OptionGroup("cosmetics", [
WindowColorR, WindowColorG, WindowColorB, WindowColorA, BackgroundMusic, MapLighting, CinematicExperience WindowColorR, WindowColorG, WindowColorB, WindowColorA, BackgroundMusic, MapLighting, CinematicExperience

View File

@@ -16,7 +16,7 @@ from .text import cv64_string_to_bytearray, cv64_text_truncate, cv64_text_wrap
from .aesthetics import renon_item_dialogue, get_item_text_color from .aesthetics import renon_item_dialogue, get_item_text_color
from .locations import get_location_info from .locations import get_location_info
from .options import CharacterStages, VincentFightCondition, RenonFightCondition, PostBehemothBoss, RoomOfClocksBoss, \ from .options import CharacterStages, VincentFightCondition, RenonFightCondition, PostBehemothBoss, RoomOfClocksBoss, \
BadEndingCondition, DeathLink, DraculasCondition, InvisibleItems, Countdown, PantherDash BadEndingCondition, CV64DeathLink, DraculasCondition, InvisibleItems, Countdown, PantherDash
from settings import get_settings from settings import get_settings
if TYPE_CHECKING: if TYPE_CHECKING:
@@ -356,7 +356,7 @@ class CV64PatchExtensions(APPatchExtension):
rom_data.write_int32s(0xBFE190, patches.subweapon_surface_checker) rom_data.write_int32s(0xBFE190, patches.subweapon_surface_checker)
# Make received DeathLinks blow you to smithereens instead of kill you normally. # Make received DeathLinks blow you to smithereens instead of kill you normally.
if options["death_link"] == DeathLink.option_explosive: if options["death_link"] == CV64DeathLink.option_explosive:
rom_data.write_int32s(0xBFC0D0, patches.deathlink_nitro_edition) rom_data.write_int32s(0xBFC0D0, patches.deathlink_nitro_edition)
rom_data.write_int32(0x27A70, 0x10000008) # B [forward 0x08] rom_data.write_int32(0x27A70, 0x10000008) # B [forward 0x08]
rom_data.write_int32(0x27AA0, 0x0C0FFA78) # JAL 0x803FE9E0 rom_data.write_int32(0x27AA0, 0x0C0FFA78) # JAL 0x803FE9E0
@@ -365,7 +365,7 @@ class CV64PatchExtensions(APPatchExtension):
rom_data.write_int32(0x32DBC, 0x00000000) rom_data.write_int32(0x32DBC, 0x00000000)
# Set the DeathLink ROM flag if it's on at all. # Set the DeathLink ROM flag if it's on at all.
if options["death_link"] != DeathLink.option_off: if options["death_link"] != CV64DeathLink.option_off:
rom_data.write_byte(0xBFBFDE, 0x01) rom_data.write_byte(0xBFBFDE, 0x01)
# DeathLink counter decrementer code # DeathLink counter decrementer code

View File

@@ -57,13 +57,8 @@ class ExtraLogic(DefaultOnToggle):
class Hylics2DeathLink(DeathLink): class Hylics2DeathLink(DeathLink):
""" __doc__ = (DeathLink.__doc__ + "\n\n Note that this also includes death by using the PERISH gesture." +
When you die, everyone dies. The reverse is also true. "\n\n Can be toggled via in-game console command \"/deathlink\".")
Note that this also includes death by using the PERISH gesture.
Can be toggled via in-game console command "/deathlink".
"""
@dataclass @dataclass

View File

@@ -287,13 +287,13 @@ class BadStartingWeapons(Toggle):
class DonaldDeathLink(Toggle): class DonaldDeathLink(Toggle):
""" """
If Donald is KO'ed, so is Sora. If Death Link is toggled on in your client, this will send a death to everyone. If Donald is KO'ed, so is Sora. If Death Link is toggled on in your client, this will send a death to everyone who enabled death link.
""" """
display_name = "Donald Death Link" display_name = "Donald Death Link"
class GoofyDeathLink(Toggle): class GoofyDeathLink(Toggle):
""" """
If Goofy is KO'ed, so is Sora. If Death Link is toggled on in your client, this will send a death to everyone. If Goofy is KO'ed, so is Sora. If Death Link is toggled on in your client, this will send a death to everyone who enabled death link.
""" """
display_name = "Goofy Death Link" display_name = "Goofy Death Link"

View File

@@ -121,10 +121,8 @@ class ShopPrice(Choice):
class NoitaDeathLink(DeathLink): class NoitaDeathLink(DeathLink):
""" __doc__ = (DeathLink.__doc__ + "\n\n You can disable this or set it to give yourself a trap effect when " +
When you die, everyone dies. Of course, the reverse is true too. "another player dies in the in-game mod options.")
You can disable this in the in-game mod options.
"""
@dataclass @dataclass