Below is a text copy of the code from the script that I saved to a file called QuickGameUV.py
In Blender, if you load this in the text editor, and press run, the script does what it’s supposed to.
Now I had not thought about installing it, and I sent that .py file inside of a .zip to a friend. He installed it and it broke his blender, he warned me, so I tried to install it and it broke my Blender too!
After going to add-ons > install from file > select the .zip
it throws an error: (this is a copy of the error after I tried installing it a few times so it might not be the same as the original error message)
Now once you close the error message, the add-ons screen is blank, you just have the buttons at the bottom. Refresh doesn’t do anything. You do see the usual list of add-ons/check boxes/search, just a blank screen and buttons at the bottom.
Here’s where it gets even crazier. I use blender portable, the .zip download (not the installer) so I though I would just extract a new copy of blender to the desktop for further testing. Well, I loaded that new copy of blender up and it is also broken…
At worst, if my code is bad or something is missing, etc…, Blender should refuse to install the script (not break). This is a serious problem. Please help. If a bug request submit is needed, I will not be able to do that until later tomorrow. In the mean time, I will wait for replies, my friend sholld be following this thread also, but I won’t be able to read new replies until later tomorrow.
Thank you in advance for the help. The code is copied below.
bl_info = {
"name": "Quick Game UVs",
"author": "Cancer > blenderartists.org",
"version": (1, 0),
"blender": (2, 76, 0),
"license": "GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html",
}
import bpy
for obj in bpy.context.selected_objects:
bpy.context.scene.objects.active = obj
bpy.ops.object.modifier_add(type='EDGE_SPLIT')
bpy.ops.object.modifier_apply(apply_as='DATA', modifier="EdgeSplit")
bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.mesh.select_all(action='SELECT')
bpy.ops.uv.unwrap(method='ANGLE_BASED', margin=0.003)
bpy.ops.object.mode_set(mode = 'OBJECT')
bpy.ops.object.modifier_add(type='EDGE_SPLIT')