Garry's Mod Icon GMod Tutorial

Making Your first SWEP

Yo, buddy. We are one of the oldest mod sites on the Interwebs. Sign up and maximize your browsing experience.

  • Subscribe: Get notified of new submissions like this.
  • Say Thanks: Show your appreciation by sending Wowzorz points.
  • Post: Give Wowzorz your thoughts on this Tutorial.
  • Vote: Help Wowzorz win the Monthly Awards.
  • Rate: Give this Tutorial a rating out of 10.
  • Flag: Alert moderators and warn members of a problem with this Tutorial.
  • Watch: Get notified when this Tutorial is updated.

Sound fun?

Sign up

Already a Bananite? Login

-- Programs needed -- -- Notepad, or NotePad ++ -- -- Garrys Mod 10 -- 1. Ok first open notepad, or npp, and copy this into your program. "if ( SERVER ) then AddCSLuaFile( "shared.lua" ) SWEP.HoldType = "ar2" end" This is just telling the server, if the game is a server not singleplayer, send this file to the client who is connecting. And the HoldType is just what kind of gun it is just make it ar2 for your first swep. -- Look at Screen shot 'A' for details -- ------------------------------------------------------------------------------------ 2. Now after that copy this in and edit it how you want. "if ( CLIENT ) then SWEP.PrintName = "Guns Name Here" SWEP.Author = "Your Name Here" SWEP.Slot = 3 SWEP.SlotPos = 1 SWEP.IconLetter = "w" killicon.AddFont( "weapon_ak47", "CSKillIcons", SWEP.IconLetter, Color( 255, 80, 0, 255 ) ) end" Ok the SWEP.PrintName is what the gun is called, SWEP.Author is who made the swep. SWEP.Slot is what slot the gun is in 0 = slot 1 1 = slot 2 2 = slot 3 etc... all the way up to 5 which = 6 i have no idea why it is that way SWEP.SlotPos is were in the slot your gun is if its set to 99 it will be on the bottom of the slot unless of course another swep is set to 100. SWEP.IconLetter is just a letter that represents the swep. Dont mess around with the killicon its set for css style. ------------------------------------------------------------------------------------ 3. Ok after that once again copy and paste to your liking... "SWEP.Base = "weapon_cs_base" SWEP.Spawnable = true SWEP.AdminSpawnable = true SWEP.ViewModel = "models/weapons/v_rif_ak47.mdl" SWEP.WorldModel = "models/weapons/w_rif_ak47.mdl" SWEP.Weight = 5 SWEP.AutoSwitchTo = false SWEP.AutoSwitchFrom = false" Alright SWEP.Base is what base the swep draws off.. dont mess with that yet SWEP.Spawnable, and SWEP.AdminSpawnable is if the public can spawn this gun, or just the admin, change them between false and ture. SWEP.ViewModel is what the V model is. SWEP.WorldModel is what the W model is, just use the ak47. Leave every thing else the same. ------------------------------------------------------------------------------------ 4. Almost done now but copy this and edit how you want. " SWEP.Primary.Sound = Sound( "Weapon_AK47.Single" ) SWEP.Primary.Recoil = 1.5 SWEP.Primary.Damage = 40 SWEP.Primary.NumShots = 1 SWEP.Primary.Cone = 0.02 SWEP.Primary.ClipSize = 25 SWEP.Primary.Delay = 0.07 SWEP.Primary.DefaultClip = 50 SWEP.Primary.Automatic = true SWEP.Primary.Ammo = "smg1" SWEP.Secondary.ClipSize = -1 SWEP.Secondary.DefaultClip = -1 SWEP.Secondary.Automatic = false SWEP.Secondary.Ammo = "none"" Ok now this looks harder, but is much easier i think. SWEP.Primary.Recoil is the recoil on the primary attack. SWEP.Primary.Damage is how much damage the primary attack does. SWEP.Primary.NumShots is how many bullets come out of the gun. SWEP.Primary.Cone is how accurate the gun is. SWEP.Primary.ClipSize is well... the clipsize. SWEP.Primary.Delay is the delay between shots, 1.00 = 1 second. SWEP.Primary.DefaultClip is how much ammo you gain when you pickup the gun SWEP.Primary.Automatic is if the gun is automatic, false is no, true is yes. SWEP.Primary.Ammo is what type of amoo the swep uses The secondary is set up so it doesnt do any thing, cause the ironsight is on secondary click. ------------------------------------------------------------------------------------ 5. To finish it all off copy this in "SWEP.IronSightsPos = Vector( 6.1, -7, 2.5 ) SWEP.IronSightsAng = Vector( 2.8, 0, 0 )" those ironsights are set up for the ak47, they wont work for any other model. after that, save the file as "shared.lua" and place it in garrysmod/lua/weapons/"make a folder called sample" and save it there. all done start up gmod it should be right in the sweps section on ur menu. Have any questions send me a pm! >8)


  • 3y
    > **Posted by JohnTheCactusBanana**

    > **Notes:**
    > - I have a problem. I did everything and i got a text document.Can you help me?

    When making a it did you have (yourtitle).txt or (yourtitle).lua if you do not see these things or have no clue what im talking about ill explain more when your in your download folder do folder and search options then view then turn off/unclick hide extensions for known file types then when you see the extensions rename the extension .lua good luck:D
  • 4y

    - I have a problem. I did everything and i got a text document.Can you help me?
  • 7y
    LOLPerson avatar
    LOLPerson Offline
    Member Joined 7y
    Pros: Very helpful
    Cons: Doesn't tell you a lot of info
    Improvements: Tell more ammo types


  • 7y
    XDriver avatar
    XDriver Offline
    Member Joined 7y
    Where to find "{" ?!
  • 7y
    Drakeowns avatar
    Drakeowns Offline
    Member Joined 7y
    I need help

    Okay i finished but i downloaded a custom model and i want to use it as my weapon what folder do i put it in?
  • 8y
    If I wanted my SWEP to shoot sawblades... in the ammo section would I just put "sawblade" or what?
  • 8y
    simzboy avatar
    simzboy Offline
    Member Joined 9y
    202 points Ranked 17199th
    I did every thing in the tut, but my SWEP does not show up in game.
    1 SHOT 1 KILL
  • 8y
    serioushans avatar
    Member Joined 9y
    I can't find it!
    banana phone!
  • 8y
    Wowzorz avatar
    Wowzorz Offline
    Member Joined 10y
    730 points Ranked 6112th
    Then remove the '{'.
    I'm done. avatar
    I'm done.
  • 8y
    serioushans avatar
    Member Joined 9y
    I have a problem...
    The gmod console says:
    weapons/exploder_swep/shared.lua:1: unexpected symbol near '{'

    Please Help!!
    banana phone!


Shareable Image:
Share banner
HTML embed code:
BB embed code:
Markdown embed code:

More embeddable images

Bookmark and Share


Key Authors


Wowzorz avatar
Wowzorz Offline
Member Joined 10y
730 points Ranked 6112th

Send a Private Message to the submitter



Difficulty Level
Beginner Difficulty




Date Added
Date Modified