tweak rapid init script
parent
bdfe67b0e4
commit
274029de51
|
@ -35,58 +35,64 @@ var initialGlicko = {
|
|||
// var query = {_id:{$in:['thibault', 'neio']}};
|
||||
var query = {
|
||||
'perfs.classical.nb':{$gte:1},
|
||||
'_id': {$in:['thibault','neio','oien','kingscrusher-youtub3','german11']}
|
||||
'v':{$exists:false},
|
||||
enabled: true,
|
||||
engine: {$ne:true},
|
||||
// seenAt: { $gt: new Date(Date.now() - 1000 * 60 * 60 * 24 * 7) }
|
||||
// '_id': {$in:['thibault','neio','oien','kingscrusher-youtub3','german11']}
|
||||
// 'perfs.rapid': { $exists: false }
|
||||
};
|
||||
};
|
||||
|
||||
var done = 0;
|
||||
db.user4.find(query).limit(1000).forEach(u => {
|
||||
db.user4.find(query).sort({'count.game':1}).forEach(u => {
|
||||
var classicalPerf = u.perfs.classical;
|
||||
if (classicalPerf) {
|
||||
classicalPerf.la = undefined;
|
||||
classicalPerf.nb = NumberInt(0);
|
||||
classicalPerf.re = [];
|
||||
var rapidPerf = copyPerf(classicalPerf);
|
||||
db.game5.find({
|
||||
us: u._id,
|
||||
s: { $gte: 30 },
|
||||
t: { $gte: 2 },
|
||||
ra: true,
|
||||
v: { $exists: false },
|
||||
c: { $exists: true }
|
||||
}, { _id: false, c: true, ca: 1 }).sort({ca:1}).forEach(g => {
|
||||
switch(getPerf(getTc(g))) {
|
||||
case 'rapid':
|
||||
rapidPerf.nb++;
|
||||
rapidPerf.la = g.ca;
|
||||
break;
|
||||
case 'classical':
|
||||
classicalPerf.nb++;
|
||||
classicalPerf.la = g.ca;
|
||||
break;
|
||||
}
|
||||
});
|
||||
[classicalPerf, rapidPerf].forEach(perf => {
|
||||
if (perf.nb < 10) {
|
||||
if (perf.nb < 5) perf.gl.d = 350;
|
||||
else perf.gl.d = 150;
|
||||
perf.gl.v = 0.06;
|
||||
}
|
||||
if (!perf.la) delete perf.la;
|
||||
});
|
||||
// print(u._id);
|
||||
classicalPerf.la = undefined;
|
||||
classicalPerf.nb = NumberInt(0);
|
||||
classicalPerf.re = [];
|
||||
var rapidPerf = copyPerf(classicalPerf);
|
||||
db.game5.find({
|
||||
us: u._id,
|
||||
s: { $gte: 30 },
|
||||
t: { $gte: 2 },
|
||||
ra: true,
|
||||
v: { $exists: false },
|
||||
c: { $exists: true }
|
||||
}, { _id: false, c: true, ca: -1 }).sort({ca:-1}).forEach(g => {
|
||||
switch(getPerf(getTc(g))) {
|
||||
case 'rapid':
|
||||
rapidPerf.nb++;
|
||||
if (!rapidPerf.la) rapidPerf.la = g.ca;
|
||||
break;
|
||||
case 'classical':
|
||||
classicalPerf.nb++;
|
||||
if (!classicalPerf.la) classicalPerf.la = g.ca;
|
||||
break;
|
||||
}
|
||||
});
|
||||
[classicalPerf, rapidPerf].forEach(perf => {
|
||||
if (perf.nb < 10) {
|
||||
if (perf.nb < 5) perf.gl.d = 350;
|
||||
else perf.gl.d = 150;
|
||||
perf.gl.v = 0.06;
|
||||
}
|
||||
if (!perf.la) delete perf.la;
|
||||
});
|
||||
|
||||
var update = {
|
||||
$set: {}
|
||||
};
|
||||
var update = {
|
||||
$set: {
|
||||
v: 2 // user version 2
|
||||
}
|
||||
};
|
||||
|
||||
if (classicalPerf.nb == 0) update['$unset'] = {'perfs.classical': true};
|
||||
else update['$set']['perfs.classical'] = classicalPerf;
|
||||
if (rapidPerf.nb > 0) update['$set']['perfs.rapid'] = rapidPerf;
|
||||
if (classicalPerf.nb == 0) update['$unset'] = {'perfs.classical': true};
|
||||
else update['$set']['perfs.classical'] = classicalPerf;
|
||||
if (rapidPerf.nb > 0) update['$set']['perfs.rapid'] = rapidPerf;
|
||||
|
||||
// db.user4.update({_id:u._id}, update);
|
||||
print('------------------------------- ' + u._id);
|
||||
printjson(update);
|
||||
}
|
||||
// printjson(update);
|
||||
|
||||
db.user4.update({_id:u._id}, update);
|
||||
db.perf_stat.remove({_id:u._id + '/3'});
|
||||
done++;
|
||||
if (done % 100 === 0) print(done);
|
||||
if (done % 100 === 0) print(done + ' ' + u._id + ' ' + u.count.game);
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue