Scope
A lightweight and programmable cross-platform zoom mod for Minecraft. Currently supports both Fabric and NeoForge.
What?
This mod adds a zoom keybind (by default c) that allows the user to zoom in their view.
If you don't like the default "feel" of the zoom, you can configure it however you want.
Don't like any of the provided options? Scope includes a custom expression parser to allow near-infinite customizability.
Requirements
- (All platforms) YACL
- (Fabric only) Fabric Language Kotlin
- (Fabric only) Fabric API
- (Fabric only) ModMenu (optional)
- (NeoForge only) Kotlin for Forge
Contributing
Contributions are welcome, including translations. The source code is licensed under the MIT license. Feel free to report bugs or suggest new features on the issue tracker.
Originally a fork of OkZoomer v4, multiple rewrites ago. Some inspiration taken from both Zoomify and Do A Barrel Roll though I've never intentionally used code from either.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 8d ago | 1 | ||||
| 1mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
|
R
1.3.0
|
last yr. | 1 | |||
|
R
1.2.6
|
last yr. | 1 | |||
|
R
1.2.4
|
last yr. | 1 | |||
|
R
1.2.3
|
last yr. | 1 | |||
|
R
1.2.2
|
last yr. | 1 | |||
|
R
1.2.1
|
last yr. | 1 | |||
|
R
1.2.0
|
last yr. | 1 | |||
|
R
1.1.1
|
last yr. | 1 | |||
|
R
1.1.0
|
last yr. | 1 | |||
|
R
1.0.0
|
last yr. | 1 |
- Added support for 26.3 NeoForge
(No changes for other versions)
- Added support for 26.3 fabric
(No changes for other versions)
- Switched from Architectury to Stonecutter
- Removed multiplatform jar
- Ported to 26.3 Fabric (will be released once 26.3 out)
- Backported to 26.1.2 Fabric and NeoForge
- Backported to 1.21.11 Fabric and NeoForge
(Versions older than 1.21.11 will likely never be supported)
- Switched from Architectury to Stonecutter
- Removed multiplatform jar
- Ported to 26.3 Fabric (will be released once 26.3 out)
- Backported to 26.1.2 Fabric and NeoForge
- Backported to 1.21.11 Fabric and NeoForge
(Versions older than 1.21.11 will likely never be supported)
- Switched from Architectury to Stonecutter
- Removed multiplatform jar
- Ported to 26.3 Fabric (will be released once 26.3 out)
- Backported to 26.1.2 Fabric and NeoForge
- Backported to 1.21.11 Fabric and NeoForge
(Versions older than 1.21.11 will likely never be supported)
- Switched from Architectury to Stonecutter
- Removed multiplatform jar
- Ported to 26.3 Fabric (will be released once 26.3 out)
- Backported to 26.1.2 Fabric and NeoForge
- Backported to 1.21.11 Fabric and NeoForge
(Versions older than 1.21.11 will likely never be supported)
- Switched from Architectury to Stonecutter
- Removed multiplatform jar
- Ported to 26.3 Fabric (will be released once 26.3 out)
- Backported to 26.1.2 Fabric and NeoForge
- Backported to 1.21.11 Fabric and NeoForge
(Versions older than 1.21.11 will likely never be supported)
- Switched from Architectury to Stonecutter
- Removed multiplatform jar
- Ported to 26.3 Fabric (will be released once 26.3 out)
- Backported to 26.1.2 Fabric and NeoForge
- Backported to 1.21.11 Fabric and NeoForge
(Versions older than 1.21.11 will likely never be supported)
(I may or may not have scope-crept a little)
- Rebranded to Scope
- Updated to Minecraft 26.2
- Added a custom math expression parser
- Added a configuration migration system (finally)
- Added HUD fov option
- Added sine transition
- Added cubic transition
- Replaced most old zoom logic with configurable expressions
- Overhauled the config screen and added a fallback for when YACL is not present
- Improved zoom responsiveness (update each frame instead of each tick)
- Rewrote and cleaned up most mixins
- Fixed some transitions being framerate-dependent
- Fixed spyglass overlay behaving different from vanilla spyglass
- Fixed mouse modes not accounting for zoom level
- Updated to Minecraft 1.21
Note that this release is Fabric-only, as not all dependencies for the NeoForge version have updated to 1.21 yet
- Dropped MinecraftForge support
- Updated to Minecraft 1.20.6
- Fixed zoom transitions being dependent on framerate
Note that this release is Fabric only (no NeoForge) due some to dependency issues. Will hopefully have a NeoForge version sometime Soon™
- Bump Fabric Loader to
0.15(0.14should still work) - Bump NeoForge to 1.20.2 stable (
20.2.86) - Update other dependencies
NeoForge is still dependent on an unfinished YACL pull request, and as such is still experimental.
- Bump Fabric Loader to
0.15(0.14should still work) - Bump NeoForge to 1.20.2 stable (
20.2.86) - Update other dependencies
NeoForge is still dependent on an unfinished YACL pull request, and as such is still experimental.
- Bump Fabric Loader to
0.15(0.14should still work) - Bump NeoForge to 1.20.2 stable (
20.2.86) - Update other dependencies
NeoForge is still dependent on an unfinished YACL pull request, and as such is still experimental.
- Added
/fabrizoomcommand to open the configuration GUI from in-game - Added Forge support through Architectury
- Added NeoForge support through Architectury
- Note that **NeoForge support is experimental**, and depends on [this pull request to YACL](https://github.com/isXander/YetAnotherConfigLib/pull/128) which has yet to be merged.
- Migrated from Yarn to Mojang mappings
- Rewrote a lot of the mouse modification mixin logic, which should fix some compatibility issues
- Use kotlinx.serialization instead of Configurate.
- Shrank jar size from 3MB to about 100KB
- All existing config files will not load, however they will *not* be overwritten.
- Only stores values changed from default
- Updated various dependencies
- New versioning scheme now includes target Minecraft version
- Made some configuration sliders more granular
- Removed dead CurseForge links
- Added
/fabrizoomcommand to open the configuration GUI from in-game - Added Forge support through Architectury
- Added NeoForge support through Architectury
- Note that **NeoForge support is experimental**, and depends on [this pull request to YACL](https://github.com/isXander/YetAnotherConfigLib/pull/128) which has yet to be merged.
- Migrated from Yarn to Mojang mappings
- Rewrote a lot of the mouse modification mixin logic, which should fix some compatibility issues
- Use kotlinx.serialization instead of Configurate.
- Shrank jar size from 3MB to about 100KB
- All existing config files will not load, however they will *not* be overwritten.
- Only stores values changed from default
- Updated various dependencies
- New versioning scheme now includes target Minecraft version
- Made some configuration sliders more granular
- Removed dead CurseForge links
- Added
/fabrizoomcommand to open the configuration GUI from in-game - Added Forge support through Architectury
- Added NeoForge support through Architectury
- Note that **NeoForge support is experimental**, and depends on [this pull request to YACL](https://github.com/isXander/YetAnotherConfigLib/pull/128) which has yet to be merged.
- Migrated from Yarn to Mojang mappings
- Rewrote a lot of the mouse modification mixin logic, which should fix some compatibility issues
- Use kotlinx.serialization instead of Configurate.
- Shrank jar size from 3MB to about 100KB
- All existing config files will not load, however they will *not* be overwritten.
- Only stores values changed from default
- Updated various dependencies
- New versioning scheme now includes target Minecraft version
- Made some configuration sliders more granular
- Removed dead CurseForge links
The versioning scheme for this release is absolute garbage, the mod version will start including the target Minecraft version with 2.0 ((Neo)Forge support coming soon :D)
- Added Spyglass zoom overlay option
- Bumped config version (was
1, now2) - Don't render completely transparent zoom vignette overlay while not zooming
- Fixed some deprecation warnings
- Updated dependencies
- Updated to 1.20.2
- We don't talk about 1.2.5*
- Added Traditional Chinese translation (Thanks StarsShine11904)
- Updated dependencies
- Updated to 1.19.4
YACL 2.2.0 broke the config screen which has been fixed.
- Added Chinese translation (Thanks GodGun968)
- Updated dependencies
- FabriZoom **no longer bundles [YACL](https://github.com/isXander/yetanotherconfiglib)**
- Updated to 1.19.3
- Fixed bad range for zoom divisor min and max
- Fixed presets not actually applying with the new config screen
- Added toggle for zoom scrolling
- Added toggleable zoom spyglass noise
- Migrated from SpruceUI to YACL for the config screen
- Allow wider range of mouse sensitivity
- Updated dependencies
- Fixed some cases of the config button not appearing in ModMenu
- Fixed application of presets not updating displayed values
- Added Optifine Zoom Preset
- Config screen now exits when a preset is applied (temporary fix)
- Fixed existing configuration files not loading, effectively breaking configuration
- Added zoom presets (Default, Cinematic, and Quick Toggle)
- Added some internal documentation
- Fixed broken links in mod description
- Converted most of the code to Kotlin
- Replaced Fiber with Configurate
- Replaced Cloth Config with SpruceUI
- Updated mixins with logic from LibZoomer