-
Notifications
You must be signed in to change notification settings - Fork 40
Update Loop
Scott Zimmerman edited this page Jan 22, 2026
·
4 revisions
This is just a simple breakdown of the game's main update loop. Sometimes it helps to know what the order of operations is. This is by no means a complete list of all the update functions, but it does show some of the most important ones critical to the main gameplay loop.
> Game1.Update()
> ControlHandler.Update()
> UiManager.Update()
> UpdateElements()
> UiElement.Update()
> UiButton.Update()
> UiCheckBox.Update()
> UiEditList.Update()
> UiLabel.Update()
> UiNumberInput.Update()
> UiScrollableList.Update()
> UiTextInput.Update()
> EditorManager.EditorUpdate()
> UiPageManager.Update()
> InsideElement[PageStack[x]].Update()
> MainMenuPage.Update()
> CopyPage.Update()
> CopyConfirmationPage.Update()
> DeleteSaveSlotPage.Update()
> NewGamePage.Update()
> SettingsPage.Update()
> GameSettingsPage.Update()
> GraphicSettingsPage.Update()
> AudioSettingsPage.Update()
> ControlSettingsPage.Update()
> CameraSettingsPage.Update()
> ReduxOptionsPage.Update()
> ModifiersPage.Update()
> GameMenuPage.Update()
> QuitGamePage.Update()
> GameOverPage.Update()
> ExitGamePage.Update()
> ScreenManager.Update()
> _currentScreen.Update()
> GameScreen.Update()
> Game1.GameManager.UpdateGame()
> InGameOverlay.Update()
> UpdateSoundEffects()
> UpdateMusic()
> ItemDrawHelper.Update()
> UpdateDialog()
> gameSystem.Value.Update()
> MapTransitionSystem.Update()
> GameOverSystem.Update()
> EndingSystem.Update()
> MapShowSystem.Update()
> MapManager.Update()
> CurrentMap.Objects.Update() { a.k.a. ObjectManager }
> _systemAnimator.Update() : Where all animations for all objects is updated.
> UpdateGameObjects() : Where all GameObject "Update" functions are invoked.
> updateComponent.UpdateFunction?.Invoke() : The caller to the invoke like "ObjLink.Update()".
> _systemAi.Update() : Where all AiComponents are updated.
> UpdateKeyListeners() : Where all KeyListenerComponents are updated.
> keyListenerComponent.KeyChangeFunction() : This is where key listener's are ran like "ObjLink.OnKeyChange()".
> _systemBody.Update() : Where all BodyComponents are updated: movement logic, hole collision, other stuff.
> UpdatePlayerCollision() : This is where "ObjLink.BodyRectangle" is tested against collision sources.
> UpdateDamageFields() : This is where "ObjLink.DamageCollider.Box" is tested against enemy damage boxes.
> UpdateDeleteObjects() : Deleted object cleanups takes place here.
> AddSpawnedObjects() : New objects spawned into the world takes place here.
> CurrentMap.UpdateMapUpdateState()
> UpdateCamera()
> UpdateShake()
> base.Update(gameTime)
- π‘ Home
- π€ Building & Contributing
- π Additional Info
- π Main Update Loop
- π§ Direction
- π₯οΈ Dialog Path Loader
- πΊοΈ Dungeon Minimap Files
- πΌοΈ Sprite Atlas Files
- π₯ Camera Field Objects
- π·οΈ Placeholder Tags
- πΌ Music Indexes
- π£ Launcher Mod Maker
- π§© Texture Replacement
- πΌοΈ Custom Menu Border
- π΅ Music Replacement
- πΆ Sound Effect Replacement
- πΊοΈ MapOverlay Custom Info
- π Dialog Replacement
- π LAHDMods