mirror of
https://github.com/ArchipelagoMW/Archipelago.git
synced 2026-03-28 07:33:24 -07:00
Merge remote-tracking branch 'upstream/main' into instruction_patch_kdl3
This commit is contained in:
@@ -67,6 +67,7 @@ Currently, the following games are supported:
|
||||
* Yoshi's Island
|
||||
* Mario & Luigi: Superstar Saga
|
||||
* Bomb Rush Cyberfunk
|
||||
* Yu-Gi-Oh! Ultimate Masters: World Championship Tournament 2006
|
||||
|
||||
For setup and instructions check out our [tutorials page](https://archipelago.gg/tutorial/).
|
||||
Downloads can be found at [Releases](https://github.com/ArchipelagoMW/Archipelago/releases), including compiled
|
||||
|
||||
@@ -203,6 +203,9 @@
|
||||
# Yoshi's Island
|
||||
/worlds/yoshisisland/ @PinkSwitch
|
||||
|
||||
#Yu-Gi-Oh! Ultimate Masters: World Championship Tournament 2006
|
||||
/worlds/yugioh06/ @rensen
|
||||
|
||||
# Zillion
|
||||
/worlds/zillion/ @beauxq
|
||||
|
||||
|
||||
@@ -194,6 +194,11 @@ Root: HKCR; Subkey: "{#MyAppName}yipatch"; ValueData: "Archi
|
||||
Root: HKCR; Subkey: "{#MyAppName}yipatch\DefaultIcon"; ValueData: "{app}\ArchipelagoSNIClient.exe,0"; ValueType: string; ValueName: "";
|
||||
Root: HKCR; Subkey: "{#MyAppName}yipatch\shell\open\command"; ValueData: """{app}\ArchipelagoSNIClient.exe"" ""%1"""; ValueType: string; ValueName: "";
|
||||
|
||||
Root: HKCR; Subkey: ".apygo06"; ValueData: "{#MyAppName}ygo06patch"; Flags: uninsdeletevalue; ValueType: string; ValueName: "";
|
||||
Root: HKCR; Subkey: "{#MyAppName}ygo06patch"; ValueData: "Archipelago Yu-Gi-Oh 2006 Patch"; Flags: uninsdeletekey; ValueType: string; ValueName: "";
|
||||
Root: HKCR; Subkey: "{#MyAppName}ygo06patch\DefaultIcon"; ValueData: "{app}\ArchipelagoBizHawkClient.exe,0"; ValueType: string; ValueName: "";
|
||||
Root: HKCR; Subkey: "{#MyAppName}ygo06patch\shell\open\command"; ValueData: """{app}\ArchipelagoBizHawkClient.exe"" ""%1"""; ValueType: string; ValueName: "";
|
||||
|
||||
Root: HKCR; Subkey: ".archipelago"; ValueData: "{#MyAppName}multidata"; Flags: uninsdeletevalue; ValueType: string; ValueName: "";
|
||||
Root: HKCR; Subkey: "{#MyAppName}multidata"; ValueData: "Archipelago Server Data"; Flags: uninsdeletekey; ValueType: string; ValueName: "";
|
||||
Root: HKCR; Subkey: "{#MyAppName}multidata\DefaultIcon"; ValueData: "{app}\ArchipelagoServer.exe,0"; ValueType: string; ValueName: "";
|
||||
|
||||
@@ -504,6 +504,10 @@ class World(metaclass=AutoWorldRegister):
|
||||
def get_region(self, region_name: str) -> "Region":
|
||||
return self.multiworld.get_region(region_name, self.player)
|
||||
|
||||
@property
|
||||
def player_name(self) -> str:
|
||||
return self.multiworld.get_player_name(self.player)
|
||||
|
||||
@classmethod
|
||||
def get_data_package_data(cls) -> "GamesPackage":
|
||||
sorted_item_name_groups = {
|
||||
|
||||
@@ -18,7 +18,7 @@ import subprocess
|
||||
import threading
|
||||
import concurrent.futures
|
||||
import bsdiff4
|
||||
from typing import Optional, List
|
||||
from typing import Collection, Optional, List, SupportsIndex
|
||||
|
||||
from BaseClasses import CollectionState, Region, Location, MultiWorld
|
||||
from Utils import local_path, user_path, int16_as_bytes, int32_as_bytes, snes_to_pc, is_frozen, parse_yaml, read_snes_rom
|
||||
@@ -52,7 +52,7 @@ except:
|
||||
enemizer_logger = logging.getLogger("Enemizer")
|
||||
|
||||
|
||||
class LocalRom(object):
|
||||
class LocalRom:
|
||||
|
||||
def __init__(self, file, patch=True, vanillaRom=None, name=None, hash=None):
|
||||
self.name = name
|
||||
@@ -71,13 +71,13 @@ class LocalRom(object):
|
||||
def read_byte(self, address: int) -> int:
|
||||
return self.buffer[address]
|
||||
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytes:
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytearray:
|
||||
return self.buffer[startaddress:startaddress + length]
|
||||
|
||||
def write_byte(self, address: int, value: int):
|
||||
self.buffer[address] = value
|
||||
|
||||
def write_bytes(self, startaddress: int, values):
|
||||
def write_bytes(self, startaddress: int, values: Collection[SupportsIndex]) -> None:
|
||||
self.buffer[startaddress:startaddress + len(values)] = values
|
||||
|
||||
def encrypt_range(self, startaddress: int, length: int, key: bytes):
|
||||
|
||||
@@ -434,7 +434,7 @@ level_music_ids = [
|
||||
0x21,
|
||||
]
|
||||
|
||||
class LocalRom(object):
|
||||
class LocalRom:
|
||||
|
||||
def __init__(self, file, patch=True, vanillaRom=None, name=None, hash=None):
|
||||
self.name = name
|
||||
@@ -457,7 +457,7 @@ class LocalRom(object):
|
||||
def read_byte(self, address: int) -> int:
|
||||
return self.buffer[address]
|
||||
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytes:
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytearray:
|
||||
return self.buffer[startaddress:startaddress + length]
|
||||
|
||||
def write_byte(self, address: int, value: int):
|
||||
|
||||
@@ -217,8 +217,6 @@ class Overcooked2World(World):
|
||||
# Autoworld Hooks
|
||||
|
||||
def generate_early(self):
|
||||
self.player_name = self.multiworld.player_name[self.player]
|
||||
|
||||
# 0.0 to 1.0 where 1.0 is World Record
|
||||
self.star_threshold_scale = self.options.star_threshold_scale / 100.0
|
||||
|
||||
|
||||
@@ -1,3 +1,17 @@
|
||||
# 2.2.0
|
||||
|
||||
### Features
|
||||
|
||||
- When you blacklist species from wild encounters and turn on dexsanity, blacklisted species are not added as locations
|
||||
and won't show up in the wild. Previously they would be forced to show up exactly once.
|
||||
- Added support for some new autotracking events.
|
||||
|
||||
### Fixes
|
||||
|
||||
- The Lilycove Wailmer now logically block you from the east. Actual game behavior is still unchanged for now.
|
||||
- Water encounters in Slateport now correctly require Surf.
|
||||
- Updated the tracker link in the setup guide.
|
||||
|
||||
# 2.1.1
|
||||
|
||||
### Features
|
||||
@@ -12,10 +26,11 @@ _Separately released, branching from 2.0.0. Included procedure patch migration,
|
||||
|
||||
### Fixes
|
||||
|
||||
- Changed "Ho-oh" to "Ho-Oh" in options
|
||||
- Changed "Ho-oh" to "Ho-Oh" in options.
|
||||
- Temporary fix to alleviate problems with sometimes not receiving certain items just after connecting if `remote_items`
|
||||
is `true`.
|
||||
- Temporarily disable a possible location for Marine Cave to spawn, as its causes an overflow
|
||||
- Temporarily disable a possible location for Marine Cave to spawn, as it causes an overflow.
|
||||
- Water encounters in Dewford now correctly require Surf.
|
||||
|
||||
# 2.0.0
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ class LocalRom:
|
||||
def read_byte(self, address: int) -> int:
|
||||
return self.buffer[address]
|
||||
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytes:
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytearray:
|
||||
return self.buffer[startaddress:startaddress + length]
|
||||
|
||||
def write_byte(self, address: int, value: int):
|
||||
|
||||
@@ -3,7 +3,7 @@ import os
|
||||
import Utils
|
||||
from worlds.Files import APDeltaPatch
|
||||
from settings import get_settings
|
||||
from typing import TYPE_CHECKING
|
||||
from typing import TYPE_CHECKING, Collection, SupportsIndex
|
||||
|
||||
from .Options import YoshiColors, BowserDoor, PlayerGoal, MinigameChecks
|
||||
|
||||
@@ -396,7 +396,7 @@ location_table = {
|
||||
0x30510B: [0x14B2, 4]
|
||||
}
|
||||
|
||||
class LocalRom(object):
|
||||
class LocalRom:
|
||||
|
||||
def __init__(self, file: str) -> None:
|
||||
self.name = None
|
||||
@@ -413,13 +413,13 @@ class LocalRom(object):
|
||||
def read_byte(self, address: int) -> int:
|
||||
return self.buffer[address]
|
||||
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytes:
|
||||
def read_bytes(self, startaddress: int, length: int) -> bytearray:
|
||||
return self.buffer[startaddress:startaddress + length]
|
||||
|
||||
def write_byte(self, address: int, value: int) -> None:
|
||||
self.buffer[address] = value
|
||||
|
||||
def write_bytes(self, startaddress: int, values: bytearray) -> None:
|
||||
def write_bytes(self, startaddress: int, values: Collection[SupportsIndex]) -> None:
|
||||
self.buffer[startaddress:startaddress + len(values)] = values
|
||||
|
||||
def write_to_file(self, file: str) -> None:
|
||||
|
||||
Reference in New Issue
Block a user