Why multi-language

BGforge multilanguage server
Post Reply
User avatar
Magus
Site Admin
Posts: 150
Joined: Mon Nov 21, 2016 9:13 am

Why multi-language

Post by Magus » Mon Dec 17, 2018 2:43 pm

At first sight, it might seem strange to combine languages used to mod different games, and not similar in the slightest into a single extension. However, it is not without reason.

Initially, the project was started as an alternative to Sfall Script Editor Extended, a tool for working with Fallout's Star-Trek Scripting Language files. Which is a great piece of software, but unfortunately not working too well under Wine, which is a hindrance to non-Windows users.

Once basic support for Fallout SSL was completed, I was thinking about mirroring it, throwing away everything SSL-related and adding WeiDU formats support instead, to make it a separate extension. But after consideration, I came to conclusion that it might be better to keep them together:
- It will force better code quality by disallowing to mix language features with language server features.
- On the other hand, languages themselves are not too complicated, so it shouldn't be very hard to avoid this mixing.
- Separate extensions would still share a lot of core code, which would likely lead to a lot of manual copying back and forth as bugs are found and features added. Which is extra work and error prone.
- It's easier and faster to implement new features for a language when you have a ready working example for another one.
- Hopefully, it will allow to draw on a larger contributor base.
- Finally, WeiDU uses multiple file formats, and thus its server is going to be multi-language anyway.

After adding basic support for WeiDU syntaxes, I can say that it wasn't very hard, and certainly easier than doing it from scratch - which proves some of these points. So, in the end, keeping the extension consolidated but modular is a practical decision.
Please do not PM or email me about my mods and projects. Use forums. Also, see our talk channels.
Post Reply