[1.12.2]ドールズフロントラインmod 20/2/11更新

Modの公開/紹介はこちらでどうぞ。新規トピックの投稿にはユーザー登録が必要です。
UncleErwin
ID: WST8MRN5G7
記事: 3
登録日時: 2019年11月26日(火) 02:10
Minecraft ID: UErwin

Re: [1.12.2]ドールズフロントラインmod 20/2/3更新

投稿記事 by UncleErwin » 2020年2月08日(土) 20:59

たのしみですね!
0



びふぉ
ID: 5X6WE4F3H5
記事: 2
登録日時: 2020年2月07日(金) 19:02
連絡する:

Re: [1.12.2]ドールズフロントラインmod 20/2/3更新

投稿記事 by びふぉ » 2020年2月10日(月) 21:59

はじめまして。この度、マルチ環境下でドルフロMODで遊ばせていただきましたので、その際に気づいた点等についてご報告させていただきます。

バグと思わしき挙動が3点、バグかどうかの判断ができない挙動が5点、改善案が1点、質問が2点あります。
ひとつひとつが長いので、スポイラーで隠しておきます。


確認環境
ランチャー: MultiMC 0.6.7-develop-1415
Minecraft: 1.12.2 (forge 14.23.5.2847)
MOD Version: 2020/02/03(β10.0, GVCLib 1.12.2__1.5)


バグと思わしき挙動


1. (マルチ限定)拠点や基地付近に行くと、latest.logに大量のNullPointerExceptionログが出る
Spoiler
Show
マルチ環境下において、鉄血拠点や弾薬庫等に近づくと、クライアントサイドでログが大量に生成されてしまいます。
(サーバーサイドで同様のエラーが出ないかについては、未確認)

ゲームが停止することはないものの、クライアントサイドの動作が非常に重くなってしまいます。

私はMultiMCランチャでこの問題を確認しましたが、現行の公式ランチャでも同様の事象が発生するようです。

( 原因 )
GFPacketHandler.INSTANCE2.sendToAll() メソッドが、マルチプレイ環境下だと送り先がない(と思われる)為。

( 生成されるログの一例 )

[19:04:40] [Client thread/ERROR] [FML]: FMLIndexedMessageCodec exception caught
java.lang.NullPointerException: null
at net.minecraftforge.fml.common.network.FMLOutboundHandler$OutboundTarget$5.selectNetworks(FMLOutboundHandler.java:162) ~[FMLOutboundHandler$OutboundTarget$5.class:?]
at net.minecraftforge.fml.common.network.FMLOutboundHandler.write(FMLOutboundHandler.java:378) ~[FMLOutboundHandler.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:730) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:816) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:723) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:111) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:801) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:814) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:794) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:831) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1032) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:296) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper.sendToAll(SimpleNetworkWrapper.java:236) [SimpleNetworkWrapper.class:?]
at hmggirlfront.block.tile.TileEntity_BaseBase.func_73660_a(TileEntity_BaseBase.java:78) [TileEntity_BaseBase.class:?]
at hmggirlfront.block.tile.TileEntity_Base_Munitionsdepot.func_73660_a(TileEntity_Base_Munitionsdepot.java:16) [TileEntity_Base_Munitionsdepot.class:?]
at net.minecraft.world.World.func_72939_s(World.java:1838) [amu.class:?]
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1847) [bib.class:?]
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1098) [bib.class:?]
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398) [bib.class:?]
at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_232]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_232]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_232]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_232]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_232]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_232]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_232]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_232]
at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) [NewLaunch.jar:?]
at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) [NewLaunch.jar:?]
at org.multimc.EntryPoint.listen(EntryPoint.java:143) [NewLaunch.jar:?]
at org.multimc.EntryPoint.main(EntryPoint.java:34) [NewLaunch.jar:?]

2. (マルチ限定)正規軍正式採用軽装甲シリーズ の二段ジャンプアビリティが、マルチプレイ環境下で機能しない
Spoiler
Show
シングルプレイ環境下では二段ジャンプできるものの、マルチプレイ環境下だと二段ジャンプができません。

