Garry's Mod

Garry's Mod

30 betyg
[COMPLETE GUIDE] Packing & Publishing Your Maps!
Av Mr.ROFLMAN
This is a complete guide to getting your level from an error filled mess, to an actual map that everyone can enjoy!

This guide will show you how to install and configure Compile Pal correctly so that players can see the custom content in your level

This guide will also show how to publish your level to the workshop with GM Publisher, along with some Steam Workshop tIps & tricks

UPDATED with the inclusion of Counter-Strike: Source and Half-Life 2 Episode content update!

Download Links (Links also show up throughout the guide)

⚠️Check the Frequently Asked Questions at the bottom of the guide before commenting about a problem!⚠️
3
2
2
2
2
2
   
Utmärkelse
Favorit
Favoritmarkerad
Avfavoritmarkerad
📺Packing Video Tutorial
🔨Installing Compile Pal

We’ll need to download Compile Pal, but honestly it’s more like Packing Pal, as we’re never using it to compile a map with it.

Start by Downloading Compile Pal [github.com] and extract it to a folder that you are sure you won’t delete, and not in your Garry’s Mod or Downloads folder. in my instance I have it in my Maps/Tools folder, separate from steam and windows default folders.


My maps folder has a tools folder, and in there is my Compile Pal folder

Now, and this is crucial, we need to open the vanilla hammer editor that came with Garry’s Mod, not Hammer++. Go and right-click Garry’s Mod in your steam library, manage, browse local files. Open the bin folder and locate the hammer application, it should be the one with the hammer icon. Once it fully opens, you can close it.


The original hammer editor located in the Garry's Mod bin folder

Now download Source SDK 2013 Base Multiplayer from Steam as Compile Pal needs to target something from this game specifically.


Source SDK Base 2013 Multiplayer in my Steam Library
🛠️Configuring Compile Pal

We now want to open Compile Pal, it should be located in the folder that you extracted it to. (that isn’t your Garry’s Mod or downloads folder) Once it’s opened you should hopefully be greeted with a Garry’s Mod preset that is directed to your Garry’s Mod, if you see nothing in there than we need to create it manually.


My Compile Pal found my Garry's Mod because I ran the original Hammer Editor first

*Click on the hamburger on the top left if you don't see the game selector screen immediately

⚠️IMPORTANT⚠️
If you do see Garry’s Mod, and it does direct to your Garry’s Mod directory, you still need to edit the BSPZip directory inside the game selector, there should be three dots on the right of the selection, click edit and scroll all the way to the bottom and modify BSPZip at the chapter: Configuration: BSPZIP Directory.
⤷ Configuration: Manually
Click the + sign on the top right corner for the game selector screen, here the game configuration program window opens up and we need to fill some of these lines
  • For the name, call it Garry’s Mod
  • Next, give it an app ID of 4000

Now we will need to start setting directories, if you don’t know where your Garry’s Mod directory is located, right-click the game in your steam library, manage, browse local files. On the top of your file explorer you should be able to right your top directory and copy as text


How to find Garry's Mod's local files though the Steam Library

  • For the game folder it would be <Your Directory> GarrysMod\garrysmod
  • Bin will be <Your Directory> GarrysMod\Bin
  • VBSPInfo will be <Your Directory> GarrysMod\bin\vbspinfo.exe
  • VPK will be <Your Directory> GarrysMod\bin\vpk.exe
  • Your map folder will be your Garry’s Mod’s map directory, which will be <Your Directory> GarrysMod\garrysmod\maps


What the end result looks like with all the lines above filled in (CLICK TO FULLSCREEN)
⤷ Configuration: BSPZIP Directory⚠️ ‎ ‎ ‎ ‎ ‎ ‎ ❗IMPORTANT❗
This is where the people who have had Garry’s Mod show up automatically should be at right now, we’re almost done with the manual creation.

