Mass Effect has two leads, Mark Meer and Jennifer Hale, but you’ll only hear one of them as Commander Shepard per playthrough. According to player stats, most people play as a guy, meaning Mark Meer is their Shepard throughout the trilogy.

However, Meer encourages players to give FemShep a go - purely so they can enjoy the performance of his co-star, Hale. Speaking with PC Gamer, Meer says that he’s a huge fan of her work, and doesn’t have any problem with players choosing to only play as FemShep because of her performance.

  • Scrubbles@poptalk.scrubbles.tech
    link
    fedilink
    English
    arrow-up
    0
    ·
    4 days ago

    FemShep is the best way imo.

    I’ve heard the weirdest excuses for why not though, worst ones were “why would I want to play as a woman, I’m a man”. Now, on your first playthrough absolutely but after that?

      • Scrubbles@poptalk.scrubbles.tech
        link
        fedilink
        English
        arrow-up
        0
        ·
        4 days ago

        Long and short, floating point math is imprecise, and when dealing with currency you must be 100% precise. One of those rules of programming: Never store (or let currency flow through) a float. That includes doubles too.

        In javascript, the number type is imprecise, it is contained by a float under the hood, meaning precision can be lost. So even just parsing JSON to a number, even if you mean to move it into something like BigNumber, the precision is already not guaranteed when it finally gets to BigNumber. The safest thing to do is pass the numeric values as strings, which are guaranteed of course to represent their exact precision and value, and then use a proper precise parser to the value, like BigNumber.parse(strValue). (Even then, there’s an argument that it’s very rare that you ever need an amount outside of a string in a UI. Most calculations should be handled by a server that’s the single source of truth in calculations, think sales tax and shipping, so a string is just a value that is presented to a user).

        In C#, float and double are imprecise and not guaranteed, especially with arithmetic. Decimal is the best way to store an exact value.

        In databases, it’s usually best practice to store the string value of the amount for exact precise recordkeeping, with a decimal field next to it labeled something like AmountImprecise that you can use for aggregating, sorting, grouping, whatever.

        Every language will have it’s quirks, but essentially, take this from me, a senior fintech engineer. If you see currency amounts, think precision, and know you’ll need to take extra extra care about how it’s stored. You don’t want to accidentally office space yourself, especially when auditors come around.