File Details
AmbienceMini [1.20.1 - 2.5.0].jar
- R
- Apr 13, 2026
- 597.40 KB
- 63
- 1.20.1
- Forge
File Name
AmbienceMini-1.20.1-2.5.0.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
Version 2.5.0:
This is the biggest update to Ambience Mini yet which introduces a system for configuring named areas (or regions) which can be used for music selection. Staying true to the philosophy of "no server-support required to run", the area system works regardless of whether the server has the mod installed or not. If no server-support, the server-dependent features are simply disabled.
The configuration language has also been extended a lot to make it more usable and flexible, but while retaining the original simplicity. Beware of breaking changes to the configuration language syntax as described below. Finally new events and properties have been added as described below.
Area system:
- Added a client-side-based system for configuring areas.
- Areas can always be stored locally (stored separately from world; sensitive to world and server names).
- With server support, areas can be stored within the world and optionally shared with other players.
Events and Properties:
- Added
$areasproperty which contains a list of all areas the player is currently touching.
$areasis ordered by the volume of areas in increasing order (first area is the smallest).
- Added
$uuidproperty for getting the id of the player. (Can be used to check area ownership.) - Added
@warden_nearbyevent which is active when a Warden is within 32 blocks (2 chunks) of the player.
- Note: This event is only available from Minecraft 1.19 and up.
- Added
$structuresproperty which contains a list of the ids of all structures that the player is in.
- Note 1: even if the "structure blocks" are removed, the "structure bounding box" still exists.
- Note 2: it is a bit difficult to get a sensible hitbox for structures and some structures' hitboxes might be a slightly off. If so, feel free to report where this happens.
- Important:
$structuresrequires server support to function. If no server-support, then$structures == undefined.
Configuration language:
- Breaking change: Changed the syntax for
all/any [x] in [list] **where** [condition] endtoall/any [x] in [list] **has** [condition] end - Added indexing operator
[]for lists where the first element has index0. Example:list[0]. - All values in the configuration language can now have an "undefined" value.
- For example,
list[n] == undefinedif there is no element at indexnin the list. - Also, if no world is currently loaded, events such as "@rain" will also have
@rain == undefined.
- Added the constant
undefinedwhich can be of any type. - Added operator
[value] *~ [regex]for matching strings with regular expressions (using Java regex syntax). - Added more number-comparison operators:
<=,>, and>=. - Added unary operators for logical not
!and for number negation-. - Added field access notation
value.field.
- As an example
area.namegets the name of an area, whereasarea.ownergets the owner's id (if the area is owned).
- Added
let [name] = [value] in [schedule]for introducing named values in a schedule.
- This allows the values of expensive events and properties for reuse in multiple checks.
- Fixed bug in list equality check where equality was only checked up to the length of the shortest list.
Other:
- Many big and small improvements and fixes.

