The way that the infoboxes are integrated into the wiki makes it so that you only have to put the name of the file into the image location of the infobox for it to work. The outside brackets are not necessary when adding an image to one of those infoboxes. Adding the brackets does nothing to the image, but I just do it because not all wiki infoboxes work this way. The 250px in that image is indeed necessary, not because it is changing the size of the pixels, but because that's just the name of the file. If you're talking about changing the pixel size in terms of something like the addition of "400px" to the end of [[File:250px-MKDD Birdo Egg.png|400px]], then that is not necessary for the infobox.
As a simpler explanation, within the infobox itself, using just File:250px-MKDD Birdo Egg.png will indeed create the file, since the infobox is set up to do so. Outside of an infobox, it needs to have the brackets, like [[File:250px-MKDD Birdo Egg.png]], to create an image. Again, I just put brackets on all my files, since every wiki does the process differently.
As for the underscore (_) question, the site as a whole treats spaces and underscores for images as the same character, meaning [[File:250px-MKDD Birdo Egg.png]] and [[File:250px-MKDD_Birdo_Egg.png]] will produce the same image. Either option will work in creating an image.
Hopefully this information helps answer your questions. And no worries about the complexity of the problem.