1. Dismiss Notice
  2. GOG.com logo

    Thanks to YOUR votes, GOG.com now sells:
    - Sea Dogs - Sea Dogs: Caribbean Tales
    - Sea Dogs: City of Abandoned Ships

    Vote now to add Pirates of the Caribbean to the list!

    Dismiss Notice
  3. Under the Crossbones Podcast

    A Pirate Podcast with Interviews
    Music, Comedy and all things Pirate!

    - Episode Guide - About - Subscribe -
    - Twitter - Facebook - iTunes - Android -
    - Youtube - Fill the Coffers -

    Dismiss Notice
  4. New Horizons logo

    Quick links for PotC: New Horizons
    - Download latest version
    - Wiki - FAQ - Report bugs here
    - ModDB profile

  5. GOF logo

    Quick links for AoP2: Gentlemen of Fortune 2
    - Downloads and info
    - Historical Immersion Supermod
    - ModDB Profile

Dismiss Notice
New to the forum?
Please take a moment to read our Welcome Message and Forum Rules.

Unconfirmed Bug Ferro Cerezo's dialog

Discussion in 'Build Mod Bug Tracker' started by Grey Roger, Oct 24, 2017.

  1. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,383
    Watch closely. See if you can spot what's wrong with what Ferro Cerezo says when you tell him you're after the papers stolen from Padre Domingues:
    Code:
    So that old fox  sent you.
    There are two spaces between "fox" and "sent". As I'm looking for hiccups in dialog resulting from @DeathDaisy's fixes for female characters and my fixes to have Nathaniel Hawk replace Danielle Green when you're playing a female, double spaces are a warning sign that something that ought to go between those spaces is missing. And so it is here, though it's nothing to do with either of those mods. In fact, in all the years people have been playing PoTC since the stock game, this one has gone unnoticed. But it's a bug nonetheless, because here's the offending line in "Ferro Cerezo_dialog.c":
    Code:
    dialog.text = DLG_TEXT[49] + characters[getCharacterIndex(DLG_TEXT[50])] + DLG_TEXT[51];
    DLG_TEXT[49] is "So that old fox ", DLG_TEXT[51] is " sent you, and DLG_TEXT[50] is "Padre Domingues" - and it's like that even in the stock version. I replaced that line with:
    Code:
    dialog.text = DLG_TEXT[49] + GetMySimpleName(characters[getCharacterIndex(DLG_TEXT[50])]) + DLG_TEXT[51];
    And now Ferro Cerezo fills in the blank with the name of the old fox.

    (Original dialog routinely uses a similar construct to put a character's name into a dialog. But the stock game didn't have 'GetMySimpleName' so the correct version is 'characters[getCharacterIndex(DLG_TEXT[50])].name', 'characters[getCharacterIndex(DLG_TEXT[50])].lastname' or both of the above if the dialog is to include his whole name.)
     
    Pieter Boelen likes this.

Share This Page