<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Shipwright/soh/src/code/z_parameter.c, branch Caladius-patch-1</title>
<subtitle>Ship of Harkinian: Ocarina of Time PC port</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/'/>
<entry>
<title>Hookify masks / timeless equipment (#7088)</title>
<updated>2026-08-17T17:24:03+00:00</updated>
<author>
<name>Philip Dubé</name>
<email>159546+serprex@users.noreply.github.com</email>
</author>
<published>2026-08-17T17:24:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=bd8a5825f94bf226680ce009ce5a50948aa48a78'/>
<id>bd8a5825f94bf226680ce009ce5a50948aa48a78</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Decomp, three audio functions (#7069)</title>
<updated>2026-08-14T20:01:49+00:00</updated>
<author>
<name>djevangelia</name>
<email>263709373+djevangelia@users.noreply.github.com</email>
</author>
<published>2026-08-14T20:01:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=e048afd10a7d87b185bfda06f55a63a46ce50b3b'/>
<id>e048afd10a7d87b185bfda06f55a63a46ce50b3b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Gold Skulltula tokens overwriting the Bow inventory slot (#7021)</title>
<updated>2026-08-05T04:03:12+00:00</updated>
<author>
<name>David Racine</name>
<email>bass_dr@hotmail.com</email>
</author>
<published>2026-08-05T04:03:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=29c7e75688a03547ba8643ea444e2790a80cc14c'/>
<id>29c7e75688a03547ba8643ea444e2790a80cc14c</id>
<content type='text'>
gItemSlots and sExtraItemBases only cover the item IDs that live in the
inventory, but Item_Give and Item_CheckObtainability index them with any
item ID. Reading past gItemSlots lands on gUpgradeShifts, so
INV_CONTENT(ITEM_SKULL_TOKEN) resolved to the Bow slot and stored the
token there, permanently corrupting the save.

Route both through a bounds-checked Item_GetSlot that reports SLOT_NONE
for items that have no slot, and skip the inventory store in that case.

That read is also undefined behaviour, which link-time optimization is
free to exploit: with it present clang dropped the ITEM_SKULL_TOKEN
branch and the ITEM_MEDALLION_WATER horse fixup from Item_Give
entirely, so tokens were never counted either.

Co-authored-by: Claude Opus 5 &lt;noreply@anthropic.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
gItemSlots and sExtraItemBases only cover the item IDs that live in the
inventory, but Item_Give and Item_CheckObtainability index them with any
item ID. Reading past gItemSlots lands on gUpgradeShifts, so
INV_CONTENT(ITEM_SKULL_TOKEN) resolved to the Bow slot and stored the
token there, permanently corrupting the save.

Route both through a bounds-checked Item_GetSlot that reports SLOT_NONE
for items that have no slot, and skip the inventory store in that case.

That read is also undefined behaviour, which link-time optimization is
free to exploit: with it present clang dropped the ITEM_SKULL_TOKEN
branch and the ITEM_MEDALLION_WATER horse fixup from Item_Give
entirely, so tokens were never counted either.

Co-authored-by: Claude Opus 5 &lt;noreply@anthropic.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Fix problems with Zelda's Letter &amp; Weird Egg hatching (#6962)</title>
<updated>2026-07-22T12:24:31+00:00</updated>
<author>
<name>Philip Dubé</name>
<email>159546+serprex@users.noreply.github.com</email>
</author>
<published>2026-07-22T12:24:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=d62c5879aaf4b64d68f6069cc2413c9d5f2eac92'/>
<id>d62c5879aaf4b64d68f6069cc2413c9d5f2eac92</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Shuffle Zelda's Letter (#6938)</title>
<updated>2026-07-19T22:37:45+00:00</updated>
<author>
<name>Philip Dubé</name>
<email>159546+serprex@users.noreply.github.com</email>
</author>
<published>2026-07-19T22:37:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=1ea7206073183e7f7424e02eceb44d4d9bf35300'/>
<id>1ea7206073183e7f7424e02eceb44d4d9bf35300</id>
<content type='text'>
Removes RSK_SKIP_CHILD_ZELDA &amp; RSK_KAK_GATE,
these are managed by RSK_SHUFFLE_ZELDAS_LETTER &amp; RSK_STARTING_ZELDAS_LETTER &amp; RSK_SHUFFLE_WEIRD_EGG</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Removes RSK_SKIP_CHILD_ZELDA &amp; RSK_KAK_GATE,
these are managed by RSK_SHUFFLE_ZELDAS_LETTER &amp; RSK_STARTING_ZELDAS_LETTER &amp; RSK_SHUFFLE_WEIRD_EGG</pre>
</div>
</content>
</entry>
<entry>
<title>Add save state wiring for Barinade, Bongo Bongo, &amp; Morpha (#6914)</title>
<updated>2026-07-12T22:35:19+00:00</updated>
<author>
<name>Philip Dubé</name>
<email>159546+serprex@users.noreply.github.com</email>
</author>
<published>2026-07-12T22:35:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=66bb7888b0650548f2bd00ef5faf360f0c37bf6e'/>
<id>66bb7888b0650548f2bd00ef5faf360f0c37bf6e</id>
<content type='text'>
Rename various variables across codebase to match decomp,
many had been renamed when exposed for previous save state mechanism</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rename various variables across codebase to match decomp,
many had been renamed when exposed for previous save state mechanism</pre>
</div>
</content>
</entry>
<entry>
<title>GIM Restoration (#6865)</title>
<updated>2026-07-12T15:09:06+00:00</updated>
<author>
<name>Amber Burton</name>
<email>parchmentwolf@gmail.com</email>
</author>
<published>2026-07-12T15:09:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=2b423c36aa0708a9e042b1afe8f252a6cf91c556'/>
<id>2b423c36aa0708a9e042b1afe8f252a6cf91c556</id>
<content type='text'>
All edge cases for bottle combinations and replacement/filling mirrors the real game, as well we produce the compass text, and does not render the item exactly as the original game does. (I would have preferred rendering the item since its only cosmetic but I couldn't find a way to do it).

This also swaps the table redirect stuff for using the direct item id's which is a lot more clear and does not substitute anything for 'good enough' and covers all the edge case ids that have been documented.

This is purely a cosmetic change to present the visual of the item without affecting the cutscene making any tricks for GIM still work and just looks more polished.

This supplies effects of ALL game versions (including MZX build) as well as providing text table.

To note: we still can crash with GIM even when returning item None EVEN at least with returning Kokiri Tunic (I can't really figure out why) and there are a few items in the table that use extra data that I don't know how to implement here just yet but the info is in the docs under "Variable".

In the case of disabling the gim restoration, the game would still crash. This change adds a text id protection to prevent crashing, as well prevents invalid items from crashing directly, and also makes it so the game will no longer crash when having GIM disabled in the menu.

Co-authored-by: serprex &lt;159546+serprex@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
All edge cases for bottle combinations and replacement/filling mirrors the real game, as well we produce the compass text, and does not render the item exactly as the original game does. (I would have preferred rendering the item since its only cosmetic but I couldn't find a way to do it).

This also swaps the table redirect stuff for using the direct item id's which is a lot more clear and does not substitute anything for 'good enough' and covers all the edge case ids that have been documented.

This is purely a cosmetic change to present the visual of the item without affecting the cutscene making any tricks for GIM still work and just looks more polished.

This supplies effects of ALL game versions (including MZX build) as well as providing text table.

To note: we still can crash with GIM even when returning item None EVEN at least with returning Kokiri Tunic (I can't really figure out why) and there are a few items in the table that use extra data that I don't know how to implement here just yet but the info is in the docs under "Variable".

In the case of disabling the gim restoration, the game would still crash. This change adds a text id protection to prevent crashing, as well prevents invalid items from crashing directly, and also makes it so the game will no longer crash when having GIM disabled in the menu.

Co-authored-by: serprex &lt;159546+serprex@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Decomp pull, some `z_player` and global changes (#6908)</title>
<updated>2026-07-12T14:59:10+00:00</updated>
<author>
<name>djevangelia</name>
<email>263709373+djevangelia@users.noreply.github.com</email>
</author>
<published>2026-07-12T14:59:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=1003c462a886e6046071865d2091c6e742a2f4b7'/>
<id>1003c462a886e6046071865d2091c6e742a2f4b7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Decomp, update `z_en_holl.c` (#6890)</title>
<updated>2026-07-09T15:44:29+00:00</updated>
<author>
<name>djevangelia</name>
<email>263709373+djevangelia@users.noreply.github.com</email>
</author>
<published>2026-07-09T15:44:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=50837308b77ed5ddb0dfe86b2b9fbcb0ce71db80'/>
<id>50837308b77ed5ddb0dfe86b2b9fbcb0ce71db80</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>pull decomp changes: actor functions, z_en_horse.c (#6877)</title>
<updated>2026-07-07T01:51:44+00:00</updated>
<author>
<name>Philip Dubé</name>
<email>159546+serprex@users.noreply.github.com</email>
</author>
<published>2026-07-07T01:51:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/Shipwright/commit/?id=5cf03a4cdadefe31d81cd324299ff5e0dc436748'/>
<id>5cf03a4cdadefe31d81cd324299ff5e0dc436748</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