同一マシンでクライアント・サーバー両方起動して検証して二段ジャンプができなかった為、おそらくラグは 原因ではない と思われます。

該当ソースコードで、GFPacketHandler.INSTANCE2.sendToAll() を使用していたので、おそらくパケットイベント処理に失敗しているのではないでしょうか。

3. アシストチップ - リーコン を使用した際に、松明を設置不可能な場所に松明を設置しようとする
Spoiler
Show
リーコン使用時に、葉ブロックやハーフブロック等の、松明を設置できない場所に対して松明を設置してしまいます。

暗い場所の葉ブロックの上に人形を立たせると、弾薬がどんどん松明になっていってしまいます。
人形が暗い水の底にいる場合にも、同様の事象が発生します。

また、暗い場所のハーフブロックの上に人形を立たせると、ハーフブロックが松明に置き換わり、結果ハーフブロックが消失します。


バグかどうかの判断ができない挙動

1. 人形に、装備不可能なアタッチメント・弾を使用すると、サバイバル環境下の場合、消失する
Spoiler
Show
MG人形に対してバックショット、SMG人形に対して防弾ベストといった、人形が装備できないアタッチメントを人形に対して使用すると、「カチッ」というアクション音の後、装備させようとしたアイテムが消失(ロスト)してしまいます。

間違った装備をつけようとしたペナルティ?にしては、ちょっと重いと思いましたので、消失しないようにしていただきたいです。

2. cfg_spawn_hell の設定が、Minecraftを再起動しないと反映されない
Spoiler
Show
(シングルプレイでしか問題にならないので、些細なことではありますが、念の為ご報告)

文字通りそのままで、cfg_spawn_hell設定は、Minecraftを再起動しないと反映されません。
GFEntiryRegistrys の処理が、Minecraft起動時にしか呼ばれない為と思われます。


蛇足:
@Configアノテーションを使う場合は、@RequiresWorldRestart を使うと、再起動を促すことができるようです
現在採用されているコンフィグ登録方式で同様の方法が使えるかはわかりませんが・・・

3. 輸送ヘリが、LSHIFTで降りられないのに、乗った際に、画面中央に「LSHIFTで降りる」と表示される
Spoiler
Show
文字通りそのままです。

Minecraftのトロッコやボート等の乗り物仕様上、出るのは致し方ないもの・・・なのでしょうか。
(些細な問題ではあるので、最悪 そーいうもの で割り切れるところではあります )

4. キーコンフィグの値が、輸送ヘリ等の乗り物のHUDの表示に反映されていない
Spoiler
Show
文字通りそのままです。
操作はキーコンフィグで設定したキーが使えます。あくまで表示だけです。

キーコンフィグを自分で覚えていれば問題はありませんが、一応念の為ご報告。

5. 自分のではない人形に、人形解体キットを使用できてしまう
Spoiler
Show
意図してこの動作にしているのかはわかりませんが、自分がオーナーではない他人の人形に対して、人形解体キットを使用できてしまいます。

(マルチ環境下で、これでイタズラされると、かなりこたえそう・・・)

改善案
鉄血Mobのデスポーン条件設定の追加
Spoiler
Show
鉄血Mobのスポーン、特にDinergate等のMobのスポーンが多いようです。

マルチプレイ環境下だと、鉄血Mobがデスポーンせずに残り続けることがあるようです。
(デスポーンしているのかもしれませんが、スポーン数に対してデスポーンが追いついていない状況?)
サーバー環境下では、128マス離れた際のデスポーンが機能しないこともあるのか、エンティティ数が時間毎に増大していってしまいました。
(少なくとも、輸送ヘリを使っての、Y座標で128マス以上離してのデスポーンは失敗、スポーンチャンク近辺だったからかな?)
(最終的にエンティティ数が700近くに増えたので、ピースフルにして消して対処)


コンフィグで、スポーン率や、(更新通知で言及はされていませんが)地下にスポーンさせない設定等で抑制はできますが、
その場合、マンティコア等のスポーンも減るので、稼ぎプレイが難しくなってしまいます。

