Skip to content

Wrong Calculation of Armor Encumbrance for REA with Synaptic Booster #14

@GoogleCodeExporter

Description

@GoogleCodeExporter
What steps will reproduce the problem?
1. Create new Character, ignore building rules for convenience
2. Set AGI = 5, REA = 5, Nuyen 50 points
3. Add Synaptic Booster 1
4. Add Heavy Military Armor
5. Check Common TAB, no penalty for REA but not for AGI

6. Remove Synaptic Booster
7. Check Common TAB, penalty for REA and AGI

What is the expected output? What do you see instead?
The REA attribute should receive the same penalty as AGI

What version of the product are you using? On what operating system?
Version 0.0.0.458

Please provide any additional information below.

Checking the corresponding Code in the frmCareer.cs I find that Values SHOULD 
be applied correctly:

                // Remove any Improvements from Armor Encumbrance.
                _objImprovementManager.RemoveImprovements(Improvement.ImprovementSource.ArmorEncumbrance, "Ballistic Encumbrance");
                _objImprovementManager.RemoveImprovements(Improvement.ImprovementSource.ArmorEncumbrance, "Impact Encumbrance");
                // Create the Armor Encumbrance Improvements.
                if (_objCharacter.BallisticArmorEncumbrance < 0)
                {
                    _objImprovementManager.CreateImprovement("AGI", Improvement.ImprovementSource.ArmorEncumbrance, "Ballistic Encumbrance", Improvement.ImprovementType.Attribute, "", 0, 1, 0, 0, _objCharacter.BallisticArmorEncumbrance);
                    _objImprovementManager.CreateImprovement("REA", Improvement.ImprovementSource.ArmorEncumbrance, "Ballistic Encumbrance", Improvement.ImprovementType.Attribute, "", 0, 1, 0, 0, _objCharacter.BallisticArmorEncumbrance);

                }
                if (_objCharacter.ImpactArmorEncumbrance < 0)
                {
                    _objImprovementManager.CreateImprovement("AGI", Improvement.ImprovementSource.ArmorEncumbrance, "Impact Encumbrance", Improvement.ImprovementType.Attribute, "", 0, 1, 0, 0, _objCharacter.ImpactArmorEncumbrance);
                    _objImprovementManager.CreateImprovement("REA", Improvement.ImprovementSource.ArmorEncumbrance, "Impact Encumbrance", Improvement.ImprovementType.Attribute, "", 0, 1, 0, 0, _objCharacter.ImpactArmorEncumbrance);
                }

Giving AGI and REA the same penalty!

Having a look at the definition of Synaptic Booster and for example Reaction 
Impovement (which doesn't result in this "bug" as I know so far) they have the 
same definition:

        <bioware>
            <name>Synaptic Booster</name>
            <category>Cultured</category>
            <rating>3</rating>
            <ess>Rating * 0.5</ess>
            <capacity>0</capacity>
            <avail>(Rating * 6)R</avail>
            <cost>Rating * 80000</cost>
            <bonus>
                <initiativepass>Rating</initiativepass>
                <specificattribute>
                    <name precedence="1">REA</name>
                    <val>Rating</val>
                </specificattribute>
            </bonus>
            <source>SR4</source>
            <page>347</page>
        </bioware>



                <cyberware>
            <name>Reaction Enhancers</name>
            <category>Bodyware</category>
            <rating>3</rating>
            <ess>Rating * 0.3</ess>
            <capacity>0</capacity>
            <avail>(Rating * 5)R</avail>
            <cost>Rating * 10000</cost>
            <bonus>
                <specificattribute>
                    <name precedence="1">REA</name>
                    <val>Rating</val>
                </specificattribute>
            </bonus>
            <source>SR4</source>
            <page>342</page>
        </cyberware>

So I can find nothing wrong in the sourcecode and definition of the items.




Original issue reported on code.google.com by cimba...@googlemail.com on 11 Apr 2013 at 8:54

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions