Steamをインストール
ログイン
|
言語
简体中文(簡体字中国語)
繁體中文(繁体字中国語)
한국어 (韓国語)
ไทย (タイ語)
български (ブルガリア語)
Čeština(チェコ語)
Dansk (デンマーク語)
Deutsch (ドイツ語)
English (英語)
Español - España (スペイン語 - スペイン)
Español - Latinoamérica (スペイン語 - ラテンアメリカ)
Ελληνικά (ギリシャ語)
Français (フランス語)
Italiano (イタリア語)
Bahasa Indonesia(インドネシア語)
Magyar(ハンガリー語)
Nederlands (オランダ語)
Norsk (ノルウェー語)
Polski (ポーランド語)
Português(ポルトガル語-ポルトガル)
Português - Brasil (ポルトガル語 - ブラジル)
Română(ルーマニア語)
Русский (ロシア語)
Suomi (フィンランド語)
Svenska (スウェーデン語)
Türkçe (トルコ語)
Tiếng Việt (ベトナム語)
Українська (ウクライナ語)
翻訳の問題を報告
The DPS of a weapon is Damage * Accuracy * (60 / (WarmupTicks + CooldownTicks + BurstTicks * (BurstCount - 1)). Travel time isn't even a factor in it.
Edit: here's an example, I ran a quick patch on this weapon to have a 0.5 projectile speed, but left all of the other stats the same. The mod now thinks the weapon does 3.08 DPS at Touch, when it should be reporting 11.55. 9 damage per shot * 6 projectile = 54 damage per burst. 60 ticks warmup, 102 ticks cooldown, 8 ticks burst * 5 burst count less one = 202 ticks total firing cycle. 72% accuracy at Touch. (54 * 0.72) / (202/60) = 11.5485.
Your mod is factoring in the 10.00s travel time, but as the second image shows, there's 3 volleys in the air and the pawn is aiming for a 4th, clearly showing that the travel time is overlapping with the cooldown (and the subsequence warmup and such, because it's so long). It'll take a good 2 minutes for those rounds to get to his target in this exaggerated example, but once the first burst gets there, it'll be doing 11.54 DPS, not 3.08. In more realistic examples, the projectile(s) would strike the target somewhere during the cooldown or possibly the following warmup, depending on speed and their tick lengths. It'd only be valid to include the travel time in the DPS equation if the cooldown didn't start until the projectile hit the target (which isn't the case, as evidenced in the screenshot).
https://imgur.com/a/dIabR9O
Exception occurred processing mod finalize events! Details: System.TypeInitializationException: The type initializer for 'Mehni.Misc.Modifications.HarmonyPatches' threw an exception. ---> System.FormatException: Method virtual System.Void RimWorld.Dialog_AssignBuildingOwner::DoWindowContents(UnityEngine.Rect inRect) cannot be patched. Reason: Invalid IL code in (wrapper dynamic-method) RimWorld.Dialog_AssignBuildingOwner:RimWorld.Dialog_AssignBuildingOwner.DoWindowContents_Patch0 (RimWorld.Dialog_AssignBuildingOwner,UnityEngine.Rect): IL_022a: ldfld 0x00000073
at HarmonyLib.PatchFunctions.UpdateWrapper (System.Reflection.MethodBase original, HarmonyLib.PatchInfo patchInfo) [0x0008c] in <c38a8c3281a047488dac8c9d063b7abb>:0
at HarmonyLib.PatchProcessor.Patch () [0x000fc] in <c38a8c3281a047488dac8c9d063b7abb>:0
at HarmonyLib.Harmony.Patch (System.Reflection.MethodBase original, HarmonyLib.HarmonyMethod prefix, HarmonyLib.HarmonyMethod postfix, HarmonyLib.HarmonyMethod transpiler, HarmonyLib.HarmonyMethod finalizer) [0x00028] in <c38a8c3281a047488dac8c9d063b7abb>:0
at Mehni.Misc.Modifications.HarmonyPatches..cctor () [0x001dd] in <acf8997ad89f4326bbb89d838e1afb11>:0
--- End of inner exception stack trace ---
at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor(intptr)
at System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor (System.RuntimeTypeHandle type) [0x0002a] in <eae584ce26bc40229c1b1aa476bfa589>:0
at BetterLoading.Stage.InitialLoad.StageRunStaticCctors+<StaticConstructAll>d__16.MoveNext () [0x00073] in <1b38b4c8227d46ebb2bf64926b6f02ea>:0
Is an ongamestart error in the latest unstable. May present a problem down the road, may not. No way to be sure until the next version is officially released.
Or after choosing Fluid, choosing your Structure, Memes, and Precepts:
Or just any progression at all to begin a new game with this mod on the latest unstable. Unsure what else to do other than report it this way, let me know if I can help any other way.
Exception from asynchronous event: System.TypeInitializationException: The type initializer for 'Mehni.Misc.Modifications.HarmonyPatches' threw an exception. ---> System.FormatException: Method virtual System.Void RimWorld.Dialog_AssignBuildingOwner::DoWindowContents(UnityEngine.Rect inRect) cannot be patched. Reason: Invalid IL code in (wrapper dynamic-method) RimWorld.Dialog_AssignBuildingOwner:RimWorld.Dialog_AssignBuildingOwner.DoWindowContents_Patch0 (RimWorld.Dialog_AssignBuildingOwner,UnityEngine.Rect): IL_022a: ldfld 0x00000073
1.3.3146 unstable build.
https://gist.github.com/HugsLibRecordKeeper/00a135388fea2ad3b3cf2b8b4c176418
I've reported this bug to Mehni because currently I have no extra time to do modding.
After he finished this bug, I will upload the new version ASAP.
https://gist.github.com/HugsLibRecordKeeper/79059db5f5e55ba5d460e1f947bf853f
Exception ticking CrafterHunter (at (143, 0, 5)): System.TypeInitializationException: The type initializer for 'Mehni.Misc.Modifications.HarmonyPatches' threw an exception. ---> System.FormatException: Method virtual System.Void RimWorld.Dialog_AssignBuildingOwner::DoWindowContents(UnityEngine.Rect inRect) cannot be patched. Reason: Invalid IL code in (wrapper dynamic-method) RimWorld.Dialog_AssignBuildingOwner:RimWorld.Dialog_AssignBuildingOwner.DoWindowContents_Patch0 (RimWorld.Dialog_AssignBuildingOwner,UnityEngine.Rect): IL_022a: ldfld 0x00000073
at HarmonyLib.PatchFunctions.UpdateWrapper (System.Reflection.MethodBase original, HarmonyLib.PatchInfo patchInfo) [0x0008c] in <c38a8c3281a047488dac8c9d063b7abb>:0
at HarmonyLib.PatchProcessor.Patch () [0x000fc] in <c38a8c3281a047488dac8c9d063b7abb>:0
at HarmonyLib.Harmony.Patch (System.Reflection.MethodBase original, HarmonyLib.HarmonyMethod prefix, HarmonyLib.HarmonyMethod postfix, HarmonyLib.HarmonyMethod transpiler, HarmonyLib.HarmonyMethod finalizer) [0x00028] in <c38a8c3281a047488dac8c9d063b7abb>:0
at Mehni.Misc.Modifications.HarmonyPatches..cctor () [0x001dd] in <acf8997ad89f4326bbb89d838e1afb11>:0
--- End of inner exception stack trace ---
at (wrapper dynamic-method) Verse.Pawn.Verse.Pawn.Tick_Patch1(Verse.Pawn)
at (wrapper dynamic-method) Verse.TickList.Verse.TickList.Tick_Patch2(Verse.TickList)
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch0 (string)
(wrapper dynamic-method) Verse.TickList:Verse.TickList.Tick_Patch2 (Verse.TickList)
(wrapper dynamic-method) Verse.TickManager:Verse.TickManager.DoSingleTick_Patch5 (Verse.TickManager)
Verse.TickManager:TickManagerUpdate ()
(wrapper dynamic-method) Verse.Game:Verse.Game.UpdatePlay_Patch3 (Verse.Game)
(wrapper dynamic-method) Verse.Root_Play:Verse.Root_Play.Update_Patch0 (Verse.Root_Play)
Error in static constructor of Mehni.Misc.Modifications.HarmonyPatches: System.TypeInitializationException: The type initializer for 'Mehni.Misc.Modifications.HarmonyPatches' threw an exception. ---> System.FormatException: Method virtual System.Void RimWorld.Dialog_AssignBuildingOwner::DoWindowContents(UnityEngine.Rect inRect) cannot be patched. Reason: Invalid IL code in (wrapper dynamic-method) RimWorld.Dialog_AssignBuildingOwner:RimWorld.Dialog_AssignBuildingOwner.DoWindowContents_Patch0 (RimWorld.Dialog_AssignBuildingOwner,UnityEngine.Rect): IL_022a: ldfld 0x00000073
at HarmonyLib.PatchFunctions.UpdateWrapper (System.Reflection.MethodBase original, HarmonyLib.PatchInfo patchInfo) [0x0008c] in <c38a8c3281a047488dac8c9d063b7abb>:0
at HarmonyLib.PatchProcessor.Patch () [0x000fc] in <c38a8c3281a047488dac8c9d063b7abb>:0
at HarmonyLib.Harmony.Patch (System.Reflection.MethodBase original, HarmonyLib.HarmonyMethod prefix, HarmonyLib.HarmonyMethod postfix, HarmonyLib.HarmonyMethod transpiler, HarmonyLib.HarmonyMethod finalizer) [0x00028] in <c38a8c3281a047488dac8c9d063b7abb>:0
at Mehni.Misc.Modifications.HarmonyPatches..cctor () [0x001dd] in <acf8997ad89f4326bbb89d838e1afb11>:0
--- End of inner exception stack trace ---
at (wrapper managed-to-native) System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor(intptr)
at (wrapper dynamic-method) System.Runtime.CompilerServices.RuntimeHelpers.System.Runtime.CompilerServices.RuntimeHelpers.RunClassConstructor_Patch1(System.RuntimeTypeHandle)
at StartupImpact.Patch.StaticConstructorOnStartupUtilityCallAll.Prefix () [0x00059] in <844a17ebd71c4d8bb5a7958aa41b3802>:0
UnityEngine.StackTraceUtility:ExtractStackTrace ()
(wrapper dynamic-method) Verse.Log:Verse.Log.Error_Patch3 (string)
StartupImpact.Patch.StaticConstructorOnStartupUtilityCallAll:Prefix ()
(wrapper dynamic-method) Verse.StaticConstructorOnStartupUtility:Verse.StaticConstructorOnStartupUtility.CallAll_Patch2 ()
Verse.PlayDataLoader/<>c:<DoPlayLoad>b__4_3 ()
Verse.LongEventHandler:ExecuteToExecuteWhenFinished ()
Verse.LongEventHandler:UpdateCurrentAsynchronousEvent ()
Verse.LongEventHandler:LongEventsUpdate (bool&)
(wrapper dynamic-method) Verse.Root:Verse.Root.Update_Patch1 (Verse.Root)
Verse.Root_Entry:Update ()