私は、スポーン率より、大量にスポーンする設定になっている小型鉄血兵のデスポーン条件を操作したほうがよいのかな?とおもいましたが、いかがでしょうか。
ご検討の程お願いいたします。

質問
人形の誓約バフについて
Spoiler
Show
昨年09/07 の変更点に
> ・誓約システムの追加
>  レベルが50以上の人形に誓約の証を与えると誓約を結ぶことができます
>  誓約を結んだ人形とプレイヤーには常時攻撃力増加と再生のポーション効果が付与されます

昨年09/29 の変更点に
> 誓約時のポーション効果を変更

とありますが、人形自身には、該当バフがかかっていないようです。(エンティティ検索時に、スキル付与をおこなう人形が検索対象から除外されている?)
これは意図した動作ですか?

また、人形のオーナーではないプレイヤーに対しても誓約バフがかかりますが、これも意図した動作ですか?
(これはこれで便利だったりするので、意図していない動作であればオプション機能として残して欲しいです)

ソースコードについて
Spoiler
Show
ソースを使いたいとか、そういう意思がある等ではなく、単純に疑問に思ったので、ご質問させていただきたいのですが、

MOD付属のソースコードが、難読化処理後のもののようですが、これは、盗用防止や、ベータ版だから等の、何かしらの理由があるのでしょうか。

(暗黙の了解とかあるのかな?そのあたり私は存じ上げていません。申し訳ありません・・・)

お答えしたくないようであれば、この質問は無視していただいて結構です。

現在β版とのことですので、完成を楽しみにしております。
陰ながらMOD作成を応援させていただきます。頑張ってください! :)

以上です。
0

MG36
ID: 2CIDVVM6JG
記事: 28
登録日時: 2019年7月06日(土) 16:14
Minecraft ID: SCOPEMG36
いいねされた回数: 2回

Re: [1.12.2]ドールズフロントラインmod 20/2/11更新

投稿記事 by MG36 » 2020年2月11日(火) 11:05

mod更新しました
02/11 修正
   ・アタッチメント関連の読み込み処理を改良
   ・マルチにおける拠点ブロック周囲での例外発生の修正
   ・人形に装備できないアタッチメントを渡した際にアイテムが消失する問題を修正
   ・人形解体キットを自分の人形にしか適応できないように修正
   他
ゲスト さんが書きました:
2020年2月07日(金) 11:01
こんにちは
久々にmincraftを起動し最新のβ10を利用しようとした所
以下のエラーがinitialize時に発生してしまいクラッシュします。
β7.0では問題ありませんでした。

何が原因か推測できる方おられましたらよろしくお願いします。
Spoiler
Show
SugarCoffee さんが書きました:
2020年2月07日(金) 22:38

私の環境でもほぼ同一なクラッシュレポートが発生しましたが、GVCLib、DollsFrontLine1.12.2.β.10.0ともに再度ダウンロードして導入することによって解消したので、該当MODを削除して再度ダウンロードすることをおすすめします

各ファイルのハッシュ値(SHA1)
ハッシュ値とはファイルが違うかどうか判断するのに便利な値です
GVCLib__1.12.2__1.5.zip
83675ca163c899c34b35a99c13bd2dcab1b8aa9a
HMGDollsFrontLine1.12.2.β.10.0.zip
f78c8e86225bce051471e04e1b9c601d7d91f5eb

ハッシュ値の検証はエクスプローラー上でSHIFTキーを押しながら右クリックで出てくる
PowerShellウィンドウ(コマンドプロンプト)をここで開くをクリックした後に出てくる変な画面に
certutil -hashfile "ここにファイルの絶対パス"
を入力し、エンターを押すことで求めることができます
例:certutil -hashfile "F:\minecraft\1.12.2_forge\mods\HMGDollsFrontLine1.12.2.β.10.0.zip"
ハッシュ値が一致しない場合ほぼ確実に違うファイルです
ゲスト さんが書きました:
2020年2月08日(土) 00:57

