As an alternative to narrative tools like Twine, I like the scripting language Ink https://www.inklestudios.com/ink/
It's made by Inkle Studios, who are well known for their narrative games 80 Days, Heaven's Vault, and Sorcery. It's a markup style language, so it's incredibly easy to write in, while being as complex as you need it to be. Since it's also technically a scripting language, you can either use it as a mere IF tool similar to Twine, or integrate it into your own game engine of choice.
Official Ink/Unity Integration
Ink Library, a collection of community made integrations, and a big list of games using Ink