Jump to content


MIRV Travelling Twice

Bug MIRV Missiles Known Issue

  • Please log in to reply
160 replies to this topic

Spud_Dastardly #41 Posted 04 February 2017 - 12:11 PM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016
In the assembly-csharp.dll, I noticed the weapon type parameter isMirvFragment. It's unused in WeaponTypes. I wonder, is it possible to define the Mirv fragments as a weapon type using this, and set isPDBLockeable to true?  

Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 


WhatIsSol #42 Posted 06 February 2017 - 06:04 PM

    Commander

  • Players
  • 123
  • Member since:
    03-04-2016

@Spud_Dastardly: I don't think so.  The code looks to me to actually build a weapon type on the fly to create the fragment.   But  just in case you want to play around with it and see if you can make it work.  These are the changes I made to the dll:

 

Split Location Fix:

Set the owner of the fragment to the missile and not the firing ship (This made it split at the proper place)

 

PD Targeting Fix:

Set isPDBlockable to true

Set isTargetable to true

Set HitPoints to 1

 

Note: I never publicly released these fixes, was hoping wargamer would do it since I sent this data to them a long time ago.  If they are done with the game I might package up a unofficial fix pack for it.


Edited by WhatIsSol, 06 February 2017 - 06:55 PM.


Spud_Dastardly #43 Posted 21 February 2017 - 07:07 AM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016
I think we're going to need that unofficial fix pack. It doesn't look like Wargaming is going to release a patch any time soon. I'd love to include it with my bug fixes mod and 5X if you're willing to share it. By the way, what are you using to edit the .exe file?

Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 


Laegad #44 Posted 21 February 2017 - 07:25 PM

    Commander

  • Players
  • 171
  • Member since:
    06-05-2016

I think i will not put an exe file in my computer if i've no idea of who could make it.

(and, if possible, i prefer to run Moo on a "real" machine (==not a virtual machine))

The only available patch to do is to remove MIRV from a game, with a mod.

It's not a probleme for me. I prefer a game with less things but with less bugs.


Edited by Laegad, 21 February 2017 - 07:30 PM.


Exoclyps #45 Posted 22 February 2017 - 12:33 AM

    Captain

  • Players
  • 351
  • Member since:
    11-04-2016
Actually, wouldn't need a modified exe, but a modified dll file.

Spud_Dastardly #46 Posted 22 February 2017 - 03:36 AM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016

I say exe because WhatIsSol said that's what he patched:

View PostWhatIsSol, on 10 December 2016 - 07:19 AM, said:

It is not in a user editable file.  I wrote my own patch to the games exe to correct the issue.

Anyway if he uploaded it to Nexus mods, they scan it with over 50 anti virus programs, so I'm sure it would be fine.


Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 


Exoclyps #47 Posted 22 February 2017 - 04:07 AM

    Captain

  • Players
  • 351
  • Member since:
    11-04-2016
I missed that. He later said he modified the dll. But yeah, I'd use it either way.

Ericjohn #48 Posted 22 February 2017 - 02:29 PM

    Ensign

  • Players
  • 9
  • Member since:
    10-30-2011

View PostLaegad, on 21 February 2017 - 07:25 PM, said:

I think i will not put an exe file in my computer if i've no idea of who could make it.

(and, if possible, i prefer to run Moo on a "real" machine (==not a virtual machine))

The only available patch to do is to remove MIRV from a game, with a mod.

It's not a probleme for me. I prefer a game with less things but with less bugs.

 

That limits you quite a bit, how is me editing an .exe to fix an issue any different than a developer editing an .exe to fix an issue?

Edited by Ericjohn, 22 February 2017 - 02:59 PM.


WhatIsSol #49 Posted 22 February 2017 - 11:54 PM

    Commander

  • Players
  • 123
  • Member since:
    03-04-2016

@Spud_Dastardly, @Exoclyps: I was not precise on my previous posts, I tend to interchangeably call anything an exe that happens to contain executable code. So far the only MOOCts object I have modified was the "Assembly-CSharp.dll"

 

@Spud_Dastardly: When I was doing my hacks, I used two tools.

1) ildasm.exe from Windows SDK

2) ilams.exe from Windows.NET

 

ildasm can convert the binary to the Common Intermediate Language (CIL). Which you can then edit in any text editor you want. ilasm is used to convert the CIL back into executable code.

 

@Laegad: I can understand being concerned about running random executable even scanned ones. That is a personal decision of course that only you can make for yourself.

 