ありがとうございます。ダウンロード時のファイル破損の可能性を失念していました。
確認した所見事にハッシュ値が異なっていました。
再度DLし直した所問題なく起動、プレイする事ができました。
単純なミスでお騒がせしてしまい申し訳ありませんでした。
非常に申し訳ありません。2/3にmod更新後、2/4にサイレント修正をしていました。主にサーバー関連の修正だったのですが内部のファイルを差し替えただけでしたので告知をしていませんでした。今後は告知を入れるよう気を付けます。

UncleErwin さんが書きました:
2020年2月08日(土) 20:59
たのしみですね!
ありがとうございます!

びふぉ さんが書きました:
2020年2月10日(月) 21:59
はじめまして。この度、マルチ環境下でドルフロMODで遊ばせていただきましたので、その際に気づいた点等についてご報告させていただきます。

バグと思わしき挙動が3点、バグかどうかの判断ができない挙動が5点、改善案が1点、質問が2点あります。
ひとつひとつが長いので、スポイラーで隠しておきます。


確認環境
ランチャー: MultiMC 0.6.7-develop-1415
Minecraft: 1.12.2 (forge 14.23.5.2847)
MOD Version: 2020/02/03(β10.0, GVCLib 1.12.2__1.5)


バグと思わしき挙動


1. (マルチ限定)拠点や基地付近に行くと、latest.logに大量のNullPointerExceptionログが出る
Spoiler
Show
マルチ環境下において、鉄血拠点や弾薬庫等に近づくと、クライアントサイドでログが大量に生成されてしまいます。
(サーバーサイドで同様のエラーが出ないかについては、未確認)

ゲームが停止することはないものの、クライアントサイドの動作が非常に重くなってしまいます。

私はMultiMCランチャでこの問題を確認しましたが、現行の公式ランチャでも同様の事象が発生するようです。

( 原因 )
GFPacketHandler.INSTANCE2.sendToAll() メソッドが、マルチプレイ環境下だと送り先がない(と思われる)為。

( 生成されるログの一例 )

[19:04:40] [Client thread/ERROR] [FML]: FMLIndexedMessageCodec exception caught
java.lang.NullPointerException: null
at net.minecraftforge.fml.common.network.FMLOutboundHandler$OutboundTarget$5.selectNetworks(FMLOutboundHandler.java:162) ~[FMLOutboundHandler$OutboundTarget$5.class:?]
at net.minecraftforge.fml.common.network.FMLOutboundHandler.write(FMLOutboundHandler.java:378) ~[FMLOutboundHandler.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:730) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:816) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:723) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:111) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:801) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:814) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:794) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:831) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1032) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:296) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper.sendToAll(SimpleNetworkWrapper.java:236) [SimpleNetworkWrapper.class:?]
at hmggirlfront.block.tile.TileEntity_BaseBase.func_73660_a(TileEntity_BaseBase.java:78) [TileEntity_BaseBase.class:?]
at hmggirlfront.block.tile.TileEntity_Base_Munitionsdepot.func_73660_a(TileEntity_Base_Munitionsdepot.java:16) [TileEntity_Base_Munitionsdepot.class:?]
at net.minecraft.world.World.func_72939_s(World.java:1838) [amu.class:?]
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1847) [bib.class:?]
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1098) [bib.class:?]
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398) [bib.class:?]
at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_232]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_232]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_232]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_232]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_232]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_232]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_232]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_232]
at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) [NewLaunch.jar:?]
at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) [NewLaunch.jar:?]
at org.multimc.EntryPoint.listen(EntryPoint.java:143) [NewLaunch.jar:?]
at org.multimc.EntryPoint.main(EntryPoint.java:34) [NewLaunch.jar:?]

2. (マルチ限定)正規軍正式採用軽装甲シリーズ の二段ジャンプアビリティが、マルチプレイ環境下で機能しない
Spoiler
Show
シングルプレイ環境下では二段ジャンプできるものの、マルチプレイ環境下だと二段ジャンプができません。

同一マシンでクライアント・サーバー両方起動して検証して二段ジャンプができなかった為、おそらくラグは 原因ではない と思われます。

該当ソースコードで、GFPacketHandler.INSTANCE2.sendToAll() を使用していたので、おそらくパケットイベント処理に失敗しているのではないでしょうか。