We need to target BSPZip inside of Source SDK 2013 Multiplayer, right-click the game in your steam library; manage, browse local files. Navigate to the bin folder, on the top of your file explorer you should be able to right-click your top directory and copy as text


How to find Source SDK Base 2013 Multiplayer's local files though the Steam Library

Your BSPZip will be Source SDK Base 2013 Multiplayer\bin\bspzip.exe

There is probably a lot of empty spaces for those who did it manually, don’t worry as we don’t need them, as those spaces are meant for compiling maps with Compile Pal. Since that is beyond the scope of this tutorial, we’re going to ignore them.
⤷ Configuration: PACK Preset
We now need create the configuration that we will be using to pack all the custom content for our maps from here on out.


  1. Presets
  2. Processes
  3. Parameters
  4. Map File


At the preset column, click the plus symbol and give it a name that signifies this is a packing preset, I will just call it PACK in capital letters.


Naming the preset PACK (CLICK TO FULLSCREEN)

The next column is the processes from top to bottom that the software will execute in order, make sure the preset we just created is highlighted in red and click the plus symbol for processes and add PACK, we also want to add BSPZip as a process so add that as well.


Highlighting the PACK parameter (CLICK TO FULLSCREEN)

*Make sure to check the incompatible drop down if you can't find it

Next make sure the PACK process is selected and now click on the plus symbol for parameters, click on Exclude VPK files, as this will stop native Half-Life 2 assets from packing into your map.


Highlighting the Exclude VPK parameters (CLICK TO FULLSCREEN)

We’re going to add 5 of these, so keep clicking the plus symbol for processes until we have 5 of them in the list.


Five Exclude VPK parameters in the list

The first is going to be the Garry’s Mod directory vpk, this is located at
  • GarrysMod\garrysmod\garrysmod_dir.vpk


garrysmod_dir.vpk location

Next is going to be a bunch of source engine VPK’s, they are as followed
  • GarrysMod\sourceengine\hl2_misc_dir.vpk
  • GarrysMod\sourceengine\hl2_sound_misc_dir.vpk
  • GarrysMod\sourceengine\hl2_sound_vo_english_dir.vpk
  • GarrysMod\sourceengine\hl2_textures_dir.vpk

If you want to exclude Team Fortress 2 or any other game from packing into your map, add another Exclude VPK and include Team Fortress 2\tf\tf2_textures_dir.vpk (obviously apply this logic to other games that you want to exclude)


All the parameters filled in

Note that this also works for any other games you don’t want to pack into your map, like Team Fortress 2 for instance. Just make sure you’re targeting the VPK that ends in _dir, and not any of the other VPK files


Don't include VPK files that aren't ending in _dir!

If you have custom soundscapes in your map, you need to include the soundscape file into the level, add a include parameter and target it to your soundscape file. For my Verruckt map it would be the following
GarrysMod\garrysmod\scripts\soundscapes_gm_verruckt_v1.txt


Highlighting the Include parameter (CLICK TO FULLSCREEN)

Particles should be packed in automatically if they are in your maps folder inside your Garry’s Mod. If for whatever reason it doesn’t find the file, you can manually include it the same way we included the soundscape file.

We want to end it off with a verbose parameter, this just gives you a list of everything that got packed into your level, this is good for troubleshooting content that somehow got missed in the packing process.


Highlighting the Verbose parameter (CLICK TO FULLSCREEN)
⤷ Configuration: BSPZIP Preset
Click on BSPZIP in processes, then click the plus for the parameters and make sure you click on the incompatible drop down list, don’t worry it’s compatible. Add Repack first, then add Compress after.

If an exclamation mark shows up, ignore it as it will work regardless since we directed it to our Source SDK Base 2013 version when we setup the game configuration.


BSPZip with both processes
🔍Compile Pal: Finding Custom Content

Compile Pal is using Garry’s Mod, so if your custom content is inside your Garry’s Mod, It should find it automatically. But since crazy people would do such a practice, and your content is outside of your Garry’s Mod. I will show you a method on how to mount your content correctly using gameinfo.txt

