From a4132c82ab2d1e27e579279c0e12eaefb3fb4ca0 Mon Sep 17 00:00:00 2001 From: Svante Bengtson Date: Sun, 1 Sep 2024 17:56:31 +0200 Subject: [PATCH 1/6] WIP ijru@4 --- lib/rulesets/ijru@4.0.0.ts | 49 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 lib/rulesets/ijru@4.0.0.ts diff --git a/lib/rulesets/ijru@4.0.0.ts b/lib/rulesets/ijru@4.0.0.ts new file mode 100644 index 0000000..7a5499b --- /dev/null +++ b/lib/rulesets/ijru@4.0.0.ts @@ -0,0 +1,49 @@ +import { type Ruleset } from './types.js' + +import ijruSpeed100 from '../models/competition-events/ijru.speed@1.0.0.js' +import ijruOverall100 from '../models/overalls/ijru.overall@1.0.0.js' + +import eIjruSpDdDdsr44x30100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.dd.ddsr.4.4x30@1.0.0.js' +import eIjruSpDdDdss360100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.dd.ddss.3.60@1.0.0.js' +import eIjruSpSrSrdr22x30100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.sr.srdr.2.2x30@1.0.0.js' +import eIjruSpSrSrse1180100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.sr.srse.1.180@1.0.0.js' +import eIjruSpSrSrsr44x30100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.sr.srsr.4.4x30@1.0.0.js' +import eIjruSpSrSrss130100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.sr.srss.1.30@1.0.0.js' +import eIjruSpSrSrtu10100 from '../preconfigured/competition-events/ijru/1.0.0/e.ijru.sp.sr.srtu.1.0@1.0.0.js' + +export default { + id: 'ijru@4.0.0', + name: 'IJRU v4.0.0', + competitionEvents: [ + eIjruSpSrSrss130100, + eIjruSpSrSrse1180100, + eIjruSpSrSrtu10100, + // eIjruFsSrSrif175400, + + eIjruSpSrSrsr44x30100, + eIjruSpSrSrdr22x30100, + eIjruSpDdDdsr44x30100, + eIjruSpDdDdss360100, + + // eIjruFsSrSrpf275400, + // eIjruFsSrSrtf475400, + // eIjruFsDdDdsf375400, + // eIjruFsDdDdpf475400, + // eIjruFsDdDdtf590400, + // eIjruFsWhWhpf275400, + + // TODO: DDC + ], + overalls: [ + // eIjruOaSrIsro10400, + // eIjruOaXdTxdo40400, + ], + competitionEventModels: [ + // ijruFreestyleSrwh400, + // ijruFreestyleDd400, + ijruSpeed100, + ], + overallModels: [ + ijruOverall100, + ], +} satisfies Ruleset From 79fd37b5ee8ce5ec3a9297653577eb1ef1c26f28 Mon Sep 17 00:00:00 2001 From: Svante Bengtson Date: Mon, 2 Sep 2024 00:48:16 +0200 Subject: [PATCH 2/6] WIP --- .../ijru.freestyle.sr@4.0.0.ts | 503 ++++++++++++++++++ 1 file changed, 503 insertions(+) create mode 100644 lib/models/competition-events/ijru.freestyle.sr@4.0.0.ts diff --git a/lib/models/competition-events/ijru.freestyle.sr@4.0.0.ts b/lib/models/competition-events/ijru.freestyle.sr@4.0.0.ts new file mode 100644 index 0000000..81053aa --- /dev/null +++ b/lib/models/competition-events/ijru.freestyle.sr@4.0.0.ts @@ -0,0 +1,503 @@ +import { RSRWrongJudgeTypeError } from '../../errors' +import { calculateTally, clampNumber, formatFactor, isMarkScoresheet, matchMeta, roundTo, roundToCurry } from '../../helpers' +import type { CompetitionEventModel, JudgeTypeGetter, Options, ScoreTally, TableDefinition } from '../types' + +type Option = 'discipline' | 'interactions' | + 'maxRqGymnasticsPower' | 'maxRqMultiples' | 'maxRqRopeManipulation' | + 'maxRqInteractions' + +// pres +const Fp = 0.6 +const presWeights = { + ent: 0.25, + form: 0.25, + music: 0.2, + crea: 0.15, + variety: 0.15, +} + +// deduc +const Fv = 0.05 +const Fb = 0.05 +const Fq = 0.025 +const Fm1 = 0.05 +const Fm2 = 0.075 +const Fm = 0.1 + +// reqEl +export function getRqMax (options: Options