3. アシストチップ - リーコン を使用した際に、松明を設置不可能な場所に松明を設置しようとする
Spoiler
Show
リーコン使用時に、葉ブロックやハーフブロック等の、松明を設置できない場所に対して松明を設置してしまいます。

暗い場所の葉ブロックの上に人形を立たせると、弾薬がどんどん松明になっていってしまいます。
人形が暗い水の底にいる場合にも、同様の事象が発生します。

また、暗い場所のハーフブロックの上に人形を立たせると、ハーフブロックが松明に置き換わり、結果ハーフブロックが消失します。


バグかどうかの判断ができない挙動

1. 人形に、装備不可能なアタッチメント・弾を使用すると、サバイバル環境下の場合、消失する
Spoiler
Show
MG人形に対してバックショット、SMG人形に対して防弾ベストといった、人形が装備できないアタッチメントを人形に対して使用すると、「カチッ」というアクション音の後、装備させようとしたアイテムが消失(ロスト)してしまいます。

間違った装備をつけようとしたペナルティ?にしては、ちょっと重いと思いましたので、消失しないようにしていただきたいです。

2. cfg_spawn_hell の設定が、Minecraftを再起動しないと反映されない
Spoiler
Show
(シングルプレイでしか問題にならないので、些細なことではありますが、念の為ご報告)

文字通りそのままで、cfg_spawn_hell設定は、Minecraftを再起動しないと反映されません。
GFEntiryRegistrys の処理が、Minecraft起動時にしか呼ばれない為と思われます。


蛇足:
@Configアノテーションを使う場合は、@RequiresWorldRestart を使うと、再起動を促すことができるようです
現在採用されているコンフィグ登録方式で同様の方法が使えるかはわかりませんが・・・

3. 輸送ヘリが、LSHIFTで降りられないのに、乗った際に、画面中央に「LSHIFTで降りる」と表示される
Spoiler
Show
文字通りそのままです。

Minecraftのトロッコやボート等の乗り物仕様上、出るのは致し方ないもの・・・なのでしょうか。
(些細な問題ではあるので、最悪 そーいうもの で割り切れるところではあります )

4. キーコンフィグの値が、輸送ヘリ等の乗り物のHUDの表示に反映されていない
Spoiler
Show
文字通りそのままです。
操作はキーコンフィグで設定したキーが使えます。あくまで表示だけです。

キーコンフィグを自分で覚えていれば問題はありませんが、一応念の為ご報告。

5. 自分のではない人形に、人形解体キットを使用できてしまう
Spoiler
Show
意図してこの動作にしているのかはわかりませんが、自分がオーナーではない他人の人形に対して、人形解体キットを使用できてしまいます。

(マルチ環境下で、これでイタズラされると、かなりこたえそう・・・)

改善案
鉄血Mobのデスポーン条件設定の追加
Spoiler
Show
鉄血Mobのスポーン、特にDinergate等のMobのスポーンが多いようです。

マルチプレイ環境下だと、鉄血Mobがデスポーンせずに残り続けることがあるようです。
(デスポーンしているのかもしれませんが、スポーン数に対してデスポーンが追いついていない状況?)
サーバー環境下では、128マス離れた際のデスポーンが機能しないこともあるのか、エンティティ数が時間毎に増大していってしまいました。
(少なくとも、輸送ヘリを使っての、Y座標で128マス以上離してのデスポーンは失敗、スポーンチャンク近辺だったからかな?)
(最終的にエンティティ数が700近くに増えたので、ピースフルにして消して対処)


コンフィグで、スポーン率や、(更新通知で言及はされていませんが)地下にスポーンさせない設定等で抑制はできますが、
その場合、マンティコア等のスポーンも減るので、稼ぎプレイが難しくなってしまいます。

私は、スポーン率より、大量にスポーンする設定になっている小型鉄血兵のデスポーン条件を操作したほうがよいのかな?とおもいましたが、いかがでしょうか。
ご検討の程お願いいたします。

質問
人形の誓約バフについて
Spoiler
Show
昨年09/07 の変更点に
> ・誓約システムの追加
>  レベルが50以上の人形に誓約の証を与えると誓約を結ぶことができます
>  誓約を結んだ人形とプレイヤーには常時攻撃力増加と再生のポーション効果が付与されます

