ArchipelagoMW / Archipelago

Archipelago Multi-Game Randomizer and Server
https://archipelago.gg
Other
480 stars 638 forks source link

Psychonauts: Implement New Game #3546

Open Akashortstack opened 3 months ago

Akashortstack commented 3 months ago

The original working repository for Psychonauts_AP with a history of commits can be found here: https://github.com/Akashortstack/Psychonauts_AP

Several major contributions, including Deep Arrowhead Shuffle and Cobweb Shuffle, done by Mysteryem

What is this fixing or adding?

This commit adds Psychonauts to Archipelago. This includes the world, locations, items, client, web world, documentation, and setup guide.

How was this tested?

This has been tested extensively by myself and several other community members in unsupported games, with both single-world and multi-world seeds.

If this makes graphical changes, please attach screenshots.

Screenshot 2024-06-15 183613

Screenshot 2024-06-15 183426

Mysteryem commented 3 months ago

I'd recommend opening the apworld code in PyCharm and doing Code > Reformat Code on each file because there's quite a lot of code that doesn't match the PEP 8 Style Guide. The Archipelago Style Guide has a few adjustments too: https://github.com/ArchipelagoMW/Archipelago/blob/main/docs/style.md#python-code

Akashortstack commented 3 months ago

Pycharm Reformat has been applied, if anything is still wrong feel free to adjust or comment on it. I don't normally use Pycharm on this project.

ScipioWright commented 3 months ago

Should add the game to the README.md in the root Archipelago directory

Exempt-Medic commented 1 month ago

Is there supposed to be a PSYClient.py as well?

Mysteryem commented 1 month ago

Is there supposed to be a PSYClient.py as well?

Aren't new games specifically not supposed to include these? After AHiT was merged I thought it was brought up that it shouldn't have added a new separate client.

Exempt-Medic commented 1 month ago

Is there supposed to be a PSYClient.py as well?

Aren't new games specifically not supposed to include these? After AHiT was merged I thought it was brought up that it shouldn't have added a new separate client.

I'm honestly unsure, but this fails tests on my end because it can't find it