Conditions
Last updated Sep 18, 2026
Conditions
Conditions control when a player may use a portal. Multiple conditions on one portal typically must all pass (AND logic). Expression-based rules add OR and NOT support.
Commands
| Command | Purpose |
|---|---|
/st setcondition <portal> <condition> |
Replace conditions with one weather/item rule |
/st addcondition <portal> <condition> |
Add another weather/item rule |
/st removecondition <portal> <condition> |
Remove one condition |
/st removecondition <portal> all |
Clear all conditions |
/st setcondition and /st addcondition accept: day, night, rain, thunder, clear, sun, storm, item.
Other rules (level, sneak, flying, world, biome, gamemode, playtime, advancement, nearby players, and more) are set through /st manage or the GUI.
Permissions:
st.command.setconditionst.command.addconditionst.command.removecondition(defined inplugin.yml)
Time and Weather
| Condition | Description |
|---|---|
day |
Daytime only |
night |
Nighttime only |
rain |
Raining |
thunder |
Thunderstorm |
clear |
Clear weather |
sun |
Via command: adds DAY + CLEAR. Via GUI SUN token: clear weather only |
storm |
Rain and thunder together |
/st setcondition arena day
/st addcondition arena thunder
Player State (list tokens)
Stored and checked as uppercase tokens (GUI / manage chat):
| Token | Description |
|---|---|
SNEAK |
Player must be sneaking |
FLYING |
Player must be flying (creative/spectator fly) |
SOLO |
Only one player online on the server |
SUN |
Clear weather (GUI token) |
CLEAR |
Clear weather only |
Level
Stored as LEVEL <n> (minimum XP level).
Set via GUI Add Condition → LEVEL, or /st manage <portal> conditions add-level (chat mode).
Example stored value: LEVEL 30
Environment (list tokens)
| Token | Stored format | How to set |
|---|---|---|
| World | WORLD:<world_name> |
GUI or /st manage … add-world |
| Biome | BIOME:<biome_key> |
GUI or /st manage … add-biome |
| Gamemode | GAMEMODE:<mode> |
GUI or /st manage … add-gamemode |
Nearby players (list tokens)
| Token | Description |
|---|---|
PLAYERS_MIN:<n> |
At least n other players within 10 blocks |
PLAYERS_MAX:<n> |
At most n other players within 10 blocks |
(GUI labels these “MIN_PLAYERS” / “MAX_PLAYERS”; stored as PLAYERS_MIN: / PLAYERS_MAX:.)
Items and Money
Items
/st setcondition treasure item DIAMOND 5
/st addcondition quest item ENDER_PEARL
Checks inventory. Does not consume items (use /st setcost to charge items).
Money (balance check only)
Money balance checks are set through the management UI / GUI (not /st setcondition money). They check Vault balance and do not charge the player. See Economy for /st setcost.
Advancement and Playtime
| Token | Description |
|---|---|
ADVANCEMENT:<key> |
e.g. ADVANCEMENT:minecraft:story/enter_the_end or ADVANCEMENT:enter_the_end |
PLAYTIME:<hours> |
Minimum playtime in hours (Statistic.PLAY_ONE_MINUTE) |
Set both via GUI / manage chat prompts. Example: PLAYTIME:10 requires 10 hours of playtime.
Advanced Conditions (Management UI)
These are available through /st manage (GUI or chat) and stored on the portal:
| Category | Examples |
|---|---|
| Health and food | Min/max health, min/max hunger |
| Equipment | Armor type, weapon in hand, naked, full armor set |
| Player state | Jumping, on fire, sprinting |
| Social | Min/max nearby players, solo only |
| Time windows | timeRange, dateRange in portal data |
| Usage limits | maxUsesPerDay |
Combining Conditions
Stack weather/item rules with addcondition, and other rules via manage/GUI:
/st addcondition boss night
/st addcondition boss item DIAMOND_SWORD 1
# Level 20: GUI Add Condition → LEVEL, or /st manage boss → Conditions
All listed conditions must pass.
Expression Conditions (1.0.1+)
Portals can use a condition expression for nested logic:
(player_level>=10 AND has_permission:st.portal.use.vip) OR is_admin
Supported tokens include:
is_adminhas_permission:<node>player_level>=<number>andplayer_level><number>online_players>=<number>server_tps>=<number>- Condition tokens such as
DAY,NIGHT,RAIN,MONEY <amount>
Expressions are evaluated together with standard portal conditions.
RTP portals
RTP teleports run the full ConditionChecker pipeline (same as standard portals), including list tokens and portal field conditions.
Management Interface
/st manage <portal>
Open Conditions in the GUI (when gui.enabled is true) or follow the chat category buttons when GUI is disabled.
Type cancel in chat to abort any prompted input.
Deleting a condition (GUI or manage confirm) removes it by list index, so duplicate entries are removed safely.
Next Steps
- Economy to charge players at the portal
- Portal Types for RTP and one-way behavior
- Commands and Permissions for the full command list