Having looked at some of the stuff CaptainSlug has been working on gave me a couple ideas for a very simple semi and/or full auto nerf gun. Essentially it's a fusion of a small piston-valved pneumatic launcher along with a bolt-action breech. The key feature in this design is that the bolt is actuated by the piston, enabling semi and full auto fire.
For an example of the type of bolt-action breech I'll be using check out Retiate's Clipped AT2K.
For several examples of barrel-sealing piston-valved pneumatic launchers, see my archived thread on Spudtech. (The third launcher down uses the same size components to be used in my nerf gun)
For an example of the HPA source/setup I'll be using see CaptainSlug's Paintball Tanks With Nerf, Fun with HPA topic.
Now that that's all out of the way, here's my design:
There's a few key elements that are omitted/not obvious; In the first diagram the actual magazine reciever and clip are omitted for simplicity. Also it looks like the bolt is coming out where the darts would enter, this is just poor artistry on my part, the bolt would exit through a slot in the 1/2" PVC (see Retiate's write up to see what I mean). Also all of the breech elements are nested. Going outward to inward: 1/2' PVC, 19/32" brass, 9/16" brass, internal breech action. Finally, in the second diagram the far end of the first diagram is pictured (both 3/4" female adapters are the same part). Obviously things aren't perfectly to scale as well.
The cycle proceeds as such:
1. Dart chambered, bolt forward, breech closed, spring extended, piston forward and in contact with internal bolt action, chamber and pilot pressurized, air source open, exhaust closed.
2. Air source closed, exhaust open. The pilot vents to atmosphere and pulls the piston back. This now vents the chamber into the barrel firing the dart.
3. Spring return on bolt retracts and opens breech. Next dart enters breech.
4.Exhaust closed, air source open, pilot fills pushing piston forawrd and sealing. Piston pushes internal bolt action forward closing breech and stretching return spring. Chamber and pilot are now fully pressurized.
And the cycle is back where it started.
The wonderfull thing about this design is I can adjust barrel length and chamber pressure to customize dart range. I picked as an example a chamber 12 ci @ 30 psi, with a 12 in barrel. One of the members on Spudtech developed a tool that simulates the performance of a gas gun given various parameters and outputs expected muzzle velocity, valve cycling etc. The tool is called GGDT and is available for download at the author's website if you guys would like to try it out. Here is a screenshot of GGDT with the info for this gun input:
You can see from the graph that the dart will exit the barrel 20 ms after firing. I expect the spring to take significantly longer than this to open the breech, so there shouldn't be any gas excaping even though firing and breech opening occur "simultaneously".
The air source on the 3 way solenoid will be normally open and the exhaust normally closed. So by merely pulling the trigger (and thus cycling the valves) the gun will fire and reload, semi-auto. Here's an example of the 3 way solenoid I plan to use. Alternatively the clip could be taken off and dart's loaded manually in semi-auto mode if the user is out of loaded clips.
Alternatively, the ball valve leading to the pop-off valve can be opened. Now once the pilot reaches the pop-off pressure the valve will open and actuate the piston valve. After firing the continued air source feed will reseat the piston valve until pop-off pressure is reached again, full-auto. For an example of a full-auto piston valve launcher see markfh11q's website.
The best thing about this launcher is that it requires at most a dremel (although you could get away with hand tools) and no machining. All parts are readily available at Home Depot (and wherever you get your brass), with the exception of the the HPA setup and the 3 way solenoid valve, which is around $20 (less if you buy one surplus off Ebay). You can even leave out the o-ring and check valve on the piston, it just improves performance, although o-rings are easy to get at Home Depot and you can make your own check valves for about 90 cents (if anyone is interested I can make a write-up on how I make mine). Once built the whole thing can be dismantled for servicing and repair with no tools whatsoever. Also the design is extremely compact with essentially no external components except for the clip and the bolt return spring (which will likely be covered by a half-cylinder of PVC so it isn't exposed to fingers getting caught or the mechanism being jammed).
EDIT: Added two sentences that clarified how the breech elements are nested.