There’s nothing bad about lightboxes here. What you want to avoid is having small images in a grid that you cannot enlarge.
Here’s an example:
These are two of your images that are not big enough to have lighboxes by default in Discourse.
Without putting them in a grid, they look ok and you can see everything, but if you add them to a Tiles grid
You can see that they’re not big enough to see all the details, and because no lightboxs are generated for them, you cannot enlarge the images by clicking on them.
Now, if you compare those to these other images (which are big enough for Discourse to create lightboxes for them)
You’ll notice that the images above are still small, but you can click on them and they will be enlarged in a lightbox view.
That’s why Tiles ignore images that have no lightboxes. The assumption is that if you want to use images in a gallery, they’re probably large.
I’m not sure I follow, multi-file upload should already be possible. Use the native Discourse file uploader - which supports multi-file selection - and then highlight the code and click the gallery button. Check the op and let me know if you need more help.