Back in the time we used a modified CameraNode.pyc (in res_mods/%version%/scripts/client/) which looked something like this:
import BigWorld
class CameraNode(BigWorld.UserDataObject):
def __init__(self):
BigWorld.UserDataObject.__init__(self)
def load_mods():
import ResMgr, os, glob
print 'WoT Mod Loader Started...'
sec = ResMgr.openSection('../paths.xml')
subsec = sec['Paths']
vals = subsec.values()[0:2]
for val in vals:
mp = val.asString + '/scripts/client/mods/*.pyc'
for fp in glob.iglob(mp):
_, fn = os.path.split(fp)
sn, _ = fn.split('.')
if sn != '__init__':
print 'Executing: ' + sn
try:
exec 'import mods.' + sn
except Exception as e:
print e
load_mods()
By this method you could use your own scripts (in /scripts/client/mods/) without altering the original ones.