All Rust commits from Facepunch
Bugfix: fix invalid takeover data for crystal ak Accidentally copied pack even though it hasn't one when manually resolving Tests: navigated to page, crystal ak displays as intended
Bugfix: store.refresh now restarts the tab Fixes tab having only default-initialized tiles Tests: ran refresh while on general tab
█▇▌▊▇▉▅▊ ▋▋▄ █▇▉▊▇▉█ ▋▆▇▇▆▇▇ ▍▅▊▇▍▄▇█▇ ▅▇▇▄▆ ▄▆█▍ ▉▄▌█▇ ▅▅▆ ▄▍▄▌▄▅▉ ▇▇ ▇▉▇▋▋▊▄▄▇▇▄█ ▅▊▄▍█▋▆█▉ ▋█ ▅▊▍███▅▅▌ ▋▍▋ ▊▄▅▋▇ ▌█▄ ▌▅▌▌▇ ▄▍▉█▆▌▋
Update: HttpImage - permit multiple requests for same url Fixes clurred images for overlay pages where first button shares sprite with full screen image but has different settings Tests: navigated to coconut underwear page - loaded both
Update: HttpImage - pick a higher mip, seems to look better when downsampled Tests: navigated to pack overlay page
Update: reimplement shop.unloadAssets convar Tests: set it to 0, navigated to shop and out, confirmed bundle was still loaded via listdynamic, set to 1, confirmed it was gone via listdynamic
Clean: get rid of icon precaching from store bundle All bundle assets are now loaded on demand, so this code was both useless and harmful Tests: navigated through store with failloads 1 - all images present
Clean: remove unnecessary extra unload when DLC tab closes/becomes hidden Tests: navigated to DLC tab with delay and failloads convars
Optim: lazy load fallback sprite for DLC item view Tests: opened DLC tab of store with failloads 0 and 1
Update: HttpImage - add support for different configured images from 1 url Fixes overlay page using downsampled mip for full screen image because 2 httpimage comps share an url Tests: navigated to crossbow pack overlay and clicked 2nd button
Bugfix: StoreItemOverlayPage - fix invalid refcounting - also get rid of gallery sprite fallback when loading from url Tests: inspected refcounts during opening and closing of overlay
Bugfix: HttpImage - avoid duplication of refcount Tests: inspected refcounts of textures after opening pack overlays
Bugfix: HttpImage - only flush stale texture cache when refcount is 0 Fixes sprites being nuked during some interactions Tests: navigated to pack overlay and clicked through bottom buttons
Optim: make StoreItemTile lazy load fallback sprite Tests: navigated to general tab with failload 0 and 1
Update: HttpImage - add option to use a best-fit mip - move httpimage comp to image on OverlayCarouselButton Tests: navigated to pack pages
Optim: convert overlay's carousel buttons to lazy load missing sprites - also cleaned some now-dead properties Tests: navigated to pack overlay page with both failloads 0 and 1
Optim: have StoreItemOverlayPage load main image from bundle only on fail Tests: navigated to pack page with failload 1, clicked through buttons
Optim: HttpImage - only load dynamic sprites if HttpImage failed to fetch - converted UI_StoreBackground to use it Tests: navigated to general store tab, tested with delay, fail load and fail-then-succeed load
Bugfix: HttpImage prefers sprites for CoverImage, fixes atlas being drawn Tests: inspected spawned UI tiles, they used sprite instead of texture
Bugfix: if 2 urls get requested and 1 throttled, make sure it goes via cache Tests: navigated to store -> general tab quickly, no exceptions
Merge: from main
Update: ran Update Urls again Looks like couple blurhashes got missed Tests: navigated to dlc page with httpimageloaddelay
Merge: from main
Optim: convert DLC tab leftovers to httpimage - ran Assign Bundle and Update Urls Tests: navigated to it with httpimagedelay and httpimagefailloads and normal - saw expected textures/blurs
Buildfix: missing files Tests:none
Update: added assetbundles.listdynamic for debugging Tests: checked output as I navigated through menus and connected/disconnected to server
Clean: get rid of forceOpen hack, use OnBecomeVisible instead Tests: clicked through store tabs, joined a server and toggled menu and various screens. disconnected
Optim: have HttpImage unload their images when store tabs are hidden Need to go through all the screens and verify they get unloaded correctly Tests: inspected general tab's grid contents while being ingame and toggling menu
Optim: HttpImage - mode texture decoding to worker threads - added WebUtil.DownloadTextureTemp that uses DownloadHandlerTexture - disabled texture activation rate limit Now only a tiny hitch is present Tests: navigated to store General tab
Optim: HttpImage - rate limit texture activation rate (2 per frame) Helps with General tab opening, but feels too limiting Tests: navigated to general tab of store
Update: Add HttpImage.MissingSprite - reroute all dynamic sprites to MissingSprite - added store.HttpImageFailLoads to simulate loading failure Tests: navigated store with failloads 1, skin tiles need fixing
Part 4/4
Part 3/4
Part 2/4
Bugfix(editor): StoreBundleTool - fix missmatching file extension, part 1/4 - ran Update Urls(force) Tests: navigated through store tabs, only 1 image failing to download
▍▆▄▅▉▋▆▇▆▅▇▉█▇▍ ▇▉▇▄▄▋▊▍▆▌▍█▇▆▅ ▉ ▋▊▉█▇▍▍▉ ▉▅ ▆▋ ▍▄ ▊█▇▇▍▋ ▌▄▌▊▆▇▌▆ ▊▇▍▄ ▅▉▊▍▌▍▉█▉ ▌█▍▉▌▍▆▆█ ▅▍▇▇ ▋▋▌▍▅▄▄▊▌▆ ▅▅▊▇▇▋ ▉▇▋▉ ▆▄▊▍▄█ ▇▊▄▆▆ ▍▊▌▌▍▅▌▌▉▇▌▄▆▋▇ ▆▉▌█▍ ▋▆▋▄ ▊▅▌ ▍▋▊ █▊▊▄▆█▋██▊ ▊▉▆ ▆▇▄▇▅▋▅▌ ▌▊▆ █▊▍▋▆ ▌▆ ▍▅▌▍▆▇ ▅█▌ █▄▇ ▋▆▆ ▄▉▋▊▋▋▅▉▋▊▍▇ ▉▉▉ ▍▆▊█▊█ ▇▇▄▊ ▅▋▌▋▌█▌▄ ▆▊▇ ▄▉▄ ▉ ▌▉▅▆▆ ▄▊▌▇▉▋▋▇
Clean(editor): StoreBundleTool - get rid of last Task usage Tests: ran Update Urls (force)
Update: StoreBundleTool - improvements and optims - add a "force" version of Update Urls, incase we got desync between local and remote states - only run blurhash generation for invalid(or bypassed) image hashes - shuffle task scheduling to run as much as possible in the background - support multiple asset path prefixes for cases not in the store folder Tests: ran Update Urls (force), most upload tasks timeout (rip)
Update: StoreBundleTool - fill in image upload logic - changed url format - ran "Update Urls" Tests: ran full Update Urls - manifest grabbing works, but uploading gets stuck
Merge: from main
Merge: from ui_store_slim_ram/blurhash - New: HttpImage now know how to render blurhash images as loading placeholders Tests: navigated through store
Merge: from main
Update: store DLC background is now dynamically loaded Tests: opened the page, saw it loading in. swapped tabs, opened pack views
Bugfix(editor): StoreBundleTool - fix bundle assignment setting stale bundle value to props Tests: ran it on a modified prefab
Update: convert store's general tab background images to be dynamically loaded from bundles and backend Tests: navigated to general tab and scrolled by. flipped between tabs
Bugfix: fix pack overlay missing images for buttons or main section Tests: clicked through a couple packs, clicked on all carousel buttons
Update: start saving image StoreITemOverlay's image URLs - adjust field naming so automation can find and fill in urls - ran automation Tests: navigated to bowless crossbow page, some textures are missing (expected)
Bugfix: ensure CoverImage is active when we succesfully load the image This makes FactoryDoor render correctly Tests: checked store for factory door
Update: fixup SkinTile to use CoverImage instead of RawImage - get rid of SkinTile_General that did above but used in only couple places Tests: navigated through all of store, everything looks correct, only barn door is missing (y tho)
Update: make store page fallback to assets from UI bundle if failed to load textures from backend - item tile now only initializes once it's shown (as was intended this entire time) - fixed duplicating OnImageLoaded callbacks - reactive cover image if httpImage failed Tests: navigated through store - right images are in place, but wrong layout. need to figure out how to unify it all