Skip to content

[Artifact1465] ヴァースティル・プラズマの作成 - #2089

Open
firgde wants to merge 54 commits into
masterfrom
dev/firgde_artifact1465
Open

firgde wants to merge 54 commits into
masterfrom
dev/firgde_artifact1465

Conversation

@firgde

@firgde firgde commented Jul 4, 2026

Copy link
Copy Markdown
Member

以下のAssetを追加:

  • Artifact 1465 ヴァースティル・プラズマ
  • Effect 374 チャージ・プラズマ
  • Object 1168 プラズマ攻撃1: スパーク
  • Object 1169 プラズマ攻撃2: 拡散ビーム

@firgde firgde changed the title Dev/firgde artifact1465 [Artifact1465] ヴァースティル・プラズマを作成 Jul 4, 2026
@firgde firgde changed the title [Artifact1465] ヴァースティル・プラズマを作成 [Artifact1465] ヴァースティル・プラズマの作成 Jul 4, 2026

@Lapis-LJA Lapis-LJA left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

エフェクトのnamespace、0374.charge_plasmaであるべきかな

Comment thread Asset/data/asset/functions/artifact/1465.versatile_plasma/give/2.give.mcfunction Outdated
Comment thread Asset/data/asset/functions/artifact/1465.versatile_plasma/give/2.give.mcfunction Outdated
Comment thread Asset/data/asset/functions/effect/374.charge_plasma/end/attack/3/.mcfunction Outdated
Comment thread Asset/data/asset/functions/effect/374.charge_plasma/end/attack/1/.mcfunction Outdated
Comment thread Asset/data/asset/functions/effect/374.charge_plasma/end/attack/3/.mcfunction Outdated
Comment thread Asset/data/asset/functions/effect/374.charge_plasma/end/attack/3/.mcfunction Outdated
Comment thread Asset/data/asset/functions/object/1168.plasma_spark/tick/explode.mcfunction Outdated
Comment thread Asset/data/asset/functions/object/1168.plasma_spark/tick/explode.mcfunction Outdated
Comment thread Asset/data/asset/functions/object/1169.plasma_beam/hit_entity/damage.mcfunction Outdated

@Lapis-LJA Lapis-LJA left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

正直長押しトリガーがもうすぐ実装されそうなので、チャージ関連の処理は直さなくてもいいかもしれない

Comment thread Asset/data/asset/functions/effect/0374.charge_plasma/end/attack/1/.mcfunction Outdated
Comment thread Asset/data/asset/functions/object/1168.plasma_spark/tick/explode.mcfunction Outdated
Comment thread Asset/data/asset/functions/effect/0374.charge_plasma/end/attack/1/.mcfunction Outdated
Comment thread Asset/data/asset/functions/effect/0374.charge_plasma/re-given/.mcfunction Outdated

@Lapis-LJA Lapis-LJA left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

長押しトリガーと長押し解除トリガーが実装されたので、ソレを使った実装にしよう

@tatuharu tatuharu left a comment •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

このレビューはハルがAI自動レビューの動作テストのためにOpus5.5 Extra Highを使用してレビューを行なったものです。鵜呑みにせず、指摘を採用するかはお任せします。

指摘が 4 件あります。詳細は行コメントに書いています。

  • 〔不具合〕レーザーの HitTarget をプレイヤーから外しており、Mob に残る
  • 〔不具合〕チャージ段階を押し始めからの tick で判定しているため、クールダウン中に押し始めると段階がずれる
  • 〔軽微〕毎 tick 行う Effect 374 の再付与が、今は役割を持っていない
  • 〔確認〕段階2と3の攻撃だけ、対象に tag=Enemy の条件がない

Comment thread Asset/data/asset/functions/object/1169.plasma_beam/detect_hit_entity/.mcfunction Outdated

@tatuharu tatuharu left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

このレビューはハルがAI自動レビューの動作テストのためにOpus5.5 Extra Highを使用してレビューを行なったものです。鵜呑みにせず、指摘を採用するかはお任せします。

