I got some requests for a pattern for this, so I threw something together. At the bottom of the page I have the pattern download, sized for 32x40" blueprint paper. To make things easier for printing, but potentially a bit more confusing for cutting and assembly, I have the main panel with notes pertaining to several individual fabric pieces that all share the same shape and size. I'll try to explain it all below as best I can.
So on that pattern you'll see several numbered pieces. I'll refer to the piece here with these cut instructions by mainly the number.
Main Panel Shape: This bag is essentially comprised of several of these shapes, some with specific features and additions. I'll list them here in order as they are assembled.
Front Panel with Zippers (1A)
Back of Front Panel (1B)
Back of Main Compartment Interior Pocket Panel (1C)
Main Compartment Interior Pocket Panel with Zippers (1D)
Main Compartment Liner Panel (1E)
First Laptop Pocket Liner Panel (1F)
Second Laptop Pocket Liner Panel (1G)
Back Panel with Straps (1H)
Main Compartment Gusset: This is the gusset that goes around the bag opposite of the main compartment zipper. You'll want two pieces of fabric cut with this shape.
Main Compartment Gusset (2A)
Main Compartment Gusset Liner (2B)
Laptop Sleeve Gusset: Just as with 2, this is the gusset that goes around the bag opposite of the laptop zipper.
Laptop Sleeve Gusset (3A)
Laptop Sleeve Gusset Liner (3B)
Strap: This is the panel that you would use for the right and left straps, just mirror it when cutting. I made this as a flat stack, so its just sandwich the layers and stitch - then finish with edge binding.
Strap Front Panel (4A)
Strap Foam (4B)
Strap 3D Spacer Mesh (4C)
Front Panel Zipper Gusset: These are little strips used at the end of each zipper for panel 1A, they are optional in case you want a flatter seam around the front. You'd want 4 of these.
Back Most Panel: This is very similar to 1, but with the top cut off, essentially. This will be the little sleeve that the straps will tuck into.
Bottle Holder Panel: This is a panel that you fold in half to make one side of the bottle pocket. You'll fold with the right sides facing each other, start your stitch all the way around, but don't do the last side yet. Flip it right side out, then fold in the seam allowance of the unstitched side and run a stitch all the way around. You'll want two of these. Be warned, this feature is still very much in prototype phase.
Materials and whatnot
I used 1000D Cordura for all outward facing panels, so 1A, 1H, 2A, 3A, 4A, 5, 6, and 7. I would think you can use anything that is decently stiff and is weather proof, if you want those qualities.
Next, I used Hex Grid 70 for all of the liners, but also for 1B, 1C, and 1D.
I used an array of webbing for the straps and loops, I don't think the type matters much - but I used mil-spec nylon webbing. The looped sections are made with 4" of webbing, with the middle 1.5" Folded and stitched.
For the zippers, I used #5 coil zipper. For the Laptop compartment you'll need 20", for the main compartment zipper you'll need 28.25". Then for the front panels, I used a 7" zipper and an 11" zipper.
In between the liners I also used 4mm bag stiffener foam. These were all cut to the same size as 1, but then trimmed down to just inside of the seam allowance. There is one of these on either side of the laptop pocket.
I hope the assembly will be fairly self explanatory, but here are some notes that I think may be helpful.
Making a bag with the laptop pocket is a bit tricky. Essentially start by making that first, including the zipper and the zipper gusset. Build all of this completed, leaving only the outward edge of the zipper and zipper gusset unfinished, then treat that entire section as though its one piece during the rest of construction.
You'll see in shape 1 of the pattern that there are two spots for loops on the bottom. Those are the loops for the backpack straps and will be sewn onto panel 6 before assembly. You can also duplicate these loops and sew them into the seam allowance on any other panel for additional carry options like a shoulder strap.
In the pattern on shape 1, there are four marks on the top labeled "strap position", these are for panel 1H. Bar tack the completed straps onto this panel before assembly.
The large loop just above the backpack straps is a longer version (10") of the smaller loops described above. To make it, cut a 10" piece of webbing, then make a chalk mark 1.5" in from either end, Fold down the middle (longways), and make a stitch from one chalk mark to the other to create a rigid spine along the handle. The two ends of this piece get stitched onto panel 1H, centered over the backpack straps.
In the pattern on shape 1, there are two diagonal lines indicating the cut marks for the zippers on panel 1A. You can either cut along those lines and install a full length zipper, install zippers with gussets as the pattern allows, or you can install seamless zippers, similar to what is done on panel 1D.
I made extensive use of sewing tape when building panel 1A and panel 1B. I stitched only the bottom portion of each zipper, then taped the seam above it. Then I clipped the two panels together and stitched everything together so that the stitches naturally closed off the pockets. You don't have to do this, you could just as easily finish off 1A, and then clip 1B to the back and run back over the stitches above each zipper to close off each pocket.
For 1D, I installed seamless zippers, then I clipped 1C to the back and ran a seam to close off each pocket before assembly. I will make a video on how to install seamless zippers later and link that here.
I bar tacked a strip of 5/8" webbing to the side of 1A that faces the main compartment zipper, in the center of the panel, and then the same on panel 6, to make the little compression strap that closes everything.
I stitched in a small piece (about 2") of webbing over the zipper towards the close, during assembly, to act as a little security zipper garage.
You may notice that the gusset and zipper lengths end up being a bit long, trim as necessary. I always make them much longer than they need to be to compensate for misalignment or imperfect seam allowance. Better to have it and not need it...
For each section that you choose to install some sort of foam or bag stiffener in - I wholeheartedly recommend that you begin assembly leaving one edge open, and once you have the bulk of your seams sewn, slide the stiffener into the open panels, then finish that seam. It just makes it easier to manage assembly to wait until the last minute to install the stiffener.
I didn't include any of the specific notes about strap accessories, this is sort of personal preference. But I will say it helps to know that the lower portion of the straps after the "bend" is usually positioned over your chest, so attach any webbing or D rings there that you like. If you want a pocket, just use the pattern to cut a piece of fabric only where you want the pocket - stitch the bottom and not the top, then close the sides when you apply edge binding.
If you are using this pattern, be sure to orient the pockets on 1A to favor whichever carry option you'd prefer. I oriented them to favor a shoulder carry, but for favoring backpack carry, they'd be flipped 180°.
For the bottle holder: as mentioned above, this is still very much in prototype phase. Once you complete the two sides, get some wide elastic webbing, and center stitch it as pictured, the exact position will depend on the size of the bottle, and the elasticity of the webbing. So far my method has been to lay the bottle on its side, set each panel next to the bottle (standing perpendicular from the table surface, and tangential to the bottle, then measure around the bottle from panel to panel. Add 1", and then cut that much elastic webbing and stitch with a 1/2" overlap on each panel. Then, for the bottom, cut around 8" of 1.5-2" webbing, centered on the panels, bar tack them. Then stitch the panels onto the middle of the right side of 2, or wherever you want it to be. It should be installed on whatever panel prior to assembly. I install a k-snap after assembly to keep it flat when not in use.
The STL file for the duffle hook is also listed above. I printed it with ABS, 100% infill density. They definitely shouldn't break. They are sized for 1" webbing, if you want them to be wider, simply scale in whatever slicer program you use along the axis aligned with the length.
Whew. Okay that should do it. Feel free to let me know if you have any questions. Have fun, and get to Troublemakin'!