To all:

 

Current Fixes I have done:

1. MIRV - Now spawn in correct location and are PD targetable.

2. Leader BuyCost - Corrected it so it reduces the prices as it is supposed to. (untested but really small change)

 

Given that the game’s development cycle appears to be abandoned, I don't have an issue releasing this on Nexus.  I will need some time before I would feel comfortable releasing. For one thing I would want to publish the CIL modifications snippets so if someone really wanted to they could do the decompile/edit/compile themselves.  I was holding out hoping that NGD would just take the code snippets I sent them to correct and push out a patch, but oh well.

 

I will try to see if I could get something put together for early next week. Life might prevent that as I need to fix my car’s engine. I’m getting a silly misfire on cylinder one. Really hoping just the sparkplug or coil, but you never know right? Might be tearing the engine apart to correct and there goes the weekend.



Spud_Dastardly #50 Posted 25 February 2017 - 06:41 AM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016
Cool, thanks. I might make a few code modifications myself. I'm looking forward to your fixes! Best of luck with your car.

Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 


WhatIsSol #51 Posted 26 February 2017 - 01:28 AM

    Commander

  • Players
  • 123
  • Member since:
    03-04-2016

If anyone is interested I have posted my first unofficial code fix pack on nexus.

 

http://www.nexusmods...stars/mods/30/?

 

It addresses the following bugs:

Bug: Tactical Battle MIRV splitting at wrong location and MIRV fragment's are not target-able by Point Defense
Fix: Corrected split location and made the fragments PD target-able.

Bug: Leader's with buyout reduction increasing costs vs reducing prices
Fix: Changed the operation to correct subtract instead of add the Leader's bonus.

Bug: Minor Civilization investing does not show reduction in your BC's total until you proceed to the next turn
Fix: Forced refresh of screen

Bug: If Over Command Limit and you scrap a ship, the screen still shows that you are running a BC deficit due to command points overage
Fix: Recalculates the Net Command Points for your fleet and forced screen refresh after this event

Bug: At start of turn, if your empire procedures a ship or otherwise increased command points over your limit, this new BC deficit does not show up until your next turn
Fix: Recalculates the Net Command Points for your fleet and forced screen refresh after this event

Bug: Starbases/Missile Bases/Orbital Batteries/Military Outposts do not repair themselves.
Fix: Added at start of your turn all static defenses are repaired at a fixed 20% rate

Bug: AI is overvaluing trade/research treaties - you can make insane lopsided deals
Fix: Changed calculation so it is more of a neutral decision

 

 



Exoclyps #52 Posted 26 February 2017 - 10:44 AM

    Captain

  • Players
  • 351
  • Member since:
    11-04-2016
Would it be possible that, rather than a fixed rate, that the defense structures repair based on the "repairFactor" value that can be found in structure yaml? I think that would be a better approach since the feature is half there already and it also means that it can be modded on a whim.

Spud_Dastardly #53 Posted 26 February 2017 - 01:59 PM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016
I had suggested to him putting is as REPAIR_FACTOR_BASE in Globals.yaml. Giving it to repairFactor means that you would have to add a yaml mod for missile base and such to repair as well, and unfortunately the repair for missile base and star base would stack to give extra repair to orbiting ships.

Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 


WhatIsSol #54 Posted 27 February 2017 - 05:47 PM

    Commander

  • Players
  • 123
  • Member since:
    03-04-2016

Yep in Fix Pack 2 I have changed this to REPAIR_FACTOR_BASE from global.  

 

So far also has fixes for the ground combat leader bonus and now any changes in the weapon.yaml will show up in the UI.

 

I'm deciding on next issue to tackler - but it sounds like Population Growth might be it.

 

Or maybe ground combat - I really want 2 things in that - to be able to see the bonues on both sides and to see the attackers troops disappear as the battle goes on.  At least one of these is going to require some UI work in the SWF file - something I'm not very good at doing.

 

 

 

 



WhatIsSol #55 Posted 27 February 2017 - 06:19 PM

    Commander

  • Players
  • 123
  • Member since:
    03-04-2016

Course thinking about repair rates - could do the best of both?  Read the structures repairFactor and just take the min of that and the global.REPAIR_FACTOR_BASE.  That would make all of them repair at least at the REPAIR_FACTOR_BASE rate and possibly higher if defined in the structure.  I might think about that later - but right now repairing at ALL was my goal and I think setting it to a global value is the simplest and still provides a lot of benefit to the game.

 

