I confirmed in 2019 if you update the registry properly and then for each drawing plus your template you must use the Reset button in the Edit Drawing Scales dialog then you should get updated scales.
I tested with metric scales using the following routine.
Code:
(defun defaultscalelist ( / rkey n ns scalelist scale scalename scaledrawingunits scalepaperunits scaletype )
(vl-load-com)
(setq rkey (strcat "HKEY_CURRENT_USER\\" (vlax-product-key) "\\Scale List"))
(setq n -1)
(vl-registry-delete rkey)
;; there must be a scale called "1:1" with scale of 1=1, if not AutoCAD will create a 1:1_1
;; in other words 1:1 is not customizable and is equivalent to 1:1,000 when units are meters and plotting in mm
;; this scale is read-only, ScaleType=5
;; add another scale "1:1 (1mm = 1mm)" to achieve 1 paper space unit = 0.001 model space unit (1mm = 1mm) true 1:1
;; scaletype of 3 is imperial so we have one scale of this type, the mandatory 1:1
;; for some reason AutoCAD thinks 1:1,000 is both imperial and metric, possibly because of the 1=1
;; all other scales are custom metric scales, scaletype = 4 is assumed
;; if paper units are not specified is assumed to be 1.00000000
(setq scalelist (list
(list "1:1 (Imperial)" (list "1.00000000" "1.00000000") "3") ;; do not remove this
(list "1:1" "1.00000000" "5") ;; do not remove this
(list "1:50,000" "50.00000000")
(list "1:20,000" "20.00000000")
(list "1:10,000" "10.00000000")
(list "1:5000" "5.00000000")
(list "1:2500" "2.50000000")
(list "1:2000" "2.00000000")
(list "1:1500" "1.50000000")
(list "1:1250" "1.25000000")
(list "1:1000" "1.00000000")
(list "1:750" "0.75000000")
(list "1:500" "0.50000000")
(list "1:250" "0.25000000")
(list "1:200" "0.20000000")
(list "1:150" "0.15000000")
(list "1:100" "0.10000000")
(list "1:75" "0.07500000")
(list "1:50" "0.05000000")
(list "1mm = 1mm" "0.00100000")
))
(foreach scale scalelist (progn
(setq n (1+ n) ns (itoa n))
(if (< n 10) (setq ns (strcat " " ns)))
(setq scalename (car scale) scale (cdr scale))
(setq scaledrawingunits (car scale) scale (cdr scale))
(if (listp scaledrawingunits)
(setq scalepaperunits (car scaledrawingunits) scaledrawingunits (cadr scaledrawingunits))
(setq scalepaperunits "1.00000000"))
(setq scaletype (car scale))
(if (= scaletype nil) (setq scaletype "4"))
(vl-registry-write rkey (strcat ns "." "ScaleName") scalename)
(vl-registry-write rkey (strcat ns "." "ScalePaperUnits") scalepaperunits)
(vl-registry-write rkey (strcat ns "." "ScaleDrawingUnits") scaledrawingunits)
(vl-registry-write rkey (strcat ns "." "ScaleType") scaletype)
))
;; The default AutoCAD scale list has been reset to the new default
;; To update the scale list for the current drawing ...
;; Use the SCALELISTEDIT command
;; Hit the Reset button, select Metric scales
;; Rearrange any scales that are out of position
;; Note that 1:1 is not adjustable and is the same as 1:1000
;; For a true 1:1 use the '1mm = 1mm' scale
(princ))
(princ)