昨年09/29 の変更点に
> 誓約時のポーション効果を変更

とありますが、人形自身には、該当バフがかかっていないようです。(エンティティ検索時に、スキル付与をおこなう人形が検索対象から除外されている?)
これは意図した動作ですか?

また、人形のオーナーではないプレイヤーに対しても誓約バフがかかりますが、これも意図した動作ですか?
(これはこれで便利だったりするので、意図していない動作であればオプション機能として残して欲しいです)

ソースコードについて
Spoiler
Show
ソースを使いたいとか、そういう意思がある等ではなく、単純に疑問に思ったので、ご質問させていただきたいのですが、

MOD付属のソースコードが、難読化処理後のもののようですが、これは、盗用防止や、ベータ版だから等の、何かしらの理由があるのでしょうか。

(暗黙の了解とかあるのかな?そのあたり私は存じ上げていません。申し訳ありません・・・)

お答えしたくないようであれば、この質問は無視していただいて結構です。

現在β版とのことですので、完成を楽しみにしております。
陰ながらMOD作成を応援させていただきます。頑張ってください! :)

以上です。
ご利用ありがとうございます!

1. (マルチ限定)拠点や基地付近に行くと、latest.logに大量のNullPointerExceptionログが出る
こちらでも確認しましたので修正を入れてみました。これで直っているといいのですが...

2. (マルチ限定)正規軍正式採用軽装甲シリーズ の二段ジャンプアビリティが、マルチプレイ環境下で機能しない
こちらでも確認しました。修正方法を模索中です。

3. アシストチップ - リーコン を使用した際に、松明を設置不可能な場所に松明を設置しようとする
こちらでも確認しました。同じく修正方法を模索中です。(アサルトの方も機能していないため、いっそ廃止という方向も検討中です...)

1. 人形に、装備不可能なアタッチメント・弾を使用すると、サバイバル環境下の場合、消失する
不具合であったため修正しました。

2. cfg_spawn_hell の設定が、Minecraftを再起動しないと反映されない
こちらでも確認しています。config関連は自分では未知な部分が多いため勉強中です...

3. 輸送ヘリが、LSHIFTで降りられないのに、乗った際に、画面中央に「LSHIFTで降りる」と表示される
こちらについても確認しました。修正方法が思いつかないため、現状そのままの予定です。

4. キーコンフィグの値が、輸送ヘリ等の乗り物のHUDの表示に反映されていない
同じくこちらについても修正方法が思いつかないため、現状そのままの予定です。

5. 自分のではない人形に、人形解体キットを使用できてしまう
不具合であったため修正しました。

鉄血Mobのデスポーン条件設定の追加
確認しました。小型モブは付近のモブの数が一定数以上では湧かないなどの処理を入れる予定です。

人形の誓約バフについて
人形自身にバフが掛からない問題については現状確認中です。
また、オーナーではないプレイヤーにもバフが掛かるのは仕様です。

ソースコードについて
これについては難読化前のものを入れているはずでした...入れ間違えていたようです。(ソースのバックアップも兼ねているので基本そのまま入れています)

急ぎ足での回答すみませんm(_ _)m
0

びふぉ
ID: 5X6WE4F3H5
記事: 2
登録日時: 2020年2月07日(金) 19:02
連絡する:

Re: [1.12.2]ドールズフロントラインmod 20/2/11更新

投稿記事 by びふぉ » 2020年2月12日(水) 22:49

MG36 さんが書きました:
2020年2月11日(火) 11:05
mod更新しました
02/11 修正
   ・アタッチメント関連の読み込み処理を改良
   ・マルチにおける拠点ブロック周囲での例外発生の修正
   ・人形に装備できないアタッチメントを渡した際にアイテムが消失する問題を修正
   ・人形解体キットを自分の人形にしか適応できないように修正
   他

ご利用ありがとうございます!

1. (マルチ限定)拠点や基地付近に行くと、latest.logに大量のNullPointerExceptionログが出る
こちらでも確認しましたので修正を入れてみました。これで直っているといいのですが...

