Hi all, With the current changes to Blender, many scripts will now return errors.
Actual bugs in Blender should be reported to the Official Bugtracker.
Rather than flooding them with Script problems I thought This would be good.
I will be testing and reporting errors as I come across them & posting Fixes wherever they are easy enough for me to fix.
Some bugs are really simple to fix, others I may need help.
I have started this thread as many bugs will apply to several scripts & to hopefully provide a common workplace for reporting and fixing scripts.
With support, this could stop choking the forum with similar error threads.
Also if you write scripts or have already written and published scripts, this could provide a platform to post that you have updated or find solutions to common problems encountered with the new build.
With the new release of Blender soon, it would be great if the common bug fixes could be found quickly so they will be easy to apply across many scripts.
I am no Python Guru, I catalog scripts not write them (yet).
That said, if there is a small change I can easily fix it in the text editor.
Mostly I would need to know how first.
I could then also post fixes for non updated scripts in the wiki.
Testing started with rc4.
Here goes then:
Line 91 > scene = Scene.getCurrent() <change to> scene = Scene.GetCurrent()
Trouble drawing > Left Click in 3d window.
Set Smooth turns mesh black in object mode> Create Mesh, enter Edit Mode, Select Mesh (‘a’ button) press Set Smooth, Enter Object Mode for Smooth and visible Mesh.
OK that’s a start, from this I found;
The ‘get>Get’ mod will apply to many scripts as ‘get’ is depreciated in relation to Scene, (maybe all ‘get’ calls?)
The scripts still appear to work but changing this stops the depreciation error.
It would also appear there is a problem with Set Smooth in Object Mode,
this may also require a small adjustment in code.
I have tested this with several scripts and the error (the mesh will draw black in the 3d view) appears in many but not all scripts tested. Also there is not a problem with Set Smooth with Included Objects (works in Object Mode).
So from this I gather there would be another Common easy fix.
Another upgrade needed for some scripts is to change ‘mesh’ to ‘Nmesh’
I’ll test this further to find where it applies or someone could tell me.
sombody with experience with the blender api could go through and fix these issues, however I have found that it dosnt work so well- Since the author may have a development version on their PC, or dosnt want others to change their script.
Best contact the author for the latest version of their script (may be unreleased) and see if they even know about the problems your having… if they can fix, great,
else ask if sombody from the community can go though and make the changes, and that there ok to review the changes and include them back in the main version, (assuming the changes arent too big)
@ Mariano, thanks, I guessed that most authors would update for the release.
I didn’t look at any of your scripts as I read that you would update for the new release. Looking forward to the new Library Script.
@ Cambo, I am not looking to do anything other than add extra information in the individual script notes section in the script/catalog listing & provide any easy fixes as notes for scripts that are not updated, there are already some notes to repair some scripts on the wiki for 2.42a. The notes will be removed when the scripts are updated by the author. If I can find quickly what fixes are needed, then I can update the wiki better/quicker & it will be more professional.
the api provides a good reference for authors.
My perspective & idea behind this thread is to help some authors but more to provide solutions for the end user who doesn’t know why the script just downloaded is broken, let alone how to fix it.
Anyway, I was just trying to help.
I’m having problems with getting the rotation method setEuler to work in 2.43. The script that contains this method works fine under 2.42 but in 2.43 it complains “RuntimeError: expected tuple of one item” even though three parameters are being passed in.
Here’s the workaround I did to make the script work again. I replaced:
Hope that helps for the time being.
Does anyone know if ‘setEuler’ has been updated in any way or if is this an issue with the release of Blender 2.43?
hi, that sounds like a good idea Cambo, I would suggest that three or four people could maintain it, possibly through a sticky here, or by some sort of submission process.
That way malicious code could be policed and also preventing the scripts being modified too far beyond their original design.
It is worth a try.
edit: It also seems that many (not all) script issues were solved with the final release of 2.43, this is good news.
Thanks for the hard work put in to achieve this.
So, who got the bug somewhere up there anatomy to make worthless changes to the code that gives everyone - the user, the script writers - a headache. ‘g’ to ‘G’ in the get. 3 arguments to 1 arguments which consists of a 3 item tuple. Sounds like someone taking leasons from m$.
Okay, I think I see what your getting at…
Scene.getScene -> Scene.GetScene?
getScene was supposed to be deprecated, all I did was to add a print so people knew it.
Are you talking about setEuler - wasnt my change but easy enough to work around?
were going to be using radians for everything rather then a mix of radians and degrees, will apply to Blender 2.44 or 2.5, are the changes worthless? well, The C code behind the python API is becomming a lot easier to work with so making improvements is easier too… Breaking stuff happens every so often and is sometimes an accident, but scripters also get the benifits of accessing new areas of blender.
The problem is the API is work in progress, some bad design choices have been kept for compatibility reasons but not documented.