Skip to content

Commit

Permalink
Add Undertale (#13)
Browse files Browse the repository at this point in the history
* Added undertale world files

* Tried to fix generation

* Fixed generation of Undertale

* added Undertale Client

* Finished making everything

* fixed an item being in the wrong location

* Fixed having same item ids as another game

* Fixed some duplicate item ids and removed a connection that might cause problems

* Added partially automatic patching of Undertale

* fixed not building the client

* Made changes to Undertale AP

* Added an option to remove Temy Armor from the Undertale pool

* updated the undertale patch

* Added the setups folder to gitignore

* updated the undertale patch

* Made the plot be location based items

* Fixed items that have a negative id

* Made changes and additions to Undertale

* Added features to Undertale

* Added Soul Hunt to Undertale

* Fixed the Undertale rules

* Fixed another bug

* Forgot to fix this Undertale

* Added missing client variables

* Made UndertaleClient not have copies of CommonClient

* fixed hotland logic rules for Undertale

* Added deathlink

* Fixed some stuff with deathlink

* Updated the Undertale patch

* Fixed deathlink and local items

* Fixed deathlink again in undertale

* Fixed a permission error bug with opening files

* Made online mode and deathlink a toggle command

* Added Progressive Plot to undertale

* Updated the patch for Undertale

* Added LV rando to Undertale

* hopefully made Undertale online mode more stable

* Fixed LOVE rando not actually getting told to Undertale

* Added a secret feature to Undertale

* Added locations for Undertale plot

* Added All Routes setting to Undertale

* Fixed Undertale rules

* Added Area rando to Undertale AP

* Fixed a crash in Undertale with starting a new save from nothing

* Added stats rando

* Almost fixed Undertale generation

* Fixed Undertale Stat Rando

* Fixed one thing with undertale stat rando

* Added progressive weapons and armor to Undertale

* Made progressive plot change based on area

* Undertale: Updated the patch

* Fixed some things with the Undertale Client

* Fixed a bunch of stuff with Undertale

* attempt at fix

* True Fix Undertale

* Wow, fixed Undertale

* Fixed stuff with Undertale, and made some items marked as useful

* Updated the patch for Undertale

* Fixed some stuff with Undertale ap

* Finally made Undertale have an auto patch feature

* Added docs to Undertale

* Fixed something with the auto patching of undertale

* Actually got the docs right for Undertale

* Fixed the Docs for Undertale

* Changed gold amount

* Fixed data_version for Undertale

* Fixed some stuff with Undertale

* Fixed some Undertale stuff

* Fixed the Undertale init.py file

* Fixed some generation errors with Undertale

* Fixed the Undertale Client freezing

* Made the auto patcher create the Custom Sprites folder

* Updated Undertale

* Fixed Undertale bugs

* Made some changes to UndertaleClient

* Fixed some stuff

* Fixed some Undertale bugs

* Fixed Undertale AP bugs

* Final changes

* Changed docs some, and fixed a bug with photoshop flowey

* Some more fixes

* Made a change to a line in UT docs

* Forgot to fix the data version

* Fixed some Undertale bugs

* Made requested changes

* Fixed it

* Fixed broken stuff

* Fixed pacifist route

* Fixed player hitbox

* Fixed some stuff with clearing files

* Fully made Undertale work as an apworld file

* Actually fixed undertale client

* Forgot to update the patch

* fixed some stuff

* Actually updated the patch

* Made suggested changes

* Quality of life change

* Updated the Undertale Client launcher component to use the new method

* Made requested changes, and removed unused install argument

* Missed two lines with the removal of the unused install argument

* KH2: AntipointReset (ArchipelagoMW#1815)

* Core: skip ModuleUpdate in subprocess

* ALttP: fix dungeon fill failures properly (ArchipelagoMW#1812)

* Blasphemous: Fixed logic errors in WotHP

* CI: add a workflow to show flake8/mypy violations in modified files of a PR (ArchipelagoMW#1513)

* CI: add a workflow to show flake8 violations in modified files of a PR

* modify a file to trigger the lint check

* CI: add a workflow to show mypy violations in modified files of a PR

* modify a file to trigger the type check

* Split flake8 and mypy into two parallel jobs; run a variant of the workflow on push event; modify a file to trigger the push workflow

* fail the task if there are syntax errors; remove old lint workflow

* LADX: Add --no-magpie argument for disabling magpie bridge (ArchipelagoMW#1788)

* Subnautica: move mod exports to own module

* Main: add __all__ and change wrong imports (ArchipelagoMW#1824)

* Main: add __all__ and change wrong imports

* Adjusters: fix __version__ import

* Logging: make sure level is applied for websockets

* Core: update modules

* LttP: deterministic shop_shuffle

* LttP: extract Dungeon and Boss from core (ArchipelagoMW#1787)

* Docs: Update world api excluded/priority locations description (ArchipelagoMW#1807)

* Update world api doc

Changed the description of excluded and priority locations to match how they appear in other places such as the options api doc

* Update world api.md

* CI: treat all files as modified on new branches (ArchipelagoMW#1826)

* The Messenger: override start_inventory description (ArchipelagoMW#1695)

* The Messenger: override start_inventory description

* use StartInventoryPool directly

* WebHost: index columns used by landing page.

* WebHost: add game to template export

* Core: log race mode enabled

* DLCQuest: Fix Documentation Broken Link

* [Blasphemous] Various logic fixes (ArchipelagoMW#1830)

This makes a few changes to logic to better match the 1.3 rando's logic. This fixes instances where the wrong items were expected, fixes a typo of "Lorqiana", moves the expert logic on "PotSS: Second area ledge" to only apply if on expert, and adds a new route to "DC: Mea Culpa altar" via Linen of Golden Thread + Three Gnarled Tongues

* [SM] Minor update to link in Options.py (ArchipelagoMW#1831)

* Core: clean up BaseClasses a bit (ArchipelagoMW#1731)

* WebHost: use Py3.11 compatible ponyorm

* LttP: fix patching crash if old always_apply adjuster settings were applied

* Stardew valley: Fix package and imports for apworld linux (ArchipelagoMW#1842)

- Fix csv load to use explicitly imported self package instead of keyword __package__
- Fix init.py having a relative import to outside of the apworld

* Wargroove: Fixed commander.json file never being closed by the mod (ArchipelagoMW#1841)

The Wargroove mod didn't close the commander.json's file handle. The Wargroove mod will now close that file handle. The change for the mod can be viewed here: FlySniper/WargrooveArchipelagoMod@fc9aeb3
The change can be verified as present in this repository by viewing the binary data in the modAssets.dat file and searching for "commander.json"

* SMZ3 decoding fix (ArchipelagoMW#1847)

* Zillion: cache key includes gun requirement (ArchipelagoMW#1846)

The key for the logic cache was missing some important information, so it was yielding a cache hit when it should have been a miss.

---------

Co-authored-by: jonloveslegos <[email protected]>
Co-authored-by: Mewlif <[email protected]>
Co-authored-by: Fabian Dill <[email protected]>
Co-authored-by: JaredWeakStrike <[email protected]>
Co-authored-by: Fabian Dill <[email protected]>
Co-authored-by: espeon65536 <[email protected]>
Co-authored-by: Exempt-Medic <[email protected]>
Co-authored-by: el-u <[email protected]>
Co-authored-by: Cybrou <[email protected]>
Co-authored-by: black-sliver <[email protected]>
Co-authored-by: alwaysintreble <[email protected]>
Co-authored-by: axe-y <[email protected]>
Co-authored-by: ScootyPuffJr1 <[email protected]>
Co-authored-by: agilbert1412 <[email protected]>
Co-authored-by: FlySniper <[email protected]>
Co-authored-by: lordlou <[email protected]>
Co-authored-by: Doug Hoskisson <[email protected]>
  • Loading branch information
18 people authored Jun 5, 2023
1 parent 98b0bf7 commit 294913c
Show file tree
Hide file tree
Showing 63 changed files with 2,742 additions and 569 deletions.
80 changes: 80 additions & 0 deletions .github/workflows/analyze-modified-files.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Analyze modified files

on:
pull_request:
paths:
- "**.py"
push:
paths:
- "**.py"

env:
BASE: ${{ github.event.pull_request.base.sha }}
HEAD: ${{ github.event.pull_request.head.sha }}
BEFORE: ${{ github.event.before }}
AFTER: ${{ github.event.after }}

jobs:
flake8-or-mypy:
strategy:
fail-fast: false
matrix:
task: [flake8, mypy]

name: ${{ matrix.task }}
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: "Determine modified files (pull_request)"
if: github.event_name == 'pull_request'
run: |
git fetch origin $BASE $HEAD
DIFF=$(git diff --diff-filter=d --name-only $BASE...$HEAD -- "*.py")
echo "modified files:"
echo "$DIFF"
echo "diff=${DIFF//$'\n'/$' '}" >> $GITHUB_ENV
- name: "Determine modified files (push)"
if: github.event_name == 'push' && github.event.before != '0000000000000000000000000000000000000000'
run: |
git fetch origin $BEFORE $AFTER
DIFF=$(git diff --diff-filter=d --name-only $BEFORE..$AFTER -- "*.py")
echo "modified files:"
echo "$DIFF"
echo "diff=${DIFF//$'\n'/$' '}" >> $GITHUB_ENV
- name: "Treat all files as modified (new branch)"
if: github.event_name == 'push' && github.event.before == '0000000000000000000000000000000000000000'
run: |
echo "diff=." >> $GITHUB_ENV
- uses: actions/setup-python@v4
if: env.diff != ''
with:
python-version: 3.8

- name: "Install dependencies"
if: env.diff != ''
run: |
python -m pip install --upgrade pip ${{ matrix.task }}
python ModuleUpdate.py --append "WebHostLib/requirements.txt" --force --yes
- name: "flake8: Stop the build if there are Python syntax errors or undefined names"
continue-on-error: false
if: env.diff != '' && matrix.task == 'flake8'
run: |
flake8 --count --select=E9,F63,F7,F82 --show-source --statistics ${{ env.diff }}
- name: "flake8: Lint modified files"
continue-on-error: true
if: env.diff != '' && matrix.task == 'flake8'
run: |
flake8 --count --max-complexity=10 --max-doc-length=120 --max-line-length=120 --statistics ${{ env.diff }}
- name: "mypy: Type check modified files"
continue-on-error: true
if: env.diff != '' && matrix.task == 'mypy'
run: |
mypy --follow-imports=silent --install-types --non-interactive --strict ${{ env.diff }}
35 changes: 0 additions & 35 deletions .github/workflows/lint.yml

This file was deleted.

4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
*.apsave
*.BIN

setups
build
bundle/components.wxs
dist
Expand Down Expand Up @@ -176,6 +177,9 @@ minecraft_versions.json
# pyenv
.python-version

#undertale stuff
/Undertale/

# OS General Files
.DS_Store
.AppleDouble
Expand Down
2 changes: 1 addition & 1 deletion AdventureClient.py
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ async def atari_sync_task(ctx: AdventureContext):
ctx.atari_streams = await asyncio.wait_for(
asyncio.open_connection("localhost",
port),
timeout=10)
timeout=10)
ctx.atari_status = CONNECTION_TENTATIVE_STATUS
except TimeoutError:
logger.debug("Connection Timed Out, Trying Again")
Expand Down
Loading

0 comments on commit 294913c

Please sign in to comment.