2. (マルチ限定)正規軍正式採用軽装甲シリーズ の二段ジャンプアビリティが、マルチプレイ環境下で機能しない
こちらでも確認しました。修正方法を模索中です。

3. アシストチップ - リーコン を使用した際に、松明を設置不可能な場所に松明を設置しようとする
こちらでも確認しました。同じく修正方法を模索中です。(アサルトの方も機能していないため、いっそ廃止という方向も検討中です...)

1. 人形に、装備不可能なアタッチメント・弾を使用すると、サバイバル環境下の場合、消失する
不具合であったため修正しました。

2. cfg_spawn_hell の設定が、Minecraftを再起動しないと反映されない
こちらでも確認しています。config関連は自分では未知な部分が多いため勉強中です...

3. 輸送ヘリが、LSHIFTで降りられないのに、乗った際に、画面中央に「LSHIFTで降りる」と表示される
こちらについても確認しました。修正方法が思いつかないため、現状そのままの予定です。

4. キーコンフィグの値が、輸送ヘリ等の乗り物のHUDの表示に反映されていない
同じくこちらについても修正方法が思いつかないため、現状そのままの予定です。

5. 自分のではない人形に、人形解体キットを使用できてしまう
不具合であったため修正しました。

鉄血Mobのデスポーン条件設定の追加
確認しました。小型モブは付近のモブの数が一定数以上では湧かないなどの処理を入れる予定です。

人形の誓約バフについて
人形自身にバフが掛からない問題については現状確認中です。
また、オーナーではないプレイヤーにもバフが掛かるのは仕様です。

ソースコードについて
これについては難読化前のものを入れているはずでした...入れ間違えていたようです。(ソースのバックアップも兼ねているので基本そのまま入れています)

急ぎ足での回答すみませんm(_ _)m
迅速な対応ありがとうございます。

報告された中で不具合とされていた動作について、以下、私の手元では修正されていることが確認できました。
  • (マルチ限定)拠点や基地付近に行くと、latest.logに大量のNullPointerExceptionログが出る一部修正されていない模様、追記参照
  • 人形に、装備不可能なアタッチメント・弾を使用すると、サバイバル環境下の場合、消失する
  • 自分のではない人形に、人形解体キットを使用できてしまう

3. アシストチップ - リーコン を使用した際に、松明を設置不可能な場所に松明を設置しようとする
こちらでも確認しました。同じく修正方法を模索中です。(アサルトの方も機能していないため、いっそ廃止という方向も検討中です...)
リーコン機能は松明があまりないときにけっこう使ったりするので、残して欲しいところですが、技術的に難しいようであれば致し方ありませんね・・・。

ソースコードについて
ご回答ありがとうございます。そういうことでしたか。
人形の誓約バフについて
他プレイヤーにもかかるのは仕様でしたか。
---

誓約バフがかからない件、当初確認していたのがショットガンでしたので、もう少しわかりやすく確認できる手段を見つけて、追加検証してきました。
結論としては、やはり誓約バフはかかっていないようでした。
確認手順
Show
1. グレネードランチャーの人形と誓約します
2. 自身に火炎耐性バフがついていることを確認します
3. グレネードランチャーの人形を溶岩に落とします

---

結果: 人形は溶岩・炎上ダメージを受けている
(レッドストーンでスキルON/OFFしてみるも、効果はなし)
こちら、DollAI_AutoSkill.java の17-18行目

コード: 全て選択

List llist = doll.world.getEntitiesWithinAABBExcludingEntity(doll,
						doll.getEntityBoundingBox().grow(20.0D));
getEntitiesWithinAABBExcludingEntityメソッドの引数1で、検索除外対象として人形が指定されており、こちらが原因と思われますので、人形にもバフをかけるならば、

コード: 全て選択

List llist = doll.world.getEntitiesWithinAABB(EntityLivingBase.class,
						doll.getEntityBoundingBox().grow(20.0D));
のようにするとよいかとおもわれます。



2/15 追記

