* Displays a popup if you're converted into a shade who needs to follow instructions (#69319)Ī week or so ago I soulstoned someone and they just spent the whole time yelling at people to try and get me killed until I got tired of it and chucked them into some lava. Displays a popup if you're converted into a shade who needs to follow instructions (#15983) These are effectively zero-wait timers, which can mess up the iteration of the clienttime timer queue by being inserted into the past or current tick's list and causing the head/index to desync, potentially leaving spent timers in the queue or firing them again.Ĭommit sha 0ef6c5acf07490338d57c712d322fc1d983271fd Thanks to LemonInTheDark and MrStonedOne for their help in tracking this issue down. (The stacktrace for negative waits is technically invalid but I didn't care enough to touch it.) Clienttime timers have a resolution of one decisecond instead, so we now clamp and round it to that instead. Fix client timers having invalid world.tick_lag and rounded it to multiples of the same, but this is invalid for clienttime timers. This allows for awaiting extremely expensive non-sleeping procs (like the aforementioned getFlatIcon) I instead elected to make /datum/auxtools_promise sleep once before invoking its assigned proc, thus immediately returning execution to lua, even if the proc being awaited wouldn't sleep. While Mothblocks would suggest just raising the execution limit, the idea leaves a bad taste in my mouth due to the possibility of a script causing extreme lag by consistently overrunning the BYOND tick. When trying to run getFlatIcon using lua scripting, I discovered that it was so expensive that, for certain atoms like complex humans, there is no way it will complete within the lua execution limit. * You can now `await` expensive non-sleeping procs. You can now `await` expensive non-sleeping procs. My target is something closer to the 9 second init that had back inĢ019, this is a good first step. Saves roughlyģ3% (16 seconds with LOW_MEMORY_MODE) of initialize on my machine This allows us to not hold up initialize with hair stuff. Otherwise we slowly load them in with a separate subsystem. If an asset is requested it will immediately be fully loaded, but This currently applies only to spritesheets because of how monumentally * Adds lazyloading to the asset subsystems * Adds lazyloading to the asset subsystems (#69454) Adds lazyloading to the asset subsystems (#15960) * Fix gas canister supply packs causing stray cargo pod runtimeĬommit sha 6da433c8eb5e5b5991046bd4b6ab120a793eb471Īutomatic changelog generation for PR #15949 Ĭommit sha 7579176eedeb09f9aa00a39a2abdcfd8ea4abe9d * Fix gas canister supply packs causing stray cargo pod runtime (#69296) Fix gas canister supply packs causing stray cargo pod runtime (#15949)
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |