Sly 2:Circle Button Interacts: Difference between revisions

 
(16 intermediate revisions by the same user not shown)
Line 1:
'''Circle button interacts''', such as pipes and door entrance triggers, have their own structs. However, unlike normal map objects, they only pool in specific circumstances, so the ones that don't pool have static map-specific addresses. Unless otherwise specified, changesChanges to these objects' structs take effect immediately and without a map reload. Unless otherwise specified, andthey can be found by interactingusing a pointer of 0x3E1B10 with theman usingoffset Slyof and0x0 using(NTSC-U PS2 release), which will take you to the "laststruct collisionof touched"the pointerinteract you're closest to physically.
{{Infobox game mechanic
| image=
| caption=
| size=
}}
 
'''Circle button interacts''', such as pipes and door entrance triggers, have their own structs. However, unlike normal map objects, they only pool in specific circumstances, so the ones that don't pool have static map-specific addresses. Unless otherwise specified, changes to these objects' structs take effect immediately and without a map reload, and can be found by interacting with them using Sly and using the "last collision touched" pointer.
 
{{Needs images}}
 
== Poles ==
{{Infobox struct
| title=Pole Interact
| image=Sly2_pole_example.png
}}
 
Poles, or any object that acts like them (Sly holds his cane in his mouth) are objects independent of the actual pole model. They contain an invisible spline with varying amounts of points depending on the size and shape of the pole. Note that pole interacts attached to pool-able poles do pool along with them., These may alsoand stop working and/or despawn if moved too far away from their assigned pole object.:
 
The struct is relatively short. The pole right outside the Paris safehouse is used here as an example:
 
<gallery widths="300" heights="300>
Line 29 ⟶ 20:
Orange: The transform component for the entire spline, containing coordinates and rotation matrix. These don't need a map reload for changes to them to take effect. Note that some poles contain an extra transformation matrix above the normal one. If you want to make position changes to these, you'll need to change the first two set of coordinates. The first one controls the location Sly gravitates towards, the normal transform coordinates only control its position visually.
 
Magenta: Controls character-specific interactions when nearby. The "FFFFFFFF" can be changed to a text string ID, which causes it to display that string in the infobox GUI element, just like doors that warn you about abandoning jobs. If you climb the pole then jump off, an icon for that character will appear and follow you just like the sparkles do. The "00000001" dictates which character can use the pole. Setting it to 00000002 makes the makes it stop emitting blue sparkles and start emitting green sparkles, letting Bentley climb it with his unused climbing ability. Setting it to 00000004 does the same thing but purple particles and Murray. Setting it to 00000000 essentially disables the pole. Setting it to 000000FF makes the interact work with all characters, removing the need to use conditionals to let different characters use the interact. Values such as 3, 5, 6, and higher act like 1, 2, and 4, so the value's entire purpose is unknown. Poles are the only Thief Move-related circle button object other than Sneak Triggers that Bentley and Murray can interact with.
 
Cyan: Contains data related to the spline points, but not the actual positions themselves, including Sly's position on the pole. Needs more research.
Line 42 ⟶ 33:
{{Infobox struct
| title=Rope Interact
| image=Sly2_rope_example.png
}}
 
Ropes, or any object that acts like them (Sly runs/slides along them) are objects independent of the actual rope model. They contain an invisible spline with varying amounts of points depending on the size or shape of the pole.
 
The struct is slightly shorter than pole structs, however they contain more unknown data. A rope next to the Paris safehouse is used here as an example:
 
<gallery widths="300" heights="220>
Line 70 ⟶ 62:
{{Infobox struct
| title=Spire Point Interact
| image=Sly2_spirepoint_example.png
}}
 
Line 91 ⟶ 84:
{{Infobox struct
| title=Cane Swing Interact
| image=Sly2_caneswing_example.png
}}
 
Cane Swings, as in the interact Sly latches onto to swing on a round yellow hook, have the smallest interact structs in the game. While they are independent of the actual hook model, they don't work unless placed near them.
 
<gallery widths="300" heights="220>
Line 110 ⟶ 104:
{{Infobox struct
| title=Wall Hook Interact
| image=Sly2_wallhook_example.png
}}
 
Line 129 ⟶ 124:
{{Infobox struct
| title=Crawlspace Interact
| image=Sly2_crawlspace_example.png
}}
 
Crawlspaces, as in low-to-the-ground first person camera mode areas, only work if placed next to their intended crawlspace geometry, or perhaps any overhead geometry, potentially detected via raycast. These can be found by interacting with one as Sly and going 0x4D4 from his struct.
 
<gallery widths="300" heights="300>
Line 151 ⟶ 147:
{{Infobox struct
| title=Logo Interact
| image=Sly2_logointeract_example.png
}}
 
Line 170 ⟶ 167:
{{Infobox struct
| title=Sneak Interact
| image=Sly2_sneaktrigger_example.png
}}
 
Line 194 ⟶ 192:
{{Infobox struct
| title=Statue Sneak Point Interact
| image=Sly2_statuesneak_example.png
}}
 
Line 213 ⟶ 212:
{{Infobox struct
| title=Ice Wall Interact
| image=Sly2_icewall_example.png
}}