Tài nguyên khoá học Minecraft plugin.
(Materials for Vietnamese Minecraft plugin development course)
- Hiểu được cách server Minecraft hoạt động
- Tạo plugin cho server Minecraft từ cơ bản đến nâng cao
- Tích hợp plugin và cơ sở dữ liệu (database)
- Kênh thảo luận:
- Forum: https://minecraftvn.net/
- Discord: https://discord.gg/88zavUAdbQ
- Liên hệ mình: Discord
@anhcraft
- Ủng hộ tác giả:
- Paypal: https://paypal.me/lycheene
- MoMo/Bank: Liên hệ qua Discord
Xem tại đây: LESSONS.md
- Giới thiệu về phát triển plugin Minecraft
- Giới thiệu về khoá học
- Cách thảo luận, báo lỗi, nhờ trợ giúp
- Ứng dụng của plugin trong server
- Yêu cầu khoá học
- Mục tiêu và lộ trình học
- Giới thiệu project khoá học
- Kiến trúc server Minecraft
- Cách server Minecraft hoạt động
- Giao tiếp client - server
- Các lớp trong cấu trúc server
- Game loop
- Cách server Minecraft được mod
- Obfuscation
- Patching
- So sánh các nền tảng Minecraft
- Sự khác nhau giữa API và Implementation
- NMS là gì
- Cách server Minecraft hoạt động
- Tạo plugin đầu tiên
- Cài đặt môi trường và công cụ
- Giới thiệu về plugin Minecraft development
- Tạo plugin đơn giản
- In ra console
Hello World
dùng built-in logger - Sơ lược về plugin.yml và pom.xml
- In ra console
- Cách biên dịch và đóng gói plugin
- Kiến trúc plugin
- Java class loading
- Plugin loading
- Plugin.yml
- Tổ chức code trong plugin
- Sơ lược về Bukkit API, Spigot API, Paper API
- Event system
- Cách event system hoạt động
- Cách listen event
- Cách emit event
- Tạo event riêng
- Share state giữa các event
- Command system
- Tạo command, tab complete
- Command section trong plugin.yml
- Sơ lược ACF, Commands API
- Configuration
- Dùng built-in configuration (SnakeYAML)
- Dùng JSON
- Dự án mini 1: Plugin bảo mật server
- Whitelist staff cho phép
- 2FA dùng code
- Chat component API
- Legacy chat API
- Bungee chat API
- Adventure chat API
- MiniMessage
- Localization (i18n)
- Named Binary Tag (NBT)
- Cấu trúc NBT
- NBT trong world, player data
- Xem và chỉnh sửa NBT
- Item API
- Tạo item, item meta
- Persistent data
- Dự án mini 2: Plugin sửa item
- Inventory API
- Sửa túi đồ
- Tạo GUI, lưu state
- Multi-viewer GUI
- Pagination
- Recipes
- Dự án Mini 3: Plugin invsee
- Cho phép xem inventory
- Cho phép sửa inventory
- Entity API
- Cập nhật state entity
- Spawn entity
- Dự án Mini 4: Plugin Boss
- Tạo boss bằng Entity API
- Thêm skill cho boss
- ArmorStand
- Display Entity
- Dự án Mini 5: Plugin Hologram
- Block API, World API
- Cập nhật state block
- Thay đổi block
- Persistent data
- Tạo world mới
- Scheduler
- Cách Bukkit scheduler hoạt động
- Bukkit scheduler vs Java Thread
- Tạo one-time và repeated task
- Share state giữa các scheduler
- Asynchronous programming
- Particle effect
- Tạo đường thẳng
- Tạo hình tròn
- Tạo hình cầu
- Tạo hình hộp
- Tạo elipse
- Xoay hình
- Dự án Mini 6: Plugin custom item
- Dùng Vault API
- Dùng Placeholder API
- Parse placeholders
- Create custom expansion
- Dự án Mini 7: Plugin cá cược chẵn lẻ
- Plugin messaging (1 chiều)
- Forward players
- Tích hợp Database
- Dùng ProtocolLib
- Tạo Armor Stand, Display Entity bằng packet
- Mute sounds using packets
- Custom block hardness
- Dự án lớn: Plugin Minigame (SurvivalGames)
- Multi-arena, Solo/Team
- Custom kits
- Custom items
- Random lootable chest
- Spectator mode
- Using: Vault, PlaceholderAPI, ProtocolLib, ajLeaderboards