指摘が 2 件あります。詳細は行コメントに書いています。

  • 〔不具合〕段階3のレーザーを上に向けて撃つと、20ブロックを超えた位置の Mob に HitTarget が残る
  • 〔挙動の変化〕段階1の火花が37個から36個に減った

scoreboard players remove $RemainingRange Temporary 1

# 再帰
execute positioned ^ ^ ^0.5 if entity @s[tag=!Hit] if score $RemainingRange Temporary matches 1.. run function asset:artifact/1465.versatile_plasma/release_using_item/3.3.laser/rec

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

上に向けて撃つと、足元から20ブロックを超えた位置の Mob に HitTarget が付き、ダメージが入らないままタグが残ります。前に指摘した、HitTarget が Mob に残る問題と同じことが起きます。

34c44ed で、レーザーの射程は「プレイヤーの足元から20ブロック以内」から「目の位置から0.5ブロックずつ40回」に変わりました。目は足元より約1.6ブロック高いので、真上に撃つと、判定の位置は足元から約21.1ブロックの高さまで進みますが、damage.mcfunction の13行目と17行目は、今も足元から distance=..20 の Mob にだけダメージを与えてタグを外します。そのため、その間にいる Mob にはタグだけが残り、次にレーザーを撃ったとき、当たっていなくても20ブロック以内にいればダメージが入ります。

検証用サーバー(Minecraft 1.20.4、このPRの head 34c44ed)で、3.3.laser/ を RCON からプレイヤーとして呼んで確かめました。足元から20.5ブロック上にハスクを置いて真上に撃つと、ハスクに HitTarget が付き、ダメージは入りませんでした。続けてハスクを東に5ブロックの位置へ移して西に撃つと、レーザーはハスクに当たっていないのに、ハスクに295.2のダメージが入りました。2d024e0 で同じ手順を流すと、どちらの射撃でもハスクにタグは付かず、ダメージも入りませんでした。

足元から20ブロックの条件を残すなら、次のように書けます。

Suggested change
execute positioned ^ ^ ^0.5 if entity @s[tag=!Hit] if score $RemainingRange Temporary matches 1.. run function asset:artifact/1465.versatile_plasma/release_using_item/3.3.laser/rec
execute positioned ^ ^ ^0.5 if entity @s[tag=!Hit,distance=..20] if score $RemainingRange Temporary matches 1.. run function asset:artifact/1465.versatile_plasma/release_using_item/3.3.laser/rec

目の位置から数える射程のままにするなら、damage.mcfunction の distance=..20 を、レーザーの届く距離に合わせて広げる必要があります。suggestion を適用したコードは確かめていません。

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

修正を確認しました。上に向けて撃つと20ブロックを超えた位置の Mob に HitTarget が残る件は解消されていて、この指摘への対応として問題ありません。

a61b9e8 で、22行目の再帰の条件は distance=..20 に戻り、射程はまた足元から20ブロック以内になりました。3.3.laser/ の処理は、2d024e0 とコメントの「再起」→「再帰」以外は同じです。

検証用サーバー(Minecraft 1.20.4、このPRの head a61b9e8)で、前回と同じ手順で確かめました。足元から20.5ブロック上のハスクに真上に撃ってもタグは付かず、続けて西に撃っても、当たっていないハスクにダメージは入りませんでした。

Comment on lines +11 to +12
# 36回実行
scoreboard players set $rec Temporary 36

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

段階1で出る火花(Object 1168)が、37個から36個に減りました。

34c44ed の前は、向いている方向に確定で1個を出してから、rec で36個をランダムな位置に出していました。34c44ed では確定の1個も rec の中で出すようになり、rec の回数は36回のままなので、ランダムな位置の火花は35個になります。

検証用サーバー(Minecraft 1.20.4、このPRの head 34c44ed)で、3.1.spark/ を RCON からプレイヤーとして呼び、同じコマンドの並びで ObjectID 1168 の Entity を数えると36個で、2d024e0 では37個でした。どちらの head でも、すべての火花の General.Object.Tick は2〜7でした。

37個のままにするなら、次のように回数を1つ増やせます。

Suggested change
# 36回実行
scoreboard players set $rec Temporary 36
# 37回実行
scoreboard players set $rec Temporary 37

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants