SkyChanger - Change the color of your personal sky

This is a discussion topic for the Ore project, SkyChanger. View the full project on Ore for downloads and more information.


Resources

Wiki | Source | Dev Builds | Issue Tracker​

SkyChanger is a light-weight plugin for Bukkit and Sponge. The main function of this plugin is to change the color of the sky for yourself, a specific player, or everyone. This plugin functions by sending a packet with a specified ID to the target player(s). Screenshots of this are posted below.

Every packet number that is not 0 will cause rain to appear, and higher magnitude packer numbers increase the intensity of the rain. For an optimal experience it is recommended to use this plugin with Optifine and to turn rain and rain particles off. If this is not possible or inconvenient, rain is automatically turned off in Desert and Mesa biomes. You may want to use this plugin exclusively there.

A Developer API is provided and actively maintained. More details on this are provided on the wiki.

Donate

Features

  • Allow players to change the color of their personal sky.
  • Change the sky color for specific players.
  • Change the sky color for everyone online.
  • Freeze/Unfreeze yourself, others, or everyone online.
  • Configurable limits to the range of packets that can be sent.
  • Usage messages tailored to specific users based on permission level.
  • Multilanguage support.
  • Metrics tracking by bStats.
  • Developer API with Maven and Gradle support.
  • For more information and details on this plugin, including command usages and permissions, you may consult the wiki page.

Wiki Contents

Display Videos

English

ServerMiner Display Video

Display Video

Spanish (Español)

Spanish Display Video

FAQ

Where can I find more information about this plugin?

We keep our wiki page updated to reflect the latest and most useful information about this plugin. If you have further questions don’t hesitate to ask the developer.

How can I report an issue or request a feature?

You may use our issue tracker to report issues and request new features be added. If you need immediate support you may also try contacting the developer directly.

Discord Consider also joining our Discord Server.

Which version should I use?

You should try to use the version uploaded here on the Sponge page. All versions posted here are considered releases and have undergone extensive testing.
Dev builds are also provided, however they are usually unstable and not feature complete. Only use these builds if you are interested in testing new versions or if for some reason you need the absolute latest changes.

Can I use this plugin without Optifine?

Yes, you can, although higher magnitude packet numbers will cause more rain particles to appear on your client which will lag you out eventually no matter how powerful your computer is. These affects are disabled by the client automatically in the desert an mesa biomes so you may want to ensure that a player is in one of those two before modifying their sky.
If you are able to use Optifine the setting you should turn off is Options > Video Settings > Animations > Rain Splash. You could also turn off the rain however the rain splash is the main source of lag.

Can I use SkyChanger in my language?

Yes, you can! If your language is already supported, all you need to do is select it in your config.yml. If your language is not supported, is missing a translation, or has an incorrect translation, you may submit translations using this guide.

Please consult the wiki file for information on the Developer API.

Screenshots

All screenshots taken with Optifine and with both rain and rain particles off.


Packet 0 at Night


Packet -1 at Night


Packet 0 at Day


Packet 2 at Day


Packet 3 at Day


Packet 4 at Day


Packet 5 at Day


Packet 6 at Day


Packet 7 at Day


Packet 8 at Day


Packet 15 at Day


Packet 7 with NightVision at Day


Any magnitude larger than 3.4028236E38 at day


Packet -1 at Night while Frozen

View SkyChanger on Spigot

View SkyChanger on DevBukkit

A new version has been released for SkyChanger, it is available for download here.


Release 2.0.1

This minor release upgrades bStats to v1.4. Older versions of bStats do not comply with Sponge’s Ore Plugin Submission Guidelines.

Dependency Upgrades

A new version has been released for SkyChanger, it is available for download here.


Sponge Release v2.0.2

Fixed minor issue causing /help to fail.

Changes

A new version has been released for SkyChanger, it is available for download here.


Release v2.1.0 - Added Radius Argument (-r)

This release adds a new argument to the change sky and freeze commands. You can now target all players within a specific radius. To do this, use the -r flag.

Ex. /skychanger 3 -r 150

This flag requires additional permission.

Ex.

  • skychanger.changesky.radius.* Access to the radius flag for any radius.
  • skychanger.changesky.radius.150 Access to the radius flag for any value up to 150.

Commits

A new version has been released for SkyChanger, it is available for download here.


Release v3.0.0 - More Sky Color Options

This release modifies the base command to add an additional optional parameter. Japanese is now a supported language.

/SkyChanger <#> [#]

The second number sends an additional packet to the client, which can be combined with the first number for more color possibilities. This argument is optional, and can be omitted. Note that if it is not present, the second packet will not be sent altogether.

Ex.

/SkyChanger 4 = red

