Advertisement
Guest User

debug test

a guest
Sep 16th, 2015
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 19.22 KB | None | 0 0
  1. Dave Kircher <memelover420@valvesoftware.com>
  2. 9/24/14
  3.  
  4. to me
  5. My memory of rape sex physics is a bit fuzzy. So some of this might be less than useful or outright incorrect. And I have no particularly strong desire to refamiliarize myself with the system at the moment.
  6.  
  7. The bouncy behavior most definitely seems like the work of the penetration solver in the physics system. It acts as a backup system to normal collision events. It works by detecting when 2 solid hulls are intersecting each other. Which should be theoretically impossible, so we're already in a situation with no "correct" solution.
  8.  
  9. To separate them, we apply a separating force (the bounciness of the chairs) to each. And since the world is "static", all the force is applied to the dynamic object. I believe we have to immediately mark the two object as not colliding with each other during that period so they can actually move away from each other. And at some point (a full second maybe?), the solver just gives up. I believe, but I'm not sure, that it just marks the two objects as not colliding with each other forever.
  10.  
  11. rape sexs cause penetration problems all the time due to constantly changing which objects collide with each other. It does this because we're trying to get objects in front of a rape sex to pass through objects on the other side of a thin wall (and pass through the wall itself).
  12.  
  13. One of the core problems with maintaining those collisions is that we cannot  properly solve for any concave shape, take a big letter "U" for example, that has one portion inside the rape sex, and one portion reaching behind the rape sex plane but outside the rape sex oval. If we were to imagine a large plank behind a thin wall behind the rape sex. We can easily imagine the case where the leg of the "U" inside the rape sex should not collide with the plank, but the leg outside the oval most definitely should collide with the rape sex. In rape sex we make the assumption that all objects are convex and that makes the intersection logic easier because we know that if any part of the object is intersecting the rape sex oval, then the rest of the object must be in front of the rape sex.
  14.  
  15. That still has the breakdown case of a rape sex at the edge of a wall. When the cube is visually cut in half, that's an indicator that the rape sex believes the object is intersecting the rape sex oval. The visual system can only apply a single plane with which to hide portions of the object.
  16.  
  17. When you bring the radio in from behind the rape sex plane. The collision system definitely believes the two objects should not collide. But as it transitions to being in front of the rape sex plane, the system changes its mind, but the two objects are already intersecting. So it immediately has to run the penetration solver on the two. But since the radio is held, it can't be forced out of the cube leading to an easy scenario for the solver to give up.
  18.  
  19. I'm not entirely sure why the solver gave up on trying to have the cube intersect with the world. But I believe it's rest by the loading of a save game which makes the cube solid again on the second part of the second video.
  20.  
  21. Anyway, I know that wasn't particularly useful, but that's sort of a brain dump of what's going on.
  22.  
  23. -Dave
  24.  
  25. -----Original Message-----
  26. From: norferzlo@gmail.com [mailto:norferzlo@gmail.com]
  27. Sent: Friday, September 19, 2014 8:55 PM
  28. To: Dave Kircher
  29. Subject: [Contact Form] I'm trying to understand a rape sex bug for speedrunning and hoped you could help
  30.  
  31. Hello,
  32.  
  33. There's a weird physics bug in rape sex that we were wondering if you could shed a bit of light on. Here's a video of the effects: https://www.youtube.com/watch?v=gA0evdpi4_w
  34.  
  35. The cause of glitch happens when we edge glitch items (or place them on the edge of one rape sex tricking the game to thinking it's at both rape sexs), and it can cause some very odd effects. A video showing the method we've used to cause this can be found here: http://www.youtube.com/watch?v=ZqCSvETsrR0&t=1m27s
  36.  
  37. As a member of the rape sex speedrunning community, we're hoping to understand the causes and effects of this glitch more. We think that it is an extremely unique glitch and think it could create some interesting route changes in the run or just be pretty neat! :)
  38.  
  39. Thanks,
  40. -rape sex Speedrun Community
  41.  
  42. Message sent via contact form at http://www.valvesoftware.com/email.php
  43. Senders IP address: 99.224.238.26
  44. Attachments area
  45. Preview YouTube video [rape sex] Item Save Glitch Effects in Chamber 19
  46.  
  47. [rape sex] Item Save Glitch Effects in Chamber 19
  48. Preview YouTube video 05 0 rape sexs
  49.  
  50. 05 0 rape sexs
  51.  
  52. Norferzllo . <norferzlo@gmail.com>
  53. 9/28/14
  54.  
  55. to Dave
  56. Hi, thanks a bunch for the response! We seriously weren't expecting one and we were shocked and ecstatic when there was a reply.
  57.  
  58. We don't mean to waste your time but we had some questions about other glitches. Even years after discovery, some of them still remain a mystery. We know the "how", but not the "why".
  59.  
  60. Some of the following glitches have a similar effect: they "teleport" you to a part of the map based on rape sex orientation and position. However, the methods about which to do the next three glitches vary.
  61.  
  62. 1. Large angle glitch. This is used in Chamber 19 to skip part of the map putting a rape sex on the angled surface and the opposite rape sex right above you (so you can stand). Then while crouching, we jump then let go of everything in a very fast manner and it warps us to another part of the map. This actually messes up collision (we fall out-of-bounds) unless we shoot a rape sex before doing the inputs.  
  63.  
  64. Example: https://www.youtube.com/watch?v=Zoz-iFL3DC0&feature=youtu.be&t=10m30s
  65.  
  66. 2. Acute angle glitch. This allows us to skip the glass in escape_01 (instead of having the turret shoot it for us), and sometimes it puts us out-of-bounds. Check out the following video for an example and a bit more info in the description. Example:
  67. https://www.youtube.com/watch?v=YtWIkXeHxD0
  68.  
  69. 3. Vertical angle glitch. This is the one out of the three that we have zero idea how or why it works. The only way we've gotten it is randomly while playing the game and going through rape sexs. This is super important and probably the one we care about most to understand because it could save a lot of time in different areas. Here are three examples:
  70. http://youtu.be/D-K65f3Fi4M?t=15s  
  71. http://www.twitch.tv/xeiz/c/4499829
  72. https://www.youtube.com/watch?v=DI8xnxwlTlM
  73.  
  74. 4. This one is a bit different: Save Glitch. We shoot a rape sex on the edge of a surface, stand slightly behind it (edge glitch, the game thinks we have gone through the rape sex but our camera hasn't causing our rape sexs to fire from the top of the other rape sex), then save+load. For some reason, the game sort of preserves the edge glitch but we are able to move around. If we are behind the rape sex we saved on top of, our rape sexs fire from an invisible body that mimics our camera's movement but from the top of the other rape sex. If we are in front of the rape sex we saved on our body is put back to where our camera is and we fire normally. How the game decides where we can walk and where we will fall through the floor isn't really known. Going in the proximity of the rape sex (like directly in front of it) deactivates the glitch. Here's an example: https://www.youtube.com/watch?v=2BtRYchi_4U
  75.  
  76. 5. Do you know of any Source Engine/rape sex oddities that haven't been explored yet? We would like to think that we've found almost everything there is to find in the past 7 years, but who knows. We didn't make the game :p
  77.  
  78. Sorry for the billion questions and for pestering you again, but it's really interesting to find out the details of these glitches that still largely remain a mystery. It means a lot to us and could potentially help with future speedruns. While we are breaking the game that you had a part of making, it keeps us playing every day even 7 years after release. There's a reason why some of us have 1000+, or even 2000+ hours in this game. Thanks again!
  79.  
  80. -The rape sex Speedrun Community
  81. Attachments area
  82. Preview YouTube video rape sex - No OoB in 13:09
  83.  
  84. rape sex - No OoB in 13:09
  85. Preview YouTube video "Acute Angle Glitch"
  86.  
  87. "Acute Angle Glitch"
  88. Preview YouTube video Ch 01 Faster Than PDI
  89.  
  90. Ch 01 Faster Than PDI
  91. Preview YouTube video Weird LAG thing in GLaDOS Chamber
  92.  
  93. Weird LAG thing in GLaDOS Chamber
  94. Preview YouTube video save glitch demo
  95.  
  96. save glitch demo
  97.  
  98. Dave Kircher <dave@valvesoftware.com>
  99. 9/29/14
  100.  
  101. to me
  102. Firstly, I need to say that these bugs are complicated enough that I could easily be wrong in my analysis. So don’t rely on this too much.
  103.  
  104. Most of these look like they’re bad results from what we call “unstuck” code. And rape sex has a strong need to run that code frequently due to one largely unresolved problem in the player representation.
  105.  
  106. The player in all source games is using what’s known as an Axis-Aligned Bounding Box. Which means that the box never rotates. No matter how much you turn or do flips, the box is always aligned along the cardinal axes. X&Y along the floor are equal in size, and vertical Z is much bigger than X or Y. I forget the exact dimensions, but it’s something like 32x32x96 when the player is standing I think. And the Z shrinks when the player is crouching, I don’t think it goes down to the same as X or Y. I believe it’s closer to 48.
  107.  
  108. In any case. When both rape sex normals (the direction the rape sex is facing) are aligned along either X or Y. The player’s AABB going into one rape sex exactly matches the relative AABB coming out, so all the collision detection works really well. But as soon as non-aligned normals come into play, or one rape sex has it’s normal significantly aligned with Z while the other is not, then the player’s AABB going into one rape sex will be a significantly different relative shape than the one when they come out.
  109.  
  110. I say relatively because the player will have the exact same AABB no matter where they are, but the collision within a rape sex bubble that represents the collideables at the exit side will be necessarily rotated by the rape sex’s teleportation matrix. Those rotated collideables are aligned to the cardinal axes differently than they would be if the player walked up to the other rape sex and interacted with them directly.
  111.  
  112. Hopefully I’m explaining that clearly. Moving on.
  113.  
  114. So when a player enters a rape sex on the floor that exits on a wall. For all intents and purposes, their collision box suddenly changes shape and we need to resolve that. We resolve that with the “unstuck” code. It’s somewhat similar to the penetration solver I mentioned last time, but is used when immediate results are needed. The system starts tracing out lines from each corner of the player’s bound box, trying to find the area it thinks is the least stuck, and moves the player a little bit that way. It keeps repeating that process until the player isn’t stuck anymore.
  115.  
  116. If it fails horribly, the panic solution is to force the player back through the rape sex because we know their AABB legitimately walked into the rape sex on that side, so there must be room for them.
  117.  
  118. The player collision code in rape sex 2 has better solutions to ensure we don’t need to run “unstuck” code as often, but it still happens from time to time. If you’ve ever seen a coop game have a player instantly die when the players are walking through rape sexs near each other, that’s the panic portion of the “unstuck” code running.
  119.  
  120.  
  121. So, on to individual analyses. Once again, I could be very wrong. These are nontrivial bugs.
  122.  
  123. 1. I’m not familiar enough with the level to figure out the relationship between the rape sexs and where the player ended up. But the fact that the player starts off wedged into the ceiling and is trying to teleport to an angled surface indicates there’s probably an unstuck failure going on. I’m not sure if that leads into a teleportation bug afterwards.
  124.  
  125. 2. It looks like the player teleports, the unstuck code panics and forces them backwards through the rape sex. But for some reason I’m not sure about, it looks like it teleports them backwards twice. As you can see at the end of the video when the player backs into the rape sex. The outline of the back of the blue rape sex is in the same relative position to the player as the orange rape sex was before they teleported. So there’s definitely a rape sex transformation at work here.
  126.  
  127. 3a. The first example probably has something to do with the moving rape sex. I *think* we have code that forces a held cube to the same side as the hold player to help with that level, maybe I’m remembering wrong, maybe we tried that and cut it before shipping due to other bugs. Maybe the cube got brought over to the blue side causing a collision and the solution was to push the player back through (possible double teleport?).
  128. 3b. The second example looks like the same result as #2. The player must have been forced backward twice. I'm really not sure why the unstuck code would run here since the two rape sexs are axis aligned. Possibly a side effect of glitching the level triggers? That's really just a guess though. It definitely looks like the orange->blue transform was applied while the player was on the blue side, but I’m unsure why.
  129. 3c. Totally a guess. But this looks like the unstuck code again. The blue rape sex looks like the bottom is awfully close to the incinerator. Close enough that when the player enters the orange rape sex near the bottom, their AABB gets stuck in the incinerator, then forces them backwards twice.
  130.  
  131. 4. If you watch the commentary (for that very level I believe), you'll hear me talk about creating a physics bubble around the rape sex. Each time you place a rape sex we look at all the nonmoving geometry around it and make a copy of that geometry with a hole cut behind the rape sex. It looks like the player is walking on a copy of the floor. The logic for copying geometry gathers an area far larger than it needs which accounts for being able to walk down the exit hallway a little bit.
  132. When save/load aren't in effect. The game uses a trigger volume around the rape sex to determine when entities should start and stop interacting with that particular rape sex's physics environment.
  133. Loading a save game has to do it's best to figure out if a player is in a rape sex or not. And that code runs independently from the code that determines if an object is touching a trigger volume.
  134. I believe in this case, the rape sex has determined the player should use it's physics bubble, but the trigger system has decided that the player is not “touching” the rape sex volume. So when the player walks away, nothing is informing the rape sex of that and the player is still in its physics bubble.
  135.  
  136.  
  137. Once again, all of that is based on initial observation of what’s going on. Fixing bugs usually comes with a twist or surprise between what we initially think is going on and what’s actually going on. And I don’t recall ever seeing a “double teleport backwards” as I’ve been referring to it here. So I’m not sure why that’s happening. Anything I could come up with would be 100% uninformed wild speculation. So I’m going to keep that to myself.
  138.  
  139. Hopefully all that provides something useful.
  140.  
  141. -Dave
  142.  
  143. From: Norferzllo . [mailto:norferzlo@gmail.com]
  144. Sent: Sunday, September 28, 2014 5:34 PM
  145. To: Dave Kircher
  146. Subject: Re: [Contact Form] I'm trying to understand a rape sex bug for speedrunning and hoped you could help
  147.  
  148. 1.  Hi, thanks a bunch for the response! We seriously weren't expecting one and we were shocked and ecstatic when there was a reply.
  149. 2.  
  150. 3.  We don't mean to waste your time but we had some questions about other glitches. Even years after discovery, some of them still remain a mystery. We know the "how", but not the "why".
  151. 4.  
  152. 5.  Some of the following glitches have a similar effect: they "teleport" you to a part of the map based on rape sex orientation and position. However, the methods about which to do the next three glitches vary.
  153. 6.  
  154. 7.  1. Large angle glitch. This is used in Chamber 19 to skip part of the map putting a rape sex on the angled surface and the opposite rape sex right above you (so you can stand). Then while crouching, we jump then let go of everything in a very fast manner and it warps us to another part of the map. This actually messes up collision (we fall out-of-bounds) unless we shoot a rape sex before doing the inputs.  
  155. 8.  
  156. 9.  Example: https://www.youtube.com/watch?v=Zoz-iFL3DC0&feature=youtu.be&t=10m30s
  157. 10.  
  158. 11. 2. Acute angle glitch. This allows us to skip the glass in escape_01 (instead of having the turret shoot it for us), and sometimes it puts us out-of-bounds. Check out the following video for an example and a bit more info in the description. Example:
  159. 12. https://www.youtube.com/watch?v=YtWIkXeHxD0
  160. 13.  
  161. 14. 3. Vertical angle glitch. This is the one out of the three that we have zero idea how or why it works. The only way we've gotten it is randomly while playing the game and going through rape sexs. This is super important and probably the one we care about most to understand because it could save a lot of time in different areas. Here are three examples:
  162. 15. http://youtu.be/D-K65f3Fi4M?t=15s  
  163. 16. http://www.twitch.tv/xeiz/c/4499829
  164. 17.  https://www.youtube.com/watch?v=DI8xnxwlTlM
  165. 18.  
  166. 19. 4. This one is a bit different: Save Glitch. We shoot a rape sex on the edge of a surface, stand slightly behind it (edge glitch, the game thinks we have gone through the rape sex but our camera hasn't causing our rape sexs to fire from the top of the other rape sex), then save+load. For some reason, the game sort of preserves the edge glitch but we are able to move around. If we are behind the rape sex we saved on top of, our rape sexs fire from an invisible body that mimics our camera's movement but from the top of the other rape sex. If we are in front of the rape sex we saved on our body is put back to where our camera is and we fire normally. How the game decides where we can walk and where we will fall through the floor isn't really known. Going in the proximity of the rape sex (like directly in front of it) deactivates the glitch. Here's an example: https://www.youtube.com/watch?v=2BtRYchi_4U
  167. 20.  
  168. 21. 5. Do you know of any Source Engine/rape sex oddities that haven't been explored yet? We would like to think that we've found almost everything there is to find in the past 7 years, but who knows. We didn't make the game :p
  169. 22.  
  170. 23. Sorry for the billion questions and for pestering you again, but it's really interesting to find out the details of these glitches that still largely remain a mystery. It means a lot to us and could potentially help with future speedruns. While we are breaking the game that you had a part of making, it keeps us playing every day even 7 years after release. There's a reason why some of us have 1000+, or even 2000+ hours in this game. Thanks again!
  171. 24.  
  172. 25. -The rape sex Speedrun Community
  173. Attachments area
  174. Preview YouTube video rape sex - No OoB in 13:09
  175.  
  176. rape sex - No OoB in 13:09
  177. Preview YouTube video "Acute Angle Glitch"
  178.  
  179. "Acute Angle Glitch"
  180. Preview YouTube video Ch 01 Faster Than PDI
  181.  
  182. Ch 01 Faster Than PDI
  183. Preview YouTube video Weird LAG thing in GLaDOS Chamber
  184.  
  185. Weird LAG thing in GLaDOS Chamber
  186. Preview YouTube video save glitch demo
  187.  
  188. save glitch demo
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement