#Soft drop stops working in custom game
34 messages · Page 1 of 1 (latest)
()
Yeah, I realised the replay errored out as well.... Let me try and replicate the error see if I can get another replay
so i take it you can't get this to happen with the default custom game settings?
I'm not using default custom game setting, but I'll try that after. hold on
I believe the issue has to do with clutch clears, but I'm too bad to create one with default game settings replay
none of these examples were clutch clears?
I think I might have figured out the issue, it might be that my profile is too old and is missing some parameters.
yeah that sounds reasonable
Yeah, I tried without clutch clears and the issue still appeared. So it's probably the profile, let me test it.
i'm not getting the issue but i am topping out in scenarios i don't think i'm supposed to be topping out in? (line clear happens after piece spawn)
also that .ttp isn't 0G
(leveling is on)
Yeah, I know it's not the default, it's the problematic one.
It appears to work great with a new custom game profile, thanks for the support.
pretty dang weird. could never reproduce your issue but i am a little upset with topping out. that solved itself too when i disabled lockout though=
i guess ultimately this isn't a problem
It makes sense,looking back at the error, I think it makes sense. It expects a value when it tries to read survival_messiness, but there is none. However, I'm afraid this will affect reading old game replays, let me try that real quick.
well these are explicitly defined in the ttr
they wouldn't be defined at all in an older replay
oh. It's a type mismatch, js says null is an object, but it wants a number. And the value is null, because it was not set in the custom game profile. That being said, I can confirm that old replays cannot be played anymore, is that a known issue? I would guess so looking at the error I get
well alpha multiplayer replays aren't supported at all so yeah that checks out
That's sad... Any plan on supporting them?
not at this moment 
rip.
The issue with the replay error should be pretty easy to solve with a null coalescing operator though.
static*ValidateOptions(e) {
const {OptionsList: n} = this;
let s = 0;
for (let[i,o] of Object.entries(e)) {
if (!(i in n)) {
const e = `Unknown game option received | key: ${i} -> value: ${o} | Please report this message to the developers!`;
if (s++,
"production" === _.mode) {
console.warn(e);
continue
}
throw new ReferenceError(e)
}
o = o ?? n[i].default //I'm not sure I fully understand the code, but I believe this line should do the trick. It should set o to the default value if o is undefined or null.
if (typeof o != typeof n[i].default)
throw new TypeError(`Options "${i}" type mismatch | actual: ${typeof o} -> expected: ${typeof n[i].default} | Please report this message to the developers!`);
const {integer: e, min: a, max: r, strict: l} = n[i];
if (l && (o < a || o > r))
throw new RangeError(`Options "${i}" out of range | actual: ${o} -> expected: ${a} .. ${r} | Please report this message to the developers!`);
(a || r) && (o = Math.min(r ?? 1 / 0, Math.max(a ?? -1 / 0, o))),
e && (o = Math.floor(o)),
(n[i].static || n[i].default !== o && !t.strictShallowEqual(n[i].default, o)) && (yield[i, o])
}
s > 0 && Kt({
msg: `this replay contains one or more unknown options ${s}`,
color: "#FFD800",
icon: "warning",
timeout: 7500
})
}
it's not an unknown option lol
really the problem should be tackled from importing ttp files
i don't see why they couldn't be corrected
I think you want to fix the issue when reading the replays as well, else replays made with "bad" ttp files would be unreadable.
i would imagine there's not many 