-
Notifications
You must be signed in to change notification settings - Fork 4
Full Changelog
Below is a list of all changelogs for the project, starting with version 0.1 and progressing to version 0.11.1.
TTT v0.11.4 adds support for Minecraft 1.14. It maintains runtime compatibility with Bukkit versions 1.8 and above.
As with the 1.13 update, rollback logs generated by previous versions of Minecraft are incompatible with later versions. Typically this will not be an issue, but rollback logs can be preserved across restarts in case of a server crash or something similar. Please use caution when upgrading to a new Minecraft version.
Steel v1.3.7 is also required for full compatibility with Minecraft 1.14.
- Adapt sign checks to support Bukkit for Minecraft 1.14
- Replace
UUIDFetcherwith Bukkit API calls - Migrate to JUnit 5
TTT v0.11.3 adds initial support for Minecraft 1.13, as well as backwards-compatibility measures for legacy platforms. This support is still a work-in-progress, and as such may be incomplete or unstable. Please report any problems on the issue tracker, especially those pertaining to rollback.
Please also note that rollback logs generated under Minecraft 1.12 are incompatible with 1.13. Typically this will not be an issue, but rollback logs can be preserved across restarts in case of a server crash or something similar. Please use caution when updating to Minecraft 1.13 for the first time.
While the Flint API dependency has not changed, Steel v1.3.6 or newer is required for 1.13 support.
Finally, it is likely that the next major release of TTT will drop support for all Minecraft versions prior to 1.12, as well as Java versions prior to 8. Please be prepared for the possibility of this in the future.
- Add support for Minecraft 1.13
- Add compatibility layer for older Minecraft versions
- Add
crowbar-item-legacyandgun-item-legacykeys to the config for cross-compatibility purposes-
gun-itemwill need to be manually updated toIRON_HORSE_ARMORupon updating to 1.13
-
- Switch from MCStats to bStats
- Migrate to Guava 21
- Fix log spam if scoreboard manager is not properly initialized with round
TTT v0.11.2 resolves an issue in which right-clicks would be registered twice on newer Minecraft versions (1.9+).
This release resolves a bug in which innocents would erroneously lose karma for killing traitors.
TTT v0.11 introduces a new "haste mode" designed to put pressure on traitors and keep the game more interesting. It also adds long-requested configurable event-based commands and resolves several bugs (some introduced by 0.10, some longer-standing).
Note: TTT v0.11 drops support for all 1.7.x versions of Bukkit. TTT v0.12 will drop support for all Bukkit versions prior to 1.8.8. It is recommended that you upgrade as soon as possible if you are on an older version.
- Add optional "haste mode"
- Round starting time is shorter than normal, but time is added for each kill made by the traitors
- Add configurable commands to run on certain events (16 events are supported)
- Add warning messages on start if Bukkit/Java versions are old
- Check Steel major version on startup (Flint will undergo an incompatible major version bump in the future)
- Send victory title at start of cooldown period (instead of after)
- Fix karma not being properly applied to all players on round end
- Fix victory titles not always being sent
- Fix conflict between dead/spectator prefixes and chat-modifying plugins
- Fix exception and failure to create body if player dies out of arena bounds
- Fix karma reward/penalty calculation to match original gamemode
- Fix incorrect error messages for
rolescommand - Minor text fixes
- Drop Bukkit 1.7.x support
- Remove version codename
- Update Flint dependency to 1.3
- Upgrade config preprocessor to handle lists
- Refactor internal UI color naming
- Shade Updater as a dependency again
- Considerably less code cleanup than usual (but still a little bit)
TTT v0.10.3 fixes a critical issue with the auto-updater caused by a change to CurseForge's CDN which resulted in bogus artifacts being downloaded. Users affected by this issue will need to manually update to this version.
TTT v0.10.2 packages Rosetta v1.1.3 in order to resolve an issue in the localization engine introduced by the last hotfix.
TTT v0.10.1 packages Rosetta v1.1.2 to resolve a bug in the localization engine in Paper for 1.10.2.
- Fix localization engine sometimes throwing a
NullPointerExceptionon recent versions of Paper
TTT v0.10 introduces new features primarily designed to make the plugin more flexible in how it operates. This update is especially targeted toward larger servers and in particular BungeeCord networks.
- Add option to configure plugin's operating mode
- Add
continuousmode- Players will not be ejected from the arena when a round ends
- Add
dedicatedmode- Only one round exists on the server, which players are automatically added to upon joining and may not leave
- This arena cycles per a configurable pattern every x rounds or minutes
- Add
- Add basic BungeeCord support in correspondance with
dedicatedmode- When
return-serveris configured, players will be sent to that server on running/ttt leaveinstead of the command failing
- When
- Add optional
forceparameter toleavecommand to allow administrators to leave rounds in dedicated - Add tip to join message explaining
leavecommand - Add pagination to
helpcommand - Add config option to toggle server-wide victory messages (
falseby default) - Add telemetry support
- Add
/ttt arenainfocommand
- Improve DNA scanner behavior when no target is selected
- Rename
carenaandrarenacommands tocreatearenaandremovearena(old names are still available as aliases)
- Remove
reloadcommand
- Fix
/ttt help helpthrowing an exception - Fix victory messages being sent even if a round never started
- Fix players not being placed in spectator mode upon dying due to Multiverse conflict (special thanks to CraftBlock for helping track this down)
- Fix plugin doing reflection lookup for
getOnlinePlayersmethod every time it's invoked
- Properly implement command aliases internally
- Rewrite
forceendcommand implementation - Refactor event handlers to be more sane
- Revamp config handler
- Partially migrate to Rosetta 1.1 API features
- Clean up helper classes a bit
TTT v0.9.6 fixes a bug caused by players disconnecting while in an active round.
TTT v0.9.5 packages the latest versions of Metrics and CrossTitles to provide support for Minecraft 1.9.
- Update
fr_FRandpt_BRlocales
- Bump CrossTitles dependency to version
0.1.2 - Bump MCStats dependency to revision
R8-SNAPSHOT
TTT v0.9.4 fixes the plugin failing non-gracefully when Steel is not present in the environment and provides localization updates.
- Update
de_DE,fr_FR,it_IT,ko_KR,lol_US,pl_PL, andtr_TRlocales
- Fix plugin failing non-gracefully when Steel is not present in the environment
TTT v0.9.3 addresses another issue regarding detective assignment.
TTT v0.9.2 addresses an issue with the /ttt import command.
- Fix
/ttt importthrowing an exception when passed the name of an existing arena
TTT v0.9.1 addresses bugs present in the initial 0.9 release.
- Fix a detective always being assigned despite config settings
- Fix bodies (chests) not always being rolled back
TTT v0.9.0 adds several new gameplay features and administrative commands, simplifies configuration, and overhauls several internal backends.
- Add post-round period
- Display remaining round time on scoreboard
- Add DNA decay feature
- Add time-since-death clock to bodies
- Add discreet body searching via sneaking
- Localize body inventories on per-player basis
- Add chat prefix to distinguish spectators from killed players
- Automatically delete remaining legacy storage files from data folder on load
- Add partial
no_NO,pt_PT,tr_TR, andlol_USlocales
-
/ttt slay- slays a given player -
/ttt respawn- respawns a given player into a round -
/ttt role- displays the role of a given player -
/ttt roles- displays the roles of all players in a given round -
/ttt forceend- forces a round to end, skipping the round-end period and immediately resetting its arena -
/ttt reload- reloads the configuration from disk
- Change default crowbar damage from
6to5 - Change default ammo given to players from
40to55 - Overhaul permission model to improve UX
- Revamp documentation in
config.yml - Replace multiple hacks/workarounds with calls to Flint API methods
- Update localization
- Bump Flint dependency to 1.1 (API revision 2)
- Remove time-related broadcasts
- Remove scoreboard-related config options
- Remove previously deprecated permission nodes
- Drop support for Bukkit versions prior to 1.7.8
- Remove special join messages for normal testers and translators (it was too much to reasonably keep track of)
- Fix chest type selection on body creation
- Fix traitor/detective ratio clamping
- Fix DNA scanner identifying body without searching
- Fix players being able to receive damage before round start
- Fix karma being reset to 0 for spectators on round end
- Overhaul scoreboard backend
- Overhaul body backend
- Overhaul command backend
- Generate body inventories on-demand (rather than storing them in the physical chest)
- Refactor player interact and death event handling to be more sane
- Centralize several magic metadata keys
- Refactor command classes into new packages
- Refactor helper classes into new packages
TTT v0.8.8 renames the packages of shaded libraries to avoid conflicts with other plugins.
TTT v0.8.7 fixes all remaining issues with the auto-installer for Steel.
TTT v0.8.6 fixes scoreboard support for legacy Bukkit versions.
Note: TTT's scoreboard backend will no longer support Bukkit versions prior to 1.7.8 as of version 0.9.0.
TTT v0.8.5 fixes issues with the Steel auto-installer and fixes scoreboards not clearing upon a round's preparation period being cancelled.
TTT v0.8.4 implements an auto-updater for Steel and adds more customized feedback to the existing update system.
TTT v0.8.3 fixes the arena creation wizard conflicting with chat-modifying plugins.
TTT v0.8.2 fixes the arena creation wizard, which was not working properly in prior 0.8.x versions.
TTT v0.8.1 fixes issues with the plugin when Steel is not installed on the server.
- Enable metrics and auto-updater before Steel check
- Fix plugin not gracefully failing when Steel is not installed
- Move basic initialization code to discrete bootstrap class
Note: This version is no longer available for download on BukkitDev.
TTT v0.8.0 ports the plugin to the Flint engine, adds new utility commands, introduces UX enhancements, and removes select deprecated features.
- Add interactive arena creation wizard
- Add interactive lobby sign creation wizard via Flint
- Implement per-player message localization via Rosetta
- Add support for arena boundaries
- Add
listarenascommand - Add
listspawnscommand - Add optional support for spectating rounds in progress
- Reset karma to
low_autokickvalue on round join if below - Add output to
addspawnandremovespawncommands - Add partial Hungarian (
hu_HU) locale
- Change info color to
DARK_AQUA(fromDARK_PURPLE) - Switch spawning mode to random rather than sequential
- Change visibility of arena join message to arena-local
- Tweak round start/end countdowns
- Use sidebar for karma scoreboard by default (as opposed to player list)
- Display subtitles by default (instead of full-sized titles)
- Rename several config keys (w/ backwards-compatibility) to more closely match official gamemode config
- Remove material abstraction layer
- Subsequently, config materials are now parsed as raw
enumvalues (as opposed to converted from Minecraft's official name)
- Subsequently, config materials are now parsed as raw
- Deprecated permission nodes are no longer assigned by default
- Add release codename to default command
- Update locales
- Remove arguments from
carenacommand - Remove
setexitcommand - Remove optional time argument from
prepareandstartcommands - Remove legacy lobby sign syntax in favor of new wizard
- Remove shorthand command syntax (e.g.
/ttt jinstead of/ttt join) - Remove
/ttt quitcommand in favor of/ttt leave - Remove configurable scoreboard role-based prefixes
- Remove
guns-outside-arenasconfig option - Remove ANSI coloring from console messages
- Fix inconsistent internal references to detectives
- Fix DNA scanning when the body of a player who has left the round is scanned
- Fix DNA scanning when the killer of a scanned body is spectating
- Fix karma kick/ban-related config values not applying
- Fix quirks regarding scoreboards and teams
- Fix scoreboard flickering
- Fix bodies replacing solid blocks
- Port to Flint engine
- Migrate locale handling to Rosetta (should resolve most or all existing issues relating to localization)
- Fully migrate to player UUIDs internally
- Restructure/optimize how bodies are handled internally
- Restructure/optimize how scoreboards are handled internally
- Refactor an enormous amount of other code
- Bump Bukkit dependency to 1.8.8-R0.1
- Bump target JDK to 1.7
TTT v0.7.4 fixes remaining errors thrown when MGLib is missing.
TTT v0.7.3 introduces minor changes regarding startup procedures.
- Add warning message if detected Java version is 7 or below
- Gracefully fail if MGLib is missing (previously an exception was thrown)
TTT v0.7.2 packages the latest version of CrossTitles to fix title compatibility for more recent versions of 1.8.x.
TTT v0.7.1 fixes some issues with server software prior to Minecraft 1.8.
Version 0.7.0 introduces several new features and adds administrative functionality.
Note: This version requires MGLib v0.4.0 or greater.
- Add
/ttt kickcommand - Add
/ttt bancommand - Add
/ttt preparecommand - Add
/ttt startcommand - Add
/ttt endcommand - Add
/ttt rarenacommand (for removing arenas) - Update
/ttt setexitcommand (now accepts boolean flag to retain orientation) - Display titles to players on round start and end (optional)
- Crowbar and gun items are now configurable
- Use vanilla TTT algorithm for karma-based damage reduction
- Tweak karma algorithms to always use 1000 as base karma
- Add full UUID support
- Break the plugin on cracked servers (not necessarily offline servers, BungeeCord is still good)
- Greatly improve config checker (config is no longer completely reset when the plugin updates)
- Fully localize plugin in German, Spanish, and Korean
- Fix ban evasion via username change
- Fix all issues related to UUIDs (this does not apply to cracked servers, buy the game)
- Bump MGLib dependency version to 0.4.0
- Build project with Gradle instead of Maven
- Change artifact ID to
ttt(fromTTT) - Shade in Updater and Metrics instead of direct inclusion
- Refactor main package to
net.caseif.ttt - Restructure comamnd handling
- Remove
TTTPlayerclass in favor of metadata - Remove build stability checker
- Remove most magic values
- Read contributors from a separate file instead of hardcoding them
- Move most messages to locale files
- Convert locales to
.propertiesformat - Improve code formatting
- Version suffix for snapshots now includes Git commit (if applicable)
TTT has been rebuilt from the ground up based on MGLib, a powerful minigame library.
- Arenas may be created based on locations, rather than having to import an entire world
- Arenas may have multiple spawn points
- Add support for Minecraft 1.6.x and earlier (untested)
- Add preemptive support via MGLib for vanilla spectator gamemode (untested, obviously)
- Add custom Metrics graph for MGLib version
- Lobby signs now count up if time is unlimited
- Fix incompatibility with MultiVerse
- Fix karma clean bonus being improperly calculated
- Fix players becoming stuck if they fall into the void while preparing
- Fix scoreboard not always being properly updated
- Fix bodies forming double chests
- Fix a load of
NullPointerExceptions
- Rebuild project to use MGLib instead of an integrated engine
- Refactor permissions (old ones work, but are deprecated)
- Modify certain subsystems to use UUIDs instead of usernames
- Add lobby system
- Lobby signs are protected from direct and indirect destruction
- Two types of signs: "status" and "players"
- Add
/ttt help lobbycommand - Add build stability checker (reports stability of current build when plugin is loaded)
- DNA scanners spin when no sample has been collected
- Add esES locale
- Add itIT locale
- Add plPL locale
- Add output to
/ttt sscommand
- Fix "
IOException: String length longer than maximum allowed (X > 16)" - Fix improper round conclusion on server reload/restart (before, players in rounds would lose their inventory and remain in the arena)
- Fix conflicts with Multiverse
- Fix potential memory leaks on server reload due to static variables
- Change gamemode to survival on round join
- Fix
IllegalPluginAccessExceptionon disable - Fix
StringIndexOutOfBoundsExceptionwhen importing world
- Rebrand project to
TTT - Load all config values on plugin enable so as not to continually reference it while running
- Update MCStats to Revision 7
- Change encoding of source files and in turn strings in binaries to UTF-8 without BOM
- Change encoding of locales to UTF-8 without BOM, fixing special characters being displayed incorrectly
- Change updater class so as to comply with ToS changes
- Fix catastrophic failure on round countdown
- Implemented karma system
- Uses actual TTT algorithms to calculate karma rewards and penalties
- Allows for configurable variables in algorithms
- Allows for players to be automatically kicked from rounds or banned from using the plugin (for a period of time or permanently)
- May or may not persist between player relogs and server reloads/restarts
- Players' karma is displayed next to their name on the scoreboard
- Implemented damage reduction based on players' karma
- Added scoreboard for TTT rounds
- Alive players are bolded on scoreboard; MIA are non-formatted; dead have strikethrough
- Traitors and Detectives have colored names on nametag and player list
- Two default locale files are now created in
plugins/TTT/locales - Added internal roRO locale
- Added internal nbNO locale
- Fixed most bugs involving Detectives
- Removed console spam regarding invalid locale in config
- Fixed players being removed from rounds upon inter-world teleport
- Fixed players being removed from rounds upon attempting to break the block beneath them (as a result of the last point)
- Fixed
HangingEntities(Paintings/Item Frames) being breakable by players in rounds
- Detectives are now internally assigned a role (this is why Detective-related bugs are fixed)
- Optimized round resetting (read: Removed redundant code)
- Removed offline server safeguard (I'd prefer you only use it for BungeeCord, though ;D)
- Removed classes from Apache Commons IO FileUtils
- Added subcommand aliases (first letter of subcommand)
- Locales may be user-configured (create
xxYY.propertiesfile inplugins\Trouble In Terrorist Town\localesand set locale toxxYYin config - Added config option to disable verbose logging
- Fixed offline server support
- Fixed lots of
NullPointerExceptions - Fixed players being able to access ender chests while in TTT rounds
- Fixed players being kicked from rounds for no reason
- Fixed entities spawning in TTT rounds
- Fixed entities targeting dead players (just in case)
- Fixed AutoUpdate console spam when online host is not available
- Created new classes for listeners and managers (schedulers)
- Listeners and managers are stored in separate classes
- Each player's data is stored in single object
- Each round's data is stored in single object
- Plugin uses own logger as opposed to Bukkit's
- Fixed potential memory leaks on server reload
- Added enum for player roles (innocent, traitor, detective)
- Added Detectives
- Added DNA Scanners (used by right-clicking bodies)
- Added new locales
- Fixed armor not being removed upon joining match
- Fixed inventory not being removed if
/ttt quitis used - Fixed players not being internally removed from game on teleport or quit prior to setup period
- Fixed plugin not announcing when player leaves game
- Fixed
StringIndexOutOfBoundsException - Fixed inventory load error caused by armor
- Fixed helmet not being removed when player joins game
- Fixed players in games regenerating health
- Fixed players being damagable during waiting period
- Fixed DNA scanner conflicting with Essentials
- Disabled PMs for joined and dead players
- Modified config check
- Fixed "
save being accessed from another location" bug - Fixed
NullPointerExceptionresulting from theuid.datfile not being deleted - Added frFR localization
- Added daDK localization
- Initial Release