I just think the two should totally be one API, I can't see a reason one would want one and not the other! The suggestion, and more than probably a very extensive one, is involving the ever so dandy 5e Surprise Rules. Would it be possible to incorporate surprise when determining initiative? Say something like, those who are marked with the Ninja Mask (which in my game is not a single stealth check, but a Hide Action, stealth is the contest rolled within view of eachother) are attempting to surprise the enemy. The flow would then go like this: 1. Determine Line of Sight of each in contest, query obscured conditions in chat window to GM. Make sure blindsense, darkvision, tremorsense, and normal vision ranges are observed. 2. Autodetermine who is trying to stealth (has ninja mask icon) and roll a stealth check from their character's sheet, get that variable 3. Autodetermine/ roll perception check(s) of those in line of sight, determine who wins contest, mark/ store any surprised for later in script 4. Create the main stack of initiative as rolled. 5. Create and use a new stack of initiative that places a "! " before the names in this stack of initiative order for those who are surprised, move them to inaction this round (the "! " being the marker to skip their turns in combat). This also lets those in combat know that there is advantage on their rolls against said combatant. In turn marker, instead of "Round 1" being listed, the name could be changed to "Surprise Round". 6. Once the turn is over and surprise is no longer a issue, end this stack of initiative, call the previously made stack and continue as normal.