New

We just launched the new Notification Generator

Check it out
EternalCode LogoEternalCode
  • Home
  • Team
  • Documentation
  • Contribute
  • RepositoryNew window
  • StatusNew window

Documentation

Browse all topics

Hosting & DeployPowered by Netlify↗
multification11
Introduction
Installation
Basic Usage
Configuration
Advanced Features
Format (For Users)
Platform Comparison
API Reference
FAQ & Troubleshooting
Examples
Migration Guide

© 2026 EternalCodeTeam

Documentation

Browse all topics

Hosting & DeployPowered by Netlify↗
multification11
Introduction
Installation
Basic Usage
Configuration
Advanced Features
Format (For Users)
Platform Comparison
API Reference
FAQ & Troubleshooting
Examples
Migration Guide

© 2026 EternalCodeTeam

multification
2 min read
GitHubEdit on GitHub

API Reference

Complete API documentation


Previous
Platform Comparison
Next
FAQ & Troubleshooting
EternalCode LogoEternalCode

Building high-quality, open-source Minecraft solutions. Empowering communities with reliable software since 2021.

GitHubDiscordYouTubeTikTok

Product

  • Build Explorer
  • Documentation
  • Repository
  • Status

Projects

  • EternalCore
  • EternalCombat

Community

  • Discord
  • GitHub
  • YouTube
  • TikTok

Resource

  • SpigotMC
  • Modrinth
  • bStats

Company

  • About
  • Team
  • Contribute
  • Privacy Policy

© 2026 EternalCodeTeam. All rights reserved.

Powered by NetlifyDesigned with ❤ by the EternalCodeTeam.

Core Classes

Multification

public abstract class Multification<VIEWER, TRANSLATION>

Abstract methods (must override):

  • viewerProvider() – provides players/console
  • translationProvider() – provides config for locale
  • audienceConverter() – converts viewer to Adventure Audience

Optional overrides:

  • serializer() – default: PlainComponentSerializer (use MiniMessage)
  • globalReplacer() – default: no-op
  • asyncExecutor() – default: sync execution
  • localeProvider() – default: Locale.ROOT

Notice

// Static factories
Notice.chat(String... messages)
Notice.title(String title, String subtitle)
Notice.actionbar(String message)
Notice.sound(String key, float volume, float pitch)
Notice.bossBar(BossBar.Color color, Duration duration, String message)
Notice.empty()

// Builder
Notice.builder()
    .chat("...")
    .title("...", "...")
    .actionBar("...")
    .sound("...")
    .bossBar(...)
    .build()

NoticeBroadcast

multification.create()
    // Target
    .player(UUID)
    .players(Iterable<UUID>)
    .viewer(VIEWER)
    .console()
    .all()
    .onlinePlayers()
    .onlinePlayers(String permission)

    // Notice
    .notice(Notice)
    .notice(config -> config.message)

    // Placeholders
    .placeholder("{key}", "value")

    // Formatters
    .formatter(Formatter...)

    // Send
    .send()
    .sendAsync()

Functional Interfaces

// Extract notice from config
NoticeProvider<T> = translation -> Notice

// Format text
Formatter = (viewer, text) -> String

// Replace text globally
Replacer<V> = (viewer, text) -> String

// Get locale for viewer
LocaleProvider<V> = viewer -> Locale

// Convert viewer to Audience
AudienceConverter<V> = viewer -> Audience

// Get config for locale
TranslationProvider<T> = locale -> T

Serializers

// CDN
new MultificationNoticeCdnComposer(multification)
new MultificationNoticeCdnComposer(noticeRegistry)

// Okaeri
new MultificationSerdesPack(multification)
new MultificationSerdesPack(noticeRegistry)