Open up said gameinfo.txt file inside your Garrysmod/garrysmod folder, and near the bottom add something similar to this line

game+mod "D:\Maps\Source Engine Assets\*”
MY DIRECTORY

Make sure to replace the directory to where your custom content folder is located, and add the * AFTER the last slash

If you haven’t made a custom content folder before, you can make one anywhere on your PC, just make sure to direct the gameinfo.txt line to where your custom content is located


My directory example

If you have folders that don’t lead directly to the materials/models/sound/particle folders, you need to make a new line like the one we just made with the other directories

game+mod "D:\Maps\map_assets\*” game+mod "D:\Maps\map_assets\custom_content\*”
MY FULL LIST

For example, my custom_content folder has more folders inside of it, and inside of those folders lies the material/models/sounds/particle folders that Compile Pal is searching for, so I needed to add another line that has a * after the custom_content folder


Folder strucutre example, the last folder NEEDS to lead to materials, models, sounds, ect...
⤷ Compile Pal: Finding Game Content
If you haven’t extracted a games assets before, this section will explain how to pack custom content from games like Left 4 Dead, CS:GO, TF2, and other games. If you already have extracted game content and you know that you have it placed with the rest of your custom content, then skip to the next chapter: Compile Pal: Packing Your Map

Download GCFScape [nemstools.github.io] so we can extract assets from games, so we can use them in our map

Go to the files for the game you want to pack content for, the same way we did when we were finding or VPK Files that we wanted to exclude. We are going to use Left 4 Dead 2 as an example, go into the directory Left 4 Dead 2/left4dead2 and drag the pak01_dir file into GCFScape's window.


Dragging Left 4 Dead 2's VPK file into GCF Scape

Make a new folder where your custom content is, name it to what game you’ve extracted and drag the materials/models/sounds/particles folder into the folder you just created

My Left 4 Dead 2 Content Folder

If you put it in the same directory as your custom content from the chapter previously, it should find the game just fine, here is an example of my content folder


My content folder, where my Left 4 Dead 2 Folder resides
🗺️Compile Pal: Packing Your Map

Now it’s time to finally pack the content into your map, open up Compile Pal, go into the Garry’s Mod game; select the PACK preset we made, and make sure the PACK process is the only thing check marked.

Add your map file on the top right, which should be a BSP file that hammer compiled in your Garry’s Mod/maps folder. If it’s not there then find where hammer placed your map file and move it in there.

I also hope to god you compiled it on FINAL before getting to this point

Now that the PACK process is the only thing that is check marked and that your map is now on the added map list on the top. We now want to compile the map on the bottom right, if it goes by faster than expected, don’t worry. I was surprised too when I saw how fast it packed my levels too.


My whole PACK setup for Compile Pal, right before I am about to Pack my map with content

At the end of the list you’ll see a total count on the types of content that got packed into your level, if you see numbers greater than 0, that’s a really good sign that the folders we made previously are working!


My compile log for my packed map
⤷ Making Sure If The Content Is Packed
If you are worried that the content isn’t packed in your level, you will need unmount your content in Garry’s Mod. If you’ve used just CS:GO assets, you can uncheck CS:GO at the bottom right of the Garry’s Mod main menu.


Disabling CS:GO in Garry's Mod so I can test for missing content

However, if you’re using the superior method of modifying your Garry’s Mod mount.cfg file in your Garry’s Mod CFG folder, then you will need to put two forward slashes behind every line that has custom content being mounted and save the file.

If you don’t know what a mount.cfg file is or how to use it, i’ll give you a quick rundown

The mount.cfg files just tells Garry’s Mod where your custom content is located, since all my content is located in the custom content folder in my maps folder, I have to direct all these lines towards every folder that resides inside there

