Okay, first, download Milkshape 3D here
http://chumbalum.swissquake.ch/files/ms3d1710.zipThen install it and all, and follow the instructions in this tutorial
NOTE: All of these pictures are example pictures
#1
First, keep zooming untill your view points look like this
#2
Then make a model
#3
Then use the Joint tool and put the join where ever you want the player to hold the item (See #4)
#4
Then click the tab in the control panel (should be on the right) that says "Joints" then click the name that says "joint1", then in the box on the right of the "Rename" button, put "mountPoint" then hit the "Rename button"
#5
Now, here's how to add the part where the weapon fires, put a joint where ever you want the weapon to fire, and go to the "Joints" window by clicking the "Joints" tab, then click the name "joint2" then in the Rename box put in "muzzlePoint" then hit "Rename"
#6
Now for the texture, if you wanna make your own texture, its gotta be 256 x 256 in pixels if you want it to work, but we'll use something from RTB for now, first, hit the "Materials" tab, then hit the button that says "New" then hit the button that says "<none>" then go to a folder in your RTB folder that has pictures, then select it, it'll come out weird, but you'll fix that in #7
#7
Now, go up to the button (or tab) that says "Window" then after opening up the Window drop-down menu, click "Texture Coordinate Editor"
#8
In this window, click the drop-down menu thats over the "Remap" button and choose "left", "right", "top", "bottom", "front", or "back", and hit "Remap" it'll fix your texture and make it look better, feel free to mess with the Scale, Rotate, Move, Rejoin, and Select tools
#9
Now, for the last step, go to the tab on top that says "File" then hover over the Export drop-down menu, and from the list that appears, choose "Torque Game Engine DTS" (I recommend you save it first so you can edit it again incase something's wrong) then go to the folder where you got the textures from, like for example i got a grey.brickside texture, then i'd put my model into the bricks folder, then give it a name, example "rtbweapon" Milkshape 3D will automatically give it a .dts at the end of the save name of course
Well, that's all for modeling, now for coding
Take a .cs in the weapon folder (example; sword.cs), then hit Ctrl+H to bring up the Replace window, then in the top put in "sword" then in the bottom, put "rtbweapon" then hit Replace All, then go to the sounds and put the sound file paths back to normal
filename = "~/data/sound/swordDraw.wav";
and
filename = "~/data/sound/swordHit.wav";
and then fix the shape's file path to
shapeFile = "~/data/shapes/bricks/rtbweapon.dts";
in both item and weapon image data, then save it as rtbweapon.cs and open up weaponexec.cs and on the top of all the .cs file paths, put
exec("./rtbweapon.cs");
the weaponexec.cs file shoud look like this
exec("./rtbweapon.cs");
exec("./axe.cs");
exec("./blaster.cs");
exec("./bow.cs");
exec("./crossbow.cs");
exec("./duallightsabre.cs");
exec("./pickaxe.cs");
exec("./pistol.cs");
exec("./rifle.cs");
exec("./spear.cs");
exec("./speargun.cs");
exec("./sword.cs");
exec("./chainsaw.cs");
exec("./flashgrenade.cs");
exec("./smokegrenade.cs");
now, go to the Scripts folder and open on invSelect.cs, and go to the weapons and copy the speargun's stuff and make a new line by hitting Enter while the blinking line is by the ";" on the last speargun code (it'll make a new line) and copy and paste this code into your new line
$Inv[$Weapons++,0] = nameToID(rtbweaponImage) - 1;
$Inv[$Weapons,1] = "Rtb Weapon";
Now, go start up RTB, then start a Deathmatch, then scroll backwards, and you'll probably find the weapon you made, if not, then something went wrong, if you get a mounted image error, then something may have gone wrong, sorry, but i can't really help with those errors, i just try to fix it by doing random stuff and if nothing works, delete it and do it all over again
XD
Well, hope this has helped, if it has, Ephialtes, Mocheeze, or Badspot, sticky this please