I want to table that and move on to the next major issue - anyway just my thoughts.



Exoclyps #56 Posted 28 February 2017 - 01:19 AM

    Captain

  • Players
  • 351
  • Member since:
    11-04-2016

Oh, I thought repairFactor factor meant how fast the said defense was supposed to repair itself and that it wasn't functioning properly. If it means how fast it repairs others it's another story and I'd be fine with just a global then really. But as WhatIsSol suggested, having it choose the highest value would kind of make sense though, unless the global is always the highest value, then it doesn't really matter.

 

Population Growth sounds like a neat thing to deal with. The simplest approach would be to just change it to a multiplier rather than additive. The debate that comes up though is if one would want to keep it with a negative value or change it to a positive value.

 

So yeah, rather than 50% population growth being 50% less time, it actually means 50% faster so 1/1.5. Heck going that approach additive might actually be okay, since it would mean that 50% from Sakkra and 50% from tech bonuses actually just means 100% faster. Rather than 1000% faster. It would also balance the trait a little against other traits. I kinda would prefer this approach.

 

Edit:

Okay, I won't tell you how to do it, but the formula I'd gone with would probably been something like:

FoodNeededForGrowth = BaseValue / ((1+PerkGrowth) * (1 / (AchivementBonus + BuildingBonus + ResourceBonus)))

 

This would mean that all bonuses adds up, so at best you can get 75% faster with Universal Antidote, Cloning Center and Wildlife Resource found in 5X. And the trait bonus would multiply with that, so that these races actually do get 50% faster and nothing else.


Edited by Exoclyps, 28 February 2017 - 01:32 AM.


Spud_Dastardly #57 Posted 28 February 2017 - 02:35 AM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016

My suggestion would be to make it all multiplicative, so the bonus would be  1 / (1 + racial bonus) / (1 + microbiotics) / (1 + universal antidote) / (1 + cloning center) / (1 + (leader bonus / 100)) / (1 - event bonus) / (1 - resource bonus) (the last two values are negative in the yaml. You could also write it as 1 divided by the product of these factors in parentheses). 

That way each bonus you get is that percentage of a reduction from your current amount, so you get diminishing returns on population growth bonuses. The downside is you can't say 15% bonus + 25% bonus = 40% bonus, but that's how it works in real life anyway: If a store has a sale for 25% off and says first 100 customers get an additional 15%, they multiply those, not add. 


Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 


Ericjohn #58 Posted 28 February 2017 - 04:57 AM

    Ensign

  • Players
  • 9
  • Member since:
    10-30-2011

OMG, thank you so much WhatIsSol, between the 5x mod and your patch, this game is insanely enjoyable now....I can only imagine how much better it can get, you and Spud are the biggest reasons I still play this game.  Well done!

 


 

Edit:  There is one other big bug that I've run into, that I'm unsure if is fixable, I found that if there is a tech that has choices and a guaranteed tech, for instance gravity generators are guaranteed but then you have a choice of either orbital research or orbital ship yards, If you happen to have both of the choice techs prior to researching it yourself, for instance get orbital research stations through an anomaly, and then trade for orbital ship yards, then when you research the tech, you won't have access to the gravity generators, it's like the system just assumes when you have both choices that you already have researched the tech...but you don't actually gain access to the guaranteed option....now grav generators aren't that big of a deal, but if you are playing on a spiral galaxy and you lose access to multistate insulator due to the same bug, you effectively lose the game then and there.  It's a pretty serious bug imo, and am unsure if fixable.


Edited by Ericjohn, 28 February 2017 - 05:08 AM.


Exoclyps #59 Posted 28 February 2017 - 08:19 AM

    Captain

  • Players
  • 351
  • Member since:
    11-04-2016

Ah, yes ofcourse. I agree with Spud on his approach to formula. I personally prefer the approach of using the product as you mention, looks neater:

1 / ((1 + racial bonus) * (1 + microbiotics) ... )

 

One thing though, you'd not be experiencing diminishing returns as you suggest. For example Microbiotics and Cloning Center.

Additive: 1/(1+0.15+0.25) = 0.714

Multiplicative: 1/((1+0.15)*(1+0.25)) = 0.695

 

That said, I still think multiplicative ends up being the more interesting approach.

 

 

Now down to another related issue here. If the racial bonus is +20% with the suggested formula, the population grow 20% faster, all good. Now however if you go with -20% we all of sudden are getting 1 / 0.8 = 1.25, meaning that it will actually take 25% longer time to grow. Even worse if you have -50% and the result would mean 100% longer time. The reverse of the issue that the trait got now.


