马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 TianKong_y 于 2025-5-18 14:40 编辑
DynFirework
更真实自然的烟花!
> 简介
DynFirework是使用Python (基于PyQt5框架) 编写的Minecraft粒子烟花生成器,提供了图形化界面和核心库函数,用以生成包含复杂烟花效果的数据包文件(.mcfunction)。
介绍视频
> 前置Mod及版本兼容性
DynFirework的输出指令基于Colorblock的rgbatickparameter 和normal 子指令,以实现渐变颜色粒子。
由于Colorblock仅支持1.12.2和1.16.5版本,当前版本的DynFirework v1.1生成的指令也只在上述2个版本有效。
理论上可以通过修改输出指令部分的代码并移除渐变色功能,使用原版particle指令以兼容全部版本,这是之后的更新内容之一。
> 依赖
在源码所在根目录打开PowerShell,执行如下指令以下载依赖
pip install -r requirements.txt
> 使用方法
方法1.图形化编辑
DynFirework 提供基于 PyQt5 编写的图形化界面,方便用户配置和生成烟花。
使用方法为,下载源代码后,执行 python main.py 启动图形界面,在界面中选择并配置所需的轨迹和烟花类型。
生成器会在根目录下创建一个与GUI界面设置中命名相同的子文件夹(数据包名称),该文件夹即为创建的数据包,可直接复制到存档中的datapacks 目录下进行使用。
执行时,根据你在图形界面中设置的命名空间(namespace),在游戏内执行/function <你的命名空间>:0 。 命名空间的命名规范请参考Minecraft Wiki。
方法2.核心库调用
对于需要更高自由度或希望将烟花生成集成到其他Python脚本的用户,可以直接调用 gui/lib/ 目录下的核心库函数 (如 basic_fireworks.py , firework_trajectories.py ) 来手动调用生成轨迹、烟花的函数。具体用法请参考templates.md。
生成器会在代码目录下创建一个functions子文件夹,一个tick对应该文件夹下的一个.mcfuntion文件。
如果你不了解.mcfuntion,可以参考BV1aP41167ef
执行时,根据对namespace的命名,在游戏内执行/function namespace:0 。 namespace的命名规范请参考Minecraft Wiki
> 效果展示

双层烟花
双层渐变烟花
单层渐变烟花
> 更新日志
- v1.0 2024.9.30 初始版本,提供多种烟花轨迹模板和烟花模板
- v1.1 2025.1.26 更新图形化界面 (基于 Tkinter)
- v1.2 2025.4.30 将 GUI 框架迁移至 PyQt5,重构项目结构。
> 作者&技术交流/反馈群
> 鸣谢
> 项目统计

|