Logo Platform
logo amplifiers simplified

Range Realignment Mod (Updated 7/9/17)

Reply
Copied to clipboard!
8 years ago
May 25, 2017, 2:31:02 PM
Painter448 wrote:

Scan mode seems to break with any mods enabled, I think only Amplitude can fix this.

Ok thanks man. Good to know I'm not daft. At least not for this reason.

0Send private message
7 years ago
Jul 10, 2017, 6:22:04 AM

Change logs:


V.1
Engine Evasion Bonuses reduced to eliminate a scenario where your ship was virtually invincible
Removed evasion bonus from Shield upgrades and replaced it with recharge bonus
Beam weapons can now fire from medium range
Missiles can now fire up close
Small ships have 5% evasion bonus
Adamantian Jammer gives 2% evasion bonus
V.2
Added critical hit chance to early Kinetic weapons and slightly boosted some mid and late game variants to make Kinetic more balanced with Laser
V.3
Boosted the evasion bonus from engines to level between what it was before launch. Also added evasion bonus for the two lower level engines.
Increased evasion on jammer from 2% to 5%
Increased the evasion bonus for small ships from 5% to 10%
The above evasion changes were made because I discovered a .6 modifier to evasion that was either nija'd in or I just hadn't noticed it before. This means that my prior evasion reductions were too severe and the adjustments above are meant to reflect that.
Energy and projectile enhancers now reduce your evasion. The theory behind this is that you are diverting a certain amount of energy from your engines to increase the weapon power. This slows you down making you less elusive to enemies. Prior to this there were no downsides to using these enhancers.
Increased accuracy of beam weapons to 60% at medium range.
Slightly increased the crew killed per shot for beam and missile weapons.
Updated mod files to reflect changes made in last few core game patches that didn't pertain to my changes but were not available to the user because my mod files overwrite the updated files. Those changes are now available to you (these were just a couple of changes that appear to be minor)

0Send private message
7 years ago
May 29, 2017, 11:11:28 AM
SlightConfusion wrote:

About the time the galaxy reached midgame I encountered various glitches and I think it could be linked to the mod:

(I never had this in any of my regular games)


  • I had an AI attack my scoutship as if we were in cold war even though we had made peace one turn earlier (diplo showed cold war afterwards but the scorescreen still had the peace symbol)
  • some unclickable fleet icon remained around a system even tho the fleet moved away already
  • sometimes loading a save from a running session would freeze the loading screen,
    but restarting the game /going to the main menu + turning on the mod (i have it locally installed to play offline) allowed me to load the save

Sorry to hear about your troubles but these are more likely linked to the game itself or the recent patch than this mod. The reason is that the mod is very simple. It introduces no new files and simply edits existing ones. There's only like 6 files editing as well and those edits are mostly value changes..

0Send private message
7 years ago
May 29, 2017, 9:17:38 AM

About the time the galaxy reached midgame I encountered various glitches and I think it could be linked to the mod:

(I never had this in any of my regular games)


  • I had an AI attack my scoutship as if we were in cold war even though we had made peace one turn earlier (diplo showed cold war afterwards but the scorescreen still had the peace symbol)
  • some unclickable fleet icon remained around a system even tho the fleet moved away already
  • sometimes loading a save from a running session would freeze the loading screen,
    but restarting the game /going to the main menu + turning on the mod (i have it locally installed to play offline) allowed me to load the save
0Send private message
7 years ago
May 28, 2017, 9:18:52 PM

yea like Painter448 mentioned scanmode during a battle doesnt seem to function properly anymore ^^




Oh well..

0Send private message
7 years ago
May 28, 2017, 7:20:21 PM

Very cool. thx!


I was looking around here because this is exactly what I wanted to try and learn how to mod myself (the issue with the beam weapons). 


Now I will try this out in my new game and see how the AI and my fleets do ^^


Perhaps you could include a bit more detailed info about the new range efficeny in the mods description.

Something like this:




SlugsMissiles/TorpLaserBeam
Short %10095100100
Medium %75858055
Long %607065-



Would be a bit easier for the steam users to understand what the mod is actually changing.


ps: im not sure if I agree that missiles are so effective in short range (it would be much easier to shoot them down before they have time to accellerate). but lets see :p

0Send private message
0Send private message
8 years ago
May 25, 2017, 7:02:07 PM

There are mentions of weapons for statistics. Maybe a shot in the dark.