My suggestion to fix this would be to perhaps create a small check somewhere that converts the "racial bonus" to a new "modified racial bonus" value.


I'd imagine it would be something along the lines of
if RacialBonus < 0
{
ModifiedRacialBonus = 1/(1-RacialBonus)-1;
}
else
{
ModifiedRacialBonus = RacialBonus;
}


And then just use the ModifiedRacialBonus instead of the RacialBonus. This way -50% will actually mean that it takes 50% longer to reach the goal, rather than 100% longer. The code above is my attempt to show you the idea, you're the coder so I'm sure you know a better way :D

 


Edited by Exoclyps, 28 February 2017 - 09:22 AM.


Spud_Dastardly #60 Posted 28 February 2017 - 10:25 AM

    Rear Admiral

  • Players
  • 608
  • Member since:
    07-15-2016

View PostExoclyps, on 28 February 2017 - 04:19 PM, said:

Ah, yes ofcourse. I agree with Spud on his approach to formula. I personally prefer the approach of using the product as you mention, looks neater:

1 / ((1 + racial bonus) * (1 + microbiotics) ... )

 

One thing though, you'd not be experiencing diminishing returns as you suggest. For example Microbiotics and Cloning Center.

Additive: 1/(1+0.15+0.25) = 0.714

Multiplicative: 1/((1+0.15)*(1+0.25)) = 0.695

 

That said, I still think multiplicative ends up being the more interesting approach.

 

 

Now down to another related issue here. If the racial bonus is +20% with the suggested formula, the population grow 20% faster, all good. Now however if you go with -20% we all of sudden are getting 1 / 0.8 = 1.25, meaning that it will actually take 25% longer time to grow. Even worse if you have -50% and the result would mean 100% longer time. The reverse of the issue that the trait got now.


My suggestion to fix this would be to perhaps create a small check somewhere that converts the "racial bonus" to a new "modified racial bonus" value.


I'd imagine it would be something along the lines of
if RacialBonus < 0
{
ModifiedRacialBonus = 1/(1-RacialBonus)-1;
}
else
{
ModifiedRacialBonus = RacialBonus;
}


And then just use the ModifiedRacialBonus instead of the RacialBonus. This way -50% will actually mean that it takes 50% longer to reach the goal, rather than 100% longer. The code above is my attempt to show you the idea, you're the coder so I'm sure you know a better way :D

 

 

I was actually having second thoughts and wondering if going additive might be the right approach anyway since every other bonus in the game is additive, so it might be more intuitive to players. So then we would do 1 / (1 + racial bonus + microbiotics  + universal antidote  + cloning center  + (leader bonus / 100)  - event bonus - resource bonus). This would also be much easier for players to calculate their total bonus. Yes it would give a slightly greater bonus, but not too much. In the best possible case, you'd have +50% population growth, microbiotics, universal antidote, cloning center, +50% population growth, and wildlife reserves (ignoring the random event bonus), for a total bonus of 190%, or 1 / 2.9 = 0.34, which is still 3.4 times the food required as under the current system for +50% growth plus microbiotics plus cloning center alone. Also this way we're not nerfing population growth quite as much, which would help balance it against the percentage food bonus (which is also additive with weather controller I believe). 

 

Now, as for your point with the growth penalty, having it be additive in this way would make it much simpler to cancel out a -25% growth penalty with a cloning center. However, I do believe your interpretation of the math is incorrect. If 100 food is normally required for growth and you have a -50% penalty, the formula yields 1/0.5=2 implies 200 food needed to grow, so a population that produces 200 food gets half the population they otherwise would if they have the penalty. So 50% penalty already means 50% longer to reach the goal.  Or using your -20% example, a population that produces a total of 500 food gets 5 population without the bonus (100 each) and 4 population with the bonus (120 each), which means you get 20% less population, so it is correct to leave the formula as is. 

 

It is slightly complicated by the fact that the amount of food you need depends on your current population, so using a flat amount for the required food doesn't exactly produce the right numbers, but creating a formula that actually makes it so a 25% bonus gives you 5 population in the same time as you would get 4 population without the bonus regardless of current population and planet size would be far more complex and difficult for players to understand.

 

 


Get 5X - The Ultimate Balance Mod on Steam or on Nexus Mods!

 






Also tagged with Bug, MIRV, Missiles, Known Issue

2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users