Commit Graph

268 Commits

Author SHA1 Message Date
c9d2a37903 Fix all possible data races
- Update to go 1.19 for new atomic types
- Use atomic for StitchedImage query counter
- Make sure that we don't copy any tile objects
2022-08-12 11:39:55 +02:00
65f7cb4e60 Improve stitching speed and resource usage
- Use QuickSelect algorithm for median filtering
- Use lists of uint8 instead of int for median filtering
- Fix GridifyRectangle
- Remove HilbertifyRectangle
- Add profiling.go
- Remove Profile.bat
- Add median blend tile-limit flag
- Print stitch duration
- Reduce StitchedImage cache image height
- Reduce StitchedImageCacheGridSize
- Improve StitchedImage caching
- Improve ImageTile caching
- Separate entity and entities
- Update stitcher README.md
- Add comments
2022-08-12 01:06:22 +02:00
c3f841a4ff Remove cleanup mode from stitcher 2022-08-11 11:59:53 +02:00
f5693b96f1 Remove old blend functions 2022-08-11 11:48:17 +02:00
df6c27924b Change from blend func to interface
- Combine all previous blend modes into one blend method
- Optimize BlendMethodMedian
2022-08-11 11:47:18 +02:00
3a73e13fb7 Refactor and improve stitcher
- Replace MedianBlendedImage with StitchedImage, a general implementation of a stitcher
- Don't use hilbert curve when regenerating cache image
- Cut workload rectangles to be always inside the cache image boundaries
- Rename stitch.go to main.go
- Add interface for overlays
- Change how overlays are handled and drawn
- Reduce error returns to simplify a lot of code
- Add several blend functions
- Remove offset field from image tile
2022-08-11 11:10:07 +02:00
7a4dbeddf1 Fix output pixel scale option
- When set to 0, correctly use the actual pixel scaling factor
- Scale player path by pixel scale factor
2022-08-11 10:56:24 +02:00
7d250d6405 Remove pre-render mode from stitcher & Cleanup 2022-08-10 21:04:17 +02:00
cd1428706e Update stitcher README.md 2022-08-10 20:47:59 +02:00
1e5249d436 Add player path tracking and drawing in live mode 2022-08-10 20:41:57 +02:00
0044075cbf Draw entities and their component's bounding boxes 2022-08-08 23:05:58 +02:00
9406b598f8 Change JSON number formatting to be more conform 2022-08-08 22:07:00 +02:00
6f2be8486e Fix image caching 2022-08-08 12:36:55 +02:00
baea6292f1 Test to disable mod detection 2022-08-08 02:54:48 +02:00
85144f4b8f Change free camera speed 2022-08-08 02:52:49 +02:00
99fd8ce94f Add more API functions to wrapper 2022-08-07 22:31:09 +02:00
23ca6ac8c3 Fix release not including submodules
- Github checkout action doesn't load submodules by default, enable that
- Update README.md
2022-07-31 20:59:16 +02:00
5884b49518 Prepare for 2.0 release
- Update README.md
- Add "Open stitch directory" button
- Add message box example
- Add example settings
2022-07-30 19:10:48 +02:00
1b767f9465 Update promptui to fix console input on windows 2022-07-30 12:23:40 +02:00
403167b366 Fix compatibility stuff
- Make dofile more conform to standard lua
- Move dofile from live-reload.lua to compatibility.lua
- Let dofile and require throw errors on script errors
- Fix bug in recursion detection
- Remove Noita's dofile annotation
- Fix some EmmyLua annotations
- Improve print replacement
2022-07-30 00:32:11 +02:00
e863ba459b Split UI message text to fit on screen 2022-07-29 22:49:12 +02:00
eb552537c2 Improve capturing
- Center viewport to grid cells, not chunks
- Check window size when taking screenshot
2022-07-29 22:48:42 +02:00
3fa95de8e6 Add capture grid size check
- Check if capture grid size is smaller than the virtual resolution
- Automatically close resolved messages
2022-07-29 20:44:36 +02:00
a2cb806ffa Add progress bar
- Change process runner to return state table
- Add progress bar graphics
- Add progress bar UI
- Fill progress runner context state with more capturing info
2022-07-29 19:42:44 +02:00
014cba54af Add mod setting to hide UI 2022-07-29 17:37:58 +02:00
62142101fc Make fog black 2022-07-29 16:57:45 +02:00
7ea4f058c8 Add mod setting for custom/fixed seed 2022-07-29 16:57:28 +02:00
6ab8903c9b Reset virtual offset when no custom resolution is set 2022-07-29 16:34:25 +02:00
9af974cb10 Add more game modifications
- Add more process memory based modifications
- Change virtual offset and border
- Set trailer mode with disable-shaders-gui-ai mod setting
2022-07-29 16:09:38 +02:00
b19c70c9d0 Disable screenshake by default 2022-07-29 15:29:15 +02:00
2f8a8b2718 Update coordinate transformation
- Get rid of hardcoded pixel perfect virtual offset
- Add virtual border parameter
- Update tests
2022-07-29 13:49:15 +02:00
bb6fb51ef9 Fix perk.lua override 2022-07-29 11:51:20 +02:00
b4a0b26dfd Add option to disable most post FX
- Add file patching logic
2022-07-29 11:29:14 +02:00
58803cad1d Add memory manipulation to set specific options
#14
2022-07-29 00:26:57 +02:00
83be64dd74 Fix SetCameraFree bugging up in OnWorldInitialized 2022-07-29 00:25:19 +02:00
b81fcd8417 Decrease timeout until wiggle 2022-07-28 23:05:25 +02:00
63dd11fd2d Add more checks & Other fixes
- Rename Check:Resolutions to Check:Regular
- Add check for virtual offset
- Add check if specific mod settings are changed
- Revert scope of resolution mod settings to "runtime"
- Add restart request message
- Set virtual and internal resolutions to default if no custom resolution is defined
2022-07-28 22:34:56 +02:00
98f663f200 Add more game modification options 2022-07-28 19:42:43 +02:00
cc7aa35627 Add capture mode to start capture button tooltip 2022-07-28 18:54:44 +02:00
fd7fb31338 Change when CameraBound component is removed
Remove CameraBound component when capturing entities, but not when modifying entities
2022-07-28 17:00:24 +02:00
25a28c8469 Change how DoesWorldExistAt is called
Use Noita's bounds, in the hope that Noita uses the same coordinates for chunk loading.
2022-07-28 14:18:01 +02:00
321208ba8a Query live capture settings while capturing
- Change default capture interval to 30 frames
- Add todo comments
2022-07-28 14:01:44 +02:00
c4e59156c8 Make more clear that force closing noita can corrupt saves 2022-07-28 13:29:10 +02:00
f79d48fdc0 Set camera free based on mod settings 2022-07-28 13:27:02 +02:00
2cd9f1fc76 Always modify Noita's virtual offset 2022-07-28 12:49:03 +02:00
6becf72420 Start entity capturing based on mod settings
- Rename disable-entity-components mod setting to modify-entities
- Add IsPlayer and IsInvisible methods to entity API
- Don't modify the player entity
2022-07-28 12:38:26 +02:00
640a241d38 Implement more capturing modes & Fix spiral 2022-07-28 12:06:47 +02:00
fac941a156 Add some default values to settings descriptions 2022-07-28 11:58:11 +02:00
84dba8a9fa Fix ctx.progressCurrent not being set 2022-07-28 11:57:47 +02:00
78b2812593 Display stacktrace with Message:CatchException 2022-07-28 11:56:14 +02:00