<!-- Add the effective Beam damage to the attacking ship for statistics -->
<BattleEffectApplicationContext>
<TargetFilter>
<EntityFilter EntityRole="Owner">
</EntityFilter>
<ParentEntityFilter EntityType="Flotilla">
</ParentEntityFilter>
</TargetFilter>
<BattleEffectReference Name="AttackingFlotilla_UpdateDamageAppliedByBeamFromSalvo"/>
</BattleEffectApplicationContext>
<BattleEffectApplicationContext>
<InterpreterPrerequisite Flags="Prerequisite" Inverted="false">Path(Initiator, @'ClassSalvo,CriticalHit')</InterpreterPrerequisite>
<TargetFilter>
<EntityFilter EntityRole="Owner">
</EntityFilter>
<ParentEntityFilter EntityType="Flotilla">
</ParentEntityFilter>
</TargetFilter>
<BattleEffectReference Name="AttackingFlotilla_UpdateDamageAppliedByBeamCriticalFromSalvo"/>
</BattleEffectApplicationContext>
</BattleAction>

0Send private message
8 years ago
May 25, 2017, 5:47:37 PM
Kryptic57 wrote:
Painter448 wrote:

Scan mode seems to break with any mods enabled, I think only Amplitude can fix this.

That's pretty disappointing that you can't mod weapons without breaking a game feature. Did anyone look into the BattleActionDefinitions.xlm and make sure the entries are reflected there?


I didn't but I'll look at that tonight. I don't think that would have an effect though since all I did in my mod was just change the values for 3 numbers.

0Send private message
8 years ago
May 25, 2017, 5:41:43 PM
Painter448 wrote:

Scan mode seems to break with any mods enabled, I think only Amplitude can fix this.

That's pretty disappointing that you can't mod weapons without breaking a game feature. Did anyone look into the BattleActionDefinitions.xlm and make sure the entries are reflected there?

0Send private message
8 years ago
May 22, 2017, 6:25:57 PM

I've heard of some concern regarding long range weapons/tactics being too far superior to short range.  Here's the current arrangement. The numbers reflect accuracy % at a given range:





ShortMediumLong
Beam
100

Laser80100100
Kinetic10010080
Missile
80100




I'm going to fabricate a simple mod that rearranges these. With my proposal I'm aiming to make all weapons most effective up close while making them least effective at distance. Here's a rough draft of how I see it:



ShortMediumLong
Beam95
65
Laser957560
Kinetic958065
Missile958570



My hope is that this will make beam weapons more viable and create some more variety with ranges instead of long range dominating the 3 phases. Because the game is new and there are so many variables to consider I'm looking for feedback. Does this seem viable and desirable? Or have I missed something? Or do you like the system the way it is?

Updated 7 years ago.
0Send private message
0Send private message
8 years ago
May 25, 2017, 12:59:20 PM

Thanks Knyghtefall.


I'm now setting up a mod and just sandboxing right now. I've only changed one file and I can get the mod to load fine but the issue is that the Scan battle mode no longer works. That's to say that the battle stats like the HP of each ship and the shield strength don't show up.  The small changes I made do work though. In this case I gimped the accuracy of the kinetic weapons and sure enough they miss repeatedly. But Scan mode is not working during the battles. Here's a copy of my mod file:


<?xml version="1.0" encoding="utf-8" ?>
<Datatable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="Documentation/Schemas/Amplitude.Unity.Runtime.RuntimeModule.xsd">

<!-- Conversion = add new files, not compatible with other mods. Standalone = replace all files, not compatible with other mods. Extension = add new files, compatible with other mods. // Example : <RuntimeModule Name="ExampleTechnology" Type="Extension" Version="1.1">-->
<RuntimeModule Name="WeaponRangeMod" Type="Extension" Version="0.1">

<!-- Title as it appears in the workshop // Example : <Title>Example technology</Title>-->
<Title>Weapon Range Mod</Title>
<!-- Description as it appears in the workshop // Example : <Description>Adds:- Technology - Exclusion technology link - Cost reduction technology link</Description>-->
<Description>Experiment</Description>
<!-- Name of the author // Example : <Author>I_AM_ENFER</Author>-->
<Author>Sentimental Graffiti</Author>
<!-- Link to your other work // Example : <Homepage>https://www.games2gether.com/</Homepage>-->
<Homepage>NA</Homepage>
<!-- Image as it appears in the workshop. Size should be 430x430 pixels // Example : <PreviewImageFile>ModIcon.png</PreviewImageFile>-->
<PreviewImageFile>ModIcon.png</PreviewImageFile>
<!-- Add more content to this each time you update the mod // Example : <ReleaseNotes>Added XSD validation for easier use.</ReleaseNotes>-->
<ReleaseNotes>Lets see if it works</ReleaseNotes>
<!-- Available tags: AI, Art, Buildings, Gameplay, Improvements, MajorFactions, Maps, MinorFactions, Multiplayer, Other, Resources, Technologies, Units // Example : <Tags>Gameplay</Tags>-->
<Tags>Experiment</Tags>

