Skip to content

Core: Remove Universally Unique ID Requirements (Per-Game Data Packages) #1933

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 55 commits into from
Jun 1, 2024
Merged
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
c02dad2
Re-implementation of per_game_datapackage PR.
Nov 3, 2023
cb4fa7f
Goodness tracker code is complicated
Nov 5, 2023
7aff89f
Move decorator out of class to "fix" issues on 3.8/3.9.
Nov 5, 2023
b2b56b8
Merge branch 'main' into per_game_datapackage
Nov 5, 2023
2329dfb
Stray `typing.` from merge conflict resolution.
Nov 5, 2023
0df050b
Updating local version to 0.5.0, lord knows this change will be break…
Nov 5, 2023
6409655
Fix some missed renames.
Nov 5, 2023
01b91d5
Reimplement alttp game tracker.
Nov 5, 2023
6f53023
Add navigation links to and from generic tracker and multiworld tracker.
Nov 5, 2023
5be71dd
Add game specific trackers back.
Nov 5, 2023
e811776
Fix caching issue.
Nov 5, 2023
e235ba4
Decrement client required version.
Nov 5, 2023
1804f86
Documentation updates.
Nov 5, 2023
3ddb150
Change some Clique ids to test PR by overlapping with some ALTTP ids.
Nov 5, 2023
6293166
Remove more data_version values.
Nov 5, 2023
10994a2
Remove world lookups as they're not needed.
Nov 5, 2023
7651cca
Merge branch 'refs/heads/main' into per_game_datapackage
May 1, 2024
f536440
Revert common client changes.
May 1, 2024
3286f3e
More merge issues fixes
May 1, 2024
e56902f
Merge branch 'refs/heads/main' into per_game_datapackage
May 20, 2024
598169d
Introduce backwards compat method of using CommonContext's `item_name…
May 20, 2024
3446cef
Update a few clients and finalize second draft(?) of helper lookup class
May 22, 2024
2645dfc
Update remaining clients currently in `main` to use explicit lookup w…
May 22, 2024
810d07c
Missed spot and finalize MultiServer.
May 22, 2024
eab3c79
Revert a style change.
May 22, 2024
a0db841
Discard changes to WebHostLib/tracker.py
May 22, 2024
2a56295
Revert extra style changes.
May 22, 2024
377255a
import tweak
May 22, 2024
43dab5d
import tweak 2
May 22, 2024
c8a8725
Discard changes to docs/apworld specification.md
May 22, 2024
84a1d47
Discard changes to docs/options api.md
May 22, 2024
8a30759
style reversions
May 22, 2024
1988ab7
Discard changes to worlds/messenger/__init__.py
May 22, 2024
64dc5ec
Discard changes to worlds/smw/__init__.py
May 22, 2024
f197be5
move inits of item_names and location_names to `__init__`
May 22, 2024
0e56de4
Merge branch 'refs/heads/main' into per_game_datapackage
May 22, 2024
3783fea
Making more changes to CommonContext
May 23, 2024
848198d
Finalize new design for developer API.
May 23, 2024
7c1e0fc
Finalize new design for developer API and fix clients again.
May 23, 2024
0aba620
Forgot to update a warning log message.
May 23, 2024
9bdc0c8
Just access game directly derp.
May 23, 2024
2ed461c
Random TYPE_CHECKING somehow
May 23, 2024
e608684
autocomplete failing me
May 23, 2024
db0500b
Merge branch 'refs/heads/main' into fork/per_game_datapackage
May 23, 2024
d1a0e5d
Remove MutableMapping and just implement the needed functions for Nam…
May 24, 2024
8b5a3e8
Remove removal method.
May 24, 2024
228347a
Merge branch 'main' into per_game_datapackage
May 25, 2024
f533139
Merge branch 'refs/heads/main' into per_game_datapackage
May 26, 2024
e527709
Type review adjustments.
May 29, 2024
7065b76
Merge branch 'refs/heads/main' into per_game_datapackage
May 29, 2024
e43e613
Fix hints causing an exception for missing player info.
May 29, 2024
3a0e199
Corrected docs. Group info is not sent in network data package.
May 29, 2024
97f2ea2
Some minor restructuring to remove jsonc in docs.
May 31, 2024
cd2c2de
Use warnings instead to avoid spamming client with deprecation message.
Jun 1, 2024
0be65b6
Only warning once, rather than **every**time.
Jun 1, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 12 additions & 17 deletions MultiServer.py
Original file line number Diff line number Diff line change
Expand Up @@ -763,30 +763,25 @@ async def on_client_connected(ctx: Context, client: Client):
for slot, connected_clients in clients.items():
if connected_clients:
name = ctx.player_names[team, slot]
players.append(
NetworkPlayer(team, slot,
ctx.name_aliases.get((team, slot), name), name)
)
players.append(NetworkPlayer(team, slot, ctx.name_aliases.get((team, slot), name), name))
games = {ctx.games[x] for x in range(1, len(ctx.games) + 1)}
games.add("Archipelago")
await ctx.send_msgs(client, [{
'cmd': 'RoomInfo',
'password': bool(ctx.password),
'games': games,
"cmd": "RoomInfo",
"password": bool(ctx.password),
"games": games,
# tags are for additional features in the communication.
# Name them by feature or fork, as you feel is appropriate.
'tags': ctx.tags,
'version': version_tuple,
'generator_version': ctx.generator_version,
'permissions': get_permissions(ctx),
'hint_cost': ctx.hint_cost,
'location_check_points': ctx.location_check_points,
'datapackage_versions': {game: game_data["version"] for game, game_data
in ctx.gamespackage.items() if game in games},
"tags": ctx.tags,
"version": version_tuple,
"generator_version": ctx.generator_version,
"permissions": get_permissions(ctx),
"hint_cost": ctx.hint_cost,
"location_check_points": ctx.location_check_points,
'datapackage_checksums': {game: game_data["checksum"] for game, game_data
in ctx.gamespackage.items() if game in games and "checksum" in game_data},
'seed_name': ctx.seed_name,
'time': time.time(),
"seed_name": ctx.seed_name,
"time": time.time(),
}])


