Security, Arbitrary Code, and Expansion Packs

This is usually used to create custom additional missions for the game.

Indeed–if I take your meaning correctly, that’s not something that I’m looking to do here. (Rather too much worry and work in such a feature, I fear.)

Instead, I’m thinking about potentially having official expansions.

Based on the title of the topic, it seemed to me that you are set up to develop such a system. I think this discussion will be useful for others.

That is fair, on both counts.

I don’t have much to add right now, I think, but I am more than happy for others (yourself included) to weigh in further if there are further points to be made!

I feel like you’ve already reached a similar conclusion, but I’ll just add my two cents:

The big issue with exec/eval is when running “untrusted” strings. They also tend to be a bit of a code smell. If you do not have third-party expansions (or any other 3rd-party executable code), you severely mitigate the risk involved. Now, users may make “unofficial” expansions (especially if you’re not enforcing things via code signing), but you could add some disclaimer about the dangers of running untrusted code. If you plan to host/distribute third-party expansion/mods, then I would be much more concerned about sandboxing and such.

1 Like

Good thoughts, all, and much appreciated. Thank you!

And while they may have been expressed before, it does help to have another voice in their favour, and to have them as a nice, concisely-put argument. So thank you for that, too! :slight_smile: