(Lesson from experience here)
Years ago I built a "bells and whistles included" webserver with a development environment. https://github.com/GWBasic/objectcloud. (I moved it over to Github after I abandoned it, which is why the repo doesn't follow Readme.md semantics.)
Anyway, a mistake that I made with Objectcloud was basically following my fancy everyday and making many parts custom. In the end, the function of the project was educational for me; but Objectcloud itself never was a useful tool for other people. In part, Objectcloud turned into me solving every problem at once, instead of carefully choosing the problems I needed to solve to have a useful product.
To make a long story short: In dotnet, it's very easy to build programmable extensibility by publishing an interface. By putting "scripting" first, and tightly coupling scripting into the tool, you introduced a lot of complexity into the tool and the learning curve. (I have to learn a new tool and a new language.)
In contrast, if you started with a more traditional dotnet-style "just build classes that implement these interfaces" extensibility, you end up reducing your problem scope. (IE, are you trying to build a game engine or a scripting environment? You only have so many hours in the day, and both are complicated projects to support.)
Furthermore, you can always add a scripting plugin built to the interface once the gaming engine is mature.