Expand Down
2 changes: 1 addition & 1 deletion Utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ def as_simple_string(self) -> str:
return ".".join(str(item) for item in self)


__version__ = "0.4.6"
__version__ = "0.5.0"
version_tuple = tuplize_version(__version__)

is_linux = sys.platform.startswith("linux")
Expand Down
9 changes: 0 additions & 9 deletions WebHostLib/api/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,15 +56,6 @@ def get_datapackage():
return network_data_package


@api_endpoints.route('/datapackage_version')
@cache.cached()
def get_datapackage_versions():
from worlds import AutoWorldRegister

version_package = {game: world.data_version for game, world in AutoWorldRegister.world_types.items()}
return version_package


@api_endpoints.route('/datapackage_checksum')
@cache.cached()
def get_datapackage_checksums():
Expand Down
180 changes: 0 additions & 180 deletions WebHostLib/templates/ootTracker.html

This file was deleted.

20 changes: 10 additions & 10 deletions WebHostLib/tracker.py
Original file line number Diff line number Diff line change
Expand Up @@ -2180,29 +2180,29 @@ def render_Starcraft2_tracker(tracker_data: TrackerData, team: int, player: int)
}
# Format: L0, L1, L2, L3
progressive_names = {
"Progressive Terran Infantry Weapon": ["Terran Infantry Weapons Level 1",
"Progressive Terran Infantry Weapon": ["Terran Infantry Weapons Level 1",
"Terran Infantry Weapons Level 1",
"Terran Infantry Weapons Level 2",
"Terran Infantry Weapons Level 2",
"Terran Infantry Weapons Level 3"],
"Progressive Terran Infantry Armor": ["Terran Infantry Armor Level 1",
"Progressive Terran Infantry Armor": ["Terran Infantry Armor Level 1",
"Terran Infantry Armor Level 1",
"Terran Infantry Armor Level 2",
"Terran Infantry Armor Level 2",
"Terran Infantry Armor Level 3"],
"Progressive Terran Vehicle Weapon": ["Terran Vehicle Weapons Level 1",
"Progressive Terran Vehicle Weapon": ["Terran Vehicle Weapons Level 1",
"Terran Vehicle Weapons Level 1",
"Terran Vehicle Weapons Level 2",
"Terran Vehicle Weapons Level 2",
"Terran Vehicle Weapons Level 3"],
"Progressive Terran Vehicle Armor": ["Terran Vehicle Armor Level 1",
"Progressive Terran Vehicle Armor": ["Terran Vehicle Armor Level 1",
"Terran Vehicle Armor Level 1",
"Terran Vehicle Armor Level 2",
"Terran Vehicle Armor Level 2",
"Terran Vehicle Armor Level 3"],
"Progressive Terran Ship Weapon": ["Terran Ship Weapons Level 1",
"Terran Ship Weapons Level 1",
"Terran Ship Weapons Level 2",
"Terran Ship Weapons Level 3"],
"Progressive Terran Ship Armor": ["Terran Ship Armor Level 1",
"Progressive Terran Ship Armor": ["Terran Ship Armor Level 1",
"Terran Ship Armor Level 1",
"Terran Ship Armor Level 2",
"Terran Ship Armor Level 2",
"Terran Ship Armor Level 3"],
"Progressive Fire-Suppression System": ["Fire-Suppression System Level 1",
"Fire-Suppression System Level 1",
Expand Down
3 changes: 2 additions & 1 deletion docs/apworld specification.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ See [world api.md](world%20api.md) for details.
apworld provides a way to package and ship a world that is not part of the main distribution by placing a `*.apworld`
file into the worlds folder.

**Warning:** apworlds have to be all lower case, otherwise they raise a bogus Exception when trying to import in frozen python 3.10+!
**Warning:** apworlds have to be all lower case, otherwise they raise a bogus Exception when trying to import in frozen
python 3.10+!


## File Format
Expand Down
Loading
Loading