Tags
Creators
Details
Licensed GPL-3.0-or-later
Published last year
Updated last month
All versions
7.5
Release
Splintered Worlds - Phase 1last month 25
Uploaded by
Compatibility
Minecraft: Java Edition
26.3-snapshot-9
26.2
Platform
Data Pack
Changes
Plate Havoc | Splintered Worlds - Phase 1 / 3 [26.2+] (R7.5)
Additions
- 10+ Upgrades.
- 10+ Curses.
Difficulties
- Added 3 difficulties to select.
- Sunlight - Chiller, less frequent events. Double Cyclathron Yield. Get Oak Effigy upgrade; one-use extra life. Curses every 2 Cycles.
- Moonlight - Base difficulty.
- Eclipsed - Changed mechanics for Events and Cards. Cheaper shops and greater rewards. Deeper Curses start by Cycle 5.
Changes
Gameplay
- Players now have 0.6x Air Drag.
- Time is now capped at 1000s max.
- Time will be multiplied back into a positive number if negative.
- Losses do not occur if there are respawning players.
- Any instance of movement detection is now based on keyboard inputs instead of current player speed
- Intermission has been changed:
- Time is now 25 seconds.
- Paused on singleplayer
- Players can choose to accelerate the time if half the players vote via the sprint key.
- Starts the game immediately if all players voted.
- Time is now 25 seconds.
- Balance changes and price adjustments.
- Players get a 0.5s selection delay when moving to a new card type or when a selection has been made.
Technical
- The following function data is now contained inside of
plate_havoc:data functionsticktick_spectatorset_plateon_actionlast_standend_conditionleaderboard.sort_typeleaderboard.credit_loopleaderboard.credit_start
- Game now restarts if gametype loading exceeded 45 seconds.
- Active Card Types dont reset when the cycle ends.
- Renames to visual game end data.
plate_havoc:ui game.end.queue->plate_havoc:ui game.end.inputplate_havoc:ui game.end.visual->plate_havoc:ui game.end.output
- Spectator Energy has been moved out of base.
- Added
init_statusto extension format - Boolean. If the initial status when being loaded for the first time should be true/false. Defaults to true. - Added
#Playing plate_havoc.statusscore - Controls if systems for events, cards, player behaviour and end conditions should run. plate_havoc:data functions.leaderboard.sort_typeis now a compound withtypespecifying result entry data. (cycle=<entry>.data.cycle.scaleis optional.- Moving around during intermission will make prevent any dialog popups.
- Changing card types no longer force opens the dialog for players that have the
plate_havoc.dont_force_dialogtag.
Modifiers
- Modifiers has moved to the gametype format as
modifiersstatus| Boolean. If modifiers can appear. Enabled by default.chance| Int. Chances of a modifier. Defaults to 5.attempts| Int. Attempts at getting any modifier. Defaults to 3.
Card Data
costis now Compound.- Added
base- Former function ofcost, being the price of cards. Optional. - Added
scale- Scale applied on the pricing of additional stacks. Defaults to 1. - Added
solo- Price on solo. Prioritized overbaseand used byscaleif used. Optional.
- Added
rewardis now Compound.- Added
base- Former function ofreward, being the reward given upon selection. Optional. - Added
scale- Scale applied on the reward of additional stacks. Defaults to 1.
- Added
namecan now be a translatable key, prioritized before setting name as text.- Exclusive changed:
exclusiveis now Compound.values- Former function ofexclusive, list of all cards to remove upon selection.hidden- If the card should be hidden from display when hovering over the exclusive list of associated cards. False by default.
- The card now automatically adds itself if not present to any of the exclusive card's exclusive list.
- Can be bypassed if
allow_one_waysis set totrue
- Can be bypassed if
- Removes other exclusive cards in selection when picked.
- Requirements changed:
- Added
advancementtype.- Contains
value- Check if any player has specified advancement unlocked. - Removes itself upon succeeding.
- Contains
- Renamed
cycletovalueintype:cycle - Renamed
intensitytovalueintype:intensity countno longer required inside ofneededentries fortype:card
Card Type Data
- Added
multiple_of->requirements- List containing all requirement types.type:cyclevalue- Replaces function ofmultiple_ofmin- Integer. Minimum Cycle requirement. Optional.
type:functionvalue- String. Points to function.
- Added
function- Runs specified function. colour->colours- Compound containingcolorandshadow_color.
Seeds
- Now relies on macros and the usage of /random.
- Data is stored in
plate_havoc:data seedstorage..valueis the seed.min(for ranged) andmaxis expected in a compound structure when using the PRNG functions.
- Data is stored in
- More random though is still replicatable in the right conditions.
Custom Attributes
- Added
values- Moved
basetovalues - Added
min- Lowest the value can be. Optional. - Added
max- Highest the value can be. Optional.
- Moved
- Changed the
storagetype inupdate- Added
scale- Scales the score for the output. - Added
numeric_type- If output should be an Integer, Float, Double, Long or Short or Byte.
- Added
End Conditions
- Improved handling of a game over.
- Added card function type:
plate_havoc:prevent_end- Added function:
plate_havoc:misc/cards/running/types/run_one- Runs the oldest active card, removing it.
- Added function:
- Respawning players will prevent a game over.
- Added card function type:
Bossbar Overhaul
- Various changes to
barinplate_havoc:ui.queue->.global.snbt- SNBT to be displayed globally.- Added
.global.data- Information about the bossbar..colourmoved to.global.data.colour
- Added
.global.data.style- Bossbar style. .visual.visible->.output- Output of.global.snbt- Removed
.visual.activeand.visual.inactive
- Changes to base format.
- Entries in
.extrashould havemeta,textand onlyextrato include SNBT.
- Entries in
- Added support for individual bars.
- Players now have individual bars with the ability for player-specific text components.
- Non-alive players can see the bossbars of other players by spectating them.
- Individual bars can be edited by adding an entry in
.players[].data.modifiers - Bars can be edited globally by adding an entry in
.global.modifiersand/or.global.snbt - Format of global and player modifiers are the same:
data modify storage plate_havoc:ui bar.global.modifiers append value {meta:"plate_havoc:solo",id:players,type:remove,affect_meta:"default"}data modify storage plate_havoc:ui bar.players[].data.modifiers append value {meta:"plate_havoc:solo",id:players,type:remove,affect_meta:"default"}
- Any changes can be applied running one of following functions.
function plate_havoc:misc/ui/bar_visuals/player/apply/allfunction plate_havoc:misc/ui/bar_visuals/player/apply/init_datafunction plate_havoc:misc/ui/bar_visuals/player/apply/init_snbt
- Players now have individual bars with the ability for player-specific text components.
- Modifiers
meta- String of modifier.id- Points to a.global.snbtentry with specified value.tags- A list of all tags for the modifier to be group edited.affect_meta- SNBT attached to an ID to affect.type- Behaviour of modifier, can beremove,addoroverride.remove- Remove specified meta.add- Add in SNBT to an IDoverride- Override SNBT of specified meta in an ID.
- Non-alive players can see the bossbars of other alive players by spectating them.
- Changes visually:
- Text is now replaced by icons.
- Upgrade: "Glacier Player" displays an oak-coloured heart if it hasnt been used during a cycle.
- Timer gets hidden upon intermission in rogue.
- Player count only displays current number of players upon intermission in rogue.
- Cyclathrons is referred to as "€" for short.
- Cranked displays its timer only for alive players
- Task Manager displays its timer only for players assigned a task.
Results and Leaderboard Overhaul
- Both have been overhauled and are now linked together:
- Entries in
plate_havoc:leaderboard data_functionsnow usefunctioninstead ofdata. - Added
plate_havoc:leaderboard player_data_functions- Used for getting individual stats. plate_havoc:data functions.leaderboard.sort_typenow specifies data path instead of a function. (cycle=<entry>.data.cycle)- Info can be categorized into 2 parts:
top_bar- Displays at the top, separated by " | " for each entry.info- Global run information, separated by line breaks.
- Entries in
- Leaderboard entries raised from 5 to 25
- Changes visually:
- Results are now displayed through dialogs instead of chat.
- Information split into 3 categories: Top Bar, Global Info and Player Info.
- Cards now display their function when hovered over.
Visual / Audio
- Moody ambience can randomly play during intermission
- Music is entirely muted in the default void biome.
- Failing to meet the purchase requirements of a card will play a sound.
- Card Type Subtext is now displayed on the status bar.
- Number of extra jumps is now shown every time an extra jump is used
- Number gets coloured red if no extra jumps remain.
- Cards with exclusive cards will have a yellow asterisk (*), showing all cards that will be locked upon selection.
- Shortened the tutorial to one dialog.
- Clocks are now highlighted yellow instead of gold.
- Most event messages are now coloured.
- The colours have a meaning and are there to easily communicate info to the players.
Misc
- Renamed the Player Motion datapack to avoid conflicts with other datapacks using Player Motion.
- GU updated to v1.2 https://github.com/gibbsly/gu
- Extensions menu pauses game.
- Several single entities now use set UUIDs as selectors to save performance.
- Summoning a temporary marker is now replaced with a set UUID marker to save performance.
- Several optimizations to scoreboards.
Fixes
- Render distances below 8 makes the plate not clear.
- Dead players can use their survivor abilities.
- Fire still ticked.
- Active game loop still running despite changed status mid-function.
- Vote Requirement being repeated due to using count of alive instead of total.
- Clock collection range did not work correctly.
- Clock hitboxes no longer extend one block.
- Players cant get leaderboard credit despite meeting requirements.
- Bounce Pads used up an extra jump.
- Bases of some entity attributes would not get cleared.
- Bounce Pads made extra jumps take one additional jump before usage.
Removals
- Removed data for
game.end
Known Issues
- Hitboxes reliant on
dx,dyanddzwill always go 1 block more in the positive axis.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:ILfG53Py:yj6DRmf6"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ILfG53Py:yj6DRmf6"
}