Using Left 4 Dead 2 as an example once again, we are going to add a new line between these two brackets, next we are going to add two quotes and call it the same name as our folder name, since our folder is called l4d2, we will call it that also. After the quotes we need to make another set of quotes. Inside of these quotes, we need to paste a directory that targets the content we extracted from Left 4 Dead 2 earlier. Make sure to do this for every new folder you create inside your content folder


The two brackets to edit inside

Example of my Left 4 Dead line
"l4d2" "D:\Maps\Source Engine Assets\l4d2"


Pain.jpg

If you want to make the mount.cfg process faster, refer to the FAQ section on the Steam Guide down in the description
⤷ Cubemap Packing
We now just need go add the reflections on the map, you cannot generate the cube maps before packing the level because you’ll run the risk of having rainbow reflective props on your level. If you don’t want your map to look like rainbow ponies started barfing on your models, then do the following.

Go into the map AFTER IT’S BEEN PACKED with Compile Pal, and check if you have HDR enabled or disabled, you can quickly see this by opening up the Garry’s Mod console with the tilda key, underneath the escape key.

Where the tilda key is

If the console doesn’t show up, check your options under keyboard, advanced and make sure enable developer console is ticked.





Next, type in mat_hdr_level, if your number is set to 1 or 2, that means you have HDR enabled, if it’s 0 than HDR is disabled.


Notice how my HDR is on because the console auto fills it to 2?

Whatever you’re on currently keep note, as we need to generate the cubemaps for both the LDR Version (meaning value 0) and the HDR Version (meaning value 1 or 2).

Run the console command buildcubemaps and your screen should be flashing images on the top corner, this is a good thing, let it finish until you get back into the game. Once you do, run mat_hdr_level again except now set it to LDR or HDR, whatever you’re currently not using.


Now I am swapping to LDR, because I already ran the cubemap command once already with

So if you’re running mat_hdr_level 2, set it to 0, and vice versa. Once the game loads back up, run the buildcubemaps command once more, once that is done, your map should have reflections for both the LDR version and HDR version of your map.

If you can’t load into the other version of your map or it looks full bright, that means that when you compiled your level you didn’t tell the compiler to compile both lighting variations, in that case, you don’t need to pack the cube maps for the full bright variation.


Map is full bright because the LDR version was never compiled

But honestly you should of compiled both LDR and HDR versions of the level, as those who play on LDR exclusively are… special individuals…


Never be this person
⤷ Reducing The Map Size With BSPZip (OPTIONAL)
⚠️SOME MAPS HAVE ISSUES USING BSPZip, IF YOUR MAP HAS ISSUES THAN IGNORE THIS SECTION⚠️

Once you have everything packed and ready, go back into Compile Pal and return back to the PACK section we used before. Once you’re there, make sure your BSP map is still added on the top and it’s located in your Garry’s Mod maps folder, that is very important.

Next uncheckmark the PACK process and check mark the BSPZIP process. Run the compiler and be patient as it compress your map. Once it’s done, check your BSP file in your Garry’s Mod maps folder and there should a significantly smaller file size for the map.


How Compile Pal looks before I run BSPZip


Before and after map size comparison. Look how the size went down by over double!

Now you can send your map off to a server or the Steam Workshop.

If the BSPZip still doesn’t work, check to see if the Garry’s Mod maps folder that Compile Pal is looking for is setup correctly in the Game Configuration page that we were on earlier
═══════════════════════════
📺Publishing Video Tutorial
⚠️⚠️⚠️⚠️⚠️⚠️
COMING SOON!
⚠️⚠️⚠️⚠️⚠️⚠️
🌐Publishing Your Map

We need to create a workshop folder for our map, so start by making a folder where all the maps you will publish in the future will reside.

Next make a folder that is your map name, then make a folder inside of that called maps, then inside of THAT folder, make another folder called thumb.

