Although I agree with Lua having an advantage over .dat, TFS Lua api won't be a bottleneck in any probable use case.
Also, if you are speaking facts, why not link them?
I think your question is perfectly valid.
There seem to be four ways currently, each has pros and cons.
TVP (current thread):
Branched out of early TFS, close to the 7.X, but far from perfect, badly written, has Lua API, maybe even revscripts? so you can do a lot using just that. Mechanic completeness would be 5/10.
It is unstable (which has been proved by many projects), edited by someone very unprofessional, and his poor changes make C++ extendability even worse.
Taking that path in its current state, without a good understanding of C++, I consider cutting corners, which will ultimately lead to burnout.
A ton of ninja crashes, issues you will have a hard time understanding and debugging, especially as a newcomer.
Reversed RealOT:
Cipsoft engine from 2005, the code is questionable, but there are enthusiasts.
Although there might be different perceptions about code quality, it is a fact that, outside the regular game mechanics, you will have a terrible time extending it, given that you are not familiar with C++, and familiarity alone might still not be enough.
It is the most complete distribution you can find mechanicwise, in the end, it is the engine Cipsoft used back in 7.7 times.
Stabilitywise, we dont know yet - it might be fine, or it might have issues - definitely more stable than TVP, but as the Reverse-engineered project is pretty new, noone had actual players play it yet.
TFS Main:
Path I took as a rookie, and I don't regret it, so I might be a little biased toward it.
Most extendable of all your options, very capable Lua interface, decent support, and actively developed.
The catch is that it is targeting Tibia 12~, so you gotta do quite some work to introduce 7.X mechanics that differ in many scenarios.
Although that task is objectively the easiest - all you gotta do is realise what you are missing, change sprites, and make adjustments - no rewrites, no huge headaches, and actual protocol downgrade is not required at all, as long as you use OTC (which again, is the most extendable tibia client).
If you are uncertain about a mechanic, you can look it up in Reversed RealOT, if it crashes, I am sure you will find people ready to help you, all you gotta do is create an Issue on the github, and make sure you are verbose and follow all rules.
Create your own engine:
Some developers argue that if you don't write your own engine, you are not a true developer.
But developers argue about a ton of stupid stuff, you don't always have to listen to them.
Although that experience would probably be the most beneficial to you - it will be a long time till you will see the effect of your work.
Big DO's:
Any path you choose, make sure you ask questions, have an open mind, and accept that we make mistakes, remember shit backwards, and sometimes make bad decisions, so don't bash yourself if you make one too.
A big part of OT development is about the journey, not about the rabbit.
Big DON'Ts:
No canary, no mehah OTC, and no TVP (in its current state). Each of these repos is, or used to be, a circle of mediocre programmers who will ban you from their Discord group if you point out bad practices that ultimately make each a timesink they are.
TL; DR
If you want 7.7 and no new mechanics (but custom old mechanics), go with RealOT and Cip client.
If you want to create a new definition of 7.X, TFS Main and
OTCV8 with changed sprites, a couple of months of adjustments and you will be quite close. You get to learn C++ slowly and end up with the most complete Lua API.
TVP is not a real option since it is unstable right as is, although this might change in the near future.