Skip to content
This repository has been archived by the owner on Jan 5, 2024. It is now read-only.

Game System Optimizations #561

Merged
merged 63 commits into from
Nov 13, 2023
Merged

Conversation

Causeless
Copy link

@Causeless Causeless commented Nov 9, 2023

  • Cache lua scripts instead of reparsing them every time an MO is created. Completely avoids Lua parsing time and also speeds up general Lua execution, as LuaJIT has an easier time optimizing code without it's work being thrown away.
  • Added whitelisting for pathfinding navigatable areas, so we can restrict the search space in very large maps.
  • MT scripts now track their MOs. Avoids pointless looping through MOs searching for ones that belong to us, and allows us to track which MT script state is the least saturated so we can load-balance script assignment.
  • F2 to reload scripts now reloads scripts on all objects added to the simulation, instead of only affecting new objects.
  • Fix issue where performance graph text was overlapping.

@Causeless Causeless marked this pull request as draft November 9, 2023 10:51
Causeless and others added 25 commits November 9, 2023 18:43
…ering.

TODO, clean up multithreaded-sim-and-render and take all the nice stuff we want from there!
…he same place, they spawn on top of each other"

Actually think it looks better without it

This reverts commit b44d62c.
@Causeless Causeless marked this pull request as ready for review November 13, 2023 13:10
Causeless and others added 7 commits November 13, 2023 13:23
Not necessary and better to remove the memory overhead

This reverts commit eece89a.
* Avoid copying registered MOs lists
* Direct function calls instead of recursive flow for multithreaded scripts Update and SyncedUpdate
* Double number of threaded lua states
@Causeless Causeless merged commit f96a916 into development Nov 13, 2023
4 checks passed
@Causeless Causeless deleted the pathfinding-nav-optimizations branch November 13, 2023 22:44
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants