Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by sn0wsh00

  1. Ok, so I probably figured out the whole "use only" thing with regards to game_player_equip. It turns out what Nymphalow probably meant to say was: For "equip_player", make sure that "Use Only" and "Only Strip Weapon Type" are checked In the trigger_multiple output, the "Via this input" field should be "Use" instead of "TriggerForActivatedPlayer." Given that "Use" is by default a non-FGD input, "Use" will appear red. I'll update the guide to incorporate this new way to randomize weapons once I get close to finishing my aim_six_arenas spinoff. Shoutout to @Kokopelli's Snowball Fight - Country House map for showing how to correctly do this.
  2. A few months ago, I wrote a guide on how to vary CS:GO maps round-to-round using logic_case and logic_eventlistener entities. Would be nice to hear some feedback from you guys regarding my guide's accuracy, as well as any additions I should add: How to Randomize Your Map Round-to-Round in Hammer I owe of lot of the guide's contents to Reddit user Nymphalow and Valve's developer wiki. I do have some questions regarding some game_player_equip flags, however. Specifically, if you scroll down to the "Starting Weapons" section, you'll see that, for the game_player_equip entity named "equip_players," I say that you should only enable the "Only Strip Same Weapon Type" flag. In Nymphalow's original post, on the other hand, Nymphalow says that the "equip_players" game_player_equip entity only enable the "Use Only" flag. In my experience, though, having only "Use Only" checked caused a crapton of weapons to spawn, while having only the "Only Strip Same Weapon Type" flag checked caused the trigger_multiple entity to correctly spawn only 1 weapon. Hopefully, someone knowledgeable can help clear up this issue. I think I figured out how to use "Use Only" with game_player_equip and trigger_multiple. See my post here. You probably won't be using many of these randomization techniques in a competitive map (heard people really disliked cs_havana for doing just that). However, I do think there's a bunch of potential for round-to-round variation in AIM, Coop and obstacle course maps, for those who want to give those maps more replayability. In fact (self-promotion ahead!), here are some maps I've created that uses some of the concepts explained in my guide: fy_five_infernos: group spawn randomization mg_space_race: obstacle course with randomized func_brush entities aim_six_arenas: weapon randomization
  3. I recently found a couple of GitHub tools that convert cubemap faces into equirectangular panoramas and vice versa: Panorama to Cubemap by jaxry Cubemap to Panorama by danilw I've been using the Panorama to Cubemap tool to port SpaceEngine skyboxes into CS:GO. To be more specific, I've been converting panoramic/cylindrical screenshots taken in SpaceEngine into the Valve skybox format. For the Cubemap to Panorama tool, I've been using it to apply CS:GO sky textures onto skydomes. To use the Panorama to Cubemap tool, upload your panoramic screenshot in a 2:1 format. After the tool processes your screenshot, download the cubemaps by clicking on the individual faces. Use the following conversion to rename the cubemap faces: nx -> bk ny -> dn nz -> lf px -> ft py -> up pz -> rt From there, import the renamed skyboxes into VTFedit. To use the Cubemap to Panorama tool, upload each cubemap image into each respective slot (upload BK to Back, LF to left etc.) When it comes to rotation, make sure the Up face rotation is set to 90 degrees, while all the other faces are set to 0 degrees. After setting your resolution, you can now download your new panoramic skybox. If you want to specifically learn how to fit your panorama onto a skydome, read this tutorial I wrote here.
  4. Sure, it's been less than a week since I've released aim_six_arenas, but that doesn't mean I can't start working on the spinoff map. The conceit of this spinoff map is still the same as the original: each round starts as a series of 1v1 matches before allowing all the surviving players to fight each other. The difference here is that, instead fighting it out in movie sets and hallways, the players now fight in separate arenas, with the surviving players teleporting to a seventh arena. From a gameplay perspective, this means no more searching up and down a corridor looking for enemies, something players generally dislike. From the design perspective, this means I can add a lot more details to the arenas, which can be seen below: Aztec/Ancient arena (original arena for comparison) Subzero/Monastery arena (original arena for comparison) Swamp/Sugar Mill arena (original arena for comparison) You'll notice that the skies in the screenshots are different, thanks to my use of skydomes. I wrote a tutorial on how I made these skydomes here.
  5. I've been working on a spinoff of my aim_six_arenas map that will use a couple of skydomes to create the illusion of multiple skyboxes on a single map, and I thought I could share my workflow on how I was able to create a multi-skin skydome without using programs such as Blender or 3DS Max. Specifically, I was able to port a couple of Valve skybox cubemaps onto a skydome model. To do this, Decompile a skydome model using Crowbar. For me, I recommend decompiling nuke_skydome_001.mdl, located in CS:GO's vpk files. Open the .smd file with notepad, which, for nuke_skydome_001.mdl is nuke_skydome_001.smd Inside nuke_skydome_001.smd, replace all instances of nuke_skydome_001 with the name of your primary skydome material. Open the QC file with Notepad and edit the $modelname and $cdmaterials to whatever folder you want. Add a $texturegroup skinfamilies section and add entries for the materials you'll be adding to the skyname (which, in my case, were skydome_cs_tibet and skydome_jungle). As a precaution, I renamed the QC file itself. In turn, my QC file ended up looking like this: Afterwards, use Crowbar to compile the QC file. Now that you have the model compiled, it's time to modify the texture so that it'll fit on the skydome. The only textures that'll fit the nuke_skydome_001.mdl mesh are those in the equirectangular panorama format with a 4:1 aspect ratio, an obvious problem given that Valve's skybox textures are in cubemap format. To do this conversion, Export the skybox cubemap VTFs as PNGs or TGA files Go to this Cubemap to Panorama tool, created by danilw Upload each cubemap to the respective face (BK to Back, LF to left etc.). Under rotation, make sure Up's rotation is set to 90 degrees and that "apply Mipmap" is checked. Set the panorama image resolution to a 3:1 aspect ratio. This is because the down face takes up a quarter of the image vertically. For my skydome, I set my resolution to 4096 x 1366, because I wanted to use a 4096x1024 texture for the skydome. Overall, this is how I filled out the Cubemap to panorama tool: And this is how the PNG I downloaded looked like (image has been resized): After downloading the PNG, crop out the bottom quarter of the image. Your panorama should now look something like this (image has been resized): Using VTFedit, import the cropped panorama in the DXT1 format. In the corresponding VMT, add the following lines of codes: Do the same cubemap to panorama conversion process for any other skybox skins you want to add to the skydome. Now that you've compiled the model and added textures, add you custom skydome as a prop_static. In the properties, make sure Disable Shadowdepth, Disable Vertex lighting and Disable Self-Shadowing are set to No, while Disable Shadows is set to Yes. Note that the default dimensions of the skydome is 4096x4096, which will cover the whole map if you place it in the 3D skybox. I've found setting a scale override of 0.25 still produced a decent looking skydome. For cs_tibet and jungle, you'll notice that the sun is baked into the skybox. Therefore, if you want your map to be realistic, you'll have to rotate the skydome to match the light_environment sun angle (also make sure your pitch isn't too different from the original map and the current map). To do that, use the following formula: Skydome Yaw Rotation = Sun Angle of the Map Where the Skydome Texture Originated From + 90 - Current Map Sun Angle Let's say you added a cs_tibet skydome to de_vertigo and want to have the sun in the cs_tibet skydome match Vertigo's sun angle. Vertigo's sun angle is 0 54 0, while the sun angle for ar_monastary, the map that uses the cs_tibet sky texture, has a sun angle of 0 153 0. Therefore, the cs_tibet skydome will need to a yaw of 153 + 90 - 54 = 171 for the cs_tibet skydome to match Vertigo's sun angle. For jungle, the skydome will need a yaw of 315 + 90 - 54 = 351, as de_aztec has a sun angle of 0 315 0. And now some screenshots. Remember, both of these screenshots were taken on the same map: Hopefully, others can use this method to quickly convert other cubemap skyboxes into skydomes. I would also appreciate any feedback you have for this tutorial.
  6. As I said at the top, there will be several spinoff maps of aim_six_arenas. In fact, I've already released one that's compatible with Arms Race, Demolition and Deathmatch, AR_Six_Arenas: https://steamcommunity.com/sharedfiles/filedetails/?id=2353724972 https://gamebanana.com/maps/213959 This spinoff removes AIM_Six_Arenas' game_player_equip entity, due to that entity causing CS:GO to crash in Arms Race and Demolition modes. While this map was originally designed for those aforementioned modes, it is still playable in casual/competitive modes, where, instead of randomly preselected weapons, players use buyzones to get guns. In other words, if you ever wondered how 1v1 multi arena would play out with buyzones, this map is kind of for you. Other than that, this map identical to the original, hence no screenshots. For the first 20 seconds, the arena doors are locked, forcing players into 1v1 matchups. After 20 seconds (15 seconds after the end of freeze time), the doors will unlock, allowing players to use the hallway connecting the arenas to hunt down surviving enemies.
  7. Original Map (AIM_Six_Arenas) Downloads: Steam Workshop Gamebanana Spinoffs: Deathmatch/Demolition/Arms Race compatible version: Steam, Gamebanana, Mapcore Showdown Planet: Steam, Gamebanana, MapCore After several weeks of works, I would like to present to everyone my take on 1v1 multi arena: AIM_Six_Arenas. The map features six 1v1 arenas connected by a hallway. For the first 20 seconds of each round, though, arena doors are locked, forcing players into 1v1 matchups. After 20 seconds, the doors to each arena will unlock, allowing players to use the connecting hallway to hunt down other players. You can and should use the radar to determine where remaining enemies are located. As there is only one door into each arena, I gave players the ability to teleport directly into an arena, potentially bypassing anyone camping at the door. However, there is a two second delay before you can teleport, so you can't simply use the teleporter to cheaply run away from enemies in the hallway. Also, to reduce the amount of searching after the doors are unlocked, there are indicators in the hallway showing which arenas are currently occupied. This map also has random sets of weapons each round. The matchups are: USP-S vs. Glocks Five-Seven vs. Tec-9 Mag-7 vs. Sawed-off MP9 vs Mac-10 Famas vs. Galil M4 vs. AK47 AUG vs. SG 553 Credits: TopHatWaffle's Real World Textures: https://www.tophattwaffle.com/downloads/real-world-textures/ TopHatWaffle's Real World Textures 2: https://www.tophattwaffle.com/downloads/realworldtextures-2/ TopHatwaffle's Water Source: https://www.tophattwaffle.com/downloads/water-source-textures/ In addition to Valve's main maps, this map also uses models and textures from cs_agency, de_breach, de_swamp and de_subzero I also plan on releasing several spinoff maps based off of this map, with individual maps based on the arenas, as well as a more traditional 1v1 multi arena map compatible with the 1v1 plugin. And now screenshots of the six arenas, as well the connecting hallway:
  8. The map will have a radar, so that should make it easier to infer where friends and enemies will be coming from. Also, for one of the spinoff, I plan on having all surviving players teleport to a seventh arena, with Ts and CTs teleporting to distinct sides. Nevertheless, taking your advice, I decided to overhaul the hallway on the original map so that it feels less hallway-ish. First, I widened the hallway to make it more like an atrium. I also transformed the corridor so that it'll look like three distinct sectors, with the two end sectors connecting to three arenas each. With this, I hope to visually nudge players into checking the two adjacent arenas first before moving across the map to check the other three arenas, hopefully reducing the amount of back and forth running. Here's a comparison GIF of the changes (I did not record the coordinates for the original screenshot, so this comparison won't be perfect): And here's another screenshot of the revamped connecting area:
  9. Added some more details to the AIM map I was working on: Italy/Inferno/Canals (more roofs): Aztec/Ancient (more foliage): Subzero/Monastery (more background stuff): Cache (more foliage): Also, I recently discovered that the game_player_equip entity kind of screws up CS:GO if you're trying to play deathmatch, arms race or demolition modes. In fact, if your game_player_equip is forcibly equipping players and you try to play in arms race mode, the whole game will crash. This means, on top of the 7(!) spinoff maps already planned, I'll be releasing a deathmatch/arms race compatible version as well.
  10. I've been working on a AIM/AM map for CS:GO, with a twist. The game initially plays out as a collection of six 1v1 matchups. After 15 seconds, the doors to each arena will unlock, allowing players to walk to other arenas, or to fight it out in the hallway connecting the six arenas. There will also be random sets of weapons each round (AK vs. M4, Tec-9 vs. Five-Seven, Sawed Off vs. Mag-7 and so forth). Overall, I envision the map being like a collection of six movie sets, each themed after a CS:GO map. This is why you can see some skybox textures on walls, as they are meant to be something akin to LED screens. Here are how the arenas look like so far: Sugarmill/Swamp: Aztec/Ancient: Dust/Mirage: Cache (closely based on the official 1v1 Cache arena): Italy/Inferno/Canals: Subzero/Monastery: Hallway that connects the arenas: You'll notice some red buttons in the hallway screenshot. Pressing those red buttons will teleport players into the arena, after a two second delay. I added these buttons because there is only one entrance into each arena, which I think would make it really easy for someone to camp inside an arena. In turn, allowing players to potentially teleport behind a camper would be a good way to balance things out. Also, requiring players to stand still for a couple seconds before teleporting prevents players from cheaply teleporting away in a hallway fight. Finally, I plan on creating a spinoff version without the connecting hallway. Instead, the map will teleport surviving players to a 7th arena after some time. I also plan on creating separate 1v1 maps for each of the arena.
  11. I was poking around with a decompiled version of de_subzero when I stumbled on this func_button entity that I thought was kind of amusing. It's located on the snowmobile near bombsite B: (For Google purposes, the sound names are 69420alldayeverydayBigBallerBrand1 and 69420alldayeverydayBigBallerBrand2) Just something I thought I could share in light of LiAngelo Ball getting waived today.
  12. Just uploaded my map fy_orbiter onto the workshop. You can download it here: https://steamcommunity.com/sharedfiles/filedetails/?id=2296600013 It's an otherwise very simple fight yard map, but I thought I did a fine job with the garden area: I also like these video screens, which I made using VMT proxies and SpaceEngine (TV frame is from de_breach): And finally, here's (part of) the skybox I used for this map that I exported from SpaceEngine, used on a different map: If you want to export a good looking skybox from SpaceEngine without a Pro Version: Set SpaceEngine's resolution to a 2:1 aspect ratio (for this map, I set the resolution to 4000x2000) Set the projection to cylindrical Take a screenshot in PNG format Use a panorama to cubemap converter, such as this one, to convert the PNG screenshot into six separate cubemap files Rename the cubemap sides to their proper names. If you used the Panorama to Cubemap tool I linked to, the renaming should be: nx -> bk ny -> dn nz -> lf px -> ft py -> up pz -> rt
  13. Great map! Really like the house design and your use of custom(?) hostage radio lines. If there is one thing I can nitpick, I think that when a CT reaches a hostage rescue zone, the map should send out a text alert indicating that the CTs have reached a hostage rescue zone in addition to the radio lines (I used something similar for a hostage escort map I released a few months back). I feel like an action such as triggering the rescue helicopter should deserve the same server-wide text alert such as planting a bomb or picking up a hostage, instead of just a radio message that can be easily missed compared to a text alert.
  14. The second MG_Space_race spinoff has been released! This is the hostage rescue version of the map (cs_star_dust) Steam Workshop Gamebanana Story: Terrorists opposing a renovation project have seized a sector of an interstellar space station. Making matters worse, they've also seized a teleportation lab, forcing the CTs the evacuate. With the sector lost to the terrorists, the CTs now have to escort the project's manager out to safety. Features: 2 hostage rescue zones A secret black hole and a secret hotel room (or is it a human zoo?) This map is a modification of the hostage rescue gamemode. The hostage spawns at CT spawn instead of T spawn. The CT's have to carry the hostage to 1 of 2 rescue zones. The rescue zones, however, are blocked by a door at the start of the round. To unlock the doors, the CTs have to reach an area near the rescue zones (see map below). When a CT reaches a blue area, a 25 second countdown commences. After 25 seconds, the door in the blue area will open, allowing players to walk into the rescue zone. It's similar to the defuse mode, but with the sides reversed. Here are some other screenshots from the map:
  15. I've been working on my second MG_Space_Race spinoff map over the past couple weeks. This spinoff map will be a hostage escort map, as opposed to a hostage rescue map. You can read more about what I mean by hostage escort here, but in short, it involves CTs escorting a hostage from CT spawn to rescue zones near T spawns. This map will also have a secret area. More specifically, a secret hotel room (or is it a human zoo?). Here's a screenshot of this room below, whose design was heavily influenced by a certain Stanley Kubrick film: In totally unrelated news, I also recently learned that you can animate VTFs, and that you can combine animated VTFs with other proxies (in this case, TextureScroll proxies). Here's a GIF showing an animated texture I made: The G-Man animation was made by me in Source Filmmaker. The G-Man model is from Half-Life: Alyx
  16. The first MG_Space_Race spinoff map has been released! This is the CSDE hostage & bomb version of the map (csde_star_dust): Steam Workshop Gamebanana Story: Terrorists opposed to a renovation project have seized a sector of an interstellar space station, taking the project's manager hostage in the process. Making matters worse, they now threaten to destroy the construction sites with a non-defusable bomb. Using a top secret portal, counter-terrorists have tunneled into the sector... Features: 2 bombsites and 1 hostage Skybox that varies round-to-round A portal/wormhole that can be traversable if you shoot it enough times A secret area The map's layout is based off of the final arena of MG_Space_Race. It's also heavily influenced by Dust 2, and is set in space, hence the name Star Dust. Credits can be found in the links provided. And now some screenshots: And here's how the wormhole looks like, with gravitational lensing! The lensing effect only works if you look at the wormhole at a certain angle, but hey, it's not everyday you see something resembling relativistic physics in CS:GO. I made this wormhole using Blender. I made a sphere and torus brush (and kept the polycount in the hundreds so that Hammer won't take forever to compile), smoothed the shading, assigned the meshes to a cubemap texture and compiled the models. Then in Hammer, I set the lighting origin in the prop_static entities to info_lighting entities at each wormhole's respective destinations.
  17. I've finally managed to make spherical wormholes, with gravitational lensing, for my mg_space_race spinoff maps using prop_static entities. I simply made a sphere brush and a torus brush in Blender (and kept the polycount in the hundreds so that Hammer won't take forever to compile), smoothed the shading, assigned the meshes to a cubemap texture and compiled the models. Then in Hammer, I set the lighting origin in the prop_static entities to info_lighting entities at each wormhole's respective destinations. Here's how the wormhole looks like leading from the main level into the portal lab: And here's how it looks like going from the lab to the main level:
  18. I decided give my mg_space_race spinoff maps a backstory: Terrorists opposing a renovation project have seized a sector of an interstellar space station, killing the project's manager (bomb defuse version) or taking him hostage (CSDE hybrid version). Making matters worse, they now threaten to bomb the construction sites. Using a top secret portal, counter-terrorists have tunneled into the sector with the intent of stopping the terrorists. (for the hostage escort version, the terrorists are the ones who have portaled into the sector, after seizing the portal laboratory. Seeing the sector as a lost cause, the CTs have to escort the project manager to safety). Here's what I've come up with for the portal lab: And here's how the portal looks like from CT spawn (I used env_cubemap's brush face entry to tie the cubemap to this texture): It's possible to enter the lab in a middle of the game, but be wary of the fact that there are sensors in the lab. I originally tried linking the env_cubemap to a dome displacement with the intent on making the portal look like a wormhole. Unfortunately, the game kept crashing after I built cubemaps, so I had to use a flat brush instead.
  19. sn0wsh00

    [CS:GO] Coverup

    Great trailer. Map also looks really good.
  20. Map's looking good so far. Also looks like a great map for deathmatch or arms race.
  21. Made some updates to my mg_space_race spinoff maps. For the tunnels, I added more details to the columns (taken from de_season) and turned it into a commons area. For the vertical farm, I added some more details to the ceiling, giving it an exposed truss/rafter look, and changed the light color as well. PSA: if you're looking for an easy way to design your HVAC system, use de_nuke's airduct models. They're very conveniently sized and modular.
  22. I'm currently working on three spinoff maps based on the final arena of my minigame/obstacle course map that I released a few weeks back. Keeping with the spirit of the original map, I'm planning on keeping most of white concrete floor with brick wall aesthetics for the existing locations. New locations, though, will be more detailed. The first map will be a defuse map. As this map (and the original arena) is based closely on Dust2, I don't think I need to talk about that map much, other than the fact that there'll be a secret area. The second map will be a hybrid CSDE hostage rescue/defusal map. Using Dust2 callouts as a reference, the hostage is located around T Plat while the hostage rescue will be located around A Plat (the bomb site locations remain the same). CTs have a major advantage in hybrid maps, given that not only can they win if they rescue a hostage, regardless if the bomb has already been planted, they can also win if the time runs out. I think I can balance things out by removing the ability to defuse bombs, while setting the bomb time to 60 seconds to give CTs time to rescue the hostage. Unfortunately, it's hard to test this out with bots, as bots have no idea how to handle hybrid maps. The third map will be a hostage rescue map, or more specifically, a hostage escort map. CT and T spawn positions will be flipped. The hostage will once again spawn around T Plat (which is now near CT spawn), while the hostage rescue sites will be located around Back Plat and Goose. The rescue zones will be blocked by doors at the start of the round. These doors will open 20 seconds after CTs reach an area near the rescue zone (B Plat, A Plat or Ramp). Based on a test map I've made, I think bots can actually play this type of hostage map, as long as you place the trigger directly in front of the doors. The hostage carrier will try to walk through the door while its closed, but once the door is opened, the bot will walk in like in any other hostage rescue map. And now some screenshots: Bombsite B. I'm going for a Dust-inspired-office-courtyard-under-construction theme here: Tunnels: Server room (similar to CAT). Server models taken from de_breach: Vertical farm. I was trying to use something like this as a reference, but lights don't seem to work particularly well on small shelves.
  23. Yay! It's so nice to see some people work on new hostage maps. Like the concept as well. I think it'll also be nice if you can use @ZooL's South African Police models for CT's, tweaked obviously so that they can fit in with the Sierra Leonean theme.
  24. I actually did something similar for a minigame/obstacle course map I just released. On that map, doors will open to a rescue zone 43 seconds after CTs reach the hostage. To do this, I: Created a trigger_multiple brush entity, a func_door brush entity and a filter_activator_team point entity, and named the three entities hostage_reach, hostage_res_door and ct_filter respectively For ct_filter (the filter_activator_team entity), I set the "Filter Team Number" to Counter-Terrorist For hostage_reach (the trigger_multiple entity), I set "Delay Before Reset" to -1, Filter Name to ct_filter and made sure only the "Clients" and "Correctly account for..." flags were checked Under the output tab of hostage_reach, I created an output. "My output named" was set to OnTrigger. "Targets entities name" was set to hostage_res_door (the func_door entity). "Via this input" was set to Open, while the delay was, in my case, set to 43 seconds Under the flags tab of hostage_res_door, I made sure none of the flags were checked
  25. I've released an eight chamber version of this map, where you play through all the chambers in a single round, as opposed to the original where you only played through only 4 of the 8 chambers. I recommend this version for speedrunners. You can download this map from the following links: Steam Workshop Gamebanana
  • Create New...