Could you please do a Winmerge with your work and mine? Here's what I've been up to...
Done! You caught a lot of spelling errors again too. This just keeps getting better and better!
For one thing, I've been doing some dialog work of my own, now probably redundant. (If I claim I'm going to work on flag recognition, will you jump in and do the work for that as well?
)
Sorry 'bout that. I ran into it while doing some testing and had to figure out why it wasn't doing what clearly it was intended to do.
There's also a much more substantial change to Pellew's dialog for the endgame. Previously it was a terse one-liner, basically saying "Here's your new ship, here are your orders, goodbye", the sort of thing any random senior officer might say to any random junior officer. I've added some of the sort of banter often present in conversations to make it more specifically in character with Pellew talking to Hornblower.
That's great! Certainly nice to add some more atmosphere to the game.
How much of this is actually needed to remove a character?
Code:
SetCharacterRemovable(characterFromID("Richard Sharpe"), true);
RemoveOfficersIndex(pchar, GetCharacterIndex("Richard Sharpe"));
RemoveCharacterCompanion(Pchar, characterFromID("Richard Sharpe"));
RemovePassenger(pchar, characterFromID("Richard Sharpe"));
This from 'case "Back_to_Maria_at_Greenford"'. 'RemovePassenger' is the one which takes them out of your "Passengers" list; until I added one of those for Sharpe and his men plus Quelp, they all stayed with you when they were supposed to have gone their own ways.
SetCharacterRemovable is for locked characters that you can't touch for quest purposes. I think the other lines override it so this one shouldn't be needed.
RemoveOfficersIndex should remove a character from your active shore party.
RemoveCharacterCompanion removes a character as a ship companion. I don't think you CAN even put Sharpe in command of a ship, can you?
Especially not if he's indeed got SetCharacterRemovable is false!
And, as you already noticed,
RemovePassenger removes a character from your passenger list.
During the battle at Antigua, Sir Arthur Wellesley appeared as "Duke" during my recent playthrough. (Has this been corrected in one of the updates? At the time I still had nothing newer than the 31st July update installed.) In fact he wasn't made Duke until 1814.
Ah, yes; I did that. Thought I remembered him being a Duke. I'll set it back to "Sir" for the next upload.
I'm going to install the current update, then play through again, and one thing I'll be watching for is what the new system of titles does to the Earl of Edrington...
Having a look in the code, it is going to do
nothing with the "Earl of Edrington". He doesn't actually have a rank nor title as far as the game is concerned.
But you won't notice that as it's part of his name. Should work the same as it did before, as nothing was changed where he's concerned.