Forward Motion Changes w/ Commentary

Feb 23rd, 2019
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (changes with a * mean it fixes a game-breaking bug or it is a change that allows the compiler to run)
  3. fm_map1
  5. - Fixed texture clipping error in one room
  6. This was just a random decal placed on the ceiling for some reason. I have no idea why it was there.
  7. * Fixed fence door not being able to swing open (changed into a func_door_rotating)
  8. It was easier just to convert it to a door rather than try to fix the physics for it
  9. - Added nodraw to unseen areas
  10. Just for extremely slight optimization reasons. I hardly needed to do this, only did it just because.
  11. - Locked one door that isn't supposed to be entered
  12. - Changed floor-collapse event to be unavoidable
  13. - Added stunstick to hallway before citizen murder scene
  14. This is a specific thing I did purely for MMod. If MMod didn't have a stunstick weapon, I wouldn't have added it.
  15. - Fixed citizen being able to survive the murder scene
  16. I'm pretty sure he was meant to die. Avenging his death is what starts this whole trainwreck (at least that's what it looks like).
  17. - Fixed being able to see the zombies spawn in the murder hallway
  18. If you were quick enough, you would see it. They're technically spawned right when the map is loaded now, but they aren't awake until the metro-murderer is dead.
  19. - Metropolice murderer now blocks the path until he is killed
  20. Did this just to keep the player from skipping things.
  21. - Added an autosave
  22. - Added playerclip to some areas to prevent going out of bounds, skipping areas and/or getting permanently stuck
  23. It's possible to go out of bounds by jumping on blown-up parts of buildings and jumping behind the fences in the final area. This fixes that.
  24. - Fixed one explosive blowing up randomly before getting anywhere near it
  25. - Recompiled with HDR
  26. To be frank, I have no idea if the maps were already compiled with HDR. I'm just assuming they weren't.
  28. fm_map2
  30. - Added stunstick to startup loadout
  31. - Added nodraw to unseen areas
  32. * Slightly changed one turn in the pipes to be compiler-friendly
  33. For some reason, recompiling this map caused it to crash due to how one of the corner pipes were created. I had to copy a non-crash-inflicting corner pipe and paste it over the crash-inflicting one. Means the pipes don't look like they connect super smoothly anymore, but it was all I could do (and if I remember correctly, I converted it from a func_detail to a func_brush).
  34. - Fixed one fence being clipped away due to a skybox wall
  35. Fun fact, while making this fix, I accidentally caused a leak and had no idea for ages. I was so confused as to why the map would not compile correctly because I had thought that I checked the compile log and saw no signs of leakage. But after looking at it again for the fourth time, I finally saw it (*****leaked******) and loaded the file that led me straight to the leak source: an extremely small hole into the void.
  36. - Added playerclip to one area to prevent seeing nodraw faces
  37. This was added as a result of the fix above this one. I basically had to create a new area to ensure the whole fence was seen and within it was nodraw textures, so I added playerclip to make sure the player couldn't see it.
  38. - Fixed one metropolice being stuck in the ground
  39. - Added an autosave
  40. - Recompiled with HDR
  42. fm_map3
  44. - Added stunstick to startup loadout
  45. - Added playerclip to one area to prevent going behind a trigger_changelevel
  46. This was possible by climbing up one of the hills and walking along them.
  47. - Replaced some nodraw textures with concrete textures
  48. It was possible to see the nodraw textures where they were placed.
  49. - Added nodraw to unseen areas
  50. * Changed some terrain to be compiler-friendly (EDIT: this also prevents the map from crashing upon loading)
  51. The compiler hated how the grass on the hills were stretched out and thus would refuse to compile, annoyingly. It was a simple fix though that, due to my inexperience with Hammer, took me way too long to find out. EDIT, 27 February 2019: So as it turns out according to Koneko, this also fixes a game-breaking bug, which is that the level couldn't even load without this being fixed, so ya.
  52. - Added autosaves
  53. - Added an areaportal for optimization
  54. This was really only added for me to practice using areaportals. I'm sure someone is going to come along and say "ya that areaportal really wasn't needed. You're actually losing more optimization than you are gaining with where you placed it." Which then I say ah well, the map is small anyway so you probably won't tell the difference. I'll be sure to use it more effectively next time.
  55. - Re-enabled switching between this level and fm_map2 (only if loading into this map from fm_map2)
  56. Originally, if you were to drive backwards, you would see what looks like an unfinished part of the map. Don't know why the creator turned off the trigger_changelevel.
  57. - If map is loaded via "map fm_map3", a playerclip & nodraw is enabled to prevent going backwards into fm_map2
  58. This is just so that you don't play the last level backwards.
  59. - Recompiled with HDR
  61. fm_map4
  63. * Fixed airboat (along w/ player if the airboat was being ridden) being deleted if it is carried over from fm_map3 if it was loaded via the command "map fm_map3"
  64. Why this happened is kinda complicated. So if you start any of the maps after fm_map1 via the "map" command, you spawn with a set of starting equipment akin to what you would've had if you played from the beginning level up to that point, the equipment being named "gamestart". But if you are simply transitioning from one map to the next, an entity is triggered which removes all entities named "gamestart" since you already have starting equipment. The airboat that you spawn with in fm_map3 if you load it via "map fm_map3" used to be called "gamestart" along with your equipment, which means if you were to transition into this level, this gamestart airboat would be deleted because you already have an airboat. This is all fine, except for the next level, fm_map4. This map does the exact same thing, with an airboat being called "gamestart" and it being deleted if you already have an airboat. This works as intended if you are carrying the airboat from fm_map2. BUT if you have the airboat from fm_map3, your airboat along with you gets deleted because your airboat retained the "gamestart" name. A fatal bug that was fixed simply by renaming some stuff and ensuring the fm_map3 airboat didn't fall prey to fm_map4's deletion horror.
  65. - Added stunstick to startup loadout
  66. - Added autosaves
  67. - Added nodraw to unseen areas
  68. - Added starting room from next level to end of this level (not accessible; only added so that if the player backtracks while leaving the door open, the doorway won't reveal a blank wall when loading into the previous level [this one])
  69. - Re-enabled switching between this level and fm_map3 (only if loading into this map from fm_map3)
  70. - If map is loaded via "map fm_map4", a playerclip & nodraw is enabled to prevent going backwards into fm_map3
  71. - Recompiled with HDR
  73. fm_map5
  75. - Added ladder room from last level to the beginning of this level (not accessible; only added so that if the ladder room's door is still open while transitioning to the next level, the doorway won't reveal a blank wall)
  76. - Added autosave to beginning
  77. - Added stunstick to startup loadout
  78. - Music plays via a trigger_once now rather than immediately when the map loads
  79. Just did this so that more music is spent fighting rather than supplying.
  80. - Music now replays if reloading the map in the gunship area
  81. - Fixed APC sometimes not moving out
  82. - All combine in the building right after defeating the gunship are now part of a single squad
  83. - Changed event that prevents you from running backwards away from the strider surprise to be more realistic (instead of a massive block falling down in front of the door, the ceiling caves in)
  84. Believe it or not, this is the first time I did something complicated in Hammer. Never made something like this before, and it's still not ground-breaking.
  85. - Strider surprise event is now caused by a logic_relay which itself is still triggered by a trigger_once, but now can also be triggered if the strider is attacked before touching the trigger_once
  86. This only needed to be because of the fix before this one. Originally, that super block would fall down AND the strider would surprise you all from one trigger. I changed it so that the player can see the cave-in if they want to, and then be surprised by the strider. This though required there to be a way to trigger the surprise if the strider was injured, as if the player just stayed where they were, they could kill the strider without it doing anything back to the player, so I converted it to be triggered by a logic_relay, which itself is triggered if you either trigger the trigger_once or injure the strider before touching the trigger_once.
  87. * Fixed strider becoming frozen if the player runs to a certain trigger faster than the strider's surprise animation
  88. Basically, I fixed it so that if you get to this trigger before the strider finishes its animation, the animation skips to the end and the strider starts attacking you.
  89. - Added playerclip to one area to prevent skipping the strider surprise
  90. This would really only be possible if you decided to bring a ton of props with you to stack and use as a tower.
  91. * Added playerclip to one area to prevent getting permanently stuck in one part of the level
  92. If you were to run onto the bridge the strider is supposed to destroy but then run backwards, you would be stuck in the last building with no way to progress because the bridge is gone.
  93. - If map is loaded via "map fm_map5", a door has been locked and a trigger_changelevel has been disabled to prevent going backwards into fm_map4
  94. - Recompiled with HDR
  96. fm_map6
  98. - Added stunstick to startup loadout
  99. - Added autosaves
  100. - Combine now relay information to each other
  101. Almost none of the combine in the building were in squads with each other, meaning they wouldn't coordinate with each other. For example, if their buddy was killed right next to them, they wouldn't take the hint that you are around the corner and instead would just stare at their dead friend blankly.
  102. - Fixed breach event in one hallway
  103. The doors would sometimes block the combine and cancel their movement and the doors themselves would sometimes get stuck in the ground. The doors no longer have collision and they are lifted one unit off the ground.
  104. - Rooftop doors no longer automatically close
  105. When testing the gunship fight on the rooftop, it was annoying trying to run in and out of the buildings while the doors constantly closed behind or in front of you
  106. - Tau Cannon added to one room, MMOD ONLY (via mapadd, so if you prefer this isn't added to the map, then delete the mapadd folder. The Tau Cannon will instead be an AR2)
  107. Again, as the change states, it's a change simply for MMod, same thing as the stunstick.
  108. - Fixed being able to skip one trigger
  109. - APC on building now shoots ground-breaking missile upon driving into view
  110. Not via a trigger_once anymore, this is so that the player doesn't potentially destory the APC first before walking into the missile trigger, which would've meant a dead APC would somehow shoot a missile.
  111. - After all gunships and the strider are killed, the player will teleport to the roof no matter where they are
  112. Used to be you MUST still be on one specific part of the roof in order for the map to progress.
  113. - Fixed player sometimes getting stuck outside of the triggers necessary to progress to the next level when teleporting after the final battle
  114. This is fixed by getting the player stuck in a nodraw brush after teleporting.
  115. - Moved one missile crate to be in a more practical/defendable position
  116. - Fixed one missile not hurting/barely hurting the combine it lands on
  117. - Attempted to make it so crash targets aren't used twice or more (I'm pretty sure the way I tried doing it won't work all the time and it doesn't work at all on Easy)
  118. I'm actually assuming it doesn't work on Easy, because if I remember correctly, gunships only take 3 hits to go down on Easy. I'm utilizing triggers caused by the gunships getting hit for the fourth time in order to attempt to make it so multiple crash targets aren't used twice or more.
  119. - Changed gunship deaths so that they can play out before their count is added to the math_counter that triggers the level change
  120. - Fixed one skybox building model error
  121. It was clipping into one of the physical buildings in the map.
  122. - Once two gunships/one gunship & one strider remains, the last gunship will destroy the ammo crate that sits where the changelevel occurs (only if the player is near it)
  123. This wasn't needed. I just wanted to practice Hammer a tiny bit and add something to the fight. This idea is straight from MINERVA: Metastasis, where an easily defendable rocket crate position is destroyed by an attacking gunship, forcing you to find another, less-defendable position.
  124. - Recompiled with HDR
  126. fm_map7
  128. - Fixed being able to land on the rooftop of the intro building
  129. I'm fairly certain you aren't supposed to be able to land up there.
  130. * Fixed the GDM's (ghost/demon/monster) physics (would fly all over the place and get stuck in walls in newer versions of HL2)
  131. I have no idea how this got all wacked up, but I sure found an alternate way to fix it all. It was NOT easy though. Up to this point, this had been the hardest fix yet. The first two GDM encounters were annoying, but not too hard to fix. The third one however, I was completely lost. It just didn't want to work, but after the hundredth attempt where I decided to just recreate the GDM from scratch, it finally worked to my great surprise.
  132. - Door in steam room locks upon first entering it and unlocks after event is over
  133. Did this so players don't miss out on one GDM scare.
  134. - Added static to the TV when the GDM appears
  135. You would see the GDM appear out of nowhere in the camera otherwise (you still can kinda, but in my opinion, the GDM teleporting in blends with the static effect).
  136. - Added gunfire light to the combine in the tunnel
  137. This was to make the tunnel more noticeable and draw the player's eyes towards there first in case the sound of gunfire wasn't enough.
  138. - Added more autosaves
  139. - Recompiled with HDR
  141. fm_map8
  143. - Removed a pistol floating in the void
  144. Something I have no explanation to.
  145. - Made all music louder
  146. It was very quiet for some reason. I hope that's not just me.
  147. - Added stunstick next to a combine dead body
  148. - Slightly readjusted one dead combine soldier to be less unnaturally bent around
  149. - Fixed some dead combine appearing in T-Poses
  150. Their motion was disabled for some reason. I think in earlier versions of HL2, their motion was enabled anyway, so I guess originally, the "Motion Disabled" flag didn't work correctly, but now it does.
  151. - Slightly readjusted one areaportal
  152. - Added playerclip to two areas to prevent ignoring two GDM scenes
  153. One playerclip technically wouldn't have prevented you from skipping it, as it woulda happened anyways, but I added the playerclip just so the event was more... confronational.
  154. - Fixed one scare's light staying on after it's over
  155. The map originally just tried removing the light after the event was over, but the light remained anyway. So I changed it to turn off instead, and thus, still exist in the map.
  156. - Slightly extended physical length of one trigger in order to prevent accidentally passing it
  157. - Changed one combine death to utilize npc_combine_s rather than a prop_ragdoll
  158. Now you can hear that sweet combine death scream (for this one specific scene anyway, every other death scene does exactly what this fix did).
  159. - Fixed one dead combine soldier not sitting in the bench they spawn on
  160. - Fixed a fire particle clipping through a wall
  161. * Fixed a fatal crash in the APC/GDM fight (an unavoidable crash if playing on newer versions of HL2)
  162. HOLY FRICK THIS ONE RIGHT HERE WAS THE ABSOLUTE WORST BUG. There were no errors during compilation, and every part of the map seemed to work fine, except for THIS part. The event would just seemingly randomly crash for no reason and with absolutely NO error messages of ANY kind, leaving me COMPLETELY in the DARK. After so much tests and struggles and heartache, I found out (or so it appeared) the APC was causing the bug. The map for reasons unknown didn't like the APC exploding if an npc_vehicledriver was operating it. So I had to change it into an npc_apcdriver. That part of the bug was fixed, BUT SOMETHING ELSE WAS STILL CAUSING THE GAME TO BREAK. And after more heartache, I found out that the game didn't like the antlion guard being colored red if the Render Mode was set to Normal. All I had to do was change the Render Mode to Color. Such a simple fix that Hammer couldn't inform me of for such a horrible bug.
  163. - Antlion Guard must be confronted now
  164. You could literally just break the window on your side of the hallway and completely ignore it. This is no longer the case.
  165. - Added a nodraw brush to prevent zombies from crowding in front of a window you are supposed to be thrown out through (the brush is killed after the window breaks)
  166. If you were unlucky, there would be tons of zombies right outside the window that you are supposed to run out of after the antlion guard becomes active, and they would be completely in your way, which would mean you'd get unfairly hit by both the zombies and the antlion guard.
  167. - Fixed a fence having a delayed break when getting hit by a missile
  168. - Fixed flashback cop being killable by the player
  169. - Fixed GDM physics in flashback scene
  170. I spent way too long trying to figure out why the GDM wouldn't come out of its grave. To me, it completely looked like it should've been working; motion was enabled, it was attached to a func_brush which was parented to the thing that the GDM is supposed to move with, the constraint that attaches the GDM and func_brush is unbreakable. And after a much-needed stroke of luck after the tenth try fixing it, I noticed the map itself disabled the GDM's motion for whatever reason. It instantly worked once I disabled the trigger that did that.
  171. - Recompiled with HDR
  173. fm_map9
  175. - Added nodraw to unseen areas
  176. - Added stunstick to startup loadout
  177. - Added more autosaves
  178. - Converted crystals in other world into func_details
  179. These crystals being part of the world caused TONS of visleaves to generate around them when recompiling the map, causing the game to massively slow down when around them. FYI, the game doesn't take func_details into consideration when generating visleaves, and because the crystals are so small, there is practically no reason to have them be prioritized with visleaves.
  180. - Fixed some fence props blocking light
  181. - Added areaportals to the elevator
  182. I did this (as well as the hint placement below) at a time where I couldn't figure out why the game was acting so slow in this map after recompiling (besides the crystal part) and I assumed VVIS wasn't working properly or something. Turns out, this map for some reason is super complicated when it came to visleaves. I THOUGHT normal VVIS wasn't working and that only fast VVIS was, but as it turns out, it was just taking a LONG FRICKEN TIME. It takes '3' hours for normal VVIS to generate good visleaves for this map, whereas EVERY OTHER MAP LITERALLY TAKES JUST A FEW MINUTES. I basically had to just compile the map with fast VVIS so I could test the map and just deal with the slow framerate it gave, and once I felt the map was finally done, then compile the map with normal VVIS and leave my PC on overnight. I had to overnight compile the map I believe 2 times. It was only twice because I thought it was done, then I noticed more stuff to fix/change.
  183. - Fixed elevator lighting & shadows
  184. Why oh why, this elevator shaft was so annoying to fix. I knew why the shadows were acting up, and I thought, well let's just parent a dynamic light to the elevator so that the shadows don't be stupid, but doing that ONLY lit up the elevator itself, and not the shaft, meaning you were ascending up a pitch-black chasm while your elevator shines like the sun. Turning off shadows and receiving shadows for the elevator did absolutely nothing. I trial-and-errored for a very long time. I decided to look at how Eli's Lab's elevator was lit up correctly and saw that it mostly relied on lights attached to the shaft itself, so I cut out the shaft a bit and added lights up and down the shaft and that finally fixed my problems.
  185. - Added lights outside the elevator exit
  186. It was very dark outside the elevator so I thought why not.
  187. - Added hints in the sky and some corners
  188. - Removed three broken overlays
  189. - Converted some architecture into func_details
  190. - Fixed the combine knocking over their turrets
  191. This might've just been MMod's crazy AI making the combine be reckless, but idk.
  192. - Fixed some areaportal errors
  193. If you went inside some of the areaportals in the main building in the small town, everything except what's inside the areaportal brush would vanish from view.
  194. - Fixed some doors clipping through props
  195. - Added slight buildup to the final GDM event
  196. Stuff I thought would make the event cooler. "Storming the town with antlions/as a one-man army, but some rumble happens and THAT is what causes the alarms to go off? What could be worse that I?"
  197. - Fixed some fences blocking bullets
  198. - Reduced amount of combine soldiers near the bridge
  199. I changed the combine at the end of the bridge to fire at the GDM, and with so many over there, they would look so crammed and sometimes accidentally shoot each other, so I reduced the amount.
  200. - Fixed being able to skip the GDM trigger
  201. - Made the GDM more noticeable
  202. I added a red light to it.
  203. * Fixed the GDM sometimes getting stuck on props
  204. - Made the GDM's music louder
  205. Basically I just copied and pasted the ambient_generic which played the music so that there was two of them. Sadly even though you tell the map to play both at once, sometimes one plays very slightly later than the other and you can easily notice it.
  206. - Combine now ignore the player and focus on the GDM when it appears
  207. I just thought it'd be a better use of their time to fight the super strong demon rather than the human player.
  208. - Added a locked door to the balcony of a house
  209. This balcony had absolutely no convenient way to get to it. It appeared as though you had to climb over the railings to get to it. So I made it sensical and added a door to get to it.
  210. - Added playerclip in the river
  211. So that you don't swim away and see some nodraw
  212. - Recompiled with HDR
  214. fm_map10
  216. * Split map into two levels (fm_map10a & fm_map10b) to avoid the "ED_Alloc: no free edicts" crash
  217. I'm sure someone is going to come along and say "oh, ya you can do what you did, but that was the absolute hardest way to fix it. You COULD'VE done it 'this' way." It was indeed a large pain splitting these two maps, but I could not find anything telling me how to fix this map other than to reduce the amount of stuff in it, and I wasn't about to start trimming the map, especially since I know nothing about mapping architecture.
  218. - Removed tie between the props floating in the water and point_template entity & deleted point_template
  219. I mean to me, it looked completely unnecessary, but I could be wrong.
  220. - Grouped sections of the map closer together in the void
  221. Just for convenience when noclipping to other areas for testing. Though this did cause me unforeseen consequences at first, with invisible origins accidentally being left behind and causing leaks which took me quite a while to figure out about.
  222. - Fixed water errors in spawn room
  223. The water brush just wasn't stretched all the way to the wall and thus when you went underwater, you'd see the sky on the side of the water brush that isn't touching the wall.
  224. - Added nodraw to unseen areas
  225. - Added stunstick to startup loadout
  226. - Fixed startup loadout's crowbar appearing in mid-air if transitioning into the level
  227. - Added more autosaves
  228. - Fixed combine being able to walk on water
  229. If I remember correctly, retail HL2 didn't have this problem so idk what changed. But messing with some stuff and making it work a slightly different way did the trick.
  230. - Added playerclip on some hills in the other world
  231. - After the other world monsters appear, fighting can be heard throughout the area (ambiance)
  232. Something I thought would help the player feel like they are part of the world, not the world itself.
  233. * Fixed stone steps getting stuck on props when lowering into the ground
  234. - Added some areaportals in the corridors
  235. Same as last level, recompiling part 2 of this level and loading it would present me with bad framerate and I couldn't figure out why. But, I figured out that it was the combine being immediately active when the level loads in the corridors the whole time, and because of that...
  236. - Combine in the corridors are no longer immediately active upon loading the map
  237. - Changed a nodraw solid into a playerclip solid
  238. - Changed some architecture into func_details
  239. - Added playerclip to the elevator shaft
  240. - Added an occluder behind one portal
  241. Probably wasn't needed, all it hides is a GDM model. Just added it for practice I suppose.
  242. - The GDM's music loops until it is defeated
  243. I did this by embedding start and end cues in the song file
  244. - Fixed the GDM's body sometimes dissolving without it actually dying (both in the corridors and in the boss room)
  245. - Combine now recognize the GDM as a threat (will still prioritize you if you are closer)
  246. - You now spawn with some health and armor when teleporting into the boss room (if you aren't full on both)
  247. This is kinda needed since the GDM is actually kinda difficult now.
  248. - Added a logic_auto which plays the GDM music if loading into the fight via a save
  249. This was quite the logic puzzle to solve. The logic_auto entity was not nice to me, all I needed was a way to make it so that the logic_auto entity only plays under specific circumstances, but there was no way to do so, so I had to figure out a slightly complicated way to do it involving a trigger_multiple and very rapid enabling and disabling.
  250. - Fixed the GDM's boss fight difficulty
  251. It wasn't hard for your luck to be perfect enough that your first AR2 ball towards the GDM immediately kills it, so now it actually has health that you need to deplete.
  252. - Added some extra noises to the GDM fight
  253. Like moaning, roars, and thumps.
  254. - Added AR2 alt-fire ammo crates to the GDM boss room
  255. This is pretty needed now, seeing as how the GDM can now take a punch.
  256. - Added a "stinger-like/hit" song that plays once the GDM is defeated
  257. It didn't feel right to just immediately cut out the GDM music after the GDM dies.
  258. - Added some destruction and dead bodies scattered around the teleporter hub after defeating the GDM
  259. Again, more stuff to make the player feel like they are of the world, not the world itself.
  260. - Fixed cube being off to the side when placing it into it's holder
  261. Must've been a modern HL2 build bug, seeing as idk how this bug would've gone past the creator.
  262. - Changed credits to appear sooner after teleporting
  263. - Added me in credit text
  264. :)
  265. - After credits are done, map transitions to a special background map
RAW Paste Data