Skip to content
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

Add autotracking support #123

Open
wants to merge 34 commits into
base: ootr
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
43aae1e
add autotracker support
coavins Oct 10, 2021
b219b81
expand accessibility for deku theater skull mask
coavins Oct 21, 2021
c58015e
make autotracker more testable
coavins Oct 24, 2021
ce08b5e
add unit tests for autotracker
coavins Oct 24, 2021
c3f63d5
fix child trade sequence to show nothing
coavins Oct 24, 2021
26d2852
fix indentation style
coavins Oct 25, 2021
f11f310
add unit tests for auto_checks.lua
coavins Oct 25, 2021
82f8060
Merge branch 'ootr' into autotracker-pr
coavins Oct 25, 2021
c4d32f3
catch up to branch 'ootr'
coavins Oct 20, 2021
a9535ff
move assert statements back into test bodies
coavins Oct 27, 2021
ba5c6ca
remove magic number
coavins Oct 27, 2021
2459434
autotracker: fix child trade sequence advancement
coavins Oct 27, 2021
88e4348
Merge branch 'autotracker' into autotracker-pr
coavins Oct 27, 2021
26c25ea
Merge branch 'ootr' into autotracker-pr
coavins Nov 20, 2021
f8f7ebb
move racemode setting into item grid
coavins Nov 20, 2021
f18d224
Merge branch 'autotracker' into autotracker-pr
coavins Nov 20, 2021
b2da847
don't allow race mode to be turned on
coavins Nov 21, 2021
beb8d89
update racemode icon
coavins Nov 21, 2021
42d103e
Merge branch 'autotracker' into autotracker-pr
coavins Nov 21, 2021
70e3589
move race mode implementation to master branch
coavins Nov 21, 2021
57f264a
Merge branch 'autotracker' into autotracker-pr
coavins Nov 21, 2021
d47f797
add newline at end of file
coavins Nov 21, 2021
3d53161
add newline at end of file
coavins Nov 21, 2021
0ee0f2d
Merge branch 'autotracker' into autotracker-pr
coavins Nov 21, 2021
cf4e32f
tweak icon
coavins Nov 21, 2021
5d1666c
Merge branch 'autotracker' into autotracker-pr
coavins Nov 21, 2021
51d614f
Merge commit '232ac1f6abb' into autotracker-pr
coavins Nov 28, 2021
a8747b7
use BEAN_PLANTING user setting
coavins Nov 28, 2021
26d4ff6
add big poes option
coavins Nov 28, 2021
2a567a8
Merge branch 'ootr' into autotracker-pr
coavins May 3, 2022
4ad17a7
fix dungeon rewards
coavins May 3, 2022
7d2c38a
revert zip file
coavins May 3, 2022
49147b6
add autotracking free scarecrow enabled
May 6, 2022
88b9cd1
Fix Market Potion Shop addresses
coavins May 7, 2022
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
Prev Previous commit
Next Next commit
fix child trade sequence to show nothing
This bug surfaced after the unit tests were written. The child trade
slot needs to show no item when the player does not have any item and
the happy mask shop is not open yet.
  • Loading branch information
coavins committed Oct 24, 2021
commit c3f63d56caf96886c64192b13821ff8a7292efda
Binary file modified ootrando_overworldmap_hamsda.zip
Binary file not shown.
15 changes: 10 additions & 5 deletions ootrando_overworldmap_hamsda/scripts/autotracking/auto_items.lua
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,7 @@ local function updateChildTradeSequence(segment)
if item then
local value = ReadU8(segment, 0x8011A65B)

local VAL_NOTHING = 0xFF
local VAL_EGG = 0x21
local VAL_CHICKEN = 0x22
local VAL_LETTER = 0x23
Expand Down Expand Up @@ -227,22 +228,26 @@ local function updateChildTradeSequence(segment)

local newStage = 0

-- first, show egg or chicken if we haven't met zelda yet
-- first, show pre-mask shop states

-- always show nothing if we have it
if value == VAL_NOTHING then newStage = 0 -- nothing
-- always show egg if we have it
if value == VAL_EGG then newStage = 1 -- egg
-- if we have chicken, show egg instead if talon hasn't woken yet
elseif value == VAL_EGG then newStage = 1 -- egg
-- handle chicken cases
elseif value == VAL_CHICKEN then
-- only show chicken if we already woke up talon
if CHICKEN_SHOWN_TO_TALON then
autotracker_debug('showing chicken because talon isn\'t at the castle', DBG_DETAIL)
newStage = 2 -- chicken
-- show egg instead so that talon's check appears on the tracker
else
autotracker_debug('showing egg instead of chicken because talon is at the castle', DBG_DETAIL)
newStage = 1 -- show egg so tracker shows talon's check
end

-- now, override the actual held item with the one that represents your furthest progress
-- in the trade sequence
-- now that the mask shop is open, override the actual held item with the one that
-- represents your furthest progress in the trade sequence

-- always show truth no matter what you're holding, relevant checks should appear accessible
elseif EARNED_MASK_OF_TRUTH then newStage = 13
Expand Down