<!-- XML files to load -->
<Plugins>

<!-- Add one DatabasePlugin for each type you modify. Available DataTypes are referenced in Documentation/DataTypes.txt // Example : <DatabasePlugin DataType="ScienceConstructibleElement, Assembly-CSharp">-->
<DatabasePlugin DataType="Amplitude.Unity.Simulation.SimulationDescriptor, Assembly-CSharp-firstpass">
<!-- Some DataTypes include sub-types, they are added as following // Example : <ExtraType DataType="TechnologyDefinition, Assembly-CSharp" />-->

<!-- Path leading to the files, starting from the location of this XML file. Note that you can use * to include several files at once (EntityActions[*].xml) // Example : -->
<FilePath>Public/Simulation/Battles/SimulationDescriptors[ModuleWeapon].xml</FilePath>
</DatabasePlugin>


<!-- Add this if you replace text. Note that sub-folders must be named after the languages they contain -->
<LocalizationPlugin DefaultLanguage="english">
<Directory>Localization</Directory>
</LocalizationPlugin>
</Plugins>

</RuntimeModule>
</Datatable>

Updated 8 years ago.
0Send private message
8 years ago
May 25, 2017, 12:09:08 AM

I can confirm that the beam weapon is now firing at all ranges...hooray! Now I need a way to change the color and such :)


I'd LOVE to create a spinal mount weapon, but I haven't seen anything close as of yet.



I haven't effectively seen any bonus or detriment to crew as of yet, only a tooltip that said that 100% crew gives 20% damage bonus.

0Send private message
8 years ago
May 24, 2017, 9:04:38 PM
Kryptic57 wrote:

The actual values are contained in the XML "SimulationDescriptors[ModuleWeapon]" where you will find damage values as well as the range penalties. 0 appears as 100% accuracy and 1 appears to not fire the weapon. Let me know if you are successful I'm also interested in changing these as well. The AIBattleSituations appears to be AI logic which weights the AI empires actually equipping using those weapons and is not related to them being used in combat.


<!-- ******************** -->
<!-- **Beam Weapon Class** -->
<!-- ******************** -->
<SimulationDescriptor Name="ClassModuleWeaponBeam"  Type="ClassModuleWeapon">

<Modifier TargetProperty="WeaponTypeEnergy"             Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>

<Modifier TargetProperty="Cooldown"                     Operation="Addition"        Value="6.8"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="PreparationDuration"          Operation="Addition"        Value="3.5"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="PreparationDurationFactorMin" Operation="Multiplication"  Value="0.5"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="PreparationDurationFactorMax" Operation="Multiplication"  Value="1.5"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ShootingDuration"             Operation="Addition"        Value="1.2"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ShotsCountPerSalvo"           Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ProjectileSpeed"              Operation="Addition"        Value="-1"         Path="ClassModuleWeapon" TooltipHidden="true"/>

<Modifier TargetProperty="CriticalHitChance"            Operation="Addition"        Value="0.1"        Path="ClassModuleWeapon"/>
<Modifier TargetProperty="ShieldPenetrationFactor"      Operation="Addition"        Value="0.1"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="HullPlatingPenetrationFactor" Operation="Addition"        Value="0.9"        Path="ClassModuleWeapon" TooltipHidden="true"/>

<Modifier TargetProperty="LongRangePenalty"             Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="MediumRangePenalty"           Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ShortRangePenalty"            Operation="Addition"        Value="0"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="DeadZoneRangePenalty"         Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>


<!--Every time a module is installed, the upkeep grows-->
<Modifier TargetProperty="GarrisonMoneyUpkeep"          Operation="Addition" Value="$(UpkeepFromModules)"    Path="../ClassShip"/>

<Modifier TargetProperty="DamagePerSecondBeam"          Operation="Addition" Value="$(DamagePerSecond)"      Path="../ClassShip"/>

</SimulationDescriptor>


Knyghtefall is right. You need to make sure that:



        <AvailableRange RangeName="Medium" PenaltyPropertyName="MediumRangePenalty"/>
        <AvailableRange RangeName="Long" PenaltyPropertyName="LongRangePenalty"/>


