Hello,
I am developing a game that runs extremely complicated calculations every second to simulate a realistic nuclear fission reactor. The goal is to operate the plant safely; it is based on real science and aims to be very complicated and difficult.
The game runs on the Knit framework, which I chose as it helps with organizing server-client/client-server communication which is very crucial for this game.
My issue however is that the simulation code requires iterating through very large tables (~470 items, this can’t be lowered very well without detrimentally affecting the user experience of the game), then iterating through more (smaller) tables for each one of these, and performing many mathematical calculations.
If you’re curious this 470 item long table holds every single fuel channel in the reactor that is simulated; it is simulating an RBMK-1500 reactor, so realistically there should be exactly 1661, but since this would be catacalysmically unoptimized, I am only simulating some of them and pretending all of them are simulated.
From what I can tell the game runs fine on servers, but it is very difficult to test within studio as my PC isn’t handling this very well. I want to see if Parallel LuaU features will help with this lag, but I’m not sure how to implement this with Knit framework. I’ve tried having seperate “ServerRuntime” functions in seperate actors, where the service modules call task.desynchronize and synchronize as needed, but this approach causes my scripts to not even run.
Any help would be appreciated!