Commit graph

20 commits

Author SHA1 Message Date
78fc8bfb55 remove: template save/load/list from SetupCommand 2026-06-03 20:46:35 +02:00
fcf2debbd4 feat: wire pallet/hook/gate/chest systems into gameplay 2026-06-03 20:29:04 +02:00
b339f4c029 fix: wand listener, killer/survivor spawn commands, double phase exit, generatorManager null check 2026-06-03 20:03:31 +02:00
1adb8c84fd fix: colors, /dbd join flow, world creation, role assign, action bar lobby, /dbdadmin world, tab complete 2026-06-03 19:34:10 +02:00
327ad9b906 Add ProGuard obfuscation build task
Configures a JavaExec ProGuard task that runs after jar, keeping all
plugin entry points and command/listener classes while repackaging
into the mdbd package.
2026-06-01 22:26:18 +02:00
d0ed8a5fe7 Connect game phases, implement gameplay, add lobby commands, remove perks
- Fix GameSession.determineNextPhase() to cycle through all 4 phases
- Implement GameplayPhase with generator tracking and win/lose conditions
- MapBuilder now uses the game world instead of the first world
- Add /dbd lobby (teleport to lobby) and /dbd setlobby (set lobby spawn)
- Remove all perk classes (IPerk, PerkRegistry, 7 perk implementations)
- Fix HexTotem to not reference removed HexRuinPerk
2026-06-01 22:21:40 +02:00
34e0aebd5d Add lobby/game worlds, void generator, dbd reload, and fix plugin loading
- Add VoidWorldGenerator for empty void worlds
- Add LobbyManager with auto-creation of lobby world (stone platform 7x7, built once) and game world
- Add /dbd reload command to reload all configs at runtime
- Add plugin.yml for proper command registration, remove paper-plugin.yml
- Fix mdbdBootstrap/mdbdLoader public constructors (Paper requirement)
- Fix command registration (getCommand null on Paper plugin system)
2026-06-01 22:08:37 +02:00
76e0c1e167 Update PLAN.md - mark all stages 2-14 as complete
All parallel agent tasks finished:
- Stage 2-3: Player states, Killer system
- Stage 4-5: Survivor, Generators, SkillCheck
- Stage 6-7: Hooks, UI (ActionBar, Sidebar, TitleUI)
- Stage 8-9: Pallets, Windows, Endgame, Gates, Hatch
- Stage 10-11: Custom Items, Chests, Sounds, Terror Radius
- Stage 12: Data storage (YAML + SQLite stub)
- Stage 13: Perks (Survivor + Killer), Totems
- Stage 14: Listeners, Utils, Polish
2026-05-31 21:18:36 +02:00
78c881e94c Add default configs in src/main/resources/
- config.yml - main plugin settings
- messages.yml - all messages with &#rrggbb colors
- skillcheck.yml - QTE settings with colors
- game.yml - game balance settings
- locations.yml - object coordinates template
- Update ConfigManager to load main config
- Update build.gradle.kts to process all yml files
2026-05-31 21:10:26 +02:00
2a2b9f4b5b Add map templates, multi-config system, &#rrggbb colors
- MapTemplate: Save/load structures via Bukkit Structure API (.nbt files)
- TemplateManager: Manage templates and presets
- MapBuilder: Build/clear map with generators, hooks, pallets, etc.
- SetupCommand: /dbdsetup wand/save/load/set/build for map editing
- MessagesConfig: All messages with &#rrggbb color support via MiniMessage
- SkillCheckConfig: Skill check colors, zones, rotation settings
- Update GameConfig with color codes
- ConfigManager: Load/save all 4 config files
- Update plugin.yml with dbdsetup command
- Add methods to Generator for template integration
2026-05-31 21:05:25 +02:00
362b791774 Stage 14: Polish and utilities 2026-05-31 20:56:00 +02:00
7cbc4e397e Stage 10-11: Custom Items and Sounds 2026-05-31 20:54:21 +02:00
1fd78e5421 Stage 6-7: Hooks and UI systems 2026-05-31 20:50:59 +02:00
37e67ce97d Stage 13: Perks and Totems 2026-05-31 20:49:37 +02:00
d1f854fc79 Stage 2-3: Player states and Killer system 2026-05-31 20:49:28 +02:00
5a53620b3a Stage 4-5: Survivor and Generator systems 2026-05-31 20:47:39 +02:00
4fd7955d56 Stage 12: Data storage system 2026-05-31 20:47:02 +02:00
82ed455cd2 Complete Stage 1: Core Game Loop
- Add GameState enum (LOBBY, ROLE_ASSIGN, IN_GAME, ENDING)
- Add Phase interface with enter/tick/exit/isComplete
- Add GameSession with tick-based phase machine
- Add GameEventBus for internal events
- Add GameManager for session lifecycle
- Add all phases: LobbyPhase, RoleAssignPhase, GameplayPhase, EndgamePhase
- Add role assignment: RoleAssigner, RoleQueue, SpawnPosition
- Add BasePlayer, Survivor, Killer, PlayerState
- Add DBDCommand with /dbd join/leave/create/forcestart/stop
- Update mdbd.java with GameManager and command registration
- Add command definition to paper-plugin.yml
- Mark Stage 1 complete in PLAN.md
2026-05-31 20:43:40 +02:00
53f3f6e9da Complete Stage 0: Project scaffold
- Fix build.gradle.kts: Java 21, Paper 1.20.6, ProtocolLib 5.3.0
- Add permissions to paper-plugin.yml
- Add ConfigManager with safe yaml loading (no overwrite)
- Add LocationsConfig for all game object coordinates
- Add GameConfig with all balance values
- Update mdbd.java with onEnable/onDisable + ConfigManager
- Mark Stage 0 complete in PLAN.md
2026-05-31 20:37:36 +02:00
32da611c63 Initial project setup: Paper plugin scaffold 2026-05-31 20:30:29 +02:00