is there for the beam weapon if you want it to fire at medium and long ranges. Just changing the accuracy alone didn't do it. I had to add those lines to the beam weapon and then they started firing. The AI in this case is not just the computer but also your ships I believe since your ships are actually AI controlled.


Different topic: Does anyone know what the bonus/detriments are for having less than 100% crew? I found some references in the files but it wasn't clear. I know the devs said they added a mechanic where having less than 100% crew leads to lesser performance but I'm not sure what factors specifically they refer to.





0Send private message
8 years ago
May 24, 2017, 7:18:06 PM

The actual values are contained in the XML "SimulationDescriptors[ModuleWeapon]" where you will find damage values as well as the range penalties. 0 appears as 100% accuracy and 1 appears to not fire the weapon. Let me know if you are successful I'm also interested in changing these as well. The AIBattleSituations appears to be AI logic which weights the AI empires actually equipping using those weapons and is not related to them being used in combat.


<!-- ******************** -->
<!-- **Beam Weapon Class** -->
<!-- ******************** -->
<SimulationDescriptor Name="ClassModuleWeaponBeam"  Type="ClassModuleWeapon">

<Modifier TargetProperty="WeaponTypeEnergy"             Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>

<Modifier TargetProperty="Cooldown"                     Operation="Addition"        Value="6.8"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="PreparationDuration"          Operation="Addition"        Value="3.5"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="PreparationDurationFactorMin" Operation="Multiplication"  Value="0.5"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="PreparationDurationFactorMax" Operation="Multiplication"  Value="1.5"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ShootingDuration"             Operation="Addition"        Value="1.2"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ShotsCountPerSalvo"           Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ProjectileSpeed"              Operation="Addition"        Value="-1"         Path="ClassModuleWeapon" TooltipHidden="true"/>

<Modifier TargetProperty="CriticalHitChance"            Operation="Addition"        Value="0.1"        Path="ClassModuleWeapon"/>
<Modifier TargetProperty="ShieldPenetrationFactor"      Operation="Addition"        Value="0.1"        Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="HullPlatingPenetrationFactor" Operation="Addition"        Value="0.9"        Path="ClassModuleWeapon" TooltipHidden="true"/>

<Modifier TargetProperty="LongRangePenalty"             Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="MediumRangePenalty"           Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="ShortRangePenalty"            Operation="Addition"        Value="0"          Path="ClassModuleWeapon" TooltipHidden="true"/>
<Modifier TargetProperty="DeadZoneRangePenalty"         Operation="Addition"        Value="1"          Path="ClassModuleWeapon" TooltipHidden="true"/>


<!--Every time a module is installed, the upkeep grows-->
<Modifier TargetProperty="GarrisonMoneyUpkeep"          Operation="Addition" Value="$(UpkeepFromModules)"    Path="../ClassShip"/>

<Modifier TargetProperty="DamagePerSecondBeam"          Operation="Addition" Value="$(DamagePerSecond)"      Path="../ClassShip"/>

</SimulationDescriptor>


Updated 8 years ago.
0Send private message
8 years ago
May 24, 2017, 6:35:58 PM

