In progress: Civilization V -- Faster Turn Speed With One Simple Trick

Civilization V: One Weird Trick

I love Civilization V. I've played a hecking lot of Civ 5 in the 10 years since it released. I've gained friends, watched siblings' children grow up, fallen into and out of love, buried family members, lost friends, and healed. Steam tells me I've logged 376 hours. But in truth, a lot more.

And uhhhh Civilization V has problems. Design problems, yes, but also performance problems. It chugs on spinning disk hard drives. It loads the entire map into RAM and VRAM when run in DirectX 9, the default view. It takes forever to calculate turns in the end game.

Over the years, the community built fixes and tweaks and changes. One of them was the LuaJIT mod; it replaced the part of the engine that translated complicated math into actions. It was pretty good! Some people reported dramatic improvements.

But that mod hadn’t been updated in five years.

Introducing MoonJIT for Civilization 5

Freshly compiled! MoonJIT is a slightly more advanced fork of LuaJIT, and boy howdy is it faster.

How fast? In my (limited testing) it reduced turn times vs LuaJIT by around 40%, and against Vanilla, around 180%. By turn 744 in marathon, the longest turn time took no more than 12 seconds. Shortest? near instantaneous.

https://cdn.discordapp.com/attachments/687033772301877358/896607267728818267/lua51_Win32.dll

Installation

  1. Download the lua51_Win32.dll file attached above
  2. drop it into your current Civilization V folder. Overwrite the existing dll.
  3. ???
  4. Profit!

seriously, two steps, dramatic performance upgrade. you heard it here first!

Notes

I haven't tested it for further than one night. MoonJIT source code available at https://github.com/moonjit/moonjit
2 Likes