/SkyChanger 4 10 = light blue

/SkyChanger 4 = light blue (second packet is unchanged)

/SkyChanger 4 0 = red (second packet is reset to 0)

This release also includes a large refactor of the codebase, moving all the core functionality to a core module. This will make maintenance easier in the future, as most of the code will only need to be edited in one place. This refactor includes some API changes.


API Changes

Breaking Changes

There is now a single API class for both implementations. Each implementation will have a SkyChanger class which can be used to grab the implementation-specific version.

com.dscalzi.skychanger.bukkit.api.SkyAPI -> com.dscalzi.skychanger.core.api.SkyAPI

com.dscalzi.skychanger.sponge.api.SkyAPI -> com.dscalzi.skychanger.core.api.SkyAPI

The API functions now take an IPlayer as an argument. New usage:

api.changeSky(SkyChanger.wrapPlayer(player), 3F)

New Features

You can now send two packets to change the sky color. Each packet is represented by the new SkyPacket enum.

  • SkyPacket.FADE_VALUE = Original packet (id 7)
  • SkyPacket.FADE_TIME = New packet (id 8)

SkyAPI offers a new function allowing you to change the packet.

boolean changeSky(IPlayer player, SkyPacket packet, float number);

ex.

api.changeSky(SkyChanger.wrapPlayer(player), SkyPacket.FADE_VALUE, 4F)

Other changes

A new version has been released for SkyChanger, it is available for download here.


Release 3.1.0 - Added French Language Support

This release adds support for the French language (fr_FR). bStats has also been updated to v1.7

Commits

A new version has been released for SkyChanger, it is available for download here.


Release v3.1.1 - Added French Language Support

This release adds support for the French language (fr_FR). bStats has also been updated to v1.7

SkyChanger-Core is now properly exposed as an api dependency, so you shouldnt have to include it as a separate dependency anymore.

Commits

A new version has been released for SkyChanger, it is available for download here.


Release v4.0.0

This release adds support for Spigot 1.16.x. Sky change functionality is fully supported. The freeze feature is partially supported, as the desired effect is only produced sometimes.


API Changes

Breaking Changes

The SkyPacket enum values have been changed to more accurately reflect what they represent.

  • SkyPacket.FADE_VALUE -> SkyPacket.RAIN_LEVEL_CHANGE
  • SkyPacket.FADE_TIME -> SkyPacket.THUNDER_LEVEL_CHANGE

Other notes

  • The Bukkit SkyChangeImpl class has been refactored to be easier to maintain and understand. This refactor has been tested on all versions from 1.8 to 1.16.
  • The 1.15 freeze warning has been removed as the feature seems to be working as expected on that version.
  • Added a freeze warning to 1.8 as the player is still able to move. The chunks are still unrendered, so it is partially supported.

Commits

A new version has been released for SkyChanger, it is available for download here.


Release v4.0.1

This release adds support for Spigot 1.16.2. Sky change functionality is fully supported. The freeze feature has been updated and is only partially supported on 1.16.x.

No sponge-specific changes in this version.


Commits

A new version has been released for SkyChanger, it is available for download here.


Release v4.0.2

This release changes the target spigot version from 1.16.2 to 1.16.5. The target Sponge API version has been increased from 7.1 to 7.3. This also includes an upgrade of bStats.


Commits

A new version has been released for SkyChanger, it is available for download here.


Release v5.0.0

Notes on 1.17+

Sky change functionality is not possible as of 1.17. This plugin can only be used on versions 1.8-1.16.

Sponge 1.16.5 (API 8)

SkyChanger has been updated to Sponge API 8 and 1.16.5. For 1.12.2 and API 7, remain on SkyChanger 4.x.x. The plugin will not be updated to API 9 as sky change functionality is not possible as of 1.17.

Changes

A new version has been released for SkyChanger, it is available for download here.


Release v5.0.0

Notes on 1.17+

Sky change functionality is not possible as of 1.17. This plugin can only be used on versions 1.8-1.16.

Sponge 1.16.5 (API 8)

SkyChanger has been updated to Sponge API 8 and 1.16.5. For 1.12.2 and API 7, remain on SkyChanger 4.x.x. The plugin will not be updated to API 9 as sky change functionality is not possible as of 1.17.

Changes

A new version has been released for SkyChanger, it is available for download here.


Release v5.0.1 - Fix Sponge API 8 (1.16.5) Compatibility

Notes on 1.17+

Sky change functionality is not possible as of 1.17. This plugin can only be used on versions 1.8-1.16.

Sponge 1.16.5 (API 8)

Sponge has introduced incompatible changes to their API 8. SkyChanger has been updated accordingly.

Changes