Relevant XmL


    <WeaponModule Name="ModuleWeaponBeam1" Type="Beam" Family="BeamBase" Level="1">
        <Cost ResourceName="SystemProduction">20</Cost>
        <!-- ** START AI DATA ** -->
        <!-- Weapons types -->
        <AIBattleSituations Situation="EnergyWeapon" Mode="Use" Value="1"/>
        <!-- Armor types -->
        <AIBattleSituations Situation="EnergyDefense" Mode="Against" Value="-1"/>
        <AIBattleSituations Situation="ProjectileDefense" Mode="Against" Value="1"/>
        <!-- Specific weapons -->
                <AIBattleSituations Situation="Beam" Mode="Use" Value="1"/>
                <AIBattleSituations Situation="Kinetic" Mode="Against" Value="1"/>
                <AIBattleSituations Situation="Missile" Mode="Against" Value="-1"/>
                <AIBattleSituations Situation="Laser" Mode="Against" Value="-0.75"/>
                <!-- Ranges -->
                <AIBattleSituations Situation="Short" Mode="Use" Value="1"/>
                <AIBattleSituations Situation="Medium" Mode="Use" Value="1"/>
                <AIBattleSituations Situation="Long" Mode="Use" Value="1"/>
                <AIBattleSituations Situation="Short" Mode="Against" Value="1"/>
                <AIBattleSituations Situation="Medium" Mode="Against" Value="0.75"/>
                <AIBattleSituations Situation="Long" Mode="Against" Value="0.75"/>
        <!-- ** END AI DATA ** -->
        <PathPrerequisite Flags="Edition" Inverted="true">ClassShip,CannotHaveWeapon</PathPrerequisite>
        <PathPrerequisite Flags="ShipHasDestructionModule,Edition,Disable" Inverted="true">ClassShip/ClassSection/ClassModuleDestruction</PathPrerequisite>
        <SimulationDescriptorReference Name="ClassModuleWeapon"/>
        <CategorizedSimulationDescriptors Category="CategoryBaseWeapon">
            <SimulationDescriptorReference Name="ModuleWeaponBeam1"/>
        </CategorizedSimulationDescriptors>
        <CategorizedSimulationDescriptors Category="CategoryModuleWeaponBeam">
            <SimulationDescriptorReference Name="ClassModuleWeaponBeam"/>
        </CategorizedSimulationDescriptors>
        <BattleActionReference Name="Weapon_Initialize"/>
        <BattleActionReference Name="Weapon_SalvoHitFlotillaShield"/>
        <BattleActionReference Name="Weapon_SalvoHitShipShield"/>
        <BattleActionReference Name="Weapon_SalvoApplyShieldDamage"/>
        <BattleActionReference Name="Weapon_SalvoLaunched"/>
        <BattleActionReference Name="Weapon_SalvoPrepareHitTarget"/>
        <BattleActionReference Name="Weapon_SalvoHitTarget"/>
        <BattleActionReference Name="Weapon_SalvoPostHitTarget"/>
        <BattleActionReference Name="Weapon_SalvoPostHitTarget_StatisticsRecording"/>
        <BattleActionReference Name="WeaponBeam_SalvoPostHitTarget_StatisticsRecording"/>
        <BattleActionReference Name="Weapon_UpdateAccuracyAfterMiss"/>
        <SalvoReference Name="SalvoBeam1"/>
        <AvailableRange RangeName="Short" PenaltyPropertyName="ShortRangePenalty"/>
        <AvailableRange RangeName="Medium" PenaltyPropertyName="MediumRangePenalty"/>
        <AvailableRange RangeName="Long" PenaltyPropertyName="LongRangePenalty"/>
        <TargetSortingCriterion Name="Type">
            <ScoreModifier Name="Ship">1</ScoreModifier>
        </TargetSortingCriterion>
        <TargetSortingCriterion_PropertyMultiplier Name="PropertyMultiplier">
            <ScoreModifier Name="OffensiveMilitaryPowerIfWeakestTargeting">-1</ScoreModifier>
        </TargetSortingCriterion_PropertyMultiplier>
        <TargetSortingCriterion Name="Role" ScoreModifiersDefaultValue="1" IgnoredWhenCheckingTargetValidity="true"/>
        <TargetSortingCriterion_PropertyMultiplier Name="PropertyMultiplier">
            <ScoreModifier Name="TargetersCount">-1</ScoreModifier>
            <ScoreModifier Name="TargetingWeightBonus">1</ScoreModifier>
        </TargetSortingCriterion_PropertyMultiplier>
    </WeaponModule>



0Send private message
8 years ago
May 24, 2017, 6:33:58 PM

So, I've been trying something along these lines. I've modded the Beam data and while the game accepts the values, not everything is working as expected. In the UI, it shows the percentage values I've chosen for Medium and Long ranges, but during battles, the beam weapon never fires at long or medium range. This despite the fact that I've updated the lines in the xml for the weapon module that I think point to using the beam weapon at those ranges.

0Send private message
8 years ago
May 22, 2017, 7:39:09 PM

I agree short range is vastly inferior but disagree that all weapons should do more damage up close. Having weapons that excel at certain ranges are important for diversity. Keep in mind missiles do approx double the dps of other weapons, beams more than three times. Correct me if wrong but I thought the numbers here were efficiency not accuracy? Either way not sure exactly what having 95% as opposed to 100% would accomplish. I would suggest something more like this. e:Someone elsewhere suggested changing the anti-missile effect from kinetic to beam which makes a ton of sense also.




ShortMediumLong
Beam* (Now Anti-Missile)10050
Kinetic1008570
Laser7085100
Missile
80100


 The most important features are a sharper difference between the "versatile" weapons of kinetic and laser giving more emphasis to the ranges. Beams become much more usable but roughly equivalent in strength to missiles at medium range. I think the developers vastly underestimated how much power is baked into long range as a result of having 3 "lanes" of fleets which can cause a close range fleet to never come anywhere near an enemy formation.



Updated 8 years ago.
0Send private message
?

Click here to login

Reply
Comment