<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wulinshu.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=LemonHaze</id>
	<title>Wulinshu - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wulinshu.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=LemonHaze"/>
	<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php/Special:Contributions/LemonHaze"/>
	<updated>2026-06-04T01:29:10Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=651</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=651"/>
		<updated>2024-04-05T08:55:26Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* Useful Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&amp;lt;strong&amp;gt;Welcome to the Wulinshu Wiki!&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Wulinshu Wiki focuses on the research and documentation of the Shenmue I &amp;amp; II HD ports by [https://d3tltd.com/ d3t].&lt;br /&gt;
&lt;br /&gt;
[[File:Shenmue I Logo.png|thumb|left|link=https://wulinshu.com/wiki/index.php/Category:Shenmue]][[File:Shenmue II Logo.png|thumb|right|link=https://wulinshu.com/wiki/index.php/Category:Shenmue_II]] &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
=== Useful Links ===&lt;br /&gt;
==== [[:Category:Runtime|Runtime]] ====&lt;br /&gt;
* [[:Category:Memory Addresses|Memory Addresses]]&lt;br /&gt;
** [[Memory Addresses (SM1)]]&lt;br /&gt;
** [[Memory Addresses (SM2)]]&lt;br /&gt;
** [[Function Memory Addresses (SM1)]]&lt;br /&gt;
** [[Function Memory Addresses (SM2)]]&lt;br /&gt;
* [[:Category:Text References|Text References]]&lt;br /&gt;
** [[Text References (SM1)]]&lt;br /&gt;
** [[Text References (SM2)]]&lt;br /&gt;
* [[:Category:Tasks|Tasks]]&lt;br /&gt;
** [[:Category:Tasks (SM1)|Tasks (SM1)]]&lt;br /&gt;
** [[:Category:Tasks (SM2)|Tasks (SM2)]]&lt;br /&gt;
* [[:Category:Structs|Structs]]&lt;br /&gt;
** [[:Category:Structs (SM1)|Structs (SM1)]]&lt;br /&gt;
** [[:Category:Structs (SM2)|Structs (SM2)]]&lt;br /&gt;
&lt;br /&gt;
==== [[HLib]] ====&lt;br /&gt;
* [[Task Queue System]]&lt;br /&gt;
* [[Memory Management (USE/fREe)]]&lt;br /&gt;
* [[Shenmue Script]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:d3t|d3t]] ====&lt;br /&gt;
* [[Model Override]]&lt;br /&gt;
* [[Texture Override]]&lt;br /&gt;
* [[Asset Remapping]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:Files|Files]] ====&lt;br /&gt;
* [[:Category:Containers|Containers]]&lt;br /&gt;
** [[AFS]]&lt;br /&gt;
** [[IDX]]&lt;br /&gt;
** [[PKF]]&lt;br /&gt;
** [[PKS]]&lt;br /&gt;
** [[SPR]]&lt;br /&gt;
* [[:Category:Map|Map]]&lt;br /&gt;
** [[MAPINFO]]&lt;br /&gt;
** [[:Category:Map_IDs|Map IDs]]&lt;br /&gt;
* [[:Category:Models|Models]]&lt;br /&gt;
** [[Items (SM2)]]&lt;br /&gt;
** [[MT5]]&lt;br /&gt;
** [[MT7]]&lt;br /&gt;
* [[:Category:Animations|Animations]]&lt;br /&gt;
** [[MOTN]]&lt;br /&gt;
* [[:Category:Textures|Textures]]&lt;br /&gt;
** [[PVR]]&lt;br /&gt;
* [[:Category:Subtitles|Subtitles]]&lt;br /&gt;
** [[SUB]]&lt;br /&gt;
* [[:Category:Music|Music]]&lt;br /&gt;
** [[SND]]&lt;br /&gt;
** [[Music Tracks (WS)]]&lt;br /&gt;
** [[Music Tracks (SM1)]]&lt;br /&gt;
** [[Music Tracks (SM2)]]&lt;br /&gt;
** [[Music Tracks (SM3)]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Models_(SM2)&amp;diff=650</id>
		<title>Models (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Models_(SM2)&amp;diff=650"/>
		<updated>2024-04-05T08:55:00Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: LemonHaze moved page Models (SM2) to Items (SM2)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Items (SM2)]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Items_(SM2)&amp;diff=649</id>
		<title>Items (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Items_(SM2)&amp;diff=649"/>
		<updated>2024-04-05T08:55:00Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: LemonHaze moved page Models (SM2) to Items (SM2)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Models]]&lt;br /&gt;
Items are split into 6 categories: [[#KeyItems|KeyItems]], [[#CapsuleToys|CapsuleToys]], [[#Photos|Photos]], [[#MapItems|MapItems]], [[#MoveItems|MoveItems]] and [[#PawnItems|PawnItems]].&lt;br /&gt;
&lt;br /&gt;
Each category contains the items which the player can hold in their inventory. &lt;br /&gt;
&lt;br /&gt;
In total, there are 374 items across all 6 categories.&lt;br /&gt;
&lt;br /&gt;
== KeyItems ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
|  || Overall Map || &lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMNOTE || Notebook&lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMTOKE || Token(s)&lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMWATC || Watch&lt;br /&gt;
|-&lt;br /&gt;
| TUBA1T1 || UIITEMSWHA || Sword Handguard&lt;br /&gt;
|-&lt;br /&gt;
| PNX02H6 || UIITEMPHMI || Phoenix Mirror&lt;br /&gt;
|-&lt;br /&gt;
| LMAL200 || UIITEMCIL0 || Chen Intro Letter&lt;br /&gt;
|-&lt;br /&gt;
| OMMR1M1 || UIITEMAMUL || Amulet&lt;br /&gt;
|-&lt;br /&gt;
| HAFK100 || UIITEMWHLE || White Leaf&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHHV || UIITEMHEZI || Heavens Lighter&lt;br /&gt;
|-&lt;br /&gt;
| MAGA2WH || UIITEMCSB0 || Comma Shaped Bead&lt;br /&gt;
|-&lt;br /&gt;
| QDKJASI || UIITEMFDB0 || Four Divine Beasts&lt;br /&gt;
|-&lt;br /&gt;
| IKSM2OM || UIITEMHECO || Heads Coin&lt;br /&gt;
|-&lt;br /&gt;
| IKSM2UR || UIITEMTACO || Tails Coin&lt;br /&gt;
|-&lt;br /&gt;
| OMMRHH1 || UIITEMXUAM || Xun's Amulet&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2GL || UIITEMBGM0 || Big Gold Medal&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2SV || UIITEMBSM0 || Big Silver Medal&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2CP || UIITEMBBM0 || Big Bronze Medal&lt;br /&gt;
|-&lt;br /&gt;
| LETT1L1 || UIITEMLTF0 || Letter to Father&lt;br /&gt;
|-&lt;br /&gt;
| TMEM200 || UIITEMMYPA || Mysterious Paper&lt;br /&gt;
|-&lt;br /&gt;
| TMEM200 || UIITEMCHSI || Chawan Sign&lt;br /&gt;
|-&lt;br /&gt;
| WS00ALE || UIITEMZOLE || Zongquan Letter&lt;br /&gt;
|-&lt;br /&gt;
| TYOM28J || UIITEMDJD0 || Dou Jiang Diner&lt;br /&gt;
|-&lt;br /&gt;
| BSKM2HO || UIITEMCOGH || Come Over Guest House&lt;br /&gt;
|-&lt;br /&gt;
| BKOI200 || UIITEMMMP0 || Man Mo Park&lt;br /&gt;
|-&lt;br /&gt;
| TOSM29J || UIITEMMMP0 || Man Mo Park&lt;br /&gt;
|-&lt;br /&gt;
| QEME203 || UIITEMMCB0 || Moon Child Bldg.&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN5 || UIITEMWHTI || White Tiger&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN3 || UIITEMSNTO || Snake Tortoise&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN1 || UIITEMBLDR || Blue Dragon&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN4 || UIITEMFISH || Fish&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN7 || UIITEMROOS || Rooster&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN0 || UIITEMPHOE || Phoenix&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN6 || UIITEMWIBO || Wild Boar&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN8 || UIITEMGOAT || Goat&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK1 || UIITEMEK29 || EV Key 29&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK2 || UIITEMEK10 || EV Key 10&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK3 || UIITEMEK46 || EV Key 46&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK4 || UIITEMEK09 || EV Key 9&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK5 || UIITEMEK18 || EV Key 18&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK6 || UIITEMEK21 || EV Key 21&lt;br /&gt;
|-&lt;br /&gt;
| AHIR2SN || UIITEMDUCK || Duck&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CapsuleToys ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
| GACIAK1 || UIGACHAKI1 || Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIAK2 || UIGACHAKI2 || Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOJK1 || UIGACHJAC1 || Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOJK2 || UIGACHJAC2 || Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOSA1 || UIGACHSAR1 || Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOSA2 || UIGACHSAR2 || Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOLA1 || UIGACHLAU1 || Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOLA2 || UIGACHLAU2 || Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOPA1 || UIGACHPAI1 || Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOPA2 || UIGACHPAI2 || Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGWF1 || UIGACHWOL1 || Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGWF2 || UIGACHWOL2 || Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJF1 || UIGACHJEF1 || Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJF2 || UIGACHJEF2 || Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIKA1 || UIGACHKAG1 || Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIKA2 || UIGACHKAG2 || Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRDR1 || UIGACHDURS || Dural Silver&lt;br /&gt;
|-&lt;br /&gt;
| GACRDR2 || UIGACHDURG || Dural Gold&lt;br /&gt;
|-&lt;br /&gt;
| GACM401 || UIGACHWOOD || Wooden man&lt;br /&gt;
|-&lt;br /&gt;
| GACRREN || UIGACHRENT || Rent-A-Hero&lt;br /&gt;
|-&lt;br /&gt;
| GACK6TZ || UIGACHTRYZ || Try-Z&lt;br /&gt;
|-&lt;br /&gt;
| GACRPAN || UIGACHSOLO || Solo Wing&lt;br /&gt;
|-&lt;br /&gt;
| GACIAKA || UIGACHKAK1 || Kids Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIAKB || UIGACHKAK2 || Kids Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJKA || UIGACHKJA1 || Kids Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJKB || UIGACHKJA2 || Kids Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOSAA || UIGACHKSA1 || Kids Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOSAB || UIGACHKSA2 || Kids Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOLAA || UIGACHKLA1 || Kids Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOLAB || UIGACHKLA2 || Kids Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOPAA || UIGACHKPA1 || Kids Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOPAB || UIGACHKPA2 || Kids Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIWLA || UIGACHKWO1 || Kids Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIWLB || UIGACHKWO2 || Kids Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJFA || UIGACHKJE1 || Kids Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJFB || UIGACHKJE2 || Kids Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIKAA || UIGACHKKA1 || Kids Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIKAB || UIGACHKKA2 || Kids Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGSNA || UIGACHKSH1 || Kids Shun Di 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGSNB || UIGACHKSH2 || Kids Shun Di 2&lt;br /&gt;
|-&lt;br /&gt;
| GACILIA || UIGACHKLI1 || Kids Lion 1&lt;br /&gt;
|-&lt;br /&gt;
| GACILIB || UIGACHKLI2 || Kids Lion 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIDUA || UIGACHKDUS || Kids Dural S&lt;br /&gt;
|-&lt;br /&gt;
| GACIDUB || UIGACHKDUG || Kids Dural G&lt;br /&gt;
|-&lt;br /&gt;
| GACRNT1 || UIGACHNIG1 || NiGHTS 1&lt;br /&gt;
|-&lt;br /&gt;
| GACRNT2 || UIGACHNIG2 || NiGHTS 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRSO1 || UIGACHSON1 || Sonic 1&lt;br /&gt;
|-&lt;br /&gt;
| GACRSO2 || UIGACHSON2 || Sonic 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRSSC || UIGACHSUSO || Super Sonic&lt;br /&gt;
|-&lt;br /&gt;
| GACRTL1 || UIGACHTAIL || Tails&lt;br /&gt;
|-&lt;br /&gt;
| GACRNUC || UIGACHKNUC || Knuckles&lt;br /&gt;
|-&lt;br /&gt;
| GACRBAK || UIGACHBARK || Berk&lt;br /&gt;
|-&lt;br /&gt;
| GACRBIN || UIGACHBEAN || Bean&lt;br /&gt;
|-&lt;br /&gt;
| GACRFNG || UIGACHFANG || Fang&lt;br /&gt;
|-&lt;br /&gt;
| GACRAMY || UIGACHAMY0 || Amy&lt;br /&gt;
|-&lt;br /&gt;
| GACRESP || UIGACHESPI || Espio&lt;br /&gt;
|-&lt;br /&gt;
| GACRMET || UIGACHMESO || Metal Sonic&lt;br /&gt;
|-&lt;br /&gt;
| GACREGG || UIGACHEGGM || Eggman&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HO || UIGACHHAO1 || Hang-On 1&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HH || UIGACHHAO2 || Hang-On 2&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HY || UIGACHHAO3 || Hang-On 3&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HB || UIGACHHAO4 || Hang-On 4&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HG || UIGACHHAO5 || Hang-On 5&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HK || UIGACHHAOG || Hang-On G&lt;br /&gt;
|-&lt;br /&gt;
| GACK6SP || UIGACHSPHA || Space Harrier&lt;br /&gt;
|-&lt;br /&gt;
| GACRLOP || UIGACHRUBE || Ruber&lt;br /&gt;
|-&lt;br /&gt;
| GACR0BN || UIGACHBIN1 || Binsbein 1&lt;br /&gt;
|-&lt;br /&gt;
| GACR0B2 || UIGACHBIN2 || Binsbein 2&lt;br /&gt;
|-&lt;br /&gt;
| GACR0B3 || UIGACHBIN3 || Binsbein 3&lt;br /&gt;
|-&lt;br /&gt;
| GACRGB1 || UIGACHBBUL || B.B. Ultra&lt;br /&gt;
|-&lt;br /&gt;
| GACODG1 || UIGACHPOCH || Pochi&lt;br /&gt;
|-&lt;br /&gt;
| GACODG2 || UIGACHJOHN || John&lt;br /&gt;
|-&lt;br /&gt;
| GACODG3 || UIGACHKELL || Kelly&lt;br /&gt;
|-&lt;br /&gt;
| GACOCT2 || UIGACHKURO || Kuro&lt;br /&gt;
|-&lt;br /&gt;
| GACOCAT || UIGACHTORA || Tora&lt;br /&gt;
|-&lt;br /&gt;
| GACO1SH || UIGACHBIGR || Big Robin&lt;br /&gt;
|-&lt;br /&gt;
| GACOKSH || UIGACHLITR || Little Robin&lt;br /&gt;
|-&lt;br /&gt;
| GACOOSH || UIGACHROBI || Robins&lt;br /&gt;
|-&lt;br /&gt;
| GACO1IR || UIGACHBIGP || Big Philip&lt;br /&gt;
|-&lt;br /&gt;
| GACOKIR || UIGACHLITP || Little Philip&lt;br /&gt;
|-&lt;br /&gt;
| GACOOIR || UIGACHPHIL || Philips&lt;br /&gt;
|-&lt;br /&gt;
| GACO1HA || UIGACHCHIP || Chip&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA2 || UIGACHRAP0 || Rap&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA3 || UIGACHPOP0 || Pop&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA4 || UIGACHPIP0 || Pip&lt;br /&gt;
|-&lt;br /&gt;
| GACO1YG || UIGACHMARY || Mary&lt;br /&gt;
|-&lt;br /&gt;
| GACO1US || UIGACHPYON || Pyonta&lt;br /&gt;
|-&lt;br /&gt;
| GACRMYU || UIGACHMYAU || Myau&lt;br /&gt;
|-&lt;br /&gt;
| GACRCKN || UIGACHCHIC || Chicken Leg&lt;br /&gt;
|-&lt;br /&gt;
| GACRALF || UIGACHCHAO || Chao &amp;amp; Pian&lt;br /&gt;
|-&lt;br /&gt;
| GACRRIS || UIGACHRIST || Ristar&lt;br /&gt;
|-&lt;br /&gt;
| GACRARX || UIGACHALEX || Alex Kidd&lt;br /&gt;
|-&lt;br /&gt;
| GACR0OP || UIGACHOPAO || Opa-opa&lt;br /&gt;
|-&lt;br /&gt;
| GACR0O2 || UIGACHJOPA || Jet Opa-opa&lt;br /&gt;
|-&lt;br /&gt;
| GACRPOP || UIGACHPOPP || Poppors&lt;br /&gt;
|-&lt;br /&gt;
| GACRCOB || UIGACHCOBA || Goba Beach&lt;br /&gt;
|-&lt;br /&gt;
| GACRIDA || UIGACHAIDA || Aida II&lt;br /&gt;
|-&lt;br /&gt;
| GACRSHP || UIGACHSHOP || Shop&lt;br /&gt;
|-&lt;br /&gt;
| GACR016 || UIGACHHBO1 || Heavy Bomb 1&lt;br /&gt;
|-&lt;br /&gt;
| GACK66B || UIGACHHBO2 || Heavy Bomb 2&lt;br /&gt;
|-&lt;br /&gt;
| GACK66R || UIGACHHBO3 || Heavy Bomb 3&lt;br /&gt;
|-&lt;br /&gt;
| GACRMOB || UIGACHMOBO || Mobo&lt;br /&gt;
|-&lt;br /&gt;
| GACRROB || UIGACHROBO || Robo&lt;br /&gt;
|-&lt;br /&gt;
| GACRBON || UIGACHBONA || Bonanza Brothers&lt;br /&gt;
|-&lt;br /&gt;
| GACH5BK || UIGACHMOTO || Motor Scooter&lt;br /&gt;
|-&lt;br /&gt;
| KAB02FS || UIGACHDELI || Delivery Moped&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K2 || UIGACHCOU1 || Coupe 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K3 || UIGACHCOU2 || Coupe 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K7 || UIGACHCOU3 || Coupe 3&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K8 || UIGACHCOU4 || Coupe 4&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K9 || UIGACHCOU5 || Coupe 5&lt;br /&gt;
|-&lt;br /&gt;
| KABK6DY || UIGACHHORN || Hornet&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K1 || UIGACHWAG1 || Wagon 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K4 || UIGACHWAG2 || Wagon 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K5 || UIGACHWAG3 || Wagon 3&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K6 || UIGACHWAG4 || Wagon 4&lt;br /&gt;
|-&lt;br /&gt;
| GACGTRX || UIGACHTRU1 || Truck 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1T1 || UIGACHTRU2 || Truck 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1T2 || UIGACHTRU3 || Truck 3&lt;br /&gt;
|-&lt;br /&gt;
| GACH5TK || UIGACHTRU4 || Truck 4&lt;br /&gt;
|-&lt;br /&gt;
| GACH5TR || UIGACHHOTD || Hot Dog Truck&lt;br /&gt;
|-&lt;br /&gt;
| GACS5BS || UIGACHBUS0 || Bus&lt;br /&gt;
|-&lt;br /&gt;
| GACO1FO || UIGACHFORK || Forklift&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N1 || UIGACHFOR1 || Forklift No.1&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N2 || UIGACHFOR2 || Forklift No.2&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N3 || UIGACHFOR3 || Forklift No.3&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N4 || UIGACHFOR4 || Forklift No.4&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N5 || UIGACHFOR5 || Forklift No.5&lt;br /&gt;
|-&lt;br /&gt;
| GACS5FR || UIGACHFORR || Forklift Red&lt;br /&gt;
|-&lt;br /&gt;
| GACS5FB || UIGACHFORB || Forklift Blue&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KU || UIGACHCRAN || Crane&lt;br /&gt;
|-&lt;br /&gt;
| GACGSHE || UIGACHSHEN || Shenmue container&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KO || UIGACHCONT || Container&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KB || UIGACHWOCR || Wooden Crate&lt;br /&gt;
|-&lt;br /&gt;
| GACH5IK || UIGACHANCH || Anchor&lt;br /&gt;
|-&lt;br /&gt;
| GACO1FE || UIGACHFERR || Ferry&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KJ || UIGACHSTEE || Steering Wheel&lt;br /&gt;
|-&lt;br /&gt;
| GACH5UK || UIGACHFLOA || Float&lt;br /&gt;
|-&lt;br /&gt;
| GACGXBN || UIGACHXBUT || X Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGYBN || UIGACHYBUT || Y Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGABN || UIGACHABUT || A Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGBBN || UIGACHBBUT || B Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGCRY || UIGACHCHER || Cherry&lt;br /&gt;
|-&lt;br /&gt;
| GACH5JK || UIGACHMJUK || Mini Jukebox&lt;br /&gt;
|-&lt;br /&gt;
| GACH5SL || UIHACHMSLO || Mini Slot Game&lt;br /&gt;
|-&lt;br /&gt;
| GACM400 || UIGACHMQTT || Mini QTE Title&lt;br /&gt;
|-&lt;br /&gt;
| GACGSPH || UIGACHMHAR || Mini Harrier&lt;br /&gt;
|-&lt;br /&gt;
| GACS5HG || UIGACHMHAO || Mini Hang-On&lt;br /&gt;
|-&lt;br /&gt;
| GACG360 || UIGACHR360 || R-360&lt;br /&gt;
|-&lt;br /&gt;
| GACGDT1 || UIGACHMDAR || Mini Darts&lt;br /&gt;
|-&lt;br /&gt;
| GACS5EQ || UIGACHMQTE || Mini QTE&lt;br /&gt;
|-&lt;br /&gt;
| GACGBIR || UIGACHMPOO || Mini Pool&lt;br /&gt;
|-&lt;br /&gt;
| SYOGMD1 || UIGACHMATS || Matsuyama Prize&lt;br /&gt;
|-&lt;br /&gt;
| SYOGMD5 || UIGACHMITS || Mitsuzuka Prize&lt;br /&gt;
|-&lt;br /&gt;
| SYOGSH0 || UIGACHHATO || Harrier Token&lt;br /&gt;
|-&lt;br /&gt;
| SYOGHG0 || UIGACHHAOT || Hang-On Token&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6RE || UIGACHBAL1 || Ball 1&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6BR || UIGACHBAL2 || Ball 2&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6YE || UIGACHBAL3 || Ball 3&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6WH || UIGACHDIC1 || Dice 1&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6BK || UIGACHDIC2 || Dice 2&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6RE || UIGACHDIC3 || Dice 3&lt;br /&gt;
|-&lt;br /&gt;
| DENI2T1 || UIGACHASB0 || A Size Battery&lt;br /&gt;
|-&lt;br /&gt;
| DENI2T3 || UIGACHAAAB || AAA Size Battery&lt;br /&gt;
|-&lt;br /&gt;
| MATI200 || UIGACHBOM0 || Box of Matches&lt;br /&gt;
|-&lt;br /&gt;
| RMP02H1 || UIGACHLIBU || Light Bulb&lt;br /&gt;
|-&lt;br /&gt;
| HNGS200 || UIGACHHAON || Hang-On&lt;br /&gt;
|-&lt;br /&gt;
| SPHS200 || UIGACHSPHA || Space Harrier&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2A1 || UIGACH2AK1 || VF2 Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2A2 || UIGACH2AK2 || VF2 Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2P1 || UIGACH2PA1 || VF2 Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2P2 || UIGACH2PA2 || VF2 Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLU1 || UIGACH2LA1 || VF2 Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLU2 || UIGACH2LA2 || VF2 Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASWF1 || UIGACH2WO1 || VF2 Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASWF2 || UIGACH2WO2 || VF2 Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASJF1 || UIGACH2JE1 || VF2 Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASJF2 || UIGACH2JE2 || VF2 Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASKG1 || UIGACH2KA1 || VF2 Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASKG2 || UIGACH2KA2 || VF2 Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSR1 || UIGACH2SA1 || VF2 Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSR2 || UIGACH2SA2 || VF2 Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2J1 || UIGACH2JA1 || VF2 Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2J2 || UIGACH2JA2 || VF2 Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSN1 || UIGACH2SD1 || VF2 Shun Di 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSN2 || UIGACH2SD2 || VF2 Shun Di 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLN1 || UIGACH2LI1 || VF2 Lion 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLN2 || UIGACH2LI2 || VF2 Lion 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRDUC || UIGACHKDC0 || Kids Dural C&lt;br /&gt;
|-&lt;br /&gt;
| 7GATOUT || UIGACHOUTR || Outrun Toy&lt;br /&gt;
|-&lt;br /&gt;
| 7GAHF14 || UIGACHF14X || F14-XX&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR1 || UIGACHASCO || Asphalt Cowboy&lt;br /&gt;
|-&lt;br /&gt;
| 4GA9TR2 || UIGACHHICA || Highway Cat&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR3 || UIGACHLOHO || Long Horn&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR4 || UIGACHSTLI || Stream Line&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR5 || UIGACHNIPP || Nihonmaru&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH1 || UIGACHTEHA || Texas Hawk&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH2 || UIGACHWIRO || Wild Rose&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH3 || UIGACHMABU || Mad Bull&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH4 || UIGACHMOLI || Moon Light&lt;br /&gt;
|-&lt;br /&gt;
| 5GARJAY || UIGACHJAY0 || Jay&lt;br /&gt;
|-&lt;br /&gt;
| 5GASALN || UIGACHALAI || Alain&lt;br /&gt;
|-&lt;br /&gt;
| 5GASLNA || UIGACHLINA || Lina&lt;br /&gt;
|-&lt;br /&gt;
| 5GASTRN || UIGACHTALO || Talon&lt;br /&gt;
|-&lt;br /&gt;
| 5GASTRS || UIGACHTERE || Tereshkova&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS2 || UIGACHKATE || Kate&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS4 || UIGACHMAT0 || Mat&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS5 || UIGACHMAX0 || Max&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS6 || UIGACHRYAN || Ryan&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS3 || UIGACHSPIK || Spike&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS1 || UIGACHYUKI || Yuki&lt;br /&gt;
|-&lt;br /&gt;
| 2GARTEM || UIGACHTEMJ || Temjin&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGTM1 || UIGACHTMPR || Temjin Prototype&lt;br /&gt;
|-&lt;br /&gt;
| 2GAETE1 || UIGACH1080 || 10/80&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFGR1 || UIGACHGRYS || Grys-vok&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGST1 || UIGACHSTEI || Stein-vok&lt;br /&gt;
|-&lt;br /&gt;
| 2GAEBO1 || UIGACHBABD || Bal-Bados&lt;br /&gt;
|-&lt;br /&gt;
| 2GACBA1 || UIGACHBAKE || Bal-Keros&lt;br /&gt;
|-&lt;br /&gt;
| 2GABBR1 || UIGACHBABR || Bal-Baros&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE1 || UIGACHFYDN || Fei-Yen DNA&lt;br /&gt;
|-&lt;br /&gt;
| 2GAEAM1 || UIGACHANGE || Angelan&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGAS1 || UIGACHAPHS || Apharmd S&lt;br /&gt;
|-&lt;br /&gt;
| 2GADAB1 || UIGACHAPHB || Apharmd B&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFAC1 || UIGACHAPHC || Apharmd C&lt;br /&gt;
|-&lt;br /&gt;
| 2GABCY1 || UIGACHCYTH || Cypher&lt;br /&gt;
|-&lt;br /&gt;
| 2GADDO1 || UIGACHDORD || Dordray&lt;br /&gt;
|-&lt;br /&gt;
| 2GADSP1 || UIGACHSPEC || Specianeff&lt;br /&gt;
|-&lt;br /&gt;
| 2GABRA1 || UIGACHRAID || Raiden&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE2 || UIGACHFYRN || Fei-Yen Rna&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE3 || UIGACHRYHY || Fei-Yen Hyper&lt;br /&gt;
|-&lt;br /&gt;
| 2GACAJ1 || UIGACHAJIM || Ajim&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFBT1 || UIGACHBRAD || Bradtos&lt;br /&gt;
|-&lt;br /&gt;
| 2GARTAN || UIGACHTANG || Tangram&lt;br /&gt;
|-&lt;br /&gt;
| 6GA1KEJ || UIGACHFLTR || Flame Tree&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5000 || UIGACHLIHS || Lighthouse&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5001 || UIGACHBOAT || Boat&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5003 || UIGACHCHVI || Chinese Violin&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5002 || UIGACHKOTO || Koto&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAJET || UIGACHLRJ0 || Long Range Jet&lt;br /&gt;
|-&lt;br /&gt;
| 6GATCHN || UIGACHCHSW || Chainsaw&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAKEN || UIGACHCHBR || Chinese Broadsword&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ1 || UIGACHSNTO || Snake Tortoise&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ3 || UIGACHWHTI || White Tiger&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ4 || UIGACHPHOE || Phoenix&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ2 || UIGACHBLDR || Blue Dragon&lt;br /&gt;
|-&lt;br /&gt;
| NINT2AF || UIGACHAFTO || After Burner II Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2OR || UIGACHOUTO || OutRun Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2SP || UIGACHHAT2 || Space Harrier Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2HG || UIGACHHOT2 || Hang-On Token&lt;br /&gt;
|-&lt;br /&gt;
| 003K2SL || UIGACHPR31 || 3,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 010K2SL || UIGACHPR11 || 10,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 050K2SL || UIGACHPR51 || 50,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 200K2SL || UIGACHPR21 || 200,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 500K2SL || UIGACHPR52 || 500,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 001M2SL || UIGACHPR12 || 1,000,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| AFBR701 || UIGACHMIAB || Mini After Burner&lt;br /&gt;
|-&lt;br /&gt;
| OUTR701 || UIGACHMIOU || Mini OutRun&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2GR || UIGACHGRST || Green Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2RE || UIGACHREST || Red Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2YE || UIGACHYEST || Yellow Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2PP || UIGACHPUST || Purple Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2BL || UIGACHBLST || Blue Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2CL || UIGACHTRST || Transparent Stone&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW3 || UIGACHMOWO || Moon Wolf&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW2 || UIGACHVAMP || Vampire&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG2 || UIGACHWING || Wing&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW1 || UIGACHJACK || Jackal&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHM1 || UIGACHMUEC || Muecas&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHS1 || UIGACHSCOR || Scorpion&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG1 || UIGACHKING || King&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHD1 || UIGACHDRAG || Dragon&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHK1 || UIGACHHELM || Helm&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHR1 || UIGACHROSE || Rose&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHH1 || UIGACHHEAR || Heart&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG3 || UIGACHNOSM || No Smoking&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Photos ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MapItems ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MoveItems ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1SJ || UISKILTWBL || Twin Blades&lt;br /&gt;
|-&lt;br /&gt;
| MKIS101 || UISKILSHRE || Shadow Reaper&lt;br /&gt;
|-&lt;br /&gt;
| MKIS103 || UISKILSTAR || Stab Armor&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1HE || UISKILTSL0 || Twin Swallow Leap&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1TG || UISKILMUSP || Mud Spider&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1SK || UISKILRIFL || Rising Flash&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1CS || UISKILCRCY || Crawl Cyclone&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1HZ || UISKILTIST || Tiger Storm&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1OB || UISKILABF0 || Arm Break Fire&lt;br /&gt;
|-&lt;br /&gt;
| MKIS104 || UISKILPOSC || Poetry Scroll&lt;br /&gt;
|-&lt;br /&gt;
| MKIS105 || UISKILMYSC || Mysterious Scroll&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2KR || UISKILDRSP || Dragon Spin&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2JS || UISKILSECO || Serpent Coil&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2DH || UISKILRFS0 || Rear Foot Sweep&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SK || UISKILDIWI || Diagonal Wipe&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SH || UISKILOBSL || Oblique Slam&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SS || UISKILTPT0 || Twin Palm Thrust&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2BT || UISKILHOKI || Horseshoe Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RH || UISKILMACO || Mantis Combo&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2JH || UISKILSTST || Stepping Strike&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SN || UISKILOAK0 || Oblique Air Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2FS || UISKILHESW || Heel Sweep&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2HE || UISKILMRD0 || Monkey Roll Drop&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RS || UISKILMAFI || Machinegun Fist&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RT || UISKILDSK0 || Double Storm Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZKM2ES || UISKILDETR || Demon's Triangle&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PawnItems ==&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=648</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=648"/>
		<updated>2024-04-04T23:50:30Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* Useful Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&amp;lt;strong&amp;gt;Welcome to the Wulinshu Wiki!&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Wulinshu Wiki focuses on the research and documentation of the Shenmue I &amp;amp; II HD ports by [https://d3tltd.com/ d3t].&lt;br /&gt;
&lt;br /&gt;
[[File:Shenmue I Logo.png|thumb|left|link=https://wulinshu.com/wiki/index.php/Category:Shenmue]][[File:Shenmue II Logo.png|thumb|right|link=https://wulinshu.com/wiki/index.php/Category:Shenmue_II]] &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
=== Useful Links ===&lt;br /&gt;
==== [[:Category:Runtime|Runtime]] ====&lt;br /&gt;
* [[:Category:Memory Addresses|Memory Addresses]]&lt;br /&gt;
** [[Memory Addresses (SM1)]]&lt;br /&gt;
** [[Memory Addresses (SM2)]]&lt;br /&gt;
** [[Function Memory Addresses (SM1)]]&lt;br /&gt;
** [[Function Memory Addresses (SM2)]]&lt;br /&gt;
* [[:Category:Text References|Text References]]&lt;br /&gt;
** [[Text References (SM1)]]&lt;br /&gt;
** [[Text References (SM2)]]&lt;br /&gt;
* [[:Category:Tasks|Tasks]]&lt;br /&gt;
** [[:Category:Tasks (SM1)|Tasks (SM1)]]&lt;br /&gt;
** [[:Category:Tasks (SM2)|Tasks (SM2)]]&lt;br /&gt;
* [[:Category:Structs|Structs]]&lt;br /&gt;
** [[:Category:Structs (SM1)|Structs (SM1)]]&lt;br /&gt;
** [[:Category:Structs (SM2)|Structs (SM2)]]&lt;br /&gt;
&lt;br /&gt;
==== [[HLib]] ====&lt;br /&gt;
* [[Task Queue System]]&lt;br /&gt;
* [[Memory Management (USE/fREe)]]&lt;br /&gt;
* [[Shenmue Script]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:d3t|d3t]] ====&lt;br /&gt;
* [[Model Override]]&lt;br /&gt;
* [[Texture Override]]&lt;br /&gt;
* [[Asset Remapping]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:Files|Files]] ====&lt;br /&gt;
* [[:Category:Containers|Containers]]&lt;br /&gt;
** [[AFS]]&lt;br /&gt;
** [[IDX]]&lt;br /&gt;
** [[PKF]]&lt;br /&gt;
** [[PKS]]&lt;br /&gt;
** [[SPR]]&lt;br /&gt;
* [[:Category:Map|Map]]&lt;br /&gt;
** [[MAPINFO]]&lt;br /&gt;
** [[:Category:Map_IDs|Map IDs]]&lt;br /&gt;
* [[:Category:Models|Models]]&lt;br /&gt;
** [[Models (SM2)]]&lt;br /&gt;
** [[MT5]]&lt;br /&gt;
** [[MT7]]&lt;br /&gt;
* [[:Category:Animations|Animations]]&lt;br /&gt;
** [[MOTN]]&lt;br /&gt;
* [[:Category:Textures|Textures]]&lt;br /&gt;
** [[PVR]]&lt;br /&gt;
* [[:Category:Subtitles|Subtitles]]&lt;br /&gt;
** [[SUB]]&lt;br /&gt;
* [[:Category:Music|Music]]&lt;br /&gt;
** [[SND]]&lt;br /&gt;
** [[Music Tracks (WS)]]&lt;br /&gt;
** [[Music Tracks (SM1)]]&lt;br /&gt;
** [[Music Tracks (SM2)]]&lt;br /&gt;
** [[Music Tracks (SM3)]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Items_(SM2)&amp;diff=647</id>
		<title>Items (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Items_(SM2)&amp;diff=647"/>
		<updated>2024-04-04T23:49:53Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Models]]&lt;br /&gt;
Items are split into 6 categories: [[#KeyItems|KeyItems]], [[#CapsuleToys|CapsuleToys]], [[#Photos|Photos]], [[#MapItems|MapItems]], [[#MoveItems|MoveItems]] and [[#PawnItems|PawnItems]].&lt;br /&gt;
&lt;br /&gt;
Each category contains the items which the player can hold in their inventory. &lt;br /&gt;
&lt;br /&gt;
In total, there are 374 items across all 6 categories.&lt;br /&gt;
&lt;br /&gt;
== KeyItems ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
|  || Overall Map || &lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMNOTE || Notebook&lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMTOKE || Token(s)&lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMWATC || Watch&lt;br /&gt;
|-&lt;br /&gt;
| TUBA1T1 || UIITEMSWHA || Sword Handguard&lt;br /&gt;
|-&lt;br /&gt;
| PNX02H6 || UIITEMPHMI || Phoenix Mirror&lt;br /&gt;
|-&lt;br /&gt;
| LMAL200 || UIITEMCIL0 || Chen Intro Letter&lt;br /&gt;
|-&lt;br /&gt;
| OMMR1M1 || UIITEMAMUL || Amulet&lt;br /&gt;
|-&lt;br /&gt;
| HAFK100 || UIITEMWHLE || White Leaf&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHHV || UIITEMHEZI || Heavens Lighter&lt;br /&gt;
|-&lt;br /&gt;
| MAGA2WH || UIITEMCSB0 || Comma Shaped Bead&lt;br /&gt;
|-&lt;br /&gt;
| QDKJASI || UIITEMFDB0 || Four Divine Beasts&lt;br /&gt;
|-&lt;br /&gt;
| IKSM2OM || UIITEMHECO || Heads Coin&lt;br /&gt;
|-&lt;br /&gt;
| IKSM2UR || UIITEMTACO || Tails Coin&lt;br /&gt;
|-&lt;br /&gt;
| OMMRHH1 || UIITEMXUAM || Xun's Amulet&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2GL || UIITEMBGM0 || Big Gold Medal&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2SV || UIITEMBSM0 || Big Silver Medal&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2CP || UIITEMBBM0 || Big Bronze Medal&lt;br /&gt;
|-&lt;br /&gt;
| LETT1L1 || UIITEMLTF0 || Letter to Father&lt;br /&gt;
|-&lt;br /&gt;
| TMEM200 || UIITEMMYPA || Mysterious Paper&lt;br /&gt;
|-&lt;br /&gt;
| TMEM200 || UIITEMCHSI || Chawan Sign&lt;br /&gt;
|-&lt;br /&gt;
| WS00ALE || UIITEMZOLE || Zongquan Letter&lt;br /&gt;
|-&lt;br /&gt;
| TYOM28J || UIITEMDJD0 || Dou Jiang Diner&lt;br /&gt;
|-&lt;br /&gt;
| BSKM2HO || UIITEMCOGH || Come Over Guest House&lt;br /&gt;
|-&lt;br /&gt;
| BKOI200 || UIITEMMMP0 || Man Mo Park&lt;br /&gt;
|-&lt;br /&gt;
| TOSM29J || UIITEMMMP0 || Man Mo Park&lt;br /&gt;
|-&lt;br /&gt;
| QEME203 || UIITEMMCB0 || Moon Child Bldg.&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN5 || UIITEMWHTI || White Tiger&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN3 || UIITEMSNTO || Snake Tortoise&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN1 || UIITEMBLDR || Blue Dragon&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN4 || UIITEMFISH || Fish&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN7 || UIITEMROOS || Rooster&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN0 || UIITEMPHOE || Phoenix&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN6 || UIITEMWIBO || Wild Boar&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN8 || UIITEMGOAT || Goat&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK1 || UIITEMEK29 || EV Key 29&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK2 || UIITEMEK10 || EV Key 10&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK3 || UIITEMEK46 || EV Key 46&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK4 || UIITEMEK09 || EV Key 9&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK5 || UIITEMEK18 || EV Key 18&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK6 || UIITEMEK21 || EV Key 21&lt;br /&gt;
|-&lt;br /&gt;
| AHIR2SN || UIITEMDUCK || Duck&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CapsuleToys ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
| GACIAK1 || UIGACHAKI1 || Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIAK2 || UIGACHAKI2 || Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOJK1 || UIGACHJAC1 || Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOJK2 || UIGACHJAC2 || Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOSA1 || UIGACHSAR1 || Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOSA2 || UIGACHSAR2 || Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOLA1 || UIGACHLAU1 || Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOLA2 || UIGACHLAU2 || Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOPA1 || UIGACHPAI1 || Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOPA2 || UIGACHPAI2 || Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGWF1 || UIGACHWOL1 || Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGWF2 || UIGACHWOL2 || Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJF1 || UIGACHJEF1 || Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJF2 || UIGACHJEF2 || Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIKA1 || UIGACHKAG1 || Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIKA2 || UIGACHKAG2 || Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRDR1 || UIGACHDURS || Dural Silver&lt;br /&gt;
|-&lt;br /&gt;
| GACRDR2 || UIGACHDURG || Dural Gold&lt;br /&gt;
|-&lt;br /&gt;
| GACM401 || UIGACHWOOD || Wooden man&lt;br /&gt;
|-&lt;br /&gt;
| GACRREN || UIGACHRENT || Rent-A-Hero&lt;br /&gt;
|-&lt;br /&gt;
| GACK6TZ || UIGACHTRYZ || Try-Z&lt;br /&gt;
|-&lt;br /&gt;
| GACRPAN || UIGACHSOLO || Solo Wing&lt;br /&gt;
|-&lt;br /&gt;
| GACIAKA || UIGACHKAK1 || Kids Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIAKB || UIGACHKAK2 || Kids Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJKA || UIGACHKJA1 || Kids Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJKB || UIGACHKJA2 || Kids Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOSAA || UIGACHKSA1 || Kids Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOSAB || UIGACHKSA2 || Kids Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOLAA || UIGACHKLA1 || Kids Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOLAB || UIGACHKLA2 || Kids Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOPAA || UIGACHKPA1 || Kids Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOPAB || UIGACHKPA2 || Kids Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIWLA || UIGACHKWO1 || Kids Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIWLB || UIGACHKWO2 || Kids Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJFA || UIGACHKJE1 || Kids Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJFB || UIGACHKJE2 || Kids Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIKAA || UIGACHKKA1 || Kids Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIKAB || UIGACHKKA2 || Kids Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGSNA || UIGACHKSH1 || Kids Shun Di 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGSNB || UIGACHKSH2 || Kids Shun Di 2&lt;br /&gt;
|-&lt;br /&gt;
| GACILIA || UIGACHKLI1 || Kids Lion 1&lt;br /&gt;
|-&lt;br /&gt;
| GACILIB || UIGACHKLI2 || Kids Lion 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIDUA || UIGACHKDUS || Kids Dural S&lt;br /&gt;
|-&lt;br /&gt;
| GACIDUB || UIGACHKDUG || Kids Dural G&lt;br /&gt;
|-&lt;br /&gt;
| GACRNT1 || UIGACHNIG1 || NiGHTS 1&lt;br /&gt;
|-&lt;br /&gt;
| GACRNT2 || UIGACHNIG2 || NiGHTS 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRSO1 || UIGACHSON1 || Sonic 1&lt;br /&gt;
|-&lt;br /&gt;
| GACRSO2 || UIGACHSON2 || Sonic 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRSSC || UIGACHSUSO || Super Sonic&lt;br /&gt;
|-&lt;br /&gt;
| GACRTL1 || UIGACHTAIL || Tails&lt;br /&gt;
|-&lt;br /&gt;
| GACRNUC || UIGACHKNUC || Knuckles&lt;br /&gt;
|-&lt;br /&gt;
| GACRBAK || UIGACHBARK || Berk&lt;br /&gt;
|-&lt;br /&gt;
| GACRBIN || UIGACHBEAN || Bean&lt;br /&gt;
|-&lt;br /&gt;
| GACRFNG || UIGACHFANG || Fang&lt;br /&gt;
|-&lt;br /&gt;
| GACRAMY || UIGACHAMY0 || Amy&lt;br /&gt;
|-&lt;br /&gt;
| GACRESP || UIGACHESPI || Espio&lt;br /&gt;
|-&lt;br /&gt;
| GACRMET || UIGACHMESO || Metal Sonic&lt;br /&gt;
|-&lt;br /&gt;
| GACREGG || UIGACHEGGM || Eggman&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HO || UIGACHHAO1 || Hang-On 1&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HH || UIGACHHAO2 || Hang-On 2&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HY || UIGACHHAO3 || Hang-On 3&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HB || UIGACHHAO4 || Hang-On 4&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HG || UIGACHHAO5 || Hang-On 5&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HK || UIGACHHAOG || Hang-On G&lt;br /&gt;
|-&lt;br /&gt;
| GACK6SP || UIGACHSPHA || Space Harrier&lt;br /&gt;
|-&lt;br /&gt;
| GACRLOP || UIGACHRUBE || Ruber&lt;br /&gt;
|-&lt;br /&gt;
| GACR0BN || UIGACHBIN1 || Binsbein 1&lt;br /&gt;
|-&lt;br /&gt;
| GACR0B2 || UIGACHBIN2 || Binsbein 2&lt;br /&gt;
|-&lt;br /&gt;
| GACR0B3 || UIGACHBIN3 || Binsbein 3&lt;br /&gt;
|-&lt;br /&gt;
| GACRGB1 || UIGACHBBUL || B.B. Ultra&lt;br /&gt;
|-&lt;br /&gt;
| GACODG1 || UIGACHPOCH || Pochi&lt;br /&gt;
|-&lt;br /&gt;
| GACODG2 || UIGACHJOHN || John&lt;br /&gt;
|-&lt;br /&gt;
| GACODG3 || UIGACHKELL || Kelly&lt;br /&gt;
|-&lt;br /&gt;
| GACOCT2 || UIGACHKURO || Kuro&lt;br /&gt;
|-&lt;br /&gt;
| GACOCAT || UIGACHTORA || Tora&lt;br /&gt;
|-&lt;br /&gt;
| GACO1SH || UIGACHBIGR || Big Robin&lt;br /&gt;
|-&lt;br /&gt;
| GACOKSH || UIGACHLITR || Little Robin&lt;br /&gt;
|-&lt;br /&gt;
| GACOOSH || UIGACHROBI || Robins&lt;br /&gt;
|-&lt;br /&gt;
| GACO1IR || UIGACHBIGP || Big Philip&lt;br /&gt;
|-&lt;br /&gt;
| GACOKIR || UIGACHLITP || Little Philip&lt;br /&gt;
|-&lt;br /&gt;
| GACOOIR || UIGACHPHIL || Philips&lt;br /&gt;
|-&lt;br /&gt;
| GACO1HA || UIGACHCHIP || Chip&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA2 || UIGACHRAP0 || Rap&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA3 || UIGACHPOP0 || Pop&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA4 || UIGACHPIP0 || Pip&lt;br /&gt;
|-&lt;br /&gt;
| GACO1YG || UIGACHMARY || Mary&lt;br /&gt;
|-&lt;br /&gt;
| GACO1US || UIGACHPYON || Pyonta&lt;br /&gt;
|-&lt;br /&gt;
| GACRMYU || UIGACHMYAU || Myau&lt;br /&gt;
|-&lt;br /&gt;
| GACRCKN || UIGACHCHIC || Chicken Leg&lt;br /&gt;
|-&lt;br /&gt;
| GACRALF || UIGACHCHAO || Chao &amp;amp; Pian&lt;br /&gt;
|-&lt;br /&gt;
| GACRRIS || UIGACHRIST || Ristar&lt;br /&gt;
|-&lt;br /&gt;
| GACRARX || UIGACHALEX || Alex Kidd&lt;br /&gt;
|-&lt;br /&gt;
| GACR0OP || UIGACHOPAO || Opa-opa&lt;br /&gt;
|-&lt;br /&gt;
| GACR0O2 || UIGACHJOPA || Jet Opa-opa&lt;br /&gt;
|-&lt;br /&gt;
| GACRPOP || UIGACHPOPP || Poppors&lt;br /&gt;
|-&lt;br /&gt;
| GACRCOB || UIGACHCOBA || Goba Beach&lt;br /&gt;
|-&lt;br /&gt;
| GACRIDA || UIGACHAIDA || Aida II&lt;br /&gt;
|-&lt;br /&gt;
| GACRSHP || UIGACHSHOP || Shop&lt;br /&gt;
|-&lt;br /&gt;
| GACR016 || UIGACHHBO1 || Heavy Bomb 1&lt;br /&gt;
|-&lt;br /&gt;
| GACK66B || UIGACHHBO2 || Heavy Bomb 2&lt;br /&gt;
|-&lt;br /&gt;
| GACK66R || UIGACHHBO3 || Heavy Bomb 3&lt;br /&gt;
|-&lt;br /&gt;
| GACRMOB || UIGACHMOBO || Mobo&lt;br /&gt;
|-&lt;br /&gt;
| GACRROB || UIGACHROBO || Robo&lt;br /&gt;
|-&lt;br /&gt;
| GACRBON || UIGACHBONA || Bonanza Brothers&lt;br /&gt;
|-&lt;br /&gt;
| GACH5BK || UIGACHMOTO || Motor Scooter&lt;br /&gt;
|-&lt;br /&gt;
| KAB02FS || UIGACHDELI || Delivery Moped&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K2 || UIGACHCOU1 || Coupe 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K3 || UIGACHCOU2 || Coupe 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K7 || UIGACHCOU3 || Coupe 3&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K8 || UIGACHCOU4 || Coupe 4&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K9 || UIGACHCOU5 || Coupe 5&lt;br /&gt;
|-&lt;br /&gt;
| KABK6DY || UIGACHHORN || Hornet&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K1 || UIGACHWAG1 || Wagon 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K4 || UIGACHWAG2 || Wagon 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K5 || UIGACHWAG3 || Wagon 3&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K6 || UIGACHWAG4 || Wagon 4&lt;br /&gt;
|-&lt;br /&gt;
| GACGTRX || UIGACHTRU1 || Truck 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1T1 || UIGACHTRU2 || Truck 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1T2 || UIGACHTRU3 || Truck 3&lt;br /&gt;
|-&lt;br /&gt;
| GACH5TK || UIGACHTRU4 || Truck 4&lt;br /&gt;
|-&lt;br /&gt;
| GACH5TR || UIGACHHOTD || Hot Dog Truck&lt;br /&gt;
|-&lt;br /&gt;
| GACS5BS || UIGACHBUS0 || Bus&lt;br /&gt;
|-&lt;br /&gt;
| GACO1FO || UIGACHFORK || Forklift&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N1 || UIGACHFOR1 || Forklift No.1&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N2 || UIGACHFOR2 || Forklift No.2&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N3 || UIGACHFOR3 || Forklift No.3&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N4 || UIGACHFOR4 || Forklift No.4&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N5 || UIGACHFOR5 || Forklift No.5&lt;br /&gt;
|-&lt;br /&gt;
| GACS5FR || UIGACHFORR || Forklift Red&lt;br /&gt;
|-&lt;br /&gt;
| GACS5FB || UIGACHFORB || Forklift Blue&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KU || UIGACHCRAN || Crane&lt;br /&gt;
|-&lt;br /&gt;
| GACGSHE || UIGACHSHEN || Shenmue container&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KO || UIGACHCONT || Container&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KB || UIGACHWOCR || Wooden Crate&lt;br /&gt;
|-&lt;br /&gt;
| GACH5IK || UIGACHANCH || Anchor&lt;br /&gt;
|-&lt;br /&gt;
| GACO1FE || UIGACHFERR || Ferry&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KJ || UIGACHSTEE || Steering Wheel&lt;br /&gt;
|-&lt;br /&gt;
| GACH5UK || UIGACHFLOA || Float&lt;br /&gt;
|-&lt;br /&gt;
| GACGXBN || UIGACHXBUT || X Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGYBN || UIGACHYBUT || Y Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGABN || UIGACHABUT || A Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGBBN || UIGACHBBUT || B Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGCRY || UIGACHCHER || Cherry&lt;br /&gt;
|-&lt;br /&gt;
| GACH5JK || UIGACHMJUK || Mini Jukebox&lt;br /&gt;
|-&lt;br /&gt;
| GACH5SL || UIHACHMSLO || Mini Slot Game&lt;br /&gt;
|-&lt;br /&gt;
| GACM400 || UIGACHMQTT || Mini QTE Title&lt;br /&gt;
|-&lt;br /&gt;
| GACGSPH || UIGACHMHAR || Mini Harrier&lt;br /&gt;
|-&lt;br /&gt;
| GACS5HG || UIGACHMHAO || Mini Hang-On&lt;br /&gt;
|-&lt;br /&gt;
| GACG360 || UIGACHR360 || R-360&lt;br /&gt;
|-&lt;br /&gt;
| GACGDT1 || UIGACHMDAR || Mini Darts&lt;br /&gt;
|-&lt;br /&gt;
| GACS5EQ || UIGACHMQTE || Mini QTE&lt;br /&gt;
|-&lt;br /&gt;
| GACGBIR || UIGACHMPOO || Mini Pool&lt;br /&gt;
|-&lt;br /&gt;
| SYOGMD1 || UIGACHMATS || Matsuyama Prize&lt;br /&gt;
|-&lt;br /&gt;
| SYOGMD5 || UIGACHMITS || Mitsuzuka Prize&lt;br /&gt;
|-&lt;br /&gt;
| SYOGSH0 || UIGACHHATO || Harrier Token&lt;br /&gt;
|-&lt;br /&gt;
| SYOGHG0 || UIGACHHAOT || Hang-On Token&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6RE || UIGACHBAL1 || Ball 1&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6BR || UIGACHBAL2 || Ball 2&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6YE || UIGACHBAL3 || Ball 3&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6WH || UIGACHDIC1 || Dice 1&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6BK || UIGACHDIC2 || Dice 2&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6RE || UIGACHDIC3 || Dice 3&lt;br /&gt;
|-&lt;br /&gt;
| DENI2T1 || UIGACHASB0 || A Size Battery&lt;br /&gt;
|-&lt;br /&gt;
| DENI2T3 || UIGACHAAAB || AAA Size Battery&lt;br /&gt;
|-&lt;br /&gt;
| MATI200 || UIGACHBOM0 || Box of Matches&lt;br /&gt;
|-&lt;br /&gt;
| RMP02H1 || UIGACHLIBU || Light Bulb&lt;br /&gt;
|-&lt;br /&gt;
| HNGS200 || UIGACHHAON || Hang-On&lt;br /&gt;
|-&lt;br /&gt;
| SPHS200 || UIGACHSPHA || Space Harrier&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2A1 || UIGACH2AK1 || VF2 Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2A2 || UIGACH2AK2 || VF2 Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2P1 || UIGACH2PA1 || VF2 Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2P2 || UIGACH2PA2 || VF2 Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLU1 || UIGACH2LA1 || VF2 Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLU2 || UIGACH2LA2 || VF2 Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASWF1 || UIGACH2WO1 || VF2 Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASWF2 || UIGACH2WO2 || VF2 Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASJF1 || UIGACH2JE1 || VF2 Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASJF2 || UIGACH2JE2 || VF2 Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASKG1 || UIGACH2KA1 || VF2 Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASKG2 || UIGACH2KA2 || VF2 Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSR1 || UIGACH2SA1 || VF2 Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSR2 || UIGACH2SA2 || VF2 Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2J1 || UIGACH2JA1 || VF2 Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2J2 || UIGACH2JA2 || VF2 Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSN1 || UIGACH2SD1 || VF2 Shun Di 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSN2 || UIGACH2SD2 || VF2 Shun Di 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLN1 || UIGACH2LI1 || VF2 Lion 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLN2 || UIGACH2LI2 || VF2 Lion 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRDUC || UIGACHKDC0 || Kids Dural C&lt;br /&gt;
|-&lt;br /&gt;
| 7GATOUT || UIGACHOUTR || Outrun Toy&lt;br /&gt;
|-&lt;br /&gt;
| 7GAHF14 || UIGACHF14X || F14-XX&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR1 || UIGACHASCO || Asphalt Cowboy&lt;br /&gt;
|-&lt;br /&gt;
| 4GA9TR2 || UIGACHHICA || Highway Cat&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR3 || UIGACHLOHO || Long Horn&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR4 || UIGACHSTLI || Stream Line&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR5 || UIGACHNIPP || Nihonmaru&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH1 || UIGACHTEHA || Texas Hawk&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH2 || UIGACHWIRO || Wild Rose&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH3 || UIGACHMABU || Mad Bull&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH4 || UIGACHMOLI || Moon Light&lt;br /&gt;
|-&lt;br /&gt;
| 5GARJAY || UIGACHJAY0 || Jay&lt;br /&gt;
|-&lt;br /&gt;
| 5GASALN || UIGACHALAI || Alain&lt;br /&gt;
|-&lt;br /&gt;
| 5GASLNA || UIGACHLINA || Lina&lt;br /&gt;
|-&lt;br /&gt;
| 5GASTRN || UIGACHTALO || Talon&lt;br /&gt;
|-&lt;br /&gt;
| 5GASTRS || UIGACHTERE || Tereshkova&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS2 || UIGACHKATE || Kate&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS4 || UIGACHMAT0 || Mat&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS5 || UIGACHMAX0 || Max&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS6 || UIGACHRYAN || Ryan&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS3 || UIGACHSPIK || Spike&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS1 || UIGACHYUKI || Yuki&lt;br /&gt;
|-&lt;br /&gt;
| 2GARTEM || UIGACHTEMJ || Temjin&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGTM1 || UIGACHTMPR || Temjin Prototype&lt;br /&gt;
|-&lt;br /&gt;
| 2GAETE1 || UIGACH1080 || 10/80&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFGR1 || UIGACHGRYS || Grys-vok&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGST1 || UIGACHSTEI || Stein-vok&lt;br /&gt;
|-&lt;br /&gt;
| 2GAEBO1 || UIGACHBABD || Bal-Bados&lt;br /&gt;
|-&lt;br /&gt;
| 2GACBA1 || UIGACHBAKE || Bal-Keros&lt;br /&gt;
|-&lt;br /&gt;
| 2GABBR1 || UIGACHBABR || Bal-Baros&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE1 || UIGACHFYDN || Fei-Yen DNA&lt;br /&gt;
|-&lt;br /&gt;
| 2GAEAM1 || UIGACHANGE || Angelan&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGAS1 || UIGACHAPHS || Apharmd S&lt;br /&gt;
|-&lt;br /&gt;
| 2GADAB1 || UIGACHAPHB || Apharmd B&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFAC1 || UIGACHAPHC || Apharmd C&lt;br /&gt;
|-&lt;br /&gt;
| 2GABCY1 || UIGACHCYTH || Cypher&lt;br /&gt;
|-&lt;br /&gt;
| 2GADDO1 || UIGACHDORD || Dordray&lt;br /&gt;
|-&lt;br /&gt;
| 2GADSP1 || UIGACHSPEC || Specianeff&lt;br /&gt;
|-&lt;br /&gt;
| 2GABRA1 || UIGACHRAID || Raiden&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE2 || UIGACHFYRN || Fei-Yen Rna&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE3 || UIGACHRYHY || Fei-Yen Hyper&lt;br /&gt;
|-&lt;br /&gt;
| 2GACAJ1 || UIGACHAJIM || Ajim&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFBT1 || UIGACHBRAD || Bradtos&lt;br /&gt;
|-&lt;br /&gt;
| 2GARTAN || UIGACHTANG || Tangram&lt;br /&gt;
|-&lt;br /&gt;
| 6GA1KEJ || UIGACHFLTR || Flame Tree&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5000 || UIGACHLIHS || Lighthouse&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5001 || UIGACHBOAT || Boat&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5003 || UIGACHCHVI || Chinese Violin&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5002 || UIGACHKOTO || Koto&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAJET || UIGACHLRJ0 || Long Range Jet&lt;br /&gt;
|-&lt;br /&gt;
| 6GATCHN || UIGACHCHSW || Chainsaw&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAKEN || UIGACHCHBR || Chinese Broadsword&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ1 || UIGACHSNTO || Snake Tortoise&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ3 || UIGACHWHTI || White Tiger&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ4 || UIGACHPHOE || Phoenix&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ2 || UIGACHBLDR || Blue Dragon&lt;br /&gt;
|-&lt;br /&gt;
| NINT2AF || UIGACHAFTO || After Burner II Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2OR || UIGACHOUTO || OutRun Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2SP || UIGACHHAT2 || Space Harrier Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2HG || UIGACHHOT2 || Hang-On Token&lt;br /&gt;
|-&lt;br /&gt;
| 003K2SL || UIGACHPR31 || 3,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 010K2SL || UIGACHPR11 || 10,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 050K2SL || UIGACHPR51 || 50,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 200K2SL || UIGACHPR21 || 200,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 500K2SL || UIGACHPR52 || 500,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 001M2SL || UIGACHPR12 || 1,000,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| AFBR701 || UIGACHMIAB || Mini After Burner&lt;br /&gt;
|-&lt;br /&gt;
| OUTR701 || UIGACHMIOU || Mini OutRun&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2GR || UIGACHGRST || Green Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2RE || UIGACHREST || Red Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2YE || UIGACHYEST || Yellow Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2PP || UIGACHPUST || Purple Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2BL || UIGACHBLST || Blue Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2CL || UIGACHTRST || Transparent Stone&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW3 || UIGACHMOWO || Moon Wolf&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW2 || UIGACHVAMP || Vampire&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG2 || UIGACHWING || Wing&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW1 || UIGACHJACK || Jackal&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHM1 || UIGACHMUEC || Muecas&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHS1 || UIGACHSCOR || Scorpion&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG1 || UIGACHKING || King&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHD1 || UIGACHDRAG || Dragon&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHK1 || UIGACHHELM || Helm&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHR1 || UIGACHROSE || Rose&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHH1 || UIGACHHEAR || Heart&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG3 || UIGACHNOSM || No Smoking&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Photos ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MapItems ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MoveItems ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1SJ || UISKILTWBL || Twin Blades&lt;br /&gt;
|-&lt;br /&gt;
| MKIS101 || UISKILSHRE || Shadow Reaper&lt;br /&gt;
|-&lt;br /&gt;
| MKIS103 || UISKILSTAR || Stab Armor&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1HE || UISKILTSL0 || Twin Swallow Leap&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1TG || UISKILMUSP || Mud Spider&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1SK || UISKILRIFL || Rising Flash&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1CS || UISKILCRCY || Crawl Cyclone&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1HZ || UISKILTIST || Tiger Storm&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1OB || UISKILABF0 || Arm Break Fire&lt;br /&gt;
|-&lt;br /&gt;
| MKIS104 || UISKILPOSC || Poetry Scroll&lt;br /&gt;
|-&lt;br /&gt;
| MKIS105 || UISKILMYSC || Mysterious Scroll&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2KR || UISKILDRSP || Dragon Spin&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2JS || UISKILSECO || Serpent Coil&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2DH || UISKILRFS0 || Rear Foot Sweep&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SK || UISKILDIWI || Diagonal Wipe&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SH || UISKILOBSL || Oblique Slam&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SS || UISKILTPT0 || Twin Palm Thrust&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2BT || UISKILHOKI || Horseshoe Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RH || UISKILMACO || Mantis Combo&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2JH || UISKILSTST || Stepping Strike&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SN || UISKILOAK0 || Oblique Air Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2FS || UISKILHESW || Heel Sweep&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2HE || UISKILMRD0 || Monkey Roll Drop&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RS || UISKILMAFI || Machinegun Fist&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RT || UISKILDSK0 || Double Storm Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZKM2ES || UISKILDETR || Demon's Triangle&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PawnItems ==&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Items_(SM2)&amp;diff=646</id>
		<title>Items (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Items_(SM2)&amp;diff=646"/>
		<updated>2024-04-04T23:46:29Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created page with &amp;quot;Items are split into 6 categories: KeyItems, CapsuleToys, Photos, MapItems, MoveItems and PawnItems.  Each category contains the items which the player can hold in their inventory.   In total, there are 374 items across all 6 categories.  == KeyItems == {| class=&amp;quot;wikitable&amp;quot; ! Model Name !! Label !! Description |- |  || Overall Map ||  |- |  || UIITEMNOTE || Notebook |- |  || UIITEMTOKE...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Items are split into 6 categories: [[#KeyItems|KeyItems]], [[#CapsuleToys|CapsuleToys]], [[#Photos|Photos]], [[#MapItems|MapItems]], [[#MoveItems|MoveItems]] and [[#PawnItems|PawnItems]].&lt;br /&gt;
&lt;br /&gt;
Each category contains the items which the player can hold in their inventory. &lt;br /&gt;
&lt;br /&gt;
In total, there are 374 items across all 6 categories.&lt;br /&gt;
&lt;br /&gt;
== KeyItems ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
|  || Overall Map || &lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMNOTE || Notebook&lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMTOKE || Token(s)&lt;br /&gt;
|-&lt;br /&gt;
|  || UIITEMWATC || Watch&lt;br /&gt;
|-&lt;br /&gt;
| TUBA1T1 || UIITEMSWHA || Sword Handguard&lt;br /&gt;
|-&lt;br /&gt;
| PNX02H6 || UIITEMPHMI || Phoenix Mirror&lt;br /&gt;
|-&lt;br /&gt;
| LMAL200 || UIITEMCIL0 || Chen Intro Letter&lt;br /&gt;
|-&lt;br /&gt;
| OMMR1M1 || UIITEMAMUL || Amulet&lt;br /&gt;
|-&lt;br /&gt;
| HAFK100 || UIITEMWHLE || White Leaf&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHHV || UIITEMHEZI || Heavens Lighter&lt;br /&gt;
|-&lt;br /&gt;
| MAGA2WH || UIITEMCSB0 || Comma Shaped Bead&lt;br /&gt;
|-&lt;br /&gt;
| QDKJASI || UIITEMFDB0 || Four Divine Beasts&lt;br /&gt;
|-&lt;br /&gt;
| IKSM2OM || UIITEMHECO || Heads Coin&lt;br /&gt;
|-&lt;br /&gt;
| IKSM2UR || UIITEMTACO || Tails Coin&lt;br /&gt;
|-&lt;br /&gt;
| OMMRHH1 || UIITEMXUAM || Xun's Amulet&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2GL || UIITEMBGM0 || Big Gold Medal&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2SV || UIITEMBSM0 || Big Silver Medal&lt;br /&gt;
|-&lt;br /&gt;
| MEDA2CP || UIITEMBBM0 || Big Bronze Medal&lt;br /&gt;
|-&lt;br /&gt;
| LETT1L1 || UIITEMLTF0 || Letter to Father&lt;br /&gt;
|-&lt;br /&gt;
| TMEM200 || UIITEMMYPA || Mysterious Paper&lt;br /&gt;
|-&lt;br /&gt;
| TMEM200 || UIITEMCHSI || Chawan Sign&lt;br /&gt;
|-&lt;br /&gt;
| WS00ALE || UIITEMZOLE || Zongquan Letter&lt;br /&gt;
|-&lt;br /&gt;
| TYOM28J || UIITEMDJD0 || Dou Jiang Diner&lt;br /&gt;
|-&lt;br /&gt;
| BSKM2HO || UIITEMCOGH || Come Over Guest House&lt;br /&gt;
|-&lt;br /&gt;
| BKOI200 || UIITEMMMP0 || Man Mo Park&lt;br /&gt;
|-&lt;br /&gt;
| TOSM29J || UIITEMMMP0 || Man Mo Park&lt;br /&gt;
|-&lt;br /&gt;
| QEME203 || UIITEMMCB0 || Moon Child Bldg.&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN5 || UIITEMWHTI || White Tiger&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN3 || UIITEMSNTO || Snake Tortoise&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN1 || UIITEMBLDR || Blue Dragon&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN4 || UIITEMFISH || Fish&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN7 || UIITEMROOS || Rooster&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN0 || UIITEMPHOE || Phoenix&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN6 || UIITEMWIBO || Wild Boar&lt;br /&gt;
|-&lt;br /&gt;
| QDKJAN8 || UIITEMGOAT || Goat&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK1 || UIITEMEK29 || EV Key 29&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK2 || UIITEMEK10 || EV Key 10&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK3 || UIITEMEK46 || EV Key 46&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK4 || UIITEMEK09 || EV Key 9&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK5 || UIITEMEK18 || EV Key 18&lt;br /&gt;
|-&lt;br /&gt;
| QFIXZK6 || UIITEMEK21 || EV Key 21&lt;br /&gt;
|-&lt;br /&gt;
| AHIR2SN || UIITEMDUCK || Duck&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CapsuleToys ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
| GACIAK1 || UIGACHAKI1 || Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIAK2 || UIGACHAKI2 || Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOJK1 || UIGACHJAC1 || Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOJK2 || UIGACHJAC2 || Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOSA1 || UIGACHSAR1 || Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOSA2 || UIGACHSAR2 || Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOLA1 || UIGACHLAU1 || Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOLA2 || UIGACHLAU2 || Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOPA1 || UIGACHPAI1 || Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOPA2 || UIGACHPAI2 || Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGWF1 || UIGACHWOL1 || Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGWF2 || UIGACHWOL2 || Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJF1 || UIGACHJEF1 || Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJF2 || UIGACHJEF2 || Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIKA1 || UIGACHKAG1 || Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIKA2 || UIGACHKAG2 || Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRDR1 || UIGACHDURS || Dural Silver&lt;br /&gt;
|-&lt;br /&gt;
| GACRDR2 || UIGACHDURG || Dural Gold&lt;br /&gt;
|-&lt;br /&gt;
| GACM401 || UIGACHWOOD || Wooden man&lt;br /&gt;
|-&lt;br /&gt;
| GACRREN || UIGACHRENT || Rent-A-Hero&lt;br /&gt;
|-&lt;br /&gt;
| GACK6TZ || UIGACHTRYZ || Try-Z&lt;br /&gt;
|-&lt;br /&gt;
| GACRPAN || UIGACHSOLO || Solo Wing&lt;br /&gt;
|-&lt;br /&gt;
| GACIAKA || UIGACHKAK1 || Kids Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIAKB || UIGACHKAK2 || Kids Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJKA || UIGACHKJA1 || Kids Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJKB || UIGACHKJA2 || Kids Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOSAA || UIGACHKSA1 || Kids Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOSAB || UIGACHKSA2 || Kids Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOLAA || UIGACHKLA1 || Kids Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOLAB || UIGACHKLA2 || Kids Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| GACOPAA || UIGACHKPA1 || Kids Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| GACOPAB || UIGACHKPA2 || Kids Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIWLA || UIGACHKWO1 || Kids Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIWLB || UIGACHKWO2 || Kids Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGJFA || UIGACHKJE1 || Kids Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGJFB || UIGACHKJE2 || Kids Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIKAA || UIGACHKKA1 || Kids Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| GACIKAB || UIGACHKKA2 || Kids Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| GACGSNA || UIGACHKSH1 || Kids Shun Di 1&lt;br /&gt;
|-&lt;br /&gt;
| GACGSNB || UIGACHKSH2 || Kids Shun Di 2&lt;br /&gt;
|-&lt;br /&gt;
| GACILIA || UIGACHKLI1 || Kids Lion 1&lt;br /&gt;
|-&lt;br /&gt;
| GACILIB || UIGACHKLI2 || Kids Lion 2&lt;br /&gt;
|-&lt;br /&gt;
| GACIDUA || UIGACHKDUS || Kids Dural S&lt;br /&gt;
|-&lt;br /&gt;
| GACIDUB || UIGACHKDUG || Kids Dural G&lt;br /&gt;
|-&lt;br /&gt;
| GACRNT1 || UIGACHNIG1 || NiGHTS 1&lt;br /&gt;
|-&lt;br /&gt;
| GACRNT2 || UIGACHNIG2 || NiGHTS 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRSO1 || UIGACHSON1 || Sonic 1&lt;br /&gt;
|-&lt;br /&gt;
| GACRSO2 || UIGACHSON2 || Sonic 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRSSC || UIGACHSUSO || Super Sonic&lt;br /&gt;
|-&lt;br /&gt;
| GACRTL1 || UIGACHTAIL || Tails&lt;br /&gt;
|-&lt;br /&gt;
| GACRNUC || UIGACHKNUC || Knuckles&lt;br /&gt;
|-&lt;br /&gt;
| GACRBAK || UIGACHBARK || Berk&lt;br /&gt;
|-&lt;br /&gt;
| GACRBIN || UIGACHBEAN || Bean&lt;br /&gt;
|-&lt;br /&gt;
| GACRFNG || UIGACHFANG || Fang&lt;br /&gt;
|-&lt;br /&gt;
| GACRAMY || UIGACHAMY0 || Amy&lt;br /&gt;
|-&lt;br /&gt;
| GACRESP || UIGACHESPI || Espio&lt;br /&gt;
|-&lt;br /&gt;
| GACRMET || UIGACHMESO || Metal Sonic&lt;br /&gt;
|-&lt;br /&gt;
| GACREGG || UIGACHEGGM || Eggman&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HO || UIGACHHAO1 || Hang-On 1&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HH || UIGACHHAO2 || Hang-On 2&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HY || UIGACHHAO3 || Hang-On 3&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HB || UIGACHHAO4 || Hang-On 4&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HG || UIGACHHAO5 || Hang-On 5&lt;br /&gt;
|-&lt;br /&gt;
| GACK6HK || UIGACHHAOG || Hang-On G&lt;br /&gt;
|-&lt;br /&gt;
| GACK6SP || UIGACHSPHA || Space Harrier&lt;br /&gt;
|-&lt;br /&gt;
| GACRLOP || UIGACHRUBE || Ruber&lt;br /&gt;
|-&lt;br /&gt;
| GACR0BN || UIGACHBIN1 || Binsbein 1&lt;br /&gt;
|-&lt;br /&gt;
| GACR0B2 || UIGACHBIN2 || Binsbein 2&lt;br /&gt;
|-&lt;br /&gt;
| GACR0B3 || UIGACHBIN3 || Binsbein 3&lt;br /&gt;
|-&lt;br /&gt;
| GACRGB1 || UIGACHBBUL || B.B. Ultra&lt;br /&gt;
|-&lt;br /&gt;
| GACODG1 || UIGACHPOCH || Pochi&lt;br /&gt;
|-&lt;br /&gt;
| GACODG2 || UIGACHJOHN || John&lt;br /&gt;
|-&lt;br /&gt;
| GACODG3 || UIGACHKELL || Kelly&lt;br /&gt;
|-&lt;br /&gt;
| GACOCT2 || UIGACHKURO || Kuro&lt;br /&gt;
|-&lt;br /&gt;
| GACOCAT || UIGACHTORA || Tora&lt;br /&gt;
|-&lt;br /&gt;
| GACO1SH || UIGACHBIGR || Big Robin&lt;br /&gt;
|-&lt;br /&gt;
| GACOKSH || UIGACHLITR || Little Robin&lt;br /&gt;
|-&lt;br /&gt;
| GACOOSH || UIGACHROBI || Robins&lt;br /&gt;
|-&lt;br /&gt;
| GACO1IR || UIGACHBIGP || Big Philip&lt;br /&gt;
|-&lt;br /&gt;
| GACOKIR || UIGACHLITP || Little Philip&lt;br /&gt;
|-&lt;br /&gt;
| GACOOIR || UIGACHPHIL || Philips&lt;br /&gt;
|-&lt;br /&gt;
| GACO1HA || UIGACHCHIP || Chip&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA2 || UIGACHRAP0 || Rap&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA3 || UIGACHPOP0 || Pop&lt;br /&gt;
|-&lt;br /&gt;
| GACOHA4 || UIGACHPIP0 || Pip&lt;br /&gt;
|-&lt;br /&gt;
| GACO1YG || UIGACHMARY || Mary&lt;br /&gt;
|-&lt;br /&gt;
| GACO1US || UIGACHPYON || Pyonta&lt;br /&gt;
|-&lt;br /&gt;
| GACRMYU || UIGACHMYAU || Myau&lt;br /&gt;
|-&lt;br /&gt;
| GACRCKN || UIGACHCHIC || Chicken Leg&lt;br /&gt;
|-&lt;br /&gt;
| GACRALF || UIGACHCHAO || Chao &amp;amp; Pian&lt;br /&gt;
|-&lt;br /&gt;
| GACRRIS || UIGACHRIST || Ristar&lt;br /&gt;
|-&lt;br /&gt;
| GACRARX || UIGACHALEX || Alex Kidd&lt;br /&gt;
|-&lt;br /&gt;
| GACR0OP || UIGACHOPAO || Opa-opa&lt;br /&gt;
|-&lt;br /&gt;
| GACR0O2 || UIGACHJOPA || Jet Opa-opa&lt;br /&gt;
|-&lt;br /&gt;
| GACRPOP || UIGACHPOPP || Poppors&lt;br /&gt;
|-&lt;br /&gt;
| GACRCOB || UIGACHCOBA || Goba Beach&lt;br /&gt;
|-&lt;br /&gt;
| GACRIDA || UIGACHAIDA || Aida II&lt;br /&gt;
|-&lt;br /&gt;
| GACRSHP || UIGACHSHOP || Shop&lt;br /&gt;
|-&lt;br /&gt;
| GACR016 || UIGACHHBO1 || Heavy Bomb 1&lt;br /&gt;
|-&lt;br /&gt;
| GACK66B || UIGACHHBO2 || Heavy Bomb 2&lt;br /&gt;
|-&lt;br /&gt;
| GACK66R || UIGACHHBO3 || Heavy Bomb 3&lt;br /&gt;
|-&lt;br /&gt;
| GACRMOB || UIGACHMOBO || Mobo&lt;br /&gt;
|-&lt;br /&gt;
| GACRROB || UIGACHROBO || Robo&lt;br /&gt;
|-&lt;br /&gt;
| GACRBON || UIGACHBONA || Bonanza Brothers&lt;br /&gt;
|-&lt;br /&gt;
| GACH5BK || UIGACHMOTO || Motor Scooter&lt;br /&gt;
|-&lt;br /&gt;
| KAB02FS || UIGACHDELI || Delivery Moped&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K2 || UIGACHCOU1 || Coupe 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K3 || UIGACHCOU2 || Coupe 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K7 || UIGACHCOU3 || Coupe 3&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K8 || UIGACHCOU4 || Coupe 4&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K9 || UIGACHCOU5 || Coupe 5&lt;br /&gt;
|-&lt;br /&gt;
| KABK6DY || UIGACHHORN || Hornet&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K1 || UIGACHWAG1 || Wagon 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K4 || UIGACHWAG2 || Wagon 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K5 || UIGACHWAG3 || Wagon 3&lt;br /&gt;
|-&lt;br /&gt;
| GACO1K6 || UIGACHWAG4 || Wagon 4&lt;br /&gt;
|-&lt;br /&gt;
| GACGTRX || UIGACHTRU1 || Truck 1&lt;br /&gt;
|-&lt;br /&gt;
| GACO1T1 || UIGACHTRU2 || Truck 2&lt;br /&gt;
|-&lt;br /&gt;
| GACO1T2 || UIGACHTRU3 || Truck 3&lt;br /&gt;
|-&lt;br /&gt;
| GACH5TK || UIGACHTRU4 || Truck 4&lt;br /&gt;
|-&lt;br /&gt;
| GACH5TR || UIGACHHOTD || Hot Dog Truck&lt;br /&gt;
|-&lt;br /&gt;
| GACS5BS || UIGACHBUS0 || Bus&lt;br /&gt;
|-&lt;br /&gt;
| GACO1FO || UIGACHFORK || Forklift&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N1 || UIGACHFOR1 || Forklift No.1&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N2 || UIGACHFOR2 || Forklift No.2&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N3 || UIGACHFOR3 || Forklift No.3&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N4 || UIGACHFOR4 || Forklift No.4&lt;br /&gt;
|-&lt;br /&gt;
| GACS5N5 || UIGACHFOR5 || Forklift No.5&lt;br /&gt;
|-&lt;br /&gt;
| GACS5FR || UIGACHFORR || Forklift Red&lt;br /&gt;
|-&lt;br /&gt;
| GACS5FB || UIGACHFORB || Forklift Blue&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KU || UIGACHCRAN || Crane&lt;br /&gt;
|-&lt;br /&gt;
| GACGSHE || UIGACHSHEN || Shenmue container&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KO || UIGACHCONT || Container&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KB || UIGACHWOCR || Wooden Crate&lt;br /&gt;
|-&lt;br /&gt;
| GACH5IK || UIGACHANCH || Anchor&lt;br /&gt;
|-&lt;br /&gt;
| GACO1FE || UIGACHFERR || Ferry&lt;br /&gt;
|-&lt;br /&gt;
| GACO1KJ || UIGACHSTEE || Steering Wheel&lt;br /&gt;
|-&lt;br /&gt;
| GACH5UK || UIGACHFLOA || Float&lt;br /&gt;
|-&lt;br /&gt;
| GACGXBN || UIGACHXBUT || X Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGYBN || UIGACHYBUT || Y Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGABN || UIGACHABUT || A Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGBBN || UIGACHBBUT || B Button&lt;br /&gt;
|-&lt;br /&gt;
| GACGCRY || UIGACHCHER || Cherry&lt;br /&gt;
|-&lt;br /&gt;
| GACH5JK || UIGACHMJUK || Mini Jukebox&lt;br /&gt;
|-&lt;br /&gt;
| GACH5SL || UIHACHMSLO || Mini Slot Game&lt;br /&gt;
|-&lt;br /&gt;
| GACM400 || UIGACHMQTT || Mini QTE Title&lt;br /&gt;
|-&lt;br /&gt;
| GACGSPH || UIGACHMHAR || Mini Harrier&lt;br /&gt;
|-&lt;br /&gt;
| GACS5HG || UIGACHMHAO || Mini Hang-On&lt;br /&gt;
|-&lt;br /&gt;
| GACG360 || UIGACHR360 || R-360&lt;br /&gt;
|-&lt;br /&gt;
| GACGDT1 || UIGACHMDAR || Mini Darts&lt;br /&gt;
|-&lt;br /&gt;
| GACS5EQ || UIGACHMQTE || Mini QTE&lt;br /&gt;
|-&lt;br /&gt;
| GACGBIR || UIGACHMPOO || Mini Pool&lt;br /&gt;
|-&lt;br /&gt;
| SYOGMD1 || UIGACHMATS || Matsuyama Prize&lt;br /&gt;
|-&lt;br /&gt;
| SYOGMD5 || UIGACHMITS || Mitsuzuka Prize&lt;br /&gt;
|-&lt;br /&gt;
| SYOGSH0 || UIGACHHATO || Harrier Token&lt;br /&gt;
|-&lt;br /&gt;
| SYOGHG0 || UIGACHHAOT || Hang-On Token&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6RE || UIGACHBAL1 || Ball 1&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6BR || UIGACHBAL2 || Ball 2&lt;br /&gt;
|-&lt;br /&gt;
| SPBK6YE || UIGACHBAL3 || Ball 3&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6WH || UIGACHDIC1 || Dice 1&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6BK || UIGACHDIC2 || Dice 2&lt;br /&gt;
|-&lt;br /&gt;
| SAIK6RE || UIGACHDIC3 || Dice 3&lt;br /&gt;
|-&lt;br /&gt;
| DENI2T1 || UIGACHASB0 || A Size Battery&lt;br /&gt;
|-&lt;br /&gt;
| DENI2T3 || UIGACHAAAB || AAA Size Battery&lt;br /&gt;
|-&lt;br /&gt;
| MATI200 || UIGACHBOM0 || Box of Matches&lt;br /&gt;
|-&lt;br /&gt;
| RMP02H1 || UIGACHLIBU || Light Bulb&lt;br /&gt;
|-&lt;br /&gt;
| HNGS200 || UIGACHHAON || Hang-On&lt;br /&gt;
|-&lt;br /&gt;
| SPHS200 || UIGACHSPHA || Space Harrier&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2A1 || UIGACH2AK1 || VF2 Akira 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2A2 || UIGACH2AK2 || VF2 Akira 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2P1 || UIGACH2PA1 || VF2 Pai 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2P2 || UIGACH2PA2 || VF2 Pai 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLU1 || UIGACH2LA1 || VF2 Lau 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLU2 || UIGACH2LA2 || VF2 Lau 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASWF1 || UIGACH2WO1 || VF2 Wolf 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASWF2 || UIGACH2WO2 || VF2 Wolf 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASJF1 || UIGACH2JE1 || VF2 Jeffry 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASJF2 || UIGACH2JE2 || VF2 Jeffry 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASKG1 || UIGACH2KA1 || VF2 Kage 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASKG2 || UIGACH2KA2 || VF2 Kage 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSR1 || UIGACH2SA1 || VF2 Sarah 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSR2 || UIGACH2SA2 || VF2 Sarah 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2J1 || UIGACH2JA1 || VF2 Jacky 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GAS2J2 || UIGACH2JA2 || VF2 Jacky 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSN1 || UIGACH2SD1 || VF2 Shun Di 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASSN2 || UIGACH2SD2 || VF2 Shun Di 2&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLN1 || UIGACH2LI1 || VF2 Lion 1&lt;br /&gt;
|-&lt;br /&gt;
| 1GASLN2 || UIGACH2LI2 || VF2 Lion 2&lt;br /&gt;
|-&lt;br /&gt;
| GACRDUC || UIGACHKDC0 || Kids Dural C&lt;br /&gt;
|-&lt;br /&gt;
| 7GATOUT || UIGACHOUTR || Outrun Toy&lt;br /&gt;
|-&lt;br /&gt;
| 7GAHF14 || UIGACHF14X || F14-XX&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR1 || UIGACHASCO || Asphalt Cowboy&lt;br /&gt;
|-&lt;br /&gt;
| 4GA9TR2 || UIGACHHICA || Highway Cat&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR3 || UIGACHLOHO || Long Horn&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR4 || UIGACHSTLI || Stream Line&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1TR5 || UIGACHNIPP || Nihonmaru&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH1 || UIGACHTEHA || Texas Hawk&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH2 || UIGACHWIRO || Wild Rose&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH3 || UIGACHMABU || Mad Bull&lt;br /&gt;
|-&lt;br /&gt;
| 4GA1CH4 || UIGACHMOLI || Moon Light&lt;br /&gt;
|-&lt;br /&gt;
| 5GARJAY || UIGACHJAY0 || Jay&lt;br /&gt;
|-&lt;br /&gt;
| 5GASALN || UIGACHALAI || Alain&lt;br /&gt;
|-&lt;br /&gt;
| 5GASLNA || UIGACHLINA || Lina&lt;br /&gt;
|-&lt;br /&gt;
| 5GASTRN || UIGACHTALO || Talon&lt;br /&gt;
|-&lt;br /&gt;
| 5GASTRS || UIGACHTERE || Tereshkova&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS2 || UIGACHKATE || Kate&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS4 || UIGACHMAT0 || Mat&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS5 || UIGACHMAX0 || Max&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS6 || UIGACHRYAN || Ryan&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS3 || UIGACHSPIK || Spike&lt;br /&gt;
|-&lt;br /&gt;
| 3GA1JS1 || UIGACHYUKI || Yuki&lt;br /&gt;
|-&lt;br /&gt;
| 2GARTEM || UIGACHTEMJ || Temjin&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGTM1 || UIGACHTMPR || Temjin Prototype&lt;br /&gt;
|-&lt;br /&gt;
| 2GAETE1 || UIGACH1080 || 10/80&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFGR1 || UIGACHGRYS || Grys-vok&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGST1 || UIGACHSTEI || Stein-vok&lt;br /&gt;
|-&lt;br /&gt;
| 2GAEBO1 || UIGACHBABD || Bal-Bados&lt;br /&gt;
|-&lt;br /&gt;
| 2GACBA1 || UIGACHBAKE || Bal-Keros&lt;br /&gt;
|-&lt;br /&gt;
| 2GABBR1 || UIGACHBABR || Bal-Baros&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE1 || UIGACHFYDN || Fei-Yen DNA&lt;br /&gt;
|-&lt;br /&gt;
| 2GAEAM1 || UIGACHANGE || Angelan&lt;br /&gt;
|-&lt;br /&gt;
| 2GAGAS1 || UIGACHAPHS || Apharmd S&lt;br /&gt;
|-&lt;br /&gt;
| 2GADAB1 || UIGACHAPHB || Apharmd B&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFAC1 || UIGACHAPHC || Apharmd C&lt;br /&gt;
|-&lt;br /&gt;
| 2GABCY1 || UIGACHCYTH || Cypher&lt;br /&gt;
|-&lt;br /&gt;
| 2GADDO1 || UIGACHDORD || Dordray&lt;br /&gt;
|-&lt;br /&gt;
| 2GADSP1 || UIGACHSPEC || Specianeff&lt;br /&gt;
|-&lt;br /&gt;
| 2GABRA1 || UIGACHRAID || Raiden&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE2 || UIGACHFYRN || Fei-Yen Rna&lt;br /&gt;
|-&lt;br /&gt;
| 2GACFE3 || UIGACHRYHY || Fei-Yen Hyper&lt;br /&gt;
|-&lt;br /&gt;
| 2GACAJ1 || UIGACHAJIM || Ajim&lt;br /&gt;
|-&lt;br /&gt;
| 2GAFBT1 || UIGACHBRAD || Bradtos&lt;br /&gt;
|-&lt;br /&gt;
| 2GARTAN || UIGACHTANG || Tangram&lt;br /&gt;
|-&lt;br /&gt;
| 6GA1KEJ || UIGACHFLTR || Flame Tree&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5000 || UIGACHLIHS || Lighthouse&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5001 || UIGACHBOAT || Boat&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5003 || UIGACHCHVI || Chinese Violin&lt;br /&gt;
|-&lt;br /&gt;
| 6GA5002 || UIGACHKOTO || Koto&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAJET || UIGACHLRJ0 || Long Range Jet&lt;br /&gt;
|-&lt;br /&gt;
| 6GATCHN || UIGACHCHSW || Chainsaw&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAKEN || UIGACHCHBR || Chinese Broadsword&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ1 || UIGACHSNTO || Snake Tortoise&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ3 || UIGACHWHTI || White Tiger&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ4 || UIGACHPHOE || Phoenix&lt;br /&gt;
|-&lt;br /&gt;
| 6GAAMZ2 || UIGACHBLDR || Blue Dragon&lt;br /&gt;
|-&lt;br /&gt;
| NINT2AF || UIGACHAFTO || After Burner II Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2OR || UIGACHOUTO || OutRun Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2SP || UIGACHHAT2 || Space Harrier Token&lt;br /&gt;
|-&lt;br /&gt;
| NINT2HG || UIGACHHOT2 || Hang-On Token&lt;br /&gt;
|-&lt;br /&gt;
| 003K2SL || UIGACHPR31 || 3,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 010K2SL || UIGACHPR11 || 10,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 050K2SL || UIGACHPR51 || 50,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 200K2SL || UIGACHPR21 || 200,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 500K2SL || UIGACHPR52 || 500,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| 001M2SL || UIGACHPR12 || 1,000,000 Prize&lt;br /&gt;
|-&lt;br /&gt;
| AFBR701 || UIGACHMIAB || Mini After Burner&lt;br /&gt;
|-&lt;br /&gt;
| OUTR701 || UIGACHMIOU || Mini OutRun&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2GR || UIGACHGRST || Green Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2RE || UIGACHREST || Red Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2YE || UIGACHYEST || Yellow Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2PP || UIGACHPUST || Purple Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2BL || UIGACHBLST || Blue Stone&lt;br /&gt;
|-&lt;br /&gt;
| HOSK2CL || UIGACHTRST || Transparent Stone&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW3 || UIGACHMOWO || Moon Wolf&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW2 || UIGACHVAMP || Vampire&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG2 || UIGACHWING || Wing&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHW1 || UIGACHJACK || Jackal&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHM1 || UIGACHMUEC || Muecas&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHS1 || UIGACHSCOR || Scorpion&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG1 || UIGACHKING || King&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHD1 || UIGACHDRAG || Dragon&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHK1 || UIGACHHELM || Helm&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHR1 || UIGACHROSE || Rose&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHH1 || UIGACHHEAR || Heart&lt;br /&gt;
|-&lt;br /&gt;
| ZIPOHG3 || UIGACHNOSM || No Smoking&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Photos ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MapItems ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== MoveItems ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Model Name !! Label !! Description&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1SJ || UISKILTWBL || Twin Blades&lt;br /&gt;
|-&lt;br /&gt;
| MKIS101 || UISKILSHRE || Shadow Reaper&lt;br /&gt;
|-&lt;br /&gt;
| MKIS103 || UISKILSTAR || Stab Armor&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1HE || UISKILTSL0 || Twin Swallow Leap&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1TG || UISKILMUSP || Mud Spider&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1SK || UISKILRIFL || Rising Flash&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1CS || UISKILCRCY || Crawl Cyclone&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1HZ || UISKILTIST || Tiger Storm&lt;br /&gt;
|-&lt;br /&gt;
| WZIS1OB || UISKILABF0 || Arm Break Fire&lt;br /&gt;
|-&lt;br /&gt;
| MKIS104 || UISKILPOSC || Poetry Scroll&lt;br /&gt;
|-&lt;br /&gt;
| MKIS105 || UISKILMYSC || Mysterious Scroll&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2KR || UISKILDRSP || Dragon Spin&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2JS || UISKILSECO || Serpent Coil&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2DH || UISKILRFS0 || Rear Foot Sweep&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SK || UISKILDIWI || Diagonal Wipe&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SH || UISKILOBSL || Oblique Slam&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SS || UISKILTPT0 || Twin Palm Thrust&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2BT || UISKILHOKI || Horseshoe Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RH || UISKILMACO || Mantis Combo&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2JH || UISKILSTST || Stepping Strike&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2SN || UISKILOAK0 || Oblique Air Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2FS || UISKILHESW || Heel Sweep&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2HE || UISKILMRD0 || Monkey Roll Drop&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RS || UISKILMAFI || Machinegun Fist&lt;br /&gt;
|-&lt;br /&gt;
| WZIS2RT || UISKILDSK0 || Double Storm Kick&lt;br /&gt;
|-&lt;br /&gt;
| WZKM2ES || UISKILDETR || Demon's Triangle&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PawnItems ==&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=645</id>
		<title>Vertical Slice</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=645"/>
		<updated>2023-05-25T19:28:14Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* VS QTE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= Vertical Slice =&lt;br /&gt;
A [https://en.wikipedia.org/wiki/Vertical_slice vertical slice] is, &amp;quot;a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project.&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
d3t left a few references to a vertical slice for Shenmue I, both in unused code and also within game files. Most notably, the PS4 release of the game contains the most references to this. &lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
In the re-releases, there existed 3 VS modes:&lt;br /&gt;
&lt;br /&gt;
* VS Explore&lt;br /&gt;
* VS Fight&lt;br /&gt;
* VS QTE&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The modes showcase different components of the game in different areas and are accompanied by custom scripts and save files which are never used normally. &lt;br /&gt;
&lt;br /&gt;
=== Implementation ===&lt;br /&gt;
&lt;br /&gt;
The vertical slice modes are implemented through system modules. Each mode has its own system module which would have done some setup for the rest of the implementation to make use of. Unfortunately, in all cases, these appear to be unused and not functional. As these are included in the debug code created and used by d3t, they can be triggered through the [https://www.shenmuedojo.com/forum/index.php?threads/release-shenmueii-d3t-am2-debug-enabler.4954/ d3t Debug Enabler in Shenmue II by LemonHaze] but are not implemented in any way.&lt;br /&gt;
&lt;br /&gt;
The leftover PS4 code which references the Vertical Slice seems to be more complete and attempts to load &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; or &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; depending on whether the input to the function which returns these strings is either 4 or 6, respectively. This is guarded however by a function which returns an integer, either 0 or any non-zero number, presumably to denote whether or not the game is running with/in support of the Vertical Slice modes. However, this function always returns zero, which points to stripping out this functionality before release. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This process can be shown with pseudocode in C like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
int d3t::GetMainOrGameMenuForVerticalSlice(int Type)&lt;br /&gt;
{&lt;br /&gt;
  if ( d3t::IsVerticalSlice() == 1 )&lt;br /&gt;
  {&lt;br /&gt;
    if ( Type == 4 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    else if ( Type == 6 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The [[DebugSaveSetup]] document could have been used to load into the vertical slice through UI code which would be aware of the custom scripts.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Modes ==&lt;br /&gt;
=== VS QTE === &lt;br /&gt;
The QTE mode is a direct copy of Disc 2: Dobuita, with some changes, presumably during development of the re-releases and when paired with the accompanying save file, the Asia Travel Co. [https://www.youtube.com/watch?v=VFb7-Fe8cnI QTE with Jimmy] starts immediately.&lt;br /&gt;
&lt;br /&gt;
Attempting to load the save game without the VS_QTE script in-place will cause the game to load normally into Dobuita.&lt;br /&gt;
&lt;br /&gt;
The following logging strings are not found in this version of the Dobuita script and the training issues in the Parking Lot seem to be present and unfixed in it:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;training_npc_too_close:  set&amp;lt;/source&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;training_npc_too_close reset before training starts&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VS Fight === &lt;br /&gt;
The Fight mode is a direct copy of Disc 2: Hazuki Residence (Exterior), again with some changes presumably during development as noted above. &lt;br /&gt;
&lt;br /&gt;
=== VS Explore ===&lt;br /&gt;
The Explore mode, provided with just a save file, is a direct copy of Disc 2: Sakuragaoka, again, with changes as noted above.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=644</id>
		<title>Vertical Slice</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=644"/>
		<updated>2023-05-25T19:27:57Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* VS QTE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= Vertical Slice =&lt;br /&gt;
A [https://en.wikipedia.org/wiki/Vertical_slice vertical slice] is, &amp;quot;a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project.&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
d3t left a few references to a vertical slice for Shenmue I, both in unused code and also within game files. Most notably, the PS4 release of the game contains the most references to this. &lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
In the re-releases, there existed 3 VS modes:&lt;br /&gt;
&lt;br /&gt;
* VS Explore&lt;br /&gt;
* VS Fight&lt;br /&gt;
* VS QTE&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The modes showcase different components of the game in different areas and are accompanied by custom scripts and save files which are never used normally. &lt;br /&gt;
&lt;br /&gt;
=== Implementation ===&lt;br /&gt;
&lt;br /&gt;
The vertical slice modes are implemented through system modules. Each mode has its own system module which would have done some setup for the rest of the implementation to make use of. Unfortunately, in all cases, these appear to be unused and not functional. As these are included in the debug code created and used by d3t, they can be triggered through the [https://www.shenmuedojo.com/forum/index.php?threads/release-shenmueii-d3t-am2-debug-enabler.4954/ d3t Debug Enabler in Shenmue II by LemonHaze] but are not implemented in any way.&lt;br /&gt;
&lt;br /&gt;
The leftover PS4 code which references the Vertical Slice seems to be more complete and attempts to load &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; or &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; depending on whether the input to the function which returns these strings is either 4 or 6, respectively. This is guarded however by a function which returns an integer, either 0 or any non-zero number, presumably to denote whether or not the game is running with/in support of the Vertical Slice modes. However, this function always returns zero, which points to stripping out this functionality before release. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This process can be shown with pseudocode in C like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
int d3t::GetMainOrGameMenuForVerticalSlice(int Type)&lt;br /&gt;
{&lt;br /&gt;
  if ( d3t::IsVerticalSlice() == 1 )&lt;br /&gt;
  {&lt;br /&gt;
    if ( Type == 4 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    else if ( Type == 6 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The [[DebugSaveSetup]] document could have been used to load into the vertical slice through UI code which would be aware of the custom scripts.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Modes ==&lt;br /&gt;
=== VS QTE === &lt;br /&gt;
The QTE mode is a direct copy of Disc 2: Dobuita, with some changes, presumably during development of the re-releases and when paired with the accompanying save file, the Asia Travel Co. [https://www.youtube.com/watch?v=VFb7-Fe8cnI QTE with Jimmy] starts immediately.&lt;br /&gt;
&lt;br /&gt;
Attempting to load the save game without the VS_QTE script in-place will cause the game to load normally into Dobuita.&lt;br /&gt;
&lt;br /&gt;
The following logging strings are not found in this version of the Dobuita script and the training issues seem to be present and unfixed in it:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;training_npc_too_close:  set&amp;lt;/source&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;training_npc_too_close reset before training starts&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VS Fight === &lt;br /&gt;
The Fight mode is a direct copy of Disc 2: Hazuki Residence (Exterior), again with some changes presumably during development as noted above. &lt;br /&gt;
&lt;br /&gt;
=== VS Explore ===&lt;br /&gt;
The Explore mode, provided with just a save file, is a direct copy of Disc 2: Sakuragaoka, again, with changes as noted above.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=643</id>
		<title>Vertical Slice</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=643"/>
		<updated>2023-05-25T19:27:47Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* VS QTE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= Vertical Slice =&lt;br /&gt;
A [https://en.wikipedia.org/wiki/Vertical_slice vertical slice] is, &amp;quot;a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project.&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
d3t left a few references to a vertical slice for Shenmue I, both in unused code and also within game files. Most notably, the PS4 release of the game contains the most references to this. &lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
In the re-releases, there existed 3 VS modes:&lt;br /&gt;
&lt;br /&gt;
* VS Explore&lt;br /&gt;
* VS Fight&lt;br /&gt;
* VS QTE&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The modes showcase different components of the game in different areas and are accompanied by custom scripts and save files which are never used normally. &lt;br /&gt;
&lt;br /&gt;
=== Implementation ===&lt;br /&gt;
&lt;br /&gt;
The vertical slice modes are implemented through system modules. Each mode has its own system module which would have done some setup for the rest of the implementation to make use of. Unfortunately, in all cases, these appear to be unused and not functional. As these are included in the debug code created and used by d3t, they can be triggered through the [https://www.shenmuedojo.com/forum/index.php?threads/release-shenmueii-d3t-am2-debug-enabler.4954/ d3t Debug Enabler in Shenmue II by LemonHaze] but are not implemented in any way.&lt;br /&gt;
&lt;br /&gt;
The leftover PS4 code which references the Vertical Slice seems to be more complete and attempts to load &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; or &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; depending on whether the input to the function which returns these strings is either 4 or 6, respectively. This is guarded however by a function which returns an integer, either 0 or any non-zero number, presumably to denote whether or not the game is running with/in support of the Vertical Slice modes. However, this function always returns zero, which points to stripping out this functionality before release. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This process can be shown with pseudocode in C like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
int d3t::GetMainOrGameMenuForVerticalSlice(int Type)&lt;br /&gt;
{&lt;br /&gt;
  if ( d3t::IsVerticalSlice() == 1 )&lt;br /&gt;
  {&lt;br /&gt;
    if ( Type == 4 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    else if ( Type == 6 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The [[DebugSaveSetup]] document could have been used to load into the vertical slice through UI code which would be aware of the custom scripts.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Modes ==&lt;br /&gt;
=== VS QTE === &lt;br /&gt;
The QTE mode is a direct copy of Disc 2: Dobuita, with some changes, presumably during development of the re-releases and when paired with the accompanying save file, the Asia Travel Co. [https://www.youtube.com/watch?v=VFb7-Fe8cnI QTE with Jimmy] starts immediately.&lt;br /&gt;
&lt;br /&gt;
Attempting to load the save game without the VS_QTE script in-place will cause the game to load normally into Dobuita.&lt;br /&gt;
&lt;br /&gt;
The following logging strings are not found in this version of the Dobuita script and the training issues seem to be present and unfixed in it.&lt;br /&gt;
&amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;training_npc_too_close:  set&amp;lt;/source&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;training_npc_too_close reset before training starts&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== VS Fight === &lt;br /&gt;
The Fight mode is a direct copy of Disc 2: Hazuki Residence (Exterior), again with some changes presumably during development as noted above. &lt;br /&gt;
&lt;br /&gt;
=== VS Explore ===&lt;br /&gt;
The Explore mode, provided with just a save file, is a direct copy of Disc 2: Sakuragaoka, again, with changes as noted above.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=642</id>
		<title>Vertical Slice</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=642"/>
		<updated>2023-05-25T19:22:09Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* VS QTE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= Vertical Slice =&lt;br /&gt;
A [https://en.wikipedia.org/wiki/Vertical_slice vertical slice] is, &amp;quot;a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project.&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
d3t left a few references to a vertical slice for Shenmue I, both in unused code and also within game files. Most notably, the PS4 release of the game contains the most references to this. &lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
In the re-releases, there existed 3 VS modes:&lt;br /&gt;
&lt;br /&gt;
* VS Explore&lt;br /&gt;
* VS Fight&lt;br /&gt;
* VS QTE&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The modes showcase different components of the game in different areas and are accompanied by custom scripts and save files which are never used normally. &lt;br /&gt;
&lt;br /&gt;
=== Implementation ===&lt;br /&gt;
&lt;br /&gt;
The vertical slice modes are implemented through system modules. Each mode has its own system module which would have done some setup for the rest of the implementation to make use of. Unfortunately, in all cases, these appear to be unused and not functional. As these are included in the debug code created and used by d3t, they can be triggered through the [https://www.shenmuedojo.com/forum/index.php?threads/release-shenmueii-d3t-am2-debug-enabler.4954/ d3t Debug Enabler in Shenmue II by LemonHaze] but are not implemented in any way.&lt;br /&gt;
&lt;br /&gt;
The leftover PS4 code which references the Vertical Slice seems to be more complete and attempts to load &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; or &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; depending on whether the input to the function which returns these strings is either 4 or 6, respectively. This is guarded however by a function which returns an integer, either 0 or any non-zero number, presumably to denote whether or not the game is running with/in support of the Vertical Slice modes. However, this function always returns zero, which points to stripping out this functionality before release. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This process can be shown with pseudocode in C like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
int d3t::GetMainOrGameMenuForVerticalSlice(int Type)&lt;br /&gt;
{&lt;br /&gt;
  if ( d3t::IsVerticalSlice() == 1 )&lt;br /&gt;
  {&lt;br /&gt;
    if ( Type == 4 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    else if ( Type == 6 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The [[DebugSaveSetup]] document could have been used to load into the vertical slice through UI code which would be aware of the custom scripts.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Modes ==&lt;br /&gt;
=== VS QTE === &lt;br /&gt;
The QTE mode is a direct copy of Disc 2: Dobuita, with some changes, presumably during development of the re-releases and when paired with the accompanying save file, the Asia Travel Co. [https://www.youtube.com/watch?v=VFb7-Fe8cnI QTE with Jimmy] starts immediately.&lt;br /&gt;
&lt;br /&gt;
Attempting to load the save game without the VS_QTE script in-place will cause the game to load normally into Dobuita.&lt;br /&gt;
&lt;br /&gt;
=== VS Fight === &lt;br /&gt;
The Fight mode is a direct copy of Disc 2: Hazuki Residence (Exterior), again with some changes presumably during development as noted above. &lt;br /&gt;
&lt;br /&gt;
=== VS Explore ===&lt;br /&gt;
The Explore mode, provided with just a save file, is a direct copy of Disc 2: Sakuragaoka, again, with changes as noted above.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=DebugSaveSetup&amp;diff=641</id>
		<title>DebugSaveSetup</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=DebugSaveSetup&amp;diff=641"/>
		<updated>2023-05-24T08:55:52Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* Overview */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= DebugSaveSetup =&lt;br /&gt;
This is a JSON-formatted document which stores miscellaneous data about save files used for testing purposes by d3t.  &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are 2 known files with this data, one in each game of Shenmue I &amp;amp; II. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
Unfortunately, this file is completely unused, in both games and all releases/builds of the game and have only been found in the PS4 release.&lt;br /&gt;
&lt;br /&gt;
Quite a lot of the save games also feature README files which detail the process of using them and their intended results and some of them even contain screenshots, but these are exclusively in the Shenmue II save assets. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The README files make understanding the purpose of DebugSaveSetup a bit difficult, because they seem to reference copying the save files over manually and loading them, just like normal, so it's unclear why they went through the trouble of defining a file which neatly lists each save file. Presumably, this file would be used in a test build of the game, where the game might read this file and open a simple debug menu showing each of the defined save files. &amp;lt;br&amp;gt;&lt;br /&gt;
This would then be used by QA to test various components of the game, which we can see some evidence of, in entries such as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;JSON&amp;quot; line&amp;gt;&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/1-WorkersPier2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/2-FortunesPier&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;		&lt;br /&gt;
&lt;br /&gt;
In this excerpt (and by looking at the file tree), we can see that some save files are stored in a directory named &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Testplan&amp;lt;/source&amp;gt;, which implies those save files were to be used during QA.&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
The file is constructed of a JSON array of objects, each object being named &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Folder&amp;lt;/source&amp;gt;, representing a file directory within &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;&amp;lt;root&amp;gt;\saves&amp;lt;/source&amp;gt;, containing the save files for those debug save entries.&lt;br /&gt;
Each entry contains a &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Name&amp;lt;/source&amp;gt; for the directory, the number of save &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Files&amp;lt;/source&amp;gt; within the directory, and a key-value pair named &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Description&amp;lt;/source&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
The description key-pair uses the save slot # which is used in-game as the key and the value is a description of that save file entry.&lt;br /&gt;
&lt;br /&gt;
== Shenmue I ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;JSON&amp;quot; line&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS21/Dobuita&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Sunny&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS21/Harbour&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Raining&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Chai_Guizhang&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Walk Forwards to begin cutscene&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Chen&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enter Warehouse 8 to begin cutscene&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Fukuhara&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enter the dojo to begin cutscene&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Ine-San&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Ine-San is in the kitchen&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Nozomi&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Nozomi is outside the florists&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Terry&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Approach the house with the motorbike&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/YoungRyo&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Look at kitchen table bowls&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Yamanose&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enjoy the scenery!&amp;quot; }},		&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/House&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enjoy the scenery!&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS22/HazukiExteriorslot1&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enjoy the scenery!&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/1-StartToDob&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Start to Dobuita&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/2-DobToSailors&amp;quot; , &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find the sailors!&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/3-BeatSailors&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Snooker with Sailors&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/4-CharlieSailors&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Finding Charlie and the tattooist&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/5-CharlieToHarbour&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find Charlie and head to Yokosuka&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/6-NewWarehouse8&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Break into the wrong warehouse&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/7-MasterChen&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Meet Master Chen&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/8-OpeningBasement&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Open the Hazuki Basement&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/9-SearchBasement&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Search the Hazuki Basement&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/10-RingMasterChen&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Get on the phone!&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/11-TravelAgentChai&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find the right Travel Agent and fight Chai&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/12-CatchingJimmy&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Catch crying jimmy and catch a bus&amp;quot; }},		&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/13-FindingWork&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Get a job you louse&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/14-FirstWork&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;First day at work&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/15-Forklifts1&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/16-Forklifts2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/17-Forklifts3&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/18-Forklifts4&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/19-Forklifts5&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/20-Forklifts6&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/21-Forklifts7&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},			&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/22-NozomiKidnap&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/23-TheEndGame&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;VerticalSlice/Explore&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Vertical Slice Explore Mode&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;VerticalSlice/Fight&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Vertical Slice Fight Mode&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;VerticalSlice/QTE&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Vertical Slice QTE Mode&amp;quot; }}		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;		&lt;br /&gt;
== Shenmue II ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;JSON&amp;quot; line&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Milestone/MS21&amp;quot;, &amp;quot;Files&amp;quot;: 2, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Green_Mkt&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Scarlett_Hills&amp;quot; }},&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Milestone/MS22&amp;quot;, &amp;quot;Files&amp;quot;: 4, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;GoldenQr&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;QueenSt&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;SouthCarmainQr&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;WhiteDynastyQr&amp;quot; }},&lt;br /&gt;
						 &lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Milestone/MS20&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Dou_Niu&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Fang_Mei&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Joy&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Lan_Di&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Ren&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Shenhua&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Wong&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Xiouying&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Yuan&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Queen_St&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/1-ComeOverGuestHouse&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Just met Joy&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Just had your bag stolen&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Got your bag back&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Arrived at the Come Over&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;On way to Yan Tin&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Meet Jian Min&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Go to Man Mo Temple&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;The four Wude&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Find a martial artist&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Golden Qr Mall&amp;quot; }},&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/2-ZhangyuBarberBook&amp;quot;, &amp;quot;Files&amp;quot;: 9, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Don't press A!&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Meet Lishao Tao&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Book Carrying 1&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Book Carrying 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Find the Wulinshu&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Wise Mens Kung Fu&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Chawan Sign&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Chawan sign 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Find Ren&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/3-FindingRen&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find some Heavens&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Go Gambling&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Meet at 8pm&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Beverly Hills Wharf&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Meet Ren of Heavens&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Grafting with Ren 1&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Grafting with Ren 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Run after Ren&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Thank Everyone&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Arrive in Kowloon&amp;quot; }},					 &lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/4-FindingYuan&amp;quot;, &amp;quot;Files&amp;quot;: 9, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Head to Dancing Dragon&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Find the men in black&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Meet Butterbean&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Revisit Yang&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Find the tapes&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Speak to the blind&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Visit the orphanage&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Talking Bird Search&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Nine Birds shop&amp;quot; }},		&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/5-Streetfighters&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Head to Ghost Hall&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Walk the plank 1&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Walk the plank 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Search the Room&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;place those keys&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Get into Yellowhead&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Chawan Sign Request&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Fight the blind&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Fight the acrobat&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Go to Dragon St&amp;quot; }},		&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/6-BlockedYellowhead&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find the fighters&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Star Gazing point&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Phoenix Building&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Rod Stunt&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Find Afterburner&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Head to Dragon St&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Go to the basement&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Under Yellowhead&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Into Yellowhead&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Fight the Bouncers&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/7-EnterYellowhead&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;6th Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Wait for the lights&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Wait for the lights 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;10th Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;12th Floor QTE&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Yuan's Chainsaw&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Dou Niu QTE&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Chainsaw QTE&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;17th Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Find the Key&amp;quot; }},	&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/8-FightsQTEsGuilin&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Lift Switches&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Use the lifts&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Master Baihu&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Shiny Marble Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Before the Roof&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Bailu Village&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Olive Trees&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Butterflies&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Fabulous Pond&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Waterfall QTE&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/9-BailuVillageEndGame&amp;quot;, &amp;quot;Files&amp;quot;: 8, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;The Guardians&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Will they Kiss?&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Walk With Shenhua&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Stone Bridge&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Dad's Collection&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Stone Cave 1&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Find Shenhua&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Final Cave Entry&amp;quot; }},		&lt;br /&gt;
			&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/1-WorkersPier2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/2-FortunesPier&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/3-RooftopFight&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/4-LuckyPlaza&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/5-QueenSt&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/6-BeverlyHillsWharf&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/7-GreenMarketQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/8-GoldenQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/9-SouthCarmainQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/10-LuckyCharmQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/11-ScarletHills&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/12-WiseMensQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/13-WhiteDynastyQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/14-ThousandWhiteQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/15-DimsumQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/16-DragonSt&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/17-StandQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/18-MoonChildBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/19-ThreeBirdsBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/20-GhostHallBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/21-SmallDragonGarden&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/22-PhoenixBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/23-YellowHeadBuilding1&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/24-YellowHeadBuilding2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/25-MasterBaihu&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/26-DouNiuBossFight&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/27-LanghuishanVillage&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/28-PathThroughaWood&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/29-GuilinForest&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/30-GuilinForestFail&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/31-GuilinForest2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/32-GuilinForest3&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/33-GuilinForest4&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/34-ShenhuasHouse&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/35-StonePit&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/36-SideQuestPlane&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/37-SideQuestGetAJob&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/38-SideQuestComicBooks&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/39-SideQuestPoisonBros&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }}	&lt;br /&gt;
		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=640</id>
		<title>Vertical Slice</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Vertical_Slice&amp;diff=640"/>
		<updated>2023-05-23T04:42:33Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created page with &amp;quot;Category:d3t  = Vertical Slice = A [https://en.wikipedia.org/wiki/Vertical_slice vertical slice] is, &amp;quot;a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project.&amp;quot;.    d3t left a few references to a vertical slice for Shenmue I, both in unused code and also within game files. Most notably, the PS4 release of the game contains the most references to this.   == Overview ==  In the re-releases, there existed 3...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= Vertical Slice =&lt;br /&gt;
A [https://en.wikipedia.org/wiki/Vertical_slice vertical slice] is, &amp;quot;a type of milestone, benchmark, or deadline, with emphasis on demonstrating progress across all components of a project.&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
d3t left a few references to a vertical slice for Shenmue I, both in unused code and also within game files. Most notably, the PS4 release of the game contains the most references to this. &lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
In the re-releases, there existed 3 VS modes:&lt;br /&gt;
&lt;br /&gt;
* VS Explore&lt;br /&gt;
* VS Fight&lt;br /&gt;
* VS QTE&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The modes showcase different components of the game in different areas and are accompanied by custom scripts and save files which are never used normally. &lt;br /&gt;
&lt;br /&gt;
=== Implementation ===&lt;br /&gt;
&lt;br /&gt;
The vertical slice modes are implemented through system modules. Each mode has its own system module which would have done some setup for the rest of the implementation to make use of. Unfortunately, in all cases, these appear to be unused and not functional. As these are included in the debug code created and used by d3t, they can be triggered through the [https://www.shenmuedojo.com/forum/index.php?threads/release-shenmueii-d3t-am2-debug-enabler.4954/ d3t Debug Enabler in Shenmue II by LemonHaze] but are not implemented in any way.&lt;br /&gt;
&lt;br /&gt;
The leftover PS4 code which references the Vertical Slice seems to be more complete and attempts to load &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; or &amp;lt;source enclose=&amp;quot;none&amp;quot;&amp;gt;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;lt;/source&amp;gt; depending on whether the input to the function which returns these strings is either 4 or 6, respectively. This is guarded however by a function which returns an integer, either 0 or any non-zero number, presumably to denote whether or not the game is running with/in support of the Vertical Slice modes. However, this function always returns zero, which points to stripping out this functionality before release. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This process can be shown with pseudocode in C like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
int d3t::GetMainOrGameMenuForVerticalSlice(int Type)&lt;br /&gt;
{&lt;br /&gt;
  if ( d3t::IsVerticalSlice() == 1 )&lt;br /&gt;
  {&lt;br /&gt;
    if ( Type == 4 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/mainmenu/MainMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    else if ( Type == 6 )&lt;br /&gt;
    {&lt;br /&gt;
      return &amp;quot;/ui/gamemenu/GameMenuDemoVerticalSlice.ui&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The [[DebugSaveSetup]] document could have been used to load into the vertical slice through UI code which would be aware of the custom scripts.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Modes ==&lt;br /&gt;
=== VS QTE === &lt;br /&gt;
The QTE mode is a direct copy of Disc 2: Dobuita, with some changes, presumably during development of the re-releases and when paired with the accompanying save file, the Asia Travel Co. [https://www.youtube.com/watch?v=VFb7-Fe8cnI QTE with Jimmy] starts immediately. &lt;br /&gt;
&lt;br /&gt;
=== VS Fight === &lt;br /&gt;
The Fight mode is a direct copy of Disc 2: Hazuki Residence (Exterior), again with some changes presumably during development as noted above. &lt;br /&gt;
&lt;br /&gt;
=== VS Explore ===&lt;br /&gt;
The Explore mode, provided with just a save file, is a direct copy of Disc 2: Sakuragaoka, again, with changes as noted above.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=DebugSaveSetup&amp;diff=639</id>
		<title>DebugSaveSetup</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=DebugSaveSetup&amp;diff=639"/>
		<updated>2023-05-23T02:02:14Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added first version of DebugSaveSetup&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:d3t]]&lt;br /&gt;
&lt;br /&gt;
= DebugSaveSetup =&lt;br /&gt;
This is a JSON-formatted document which stores miscellaneous data about save files used for testing purposes by d3t.  &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are 2 known files with this data, one in each game of Shenmue I &amp;amp; II. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
Unfortunately, this file is completely unused, in both games and all releases/builds of the game and have only been found in the PS4 release.&lt;br /&gt;
&lt;br /&gt;
Quite a lot of the save games also feature README files which detail the process of using them and their intended results and some of them even contain screenshots, but these are exclusively in the Shenmue II save assets. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The README files make understanding the purpose of DebugSaveSetup, because they seem to reference copying the save files over manually and loading them, just like normal, so it's unclear why they went through the trouble of defining a file which neatly lists each save file. Presumably, this file would be used in a test build of the game, where the game might read this file and open a simple debug menu showing each of the defined save files. &amp;lt;br&amp;gt;&lt;br /&gt;
This would then be used by QA to test various components of the game, which we can see some evidence of, in entries such as:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;JSON&amp;quot; line&amp;gt;&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/1-WorkersPier2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/2-FortunesPier&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;		&lt;br /&gt;
&lt;br /&gt;
In this excerpt (and by looking at the file tree), we can see that some save files are stored in a directory named &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Testplan&amp;lt;/source&amp;gt;, which implies those save files were to be used during QA.&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
The file is constructed of a JSON array of objects, each object being named &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Folder&amp;lt;/source&amp;gt;, representing a file directory within &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;&amp;lt;root&amp;gt;\saves&amp;lt;/source&amp;gt;, containing the save files for those debug save entries.&lt;br /&gt;
Each entry contains a &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Name&amp;lt;/source&amp;gt; for the directory, the number of save &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Files&amp;lt;/source&amp;gt; within the directory, and a key-value pair named &amp;lt;source lang=&amp;quot;&amp;quot; enclose=&amp;quot;none&amp;quot;&amp;gt;Description&amp;lt;/source&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
The description key-pair uses the save slot # which is used in-game as the key and the value is a description of that save file entry.&lt;br /&gt;
&lt;br /&gt;
== Shenmue I ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;JSON&amp;quot; line&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS21/Dobuita&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Sunny&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS21/Harbour&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Raining&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Chai_Guizhang&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Walk Forwards to begin cutscene&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Chen&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enter Warehouse 8 to begin cutscene&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Fukuhara&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enter the dojo to begin cutscene&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Ine-San&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Ine-San is in the kitchen&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Nozomi&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Nozomi is outside the florists&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Terry&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Approach the house with the motorbike&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/YoungRyo&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Look at kitchen table bowls&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/Yamanose&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enjoy the scenery!&amp;quot; }},		&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS20/House&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enjoy the scenery!&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;MS22/HazukiExteriorslot1&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Enjoy the scenery!&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/1-StartToDob&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Start to Dobuita&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/2-DobToSailors&amp;quot; , &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find the sailors!&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/3-BeatSailors&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Snooker with Sailors&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/4-CharlieSailors&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Finding Charlie and the tattooist&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/5-CharlieToHarbour&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find Charlie and head to Yokosuka&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/6-NewWarehouse8&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Break into the wrong warehouse&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/7-MasterChen&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Meet Master Chen&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/8-OpeningBasement&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Open the Hazuki Basement&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/9-SearchBasement&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Search the Hazuki Basement&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/10-RingMasterChen&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Get on the phone!&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/11-TravelAgentChai&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find the right Travel Agent and fight Chai&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/12-CatchingJimmy&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Catch crying jimmy and catch a bus&amp;quot; }},		&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/13-FindingWork&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Get a job you louse&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/14-FirstWork&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;First day at work&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/15-Forklifts1&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/16-Forklifts2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/17-Forklifts3&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/18-Forklifts4&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/19-Forklifts5&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/20-Forklifts6&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/21-Forklifts7&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},			&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/22-NozomiKidnap&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/23-TheEndGame&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Yet another work day&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;VerticalSlice/Explore&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Vertical Slice Explore Mode&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;VerticalSlice/Fight&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Vertical Slice Fight Mode&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;VerticalSlice/QTE&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Vertical Slice QTE Mode&amp;quot; }}		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;		&lt;br /&gt;
== Shenmue II ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;JSON&amp;quot; line&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Milestone/MS21&amp;quot;, &amp;quot;Files&amp;quot;: 2, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Green_Mkt&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Scarlett_Hills&amp;quot; }},&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Milestone/MS22&amp;quot;, &amp;quot;Files&amp;quot;: 4, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;GoldenQr&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;QueenSt&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;SouthCarmainQr&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;WhiteDynastyQr&amp;quot; }},&lt;br /&gt;
						 &lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Milestone/MS20&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Dou_Niu&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Fang_Mei&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Joy&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Lan_Di&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Ren&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Shenhua&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Wong&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Xiouying&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Yuan&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Queen_St&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/1-ComeOverGuestHouse&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Just met Joy&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Just had your bag stolen&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Got your bag back&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Arrived at the Come Over&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;On way to Yan Tin&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Meet Jian Min&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Go to Man Mo Temple&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;The four Wude&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Find a martial artist&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Golden Qr Mall&amp;quot; }},&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/2-ZhangyuBarberBook&amp;quot;, &amp;quot;Files&amp;quot;: 9, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Don't press A!&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Meet Lishao Tao&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Book Carrying 1&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Book Carrying 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Find the Wulinshu&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Wise Mens Kung Fu&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Chawan Sign&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Chawan sign 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Find Ren&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/3-FindingRen&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find some Heavens&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Go Gambling&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Meet at 8pm&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Beverly Hills Wharf&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Meet Ren of Heavens&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Grafting with Ren 1&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Grafting with Ren 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Run after Ren&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Thank Everyone&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Arrive in Kowloon&amp;quot; }},					 &lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/4-FindingYuan&amp;quot;, &amp;quot;Files&amp;quot;: 9, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Head to Dancing Dragon&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Find the men in black&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Meet Butterbean&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Revisit Yang&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Find the tapes&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Speak to the blind&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Visit the orphanage&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Talking Bird Search&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Nine Birds shop&amp;quot; }},		&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/5-Streetfighters&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Head to Ghost Hall&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Walk the plank 1&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Walk the plank 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Search the Room&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;place those keys&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Get into Yellowhead&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Chawan Sign Request&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Fight the blind&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Fight the acrobat&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Go to Dragon St&amp;quot; }},		&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/6-BlockedYellowhead&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Find the fighters&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Star Gazing point&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Phoenix Building&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Rod Stunt&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Find Afterburner&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Head to Dragon St&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Go to the basement&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Under Yellowhead&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Into Yellowhead&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Fight the Bouncers&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/7-EnterYellowhead&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;6th Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Wait for the lights&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Wait for the lights 2&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;10th Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;12th Floor QTE&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Yuan's Chainsaw&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Dou Niu QTE&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Chainsaw QTE&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;17th Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Find the Key&amp;quot; }},	&lt;br /&gt;
						 &lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/8-FightsQTEsGuilin&amp;quot;, &amp;quot;Files&amp;quot;: 10, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;Lift Switches&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Use the lifts&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Master Baihu&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Shiny Marble Floor&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Before the Roof&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Bailu Village&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Olive Trees&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Butterflies&amp;quot;,&lt;br /&gt;
						 &amp;quot;8&amp;quot;: &amp;quot;Fabulous Pond&amp;quot;,&lt;br /&gt;
						 &amp;quot;9&amp;quot;: &amp;quot;Waterfall QTE&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Gameplay/9-BailuVillageEndGame&amp;quot;, &amp;quot;Files&amp;quot;: 8, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;The Guardians&amp;quot;,&lt;br /&gt;
						 &amp;quot;1&amp;quot;: &amp;quot;Will they Kiss?&amp;quot;, &lt;br /&gt;
						 &amp;quot;2&amp;quot;: &amp;quot;Walk With Shenhua&amp;quot;,&lt;br /&gt;
						 &amp;quot;3&amp;quot;: &amp;quot;Stone Bridge&amp;quot;,&lt;br /&gt;
						 &amp;quot;4&amp;quot;: &amp;quot;Dad's Collection&amp;quot;,&lt;br /&gt;
						 &amp;quot;5&amp;quot;: &amp;quot;Stone Cave 1&amp;quot;,&lt;br /&gt;
						 &amp;quot;6&amp;quot;: &amp;quot;Find Shenhua&amp;quot;,&lt;br /&gt;
						 &amp;quot;7&amp;quot;: &amp;quot;Final Cave Entry&amp;quot; }},		&lt;br /&gt;
			&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/1-WorkersPier2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/2-FortunesPier&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/3-RooftopFight&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/4-LuckyPlaza&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/5-QueenSt&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/6-BeverlyHillsWharf&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/7-GreenMarketQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/8-GoldenQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/9-SouthCarmainQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/10-LuckyCharmQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/11-ScarletHills&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/12-WiseMensQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/13-WhiteDynastyQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/14-ThousandWhiteQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/15-DimsumQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/16-DragonSt&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/17-StandQr&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/18-MoonChildBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/19-ThreeBirdsBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/20-GhostHallBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/21-SmallDragonGarden&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/22-PhoenixBuilding&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/23-YellowHeadBuilding1&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/24-YellowHeadBuilding2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/25-MasterBaihu&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/26-DouNiuBossFight&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/27-LanghuishanVillage&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/28-PathThroughaWood&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/29-GuilinForest&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/30-GuilinForestFail&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/31-GuilinForest2&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/32-GuilinForest3&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/33-GuilinForest4&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/34-ShenhuasHouse&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/35-StonePit&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
	&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/36-SideQuestPlane&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/37-SideQuestGetAJob&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},	&lt;br /&gt;
		&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/38-SideQuestComicBooks&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }},&lt;br /&gt;
&lt;br /&gt;
	&amp;quot;Folder&amp;quot;: { &amp;quot;Name&amp;quot;: &amp;quot;Testplan/39-SideQuestPoisonBros&amp;quot;, &amp;quot;Files&amp;quot;: 1, &lt;br /&gt;
		&amp;quot;Description&amp;quot;: { &amp;quot;0&amp;quot;: &amp;quot;blah blah&amp;quot; }}	&lt;br /&gt;
		&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Category:Structs&amp;diff=638</id>
		<title>Category:Structs</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Category:Structs&amp;diff=638"/>
		<updated>2023-05-23T01:20:47Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Category:Tasks&amp;diff=637</id>
		<title>Category:Tasks</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Category:Tasks&amp;diff=637"/>
		<updated>2023-05-23T01:20:37Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Category:Text_References&amp;diff=636</id>
		<title>Category:Text References</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Category:Text_References&amp;diff=636"/>
		<updated>2023-05-23T01:20:29Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Memory_Addresses_(SM2)&amp;diff=635</id>
		<title>Memory Addresses (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Memory_Addresses_(SM2)&amp;diff=635"/>
		<updated>2023-05-23T01:20:09Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;br /&gt;
[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Memory Addresses]]&lt;br /&gt;
Offsets listed here are for Patch v1.07, unless noted otherwise. &lt;br /&gt;
== Memory Addresses ==&lt;br /&gt;
&lt;br /&gt;
===General===&lt;br /&gt;
* Shenmue2.exe+96D238 - [pointer] [[SM2_Player_Struct]]&lt;br /&gt;
** +0x84 - [float] Position X axis&lt;br /&gt;
** +0x88 - [float] Position Y axis&lt;br /&gt;
** +0x8C - [float] Position Z axis&lt;br /&gt;
** +0x178 - [float] Camera Distance from Player (defaults to 3.100f)&lt;br /&gt;
** +0x1D8 - [float] Camera Distance from Player (defaults to 3.100f)&lt;br /&gt;
* Shenmue2.exe+8217C70 - [string] Current Map ID&lt;br /&gt;
* Shenmue2.exe+E2BE09 - [string] Current Map ID&lt;br /&gt;
* Shenmue2.exe+81D0EB8 - [int] Player Money&lt;br /&gt;
* Shenmue2.exe+81D0EBC - [int] Player SEGA Coins&lt;br /&gt;
&lt;br /&gt;
When loading into the first save, these offsets are used:-&lt;br /&gt;
* Shenmue2.exe+1D20654 - [float] Player Position X&lt;br /&gt;
* Shenmue2.exe+1D2064C - [float] Player Position X&lt;br /&gt;
* Shenmue2.exe+1D20650 - [float] Player Position X&lt;br /&gt;
&lt;br /&gt;
Any subsequent load will use these offsets:-&lt;br /&gt;
* Shenmue2.exe+1D242D4 - [float] Player Position X&lt;br /&gt;
* Shenmue2.exe+1D242CC - [float] Player Position Y&lt;br /&gt;
* Shenmue2.exe+1D242D0 - [float] Player Position Z&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+3DA4D84 - [string] Active Voice Sound Filename&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+3DA3BE4 - [string] Active Subtitle Text&lt;br /&gt;
&lt;br /&gt;
===Camera===&lt;br /&gt;
* Shenmue2.exe+D20430 - [float] Camera Position X Axis&lt;br /&gt;
* Shenmue2.exe+D20438 - [float] Camera Position Y Axis&lt;br /&gt;
* Shenmue2.exe+D20434 - [float] Camera Position Z Axis&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+D2045C - [float] Camera Position X Axis&lt;br /&gt;
* Shenmue2.exe+D20464 - [float] Camera Position Y Axis&lt;br /&gt;
* Shenmue2.exe+D20460 - [float] Camera Position Z Axis&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+D202F4 - [int] Camera State (defaults to 0, locks position with other values)&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+D20608 - [float] Camera Distance (defaults to 3.1f)&lt;br /&gt;
* Shenmue2.exe+D205F0 - [float] Camera Distance (defaults to 3.1f)&lt;br /&gt;
&lt;br /&gt;
===Time===&lt;br /&gt;
* Shenmue2.exe+81CEE82 - [byte] Time of Day: Day&lt;br /&gt;
* Shenmue2.exe+81CEE83 - [byte] Time of Day: Week&lt;br /&gt;
* Shenmue2.exe+81CEE81 - [byte] Time of Day: Month&lt;br /&gt;
* Shenmue2.exe+81CEE80 - [byte] Time of Day: Year&lt;br /&gt;
* Shenmue2.exe+81CEE84 - [byte] Time of Day: Hours&lt;br /&gt;
* Shenmue2.exe+81CEE85 - [byte] Time of Day: Minutes&lt;br /&gt;
* Shenmue2.exe+81CEE86 - [byte] Time of Day: Seconds&lt;br /&gt;
* Shenmue2.exe+3EE1DAC - [byte] Time of Day: Freeze Game Time &lt;br /&gt;
* Shenmue2.exe+3EE1DA8 - [float] Game Time Multiplier (defaults to 1)&lt;br /&gt;
&lt;br /&gt;
===Map Warping===&lt;br /&gt;
* Shenmue2.exe+E79024 - [string] Warp AreaID (MapID)&lt;br /&gt;
* Shenmue2.exe+E79028 - [byte] Warp SceneID (Disc #) (set the scene/disc number to warp to) (only scene 1 tested so far...)&lt;br /&gt;
* Shenmue2.exe+E7902C - [byte] Warp EntryID (MapEntryPoint) (set the entry point for any given map to warp to)&lt;br /&gt;
* Shenmue2.exe+E79030 - [byte] Warp Pre-Init (must be set to 6)&lt;br /&gt;
* Shenmue2.exe+E79020 - [byte] Area Map Warp Trigger (set 1 to trigger instant warp)&lt;br /&gt;
NOTE: All offsets must be populated with valid values before warping, will crash game otherwise.&lt;br /&gt;
&lt;br /&gt;
===Rendering===&lt;br /&gt;
* Shenmue2.exe+3EE0B9E - [int] 60 FPS (defaults to 0, 1 = 60fps)&lt;br /&gt;
* Shenmue2.exe+44BA7E0 - [int] 200+ FPS (defaults to 0, 1 = 200+fps)&lt;br /&gt;
* Shenmue2.exe+3EE10BC - [float] Frame Time &lt;br /&gt;
* Shenmue2.exe+3EE10C0 - [string] Frame Time including FPS&lt;br /&gt;
* Shenmue2.exe+94E604 - [byte] Render UI (default = 1, 0 = off)&lt;br /&gt;
&lt;br /&gt;
====Weather====&lt;br /&gt;
====Rendering====&lt;br /&gt;
* Shenmue2.exe+964240 - [int] Draw Air (Clouds) (defaults to 1, 0 for off)&lt;br /&gt;
* Shenmue2.exe+964234 - [int] Draw Sky Dome (defaults to 1, 0 for off)&lt;br /&gt;
* Shenmue2.exe+964244 - [int] Draw Planets (sun &amp;amp; moon)(defaults to 1, 0 for off)&lt;br /&gt;
* Shenmue2.exe+8E056C - [float] Weather related (defaults to 4, higher values increase brightness)&lt;br /&gt;
* Shenmue2.exe+964234 - [byte] Skydome related (defaults to 1, 0 causes darker skydome)&lt;br /&gt;
* Shenmue2.exe+964240 - [byte] Skydome texture bool (defaults to 1, 0 causes no skydome texture)&lt;br /&gt;
(v1.04 offsets)&lt;br /&gt;
* Shenmue2.exe+8D0C20 - [float] Sun Direction(?)&lt;br /&gt;
* Shenmue2.exe+8E0878 - [float] Sun Direction (?)&lt;br /&gt;
* Shenmue2.exe+8CFC60 - [float] Wind Simulation force/power(?) (defaults to 0.005)&lt;br /&gt;
* Shenmue2.exe+8CFAF4 - [float] Wind Simulation force/power(?)&lt;br /&gt;
&lt;br /&gt;
===Stats===&lt;br /&gt;
* Shenmue2.exe+CFABF8 - [byte] First Gacha toy Unlock &lt;br /&gt;
** +0x20 (for a total of 0x2240) - [byte] Gacha Unlocked? flag (0 if locked, 1 if unlocked)&lt;br /&gt;
* Shenmue2.exe+CFCE38 - [byte] Last Gacha toy unlock&lt;br /&gt;
&lt;br /&gt;
===Settings===&lt;br /&gt;
====Controls====&lt;br /&gt;
* Shenmue2.exe+8168804 - [byte] Swap Look and Run (defaults to 0)&lt;br /&gt;
* Shenmue2.exe+956868 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81686E4 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue2.exe+8168924 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+8168805 - [byte] Invert Look Y Axis (defaults to 0)&lt;br /&gt;
* Shenmue2.exe+9568D8 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81686E5 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue2.exe+8168925 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
&lt;br /&gt;
=====Keybindings=====&lt;br /&gt;
* Shenmue2.exe+8168928 - [byte] First Keybinding (Talk/Action)&lt;br /&gt;
** +0x3 bytes for each subsequent keybinding&lt;br /&gt;
* Shenmue2.exe+816898C - [byte] Last Keybinding (Guard)&lt;br /&gt;
&lt;br /&gt;
Offsets for the keybindings shown in the menu:&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+81686E8 - [byte] First Keybinding (Talk/Action)(menu variable)&lt;br /&gt;
** +0x3 bytes for each subsequent keybinding&lt;br /&gt;
* Shenmue2.exe+816874C - [byte] Last Keybinding (Guard)(menu variable)&lt;br /&gt;
&lt;br /&gt;
====Audio====&lt;br /&gt;
* Shenmue2.exe+3EE3864 - [int] Audio Device&lt;br /&gt;
* Shenmue2.exe+81688D0 - [int] Audio Device&lt;br /&gt;
* Shenmue2.exe+81689F0 - [int] Audio Device&lt;br /&gt;
* Shenmue2.exe+955E38 - [int] Audio Device (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687B0 - [int] Audio Device (menu variable)&lt;br /&gt;
* Shenmue2.exe+9B9408 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue2.exe+BB5D2C - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue2.exe+81688D4 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue2.exe+81689F4 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue2.exe+955EA8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81687B4 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)(menu variable)&lt;br /&gt;
* Shenmue2.exe+955F18 - [int] Text Language&lt;br /&gt;
** 0 = English&lt;br /&gt;
** 1 = French&lt;br /&gt;
** 2 = German&lt;br /&gt;
** 3 = Korean&lt;br /&gt;
** 4 = Traditional Chinese&lt;br /&gt;
** 5 = Simplified Chinese&lt;br /&gt;
** 6 = Default&lt;br /&gt;
* Shenmue2.exe+81688DC - [int] Dialogue &amp;amp; Text&lt;br /&gt;
* Shenmue2.exe+81689FC - [int] Dialogue &amp;amp; Text&lt;br /&gt;
** 0 = Cinema Mode&lt;br /&gt;
** 1 = Shenmue Mode&lt;br /&gt;
** 2 = Game Mode&lt;br /&gt;
** 3 = Text mode&lt;br /&gt;
* Shenmue2.exe+955F88 - [int] Dialogue &amp;amp; Text (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687BC - [int] Dialogue &amp;amp; Text (menu variable)&lt;br /&gt;
* Shenmue2.exe+81688E4 - [float] SFX Volume (defaults to 1)&lt;br /&gt;
* Shenmue2.exe+955FFC - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+9A9AF4 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81687C4 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+8168A04 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81688E8 - [float] Music Volume (defaults to 1)&lt;br /&gt;
* Shenmue2.exe+95606C - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+9A9AF8 - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81687C8 - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+8168A08 - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81688E0 - [float] Speech Volume (defaults to 1)&lt;br /&gt;
* Shenmue2.exe+9560DC - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+81687C0 - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue2.exe+8168A00 - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
====Graphics====&lt;br /&gt;
* Shenmue2.exe+81688EC - [int] Display Mode&lt;br /&gt;
* Shenmue2.exe+8168A0C - [int] Display Mode&lt;br /&gt;
** 0 = Windowed&lt;br /&gt;
** 1 = Borderless&lt;br /&gt;
** 2 = Fullscreen&lt;br /&gt;
* Shenmue2.exe+95A828 - [int] Display Mode (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687CC - [int] Display Mode (menu variable)&lt;br /&gt;
* Shenmue2.exe+81688F4 - [byte] Screen Resolution&lt;br /&gt;
* Shenmue2.exe+8168A14 - [byte] Screen Resolution&lt;br /&gt;
** 0 = 640x480&lt;br /&gt;
** 1 = 720x480&lt;br /&gt;
** 2 = 720x576&lt;br /&gt;
** 3 = 800x600&lt;br /&gt;
** 4 = 1024x768&lt;br /&gt;
...&lt;br /&gt;
** 19 = 1920x1080&lt;br /&gt;
...&lt;br /&gt;
** 25 = 3840x2160&lt;br /&gt;
** 26 = 4096x2160&lt;br /&gt;
* Shenmue2.exe+95A908 - [byte] Screen Resolution (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687D4 - [byte] Screen Resolution (menu variable)&lt;br /&gt;
* Shenmue2.exe+81688F8 - [float] Resolution Scale&lt;br /&gt;
* Shenmue2.exe+8168A18 - [float] Resolution Scale&lt;br /&gt;
* Shenmue2.exe+95A97C - [float] Resolution Scale (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687D8 - [float] Resolution Scale (menu variable)&lt;br /&gt;
* Shenmue2.exe+81688FC  - [float] Supersampling&lt;br /&gt;
* Shenmue2.exe+8168A1C  - [float] Supersampling&lt;br /&gt;
* Shenmue2.exe+95A9EC - [float] Supersampling (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687DC - [float] Supersampling (menu variable)&lt;br /&gt;
* Shenmue2.exe+8168900 - [byte] FXAA &lt;br /&gt;
* Shenmue2.exe+95AA58 - [byte] FXAA (menu variable)&lt;br /&gt;
* Shenmue2.exe+9F6E04 - [byte] FXAA (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687E0 - [byte] FXAA (menu variable)&lt;br /&gt;
* Shenmue2.exe+8168A20 - [byte] FXAA (menu variable)&lt;br /&gt;
* Shenmue2.exe+8168904 - [int] Bloom&lt;br /&gt;
* Shenmue2.exe+8168A24 - [int] Bloom&lt;br /&gt;
** 0 = Off&lt;br /&gt;
** 1 = Low&lt;br /&gt;
** 2 = High&lt;br /&gt;
* Shenmue2.exe+95AAC8 - [int] Bloom (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687E4 - [int] Bloom (menu variable)&lt;br /&gt;
* Shenmue2.exe+816890C - [float] Gamma&lt;br /&gt;
* Shenmue2.exe+95AB3C - [float] Gamma (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687EC - [float] Gamma (menu variable)&lt;br /&gt;
* Shenmue2.exe+8168A2C - [float] Gamma (menu variable)&lt;br /&gt;
* Shenmue2.exe+8168908 - [byte] Aspect Ratio&lt;br /&gt;
* Shenmue2.exe+8168A28 - [byte] Aspect Ratio&lt;br /&gt;
* Shenmue2.exe+95AC18 - [byte] Aspect Ratio (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687E8 - [byte] Aspect Ratio (menu variable)&lt;br /&gt;
* Shenmue2.exe+8168914 - [float] UI Display Area&lt;br /&gt;
* Shenmue2.exe+8168A34 - [float] UI Display Area&lt;br /&gt;
* Shenmue2.exe+95AC8C - [float] UI Display Area (menu variable)&lt;br /&gt;
* Shenmue2.exe+81687F4 - [float] UI Display Area (menu variable)&lt;br /&gt;
&lt;br /&gt;
===NPCs===&lt;br /&gt;
&lt;br /&gt;
===Interface===&lt;br /&gt;
* Shenmue2.exe+94E604 - [byte] set to 1 by default, 0 hides the HUD&lt;br /&gt;
* Shenmue2.exe+81D11D8 - [byte] set to 0 by default, set to 1 to pause; if paused, set to 1 to resume&lt;br /&gt;
* Shenmue2.exe+3C15FA0 - [int] set to 0 by default, set to 1 to pause; if paused, set to 1 to resume&lt;br /&gt;
* Shenmue2.exe+E34060 - [int] set to 0 by default, set to 1 to show pause screen without pausing the title.&lt;br /&gt;
&lt;br /&gt;
(v1.04 offsets)&lt;br /&gt;
* Shenmue2.exe+BCB6EC - [float] 'am/pm' text position (x)&lt;br /&gt;
* Shenmue2.exe+BCB6E0 - [float] 'am/pm' text position (y)&lt;br /&gt;
* Shenmue2.exe+BCB6E4 - [float] 'am/pm' text position (z)&lt;br /&gt;
* Shenmue2.exe+BCB6E8 - [float] 'am/pm' text scale(?)&lt;br /&gt;
&lt;br /&gt;
* Shenmue2.exe+BB7214 - [float] 'date/time' text in menu position (z)&lt;br /&gt;
* Shenmue2.exe+BB7210 - [float] 'date/time' text in menu position (y) (text clip at values &amp;lt;-230)&lt;br /&gt;
* Shenmue2.exe+BB6EF8 - [float] 'date/time' icon in menu scale&lt;br /&gt;
* Shenmue2.exe+BB6EF4 - [float] 'date/time' icon in menu position (z)&lt;br /&gt;
&lt;br /&gt;
====Gacha Collection====&lt;br /&gt;
* Shenmue2.exe+CFAB20 - [byte] Gacha Table Horizontal (defaults to 8)&lt;br /&gt;
* Shenmue2.exe+CFAB24 - [byte] Gacha Table Vertical (defaults to 4)&lt;br /&gt;
* Shenmue2.exe+CFAB98 - [int] Number of Gacha Toys (defaults to 275)&lt;br /&gt;
* Shenmue2.exe+CFEBF0 - [int] Number of Gacha Toys (defaults to 275)&lt;br /&gt;
(v1.04 offsets)&lt;br /&gt;
* Shenmue2.exe+CE3C88 - [int] Unlock flag for new item #1 (+0x20 for each subsequent additional toy)&lt;br /&gt;
* Shenmue2.exe+CE3C80 - [int] New Item Category ID (1 for capsule toys) (+0x20 for each subsequent additional toy)&lt;br /&gt;
* Shenmue2.exe+CE3C84 - [int] New Item item/model ID (+0x20 for each subsequent additional toy)&lt;br /&gt;
&lt;br /&gt;
====Menu====&lt;br /&gt;
&lt;br /&gt;
===Physics===&lt;br /&gt;
* Shenmue2.exe+D25CE0 - [byte] Remove all collisions (default 3 or 5, set to 0 for no collision)&lt;br /&gt;
&lt;br /&gt;
===Undocumented===&lt;br /&gt;
* Shenmue2.exe+8217CA0 - [int] Defaults to 1, 0 disables all rendering apart from sky&lt;br /&gt;
* Shenmue2.exe+3D78778 - [int] Defaults to 0, 1 disables the buttons in the bottom-right of the screen&lt;br /&gt;
* Shenmue2.exe+81D1E6C - [int] Number of Active NPCs in area&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Memory_Addresses_(SM1)&amp;diff=634</id>
		<title>Memory Addresses (SM1)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Memory_Addresses_(SM1)&amp;diff=634"/>
		<updated>2023-05-23T01:20:01Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;br /&gt;
[[Category:Shenmue]]&lt;br /&gt;
[[Category:Memory Addresses]]&lt;br /&gt;
Offsets listed here are for Patch v1.07, unless noted otherwise. &lt;br /&gt;
== Memory Addresses ==&lt;br /&gt;
&lt;br /&gt;
===General===&lt;br /&gt;
* Shenmue.exe+9F50EB8 - [pointer] Character Structure (?)&lt;br /&gt;
** +0x8 - [float] Ryo Position X&lt;br /&gt;
** +0x10 - [float] Ryo Position Y&lt;br /&gt;
** +0xC - [float] Ryo Position Z&lt;br /&gt;
* Shenmue.exe+9F37498 - [int] Player Money &lt;br /&gt;
* Shenmue.exe+9F3749C - [int] SEGA Coins&lt;br /&gt;
* Shenmue.exe+9E334CC - [string] MPK/MAP0&lt;br /&gt;
* Shenmue.exe+9F502D4 - [int] Current Scene Number&lt;br /&gt;
* Shenmue.exe+9F502E0 - [string] Current Map/Area ID&lt;br /&gt;
* Shenmue.exe+9F502D8 - [int] Current Map/Area Entry Point&lt;br /&gt;
* Shenmue.exe+1330040 - [string] Current Date&lt;br /&gt;
&lt;br /&gt;
===Camera===&lt;br /&gt;
* Shenmue.exe+5E15208 - [float] Camera Position X/Y&lt;br /&gt;
* Shenmue.exe+5E15200 - [float] Camera Position X/Y&lt;br /&gt;
* Shenmue.exe+5E15204 - [float] Camera Position Z&lt;br /&gt;
* Shenmue.exe+5E151F4 - [int] Camera State&lt;br /&gt;
* Shenmue.exe+9DB6B0 - [double] Field of View related (defaults to 57.2957795130824)&lt;br /&gt;
* Shenmue.exe+9DBA50 - [float] Field of View related (defaults to 182.0444489)&lt;br /&gt;
* Shenmue.exe+A3BEDC - [float] Camera Distance from Player (defaults to 3.099999905f)&lt;br /&gt;
&lt;br /&gt;
===Time===&lt;br /&gt;
* Shenmue.exe+9F34622 - [byte] Time of Day: Day&lt;br /&gt;
* Shenmue.exe+9F34621 - [byte] Time of Day: Month&lt;br /&gt;
* Shenmue.exe+9F34620 - [byte] Time of Day: Year&lt;br /&gt;
* Shenmue.exe+9F34624 - [byte] Time of Day: Hours&lt;br /&gt;
* Shenmue.exe+9F34625 - [byte] Time of Day: Minutes&lt;br /&gt;
* Shenmue.exe+9F34626 - [byte] Time of Day: Seconds&lt;br /&gt;
* Shenmue.exe+9E31947 - [int] Freeze Time (1 = freeze, 0 = normal)&lt;br /&gt;
* Shenmue.exe+EB161C - [float] Time of Day: Time Multiplier 1/2 (controls speed of in-game clock; 1 by default, works in conjunction with 2/2 below ([Time Multiplier 1/2] * [Time Multiplier 2/2])&lt;br /&gt;
* Shenmue.exe+9F3464C - [float] Time of Day: Time Multiplier 2/2 (controls speed of in-game clock; 0.5 by default, works in conjunction with 1/2 above ([Time Multiplier 2/2] * [Time Multiplier 1/2])&lt;br /&gt;
** Note: To approximate in-game time speed to real-time, use multipliers 1 and 2 to multiply (1 * 0.0333333333)&lt;br /&gt;
* Shenmue.exe+9F34622 - [byte] Weather Pattern (usually 07, 0B, 19 trigger snow with varying degrees of intensity)&lt;br /&gt;
* Shenmue.exe+EB01EC - [float] Time since Start&lt;br /&gt;
&lt;br /&gt;
===Map Warping===&lt;br /&gt;
* Shenmue.exe+64C8998 - [byte] Area Map Warp Trigger (defaults to 0, set 1 to trigger instant warp)&lt;br /&gt;
* Shenmue.exe+64C899C - [string] Warp AreaID (MapID) (must be manually initialized on first start/load before warping, will crash game otherwise)&lt;br /&gt;
** Shenmue.exe+64C89A8 - [byte] (must be manually initialized to 7 on first start/load before warping, will crash game otherwise)&lt;br /&gt;
* Shenmue.exe+64C89A4 - [byte] Warp EntryID (MapEntryPoint) (set the entry point for any given map to warp to)&lt;br /&gt;
* Shenmue.exe+64C89A0 - [byte] Warp SceneID (Disc #) (set the scene/disc number to warp to)&lt;br /&gt;
&lt;br /&gt;
===Rendering===&lt;br /&gt;
* Shenmue.exe+EB0484 - [float] Frame Time&lt;br /&gt;
* Shenmue.exe+EB0280 - [string] Frame Time and FPS&lt;br /&gt;
* Shenmue.exe+EB04C8 - [byte] 60fps&lt;br /&gt;
* Shenmue.exe+1478530 - [byte] 200+fps&lt;br /&gt;
* Shenmue.exe+D87DA6 - [byte] Stabilize framerate (0 = off, 1 = on)&lt;br /&gt;
* Shenmue.exe+ED82C1 - [byte] Render UI (default = 1, 0 = off)&lt;br /&gt;
* Shenmue.exe+9DBB64 - [float] UI Screen Resolution Horizontal (defaults to 1920.0)&lt;br /&gt;
* Shenmue.exe+9DBB38 - [float] UI Screen Resolution Vertical (defaults to 1080.0)&lt;br /&gt;
* Shenmue.exe+EB054C - [float] Screen Resolution Horizontal (defaults to 1920.0)&lt;br /&gt;
* Shenmue.exe+EB0810 - [float] Screen Resolution Vertical (defaults to 1080.0)&lt;br /&gt;
* Shenmue.exe+0EB0C34 - [int] Rendering Mode:&lt;br /&gt;
** 0 norm&lt;br /&gt;
** 1 ???&lt;br /&gt;
** 2 wireframe&lt;br /&gt;
** 3 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 4 clear framebuffer&lt;br /&gt;
** 5 &amp;quot;&amp;quot; &amp;quot;&amp;quot; &lt;br /&gt;
** 6 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 7 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 8 norm (w/o sky)&lt;br /&gt;
** 9 &amp;quot;&amp;quot; &amp;quot;&amp;quot; &lt;br /&gt;
** 10 wireframe (from perspective)&lt;br /&gt;
** 11 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 12 clear framebuffer (?)&lt;br /&gt;
** 13 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 14 &amp;quot;&amp;quot; &amp;quot;&amp;quot; &lt;br /&gt;
** 15 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 16 render opposites&lt;br /&gt;
** 17 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 18 wireframe with 16&lt;br /&gt;
** 19 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 20 clear framebuffer (?)&lt;br /&gt;
** 21 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 22 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 23 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 24 normal (with some strips being weird lol)&lt;br /&gt;
** 25 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 26 slightly different wireframe&lt;br /&gt;
** 27 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 28 clear framebuffer (?)&lt;br /&gt;
** 29 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 30 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 31 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 32 same as 24&lt;br /&gt;
* Shenmue.exe+1342D48 - [int] Fog Enabled (1 = on, 0 = off)&lt;br /&gt;
* Shenmue.exe+1342D38 - [float] Fog Colour R (max 1.0)&lt;br /&gt;
* Shenmue.exe+1342D3C - [float] Fog Colour G (max 1.0) &lt;br /&gt;
* Shenmue.exe+1342D40 - [float] Fog Colour B (max 1.0)&lt;br /&gt;
&lt;br /&gt;
===Stats===&lt;br /&gt;
&lt;br /&gt;
===Settings===&lt;br /&gt;
====Controls====&lt;br /&gt;
* Shenmue.exe+9F0FE14 - [byte] Swap Look and Run (defaults to 0)&lt;br /&gt;
* Shenmue.exe+A65DA8 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FCF4 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FF34 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FE15 - [byte] Invert Look Y Axis (defaults to 0)&lt;br /&gt;
* Shenmue.exe+A65E18 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FCF5 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FF35 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FE16 - [byte] Area Jump (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A65E88 - [byte] Area Jump (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FCF6 - [byte] Area Jump (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FF36 - [byte] Area Jump (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
=====Keybindings=====&lt;br /&gt;
* Shenmue.exe+9F0FF3C - [byte] First Keybinding (Talk/Action)&lt;br /&gt;
** +0x3 bytes for each subsequent keybinding&lt;br /&gt;
* Shenmue.exe+9F10000 - [byte] Last Keybinding (Right)&lt;br /&gt;
&lt;br /&gt;
Offsets for the keybindings shown in the menu:&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FCFC - [byte] First Keybinding (Talk/Action)(menu variable)&lt;br /&gt;
** +0x3 bytes for each subsequent keybinding&lt;br /&gt;
* Shenmue.exe+9F0FDC0 - [byte] Last Keybinding (Right)(menu variable)&lt;br /&gt;
&lt;br /&gt;
====Display====&lt;br /&gt;
* Shenmue.exe+9F0FF00 - [int] Display Mode&lt;br /&gt;
* Shenmue.exe+9F10020 - [int] Display Mode&lt;br /&gt;
** 0 = Windowed&lt;br /&gt;
** 1 = Borderless&lt;br /&gt;
** 2 = Fullscreen&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A488 - [int] Display Mode (menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDE0 - [int] Display Mode (menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FDEC - [float] Resolution Scale (defaults to 0.5, changes occur instantly)&lt;br /&gt;
* Shenmue.exe+A6A5DC - [float] Resolution Scale (menu setting)(defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F0FDEC - [float] Resolution Scale (menu setting)(defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F0FF0C - [float] Resolution Scale (defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F1002C - [float] Resolution Scale (defaults to 1) &lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A56878 - [float] Contrast (defaults to 0.5, changes occur instantly)&lt;br /&gt;
* Shenmue.exe+A6A80C - [float] Contrast (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FE04 - [float] Contrast (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F10044 - [float] Contrast (defaults to 0.5 - affects menu variables)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FF18 - [int] Bloom&lt;br /&gt;
* Shenmue.exe+9F10038 - [int] Bloom&lt;br /&gt;
** 0 = Off&lt;br /&gt;
** 1 = Low&lt;br /&gt;
** 2 = High&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A728 - [int] Bloom (menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDF8 - [int] Bloom (menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A79C - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FE00 - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FF20 - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F10040 - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A6B8 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A6AB24 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F0FDF4 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F0FF14 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F10034 - [byte] FXAA (defaults to 1)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A878 - [byte] Aspect Ratio (defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F0FDFC - [byte] Aspect Ratio (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F0FF1C - [byte] Aspect Ratio (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F1003C - [byte] Aspect Ratio (defaults to 1)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F10048 - [float] UI Display Area (defaults to 1, changes occur instantly)&lt;br /&gt;
* Shenmue.exe+A6A8EC - [float] UI Display Area (defaults to 1 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FE08 - [float] UI Display Area (defaults to 1 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FF28 - [float] UI Display Area (defaults to 1 - affects menu variables)&lt;br /&gt;
&lt;br /&gt;
====Audio====&lt;br /&gt;
* Shenmue.exe+A64058 - [int] Audio Device&lt;br /&gt;
* Shenmue.exe+9F0FDC4 - [int] Audio Device&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A640C8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+C5F278 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+EDCA00 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F0FDC8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F0FEE8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F10008 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F2F558 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A64138 - [int] Text Language&lt;br /&gt;
** 0 = English&lt;br /&gt;
** 1 = French&lt;br /&gt;
** 2 = German&lt;br /&gt;
** 3 = Korean&lt;br /&gt;
** 4 = Traditional Chinese&lt;br /&gt;
** 5 = Simplified Chinese&lt;br /&gt;
** 6 = Default&lt;br /&gt;
* Shenmue.exe+9F0FEF0 - [int] Dialogue &amp;amp; Text &lt;br /&gt;
* Shenmue.exe+9F10010 - [int] Dialogue &amp;amp; Text &lt;br /&gt;
** 0 = Cinema Mode&lt;br /&gt;
** 1 = Shenmue Mode&lt;br /&gt;
** 2 = Game Mode&lt;br /&gt;
** 3 = Text mode&lt;br /&gt;
* Shenmue.exe+A641A8 - [int] Dialogue &amp;amp; Text (menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDD0 - [int] Dialogue &amp;amp; Text (menu variable)  &lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FEF8 - [float] SFX Volume (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A3B44C - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+A6421C - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDD8 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F10018 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FEFC - [float] Music Volume (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A585E8 - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+A6428C - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDDC - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F1001C - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FEF4 - [float] Speech Volume (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A642FC - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDD4 - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F10014 - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
===NPCs===&lt;br /&gt;
====Debug====&lt;br /&gt;
* Shenmue.exe+C64DEC - [int/boolean] Debug Talk Status (locks cutscenes when set to 1, 0 is default)&lt;br /&gt;
&lt;br /&gt;
===Interface===&lt;br /&gt;
====Menu====&lt;br /&gt;
&lt;br /&gt;
===Physics===&lt;br /&gt;
* Shenmue.exe+64C8FA8 - [byte] Remove door collisions (default 255, set to 0 for no collision)&lt;br /&gt;
* Shenmue.exe+8EBD9 - [byte] Remove almost all collisions (default 74 [je], change to EB [jmp] for no collision)&lt;br /&gt;
&lt;br /&gt;
===Save Files===&lt;br /&gt;
* Shenmue.exe+1D2B64 - [byte] Ignore save checksum when loading (default 0F8594000000 [jne], NOP the instruction to ignore the checksum)&lt;br /&gt;
&lt;br /&gt;
===Undocumented===&lt;br /&gt;
(v1.00 offsets)&lt;br /&gt;
Camera related???&lt;br /&gt;
* Shenmue.exe+5E16AD0 - [float] (set camera distance from player, auto-zooms from left/right)&lt;br /&gt;
* Shenmue.exe+5E16AD4 - [float] (set camera distance from player, auto-zooms from top/bottom)&lt;br /&gt;
* Shenmue.exe+5E16AD8 - [float] (set camera distance from player, auto-zooms from front/back)&lt;br /&gt;
* Shenmue.exe+5E16ADC - [float] (set camera horizontal angle away from player, auto-pans back)&lt;br /&gt;
* Shenmue.exe+5E16AE4 - [float] (set camera horizontal angle away from player, auto-pans back)&lt;br /&gt;
* Shenmue.exe+5E16AE0 - [float] (set camera vertical angle away from player, auto-pans back)&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Function_Memory_Addresses_(SM2)&amp;diff=633</id>
		<title>Function Memory Addresses (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Function_Memory_Addresses_(SM2)&amp;diff=633"/>
		<updated>2023-05-23T01:19:52Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;br /&gt;
[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Memory Addresses]]&lt;br /&gt;
Offsets listed here are for Patch v1.04, unless noted otherwise. &lt;br /&gt;
&lt;br /&gt;
== Function Memory Addresses ==&lt;br /&gt;
===General===&lt;br /&gt;
* Shenmue2.exe+004AEB30 - [[EVFO]] callback&lt;br /&gt;
&lt;br /&gt;
===Gameplay===&lt;br /&gt;
* Shenmue2.exe+48190 - [[EVT_AT_SetVoice]] task enqueue&lt;br /&gt;
* Shenmue2.exe+47CD0 - [[EVT_AT_SetMot]] task enqueue&lt;br /&gt;
&lt;br /&gt;
===Files===&lt;br /&gt;
====AFS====&lt;br /&gt;
* Shenmue2.exe+477B70 - [[evl_PAK]]&lt;br /&gt;
&lt;br /&gt;
====MapInfo====&lt;br /&gt;
* Shenmue2.exe+004B4790 - MAPINFO Token finder (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AE1F3 - LGHT Child reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AE260 - LGHT Child Entry reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AC9B0 - [[(HLTaskFunc)LT_LightTask]] task enqueue (v1.07)&lt;br /&gt;
** Shenmue2.exe+004ACD70 - [[(HLTaskFunc)LT_LightTask]] task function (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AD470 - [[(HLTaskFunc)MC_Callback_MapControlTask]] task enqueue (v1.07)&lt;br /&gt;
** Shenmue2.exe+004AD170 - [[(HLTaskFunc)MC_Callback_MapControlTask]] task function (v1.07)&lt;br /&gt;
&lt;br /&gt;
====MT7====&lt;br /&gt;
* Shenmue2.exe+004CE470 - MT7 reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+0035EE40 - XB01 reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+003481B0 - XB01 faces reader (v1.07)&lt;br /&gt;
&lt;br /&gt;
===Sleep===&lt;br /&gt;
* Shenmue2.exe+46AD0 - [[(HLTaskFunc)SleepData.func]] &amp;amp; [[(HLTaskFunc)SleepData.func2]]&lt;br /&gt;
* Shenmue2.exe+46BA0 - [[(HLTaskFunc)SleepData.func]]&lt;br /&gt;
===Camera===&lt;br /&gt;
&lt;br /&gt;
===Time===&lt;br /&gt;
* Shenmue2.exe+585D90 - [[(HLTaskFunc)InitTimeProgram]]&lt;br /&gt;
&lt;br /&gt;
===Audio===&lt;br /&gt;
* Shenmue2.exe+577D90 - [[(HLTaskFunc)sndCtrlSoundProgram]]&lt;br /&gt;
&lt;br /&gt;
===Rendering===&lt;br /&gt;
&lt;br /&gt;
===Stats===&lt;br /&gt;
&lt;br /&gt;
===Settings===&lt;br /&gt;
====Display====&lt;br /&gt;
====Audio====&lt;br /&gt;
====Text====&lt;br /&gt;
&lt;br /&gt;
===NPCs===&lt;br /&gt;
&lt;br /&gt;
===Controls===&lt;br /&gt;
&lt;br /&gt;
===Interface===&lt;br /&gt;
====Menu====&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Category:Memory_Addresses&amp;diff=632</id>
		<title>Category:Memory Addresses</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Category:Memory_Addresses&amp;diff=632"/>
		<updated>2023-05-23T01:19:43Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Runtime]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Category:Runtime&amp;diff=631</id>
		<title>Category:Runtime</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Category:Runtime&amp;diff=631"/>
		<updated>2023-05-23T01:18:59Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created blank page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=630</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=630"/>
		<updated>2023-05-23T01:18:36Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&amp;lt;strong&amp;gt;Welcome to the Wulinshu Wiki!&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Wulinshu Wiki focuses on the research and documentation of the Shenmue I &amp;amp; II HD ports by [https://d3tltd.com/ d3t].&lt;br /&gt;
&lt;br /&gt;
[[File:Shenmue I Logo.png|thumb|left|link=https://wulinshu.com/wiki/index.php/Category:Shenmue]][[File:Shenmue II Logo.png|thumb|right|link=https://wulinshu.com/wiki/index.php/Category:Shenmue_II]] &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
=== Useful Links ===&lt;br /&gt;
==== [[:Category:Runtime|Runtime]] ====&lt;br /&gt;
* [[:Category:Memory Addresses|Memory Addresses]]&lt;br /&gt;
** [[Memory Addresses (SM1)]]&lt;br /&gt;
** [[Memory Addresses (SM2)]]&lt;br /&gt;
** [[Function Memory Addresses (SM1)]]&lt;br /&gt;
** [[Function Memory Addresses (SM2)]]&lt;br /&gt;
* [[:Category:Text References|Text References]]&lt;br /&gt;
** [[Text References (SM1)]]&lt;br /&gt;
** [[Text References (SM2)]]&lt;br /&gt;
* [[:Category:Tasks|Tasks]]&lt;br /&gt;
** [[:Category:Tasks (SM1)|Tasks (SM1)]]&lt;br /&gt;
** [[:Category:Tasks (SM2)|Tasks (SM2)]]&lt;br /&gt;
* [[:Category:Structs|Structs]]&lt;br /&gt;
** [[:Category:Structs (SM1)|Structs (SM1)]]&lt;br /&gt;
** [[:Category:Structs (SM2)|Structs (SM2)]]&lt;br /&gt;
&lt;br /&gt;
==== [[HLib]] ====&lt;br /&gt;
* [[Task Queue System]]&lt;br /&gt;
* [[Memory Management (USE/fREe)]]&lt;br /&gt;
* [[Shenmue Script]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:d3t|d3t]] ====&lt;br /&gt;
* [[Model Override]]&lt;br /&gt;
* [[Texture Override]]&lt;br /&gt;
* [[Asset Remapping]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:Files|Files]] ====&lt;br /&gt;
* [[:Category:Containers|Containers]]&lt;br /&gt;
** [[AFS]]&lt;br /&gt;
** [[IDX]]&lt;br /&gt;
** [[PKF]]&lt;br /&gt;
** [[PKS]]&lt;br /&gt;
** [[SPR]]&lt;br /&gt;
* [[:Category:Map|Map]]&lt;br /&gt;
** [[MAPINFO]]&lt;br /&gt;
** [[:Category:Map_IDs|Map IDs]]&lt;br /&gt;
* [[:Category:Models|Models]]&lt;br /&gt;
** [[MT5]]&lt;br /&gt;
** [[MT7]]&lt;br /&gt;
* [[:Category:Animations|Animations]]&lt;br /&gt;
** [[MOTN]]&lt;br /&gt;
* [[:Category:Textures|Textures]]&lt;br /&gt;
** [[PVR]]&lt;br /&gt;
* [[:Category:Subtitles|Subtitles]]&lt;br /&gt;
** [[SUB]]&lt;br /&gt;
* [[:Category:Music|Music]]&lt;br /&gt;
** [[SND]]&lt;br /&gt;
** [[Music Tracks (WS)]]&lt;br /&gt;
** [[Music Tracks (SM1)]]&lt;br /&gt;
** [[Music Tracks (SM2)]]&lt;br /&gt;
** [[Music Tracks (SM3)]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=629</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Main_Page&amp;diff=629"/>
		<updated>2023-05-23T01:17:57Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;center&amp;gt;&amp;lt;strong&amp;gt;Welcome to the Wulinshu Wiki!&amp;lt;/strong&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The Wulinshu Wiki focuses on the research and documentation of the Shenmue I &amp;amp; II HD ports by [https://d3tltd.com/ d3t].&lt;br /&gt;
&lt;br /&gt;
[[File:Shenmue I Logo.png|thumb|left|link=https://wulinshu.com/wiki/index.php/Category:Shenmue]][[File:Shenmue II Logo.png|thumb|right|link=https://wulinshu.com/wiki/index.php/Category:Shenmue_II]] &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
=== Useful Links ===&lt;br /&gt;
==== [[Runtime]] ====&lt;br /&gt;
* [[:Category:Memory Addresses|Memory Addresses]]&lt;br /&gt;
** [[Memory Addresses (SM1)]]&lt;br /&gt;
** [[Memory Addresses (SM2)]]&lt;br /&gt;
** [[Function Memory Addresses (SM1)]]&lt;br /&gt;
** [[Function Memory Addresses (SM2)]]&lt;br /&gt;
* [[:Category:Text References|Text References]]&lt;br /&gt;
** [[Text References (SM1)]]&lt;br /&gt;
** [[Text References (SM2)]]&lt;br /&gt;
* [[:Category:Tasks|Tasks]]&lt;br /&gt;
** [[:Category:Tasks (SM1)|Tasks (SM1)]]&lt;br /&gt;
** [[:Category:Tasks (SM2)|Tasks (SM2)]]&lt;br /&gt;
* [[:Category:Structs|Structs]]&lt;br /&gt;
** [[:Category:Structs (SM1)|Structs (SM1)]]&lt;br /&gt;
** [[:Category:Structs (SM2)|Structs (SM2)]]&lt;br /&gt;
&lt;br /&gt;
==== [[HLib]] ====&lt;br /&gt;
* [[Task Queue System]]&lt;br /&gt;
* [[Memory Management (USE/fREe)]]&lt;br /&gt;
* [[Shenmue Script]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:d3t|d3t]] ====&lt;br /&gt;
* [[Model Override]]&lt;br /&gt;
* [[Texture Override]]&lt;br /&gt;
* [[Asset Remapping]]&lt;br /&gt;
&lt;br /&gt;
==== [[:Category:Files|Files]] ====&lt;br /&gt;
* [[:Category:Containers|Containers]]&lt;br /&gt;
** [[AFS]]&lt;br /&gt;
** [[IDX]]&lt;br /&gt;
** [[PKF]]&lt;br /&gt;
** [[PKS]]&lt;br /&gt;
** [[SPR]]&lt;br /&gt;
* [[:Category:Map|Map]]&lt;br /&gt;
** [[MAPINFO]]&lt;br /&gt;
** [[:Category:Map_IDs|Map IDs]]&lt;br /&gt;
* [[:Category:Models|Models]]&lt;br /&gt;
** [[MT5]]&lt;br /&gt;
** [[MT7]]&lt;br /&gt;
* [[:Category:Animations|Animations]]&lt;br /&gt;
** [[MOTN]]&lt;br /&gt;
* [[:Category:Textures|Textures]]&lt;br /&gt;
** [[PVR]]&lt;br /&gt;
* [[:Category:Subtitles|Subtitles]]&lt;br /&gt;
** [[SUB]]&lt;br /&gt;
* [[:Category:Music|Music]]&lt;br /&gt;
** [[SND]]&lt;br /&gt;
** [[Music Tracks (WS)]]&lt;br /&gt;
** [[Music Tracks (SM1)]]&lt;br /&gt;
** [[Music Tracks (SM2)]]&lt;br /&gt;
** [[Music Tracks (SM3)]]&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Task_Queue_System&amp;diff=625</id>
		<title>Task Queue System</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Task_Queue_System&amp;diff=625"/>
		<updated>2021-12-31T21:34:48Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added task destruction sample code&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Task memory structure=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x08 || uint64_t* || Callback function pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || char* || Task type/name token&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x01 || uint8_t || Unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x0D || 0x01 || uint8_t || Unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x08 || uint64_t* || Next task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0x08 || uint64_t* || Current task pointer (at the moment of creation)&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x48 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x50 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x58 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x60 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x68 || 0x08 || uint64_t* || Callback function parameter struct pointer&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Task queue=&lt;br /&gt;
Task Queue Pointer Offset: 0x1481FFA50 (v1.07)&amp;lt;br&amp;gt;&lt;br /&gt;
At the start an ROOT task is created.&amp;lt;br&amp;gt;&lt;br /&gt;
When the ROOT task was created the Queue gets filled with NONE task's which do nothing.&amp;lt;br&amp;gt;&lt;br /&gt;
At initialization each task has the next task in order as their next task specified inside 0x18.&amp;lt;br&amp;gt;&lt;br /&gt;
The last task however points to 0x142A88530 (v1.07) as their next task.&amp;lt;br&amp;gt;&lt;br /&gt;
The ROOT task points to the first task as it's next task.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Enqueue task=&lt;br /&gt;
&lt;br /&gt;
==Enqueue task without TASK data allocation==&lt;br /&gt;
To enqueue an task without TASK data allocation the subroutine 0x14049D890 (v1.07) needs to be called.&lt;br /&gt;
&amp;lt;sub&amp;gt;&lt;br /&gt;
  EnqueueTask(void* callbackFunction, uint8_t nextFunctionIndex, uint8_t a3, uint32_t taskToken)&lt;br /&gt;
&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Enqueue task with TASK data allocation==&lt;br /&gt;
To enqueue an task with TASK data allocation the subroutine 0x14049DA10 (v1.07) needs to be called.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;sub&amp;gt;&lt;br /&gt;
  EnqueueTaskWithData(void* callbackFunction, uint8_t nextFunctionIndex, uint8_t a3, uint32_t dataSize, uint32_t taskToken, char* debugTaskName)&lt;br /&gt;
&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Task creation=&lt;br /&gt;
During the enqueue process the task will be created with the given callback function.&amp;lt;br&amp;gt;&lt;br /&gt;
The callback function parameter, which is optional, is an pointer to an struct than can have any shape or size the callback function needs.&amp;lt;br&amp;gt;&lt;br /&gt;
This parameter struct will be allocated inside the USE/fREe storage.&lt;br /&gt;
&lt;br /&gt;
=Task execution=&lt;br /&gt;
The main loop iterates through the task queue and calls the callback function with the optional parameter.&amp;lt;br&amp;gt;&lt;br /&gt;
When the callback function returns the next task pointer is read from the current task and moved into the task queue address pointer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
void Shenmue::Main(int argc, void *argv) {&lt;br /&gt;
  // initialize&lt;br /&gt;
  if ( Shenmue::Initialization(argc, argv) )&lt;br /&gt;
  {&lt;br /&gt;
    HLib_Task * taskPtr = nullptr;&lt;br /&gt;
&lt;br /&gt;
    // loop all tasks&lt;br /&gt;
    for ( taskPtr = HLib::CurrentTask; ; HLib::CurrentTask = taskPtr )&lt;br /&gt;
    {&lt;br /&gt;
      // execute task function&lt;br /&gt;
      taskPtr-&amp;gt;taskCallbackFnPtr(taskPtr-&amp;gt;task_data);&lt;br /&gt;
&lt;br /&gt;
      // select next task&lt;br /&gt;
      taskPtr = HLib::CurrentTask-&amp;gt;next_task;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Task cleanup (Destruction)=&lt;br /&gt;
A task controls how long it lives in its own callback function.&amp;lt;br&amp;gt;&lt;br /&gt;
When a task wants to be destroyed it calls the subroutine 0x14049D660 (v1.07) during its own callback.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tasks can also be destroyed if a pointer can be retrieved for it, like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
  HLib_Task * TASK = HLib::EnqueueTaskWithoutParameter(HLTaskFunc_CharacterHandler_Callback, a1, 4ui64, 'RAHC');&lt;br /&gt;
  if ( !TASK )&lt;br /&gt;
    goto COULD_NOT_ENQUEUE_TASK;&lt;br /&gt;
  if ( TASK-&amp;gt;task_data )&lt;br /&gt;
    goto TASK_DATA_ALREADY_EXISTS;&lt;br /&gt;
&lt;br /&gt;
  task_memory = HLib::AllocHeapMemBlock(272i64, 'KSAT');&lt;br /&gt;
  if ( task_memory )&lt;br /&gt;
    *((int *)task_memory + 0x7) |= 0x10u;&lt;br /&gt;
&lt;br /&gt;
  TASK-&amp;gt;task_data = task_memory;&lt;br /&gt;
  if ( !task_memory )&lt;br /&gt;
  {&lt;br /&gt;
TASK_DATA_ALREADY_EXISTS:&lt;br /&gt;
    TASK-&amp;gt;initTaskFnPtr = 0i64;&lt;br /&gt;
    TASK-&amp;gt;taskCallbackFnPtr = HLib::DestroyCurrentTask;&lt;br /&gt;
    TASK-&amp;gt;taskPtr08 = 0i64;&lt;br /&gt;
COULD_NOT_ENQUEUE_TASK:&lt;br /&gt;
    TASK = 0i64;&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Task parameter=&lt;br /&gt;
When a task gets enqueued with a parameter it will need to find some &amp;quot;fREe&amp;quot; storage in the USE/fREe storage.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage entry==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Task token (TASK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0x04 || string  || USE/fREe token&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 || 0x?? || ? || Storage data&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Task_Queue_System&amp;diff=624</id>
		<title>Task Queue System</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Task_Queue_System&amp;diff=624"/>
		<updated>2021-12-31T21:23:15Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added task execution sample code&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Task memory structure=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x08 || uint64_t* || Callback function pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || char* || Task type/name token&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x01 || uint8_t || Unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x0D || 0x01 || uint8_t || Unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x08 || uint64_t* || Next task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0x08 || uint64_t* || Current task pointer (at the moment of creation)&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 || 0x08 || uint64_t* || Some task pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x48 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x50 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x58 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x60 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x68 || 0x08 || uint64_t* || Callback function parameter struct pointer&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Task queue=&lt;br /&gt;
Task Queue Pointer Offset: 0x1481FFA50 (v1.07)&amp;lt;br&amp;gt;&lt;br /&gt;
At the start an ROOT task is created.&amp;lt;br&amp;gt;&lt;br /&gt;
When the ROOT task was created the Queue gets filled with NONE task's which do nothing.&amp;lt;br&amp;gt;&lt;br /&gt;
At initialization each task has the next task in order as their next task specified inside 0x18.&amp;lt;br&amp;gt;&lt;br /&gt;
The last task however points to 0x142A88530 (v1.07) as their next task.&amp;lt;br&amp;gt;&lt;br /&gt;
The ROOT task points to the first task as it's next task.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Enqueue task=&lt;br /&gt;
&lt;br /&gt;
==Enqueue task without TASK data allocation==&lt;br /&gt;
To enqueue an task without TASK data allocation the subroutine 0x14049D890 (v1.07) needs to be called.&lt;br /&gt;
&amp;lt;sub&amp;gt;&lt;br /&gt;
  EnqueueTask(void* callbackFunction, uint8_t nextFunctionIndex, uint8_t a3, uint32_t taskToken)&lt;br /&gt;
&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Enqueue task with TASK data allocation==&lt;br /&gt;
To enqueue an task with TASK data allocation the subroutine 0x14049DA10 (v1.07) needs to be called.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;sub&amp;gt;&lt;br /&gt;
  EnqueueTaskWithData(void* callbackFunction, uint8_t nextFunctionIndex, uint8_t a3, uint32_t dataSize, uint32_t taskToken, char* debugTaskName)&lt;br /&gt;
&amp;lt;/sub&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Task creation=&lt;br /&gt;
During the enqueue process the task will be created with the given callback function.&amp;lt;br&amp;gt;&lt;br /&gt;
The callback function parameter, which is optional, is an pointer to an struct than can have any shape or size the callback function needs.&amp;lt;br&amp;gt;&lt;br /&gt;
This parameter struct will be allocated inside the USE/fREe storage.&lt;br /&gt;
&lt;br /&gt;
=Task execution=&lt;br /&gt;
The main loop iterates through the task queue and calls the callback function with the optional parameter.&amp;lt;br&amp;gt;&lt;br /&gt;
When the callback function returns the next task pointer is read from the current task and moved into the task queue address pointer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C++&amp;quot; line&amp;gt;&lt;br /&gt;
void Shenmue::Main(int argc, void *argv) {&lt;br /&gt;
  // initialize&lt;br /&gt;
  if ( Shenmue::Initialization(argc, argv) )&lt;br /&gt;
  {&lt;br /&gt;
    HLib_Task * taskPtr = nullptr;&lt;br /&gt;
&lt;br /&gt;
    // loop all tasks&lt;br /&gt;
    for ( taskPtr = HLib::CurrentTask; ; HLib::CurrentTask = taskPtr )&lt;br /&gt;
    {&lt;br /&gt;
      // execute task function&lt;br /&gt;
      taskPtr-&amp;gt;taskCallbackFnPtr(taskPtr-&amp;gt;task_data);&lt;br /&gt;
&lt;br /&gt;
      // select next task&lt;br /&gt;
      taskPtr = HLib::CurrentTask-&amp;gt;next_task;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Task cleanup (Destruction)=&lt;br /&gt;
A task controls how long it lives in its own callback function.&amp;lt;br&amp;gt;&lt;br /&gt;
When a task wants to be destroyed it calls the subroutine 0x14049D660 (v1.07) during its own callback.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Task parameter=&lt;br /&gt;
When a task gets enqueued with a parameter it will need to find some &amp;quot;fREe&amp;quot; storage in the USE/fREe storage.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage entry==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Task token (TASK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x08 || uint64_t* || Unknown pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0x04 || string  || USE/fREe token&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 || 0x?? || ? || Storage data&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Memory_Addresses_(SM1)&amp;diff=623</id>
		<title>Memory Addresses (SM1)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Memory_Addresses_(SM1)&amp;diff=623"/>
		<updated>2021-10-21T15:05:16Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added fog &amp;amp; rendering mode offsets&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Memory Addresses]]&lt;br /&gt;
Offsets listed here are for Patch v1.07, unless noted otherwise. &lt;br /&gt;
== Memory Addresses ==&lt;br /&gt;
&lt;br /&gt;
===General===&lt;br /&gt;
* Shenmue.exe+9F50EB8 - [pointer] Character Structure (?)&lt;br /&gt;
** +0x8 - [float] Ryo Position X&lt;br /&gt;
** +0x10 - [float] Ryo Position Y&lt;br /&gt;
** +0xC - [float] Ryo Position Z&lt;br /&gt;
* Shenmue.exe+9F37498 - [int] Player Money &lt;br /&gt;
* Shenmue.exe+9F3749C - [int] SEGA Coins&lt;br /&gt;
* Shenmue.exe+9E334CC - [string] MPK/MAP0&lt;br /&gt;
* Shenmue.exe+9F502D4 - [int] Current Scene Number&lt;br /&gt;
* Shenmue.exe+9F502E0 - [string] Current Map/Area ID&lt;br /&gt;
* Shenmue.exe+9F502D8 - [int] Current Map/Area Entry Point&lt;br /&gt;
* Shenmue.exe+1330040 - [string] Current Date&lt;br /&gt;
&lt;br /&gt;
===Camera===&lt;br /&gt;
* Shenmue.exe+5E15208 - [float] Camera Position X/Y&lt;br /&gt;
* Shenmue.exe+5E15200 - [float] Camera Position X/Y&lt;br /&gt;
* Shenmue.exe+5E15204 - [float] Camera Position Z&lt;br /&gt;
* Shenmue.exe+5E151F4 - [int] Camera State&lt;br /&gt;
* Shenmue.exe+9DB6B0 - [double] Field of View related (defaults to 57.2957795130824)&lt;br /&gt;
* Shenmue.exe+9DBA50 - [float] Field of View related (defaults to 182.0444489)&lt;br /&gt;
* Shenmue.exe+A3BEDC - [float] Camera Distance from Player (defaults to 3.099999905f)&lt;br /&gt;
&lt;br /&gt;
===Time===&lt;br /&gt;
* Shenmue.exe+9F34622 - [byte] Time of Day: Day&lt;br /&gt;
* Shenmue.exe+9F34621 - [byte] Time of Day: Month&lt;br /&gt;
* Shenmue.exe+9F34620 - [byte] Time of Day: Year&lt;br /&gt;
* Shenmue.exe+9F34624 - [byte] Time of Day: Hours&lt;br /&gt;
* Shenmue.exe+9F34625 - [byte] Time of Day: Minutes&lt;br /&gt;
* Shenmue.exe+9F34626 - [byte] Time of Day: Seconds&lt;br /&gt;
* Shenmue.exe+9E31947 - [int] Freeze Time (1 = freeze, 0 = normal)&lt;br /&gt;
* Shenmue.exe+EB161C - [float] Time of Day: Time Multiplier 1/2 (controls speed of in-game clock; 1 by default, works in conjunction with 2/2 below ([Time Multiplier 1/2] * [Time Multiplier 2/2])&lt;br /&gt;
* Shenmue.exe+9F3464C - [float] Time of Day: Time Multiplier 2/2 (controls speed of in-game clock; 0.5 by default, works in conjunction with 1/2 above ([Time Multiplier 2/2] * [Time Multiplier 1/2])&lt;br /&gt;
** Note: To approximate in-game time speed to real-time, use multipliers 1 and 2 to multiply (1 * 0.0333333333)&lt;br /&gt;
* Shenmue.exe+9F34622 - [byte] Weather Pattern (usually 07, 0B, 19 trigger snow with varying degrees of intensity)&lt;br /&gt;
* Shenmue.exe+EB01EC - [float] Time since Start&lt;br /&gt;
&lt;br /&gt;
===Map Warping===&lt;br /&gt;
* Shenmue.exe+64C8998 - [byte] Area Map Warp Trigger (defaults to 0, set 1 to trigger instant warp)&lt;br /&gt;
* Shenmue.exe+64C899C - [string] Warp AreaID (MapID) (must be manually initialized on first start/load before warping, will crash game otherwise)&lt;br /&gt;
** Shenmue.exe+64C89A8 - [byte] (must be manually initialized to 7 on first start/load before warping, will crash game otherwise)&lt;br /&gt;
* Shenmue.exe+64C89A4 - [byte] Warp EntryID (MapEntryPoint) (set the entry point for any given map to warp to)&lt;br /&gt;
* Shenmue.exe+64C89A0 - [byte] Warp SceneID (Disc #) (set the scene/disc number to warp to)&lt;br /&gt;
&lt;br /&gt;
===Rendering===&lt;br /&gt;
* Shenmue.exe+EB0484 - [float] Frame Time&lt;br /&gt;
* Shenmue.exe+EB0280 - [string] Frame Time and FPS&lt;br /&gt;
* Shenmue.exe+EB04C8 - [byte] 60fps&lt;br /&gt;
* Shenmue.exe+1478530 - [byte] 200+fps&lt;br /&gt;
* Shenmue.exe+D87DA6 - [byte] Stabilize framerate (0 = off, 1 = on)&lt;br /&gt;
* Shenmue.exe+ED82C1 - [byte] Render UI (default = 1, 0 = off)&lt;br /&gt;
* Shenmue.exe+9DBB64 - [float] UI Screen Resolution Horizontal (defaults to 1920.0)&lt;br /&gt;
* Shenmue.exe+9DBB38 - [float] UI Screen Resolution Vertical (defaults to 1080.0)&lt;br /&gt;
* Shenmue.exe+EB054C - [float] Screen Resolution Horizontal (defaults to 1920.0)&lt;br /&gt;
* Shenmue.exe+EB0810 - [float] Screen Resolution Vertical (defaults to 1080.0)&lt;br /&gt;
* Shenmue.exe+0EB0C34 - [int] Rendering Mode:&lt;br /&gt;
** 0 norm&lt;br /&gt;
** 1 ???&lt;br /&gt;
** 2 wireframe&lt;br /&gt;
** 3 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 4 clear framebuffer&lt;br /&gt;
** 5 &amp;quot;&amp;quot; &amp;quot;&amp;quot; &lt;br /&gt;
** 6 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 7 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 8 norm (w/o sky)&lt;br /&gt;
** 9 &amp;quot;&amp;quot; &amp;quot;&amp;quot; &lt;br /&gt;
** 10 wireframe (from perspective)&lt;br /&gt;
** 11 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 12 clear framebuffer (?)&lt;br /&gt;
** 13 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 14 &amp;quot;&amp;quot; &amp;quot;&amp;quot; &lt;br /&gt;
** 15 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 16 render opposites&lt;br /&gt;
** 17 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 18 wireframe with 16&lt;br /&gt;
** 19 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 20 clear framebuffer (?)&lt;br /&gt;
** 21 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 22 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 23 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 24 normal (with some strips being weird lol)&lt;br /&gt;
** 25 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 26 slightly different wireframe&lt;br /&gt;
** 27 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 28 clear framebuffer (?)&lt;br /&gt;
** 29 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 30 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 31 &amp;quot;&amp;quot; &amp;quot;&amp;quot;&lt;br /&gt;
** 32 same as 24&lt;br /&gt;
* Shenmue.exe+1342D48 - [int] Fog Enabled (1 = on, 0 = off)&lt;br /&gt;
* Shenmue.exe+1342D38 - [float] Fog Colour R (max 1.0)&lt;br /&gt;
* Shenmue.exe+1342D3C - [float] Fog Colour G (max 1.0) &lt;br /&gt;
* Shenmue.exe+1342D40 - [float] Fog Colour B (max 1.0)&lt;br /&gt;
&lt;br /&gt;
===Stats===&lt;br /&gt;
&lt;br /&gt;
===Settings===&lt;br /&gt;
====Controls====&lt;br /&gt;
* Shenmue.exe+9F0FE14 - [byte] Swap Look and Run (defaults to 0)&lt;br /&gt;
* Shenmue.exe+A65DA8 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FCF4 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FF34 - [byte] Swap Look and Run (defaults to 0)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FE15 - [byte] Invert Look Y Axis (defaults to 0)&lt;br /&gt;
* Shenmue.exe+A65E18 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FCF5 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FF35 - [byte] Invert Look Y Axis (defaults to 0)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FE16 - [byte] Area Jump (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A65E88 - [byte] Area Jump (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FCF6 - [byte] Area Jump (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FF36 - [byte] Area Jump (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
=====Keybindings=====&lt;br /&gt;
* Shenmue.exe+9F0FF3C - [byte] First Keybinding (Talk/Action)&lt;br /&gt;
** +0x3 bytes for each subsequent keybinding&lt;br /&gt;
* Shenmue.exe+9F10000 - [byte] Last Keybinding (Right)&lt;br /&gt;
&lt;br /&gt;
Offsets for the keybindings shown in the menu:&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FCFC - [byte] First Keybinding (Talk/Action)(menu variable)&lt;br /&gt;
** +0x3 bytes for each subsequent keybinding&lt;br /&gt;
* Shenmue.exe+9F0FDC0 - [byte] Last Keybinding (Right)(menu variable)&lt;br /&gt;
&lt;br /&gt;
====Display====&lt;br /&gt;
* Shenmue.exe+9F0FF00 - [int] Display Mode&lt;br /&gt;
* Shenmue.exe+9F10020 - [int] Display Mode&lt;br /&gt;
** 0 = Windowed&lt;br /&gt;
** 1 = Borderless&lt;br /&gt;
** 2 = Fullscreen&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A488 - [int] Display Mode (menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDE0 - [int] Display Mode (menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FDEC - [float] Resolution Scale (defaults to 0.5, changes occur instantly)&lt;br /&gt;
* Shenmue.exe+A6A5DC - [float] Resolution Scale (menu setting)(defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F0FDEC - [float] Resolution Scale (menu setting)(defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F0FF0C - [float] Resolution Scale (defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F1002C - [float] Resolution Scale (defaults to 1) &lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A56878 - [float] Contrast (defaults to 0.5, changes occur instantly)&lt;br /&gt;
* Shenmue.exe+A6A80C - [float] Contrast (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FE04 - [float] Contrast (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F10044 - [float] Contrast (defaults to 0.5 - affects menu variables)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FF18 - [int] Bloom&lt;br /&gt;
* Shenmue.exe+9F10038 - [int] Bloom&lt;br /&gt;
** 0 = Off&lt;br /&gt;
** 1 = Low&lt;br /&gt;
** 2 = High&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A728 - [int] Bloom (menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDF8 - [int] Bloom (menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A79C - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FE00 - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FF20 - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F10040 - [float] Gamma (defaults to 0.5 - affects menu variables)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A6B8 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A6AB24 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F0FDF4 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F0FF14 - [byte] FXAA (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F10034 - [byte] FXAA (defaults to 1)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A6A878 - [byte] Aspect Ratio (defaults to 1) &lt;br /&gt;
* Shenmue.exe+9F0FDFC - [byte] Aspect Ratio (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F0FF1C - [byte] Aspect Ratio (defaults to 1)&lt;br /&gt;
* Shenmue.exe+9F1003C - [byte] Aspect Ratio (defaults to 1)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F10048 - [float] UI Display Area (defaults to 1, changes occur instantly)&lt;br /&gt;
* Shenmue.exe+A6A8EC - [float] UI Display Area (defaults to 1 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FE08 - [float] UI Display Area (defaults to 1 - affects menu variables)&lt;br /&gt;
* Shenmue.exe+9F0FF28 - [float] UI Display Area (defaults to 1 - affects menu variables)&lt;br /&gt;
&lt;br /&gt;
====Audio====&lt;br /&gt;
* Shenmue.exe+A64058 - [int] Audio Device&lt;br /&gt;
* Shenmue.exe+9F0FDC4 - [int] Audio Device&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A640C8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+C5F278 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+EDCA00 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F0FDC8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F0FEE8 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F10008 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
* Shenmue.exe+9F2F558 - [bool] Audio Language (defaults to 0 (English), 1 is Japanese)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+A64138 - [int] Text Language&lt;br /&gt;
** 0 = English&lt;br /&gt;
** 1 = French&lt;br /&gt;
** 2 = German&lt;br /&gt;
** 3 = Korean&lt;br /&gt;
** 4 = Traditional Chinese&lt;br /&gt;
** 5 = Simplified Chinese&lt;br /&gt;
** 6 = Default&lt;br /&gt;
* Shenmue.exe+9F0FEF0 - [int] Dialogue &amp;amp; Text &lt;br /&gt;
* Shenmue.exe+9F10010 - [int] Dialogue &amp;amp; Text &lt;br /&gt;
** 0 = Cinema Mode&lt;br /&gt;
** 1 = Shenmue Mode&lt;br /&gt;
** 2 = Game Mode&lt;br /&gt;
** 3 = Text mode&lt;br /&gt;
* Shenmue.exe+A641A8 - [int] Dialogue &amp;amp; Text (menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDD0 - [int] Dialogue &amp;amp; Text (menu variable)  &lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FEF8 - [float] SFX Volume (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A3B44C - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+A6421C - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDD8 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F10018 - [float] SFX Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FEFC - [float] Music Volume (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A585E8 - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+A6428C - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDDC - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F1001C - [float] Music Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
* Shenmue.exe+9F0FEF4 - [float] Speech Volume (defaults to 1)&lt;br /&gt;
* Shenmue.exe+A642FC - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F0FDD4 - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
* Shenmue.exe+9F10014 - [float] Speech Volume (defaults to 1)(menu variable)&lt;br /&gt;
&lt;br /&gt;
===NPCs===&lt;br /&gt;
====Debug====&lt;br /&gt;
* Shenmue.exe+C64DEC - [int/boolean] Debug Talk Status (locks cutscenes when set to 1, 0 is default)&lt;br /&gt;
&lt;br /&gt;
===Interface===&lt;br /&gt;
====Menu====&lt;br /&gt;
&lt;br /&gt;
===Physics===&lt;br /&gt;
* Shenmue.exe+64C8FA8 - [byte] Remove door collisions (default 255, set to 0 for no collision)&lt;br /&gt;
* Shenmue.exe+8EBD9 - [byte] Remove almost all collisions (default 74 [je], change to EB [jmp] for no collision)&lt;br /&gt;
&lt;br /&gt;
===Save Files===&lt;br /&gt;
* Shenmue.exe+1D2B64 - [byte] Ignore save checksum when loading (default 0F8594000000 [jne], NOP the instruction to ignore the checksum)&lt;br /&gt;
&lt;br /&gt;
===Undocumented===&lt;br /&gt;
(v1.00 offsets)&lt;br /&gt;
Camera related???&lt;br /&gt;
* Shenmue.exe+5E16AD0 - [float] (set camera distance from player, auto-zooms from left/right)&lt;br /&gt;
* Shenmue.exe+5E16AD4 - [float] (set camera distance from player, auto-zooms from top/bottom)&lt;br /&gt;
* Shenmue.exe+5E16AD8 - [float] (set camera distance from player, auto-zooms from front/back)&lt;br /&gt;
* Shenmue.exe+5E16ADC - [float] (set camera horizontal angle away from player, auto-pans back)&lt;br /&gt;
* Shenmue.exe+5E16AE4 - [float] (set camera horizontal angle away from player, auto-pans back)&lt;br /&gt;
* Shenmue.exe+5E16AE0 - [float] (set camera vertical angle away from player, auto-pans back)&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=MT7&amp;diff=622</id>
		<title>MT7</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=MT7&amp;diff=622"/>
		<updated>2021-09-28T16:26:51Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added WBTR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Models]]&lt;br /&gt;
MT7 is an model container format for Shenmue II.&amp;lt;br&amp;gt;&lt;br /&gt;
There are 4 different types of MT7 files (MDCX/7, MDPX/7, MDOX/7, MDLX/7) which are very similar.&amp;lt;br&amp;gt;&lt;br /&gt;
The model format is based on an node based hierarchy tree.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For an C# implementation based on this documentation look [https://github.com/philyeahz/ShenmueDKSharp/blob/master/Files/Models/MT7.cs here].&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (MDCX, MDPX, ...)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || First node offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Texture count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Texture Entry List===&lt;br /&gt;
After the header there is an optional texture entry list when the model uses textures.&lt;br /&gt;
These texture entries are used to list all textures the model uses which can be in the TXT7 section or even somewhere else.&amp;lt;br&amp;gt;&lt;br /&gt;
Example: For the map files there is an PKS which holds the meshes and some other files, each PKS has an PKF which holds the textures for the models inside the PKS.&lt;br /&gt;
&lt;br /&gt;
====Texture Entry====&lt;br /&gt;
Each entry has an texture ID/Name after the texture entries.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x02 || ushort || Width&lt;br /&gt;
|-&lt;br /&gt;
| 0x02 || 0x02 || ushort || Height&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || ? || Index?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Texture ID/Name====&lt;br /&gt;
The ID and the name are used to uniquely identify the texture.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Name?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Node Location Dictionary===&lt;br /&gt;
After the texture entry list there is an dictionary with all the offsets to the nodes.&amp;lt;br&amp;gt;&lt;br /&gt;
The use is not clear of this dictionary. Possible usage could be an fast view of the hierarchy without parsing the nodes or maybe for rigging.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MT7 Node===&lt;br /&gt;
Each node holds the hierarchy information and transform values.&lt;br /&gt;
Not all nodes have to contain an offset to any mesh data but they still can have an effect on the child nodes meshes with their transform values.&amp;lt;br&amp;gt;&lt;br /&gt;
That means every child goes up the hierarchy tree and applies the transform values of the parents (and it's own of course).&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x0C || float || Position/Translate (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x0C || short || Rotation (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0x0C || float || Scale (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0x04 || uint || XB01 Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C || 0x04 || uint || Child Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0x04 || uint || Sibling Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x34 || 0x04 || uint || Parent Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0x08 || ? || Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Hierarchy====&lt;br /&gt;
├ Parent&amp;lt;br&amp;gt;&lt;br /&gt;
├── Child&amp;lt;br&amp;gt;&lt;br /&gt;
├── Sibling&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====General Node IDs====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ID !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 65535 || Static mesh (casting shadows?)&lt;br /&gt;
|-&lt;br /&gt;
| 5000 || Cloth (for interacting with wind physics)&lt;br /&gt;
|-&lt;br /&gt;
| 458751 || Mostly shadow&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Char Node IDs====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ID !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 1 || Upper torso (Root)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Right upper arm (includes shoulder)&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Right middle arm&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Right lower arm&lt;br /&gt;
|-&lt;br /&gt;
| 65471 || Right hand&lt;br /&gt;
|-&lt;br /&gt;
| 25 || Right thumb&lt;br /&gt;
|-&lt;br /&gt;
| 28 || Right index finger upper&lt;br /&gt;
|-&lt;br /&gt;
| 29 || Right index finger lower&lt;br /&gt;
|-&lt;br /&gt;
| 31 || Right fingers upper&lt;br /&gt;
|-&lt;br /&gt;
| 32 || Right fingers lower&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Left upper arm (includes shoulder)&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Left middle arm&lt;br /&gt;
|-&lt;br /&gt;
| 12 || Left lower arm&lt;br /&gt;
|-&lt;br /&gt;
| 65470 || Left hand&lt;br /&gt;
|-&lt;br /&gt;
| 40 || Left thumb&lt;br /&gt;
|-&lt;br /&gt;
| 43 || Left index finger upper&lt;br /&gt;
|-&lt;br /&gt;
| 44 || Left index finger lower&lt;br /&gt;
|-&lt;br /&gt;
| 46 || Left fingers upper&lt;br /&gt;
|-&lt;br /&gt;
| 47 || Left fingers lower&lt;br /&gt;
|-&lt;br /&gt;
| 14 || Lower torso&lt;br /&gt;
|-&lt;br /&gt;
| 16 || Right upper leg&lt;br /&gt;
|-&lt;br /&gt;
| 17 || Right lower leg&lt;br /&gt;
|-&lt;br /&gt;
| 18 || Right foot&lt;br /&gt;
|-&lt;br /&gt;
| 19 || Right foot tip&lt;br /&gt;
|-&lt;br /&gt;
| 21 || Left upper leg&lt;br /&gt;
|-&lt;br /&gt;
| 22 || Left lower leg&lt;br /&gt;
|-&lt;br /&gt;
| 23 || Left foot&lt;br /&gt;
|-&lt;br /&gt;
| 24 || Left foot tip&lt;br /&gt;
|-&lt;br /&gt;
| 70 || Head&lt;br /&gt;
|-&lt;br /&gt;
| 81 || Right eye&lt;br /&gt;
|-&lt;br /&gt;
| 82 || Left eye&lt;br /&gt;
|-&lt;br /&gt;
| 65445 || Top hair&lt;br /&gt;
|-&lt;br /&gt;
| 65446 || Back hair&lt;br /&gt;
|-&lt;br /&gt;
| 65455 || Jacket collision&lt;br /&gt;
|-&lt;br /&gt;
| 65456 || Jacket&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MDCX/7===&lt;br /&gt;
The MDCX or MDC7 files are mainly used for character models.&lt;br /&gt;
These files do have special sub nodes that extend the base node.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (MDCX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x40 || float || 4x4 Matrix&lt;br /&gt;
|-&lt;br /&gt;
| 0x44 || 0x04 || uint || Entry count&lt;br /&gt;
|-&lt;br /&gt;
| 0x48 || 0x0? || ? || Entries&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====MDCX/7 Entry====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || ? || ?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || ?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MDPX/7===&lt;br /&gt;
The MDCX or MDC7 files are mainly used for prop models.&lt;br /&gt;
These files do have special sub nodes that extend the base node.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (MDPX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || string || Name?&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x0? || ? || Data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MDOX/7===&lt;br /&gt;
The MDOX or MDO7 files are mainly used for map geometry.&lt;br /&gt;
These files do not have any special sub node.&lt;br /&gt;
&lt;br /&gt;
===MDLX/7===&lt;br /&gt;
THe MDLX or MDL7 files are mainly used for map geometry.&lt;br /&gt;
These files do not have any special sub node.&lt;br /&gt;
&lt;br /&gt;
===MDH7===&lt;br /&gt;
Unknown node found only on Dreamcast.&lt;br /&gt;
&lt;br /&gt;
===WBTR===&lt;br /&gt;
Unknown node found only on Dreamcast.&lt;br /&gt;
&lt;br /&gt;
===XB01===&lt;br /&gt;
The XB01 sections hold the mesh data (vertices, strips and material metadata).&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (XB01)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x0C || float || Mesh center (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0x04 || float || Mesh radius&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x04 || uint || First instruction entry offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0x04 || uint || Vertices offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intructions====&lt;br /&gt;
These instructions are state machine like. Each instruction changes the state of how to render the strip.&amp;lt;br&amp;gt;&lt;br /&gt;
Each instructions consists out of an 1 byte identifier and 1-2 bytes as the size of the instructions in words(2 bytes) including itself.&lt;br /&gt;
&lt;br /&gt;
=====Group=====&lt;br /&gt;
An group can hold multiple instructions. The reason for grouping is unknown.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Group size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x08 || ? || Unknown&lt;br /&gt;
|}&lt;br /&gt;
=====Floats (0x04)=====&lt;br /&gt;
Unknown floats.&lt;br /&gt;
=====Texture (0x0B)=====&lt;br /&gt;
Sets the texture to use for the next instructions.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Texture count&lt;br /&gt;
|}&lt;br /&gt;
=====Texture Attributes (0x0D)=====&lt;br /&gt;
Sets the texture attributes to use for the next instructions.&lt;br /&gt;
Example: Transparency, Texture Wrapping, Unlit, ...&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Attribute count&lt;br /&gt;
|}&lt;br /&gt;
=====Strip (0x10)=====&lt;br /&gt;
Draws an strip with the given vertex indices.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Primitiv type? (Triangles or Triangle strip)&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Vertex index count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vertices====&lt;br /&gt;
=====Header=====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Vertex size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0A || 0x02 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Vertex count&lt;br /&gt;
|}&lt;br /&gt;
=====Vertex=====&lt;br /&gt;
Example vertex with an size of 32 bytes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x0C || float || Position (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x0C || float || Normals (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x08 || float || Texture Coordinates (U, V)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===TXT7===&lt;br /&gt;
The TXT7 sections hold PVRT textures used for the model.&lt;br /&gt;
====Header====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (TXT7)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Texture entry count&lt;br /&gt;
|}&lt;br /&gt;
====TXT7 Entry====&lt;br /&gt;
The entries consist of an offset to the PVRT texture and just like in the texture entry list an ID/Name to identify those offsets.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
After the texture offsets come the corresponding texture ID and name to identify them.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Name?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===FACE===&lt;br /&gt;
Unknown.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (FACE)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===CLSG===&lt;br /&gt;
Unknown.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (CLSG)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || CLTH Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x04 || uint || OSAG Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0x04 || uint || CLCL Offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====CLTH====&lt;br /&gt;
Unknown.&lt;br /&gt;
&lt;br /&gt;
====OSAG====&lt;br /&gt;
Unknown.&lt;br /&gt;
&lt;br /&gt;
====CLCL====&lt;br /&gt;
Unknown.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=MT7&amp;diff=621</id>
		<title>MT7</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=MT7&amp;diff=621"/>
		<updated>2021-09-28T15:30:13Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added MDH7&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Models]]&lt;br /&gt;
MT7 is an model container format for Shenmue II.&amp;lt;br&amp;gt;&lt;br /&gt;
There are 4 different types of MT7 files (MDCX/7, MDPX/7, MDOX/7, MDLX/7) which are very similar.&amp;lt;br&amp;gt;&lt;br /&gt;
The model format is based on an node based hierarchy tree.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For an C# implementation based on this documentation look [https://github.com/philyeahz/ShenmueDKSharp/blob/master/Files/Models/MT7.cs here].&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (MDCX, MDPX, ...)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || First node offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Texture count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Texture Entry List===&lt;br /&gt;
After the header there is an optional texture entry list when the model uses textures.&lt;br /&gt;
These texture entries are used to list all textures the model uses which can be in the TXT7 section or even somewhere else.&amp;lt;br&amp;gt;&lt;br /&gt;
Example: For the map files there is an PKS which holds the meshes and some other files, each PKS has an PKF which holds the textures for the models inside the PKS.&lt;br /&gt;
&lt;br /&gt;
====Texture Entry====&lt;br /&gt;
Each entry has an texture ID/Name after the texture entries.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x02 || ushort || Width&lt;br /&gt;
|-&lt;br /&gt;
| 0x02 || 0x02 || ushort || Height&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || ? || Index?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Texture ID/Name====&lt;br /&gt;
The ID and the name are used to uniquely identify the texture.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Name?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Node Location Dictionary===&lt;br /&gt;
After the texture entry list there is an dictionary with all the offsets to the nodes.&amp;lt;br&amp;gt;&lt;br /&gt;
The use is not clear of this dictionary. Possible usage could be an fast view of the hierarchy without parsing the nodes or maybe for rigging.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MT7 Node===&lt;br /&gt;
Each node holds the hierarchy information and transform values.&lt;br /&gt;
Not all nodes have to contain an offset to any mesh data but they still can have an effect on the child nodes meshes with their transform values.&amp;lt;br&amp;gt;&lt;br /&gt;
That means every child goes up the hierarchy tree and applies the transform values of the parents (and it's own of course).&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x0C || float || Position/Translate (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x0C || short || Rotation (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0x0C || float || Scale (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0x04 || uint || XB01 Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C || 0x04 || uint || Child Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0x04 || uint || Sibling Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x34 || 0x04 || uint || Parent Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0x08 || ? || Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Hierarchy====&lt;br /&gt;
├ Parent&amp;lt;br&amp;gt;&lt;br /&gt;
├── Child&amp;lt;br&amp;gt;&lt;br /&gt;
├── Sibling&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====General Node IDs====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ID !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 65535 || Static mesh (casting shadows?)&lt;br /&gt;
|-&lt;br /&gt;
| 5000 || Cloth (for interacting with wind physics)&lt;br /&gt;
|-&lt;br /&gt;
| 458751 || Mostly shadow&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Char Node IDs====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ID !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 1 || Upper torso (Root)&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Right upper arm (includes shoulder)&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Right middle arm&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Right lower arm&lt;br /&gt;
|-&lt;br /&gt;
| 65471 || Right hand&lt;br /&gt;
|-&lt;br /&gt;
| 25 || Right thumb&lt;br /&gt;
|-&lt;br /&gt;
| 28 || Right index finger upper&lt;br /&gt;
|-&lt;br /&gt;
| 29 || Right index finger lower&lt;br /&gt;
|-&lt;br /&gt;
| 31 || Right fingers upper&lt;br /&gt;
|-&lt;br /&gt;
| 32 || Right fingers lower&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Left upper arm (includes shoulder)&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Left middle arm&lt;br /&gt;
|-&lt;br /&gt;
| 12 || Left lower arm&lt;br /&gt;
|-&lt;br /&gt;
| 65470 || Left hand&lt;br /&gt;
|-&lt;br /&gt;
| 40 || Left thumb&lt;br /&gt;
|-&lt;br /&gt;
| 43 || Left index finger upper&lt;br /&gt;
|-&lt;br /&gt;
| 44 || Left index finger lower&lt;br /&gt;
|-&lt;br /&gt;
| 46 || Left fingers upper&lt;br /&gt;
|-&lt;br /&gt;
| 47 || Left fingers lower&lt;br /&gt;
|-&lt;br /&gt;
| 14 || Lower torso&lt;br /&gt;
|-&lt;br /&gt;
| 16 || Right upper leg&lt;br /&gt;
|-&lt;br /&gt;
| 17 || Right lower leg&lt;br /&gt;
|-&lt;br /&gt;
| 18 || Right foot&lt;br /&gt;
|-&lt;br /&gt;
| 19 || Right foot tip&lt;br /&gt;
|-&lt;br /&gt;
| 21 || Left upper leg&lt;br /&gt;
|-&lt;br /&gt;
| 22 || Left lower leg&lt;br /&gt;
|-&lt;br /&gt;
| 23 || Left foot&lt;br /&gt;
|-&lt;br /&gt;
| 24 || Left foot tip&lt;br /&gt;
|-&lt;br /&gt;
| 70 || Head&lt;br /&gt;
|-&lt;br /&gt;
| 81 || Right eye&lt;br /&gt;
|-&lt;br /&gt;
| 82 || Left eye&lt;br /&gt;
|-&lt;br /&gt;
| 65445 || Top hair&lt;br /&gt;
|-&lt;br /&gt;
| 65446 || Back hair&lt;br /&gt;
|-&lt;br /&gt;
| 65455 || Jacket collision&lt;br /&gt;
|-&lt;br /&gt;
| 65456 || Jacket&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MDCX/7===&lt;br /&gt;
The MDCX or MDC7 files are mainly used for character models.&lt;br /&gt;
These files do have special sub nodes that extend the base node.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (MDCX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x40 || float || 4x4 Matrix&lt;br /&gt;
|-&lt;br /&gt;
| 0x44 || 0x04 || uint || Entry count&lt;br /&gt;
|-&lt;br /&gt;
| 0x48 || 0x0? || ? || Entries&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====MDCX/7 Entry====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || ? || ?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || ?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MDPX/7===&lt;br /&gt;
The MDCX or MDC7 files are mainly used for prop models.&lt;br /&gt;
These files do have special sub nodes that extend the base node.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (MDPX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || string || Name?&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x0? || ? || Data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===MDOX/7===&lt;br /&gt;
The MDOX or MDO7 files are mainly used for map geometry.&lt;br /&gt;
These files do not have any special sub node.&lt;br /&gt;
&lt;br /&gt;
===MDLX/7===&lt;br /&gt;
THe MDLX or MDL7 files are mainly used for map geometry.&lt;br /&gt;
These files do not have any special sub node.&lt;br /&gt;
&lt;br /&gt;
===MDH7===&lt;br /&gt;
Unknown node found only on Dreamcast.&lt;br /&gt;
&lt;br /&gt;
===XB01===&lt;br /&gt;
The XB01 sections hold the mesh data (vertices, strips and material metadata).&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (XB01)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x0C || float || Mesh center (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0x04 || float || Mesh radius&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x04 || uint || First instruction entry offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0x04 || uint || Vertices offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Intructions====&lt;br /&gt;
These instructions are state machine like. Each instruction changes the state of how to render the strip.&amp;lt;br&amp;gt;&lt;br /&gt;
Each instructions consists out of an 1 byte identifier and 1-2 bytes as the size of the instructions in words(2 bytes) including itself.&lt;br /&gt;
&lt;br /&gt;
=====Group=====&lt;br /&gt;
An group can hold multiple instructions. The reason for grouping is unknown.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Group size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x08 || ? || Unknown&lt;br /&gt;
|}&lt;br /&gt;
=====Floats (0x04)=====&lt;br /&gt;
Unknown floats.&lt;br /&gt;
=====Texture (0x0B)=====&lt;br /&gt;
Sets the texture to use for the next instructions.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Texture count&lt;br /&gt;
|}&lt;br /&gt;
=====Texture Attributes (0x0D)=====&lt;br /&gt;
Sets the texture attributes to use for the next instructions.&lt;br /&gt;
Example: Transparency, Texture Wrapping, Unlit, ...&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Attribute count&lt;br /&gt;
|}&lt;br /&gt;
=====Strip (0x10)=====&lt;br /&gt;
Draws an strip with the given vertex indices.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Primitiv type? (Triangles or Triangle strip)&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Vertex index count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Vertices====&lt;br /&gt;
=====Header=====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Vertex size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0A || 0x02 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Vertex count&lt;br /&gt;
|}&lt;br /&gt;
=====Vertex=====&lt;br /&gt;
Example vertex with an size of 32 bytes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x0C || float || Position (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x0C || float || Normals (X, Y, Z)&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0x08 || float || Texture Coordinates (U, V)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===TXT7===&lt;br /&gt;
The TXT7 sections hold PVRT textures used for the model.&lt;br /&gt;
====Header====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (TXT7)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Texture entry count&lt;br /&gt;
|}&lt;br /&gt;
====TXT7 Entry====&lt;br /&gt;
The entries consist of an offset to the PVRT texture and just like in the texture entry list an ID/Name to identify those offsets.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
After the texture offsets come the corresponding texture ID and name to identify them.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || ID?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Name?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===FACE===&lt;br /&gt;
Unknown.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (FACE)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===CLSG===&lt;br /&gt;
Unknown.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (CLSG)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || ? || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || CLTH Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x04 || uint || OSAG Offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0x04 || uint || CLCL Offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====CLTH====&lt;br /&gt;
Unknown.&lt;br /&gt;
&lt;br /&gt;
====OSAG====&lt;br /&gt;
Unknown.&lt;br /&gt;
&lt;br /&gt;
====CLCL====&lt;br /&gt;
Unknown.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=User:LemonHaze&amp;diff=620</id>
		<title>User:LemonHaze</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=User:LemonHaze&amp;diff=620"/>
		<updated>2021-09-23T20:53:14Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Discord: LemonHaze#6969&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Shenmue_Script&amp;diff=619</id>
		<title>Shenmue Script</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Shenmue_Script&amp;diff=619"/>
		<updated>2021-09-17T14:58:50Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added float comment to opcodes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Stack=&lt;br /&gt;
The stack is used for operations on data.&lt;br /&gt;
Data is pushed onto the stack and an operation will than be executed on them.&lt;br /&gt;
&lt;br /&gt;
=Registers=&lt;br /&gt;
==Stack==&lt;br /&gt;
There is a stack base and stack pointer.&lt;br /&gt;
==R14==&lt;br /&gt;
R14 is the general purpose register of the script parser.&amp;lt;br&amp;gt;&lt;br /&gt;
It is used to store function call return values and to do conditional jumping.&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
Each opcode is 1 byte in size.&lt;br /&gt;
&lt;br /&gt;
== 0x00 - 0x7F ==&lt;br /&gt;
=== 0x00 - 0x3F (0x00 - 0x3D) ===&lt;br /&gt;
Control-flow, Function calling.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
00xx nnnn&amp;lt;br&amp;gt;&lt;br /&gt;
x = immediate value size (1 = 1 byte, 2 = 2 byte, 3 = 4 byte)&amp;lt;br&amp;gt;&lt;br /&gt;
n = command&lt;br /&gt;
&lt;br /&gt;
==== Unknown ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0001 0000 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0010 0000 nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0011 0000 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || 0001 0001 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x21 || 0010 0001 nnnnnnnn nnnnnnnn  || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x31 || 0011 0001 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x12 || 0001 0010 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x22 || 0010 0010 nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x32 || 0011 0010 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x17 || 0001 0111 nnnnnnnn || Writes n into register?&lt;br /&gt;
|-&lt;br /&gt;
| 0x27 || 0010 0111 nnnnnnnn nnnnnnnn || Writes n into register?&lt;br /&gt;
|-&lt;br /&gt;
| 0x37 || 0011 0111 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Writes n into register?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Stack ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x13 || 0001 0011 nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x23 || 0010 0011 nnnnnnnn nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x33 || 0011 0011 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Jump ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0001 0100 nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x24 || 0010 0100 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x34 || 0011 0100 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x15 || 0001 0101 nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x25 || 0010 0101 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x35 || 0011 0101 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x16 || 0001 0110 nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x26 || 0010 0110 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x36 || 0011 0110 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 6 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0001 1000 nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0010 1000 nnnnnnnn nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0011 1000 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 1 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x19 || 0001 1001 nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x29 || 0010 1001 nnnnnnnn nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x39 || 0011 1001 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 2 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A || 0001 1010 nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A || 0010 1010 nnnnnnnn nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x3A || 0011 1010 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 3 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B || 0001 1011 nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x2B || 0010 1011 nnnnnnnn nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x3B || 0011 1011 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 4 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0001 1100 nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C || 0010 1100 nnnnnnnn nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C || 0011 1100 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 7 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D || 0001 1101 nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|-&lt;br /&gt;
| 0x2D || 0010 1101 nnnnnnnn nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D || 0011 1101 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x40 - 0x7F ===&lt;br /&gt;
Immediate value reading into stack.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
01xx ddnn&amp;lt;br&amp;gt;&lt;br /&gt;
x = immediate value size (1 = 1 byte, 2 = 2 byte, 3 = 4 byte)&amp;lt;br&amp;gt;&lt;br /&gt;
d = command&amp;lt;br&amp;gt;&lt;br /&gt;
n = subcommand&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 - 0x4F || 0100 xxxx || Writes value from last time to stack&lt;br /&gt;
|-&lt;br /&gt;
| 0x50 - 0x5F || 0101 xxxx nnnnnnnn || Writes n to stack (1 byte)&lt;br /&gt;
|-&lt;br /&gt;
| 0x60 - 0x6F || 0110 xxxx nnnnnnnn nnnnnnnn || Writes n to stack (2 byte)&lt;br /&gt;
|-&lt;br /&gt;
| 0x70 - 0x7F || 0111 xxxx nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Writes n to stack (4 byte)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 0x80 - 0xBF (0x80 - 0xA6) ==&lt;br /&gt;
Arithmetic, Comparision/Relational, Logical, Bitwise, Compound assignment operators&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80 || 1000 0000 || Write stack value to R14&lt;br /&gt;
|-&lt;br /&gt;
| 0x81 || 1000 0001 || Read R14 value to stack&lt;br /&gt;
|-&lt;br /&gt;
| 0x82 || 1000 0010 || [MOBJ] Reads 8-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x83 || 1000 0011 || [MOBJ] Reads 16-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84 || 1000 0100 || [MOBJ] Reads 32-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x85 || 1000 0101 || [MOBJ] Writes 8-bit to cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x86 || 1000 0110 || [MOBJ] Writes 16-bit to cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87 || 1000 0111 || [MOBJ] Writes 32-bit to cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x88 || 1000 1000 || ==&lt;br /&gt;
|-&lt;br /&gt;
| 0x89 || 1000 1001 || !=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8A || 1000 1010 || &amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8B || 1000 1011 || &amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C || 1000 1100 || &amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8D || 1000 1101 || &amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x8E || 1000 1110 || ~&lt;br /&gt;
|-&lt;br /&gt;
| 0x8F || 1000 1111 || &amp;amp;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x90 || 1001 0000 || |=&lt;br /&gt;
|-&lt;br /&gt;
| 0x91 || 1001 0001 || ^=&lt;br /&gt;
|-&lt;br /&gt;
| 0x92 || 1001 0010 || +=&lt;br /&gt;
|-&lt;br /&gt;
| 0x93 || 1001 0011 || -=&lt;br /&gt;
|-&lt;br /&gt;
| 0x94 || 1001 0100 || *=&lt;br /&gt;
|-&lt;br /&gt;
| 0x95 || 1001 0101 || /=&lt;br /&gt;
|-&lt;br /&gt;
| 0x96 || 1001 0110 || %=&lt;br /&gt;
|-&lt;br /&gt;
| 0x97 || 1001 0111 || &amp;lt;&amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x98 || 1001 1000 || &amp;gt;&amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x9D || 1001 1101 || float cast&lt;br /&gt;
|-&lt;br /&gt;
| 0x9E || 1001 1110 || signed cast&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F || 1001 1111 || (float) &amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0xA0 || 1010 0000 || (float) &amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
| 0xA1 || 1010 0001 || (float) &amp;gt;= (&amp;lt;= inverted)&lt;br /&gt;
|-&lt;br /&gt;
| 0xA2 || 1010 0010 || (float) &amp;gt; (&amp;lt; inverted)&lt;br /&gt;
|-&lt;br /&gt;
| 0xA3 || 1010 0011 || (float) +&lt;br /&gt;
|-&lt;br /&gt;
| 0xA4 || 1010 0100 || (float) -&lt;br /&gt;
|-&lt;br /&gt;
| 0xA5 || 1010 0101 || (float) *&lt;br /&gt;
|-&lt;br /&gt;
| 0xA6 || 1010 0110 || (float) /&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 0xC0 - 0xFF ==&lt;br /&gt;
Invalid&lt;br /&gt;
&lt;br /&gt;
=Function Sets=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Function Count !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 140559C98 || 1 || Set 1 - Removed function&lt;br /&gt;
|-&lt;br /&gt;
| 140559CA0 || 5 || Set 2 - Memory functions (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 140559CD0 || 466 || Set 3 - General Shenmue stuff&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1E0 || 1 || Set 4 - Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1E8 || 1 || Set 5 - Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1F0 || 47 || Set 6 - SCNF stuff&lt;br /&gt;
|-&lt;br /&gt;
| 140554210 || 8 || Set 7 - Unknown&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140559CA0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| deleted || ? &lt;br /&gt;
|-&lt;br /&gt;
| memset || memset&lt;br /&gt;
|-&lt;br /&gt;
| memcpy || memcpy &lt;br /&gt;
|-&lt;br /&gt;
| strcpy || strcpy &lt;br /&gt;
|-&lt;br /&gt;
| sub_14018FFE0 || Reads 140EB1B30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140559CD0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190350 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B750 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B790 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B830 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401905B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140177D30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B890 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190BC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190630 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401919B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191B60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401953F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140192370 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193750 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401937A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401937C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401938F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193920 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193980 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193990 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401939A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193A00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194B70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194E00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401950F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195AB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401954A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195550 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196160 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401972C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401972D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401973E0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140197450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401974F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1402CBD90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AB600 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ABE60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ADEF0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE230 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE3A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE730 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE8A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4210 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7270 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8100 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8150 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8250 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401975F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401976A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191D10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140192000 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ACE20 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8EF0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8F20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9000 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9080 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE0C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4500 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE6B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195C90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193A80 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B55D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401977A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A2EE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A34C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7530 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B75B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401C1E10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190D30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ADC20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190A90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14018FA80 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140198720 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4550 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B45C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4650 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4660 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BED00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BED30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEDC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEDE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194530 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEE40 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEE50 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401978E0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ACE90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8370 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8390 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191CD0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAC00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAC70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AACE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAEA0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195DB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B78D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7C00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193C00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7620 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194D20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193D00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401962B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7770 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ABF20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AC1E0 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE9A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9420 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9430 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9440 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9480 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A94A0 || &lt;br /&gt;
|-&lt;br /&gt;
| ... || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140A4F1F0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191580 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401915C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8DC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8E60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9440 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A94D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401916A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401916A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A91D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9200 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196560 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196760 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9190 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A91B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401966A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196760 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9520 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9570 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9590 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A95C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9150 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9170 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A94D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9B50 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9BB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9460 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140554210) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F120 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F3D0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F330 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1EB0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1F20 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1F90 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14006D3F0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 ||&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Shenmue_Script&amp;diff=618</id>
		<title>Shenmue Script</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Shenmue_Script&amp;diff=618"/>
		<updated>2021-08-15T10:55:25Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Stack=&lt;br /&gt;
The stack is used for operations on data.&lt;br /&gt;
Data is pushed onto the stack and an operation will than be executed on them.&lt;br /&gt;
&lt;br /&gt;
=Registers=&lt;br /&gt;
==Stack==&lt;br /&gt;
There is a stack base and stack pointer.&lt;br /&gt;
==R14==&lt;br /&gt;
R14 is the general purpose register of the script parser.&amp;lt;br&amp;gt;&lt;br /&gt;
It is used to store function call return values and to do conditional jumping.&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
Each opcode is 1 byte in size.&lt;br /&gt;
&lt;br /&gt;
== 0x00 - 0x7F ==&lt;br /&gt;
=== 0x00 - 0x3F (0x00 - 0x3D) ===&lt;br /&gt;
Control-flow, Function calling.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
00xx nnnn&amp;lt;br&amp;gt;&lt;br /&gt;
x = immediate value size (1 = 1 byte, 2 = 2 byte, 3 = 4 byte)&amp;lt;br&amp;gt;&lt;br /&gt;
n = command&lt;br /&gt;
&lt;br /&gt;
==== Unknown ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0001 0000 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0010 0000 nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0011 0000 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || 0001 0001 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x21 || 0010 0001 nnnnnnnn nnnnnnnn  || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x31 || 0011 0001 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x12 || 0001 0010 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x22 || 0010 0010 nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x32 || 0011 0010 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x17 || 0001 0111 nnnnnnnn || Writes n into register?&lt;br /&gt;
|-&lt;br /&gt;
| 0x27 || 0010 0111 nnnnnnnn nnnnnnnn || Writes n into register?&lt;br /&gt;
|-&lt;br /&gt;
| 0x37 || 0011 0111 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Writes n into register?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Stack ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x13 || 0001 0011 nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x23 || 0010 0011 nnnnnnnn nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x33 || 0011 0011 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Jump ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0001 0100 nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x24 || 0010 0100 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x34 || 0011 0100 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x15 || 0001 0101 nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x25 || 0010 0101 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x35 || 0011 0101 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x16 || 0001 0110 nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x26 || 0010 0110 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x36 || 0011 0110 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 6 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0001 1000 nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0010 1000 nnnnnnnn nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0011 1000 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 1 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x19 || 0001 1001 nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x29 || 0010 1001 nnnnnnnn nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x39 || 0011 1001 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 2 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A || 0001 1010 nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A || 0010 1010 nnnnnnnn nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x3A || 0011 1010 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 3 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B || 0001 1011 nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x2B || 0010 1011 nnnnnnnn nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x3B || 0011 1011 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 4 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0001 1100 nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C || 0010 1100 nnnnnnnn nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C || 0011 1100 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 7 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D || 0001 1101 nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|-&lt;br /&gt;
| 0x2D || 0010 1101 nnnnnnnn nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D || 0011 1101 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x40 - 0x7F ===&lt;br /&gt;
Immediate value reading into stack.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
01xx ddnn&amp;lt;br&amp;gt;&lt;br /&gt;
x = immediate value size (1 = 1 byte, 2 = 2 byte, 3 = 4 byte)&amp;lt;br&amp;gt;&lt;br /&gt;
d = command&amp;lt;br&amp;gt;&lt;br /&gt;
n = subcommand&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 - 0x4F || 0100 xxxx || Writes value from last time to stack&lt;br /&gt;
|-&lt;br /&gt;
| 0x50 - 0x5F || 0101 xxxx nnnnnnnn || Writes n to stack (1 byte)&lt;br /&gt;
|-&lt;br /&gt;
| 0x60 - 0x6F || 0110 xxxx nnnnnnnn nnnnnnnn || Writes n to stack (2 byte)&lt;br /&gt;
|-&lt;br /&gt;
| 0x70 - 0x7F || 0111 xxxx nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Writes n to stack (4 byte)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 0x80 - 0xBF (0x80 - 0xA6) ==&lt;br /&gt;
Arithmetic, Comparision/Relational, Logical, Bitwise, Compound assignment operators&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80 || 1000 0000 || Write stack value to R14&lt;br /&gt;
|-&lt;br /&gt;
| 0x81 || 1000 0001 || Read R14 value to stack&lt;br /&gt;
|-&lt;br /&gt;
| 0x82 || 1000 0010 || [MOBJ] Reads 8-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x83 || 1000 0011 || [MOBJ] Reads 16-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84 || 1000 0100 || [MOBJ] Reads 32-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x85 || 1000 0101 || [MOBJ] Writes 8-bit to cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x86 || 1000 0110 || [MOBJ] Writes 16-bit to cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87 || 1000 0111 || [MOBJ] Writes 32-bit to cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x88 || 1000 1000 || ==&lt;br /&gt;
|-&lt;br /&gt;
| 0x89 || 1000 1001 || !=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8A || 1000 1010 || &amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8B || 1000 1011 || &amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C || 1000 1100 || &amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8D || 1000 1101 || &amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x8E || 1000 1110 || ~&lt;br /&gt;
|-&lt;br /&gt;
| 0x8F || 1000 1111 || &amp;amp;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x90 || 1001 0000 || |=&lt;br /&gt;
|-&lt;br /&gt;
| 0x91 || 1001 0001 || ^=&lt;br /&gt;
|-&lt;br /&gt;
| 0x92 || 1001 0010 || +=&lt;br /&gt;
|-&lt;br /&gt;
| 0x93 || 1001 0011 || -=&lt;br /&gt;
|-&lt;br /&gt;
| 0x94 || 1001 0100 || *=&lt;br /&gt;
|-&lt;br /&gt;
| 0x95 || 1001 0101 || /=&lt;br /&gt;
|-&lt;br /&gt;
| 0x96 || 1001 0110 || %=&lt;br /&gt;
|-&lt;br /&gt;
| 0x97 || 1001 0111 || &amp;lt;&amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x98 || 1001 1000 || &amp;gt;&amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x9D || 1001 1101 || float cast&lt;br /&gt;
|-&lt;br /&gt;
| 0x9E || 1001 1110 || signed cast&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F || 1001 1111 || &amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0xA0 || 1010 0000 || &amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
| 0xA1 || 1010 0001 || &amp;gt;= (&amp;lt;= inverted)&lt;br /&gt;
|-&lt;br /&gt;
| 0xA2 || 1010 0010 || &amp;gt; (&amp;lt; inverted)&lt;br /&gt;
|-&lt;br /&gt;
| 0xA3 || 1010 0011 || +&lt;br /&gt;
|-&lt;br /&gt;
| 0xA4 || 1010 0100 || -&lt;br /&gt;
|-&lt;br /&gt;
| 0xA5 || 1010 0101 || *&lt;br /&gt;
|-&lt;br /&gt;
| 0xA6 || 1010 0110 || /&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 0xC0 - 0xFF ==&lt;br /&gt;
Invalid&lt;br /&gt;
&lt;br /&gt;
=Function Sets=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Function Count !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 140559C98 || 1 || Set 1 - Removed function&lt;br /&gt;
|-&lt;br /&gt;
| 140559CA0 || 5 || Set 2 - Memory functions (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 140559CD0 || 466 || Set 3 - General Shenmue stuff&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1E0 || 1 || Set 4 - Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1E8 || 1 || Set 5 - Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1F0 || 47 || Set 6 - SCNF stuff&lt;br /&gt;
|-&lt;br /&gt;
| 140554210 || 8 || Set 7 - Unknown&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140559CA0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| deleted || ? &lt;br /&gt;
|-&lt;br /&gt;
| memset || memset&lt;br /&gt;
|-&lt;br /&gt;
| memcpy || memcpy &lt;br /&gt;
|-&lt;br /&gt;
| strcpy || strcpy &lt;br /&gt;
|-&lt;br /&gt;
| sub_14018FFE0 || Reads 140EB1B30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140559CD0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190350 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B750 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B790 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B830 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401905B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140177D30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B890 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190BC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190630 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401919B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191B60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401953F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140192370 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193750 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401937A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401937C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401938F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193920 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193980 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193990 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401939A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193A00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194B70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194E00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401950F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195AB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401954A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195550 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196160 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401972C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401972D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401973E0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140197450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401974F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1402CBD90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AB600 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ABE60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ADEF0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE230 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE3A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE730 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE8A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4210 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7270 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8100 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8150 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8250 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401975F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401976A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191D10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140192000 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ACE20 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8EF0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8F20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9000 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9080 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE0C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4500 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE6B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195C90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193A80 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B55D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401977A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A2EE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A34C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7530 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B75B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401C1E10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190D30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ADC20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190A90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14018FA80 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140198720 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4550 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B45C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4650 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4660 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BED00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BED30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEDC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEDE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194530 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEE40 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEE50 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401978E0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ACE90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8370 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8390 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191CD0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAC00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAC70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AACE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAEA0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195DB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B78D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7C00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193C00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7620 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194D20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193D00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401962B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7770 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ABF20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AC1E0 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE9A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9420 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9430 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9440 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9480 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A94A0 || &lt;br /&gt;
|-&lt;br /&gt;
| ... || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140A4F1F0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191580 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401915C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8DC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8E60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9440 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A94D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401916A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401916A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A91D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9200 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196560 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196760 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9190 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A91B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401966A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196760 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9520 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9570 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9590 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A95C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9150 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9170 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A94D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9B50 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9BB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9460 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140554210) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F120 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F3D0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F330 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1EB0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1F20 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1F90 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14006D3F0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 ||&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Shenmue_Script&amp;diff=617</id>
		<title>Shenmue Script</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Shenmue_Script&amp;diff=617"/>
		<updated>2021-08-15T10:55:01Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added missing MOBJ opcodes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Stack=&lt;br /&gt;
The stack is used for operations on data.&lt;br /&gt;
Data is pushed onto the stack and an operation will than be executed on them.&lt;br /&gt;
&lt;br /&gt;
=Registers=&lt;br /&gt;
==Stack==&lt;br /&gt;
There is a stack base and stack pointer.&lt;br /&gt;
==R14==&lt;br /&gt;
R14 is the general purpose register of the script parser.&amp;lt;br&amp;gt;&lt;br /&gt;
It is used to store function call return values and to do conditional jumping.&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
Each opcode is 1 byte in size.&lt;br /&gt;
&lt;br /&gt;
== 0x00 - 0x7F ==&lt;br /&gt;
=== 0x00 - 0x3F (0x00 - 0x3D) ===&lt;br /&gt;
Control-flow, Function calling.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
00xx nnnn&amp;lt;br&amp;gt;&lt;br /&gt;
x = immediate value size (1 = 1 byte, 2 = 2 byte, 3 = 4 byte)&amp;lt;br&amp;gt;&lt;br /&gt;
n = command&lt;br /&gt;
&lt;br /&gt;
==== Unknown ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0001 0000 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x20 || 0010 0000 nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x30 || 0011 0000 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || 0001 0001 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x21 || 0010 0001 nnnnnnnn nnnnnnnn  || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x31 || 0011 0001 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x12 || 0001 0010 nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x22 || 0010 0010 nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x32 || 0011 0010 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || MOBJ related&lt;br /&gt;
|-&lt;br /&gt;
| 0x17 || 0001 0111 nnnnnnnn || Writes n into register?&lt;br /&gt;
|-&lt;br /&gt;
| 0x27 || 0010 0111 nnnnnnnn nnnnnnnn || Writes n into register?&lt;br /&gt;
|-&lt;br /&gt;
| 0x37 || 0011 0111 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Writes n into register?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Stack ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x13 || 0001 0011 nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x23 || 0010 0011 nnnnnnnn nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x33 || 0011 0011 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Move stack pointer by n bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Jump ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x14 || 0001 0100 nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x24 || 0010 0100 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x34 || 0011 0100 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes + unknown value&lt;br /&gt;
|-&lt;br /&gt;
| 0x15 || 0001 0101 nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x25 || 0010 0101 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x35 || 0011 0101 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes &lt;br /&gt;
|-&lt;br /&gt;
| 0x16 || 0001 0110 nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x26 || 0010 0110 nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|-&lt;br /&gt;
| 0x36 || 0011 0110 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Jumps by the amount of n bytes '''IF''' R14 is zero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 6 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x18 || 0001 1000 nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|-&lt;br /&gt;
| 0x28 || 0010 1000 nnnnnnnn nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|-&lt;br /&gt;
| 0x38 || 0011 1000 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 6&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 1 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x19 || 0001 1001 nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x29 || 0010 1001 nnnnnnnn nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x39 || 0011 1001 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 2 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A || 0001 1010 nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x2A || 0010 1010 nnnnnnnn nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x3A || 0011 1010 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 2&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 3 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B || 0001 1011 nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x2B || 0010 1011 nnnnnnnn nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x3B || 0011 1011 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 4 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C || 0001 1100 nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|-&lt;br /&gt;
| 0x2C || 0010 1100 nnnnnnnn nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C || 0011 1100 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 4&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Call Function Set 7 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x1D || 0001 1101 nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|-&lt;br /&gt;
| 0x2D || 0010 1101 nnnnnnnn nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D || 0011 1101 nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Execute the n function in set 7&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x40 - 0x7F ===&lt;br /&gt;
Immediate value reading into stack.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
01xx ddnn&amp;lt;br&amp;gt;&lt;br /&gt;
x = immediate value size (1 = 1 byte, 2 = 2 byte, 3 = 4 byte)&amp;lt;br&amp;gt;&lt;br /&gt;
d = command&amp;lt;br&amp;gt;&lt;br /&gt;
n = subcommand&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x40 - 0x4F || 0100 xxxx || Writes value from last time to stack&lt;br /&gt;
|-&lt;br /&gt;
| 0x50 - 0x5F || 0101 xxxx nnnnnnnn || Writes n to stack (1 byte)&lt;br /&gt;
|-&lt;br /&gt;
| 0x60 - 0x6F || 0110 xxxx nnnnnnnn nnnnnnnn || Writes n to stack (2 byte)&lt;br /&gt;
|-&lt;br /&gt;
| 0x70 - 0x7F || 0111 xxxx nnnnnnnn nnnnnnnn nnnnnnnn nnnnnnnn || Writes n to stack (4 byte)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 0x80 - 0xBF (0x80 - 0xA6) ==&lt;br /&gt;
Arithmetic, Comparision/Relational, Logical, Bitwise, Compound assignment operators&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Opcode !! Code !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x80 || 1000 0000 || Write stack value to R14&lt;br /&gt;
|-&lt;br /&gt;
| 0x81 || 1000 0001 || Read R14 value to stack&lt;br /&gt;
|-&lt;br /&gt;
| 0x82 || 1000 0010 || [MOBJ] Reads 8-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x83 || 1000 0011 || [MOBJ] Reads 16-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x84 || 1000 0100 || [MOBJ] Reads 32-bit value from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x85 || 1000 0101 || [MOBJ] Writes 8-bit from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x86 || 1000 0110 || [MOBJ] Writes 16-bit from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x87 || 1000 0111 || [MOBJ] Writes 32-bit from cycle pointer&lt;br /&gt;
|-&lt;br /&gt;
| 0x88 || 1000 1000 || ==&lt;br /&gt;
|-&lt;br /&gt;
| 0x89 || 1000 1001 || !=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8A || 1000 1010 || &amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8B || 1000 1011 || &amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x8C || 1000 1100 || &amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x8D || 1000 1101 || &amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x8E || 1000 1110 || ~&lt;br /&gt;
|-&lt;br /&gt;
| 0x8F || 1000 1111 || &amp;amp;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x90 || 1001 0000 || |=&lt;br /&gt;
|-&lt;br /&gt;
| 0x91 || 1001 0001 || ^=&lt;br /&gt;
|-&lt;br /&gt;
| 0x92 || 1001 0010 || +=&lt;br /&gt;
|-&lt;br /&gt;
| 0x93 || 1001 0011 || -=&lt;br /&gt;
|-&lt;br /&gt;
| 0x94 || 1001 0100 || *=&lt;br /&gt;
|-&lt;br /&gt;
| 0x95 || 1001 0101 || /=&lt;br /&gt;
|-&lt;br /&gt;
| 0x96 || 1001 0110 || %=&lt;br /&gt;
|-&lt;br /&gt;
| 0x97 || 1001 0111 || &amp;lt;&amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x98 || 1001 1000 || &amp;gt;&amp;gt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0x9D || 1001 1101 || float cast&lt;br /&gt;
|-&lt;br /&gt;
| 0x9E || 1001 1110 || signed cast&lt;br /&gt;
|-&lt;br /&gt;
| 0x9F || 1001 1111 || &amp;lt;=&lt;br /&gt;
|-&lt;br /&gt;
| 0xA0 || 1010 0000 || &amp;lt;&lt;br /&gt;
|-&lt;br /&gt;
| 0xA1 || 1010 0001 || &amp;gt;= (&amp;lt;= inverted)&lt;br /&gt;
|-&lt;br /&gt;
| 0xA2 || 1010 0010 || &amp;gt; (&amp;lt; inverted)&lt;br /&gt;
|-&lt;br /&gt;
| 0xA3 || 1010 0011 || +&lt;br /&gt;
|-&lt;br /&gt;
| 0xA4 || 1010 0100 || -&lt;br /&gt;
|-&lt;br /&gt;
| 0xA5 || 1010 0101 || *&lt;br /&gt;
|-&lt;br /&gt;
| 0xA6 || 1010 0110 || /&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== 0xC0 - 0xFF ==&lt;br /&gt;
Invalid&lt;br /&gt;
&lt;br /&gt;
=Function Sets=&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Function Count !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 140559C98 || 1 || Set 1 - Removed function&lt;br /&gt;
|-&lt;br /&gt;
| 140559CA0 || 5 || Set 2 - Memory functions (unused)&lt;br /&gt;
|-&lt;br /&gt;
| 140559CD0 || 466 || Set 3 - General Shenmue stuff&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1E0 || 1 || Set 4 - Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1E8 || 1 || Set 5 - Unknown&lt;br /&gt;
|-&lt;br /&gt;
| 140A4F1F0 || 47 || Set 6 - SCNF stuff&lt;br /&gt;
|-&lt;br /&gt;
| 140554210 || 8 || Set 7 - Unknown&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140559CA0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| deleted || ? &lt;br /&gt;
|-&lt;br /&gt;
| memset || memset&lt;br /&gt;
|-&lt;br /&gt;
| memcpy || memcpy &lt;br /&gt;
|-&lt;br /&gt;
| strcpy || strcpy &lt;br /&gt;
|-&lt;br /&gt;
| sub_14018FFE0 || Reads 140EB1B30&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140559CD0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190350 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B750 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B790 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B830 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401905B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140177D30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14009B890 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190BC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190630 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401919B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191B60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401953F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140192370 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193750 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401937A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401937C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401938F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193920 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193980 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193990 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401939A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193A00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194B70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194E00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401950F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195AB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401954A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195550 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196160 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401972C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401972D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401973E0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140197450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401974F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1402CBD90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AB600 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ABE60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ADEF0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE230 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE3A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE730 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE8A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4210 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7270 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8100 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8150 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8250 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401975F0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401976A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191D10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140192000 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ACE20 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8EF0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8F20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9000 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9080 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE0C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4500 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE6B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195C90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193A80 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B55D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401977A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A2EE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A34C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7530 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B75B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401C1E10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190D30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ADC20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140190A90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14018FA80 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140198720 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4550 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B45C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4650 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B4660 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BED00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BED30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEDC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEDE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194530 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEE40 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401BEE50 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401978E0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ACE90 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8370 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B8390 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191CD0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE10 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAC00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAC70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AACE0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE30 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAE70 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AAEA0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140195DB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B78D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7C00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193C00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7620 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140194D20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140193D00 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401962B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401B7770 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401ABF20 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AC1E0 || &lt;br /&gt;
|-&lt;br /&gt;
| deleted || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401AE9A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9420 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9430 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9440 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9450 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A9480 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1400A94A0 || &lt;br /&gt;
|-&lt;br /&gt;
| ... || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140A4F1F0) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_140191580 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401915C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8DC0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A8E60 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9440 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9460 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A94D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401916A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401916A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A91D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9200 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196560 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196760 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9190 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A91B0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401966A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_140196760 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9520 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9570 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9590 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A95C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9150 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9170 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A94D0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9470 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9240 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92A0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A92C0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9380 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9B50 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9BB0 || &lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A9460 || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Function Set (140554210) ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Function !! Description &lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F120 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F3D0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14019F330 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1EB0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1F20 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_1401A1F90 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14006D3F0 ||&lt;br /&gt;
|-&lt;br /&gt;
| sub_14000F380 ||&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=SCEX&amp;diff=614</id>
		<title>SCEX</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=SCEX&amp;diff=614"/>
		<updated>2021-07-17T16:13:34Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* ASEQ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (SCEX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || string || Scene name?&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Size in bytes (relative to 0x08)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====TRCK====&lt;br /&gt;
https://tcrf.net/Shenmue/Source_Code#.5CSCENE.5C99.5CMS08.5CSEQCONV.C &amp;lt;br&amp;gt;&lt;br /&gt;
A track contains information for an cutscene.&amp;lt;br&amp;gt;&lt;br /&gt;
The track segment has no data itself, it just contains all the child segments which do contain the data.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (TRCK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====ASEQ=====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (ASEQ)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x01 || byte || Endianness (0 - Little, 1 - Big)&lt;br /&gt;
|-&lt;br /&gt;
| 0x09 || 0x01 || byte || Version (5 is most commonly found in S1 - 7 in S2)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x01 || byte || Reserved&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || 0x01 || byte || Reserved&lt;br /&gt;
|-&lt;br /&gt;
| 0x12 || 0x04 || int || Num Frames&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Table of content entry (12 bytes)&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x01 || byte || Flag?&lt;br /&gt;
|-&lt;br /&gt;
| 0x01 || 0x01 || byte || Flag?&lt;br /&gt;
|-&lt;br /&gt;
| 0x02 || 0x02 || ? || Reserved?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Character name and other stuff (props?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Index&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====ACAM=====&lt;br /&gt;
Probably camera animation.&lt;br /&gt;
&lt;br /&gt;
=====AMOV=====&lt;br /&gt;
&lt;br /&gt;
=====ASTR=====&lt;br /&gt;
&lt;br /&gt;
====AUVW====&lt;br /&gt;
&lt;br /&gt;
=====LGHC=====&lt;br /&gt;
&lt;br /&gt;
=====RFBD=====&lt;br /&gt;
&lt;br /&gt;
=====EYES=====&lt;br /&gt;
&lt;br /&gt;
=====HAID=====&lt;br /&gt;
&lt;br /&gt;
=====HADT=====&lt;br /&gt;
&lt;br /&gt;
=====HAND=====&lt;br /&gt;
&lt;br /&gt;
=====FACX=====&lt;br /&gt;
&lt;br /&gt;
=====FADE=====&lt;br /&gt;
&lt;br /&gt;
=====MBTK=====&lt;br /&gt;
&lt;br /&gt;
=====FOBJ=====&lt;br /&gt;
&lt;br /&gt;
=====FCLP=====&lt;br /&gt;
&lt;br /&gt;
=====DOOR=====&lt;br /&gt;
&lt;br /&gt;
=====LGHS=====&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=SCEX&amp;diff=613</id>
		<title>SCEX</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=SCEX&amp;diff=613"/>
		<updated>2021-07-15T19:35:50Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* TRCK */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (SCEX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || string || Scene name?&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Size in bytes (relative to 0x08)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====TRCK====&lt;br /&gt;
https://tcrf.net/Shenmue/Source_Code#.5CSCENE.5C99.5CMS08.5CSEQCONV.C &amp;lt;br&amp;gt;&lt;br /&gt;
A track contains information for an cutscene.&amp;lt;br&amp;gt;&lt;br /&gt;
The track segment has no data itself, it just contains all the child segments which do contain the data.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (TRCK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====ASEQ=====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (ASEQ)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x01 || byte || Endianness (0 - Little, 1 - Big)&lt;br /&gt;
|-&lt;br /&gt;
| 0x09 || 0x01 || byte || Version (5 is the most common)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x01 || byte || Reserved&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || 0x01 || byte || Reserved&lt;br /&gt;
|-&lt;br /&gt;
| 0x12 || 0x04 || int || Num Frames&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Table of content entry (12 bytes)&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x01 || byte || Flag?&lt;br /&gt;
|-&lt;br /&gt;
| 0x01 || 0x01 || byte || Flag?&lt;br /&gt;
|-&lt;br /&gt;
| 0x02 || 0x02 || ? || Reserved?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Character name and other stuff (props?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Index&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====ACAM=====&lt;br /&gt;
Probably camera animation.&lt;br /&gt;
&lt;br /&gt;
=====AMOV=====&lt;br /&gt;
&lt;br /&gt;
=====ASTR=====&lt;br /&gt;
&lt;br /&gt;
====AUVW====&lt;br /&gt;
&lt;br /&gt;
=====LGHC=====&lt;br /&gt;
&lt;br /&gt;
=====RFBD=====&lt;br /&gt;
&lt;br /&gt;
=====EYES=====&lt;br /&gt;
&lt;br /&gt;
=====HAID=====&lt;br /&gt;
&lt;br /&gt;
=====HADT=====&lt;br /&gt;
&lt;br /&gt;
=====HAND=====&lt;br /&gt;
&lt;br /&gt;
=====FACX=====&lt;br /&gt;
&lt;br /&gt;
=====FADE=====&lt;br /&gt;
&lt;br /&gt;
=====MBTK=====&lt;br /&gt;
&lt;br /&gt;
=====FOBJ=====&lt;br /&gt;
&lt;br /&gt;
=====FCLP=====&lt;br /&gt;
&lt;br /&gt;
=====DOOR=====&lt;br /&gt;
&lt;br /&gt;
=====LGHS=====&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=SCEX&amp;diff=612</id>
		<title>SCEX</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=SCEX&amp;diff=612"/>
		<updated>2021-07-15T19:31:17Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Fixed up sequence header struct definition&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (SCEX)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || string || Scene name?&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || uint || Size in bytes (relative to 0x08)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====TRCK====&lt;br /&gt;
https://tcrf.net/Shenmue/Source_Code#.5CSCENE.5C99.5CMS08.5CSEQCONV.C &amp;lt;br&amp;gt;&lt;br /&gt;
A track contains information for an cutscene.&amp;lt;br&amp;gt;&lt;br /&gt;
The track segment has no data itself, it just contains all the child segments which do contain the data.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (TRCK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====ASEQ=====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || string || Identifier (ASEQ)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Size in bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x01 || char || Endianness (0 - Little, 1 - Big)&lt;br /&gt;
|-&lt;br /&gt;
| 0x09 || 0x01 || char || Version (5 is the most common)&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x01 || char || Reserved&lt;br /&gt;
|-&lt;br /&gt;
| 0x11 || 0x01 || char || Reserved&lt;br /&gt;
|-&lt;br /&gt;
| 0x12 || 0x04 || int || Num Frames&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Table of content entry (12 bytes)&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x01 || byte || Flag?&lt;br /&gt;
|-&lt;br /&gt;
| 0x01 || 0x01 || byte || Flag?&lt;br /&gt;
|-&lt;br /&gt;
| 0x02 || 0x02 || ? || Reserved?&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || string || Character name and other stuff (props?)&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Index&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=====ACAM=====&lt;br /&gt;
Probably camera animation.&lt;br /&gt;
&lt;br /&gt;
=====AMOV=====&lt;br /&gt;
&lt;br /&gt;
=====ASTR=====&lt;br /&gt;
&lt;br /&gt;
====AUVW====&lt;br /&gt;
&lt;br /&gt;
=====LGHC=====&lt;br /&gt;
&lt;br /&gt;
=====RFBD=====&lt;br /&gt;
&lt;br /&gt;
=====EYES=====&lt;br /&gt;
&lt;br /&gt;
=====HAID=====&lt;br /&gt;
&lt;br /&gt;
=====HADT=====&lt;br /&gt;
&lt;br /&gt;
=====HAND=====&lt;br /&gt;
&lt;br /&gt;
=====FACX=====&lt;br /&gt;
&lt;br /&gt;
=====FADE=====&lt;br /&gt;
&lt;br /&gt;
=====MBTK=====&lt;br /&gt;
&lt;br /&gt;
=====FOBJ=====&lt;br /&gt;
&lt;br /&gt;
=====FCLP=====&lt;br /&gt;
&lt;br /&gt;
=====DOOR=====&lt;br /&gt;
&lt;br /&gt;
=====LGHS=====&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=MOTN&amp;diff=611</id>
		<title>MOTN</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=MOTN&amp;diff=611"/>
		<updated>2021-05-29T23:20:04Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added more MOTN info&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Animations]]&lt;br /&gt;
The MOTN file format contains the animations for models based on their node structure.&amp;lt;br&amp;gt;&lt;br /&gt;
This format can be found in various PKS files and in the motion.bin file.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Structure===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Section !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Header || File description&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Data Table || Pointers to sequence data blocks&lt;br /&gt;
|-&lt;br /&gt;
| Unknown Extra Data || Extra data for sequence data&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Name Table || Sequence names&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Data || Animation data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Sequence data table offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Sequence names offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Sequence data offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || Attributes || Attributes&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x04 || uint || File size&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Attributes====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Mask !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00000FFF || uint12_t || Sequence count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Sequence Data Table===&lt;br /&gt;
The sequence data table consists out of two offsets (each unsigned 32bit) per sequence.&amp;lt;br&amp;gt;&lt;br /&gt;
Both offsets point inside the sequence data segment.&amp;lt;br&amp;gt;&lt;br /&gt;
The first offset points to the main sequence data containing the key frames.&amp;lt;br&amp;gt;&lt;br /&gt;
The second offset points to some unknown data array.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sequence Name Table===&lt;br /&gt;
The sequence name table consists out of the offsets (unsigned 32bit) to the strings and the strings themself.&amp;lt;br&amp;gt;&lt;br /&gt;
The amount of names is given by the sequence count inside the header.&amp;lt;br&amp;gt;&lt;br /&gt;
The strings are zero terminated/seperated.&lt;br /&gt;
&lt;br /&gt;
===Sequence Data===&lt;br /&gt;
====Header====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Flag (decides the byte size for the block 2 and block 3 entries)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x02 || ushort || Block 1 end offset/Block 2 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x06 || 0x02 || ushort || Block 2 end offset/Block 3 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Block 3 end offset/Block 4 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Block 4 end offset/Block 5 start offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Block 1====&lt;br /&gt;
The first block contains the descriptions for the structure of the keyframes.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes in size.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Bit-Mask !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ins &amp;gt;&amp;gt; 9 || Node ID/Bone ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x0100 || Translation X channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0080 || Translation Y channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0040 || Translation Z channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0020 || Rotation X channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0010 || Rotation Y channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0008 || Rotation Z channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0007 || Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Block 2====&lt;br /&gt;
The second block contains for each channel the amount of data points (key frames?).&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes or 1 bytes in size depending on the flag.&lt;br /&gt;
&lt;br /&gt;
====Block 3====&lt;br /&gt;
The third block contains frame index data.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes or 1 bytes in size depending on the flag.&amp;lt;br&amp;gt;&lt;br /&gt;
Each frame is 0.0333333 milliseconds (30 FPS)&lt;br /&gt;
&lt;br /&gt;
====Block 4====&lt;br /&gt;
The fourth block contains the same amount of data as the second block.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 1 bytes in size.&lt;br /&gt;
&lt;br /&gt;
====Block 5====&lt;br /&gt;
The fifth and last block contains the actual data for the keyframes.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes in size and could be interpreted as degrees.&lt;br /&gt;
&lt;br /&gt;
Sequences are expressed using a minimal skeleton hierarchy designed for use with a full-body IK solver which is somewhat custom to the original games (more info here: https://www.shenmuedojo.com/forum/index.php?threads/development-log-3.3595/)&lt;br /&gt;
&lt;br /&gt;
Keyframes are described using the instructions as detailed above, which also pack the bones they are associated with. Function curves are used for interpolation and as such, keyframe data may store a left and right slope/tangent if necessary. Values stored within keyframes are half-precision floats, which are then expanded to 32-bit full-precision floats at runtime. &lt;br /&gt;
&lt;br /&gt;
Keyframes are parsed and a structure such as the following is constructed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
struct struct_FCVKey {&lt;br /&gt;
    fp32 fp32_time;&lt;br /&gt;
    fp16 fp16_left_slope;&lt;br /&gt;
    fp16 fp16_right_slope;&lt;br /&gt;
    fp16 fp16_value;&lt;br /&gt;
    &lt;br /&gt;
    uint16_t reserved[3];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=MOTN&amp;diff=610</id>
		<title>MOTN</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=MOTN&amp;diff=610"/>
		<updated>2021-05-29T23:12:43Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added descriptions for segment layout&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Animations]]&lt;br /&gt;
The MOTN file format contains the animations for models based on their node structure.&amp;lt;br&amp;gt;&lt;br /&gt;
This format can be found in various PKS files and in the motion.bin file.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Structure===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Section !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Header || File description&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Data Table || Pointers to sequence data blocks&lt;br /&gt;
|-&lt;br /&gt;
| Unknown Extra Data || Extra data for sequence data&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Name Table || Sequence names&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Data || Animation data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Sequence data table offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Sequence names offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Sequence data offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || Attributes || Attributes&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x04 || uint || File size&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Attributes====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Mask !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00000FFF || uint12_t || Sequence count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Sequence Data Table===&lt;br /&gt;
The sequence data table consists out of two offsets (each unsigned 32bit) per sequence.&amp;lt;br&amp;gt;&lt;br /&gt;
Both offsets point inside the sequence data segment.&amp;lt;br&amp;gt;&lt;br /&gt;
The first offset points to the main sequence data containing the key frames.&amp;lt;br&amp;gt;&lt;br /&gt;
The second offset points to some unknown data array.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sequence Name Table===&lt;br /&gt;
The sequence name table consists out of the offsets (unsigned 32bit) to the strings and the strings themself.&amp;lt;br&amp;gt;&lt;br /&gt;
The amount of names is given by the sequence count inside the header.&amp;lt;br&amp;gt;&lt;br /&gt;
The strings are zero terminated/seperated.&lt;br /&gt;
&lt;br /&gt;
===Sequence Data===&lt;br /&gt;
====Header====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Flag (decides the byte size for the block 2 and block 3 entries)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x02 || ushort || Block 1 end offset/Block 2 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x06 || 0x02 || ushort || Block 2 end offset/Block 3 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Block 3 end offset/Block 4 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Block 4 end offset/Block 5 start offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Block 1====&lt;br /&gt;
The first block contains the descriptions for the structure of the keyframes.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes in size.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Bit-Mask !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ins &amp;gt;&amp;gt; 9 || Node ID/Bone ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x0100 || Translation X channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0080 || Translation Y channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0040 || Translation Z channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0020 || Rotation X channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0010 || Rotation Y channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0008 || Rotation Z channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0007 || Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Block 2====&lt;br /&gt;
The second block contains for each channel the amount of data points (key frames?).&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes or 1 bytes in size depending on the flag.&lt;br /&gt;
&lt;br /&gt;
====Block 3====&lt;br /&gt;
The third block contains frame index data.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes or 1 bytes in size depending on the flag.&amp;lt;br&amp;gt;&lt;br /&gt;
Each frame is 0.0333333 milliseconds (30 FPS)&lt;br /&gt;
&lt;br /&gt;
====Block 4====&lt;br /&gt;
The fourth block contains the same amount of data as the second block.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 1 bytes in size.&lt;br /&gt;
&lt;br /&gt;
====Block 5====&lt;br /&gt;
The fifth and last block contains the actual data for the keyframes.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes in size and could be interpreted as degrees.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=MOTN&amp;diff=609</id>
		<title>MOTN</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=MOTN&amp;diff=609"/>
		<updated>2021-05-29T22:25:24Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Corrected bone index description&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Animations]]&lt;br /&gt;
The MOTN file format contains the animations for models based on their node structure.&amp;lt;br&amp;gt;&lt;br /&gt;
This format can be found in various PKS files and in the motion.bin file.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Structure===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Section&lt;br /&gt;
|-&lt;br /&gt;
| Header&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Data Table&lt;br /&gt;
|-&lt;br /&gt;
| Unknown Extra Data&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Name Table&lt;br /&gt;
|-&lt;br /&gt;
| Sequence Data&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Sequence data table offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x04 || uint || Sequence names offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x04 || uint || Sequence data offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x0C || 0x04 || Attributes || Attributes&lt;br /&gt;
|-&lt;br /&gt;
| 0x10 || 0x04 || uint || File size&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Attributes====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Mask !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00000FFF || uint12_t || Sequence count&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Sequence Data Table===&lt;br /&gt;
The sequence data table consists out of two offsets (each unsigned 32bit) per sequence.&amp;lt;br&amp;gt;&lt;br /&gt;
Both offsets point inside the sequence data segment.&amp;lt;br&amp;gt;&lt;br /&gt;
The first offset points to the main sequence data containing the key frames.&amp;lt;br&amp;gt;&lt;br /&gt;
The second offset points to some unknown data array.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sequence Name Table===&lt;br /&gt;
The sequence name table consists out of the offsets (unsigned 32bit) to the strings and the strings themself.&amp;lt;br&amp;gt;&lt;br /&gt;
The amount of names is given by the sequence count inside the header.&amp;lt;br&amp;gt;&lt;br /&gt;
The strings are zero terminated/seperated.&lt;br /&gt;
&lt;br /&gt;
===Sequence Data===&lt;br /&gt;
====Header====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Position !! Length !! Type !! Description &lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint || Flag (decides the byte size for the block 2 and block 3 entries)&lt;br /&gt;
|-&lt;br /&gt;
| 0x04 || 0x02 || ushort || Block 1 end offset/Block 2 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x06 || 0x02 || ushort || Block 2 end offset/Block 3 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Block 3 end offset/Block 4 start offset&lt;br /&gt;
|-&lt;br /&gt;
| 0x08 || 0x02 || ushort || Block 4 end offset/Block 5 start offset&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Block 1====&lt;br /&gt;
The first block contains the descriptions for the structure of the keyframes.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes in size.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Bit-Mask !! Description&lt;br /&gt;
|-&lt;br /&gt;
| ins &amp;gt;&amp;gt; 9 || Node ID/Bone ID&lt;br /&gt;
|-&lt;br /&gt;
| 0x0100 || Translation X channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0080 || Translation Y channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0040 || Translation Z channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0020 || Rotation X channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0010 || Rotation Y channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0008 || Rotation Z channel available&lt;br /&gt;
|-&lt;br /&gt;
| 0x0007 || Reserved&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Block 2====&lt;br /&gt;
The second block contains for each channel the amount of data points (key frames?).&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes or 1 bytes in size depending on the flag.&lt;br /&gt;
&lt;br /&gt;
====Block 3====&lt;br /&gt;
The third block contains frame index data.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes or 1 bytes in size depending on the flag.&amp;lt;br&amp;gt;&lt;br /&gt;
Each frame is 0.0333333 milliseconds (30 FPS)&lt;br /&gt;
&lt;br /&gt;
====Block 4====&lt;br /&gt;
The fourth block contains the same amount of data as the second block.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 1 bytes in size.&lt;br /&gt;
&lt;br /&gt;
====Block 5====&lt;br /&gt;
The fifth and last block contains the actual data for the keyframes.&amp;lt;br&amp;gt;&lt;br /&gt;
Each entry in the block is 2 bytes in size and could be interpreted as degrees.&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Map_IDs_(SM1)&amp;diff=593</id>
		<title>Map IDs (SM1)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Map_IDs_(SM1)&amp;diff=593"/>
		<updated>2020-05-10T20:09:58Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: YDB1 is only present in SCENE 02&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Map IDs]]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! ID !! Location !! Appearance !! Entry points !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Abe Store Candy Shop || JABE || Sakuragaoka || SCENE 01 || || &lt;br /&gt;
|-&lt;br /&gt;
| Ajiichi Chinese Restaurant || DCHA || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Alpha Trading Office || MFSY --&amp;gt; ALPHA (IPAC) || Harbor || SCENE 03 || N/A || Sub IPAC Data for Harbor &lt;br /&gt;
|-&lt;br /&gt;
| Antique Shop || DKTY || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Asia Travel Company || ARAR || Dobuita || SCENE 01 ||  || ALL Ticket Cutscene &lt;br /&gt;
|-&lt;br /&gt;
| Asia Travel Company || DAZA || Dobuita || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Bar Linda || DSLI || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Bar Yokosuka || DBYO || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Bob's Pizzeria || DPIZ || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Daisangen Mahjong Parlor || DMAJ || Dobuita || SCENE 01 || 00 = Normal Entry  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dobuita || D000 || Dobuita || SCENE 01 || 00 = Bus; 01 = Road by Nagai Industries; 02 = Road by You Arcade || Can be map warped from New Game&lt;br /&gt;
|-&lt;br /&gt;
| Global Travel Agency || DSKI || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor - (70 Man Battle Area) || MFBT || Harbor || SCENE 03 || 99 - 70 Man Battle  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor Cafeteria || MFSY --&amp;gt; SHOKUDO (IPAC) || Harbor || SCENE 03 || N/A || Sub IPAC Data for Harbor &lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Fight Scene With Chai + Ending) || MEND || Harbor || SCENE 03 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Forklift Race + 1st Day of Job) || MA00 || Harbor || SCENE 02 || 99 - Forklift Race  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor Lounge || MKYU || Harbor || SCENE 02 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor - Mad Angels on Forklift Box Ambush Cutscene || M3FB || Harbor || SCENE 03 || 01 - Guy on Box Cutscene  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Main Playable Area) || MFSY || Harbor || SCENE 02 || 99 = Floating Above Ocean  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor - Shadow Step Cutscene || MC5Q || Harbor || SCENE 03 || 01 - Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Basement || YDB1 || Hazuki Residence || SCENE 02 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || JHD0 || Hazuki Residence || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || YDMA || Yamanose || SCENE 03 || 00 = Ryo leaves Residence with backpack (ending)  ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || MSBS || Yamanose || SCENE 03 || 00 = Scene with Ryo praying in Dojo, sees Iwao with Sword. Then goes onto random cutscenes  ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || BETD || Yamanose || SCENE 01 ||  || Bad Ending (Disc 3)&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Interior || JOMO || Hazuki Residence || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence - Intro cutscenes || OP00 || Cutscene || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar || DBHB || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar || DHQB || Dobuita || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar Exterior Alley QTE || YQ14 || Dobuita || SCENE01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Lapis Fortune Teller || DURN || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Liu's Barber and Hair Salon || DRHT || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Maeda Barber Shop || DTKY || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Manpukuken Ramen || DRME || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| MJQ Jazz Bar || DJAZ || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Nagai Industries || DYKZ || Dobuita || SCENE 01 ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Nana's Karaoke Bar || DKPA || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| New Yokosuka Harbor || TERY || Harbor || SCENE 03 || || Unknown duplicate, possibly related to the bike part &lt;br /&gt;
|-&lt;br /&gt;
| Old Warehouse District || MKSG || Harbor || SCENE 02 || || Can be map warped from new game to trigger stealth QTE&lt;br /&gt;
|-&lt;br /&gt;
| Old Warehouse District (BETA 0.4) || MK99 || Harbor (BETA 0.4) || SCENE 02 (BETA) ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Russiya China Shop || TOKI || Dobuita || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Russiya China Shop || DRSA || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka || JD00 || Sakuragaoka || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka || DNOZ || Sakuragaoka || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka (BETA 0.4) || JD99 || Sakuragaoka (BETA 0.4) || SCENE 01 (BETA) ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Slot House || DSLT || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Takara Sushi || DSUS || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Tattoo Parlor || TATQ || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Tomato Convenience Store || DCBN || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MBQC || Unknown || SCENE 03 || 01 - Crashes with Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MB9Q || Unknown || SCENE 03 || 01 - Crashes with Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MC5Q || Unknown || SCENE 03 || 01 - Crashes with Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MO99 || Harbor || SCENE 01 ||  || Unknown duplicate&lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS08 || Harbor || SCENE 01 ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS8A || Harbor || SCENE 02 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS8S || Harbor || SCENE 02 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Yamaji Soba Noodles || DSBA || Dobuita || SCENE 01 ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Yamanose || JU00 || Yamanose || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Yamanose (BETA 0.4) || JU99 || Yamanose (BETA 0.4) || SCENE 01 (BETA) ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| YOU Arcade || DGCT || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| YOU Arcade || GMCT || Dobuita || SCENE 02 ||  || Unknown duplicate &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=TAX&amp;diff=585</id>
		<title>TAX</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=TAX&amp;diff=585"/>
		<updated>2019-10-18T00:45:59Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
[[Category:Containers]]&lt;br /&gt;
TAX is a file format which stores filepaths, MD5 hashes and data sizes for files stored in TAC archives.&amp;lt;br&amp;gt;&lt;br /&gt;
The file is unused and can be found within the UWP build of the re-releases. It is likely a build product when building TACs.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
The only data stored within the first 4 bytes of a TAX file is the number of entries.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Length !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint32 || Entry Count&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Entries===&lt;br /&gt;
Each entry is defined in the following structure:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Length !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || -- || string || Filepath&lt;br /&gt;
|-&lt;br /&gt;
| -- || 0x16 || uint8[16] || MD5 Hash (known as ContHashMD5)&lt;br /&gt;
|- &lt;br /&gt;
| -- || 0x08 || uint64 || Filesize&lt;br /&gt;
|-&lt;br /&gt;
| -- || 0x16 || uint8[16] || MD5 Hash (duplicate)&lt;br /&gt;
|- &lt;br /&gt;
| -- || 0x08 || uint64 || Filesize (duplicate)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=TAX&amp;diff=584</id>
		<title>TAX</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=TAX&amp;diff=584"/>
		<updated>2019-10-18T00:44:12Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added TAX&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Files]]&lt;br /&gt;
TAX is a file format which stores filepaths, MD5 hashes and data sizes for files stored in TAC archives.&amp;lt;br&amp;gt;&lt;br /&gt;
The file is unused and can be found within the UWP build of the re-releases. It is likely a build product when building TACs.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Header===&lt;br /&gt;
The only data stored within the first 4 bytes of a TAX file is the number of entries.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Length !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || 0x04 || uint32 || Entry Count&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Entries===&lt;br /&gt;
Each entry is defined in the following structure:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Offset !! Length !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x00 || -- || string || Filepath&lt;br /&gt;
|-&lt;br /&gt;
| -- || 0x16 || uint8[16] || MD5 Hash (known as ContHashMD5)&lt;br /&gt;
|- &lt;br /&gt;
| -- || 0x08 || uint64 || Filesize&lt;br /&gt;
|-&lt;br /&gt;
| -- || 0x16 || uint8[16] || MD5 Hash (duplicate)&lt;br /&gt;
|- &lt;br /&gt;
| -- || 0x08 || uint64 || Filesize (duplicate)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=IPAC&amp;diff=583</id>
		<title>IPAC</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=IPAC&amp;diff=583"/>
		<updated>2019-10-18T00:32:15Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created blank page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=TAX&amp;diff=582</id>
		<title>TAX</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=TAX&amp;diff=582"/>
		<updated>2019-10-18T00:29:19Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created blank page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=TAC&amp;diff=581</id>
		<title>TAC</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=TAC&amp;diff=581"/>
		<updated>2019-10-18T00:29:12Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created blank page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=TAD&amp;diff=580</id>
		<title>TAD</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=TAD&amp;diff=580"/>
		<updated>2019-10-18T00:29:04Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Created blank page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Category:Files&amp;diff=579</id>
		<title>Category:Files</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Category:Files&amp;diff=579"/>
		<updated>2019-10-18T00:28:56Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added TAX&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Overview===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Filetype !! Extensions !! Description &lt;br /&gt;
|-&lt;br /&gt;
| [[AFS]] || AFS || Container&lt;br /&gt;
|-&lt;br /&gt;
| [[IDX]] || IDX || AFS indexing file&lt;br /&gt;
|-&lt;br /&gt;
| [[IPAC]] || - || Underlying format of PKS&lt;br /&gt;
|-&lt;br /&gt;
| [[PKS]] || PKS || Container (optional GZip compressed)&lt;br /&gt;
|-&lt;br /&gt;
| [[PKF]] || PKF || Texture (TEXN-&amp;gt;PVRT) Container (optional GZip compressed)&lt;br /&gt;
|-&lt;br /&gt;
| [[MT5]] || MT5, MAPM, CHRM, PROP || SM1 Model&lt;br /&gt;
|-&lt;br /&gt;
| [[MT7]] || MT7, MAPM, CHRM, PROP || SM2 Model&lt;br /&gt;
|-&lt;br /&gt;
| [[SPR]] || SPR || Sprite (TEXN-&amp;gt;PVRT) Container&lt;br /&gt;
|-&lt;br /&gt;
| [[TAD]] || TAD || d3t hash index table for TAC (virtual filesystem)&lt;br /&gt;
|-&lt;br /&gt;
| [[TAC]] || TAC || d3t data container&lt;br /&gt;
|-&lt;br /&gt;
| [[TAX]] || TAX || d3t (optional) hash data table for TAC&lt;br /&gt;
|-&lt;br /&gt;
| [[PVR]] || PVR || Texture file (PVRT)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Function_Memory_Addresses_(SM2)&amp;diff=578</id>
		<title>Function Memory Addresses (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Function_Memory_Addresses_(SM2)&amp;diff=578"/>
		<updated>2019-09-07T00:13:07Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: Added EVT offsets&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Memory Addresses]]&lt;br /&gt;
Offsets listed here are for Patch v1.04, unless noted otherwise. &lt;br /&gt;
&lt;br /&gt;
== Function Memory Addresses ==&lt;br /&gt;
===General===&lt;br /&gt;
* Shenmue2.exe+004AEB30 - [[EVFO]] callback&lt;br /&gt;
&lt;br /&gt;
===Gameplay===&lt;br /&gt;
* Shenmue2.exe+48190 - [[EVT_AT_SetVoice]] task enqueue&lt;br /&gt;
* Shenmue2.exe+47CD0 - [[EVT_AT_SetMot]] task enqueue&lt;br /&gt;
&lt;br /&gt;
===Files===&lt;br /&gt;
====AFS====&lt;br /&gt;
* Shenmue2.exe+477B70 - [[evl_PAK]]&lt;br /&gt;
&lt;br /&gt;
====MapInfo====&lt;br /&gt;
* Shenmue2.exe+004B4790 - MAPINFO Token finder (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AE1F3 - LGHT Child reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AE260 - LGHT Child Entry reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AC9B0 - [[(HLTaskFunc)LT_LightTask]] task enqueue (v1.07)&lt;br /&gt;
** Shenmue2.exe+004ACD70 - [[(HLTaskFunc)LT_LightTask]] task function (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AD470 - [[(HLTaskFunc)MC_Callback_MapControlTask]] task enqueue (v1.07)&lt;br /&gt;
** Shenmue2.exe+004AD170 - [[(HLTaskFunc)MC_Callback_MapControlTask]] task function (v1.07)&lt;br /&gt;
&lt;br /&gt;
====MT7====&lt;br /&gt;
* Shenmue2.exe+004CE470 - MT7 reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+0035EE40 - XB01 reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+003481B0 - XB01 faces reader (v1.07)&lt;br /&gt;
&lt;br /&gt;
===Sleep===&lt;br /&gt;
* Shenmue2.exe+46AD0 - [[(HLTaskFunc)SleepData.func]] &amp;amp; [[(HLTaskFunc)SleepData.func2]]&lt;br /&gt;
* Shenmue2.exe+46BA0 - [[(HLTaskFunc)SleepData.func]]&lt;br /&gt;
===Camera===&lt;br /&gt;
&lt;br /&gt;
===Time===&lt;br /&gt;
* Shenmue2.exe+585D90 - [[(HLTaskFunc)InitTimeProgram]]&lt;br /&gt;
&lt;br /&gt;
===Audio===&lt;br /&gt;
* Shenmue2.exe+577D90 - [[(HLTaskFunc)sndCtrlSoundProgram]]&lt;br /&gt;
&lt;br /&gt;
===Rendering===&lt;br /&gt;
&lt;br /&gt;
===Stats===&lt;br /&gt;
&lt;br /&gt;
===Settings===&lt;br /&gt;
====Display====&lt;br /&gt;
====Audio====&lt;br /&gt;
====Text====&lt;br /&gt;
&lt;br /&gt;
===NPCs===&lt;br /&gt;
&lt;br /&gt;
===Controls===&lt;br /&gt;
&lt;br /&gt;
===Interface===&lt;br /&gt;
====Menu====&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Function_Memory_Addresses_(SM2)&amp;diff=577</id>
		<title>Function Memory Addresses (SM2)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Function_Memory_Addresses_(SM2)&amp;diff=577"/>
		<updated>2019-09-07T00:09:26Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: /* Files */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue II]]&lt;br /&gt;
[[Category:Memory Addresses]]&lt;br /&gt;
Offsets listed here are for Patch v1.04, unless noted otherwise. &lt;br /&gt;
&lt;br /&gt;
== Memory Addresses ==&lt;br /&gt;
===General===&lt;br /&gt;
* Shenmue2.exe+004AEB30 - [[EVFO]] callback&lt;br /&gt;
&lt;br /&gt;
===Files===&lt;br /&gt;
====AFS====&lt;br /&gt;
* Shenmue2.exe+477B70 - evl_PAK&lt;br /&gt;
&lt;br /&gt;
====MapInfo====&lt;br /&gt;
* Shenmue2.exe+004B4790 - MAPINFO Token finder (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AE1F3 - LGHT Child reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AE260 - LGHT Child Entry reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AC9B0 - [[(HLTaskFunc)LT_LightTask]] task enqueue (v1.07)&lt;br /&gt;
** Shenmue2.exe+004ACD70 - [[(HLTaskFunc)LT_LightTask]] task function (v1.07)&lt;br /&gt;
* Shenmue2.exe+004AD470 - [[(HLTaskFunc)MC_Callback_MapControlTask]] task enqueue (v1.07)&lt;br /&gt;
** Shenmue2.exe+004AD170 - [[(HLTaskFunc)MC_Callback_MapControlTask]] task function (v1.07)&lt;br /&gt;
&lt;br /&gt;
====MT7====&lt;br /&gt;
* Shenmue2.exe+004CE470 - MT7 reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+0035EE40 - XB01 reader (v1.07)&lt;br /&gt;
* Shenmue2.exe+003481B0 - XB01 faces reader (v1.07)&lt;br /&gt;
&lt;br /&gt;
===Sleep===&lt;br /&gt;
* Shenmue2.exe+46AD0 - [[(HLTaskFunc)SleepData.func]] &amp;amp; [[(HLTaskFunc)SleepData.func2]]&lt;br /&gt;
* Shenmue2.exe+46BA0 - [[(HLTaskFunc)SleepData.func]]&lt;br /&gt;
===Camera===&lt;br /&gt;
&lt;br /&gt;
===Time===&lt;br /&gt;
* Shenmue2.exe+585D90 - [[(HLTaskFunc)InitTimeProgram]]&lt;br /&gt;
&lt;br /&gt;
===Audio===&lt;br /&gt;
* Shenmue2.exe+577D90 - [[(HLTaskFunc)sndCtrlSoundProgram]]&lt;br /&gt;
&lt;br /&gt;
===Rendering===&lt;br /&gt;
&lt;br /&gt;
===Stats===&lt;br /&gt;
&lt;br /&gt;
===Settings===&lt;br /&gt;
====Display====&lt;br /&gt;
====Audio====&lt;br /&gt;
====Text====&lt;br /&gt;
&lt;br /&gt;
===NPCs===&lt;br /&gt;
&lt;br /&gt;
===Controls===&lt;br /&gt;
&lt;br /&gt;
===Interface===&lt;br /&gt;
====Menu====&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Map_IDs_(SM1)&amp;diff=576</id>
		<title>Map IDs (SM1)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Map_IDs_(SM1)&amp;diff=576"/>
		<updated>2019-09-07T00:02:42Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Map IDs]]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! ID !! Location !! Appearance !! Entry points !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Abe Store Candy Shop || JABE || Sakuragaoka || SCENE 01 || || &lt;br /&gt;
|-&lt;br /&gt;
| Ajiichi Chinese Restaurant || DCHA || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Alpha Trading Office || MFSY --&amp;gt; ALPHA (IPAC) || Harbor || SCENE 03 || N/A || Sub IPAC Data for Harbor &lt;br /&gt;
|-&lt;br /&gt;
| Antique Shop || DKTY || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Asia Travel Company || ARAR || Dobuita || SCENE 01 ||  || ALL Ticket Cutscene &lt;br /&gt;
|-&lt;br /&gt;
| Asia Travel Company || DAZA || Dobuita || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Bar Linda || DSLI || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Bar Yokosuka || DBYO || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Bob's Pizzeria || DPIZ || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Daisangen Mahjong Parlor || DMAJ || Dobuita || SCENE 01 || 00 = Normal Entry  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dobuita || D000 || Dobuita || SCENE 01 || 00 = Bus; 01 = Road by Nagai Industries; 02 = Road by You Arcade || Can be map warped from New Game&lt;br /&gt;
|-&lt;br /&gt;
| Global Travel Agency || DSKI || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor - (70 Man Battle Area) || MFBT || Harbor || SCENE 03 || 99 - 70 Man Battle  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor Cafeteria || MFSY --&amp;gt; SHOKUDO (IPAC) || Harbor || SCENE 03 || N/A || Sub IPAC Data for Harbor &lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Fight Scene With Chai + Ending) || MEND || Harbor || SCENE 03 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Forklift Race + 1st Day of Job) || MA00 || Harbor || SCENE 02 || 99 - Forklift Race  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor Lounge || MKYU || Harbor || SCENE 02 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor - Mad Angels on Forklift Box Ambush Cutscene || M3FB || Harbor || SCENE 03 || 01 - Guy on Box Cutscene  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Main Playable Area) || MFSY || Harbor || SCENE 02 || 99 = Floating Above Ocean  ||&lt;br /&gt;
|-&lt;br /&gt;
| Harbor - Shadow Step Cutscene || MC5Q || Harbor || SCENE 03 || 01 - Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Basement || YDB1 || Hazuki Residence || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || JHD0 || Hazuki Residence || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || YDMA || Yamanose || SCENE 03 || 00 = Ryo leaves Residence with backpack (ending)  ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || MSBS || Yamanose || SCENE 03 || 00 = Scene with Ryo praying in Dojo, sees Iwao with Sword. Then goes onto random cutscenes  ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || BETD || Yamanose || SCENE 01 ||  || Bad Ending (Disc 3)&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Interior || JOMO || Hazuki Residence || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence - Intro cutscenes || OP00 || Cutscene || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar || DBHB || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar || DHQB || Dobuita || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar Exterior Alley QTE || YQ14 || Dobuita || SCENE01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Lapis Fortune Teller || DURN || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Liu's Barber and Hair Salon || DRHT || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Maeda Barber Shop || DTKY || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Manpukuken Ramen || DRME || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| MJQ Jazz Bar || DJAZ || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Nagai Industries || DYKZ || Dobuita || SCENE 01 ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Nana's Karaoke Bar || DKPA || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| New Yokosuka Harbor || TERY || Harbor || SCENE 03 || || Unknown duplicate, possibly related to the bike part &lt;br /&gt;
|-&lt;br /&gt;
| Old Warehouse District || MKSG || Harbor || SCENE 02 || || Can be map warped from new game to trigger stealth QTE&lt;br /&gt;
|-&lt;br /&gt;
| Old Warehouse District (BETA 0.4) || MK99 || Harbor (BETA 0.4) || SCENE 02 (BETA) ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Russiya China Shop || TOKI || Dobuita || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Russiya China Shop || DRSA || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka || JD00 || Sakuragaoka || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka || DNOZ || Sakuragaoka || SCENE 01 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka (BETA 0.4) || JD99 || Sakuragaoka (BETA 0.4) || SCENE 01 (BETA) ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Slot House || DSLT || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Takara Sushi || DSUS || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Tattoo Parlor || TATQ || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Tomato Convenience Store || DCBN || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MBQC || Unknown || SCENE 03 || 01 - Crashes with Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MB9Q || Unknown || SCENE 03 || 01 - Crashes with Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MC5Q || Unknown || SCENE 03 || 01 - Crashes with Black Screen  ||&lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MO99 || Harbor || SCENE 01 ||  || Unknown duplicate&lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS08 || Harbor || SCENE 01 ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS8A || Harbor || SCENE 02 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS8S || Harbor || SCENE 02 ||  || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Yamaji Soba Noodles || DSBA || Dobuita || SCENE 01 ||  ||  &lt;br /&gt;
|-&lt;br /&gt;
| Yamanose || JU00 || Yamanose || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Yamanose (BETA 0.4) || JU99 || Yamanose (BETA 0.4) || SCENE 01 (BETA) ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| YOU Arcade || DGCT || Dobuita || SCENE 01 ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| YOU Arcade || GMCT || Dobuita || SCENE 02 ||  || Unknown duplicate &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
	<entry>
		<id>https://wulinshu.com/wiki/index.php?title=Map_IDs_(SM1)&amp;diff=575</id>
		<title>Map IDs (SM1)</title>
		<link rel="alternate" type="text/html" href="https://wulinshu.com/wiki/index.php?title=Map_IDs_(SM1)&amp;diff=575"/>
		<updated>2019-09-06T23:55:42Z</updated>

		<summary type="html">&lt;p&gt;LemonHaze: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Shenmue]]&lt;br /&gt;
[[Category:Map IDs]]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name !! ID !! Location !! Appearance !! Entry points !! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Abe Store Candy Shop || JABE || Sakuragaoka || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Ajiichi Chinese Restaurant || DCHA || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Alpha Trading Office || MFSY --&amp;gt; ALPHA (IPAC) || Harbor || SCENE 03 || N/A Sub IPAC Data for Harbor &lt;br /&gt;
|-&lt;br /&gt;
| Antique Shop || DKTY || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Asia Travel Company || ARAR || Dobuita || SCENE 01 || ALL Ticket Cutscene &lt;br /&gt;
|-&lt;br /&gt;
| Asia Travel Company || DAZA || Dobuita || SCENE 01 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Bar Linda || DSLI || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Bar Yokosuka || DBYO || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Bob's Pizzeria || DPIZ || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Daisangen Mahjong Parlor || DMAJ || Dobuita || SCENE 01 || 00 = Normal Entry &lt;br /&gt;
|-&lt;br /&gt;
| Dobuita || D000 || Dobuita || SCENE 01 || 00 = Bus; 01 = Road by Nagai Industries; 02 = Road by You Arcade || Can be map warped from New Game&lt;br /&gt;
|-&lt;br /&gt;
| Global Travel Agency || DSKI || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Harbor - (70 Man Battle Area) || MFBT || Harbor || SCENE 03 || 99 - 70 Man Battle &lt;br /&gt;
|-&lt;br /&gt;
| Harbor Cafeteria || MFSY --&amp;gt; SHOKUDO (IPAC) || Harbor || SCENE 03 || N/A Sub IPAC Data for Harbor &lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Fight Scene With Chai + Ending) || MEND || Harbor || SCENE 03 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Forklift Race + 1st Day of Job) || MA00 || Harbor || SCENE 02 || 99 - Forklift Race &lt;br /&gt;
|-&lt;br /&gt;
| Harbor Lounge || MKYU || Harbor || SCENE 02 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Harbor - Mad Angels on Forklift Box Ambush Cutscene || M3FB || Harbor || SCENE 03 || 01 - Guy on Box Cutscene &lt;br /&gt;
|-&lt;br /&gt;
| Harbor (Main Playable Area) || MFSY || Harbor || SCENE 02 || 99 = Floating Above Ocean &lt;br /&gt;
|-&lt;br /&gt;
| Harbor - Shadow Step Cutscene || MC5Q || Harbor || SCENE 03 || 01 - Black Screen &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Basement || YDB1 || Hazuki Residence || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || JHD0 || Hazuki Residence || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || YDMA || Yamanose || SCENE 03 || 00 = Ryo leaves Residence with backpack (ending) &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || MSBS || Yamanose || SCENE 03 || 00 = Scene with Ryo praying in Dojo, sees Iwao with Sword. Then goes onto random cutscenes &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Exterior || BETD || Yamanose || SCENE 01 || Bad Ending (Disc 3) &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence Interior || JOMO || Hazuki Residence || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Hazuki Residence - Intro cutscenes || OP00 || Cutscene || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar || DBHB || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar || DHQB || Dobuita || SCENE 01 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Heartbeats Bar Exterior Alley QTE || YQ14 || Dobuita || SCENE01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Lapis Fortune Teller || DURN || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Liu's Barber and Hair Salon || DRHT || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Maeda Barber Shop || DTKY || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Manpukuken Ramen || DRME || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| MJQ Jazz Bar || DJAZ || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Nagai Industries || DYKZ || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Nana's Karaoke Bar || DKPA || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| New Yokosuka Harbor || TERY || Harbor || SCENE 03 || || Unknown duplicate, possibly related to the bike part &lt;br /&gt;
|-&lt;br /&gt;
| Old Warehouse District || MKSG || Harbor || SCENE 02 || || Can be map warped from new game to trigger stealth QTE&lt;br /&gt;
|-&lt;br /&gt;
| Old Warehouse District (BETA 0.4) || MK99 || Harbor (BETA 0.4) || SCENE 02 (BETA) ||  &lt;br /&gt;
|-&lt;br /&gt;
| Russiya China Shop || TOKI || Dobuita || SCENE 01 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Russiya China Shop || DRSA || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka || JD00 || Sakuragaoka || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka || DNOZ || Sakuragaoka || SCENE 01 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Sakuragaoka (BETA 0.4) || JD99 || Sakuragaoka (BETA 0.4) || SCENE 01 (BETA) ||  &lt;br /&gt;
|-&lt;br /&gt;
| Slot House || DSLT || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Takara Sushi || DSUS || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Tattoo Parlor || TATQ || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Tomato Convenience Store || DCBN || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MBQC || Unknown || SCENE 03 || 01 - Crashes with Black Screen &lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MB9Q || Unknown || SCENE 03 || 01 - Crashes with Black Screen &lt;br /&gt;
|-&lt;br /&gt;
| UNKNOWN (Cutscene?) || MC5Q || Unknown || SCENE 03 || 01 - Crashes with Black Screen &lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MO99 || Harbor || SCENE 01 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS08 || Harbor || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS8A || Harbor || SCENE 02 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Warehouse No. 8 || MS8S || Harbor || SCENE 02 || Unknown duplicate &lt;br /&gt;
|-&lt;br /&gt;
| Yamaji Soba Noodles || DSBA || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Yamanose || JU00 || Yamanose || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| Yamanose (BETA 0.4) || JU99 || Yamanose (BETA 0.4) || SCENE 01 (BETA) ||  &lt;br /&gt;
|-&lt;br /&gt;
| YOU Arcade || DGCT || Dobuita || SCENE 01 ||  &lt;br /&gt;
|-&lt;br /&gt;
| YOU Arcade || GMCT || Dobuita || SCENE 02 || Unknown duplicate &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>LemonHaze</name></author>
	</entry>
</feed>