mirror of
https://github.com/ArchipelagoMW/Archipelago.git
synced 2026-03-26 01:43:23 -07:00
Compare commits
7 Commits
NewSoupVi-
...
0.6.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d8576e72eb | ||
|
|
7265468e8d | ||
|
|
d07f36dedd | ||
|
|
364a1b71ec | ||
|
|
daee6d210f | ||
|
|
96be0071e6 | ||
|
|
ff8e1dfb47 |
@@ -413,7 +413,8 @@ class CommonContext:
|
|||||||
await self.server.socket.close()
|
await self.server.socket.close()
|
||||||
if self.server_task is not None:
|
if self.server_task is not None:
|
||||||
await self.server_task
|
await self.server_task
|
||||||
self.ui.update_hints()
|
if self.ui:
|
||||||
|
self.ui.update_hints()
|
||||||
|
|
||||||
async def send_msgs(self, msgs: typing.List[typing.Any]) -> None:
|
async def send_msgs(self, msgs: typing.List[typing.Any]) -> None:
|
||||||
""" `msgs` JSON serializable """
|
""" `msgs` JSON serializable """
|
||||||
|
|||||||
2
Utils.py
2
Utils.py
@@ -47,7 +47,7 @@ class Version(typing.NamedTuple):
|
|||||||
return ".".join(str(item) for item in self)
|
return ".".join(str(item) for item in self)
|
||||||
|
|
||||||
|
|
||||||
__version__ = "0.6.0"
|
__version__ = "0.6.1"
|
||||||
version_tuple = tuplize_version(__version__)
|
version_tuple = tuplize_version(__version__)
|
||||||
|
|
||||||
is_linux = sys.platform.startswith("linux")
|
is_linux = sys.platform.startswith("linux")
|
||||||
|
|||||||
2
kvui.py
2
kvui.py
@@ -296,7 +296,7 @@ class SelectableLabel(RecycleDataViewBehavior, TooltipLabel):
|
|||||||
else:
|
else:
|
||||||
# Not a fan of the following few lines, but they work.
|
# Not a fan of the following few lines, but they work.
|
||||||
temp = MarkupLabel(text=self.text).markup
|
temp = MarkupLabel(text=self.text).markup
|
||||||
text = "".join(part for part in temp if not part.startswith(("[color", "[/color]", "[ref=", "[/ref]")))
|
text = "".join(part for part in temp if not part.startswith("["))
|
||||||
cmdinput = App.get_running_app().textinput
|
cmdinput = App.get_running_app().textinput
|
||||||
if not cmdinput.text:
|
if not cmdinput.text:
|
||||||
input_text = get_input_text_from_response(text, App.get_running_app().last_autofillable_command)
|
input_text = get_input_text_from_response(text, App.get_running_app().last_autofillable_command)
|
||||||
|
|||||||
@@ -88,7 +88,6 @@ processes = weakref.WeakSet()
|
|||||||
|
|
||||||
|
|
||||||
def launch_subprocess(func: Callable, name: str | None = None, args: Tuple[str, ...] = ()) -> None:
|
def launch_subprocess(func: Callable, name: str | None = None, args: Tuple[str, ...] = ()) -> None:
|
||||||
global processes
|
|
||||||
import multiprocessing
|
import multiprocessing
|
||||||
process = multiprocessing.Process(target=func, name=name, args=args)
|
process = multiprocessing.Process(target=func, name=name, args=args)
|
||||||
process.start()
|
process.start()
|
||||||
|
|||||||
@@ -1,3 +1,11 @@
|
|||||||
|
# 2.4.1
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
- Fixed handling of shuffle option for badges/HMs in the case that the player sets those items to nonlocal or uses
|
||||||
|
plando to put an item in one of those locations, or in the case that fill gets itself stuck on these items and has to
|
||||||
|
retry.
|
||||||
|
|
||||||
# 2.4.0
|
# 2.4.0
|
||||||
|
|
||||||
### Features
|
### Features
|
||||||
@@ -14,9 +22,6 @@ _not_ used for logical access (the seed will never require you to catch somethin
|
|||||||
|
|
||||||
- Now excludes the location "Navel Rock Top - Hidden Item Sacred Ash" if your goal is Champion and you didn't randomize
|
- Now excludes the location "Navel Rock Top - Hidden Item Sacred Ash" if your goal is Champion and you didn't randomize
|
||||||
event tickets.
|
event tickets.
|
||||||
- Fixed handling of shuffle option for badges/HMs in the case that the player sets those items to nonlocal or uses
|
|
||||||
plando to put an item in one of those locations, or in the case that fill gets itself stuck on these items and has to
|
|
||||||
retry.
|
|
||||||
|
|
||||||
# 2.3.0
|
# 2.3.0
|
||||||
|
|
||||||
|
|||||||
@@ -2414,6 +2414,7 @@ def door_shuffle(world, multiworld, player, badges, badge_locs):
|
|||||||
loc.place_locked_item(badge)
|
loc.place_locked_item(badge)
|
||||||
|
|
||||||
state = multiworld.state.copy()
|
state = multiworld.state.copy()
|
||||||
|
state.allow_partial_entrances = True
|
||||||
for item, data in item_table.items():
|
for item, data in item_table.items():
|
||||||
if (data.id or item in poke_data.pokemon_data) and data.classification == ItemClassification.progression \
|
if (data.id or item in poke_data.pokemon_data) and data.classification == ItemClassification.progression \
|
||||||
and ("Badge" not in item or world.options.badgesanity):
|
and ("Badge" not in item or world.options.badgesanity):
|
||||||
|
|||||||
@@ -88,6 +88,8 @@ Notes:
|
|||||||
See the [Archipelago Plando Guide](../../../tutorial/Archipelago/plando/en) for more information on Plando and Connection Plando.
|
See the [Archipelago Plando Guide](../../../tutorial/Archipelago/plando/en) for more information on Plando and Connection Plando.
|
||||||
|
|
||||||
## Is there anything else I should know?
|
## Is there anything else I should know?
|
||||||
You can go to [The TUNIC Randomizer Website](https://rando.tunic.run/) for a list of randomizer features as well as some helpful tips.
|
- You can go to [The TUNIC Randomizer Website](https://rando.tunic.run/) for a list of randomizer features as well as some helpful tips.
|
||||||
You can use the Fairy Seeking Spell (ULU RDR) to locate the nearest unchecked location.
|
- You can use the Fairy Seeking Spell (ULU RDR) to locate the nearest unchecked location.
|
||||||
You can use the Entrance Seeking Spell (RDR ULU) to locate the nearest unused entrance.
|
- You can use the Entrance Seeking Spell (RDR ULU) to locate the nearest unused entrance.
|
||||||
|
- Death Link can be toggled in game, and it can be set to receive traps instead of deaths.
|
||||||
|
- Trap Link can be toggled in-game as well, which makes it so other players with Trap Link enabled will share the effects of traps with you, and vice versa. Trap Link functions cross-game, but only with other games that have Trap Link implemented, and only some traps can be shared, depending on the game.
|
||||||
|
|||||||
@@ -617,7 +617,7 @@ if is_easter_time():
|
|||||||
easter_special_option_group = OptionGroup("EASTER SPECIAL", [
|
easter_special_option_group = OptionGroup("EASTER SPECIAL", [
|
||||||
EasterEggHunt,
|
EasterEggHunt,
|
||||||
])
|
])
|
||||||
witness_option_groups.insert(2, easter_special_option_group)
|
witness_option_groups = [easter_special_option_group, *witness_option_groups]
|
||||||
else:
|
else:
|
||||||
silly_options_group = next(group for group in witness_option_groups if group.name == "Silly Options")
|
silly_options_group = next(group for group in witness_option_groups if group.name == "Silly Options")
|
||||||
silly_options_group.options.append(EasterEggHunt)
|
silly_options_group.options.append(EasterEggHunt)
|
||||||
|
|||||||
Reference in New Issue
Block a user