2 ms·
LoL was inspired by DotA (Defense of the Ancient). DotA was a Warcraft III mod. Warcraft III came out in 2002 and was fully deterministic. Save files for entir
by TacticalCoder 2y ago
LoL was inspired by DotA (Defense of the Ancient). DotA was a Warcraft III mod.
Warcraft III came out in 2002 and was fully deterministic. Save files for entire games with up to 8 players (IIRC?) and huge armies were... Tiny. For they only saved the inputs.
It comes at a surprise to me not that LoL eventually became deterministic but that it wasn't in the first place.
As a funny sidenote, around 1990 / 1991 I wrote a little 2D game and there was a bug I simply couldn't figure out. It'd happen very very rarely. And I realized, by myself, that if I rewrote the game's little physics engine to be 100% deterministic I could just record the inputs while playing and then replay it, hopefully reproducing the crash. It worked. I eventually ended up recording the bug and, sure enough, upon replaying the game would crash: at that point I knew the bug was a goner. It was a dangling pointer in a rare case where the hero had picked an extra allowing to shot two shots at once on screen instead of one and if the player would then finish the level with the first shot gone out of the screen but the second shot still on screen.
I had never heard of anyone using a deterministic engine back in 1990/1991. Fun memories.