マルチ環境下でNullPointerExceptionが出る問題ですが、直しきれていなかったようです。
ソースから推察するに、これは、人形製造機でしょうか・・・?
エラーログ
Show
[12:28:40] [Client thread/ERROR] [FML]: FMLIndexedMessageCodec exception caught
java.lang.NullPointerException: null
at net.minecraftforge.fml.common.network.FMLOutboundHandler$OutboundTarget$5.selectNetworks(FMLOutboundHandler.java:162) ~[FMLOutboundHandler$OutboundTarget$5.class:?]
at net.minecraftforge.fml.common.network.FMLOutboundHandler.write(FMLOutboundHandler.java:378) ~[FMLOutboundHandler.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:730) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:816) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:723) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:111) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageCodec.write(MessageToMessageCodec.java:116) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:738) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:801) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:814) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:794) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:831) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1032) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:296) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper.sendToAll(SimpleNetworkWrapper.java:236) [SimpleNetworkWrapper.class:?]
at hmggirlfront.block.tile.TileEntityM_Crafting.func_73660_a(TileEntityM_Crafting.java:302) [TileEntityM_Crafting.class:?]
at net.minecraft.world.World.func_72939_s(World.java:1838) [amu.class:?]
at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1847) [bib.class:?]
at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1098) [bib.class:?]
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:398) [bib.class:?]
at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]
at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]
at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]
at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]
at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) [NewLaunch.jar:?]
at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) [NewLaunch.jar:?]
at org.multimc.EntryPoint.listen(EntryPoint.java:143) [NewLaunch.jar:?]
at org.multimc.EntryPoint.main(EntryPoint.java:34) [NewLaunch.jar:?]

以上です。
0

shun353
ID: 2CIGDT0QJI

Re: [1.12.2]ドールズフロントラインmod 20/2/11更新

投稿記事 by shun353 » 2020年2月21日(金) 16:58

楽しく遊ばせてもらっております。 人形のことなんですがゲームを終わらせてもう一度起動すると、スポーンさせていた人形が指示を受けつけなくなっていて、体力はあり、配給、弾薬は渡せるのですけれど、ステータスが見れず、人形の上に出る人形の状態を表すマークが出なかったりとしていて、解体キットも使えず、体力が0の時のモヤモヤが出ている状態です。バグであればどうか直していただけるとうれしいです。どうかよろしくお願いします。

SAKKA
ID: ALEHY0VI5B

Re: [1.12.2]ドールズフロントラインmod 20/2/11更新

投稿記事 by SAKKA » 2020年2月22日(土) 14:24

forge 1.12.2 - 14.23.5.2847 mod環境 HMGDollsFrontLine1.12.2.β.10.1 
導入mod CutAllSMP_v2.5.2、DigAllSMP_v2.3.2.、MineAllSMP_v2.6.5
     CodeChickenLib-1.12.2-3.2.3.358-universal.jar
     jei_1.12.2-4.15.0.293
     InventoryTweaks-1.63
     IronBackpacks-1.12.2-3.0.8-12
     ironchest-1.12.2-7.0.72.847
     journeymap-1.12.2-5.5.9
     OptiFine_1.12.2_HD_U_F5
     phosphor-1.12.2-0.2.6+build50-universal
     tektopia-1.0.93
     torohealth-1.12.2-11
以上の環境で、スポーンさせていた人形がゲームを閉じもう一度起動させワールドに入ると指示を受け付けなくなっていました。
その人形の特徴として
・待機などのクリックで行う状態の切り替えが行えない。人形の上に出る状態を表すアイコンが出ていない。
・指示端末に表示されず指示が行えない。
・GUIを開くことができない。
・強化チップや強化弾などの装備を人形につけることができない。
・解体キットや作戦報告書、快速修復契約書を使うことができない。
人形の状態として
・待機状態で座っている。
・その状態で敵を攻撃する。
・体力はある。しかし体力があるのにもかかわらず体力が0の時の緑色のモヤモヤが出ている。
・配給、弾薬は人形に向かってドロップしたもののみ受け取る。クリックでは受け取らない。
以上のことが見られました。何か原因があれば改善の点を教えてくださるとうれしいです。どうかよろしくお願いします。

返信する