Typewriter v0.6 – The Extensions Update
This release brings a foundational shift in Typewriter’s core structure and a major update to the item system, along with new features and important usability improvements. Below are the highlights:
Critical Changes
1. From Adapters to Extensions
Typewriter has transitioned from using
to
, marking a significant evolution in how custom functionality is integrated. Key improvements with this change include:
-
Gradle Plugin for Extensions: A new Gradle plugin simplifies the process of developing Extensions, making setup and management easier for developers.
-
Compile-Time Discovery: Discovery of Extension internals, such as entries, now occurs at compile-time instead of runtime. This not only future-proofs Typewriter but also lays the groundwork for the upcoming marketplace, where entries in each Extension will be viewable without running the Extension.
-
Hot Reloading: Extensions can now be reloaded on-the-fly using
, enabling real-time updates without the need for a server restart.
-
Optimized Loading: Only the necessary classes are loaded from Extensions. For example, if an Extension contains thousands of entries but only one is used, Typewriter loads only that specific entry, enhancing memory and processing efficiency.
-
Extension Validators: Built-in validators now check Extensions against Typewriter’s standards, helping to ensure reliability and consistency across user-created Extensions.
2. New Item System
Typewriter introduces a completely new item system, which is
incompatible with previously defined items. Users will need to recreate items to align with the new structure. Based on user feedback, no migrator will be provided, as the majority found it unnecessary.
Please test this update on a development server before upgrading your production environment.
Important Features
1.
Skip Cinematic Segments
A new
Code (Text):
SkipCinematicEntry
gives players the option to skip sections of cinematics by pressing a configured key, offering more control over in-game cinematic experiences.
2.
UI and Web Panel Upgrades
Improvements to the web panel and UI components provide a smoother experience. These upgrades include the ability to unselect Sound IDs, layout enhancements, compatibility improvements behind reverse proxies, and visual indicators for empty fields, all of which contribute to a more intuitive and flexible panel.
---
### New Entries
-
Cinematic Entries:
Code (Text):
GameTimeCinematicEntry
,
Code (Text):
WeatherCinematicEntry
,
Code (Text):
SkipCinematicEntry
,
Code (Text):
BlockCommandCinematicEntry
-
Dialogue:
Code (Text):
ActionbarDialogueEntry
,
Code (Text):
SimpleMessageActionEntry
-
Entity and Activity Entries:
Code (Text):
MythicMobKillPlayerEventEntry
,
Code (Text):
RemovePotionEffectActionEntry
,
Code (Text):
LookAtBlockActivity
,
Code (Text):
LookAtPitchYawActivity
,
Code (Text):
RandomPatrolActivity
,
Code (Text):
AmbientSoundActivity
,
,
Code (Text):
InteractionEntity
,
Code (Text):
PillagerEntity
,
Code (Text):
VindicatorEntity
,
Code (Text):
Llama Entity
-
Miscellaneous:
Code (Text):
WeatherAudienceEntry
,
Code (Text):
FireworkActionEntry
(with
Code (Text):
flight duration
setting)
---
As always, please
make sure you have a backup before updating and enjoy the new features!
If you consider Typewriter to be valuable to your server, please consider
Sponsoring the Project