<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.anime-sharing.com/hgames/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=124.121.47.84&amp;*</id>
		<title>Hgames Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.anime-sharing.com/hgames/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=124.121.47.84&amp;*"/>
		<link rel="alternate" type="text/html" href="http://wiki.anime-sharing.com/hgames/index.php?title=Special:Contributions/124.121.47.84"/>
		<updated>2026-06-05T05:52:40Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.1</generator>

	<entry>
		<id>http://wiki.anime-sharing.com/hgames/index.php?title=School_Mate/Modding/Sdt_codes&amp;diff=4278</id>
		<title>School Mate/Modding/Sdt codes</title>
		<link rel="alternate" type="text/html" href="http://wiki.anime-sharing.com/hgames/index.php?title=School_Mate/Modding/Sdt_codes&amp;diff=4278"/>
				<updated>2010-09-12T21:01:50Z</updated>
		
		<summary type="html">&lt;p&gt;124.121.47.84: sm00_00.pp&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{School Mate}}&lt;br /&gt;
Information on data types contained within each block based on code by Alamar.&lt;br /&gt;
&lt;br /&gt;
===0===&lt;br /&gt;
Comment&lt;br /&gt;
&lt;br /&gt;
Text - Comment text&lt;br /&gt;
&lt;br /&gt;
===1===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;float:right; clear:both;&amp;quot;&amp;gt;__TOC__&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dialogue&lt;br /&gt;
&lt;br /&gt;
Int32 - Seems to be incremented for each code 1 block&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Name of speaker, 設定１ to display no name&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Sound file to play, empty string for no sound&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - number of lines of text&lt;br /&gt;
&lt;br /&gt;
(Below is repeated for each line)&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Some sort of flag? Always 0 in known sdt files.&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte, Byte, Int32, Int32 - Read only if above byte is non-zero. Never happens in sdt files seen so far, purpose unknown.&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Line of text&amp;lt;br /&amp;gt;&lt;br /&gt;
(End repeated section)&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===2===&lt;br /&gt;
Gradually blends the entire screen from/to a given color over a given amount of time.&lt;br /&gt;
&lt;br /&gt;
Byte - 0 blends from the given color to a scene. 1 blends the entire screen to the given color. Screen will stay blended until another code 2 restores it to normal.&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Color&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Time to spend blending, in seconds.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===3===&lt;br /&gt;
Does not appear in sdt files seen so far.&lt;br /&gt;
===4===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
Int32 - always 2&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - always &amp;quot;NULL&amp;quot; or &amp;quot;siro.ema&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32, Int32 - always [64,48] when text is &amp;quot;NULL&amp;quot;, [1024,768] when text is &amp;quot;siro.ema&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===5===&lt;br /&gt;
Does not appear in sdt files seen so far.&lt;br /&gt;
===6===&lt;br /&gt;
Specifies name of sound file.&lt;br /&gt;
&lt;br /&gt;
When sound file name is not &amp;quot;NULL&amp;quot;, always followed by a block 7 and a block 8.&amp;lt;br /&amp;gt; &lt;br /&gt;
Int32 - id assigned to loaded sound.&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Name of sound file. Sometimes &amp;quot;NULL&amp;quot; to unload a sound.&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Unknown&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Unknown&lt;br /&gt;
&lt;br /&gt;
===7===&lt;br /&gt;
Unknown. Often occurs between code 6 and code 8, but not always. count7a is always 1 and count7b always 1 or 2 in seen sdt files.&lt;br /&gt;
&lt;br /&gt;
int count7a = ReadInt32(reader);&amp;lt;br /&amp;gt;&lt;br /&gt;
for (int i = 0; i &amp;lt; count7a; i++)&amp;lt;br /&amp;gt;&lt;br /&gt;
{&amp;lt;br /&amp;gt;&lt;br /&gt;
byte count7b = ReadByte(reader);&amp;lt;br /&amp;gt;&lt;br /&gt;
ReadInt32(reader);&amp;lt;br /&amp;gt;&lt;br /&gt;
ReadInt32(reader);&amp;lt;br /&amp;gt;&lt;br /&gt;
if ((count7b &amp;gt; 0) &amp;amp;&amp;amp; (count7b &amp;lt;= 2))&amp;lt;br /&amp;gt;&lt;br /&gt;
{&amp;lt;br /&amp;gt;&lt;br /&gt;
ReadInt32(reader);&amp;lt;br /&amp;gt;&lt;br /&gt;
}&amp;lt;br /&amp;gt;&lt;br /&gt;
}&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===8===&lt;br /&gt;
Believed to start playback of sounds specified in block 6.&lt;br /&gt;
&lt;br /&gt;
Int32 - Matches the Int32 in a previous block 6.&lt;br /&gt;
&lt;br /&gt;
===9===&lt;br /&gt;
Transfers to another .sdt file.&lt;br /&gt;
&lt;br /&gt;
Text - name of .sdt file to move to.&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Unknown. Seems to be 0 most if not all of the time.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===10===&lt;br /&gt;
Label for jumps within a file. (See Code 22.)&lt;br /&gt;
&lt;br /&gt;
Text - Label name&lt;br /&gt;
&lt;br /&gt;
===11===&lt;br /&gt;
Displays a multiple-choice menu.&lt;br /&gt;
&lt;br /&gt;
Int32 - Number of choices (always 2 in sdt files seen so far)&lt;br /&gt;
&lt;br /&gt;
(Below is repeated for each choice)&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Number of commands for if this option is chosen.&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Text for this option.&amp;lt;br /&amp;gt;&lt;br /&gt;
(data) - Commands for if this option is chosen.&amp;lt;br /&amp;gt;&lt;br /&gt;
(End repeated block)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===12===&lt;br /&gt;
Unknown. Always followed by a code 13, a code 25, and a code 9 (jump to another file), but this may be a coincidence.&amp;lt;br /&amp;gt;&lt;br /&gt;
All 5 examples of this code occur at the end of a file.&amp;lt;br /&amp;gt;&lt;br /&gt;
Code 13 has only been seen following this code.&amp;lt;br /&amp;gt;&lt;br /&gt;
Code 25 occurs in many other places.&lt;br /&gt;
&lt;br /&gt;
Text - Always &amp;quot;sm00_00.pp&amp;quot; in sdt files seen so far.&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Always 4294967295 in sdt files seen so far.&lt;br /&gt;
&lt;br /&gt;
===13===&lt;br /&gt;
Unknown. Always seen preceded by a code 12.&lt;br /&gt;
&lt;br /&gt;
===14===&lt;br /&gt;
Handles some scene transition logic&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Int32 - sub-opcode&lt;br /&gt;
Byte - Always 0&lt;br /&gt;
Byte - Always 0&lt;br /&gt;
Int32 - Parameter&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first int32 is a sub-opcode.&lt;br /&gt;
* 1 determine the type of H. However, the game also checks elsewhere, and changing this value may result in incorrect behavior of the game.&lt;br /&gt;
* 3 indicates going back to main menu. Parameter always 1.&lt;br /&gt;
* 4 determines what the girl wear. Parameters:&lt;br /&gt;
** 0 = underwear + stockings, shoes etc&lt;br /&gt;
** 1 = default bikini&lt;br /&gt;
** 2 = personal dress&lt;br /&gt;
** 3 = school uniform&lt;br /&gt;
** FF = player's choice.&lt;br /&gt;
* 5 determines the location. Parameter value corresponds to lines in adv_load_map.lst&lt;br /&gt;
&lt;br /&gt;
===15===&lt;br /&gt;
Unknown; appears to be some kind of if/then/else construct&lt;br /&gt;
&lt;br /&gt;
Int32 - Number of times to repeat loop A. Always 1 in known sdt files.&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - (Number of commands for if true?)&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - (Number of commands for if false?) (Always 0 in known sdt files.)&lt;br /&gt;
&lt;br /&gt;
(Loop A)&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32, Byte, Byte, Byte, Int32 - Unknown; possibly condition to be tested.&amp;lt;br /&amp;gt;&lt;br /&gt;
(End loop A)&lt;br /&gt;
&lt;br /&gt;
(data) - Commands (for if condition is true?)&lt;br /&gt;
&lt;br /&gt;
(data) - Commands (for if condition is false?)&lt;br /&gt;
&lt;br /&gt;
===16-19===&lt;br /&gt;
Not present in any known sdt files.&lt;br /&gt;
&lt;br /&gt;
===20===&lt;br /&gt;
Stops script execution.&lt;br /&gt;
&lt;br /&gt;
===21===&lt;br /&gt;
Not present in any known sdt files.&lt;br /&gt;
&lt;br /&gt;
===22===&lt;br /&gt;
Jumps to a label within the file. Labels are set by code 10.&lt;br /&gt;
&lt;br /&gt;
Text - Name of label&lt;br /&gt;
&lt;br /&gt;
===23-24===&lt;br /&gt;
Not present in any known sdt files.&lt;br /&gt;
&lt;br /&gt;
===25===&lt;br /&gt;
Delay, can be skipped by pressing mouse.&lt;br /&gt;
&lt;br /&gt;
Int32 - Duration in milliseconds.&lt;br /&gt;
&lt;br /&gt;
===26===&lt;br /&gt;
Loads information from/based on .lst files. (Unconfirmed, but seems highly likely.)&lt;br /&gt;
&lt;br /&gt;
Int32 - 0 for adv_load_map.lst, 1 or higher for adv_load_cha.lst. Has not been seen higher than 3.&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - 0 if Int32 is 0, 1 otherwise (0 for map, 1 for character?)&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Seems to be either &amp;quot;adv_load_cha.lst&amp;quot;, &amp;quot;adv_load_map.lst&amp;quot;, or &amp;quot;NULL&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Refers to a line in the .lst file. 0 if text is &amp;quot;NULL&amp;quot;&lt;br /&gt;
&lt;br /&gt;
With adv_load_map.lst, loads a location for the scene.&lt;br /&gt;
&lt;br /&gt;
With adv_load_cha.lst, loads characters for the scene. Int32 is a number which is used by other commands to refer to that character.&lt;br /&gt;
&lt;br /&gt;
When text is &amp;quot;NULL&amp;quot;, unloads the map or a character from memory. (Based on value of Int32.) Always done before a second map is loaded.&lt;br /&gt;
&lt;br /&gt;
===27===&lt;br /&gt;
Unknown&amp;lt;br /&amp;gt;&lt;br /&gt;
In some randomly selected examples, always preceded by a code 30 or another code 27.&lt;br /&gt;
&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32&lt;br /&gt;
&lt;br /&gt;
===28===&lt;br /&gt;
Tilt Head?&amp;lt;br /&amp;gt;&lt;br /&gt;
In some randomly selected examples, was always followed by a code 29.&lt;br /&gt;
&lt;br /&gt;
Int32 Character Id&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte&lt;br /&gt;
&lt;br /&gt;
===29===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
Int32 - Unknown&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Always 0xFFFFFFFF if text value is &amp;quot;NULL&amp;quot;&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Often &amp;quot;NULL&amp;quot;, sometimes what looks like a mesh name&lt;br /&gt;
&lt;br /&gt;
===30===&lt;br /&gt;
Moves a character to a new pose&lt;br /&gt;
&lt;br /&gt;
Int32 - Character id from a code 26 line&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Always -1 (0xFFFFFFFF)&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Pose to switch to&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0 or 1&lt;br /&gt;
&lt;br /&gt;
===31===&lt;br /&gt;
Sets a character's expression.&lt;br /&gt;
&lt;br /&gt;
Int32 - Character id, from a previous code 26.&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Code for eye expression&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Code for mouth expression&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0 or 1&lt;br /&gt;
&lt;br /&gt;
===32===&lt;br /&gt;
Moves a character to a specified location&amp;lt;br /&amp;gt;&lt;br /&gt;
Often seems to be preceded by code 26 and followed by code 33.&lt;br /&gt;
&lt;br /&gt;
Int32 - Character id&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Interval to spend walking, in milliseconds&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0 or 1&lt;br /&gt;
&lt;br /&gt;
===33===&lt;br /&gt;
Make a character face a given direction&lt;br /&gt;
&lt;br /&gt;
Int32 - Character id&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Interval to spend turning to face new direction&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Usually 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32 - New direction. Not sure if relative or absolue.&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Usually 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte&lt;br /&gt;
&lt;br /&gt;
===34-35===&lt;br /&gt;
Not present in any known sdt files.&lt;br /&gt;
&lt;br /&gt;
===36===&lt;br /&gt;
Add/remove a mesh to a character, such as clothing.&lt;br /&gt;
&lt;br /&gt;
Int32 - Character id&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Text - Contains the name of a mesh of that character. (May be in head or body .xx file. Names can be found in the cat*.lst files)&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - 0 to add, 1 to remove.&lt;br /&gt;
&lt;br /&gt;
===37===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
Float32&lt;br /&gt;
&lt;br /&gt;
===38===&lt;br /&gt;
Code 38 is capable of either zooming or moving the camera forward/backward. Details unknown.&lt;br /&gt;
&lt;br /&gt;
Byte - Always 0&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Time to spend moving camera&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32&amp;lt;br /&amp;gt;&lt;br /&gt;
Float32&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte - Always 0 or 1&lt;br /&gt;
&lt;br /&gt;
===39===&lt;br /&gt;
Camera movement&lt;br /&gt;
&lt;br /&gt;
Byte&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Time to spend moving camera&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Float?&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Float?&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Float?&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte&lt;br /&gt;
&lt;br /&gt;
===40===&lt;br /&gt;
Not present in any known sdt files.&lt;br /&gt;
===41===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32&lt;br /&gt;
&lt;br /&gt;
===42===&lt;br /&gt;
Unknown&amp;lt;br /&amp;gt;&lt;br /&gt;
Seems to often be followed by 43-47 in sequence.&lt;br /&gt;
&lt;br /&gt;
===43===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
===44===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
===45===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
===46===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
===47===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
===48===&lt;br /&gt;
Gradually blends the entire scene to/from the given color. Dialog text will still be displayed. Screen stays blended until the next code 48.&lt;br /&gt;
&lt;br /&gt;
Byte - 1 to blend to the color, 0 to blend from it.&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Color&amp;lt;br /&amp;gt;&lt;br /&gt;
Int32 - Time to spend blending, in milliseconds.&lt;br /&gt;
&lt;br /&gt;
===49===&lt;br /&gt;
Unknown&lt;br /&gt;
&lt;br /&gt;
Int32&amp;lt;br /&amp;gt;&lt;br /&gt;
Byte&lt;br /&gt;
[[Category:School Mate 1]]&lt;/div&gt;</summary>
		<author><name>124.121.47.84</name></author>	</entry>

	</feed>