Skip to content

World Updates - #8787

Open
AnOwlBe wants to merge 36 commits into
SkriptLang:dev/featurefrom
AnOwlBe:WorldUpdates
Open

World Updates#8787
AnOwlBe wants to merge 36 commits into
SkriptLang:dev/featurefrom
AnOwlBe:WorldUpdates

Conversation

@AnOwlBe

@AnOwlBe AnOwlBe commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Problem

This PR aims to lay the foundation for migrating all world elements starting with the basics:
All world events, expressions and effects
The world class info

todo in a later PR:
Location related syntaxes
More chunk related syntaxes
Biome related syntaxes

Solution

Creates a world module

moves WorldBorderModule into it as a submodule

Moves the world class info from BukkitClasses into its own file in WorldModule and cleans it up a lot

Migrates additional world relating classinfos into WorldModule (like difficulty, moon phases, etc)

Syntax Changes:

  • EffLoadWorld
  • EffSaveWorld
  • EvtWeatherChange - now has [in %-worlds%] in pattern because why not
  • EvtWorldInit
  • EvtWorldLoad
  • EvtWorldSave
  • EvtWorldUnload
  • EvtChunkLoad
  • EvtChunkUnload
  • EvtChunkGenerate
  • EvtWorldSpawnChange
  • EvtLightningStrike
  • EvtPortalCreate
  • ExprDifficulty - now a PropertyExpression
  • ExprGameRule - now a PropertyExpression (though it may not want to be open to feedback)
  • ExprMoonPhase - now a PropertyExpression
  • ExprSeaLevel - now a PropertyExpression
  • ExprWorld - now a PropertyExpression
  • ExprWorldEnvironment - now a PropertyExpression
  • ExprWorldFromName
  • ExprWorldSeed - now a PropertyExpression (will need to be changed later on to be a type property due to the ambiguity of the pattern)
  • ExprWorldSpawn - now a PropertyExpression

Deleted:
Deleted ExprAllWorlds in favor of simply using supplier on the world class info (has no breaking changes from my testing)

Also adds a World.sk testing file to test all the expressions n such (since the tests for the expressions are like 2-3 lines I didn't see a point for them to be their own file)

Testing Completed

Manual testing completed for all events + all expressions + quickTest successful

was unable to have JUnitQuick run 'successfully' due to an error with the build version but that was the only error all others were fixed

Supporting Information

Might of forgot a few syntaxes do let me know


Completes: none
Related: none
AI assistance: none

@AnOwlBe
AnOwlBe requested a review from a team as a code owner July 21, 2026 06:25
@AnOwlBe
AnOwlBe requested review from Absolutionism and Burbulinis and removed request for a team July 21, 2026 06:25
@AnOwlBe

AnOwlBe commented Jul 21, 2026

Copy link
Copy Markdown
Contributor Author

removed deprecation for the cond and effect for pvp since I didn't realize that the gamerule for it was only added in 1.21.9

took me so long to figure out that was the issue..

Comment thread src/main/java/org/skriptlang/skript/bukkit/world/elements/events/WorldEvents.java Outdated
Comment thread src/main/java/org/skriptlang/skript/bukkit/world/WorldClassInfo.java Outdated
Comment thread src/main/java/org/skriptlang/skript/bukkit/world/WorldModule.java Outdated
AnOwlBe and others added 2 commits July 22, 2026 20:09
Co-authored-by: SirSmurfy2 <82696841+Absolutionism@users.noreply.github.com>
@AnOwlBe
AnOwlBe requested a review from Absolutionism July 23, 2026 00:12
@skriptlang-automation skriptlang-automation Bot added the needs reviews A PR that needs additional reviews label Jul 27, 2026

@Absolutionism Absolutionism left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Space Invaders in docs

@AnOwlBe
AnOwlBe requested a review from Absolutionism July 30, 2026 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs reviews A PR that needs additional reviews

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants