Esta es una prueba:
La primera parte asigna un número único solamente en la selección. La segunda parte comprueba los objetos de toda la escena para que la selección no tenga ID repetidos de otros objetos no seleccionados.
Es un punto de partida, pero modifícalo si hace falta, o si algo no está bien o si necesitas una interfaz me avisas.
Pegalo en una ventana de Maxscript, selecciona cada parte y presionas shift+enter para ejecutarlo sobre la selección.
Código:
(Tlocal sel = getcurrentselection() tif sel, count < 65536 then t(t for n in 1 todo selection, count do (t sel[n].gbufferchannel = n ) t) telse (messagebox object count exceded limit of 65535 \t\nBep:false)).
Método 2 : -.
(Tlocal sel = getcurrentselection() tlocal bitall = #{} tlocal bitsel = #{} tbitall, count = 65535 tbitsel, count = sel, count tfor o in objects do append bitall o, gbufferchannel tfor o in sel do append bitsel o, gbufferchannel tbitall = -(bitall - Bitsel) tif sel, count < 65536 then t(t (t local bitarr = bitall as array for n in 1 todo sel, count do (t sel[n].gbufferchannel = bitarr[n] ) ) t) telse (messagebox object count exceded limit of 65535 \t\nBep:false).
)