So after seeing nikescar video and his post, I decided to build my own shifter. I have a g27 but I don't like the feel of soft shifting. Because I have not enough tools to help me with my build, I would say this build wasn't easy, and I worked on it several days, since the original idea of nikescar to put two cabinet door clasps on a rail and move them side to side didn't work for me, although I built two rails, 1st,2nd, and reverse positions would clog, other positions in the middle area would work fine. Maybe the rail had a wide hole which made the screw change position on far right and far left gears. So what I have done is the same idea of nikescar except that I have put 7 cabinet door clasps, one for each shift, and got rid of the rail. I used wood squares 15cm x 15cm for base and sides that will hold shifter plate. I used a plastic cutting board and a driller (which took much time, and it wasn't even or smooth for each position). I bought an iron clasps(not painted), attached each wire from game pad(which was already soldered) to a clasp, then attached the ground wire to the shifter. I put at the base of the bolted spring, a small piece of sponge, then wrapped the end of the 8 inch screw with wires wrappers to give it softness and to make it wider so it won't get out of the spring, I used several springs, you should use one which if you put the long screw in, it won't lean to any side.
Well after all the effort I am happy with my build, but you need to be very careful not to cut or hurt yourself in any way, always be focused while using tools. The fun thing about building your own shifter or anything else, is that you know how to repair it, or change a part, not the same if you bought an aftermarket shifter, if it broke or you didn't like anything about it, you can't tweak it.
Here are pictures of the final build, also if you decide to do it, you need to be extra patient, because it might not work from the first time, align the clasps with the rod and test to see if it works for all positions. Just my 2 cents.