TL;DR
Request: Move all GUI elements from C++ to Lua to improve extensibility for modders.What?
I’m requesting that Factorio’s GUI elements, currently implemented in C++, be fully migrated to Lua. This shift would allow mods to directly extend, modify, and integrate with the GUI elements instead of just attaching additional components via relative_gui_position anchor points.Why?
The current C++-based GUI system is restrictive for modders because it doesn’t allow direct modifications. As a result, the only feasible way to extend the GUI is by anchoring new elements, which lacks flexibility and can feel disconnected. By moving all GUI elements to Lua, Factorio would enable more cohesive integrations—similar to how World of Warcraft’s Lua-based GUI allows mods to extend and modify any element directly, improving the user experience.This change would make the game’s GUI system inherently more extensible and easier to work with. While there might be some overhead in shifting to Lua, GUI elements are generally less resource-intensive compared to other performance-sensitive areas, like logistics, so this impact should be manageable.