I've had a try at the poker tournament. So far I've only made it through the first day, mainly because someone with some free coding time is going to have to look at the code for renting a room in the tavern. I managed to finish the first day ahead of the opponent, then was told to come back the next day, so I went to the tavern and asked to stay the night. The time was about 9:15 in the morning. When I'd supposedly stayed overnight, it was 10:15 in the morning. I didn't check the date but the bouncer at the tournament did, and told me in no uncertain terms to come back the next day! The tavern seemed to have advanced me to 10:15 but didn't advance the day. So I returned to the tavern, stayed for 8 hours, twice. That made it 02:15 the next day. Wondering if the tournament runs at night, I went back there. I was able to enter, though the place was deserted. From the entrance hall I was able to go into the cardroom, also deserted. But although the door from the hall to the cardroom was open, the door going the other way was not. And so I was stuck. Fortunately I have a savegame from before I went in the first time, so it will be next day actual gaming time that I try again...
What that means is that either the door to the entrance hall needs to be locked for the night, or all the inhabitants need 24 hour logins.
Also, could we move the reload definitions out of "PROGRAM\Locations\init\Turks.c" and into the gambler section of "StartStoryline.c"? That way, anyone who isn't a FreePlay gambler and who can't have anything to do with the tournament won't be distracted.
For similar reason, I've already changed "PROGRAM\DIALOGS\GrandTurks citizen_dialog.c" to make both the links in sections "town" and "info" for the tournament conditional on attribute "quest.poker.allowed". When I tried to talk to the citizen who looks like Joshamee Gibbs, I didn't see anything about the tournament. This is probably because the top level of the dialog has a 50/50 chance of allowing you to get to "town" and another 50/50 chance to get to "info". In "town", it was then another 50/50 chance to get directions to the blacksmith or the tournament. Presumably I didn't get lucky enough to hit the 50/50 chance to get to "info", and when I got to "town", I didn't hit the 50/50 chance to get to the tournament. After changing the file, I was able to see both the information and the directions for the tournament. (And I wonder how many people are going to get the joke about the Longoustine brothers who "think they are big fish"...
)
There's a mistake in "PROGRAM\DIALOGS\Habitue_dialog.c". There are two "}" in succession just before 'Diag.TempNode = "First time";' at the end of case "First time". In fact, one of them should be at the end of this bit:
Code:
else
{
if (CharPlayerType == PLAYER_TYPE_GAMBLER)
{
npchar.quest.last_theme = "1";
//if (makeint(Rand(5)) < 3)npchar.quest.last_theme = "1";
}
Attached is a corrected version. Also included are the change to 'npchar.quest.last_theme' and the option to decline the tournament. The revised file works, I didn't decline, which is how I got to the tournament.