
Support
Need help? Join the Discord server here!
About
PMWeatherAPI is an unofficial API designed to simplify interacting with ProtoManly's Weather Mod for those who want to create addons.
Current features:
- Nearby Storm Detection
- Nearby Radar Detection
- Custom Radar Modes
- Radar Overlays
- Storm Builder
- Color Maps
- Events
⚠️ This API is currently experimental due to PMWeather still being in alpha. Bugs should be expected. The API will aim to stay updated with PMWeather as closely as possible.
Make sure you only use the API version that matches your PMWeather version (e.g., 0.14.15.0 works with PMWeather 0.14.15-alpha but may not work with other versions).
Adding to Your Project
In your build.gradle, add the following:
repositories {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
maven {
name = "DU Maven"
url = "https://maven.digitalunderworlds.com/snapshots/"
}
}
dependencies {
implementation "maven.modrinth:protomanlys-weather:${pmweather_ver}-alpha"
implementation "net.nullved:pmweatherapi:${pmweatherapi_ver}"
}
In your gradle.properties, add:
pmweather_ver=0.15.1
pmweatherapi_ver=0.15.1.0
For usage examples and more details, check out the wiki.
All Versions
+ Add Version- Fixes a transparency issue that got overlooked on accident. Should be fully opaque now when "Transparent Background" is off, and transparent when on
- Add new debugging overlays
- Sorted config into sections
- No longer register ID Overlay by default
- Updated how radar modes react to the Transparent Background option
- New "Lower Radar" option
- Increased max radius in /storages
- RenderType for Radar is back to TRANSLUCENT_TRANSPARENCY
- Added back Vorticy Events
- Added StormEvent#getStormType and #isClientSide
- Added VorticyEvent#getWeatherHandler and #isClientSide
- Refactored all storages into the storage and client.storage packages
- Added a range upgrade storage, get it with PMWStorages#rangeUpgrades and PMWClientStorages#rangeUpgrades
- Removed StormType, use PMWeather's StormType
- Update to PMWeather 0.16.4
- PMWeatherAPI is now able to run in the next PMWeather version in order to allow its use while an official update is pushed
- Fixed IRadarOverlay#placeOnRadar
- Update to PMWeather 0.16.3
- Should now render radar when PMShaders is enabled
- Fixed MIXED_REFLECTIVITY and SNOW_REFLECTIVITY ColorMaps
- Removed old version check from 0.16.1 and previous versions
- PMWAPI now only supports the version of PMW it is designated for
- Update to PMWeather 0.16.2
- Register with PMW's AddonHelper
- Removed PMWSavedData
- Added RadarMode#isCustom
- Added a bunch of IRadarOverlay helper methods for easier pose management
- Added a new debug overlay when the Debug option is on
- Disabled the transparency config option
- Changed how RadarOverlays are registered. No longer needs a supplier for registration
- Added ability to unregister overlays at any time by its ID
- Added some helper methods to RadarRenderData
- Fix Darken Biomes on Radar option
- Fix PMW debugging modes
- Switch from RenderType#entityCutout to a custom one with no culling for rendering on both sides
- Update to PMW 0.16 (no 0.16.0.X version since PMWAPI was not updated yet)
- Add MIXED_REFLECTIVITY, SNOW_REFLECTIVITY, SST, and HURRICANE_WINDSPEED color maps
- Add some more utility methods to IRadarOverlays
- Renamed RenderData to RadarRenderData
- RadarRenderData#blockEntity is now a RadarBlockEntity
- Changed NearbyRadars#radarsNearBlock to use RadarStorage#getAllWithinRange
- Added some more options
- PMWClientStorages#RADAR_MODE_COLORS now uses a RadarBlockEntity as the key
- Start transitioning from Colors to integers
- Deprecated StormType in favor of PMW's StormType
- Removed StringValue and StringProperty
- Removed SolarEverest
- and more...
- Added a client setting to disable radar overlays when the radar is in debugging mode. On by default
- Added IStorage#forAll, IStorage#forAllWithinRange, IStorage#forInChunk, IStorage#forInAdjacentChunks
- Added 'on' property to RadarStorageData
- Fixed ID overlay
- Storages should be complete or near complete
- Storages allow you to save data in a format of your choice so that the data can be read even when chunks are not loaded. Useful for things such as showing radar positions in unloaded chunks (Radar Networks coming soon!)
- Added storages for Metars (Weather Stations) and WSR-88Ds
- Added #renderTexture methods to Radar Overlays
- Added RadarMode#disableBaseRendering to disable the defualt pixel renderer (Needed by Hezi for Radar Overhaul)
- And a bunch more stuff that I don't to write right now
- Fixed a crash when the WSR-88D lookup had something other than a block entity which returned null
- Fixed a bug where 2+ radars would fight over terrain to show
- Fixed badlands radar color
- Fixed duplicate property crash
- Added shift + rclick functionality
- No more flashing should occur where the terrain shows on radar for 1 tick
- Updated README with instructions for adding PMWeather
- Made 0.15.X.X able to load with any PMWeather 0.15.X version
- Added ColorMap#getWithBiome
- Added ColorMaps#IR
- ID Overlay now shows all enabled overlays
- Added StormType filtering to NearbyStorms
- PixelRenderData now has a Vec3 worldPos parameter
- RenderData now has a sizeRenderDiameter property
- Added RadarMode#IR
- Added new parameters smoothWidth, cycloneWindspeed, and smoothWindspeed to StormBuilder
- Added StormType util enum
- Added RadarModeProperty which just makes more sense
- PMWExtras#RADAR_MODE is now a RadarModeProperty
- Added PMWUtils#isRadarAdjacent
- Added arguments that can be passed to radar overlays
- Added IRadarOverlay#getRadarMode and IRadarOverlay#renderText methods
- Added RadarMode#getId
- Added two new client config settings to show radar mode IDs (for debug use)
- ColorMap optimizations
- Client Config
- Changed radar pixel id calculation to work with PMWeather 0.14.16
- Added Custom Radar Modes
- Added PixelRenderData for CRMs
- Added ColorMaps, a ColorTables equivalent
- Added StringProperty for storing string values in BlockStates
- Added logo
- Updated neoforge.mods.toml
- Added a new Storm Builder
- Added 7 new events
- Fixed a critical bug w/ S2CRadarsPacket
- Updated overlays to take a new canRender parameter
- Now compatible with dedicated servers (oops)
- Overhauled how radars are saved to be compatible with servers
- Refactored Storms to NearbyStorms
- Fundamental changes to how the client accesses data. See wiki for updated information
- Rewrote the Radar Overlay system
- Added more javadocs
- Updated
RadarOverlayexample - Added Nearby Storm Detection support for multiple dimensions
- Added Nearby Radar Detection helper functions taking in a
ResourceKey<Level>instead
- Nearby Storm Detection
- Nearby Radar Detection
- Radar Overlay API