This is how the tree of folders should look like, now place your FINAL COMPILED, PACKED, BSP map file in the maps folder. If you don’t know how to pack your map, the guide is right above this one.


Folder structure


Map placed in the correct location

Next we need to take some screenshots of our map, hop into a single player sandbox game, and turn your graphics up to max to get the prettiest pictures. Take out your camera and start taking pictures, once you’re done taking pictures of the map, you can find them your garrysmod/garrysmod/screenshots folder, we will need these pictures for later once we get the map on the Steam Workshop.
⤷ Thumbnail Creation
Once you’re done snapping those pictures, you now need a thumbnail that people will see when they open up their map selection menu in Garry’s Mod.

Make a .PNG file that is 128 wide and 128 high. You can use Photoshop, Affinity, [paint.net](http://paint.net), Gimp or any other photo editing software. Once you created your image, place it in the thumb folder inside of the addon folder we created and name the image the same name as the map.


Thumbnail for the map inside of the thumb folder, notice how it has the same name as the map?

Now we need to make a workshop thumbnail photo that people will see before they click on your addon, I will show both the still image method and the GIF method.

For still images, make a 512 wide by 512 high .JPG image, you can touch this image up with fancy text showcasing your map name if you like. Don’t save this file where your addon folder is located, instead save it somewhere where you can find it easier, such as your desktop or downloads folder.

For GIFs, you can use a service like Ezgif. Record a video and upload your video on the site, crop it to 512 wide by 512 high and make sure the file size for your GIF is under 1mb.

If you are having trouble getting it below 1mb after compressing it, you can try reducing to resolution to 256x256
⤷ Navmeshing
If you are making a GM/Sandbox map and plan for people to have npcs walking around, I would recommend quickly generating a navmesh.

Open up your map in sandbox and open the console with the tilda key under the escape key

Look at the ground and type nav_mark_walkable, do this for every place in the map that you can’t walk to, meaning any floating rooms you have though out the map. Next type nav_generate, and wait for that to finish, then save your navmesh with nav_save.

You can see if your navmesh is generated correctly by typing nav_edit 1 and flying thought the map to see if every area has those squares on the ground.


Live preview of the navmesh

Find your navmesh file in your garrysmod/garrysmod/maps folder and copy and paste it into your addons maps folder, all cozy beside your map.


Nav file placed in the correct location
⤷ GM Publisher

Download GM Publisher, [github.com]this will make creating and updating workshop addons a lot easier than doing it manually though the command line.

Once you install and open it, you will be greeted with a page of your uploaded addons, on the left you can see what addons you have installed; a downloader in case you want to download a addon from the Garry’s Mod workshop, and a Addon Size Analyzer so you can get a good idea on what is taking up a bunch of space on your drive.

Head to My Workshop and click Publish New, here is where we create our addon for the workshop, at this point we should have the following…


Hovering over the new addon option

Checklist
✅ Our addon folder with a maps folder inside of it
✅ Our map in the maps folder and the file itself has no capital letters
✅ A thumbnail that is a 128x128 .PNG file in the thumb folder
✅ Our workshop thumbnail image that is a 512x512 .JPG outside of the this folder structure all together
☐ Or a GIF that is 512x512 and is 1mb or less
☐ Optional nav mesh file
===================

You can also put other files in here if the map needs them, such a Lua folder, but most maps don’t need this, and I am not going to get into that for this guide.

Click the middle and select the addon folder we created, if you go inside it and see the maps folder you’ve gone too far, we should now see our files pop up in the middle.


The maps folder should show up in the middle, you can go inside that folder to make sure the other files are there also

Next click browse on the top left, and find the workshop thumbnail image/GIF that we created, it should show up on the top left once you select it.

Next we need to give it a title, call it your map name so you’re not misdirecting people.

Your type will be map, and your tags can be whatever you want.

Once you hit publish, give it a minute and then your web browser should pop up with your workshop addon on steam, if you’re not logged in to steam on your web browser you can go to your steam client. Hover over your name and click on content, from there click on the workshop items tab and then your new workshop addon.


My Verruckt example is the 6th option, but for you it would be the 1st option on the top left
⤷ Workshop Page
We can spice up our workshop page to make it look nicer and give some information, here is my workshop page for zs_hub_mall as an example. We got a brief description of what the map is, it’s features and areas, and people who contributed to the project. You can edit your description and title on the right side where the owner controls are

Now we can add images and videos to the showcase on the top, we could choose files manually, but that would take too much time. Instead navigate to your garrysmod/garrysmod/screenshots folder, ctrl + left click all the images that you took of your map, and drag and drop them over the black box titled no file chosen. You should see a list of image names pop up just underneath where you dropped the images. You will need to save and continue and come back to this page to reorder the screenshots you uploaded. If there is a video you want to upload, you can do so on the right side.


Dropping the image files over the gray box mentioned

Next we can add contributors the workshop addon you created if you have any, you have to be friends with them and they need to accept it manually.

Once all of that is done and you’re happy how the workshop page looks, you can now set it to public by changing the visibility on the right side.


Changing the visibility
⬆️Updating Your Map

Remember how I told you to keep your addon folder in a place where you wouldn't lose it, well now we need it again, go back into that folder and replace the .BSP file with your new one.

MAKE SURE that your map name is different from the one that is on the workshop. The reason being is that if a server owner put your map on their server, people that download this new map will get an error that their map differs from the server, meaning that players will have to scour downloads folder and delete your map.

I will show you an example on how I name my maps with the following…

Gamemode prefix (gm/zs/ttt/rp/ect…), followed by the map name itself, followed by major and minor version count.

For example, if I have v1a, my new map name would be v1b, then v1c, and so on. If there is a major update such as a complete overhaul that I've done for Verruckt, it will be v2, then v2a, and so on, you get the picture.

Version Name Examples:
Name
Version
gm_verruckt_v1
First Version
gm_verruckt_v1a
First Update
gm_verruckt_v1b
Second Update
gm_verruckt_v2
Major Update
gm_verruckt_v2a
First Update

Gamemode Prefix Name Examples:
Name
Gamemode
gm_construct
Sandbox
zs_verruckt
Zombie Survival
rp_downtown_v6b
DarkRP / Roleplay Gamemodes
ttt_richland_remix_v1a
Trouble In Terrorist Town
ph_office_v1a
Prop Hunt
cinema_theatron
Cinema
mu_hotel
Murder

Go into GM Publisher and click on your existing addon, on the left directory should be the same as the folder we created in the first place. If it is, you can add some text in the changelog to tell people what changed in this version if you so wish, then you click the update button on the bottom left.
═══════════════════════════
❓Frequently Asked Questions (FAQ)❓
📦Packing
Compile Pal Error: Cannot find file specified
Make sure map path is correct on the top. If that doesn't work, relaunch Compile Pal as it cannot find a newly created file until it’s relaunched

Compile Pal Error: Failed to run path
Some people reported it not working on a drive that isnt C:, if you have issues, then just try moving your compile pal folder to your C drive

Compile Pal Error: BSPZip errored while just packing
Make sure the BSPZip directory in the game configuration is targeting the BSPZip in the Source SDK 2013 Multiplayer Bin folder

Compile Pal Error: Cannot find any custom files
Make sure that the gameinfo.txt line inside of Garry's Mod is directing to the correct location where your custom content is. Also make sure that the * is at the end of the last slash ex: custom_content/*

BSPZip Error: Can't compress my map
Make sure map directory above is targeting the Garry's Mod maps folder along with your map that is inside said folder

If you changed the BSPZip directory location, make sure to relaunch Compile Pal

Map sounds are making my map lag
The Garry's Mod developers are aware of the issue, it's caused when the map is compressed with BSPZip. If your map is lagging with the map being compressed, then just upload it without the compression until the bug has been fixed.

Content isn't unmounting despite commenting out the lines in gameinfo.txt
Your custom content may be directly inside your Garry's Mod materials/models/sound folders instead of being in their own folders, you will need to make your own folders that has the material/models/sound folders inside and direct your gameinfo.txt lines to those folders instead. Also make sure to add the two // behind said lines to comment them out for testing.


Custom content folder example, notice how it leads directly to the materials/models/sound/particles folders?


My Left 4 Dead 2 Content Folder

If you're using the mount.cfg file from Garry's Mod or Source SDK 2013 Multiplayer, you'll need to add // behind all the custom content lines you have.

My example inside my mount.cfg file //"l4d2" "D:\Maps\Source Engine Assets\l4d2"

It's annoying constantly commenting out lines from my mount.cfg file
Instead of constantly doing this for every map you want to pack, we’re instead going to make a copy of a mount.cfg file that has no content inside it. Make a copy of the current mount.cfg file and rename it to mount_none.cfg, open it up and remove everything between the two brackets.


Removing all the custom content from Garry's Mod though my mount.cfg file

Now, when you want to test your map for custom content, rename your current mount.cfg that has all the content to mount_all.cfg, because it has all your custom content mounted. Now rename the mount_none.cfg to mount.cfg so that Garry’s Mod can read that CFG file instead.

Once you’re done testing for packed content and everything looks correct, rename the current mount.cfg file back to mount_none.cfg and rename the mount_all.cfg back to mount.cfg.

In a nutshell, you’re pretty much just switching between these two files instead of having to add forward slashes constantly, this for me is a significantly faster method than remembering what was and wasn’t commented out one mount.cfg file.


One file has your content still inside it, the other one is empty so you can test your maps quickly

There are bright reflections on my map before building cubemaps
I think it's caused by having another version of your map with built cubemaps in your Garry's Mod. Use the command mat_specular 0 to turn off reflections temporarily while you build cubemaps, just make sure to remember to turn reflections back on by typing mat_specular 1

I'm still missing sounds from Counter-Strike: Source or Half-Life 2: Episode 1 + 2
Garry's Mod doesn't include music or voice files for those games in particular, so you need to have the game's sounds in your assets folder when packing

My map lags/stutters when using BSPZip
It may cause problems for some maps that have a lot of particles, that is why I made it an optional step, it's not required for your map to be functional.
🌐Publishing
Why is a workshop folder needed?
If for any reason you have to update your workshop map, you would have to create the folder structure all over again, make or download the thumbnail image again, and remember what the last map name was. Having a folder stored away makes it much easier to update your map in the future.

Can I use anything other than the camera tool?
Yes you can, but .jpg images from Garry's Mod's camera should be more than sufficient. If you want to use another tool, I would recommend Window's Snip & Sketch tool. (Windows Key + Shift + S)

Is a navmesh required to upload my map?
No, but don't be surprised if someone complains about there not being one in the comments

Doesn't Garry's Mod have their own workshop publishing tool?
Yes, but it's really not that well made for the average user, GM Publisher is leagues better with the added benefits to see storage usage and addon download capabilities

I can't upload multiple images at once!
Make sure to drag the images onto the grey square next to the "choose files" button, if it doesn't work still, try doing it in a file explorer window that wasn't opened with the "choose files" button. If that fails, try doing in via a web browser

Why do I need to give the map a different name?
If for whatever reason a server owner uploads your map to their server, anybody that is subscribed to your map when it updates will no longer be able to join that server due to a same name file conflict. You're pretty much cutting off everyone who has downloaded your map though servers, which isn't good at all.
2 kommentarer
blue lad 25 aug @ 16:35 
i love mr. roflman 69 and i hope he finally responds to my requests for child support
blue lad 25 aug @ 16:33 
bad post. this guy promised ze_pidaras_v2 and failed to hold up his end of the bargain. do NOT trust this guy.