Well let me put it this way...
I will came up with an algorithm/script/routine where:
When you press BuildStairs Button a stair will pop up, then if you press R2 create more stairs. But then if you want a wall you press BuildWall Button and the script will pop up a wall, and stay on wall highlighted, then you want a Pyramid, press BuildPyramid Button and the script will pop up a Pyramid, want a floor, press BuildFloor Button and a Floor will be built, press Build mode to exit, switch back to the gun.
That could be possible if I had a way to evalue "where I am at" (an index counter initialized with a value depend which button I pressed, lol done!), if I'm at BuildStairs array and want a Wall that means that my script will press L1, L1 and R2, then I want a Pyramid... my script find out where I am, in this case it will be at Wall, so my script will press R1, R1, R2 to select pyramid and built, and etc if I press build at any moment I got out of build mode and back to my gun.
Yes, have a major on computer programming, C++, JavaScript are my stronger language. (kind of rusty though)
I had a bad experience with Titan One, however at that time I was focusing on M&KB adapter, then I try XIM4 and the rest was history. I sell my Titan One to get some extra cash to pay XIM4, cost me X2.5 its price due duties and taxes.
Getting the Titan Two for a flexible programming, pay about 200 usd I don't think is worth it. I really doubt ConsoleTuner donate one LOL.
The difference will be marginal.