I get this Error all the time. I usually ignore it but this time it is stopping a new script I am using from working. Any Ideas how to fix this? I am using Advanced skeleton
// Execute Step:1 : Prep
// Face step:1 complete.
// Execute Step:2 : CtrlBox
// Face step:2 complete.
// Execute Step:3 : EyeBall
// Face step:3 complete.
// Execute Step:4 : EyeLid
// Face step:4 complete.
// Execute Step:5 : EyeBrow
select -r eyeBrowCage.e[0:2] eyeBrowCage.e[4] eyeBrowCage.e[6] eyeBrowCage.e[8] eyeBrowCage.e[13:17] eyeBrowCage.e[20:21] eyeBrowCage.e[24:25] eyeBrowCage.e[28:29] eyeBrowCage.e[31:33] ;
// Face step:5 complete.
// Execute Step:6 : Lip
// Error: file: C:/Users/x9-ws/Documents/maya/2017/scripts/AutoRig_Skeleton/AdvancedSkeleton5.mel line 13385: Command attachCurve failed. Open Script Editor for details. //
// Error: line 1: Cannot find procedure "onModelChange3dc". //
// Error: line 1: Cannot find procedure "onModelChange3dc". //
// Error: line 1: Cannot find procedure "onModelChange3dc". //
// Error: line 1: Cannot find procedure "onModelChange3dc". //
// Error: line 1: Cannot find procedure "onModelChange3dc".
Thanks
Jon
Solved! Go to Solution.
Solved by karma_the_kat. Go to Solution.
Try again with this code (it's a python script btw, so it needs import statement). I cannot edit my previous post so I'll just repost it again :
import maya.cmds as cmds
import maya.mel as mel
def removeRogueModelPanelChangeEvents():
# add any missing procedure error in here
EVIL_METHOD_NAMES = ['DCF_updateViewportList', 'CgAbBlastPanelOptChangeCallback','onModelChange3dc']
capitalEvilMethodNames = [name.upper() for name in EVIL_METHOD_NAMES]
modelPanelLabel = mel.eval('localizedPanelLabel("ModelPanel")')
processedPanelNames = []
panelName = cmds.sceneUIReplacement(getNextPanel=('modelPanel', modelPanelLabel))
while panelName and panelName not in processedPanelNames:
editorChangedValue = cmds.modelEditor(panelName, query=True, editorChanged=True)
parts = editorChangedValue.split(';')
newParts = []
changed = False
for part in parts:
for evilMethodName in capitalEvilMethodNames:
if evilMethodName in part.upper():
changed = True
break
else:
newParts.append(part)
if changed:
cmds.modelEditor(panelName, edit=True, editorChanged=';'.join(newParts))
print("Model panel error fixed!"),
processedPanelNames.append(panelName)
panelName = cmds.sceneUIReplacement(getNextPanel=('modelPanel', modelPanelLabel))
removeRogueModelPanelChangeEvents()
or this (credit: https://forums.autodesk.com/t5/maya-forum/maya2018-error-line-1-cannot-find-procedure-quot/td-p/8651... )
from maya import cmds
def removeCallbackError():
for model_panel in cmds.getPanel(typ="modelPanel"):
# Get callback of the model editor
callback = cmds.modelEditor(model_panel, query=True, editorChanged=True)
# If the callback is the erroneous `CgAbBlastPanelOptChangeCallback`
# or other callback error (add any missing procedure here)
if callback == "CgAbBlastPanelOptChangeCallback" or callback == "onModelChange3dc" :
# Remove the callbacks from the editor
cmds.modelEditor(model_panel, edit=True, editorChanged="")
removeCallbackError()
Open the problematic scene file, run the script, make any edits (zoom the camera or whatever) so Maya considers the scene as "dirty" or edited, then save the file. You need to clean AND then save each infected files (either by script or manually editing .MA file with text editor), because every time you open other problematic scene and you don't clean it, the error will keep spreading because it latches onto each scene via script node.
Any missing procedure error is embedded by default in uIConfigurationScriptNode. I guess that's how in the last few months there have been actual malware infections with far more severity than this error in Maya, because someone really put an effort and exploit this vulnerability. Must really hate Autodesk, don't they...
We are using Maya 2020.4, and this error is still coming up. What is the original source of this issue? We keep cleaning our files with the scripts mentioned before, yet we come across the same error again in a new scene.
Hello,
I see we have this logged and fixed in upcoming public releases:
MAYA-86309 Error (cannot find procedure "onModelChange3dc") when loading a specific scene
There appears to be an odd error message happening in Maya 2018. Once you start seeing it, it seems to infect the Maya session and any file saved during that session (even after file new) will exhibit the error until restarting Maya.
// Error: line 1: Cannot find procedure "onModelChange3dc". //
This should get rid of the problem:
Hope this helps.
Regards,
Kelly
Kelly Hynes
Manager, Software QA Engineering
Installation & Licensing forums | Contact product support | Autodesk AREA
it's even happened when Maya scenes are empty, even when I delete Maya default folder and it create new
for theses errors :
// Error: line 1: Cannot find procedure "onModelChange3dc". //
// Error: line 1: Cannot find procedure "CgAbBlastPanelOptChangeCallback". //
I've added this line of code ( in MEL ) in my usersetup.mel
global proc onModelChange3dc(string $s0) {};
global proc CgAbBlastPanelOptChangeCallback(string $s0) {};
Can't find what you're looking for? Ask the community or share your knowledge.