• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Fixed Sea Hawk - Bugs finding Rheims & Danielle part of quest

Talisman

Smuggler
Storm Modder
In Beta 4 - 23 Aug

When you go to to Bonaire with Danielle as officer/companion - meet Rheims in tavern - then transported to Waterfall ( Officers/passengers removed ) - fight persuers - go through jungle to Rheims house - Rheims/Dannielle talk in house then Danielle leaves - player goes back to ship and sails to San Juan, Puerto Rico - BUT Officers / Passengers are still not restored. :(


I don't remember this happening before :shrug


:cheers
 

Attachments

  • PotC Rhiems Passengers1.jpg
    PotC Rhiems Passengers1.jpg
    284.7 KB · Views: 507
  • PotC Rhiems Passengers2.jpg
    PotC Rhiems Passengers2.jpg
    240.5 KB · Views: 212
  • -=Player=- Bonaire. Kralendijk port. April 9th, 1751.7z
    594.4 KB · Views: 89
  • error.log
    338 bytes · Views: 93
  • compile.log
    573.6 KB · Views: 95
  • system.log
    9.6 KB · Views: 105
These seem to be the quest cases in your compile.log file:
Code:
Line 112: Quest name danielle_speak_with_blaze_in_douwesen_port FOUND in QuestComplete
Line 113: Quest name danielle_becomes_officer_in_douwesen FOUND in QuestComplete
Line 481: Quest name goto_with_danielle_to_douwesen_tavern_for_rheims_complete FOUND in QuestComplete
Line 486: Quest name goto_with_danielle_to_douwesen_tavern_for_rheims_complete_2 FOUND in QuestComplete
Line 487: Quest name goto_with_danielle_to_douwesen_tavern_for_rheims_complete_3 FOUND in QuestComplete
Line 489: Quest name vincent_exit_from_tavern FOUND in QuestComplete
Line 493: Quest name vincent_away_from_tavern_complete FOUND in QuestComplete
Line 500: Quest name from_tavern_to_rheims_house_complete FOUND in QuestComplete // <------------ THIS CONTAINS StorePassengers <----------------
Line 525: Quest name from_town_to_jungle_to_rheims_house_complete FOUND in QuestComplete
Line 602: Quest name prepare_danielle_with_rheims_runaway_complete FOUND in QuestComplete
Line 641: Quest name kill_murderers_in_douwesen_town_exit_complete FOUND in QuestComplete
Line 643: Quest name danielle_with_rheims_runaway_complete FOUND in QuestComplete
Line 949: Quest name prepare_dagger FOUND in QuestComplete
Line 954: Quest name dagger FOUND in QuestComplete
Line 955: Quest name dagger_2 FOUND in QuestComplete
Line 962: Quest name dagger_3 FOUND in QuestComplete
Line 969: Quest name start_quest_movie_speak_with_rheims_complete FOUND in QuestComplete
Line 974: Quest name start_quest_movie_speak_with_rheims_complete_2 FOUND in QuestComplete
Line 1003: Quest name exit_after_speak_with_rheims FOUND in QuestComplete // <------------ THIS CONTAINS restorepassengers <----------------
Line 1010: Quest name exit_after_speak_with_rheims_2 FOUND in QuestComplete
 
These seem to be the quest cases in your compile.log file:
Code:
Line 500: Quest name from_tavern_to_rheims_house_complete FOUND in QuestComplete // <------------ THIS CONTAINS StorePassengers <----------------
.................
Line 1003: Quest name exit_after_speak_with_rheims FOUND in QuestComplete // <------------ THIS CONTAINS restorepassengers <----------------
Line 1010: Quest name exit_after_speak_with_rheims_2 FOUND in QuestComplete


Agreed :yes

Code:
  case "exit_after_speak_with_rheims":
       LAi_SetActorType(characterFromID("danielle"));
       SetMainCharacterIndex(0);
       PChar = PChar;
       LAi_SetImmortal(pchar, false);
       ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
       ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
       ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
       DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
       Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
       Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";
       AddQuestRecord("again_find_rheims", 7);
       CloseQuestHeader("again_find_rheims");
       SetQuestHeader("search_danielle");
       AddQuestrecord("search_danielle", 1);
       locCameraFollow();
       restorepassengers(pchar.id);    <<--------------- HERE IT IS

       RemoveCharacterEquip(characterFromID("danielle"), BLADE_ITEM_TYPE);
       GiveItem2Character(characterFromID("danielle"), "blade6");
       EquipCharacterByItem(characterFromID("danielle"), "blade6");
       if(AUTO_SKILL_SYSTEM) { AddPartyExpChar(pchar, "Sneak", 1000); }
       else { AddPartyExp(pchar, 10000); }
     break;

     case "exit_after_speak_with_rheims_2":
       LAi_SetPlayerType(characterFromID("blaze"));
     break;

But it does not appear to be working -- the quest book entries just above it all work OK


:shrug
 
@Talisman: One definitely odd thing with your save is that Danielle Greene appears to be there twice when you scroll through the F2>Characters menu.
That might be because she's both a companion AND a shore party officer.

Anyway, I confirmed and fixed the problem. Though it is quite weird why this used to work at all in the past!

Remember how you follow Danielle for a while rather than your usual player character?
That is because the player character is actually set to Danielle for that short scene!
So the line restorepassengers(pchar.id); would restore the passengers for DANIELLE!
But the passengers were stored for "blaze" and therefore it didn't work.

This should fix it:
Code:
    case "exit_after_speak_with_rheims":
       LAi_SetActorType(characterFromID("danielle"));
       SetMainCharacterIndex(0);
       PChar = PChar;
       LAi_SetImmortal(pchar, false);
       ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
       ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
       ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
       DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
       Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
       Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";
       AddQuestRecord("again_find_rheims", 7);
       CloseQuestHeader("again_find_rheims");
       SetQuestHeader("search_danielle");
       AddQuestrecord("search_danielle", 1);
       locCameraFollow();
       restorepassengers("Blaze"); // PB: was restorepassengers(pchar.id) - Did not work as you are in control of "danielle" at that time
 
Yes - that fix worked :thumbs1


Pirate captain on Purpose :no

A while back I wanted to capture a large Dutch Ship at one of the Dutch islands ( don't remember which ) - did not really want to be French /Spanish - so I raised the Pirate Flag. When I had captured the Ship my title changed to Pirate Captain and pirates became much less hostile ( not sure they became friendly ) . If you want I can probably find the Saves either side of that.

:dance
 
Yes - that fix worked :thumbs1
It had better! ;)

Pirate captain on Purpose :no

A while back I wanted to capture a large Dutch Ship at one of the Dutch islands ( don't remember which ) - did not really want to be French /Spanish - so I raised the Pirate Flag. When I had captured the Ship my title changed to Pirate Captain and pirates became much less hostile ( not sure they became friendly ) . If you want I can probably find the Saves either side of that.
If you check your F2>Nations Relations menu, you'll see that you ARE Friendly to the Pirates and your Served Nation is PIRATE too as per the F2>Questbook Interface.
Based on that, I figured you might have been affected by the new "act of piracy" behaviour, but weren't aware of it.
That might affect you later on because you should be able to get attacked for your piratical actions in non-pirate ports now.

This happened to be brought up in a different context earlier today; see here:
http://www.piratesahoy.net/threads/...ler-beckett-and-eitc.25023/page-2#post-516230
As this is quite a new behaviour and also very different from Beta 3.4, I'd really very much appreciate any comments you can spare on this!

Anyway, I don't need saves for it; I know exactly why it happens and it is definitely intentional on MY part even if it wasn't on yours. ;)
 
Title of thread changed :rolleyes:

Next problem :mad:

After Danielle runs off - go looking for her - Sail to San Juan to talk to priest ( padre Domingues ) - but dialog fails -

I just get the :- "I don't have any business with you right now.", dialog.

padre domingues_dialog.c

Code:
case "quests":
       iTest = 0;
       Dialog.snd = "voice\PADO\PADO002";
       dialog.text = DLG_TEXT[4];
       if (pchar.quest.main_line == "danielle_speak_with_almost_dead_rheims_complete" && iTest < QUEST_COUNTER)  <<---- I think this bit is not working
       {
         Link.l1 = DLG_TEXT[5];
         Link.l1.go = "blaze_to_library";
         iTest = iTest + 1;
       }
       if (pchar.quest.main_line == "compramat_done" && iTest < QUEST_COUNTER)
       {
         link.l1 = DLG_TEXT[6];
         link.l1.go = "compramat_done";
         ChangeCharacterReputation(pchar, -1);
       }
       if (pchar.quest.main_line == "compramat_bul_bul" && iTest < QUEST_COUNTER)
       {
         link.l1 = DLG_TEXT[7];
         link.l1.go = "compramat_bul_bul";
       }
       if (CheckQuestAttribute("ANIMISTS", "letter_to_domingues"))
       {
         link.l1 = DLG_TEXT[8];
......................

related to quests_reaction.c

Code:
case "exit_after_speak_with_rheims":
LAi_SetActorType(characterFromID("danielle"));
SetMainCharacterIndex(0);
PChar = PChar;
LAi_SetImmortal(pchar, false);
ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";   <<------ Related to this here
AddQuestRecord("again_find_rheims", 7);
CloseQuestHeader("again_find_rheims");
SetQuestHeader("search_danielle");
AddQuestrecord("search_danielle", 1);
locCameraFollow();
restorepassengers("Blaze"); // PB: was restorepassengers(pchar.id) - Did not work as you are in control of "danielle" at that time


Perhaps it is the Danielle thing again - perhaps some of the code in case "exit_after_speak_with_rheims": should be put in the next case - case "exit_after_speak_with_rheims_2": -would that make it work properly :shrug.


Pirates

I have to say I have not really noticed any significant change - still sailing in and out of ports under false flags OK -- only noticeable thing is on Land -- I have had several bounty hunters after me - was wondering why since I have not angered anybody that I can recall. :duel:
 

Attachments

  • compile.log
    10.4 KB · Views: 91
  • system.log
    3.8 KB · Views: 95
  • -=Player=- Puerto Rico. San Juan port. April 20th, 1751.7z
    603.1 KB · Views: 72
:ahoy

Just had a look comparing Bate 3 with Beta 4 quests_reaction.c

Beta 3

Code:
  case "exit_after_speak_with_rheims":
       LAi_SetActorType(characterFromID("danielle"));
       SetMainCharacterIndex(0);
       PChar = GetMainCharacter();    <<--- THIS HAS CHANGED
       LAi_SetImmortal(pchar, false);
       ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
       ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
       ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
       DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
       Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
       Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";
       AddQuestRecord("again_find_rheims", 7);
       CloseQuestHeader("again_find_rheims");
       SetQuestHeader("search_danielle");
       AddQuestrecord("search_danielle", 1);
       locCameraFollow();
       restorepassengers(pchar.id);

       RemoveCharacterEquip(characterFromID("danielle"), BLADE_ITEM_TYPE);
       GiveItem2Character(characterFromID("danielle"), "blade6");
       EquipCharacterByItem(characterFromID("danielle"), "blade6");
       if(AUTO_SKILL_SYSTEM) { AddPartyExpChar(pchar, "Sneak", 1000); }
       else { AddPartyExp(pchar, 10000); }
     break;


Beta 4 code

Code:
  case "exit_after_speak_with_rheims":
       LAi_SetActorType(characterFromID("danielle"));
       SetMainCharacterIndex(0);
       PChar = PChar;      <<<---- CHANGED 
       LAi_SetImmortal(pchar, false);
       ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
       ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
       ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
       DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
       Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
       Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";
       AddQuestRecord("again_find_rheims", 7);
       CloseQuestHeader("again_find_rheims");
       SetQuestHeader("search_danielle");
       AddQuestrecord("search_danielle", 1);
       locCameraFollow();
       restorepassengers("Blaze"); // PB: was restorepassengers(pchar.id) - Did not work as you are in control of "danielle" at that time
       

       RemoveCharacterEquip(characterFromID("danielle"), BLADE_ITEM_TYPE);
       GiveItem2Character(characterFromID("danielle"), "blade6");
       EquipCharacterByItem(characterFromID("danielle"), "blade6");
       if(AUTO_SKILL_SYSTEM) { AddPartyExpChar(pchar, "Sneak", 1000); }
       else { AddPartyExp(pchar, 10000); }
     break;


Could this be the cause of the problems --- if it happens elsewhere is it likely to cause problems there as well :facepalm


:drunk
 
:ahoy

Just had a look comparing Bate 3 with Beta 4 quests_reaction.c

Beta 3

Code:
  case "exit_after_speak_with_rheims":
       LAi_SetActorType(characterFromID("danielle"));
       SetMainCharacterIndex(0);
       PChar = GetMainCharacter();    <<--- THIS HAS CHANGED
       LAi_SetImmortal(pchar, false);
       ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
       ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
       ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
       DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
       Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
       Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";
       AddQuestRecord("again_find_rheims", 7);
       CloseQuestHeader("again_find_rheims");
       SetQuestHeader("search_danielle");
       AddQuestrecord("search_danielle", 1);
       locCameraFollow();
       restorepassengers(pchar.id);

       RemoveCharacterEquip(characterFromID("danielle"), BLADE_ITEM_TYPE);
       GiveItem2Character(characterFromID("danielle"), "blade6");
       EquipCharacterByItem(characterFromID("danielle"), "blade6");
       if(AUTO_SKILL_SYSTEM) { AddPartyExpChar(pchar, "Sneak", 1000); }
       else { AddPartyExp(pchar, 10000); }
     break;


Beta 4 code

Code:
  case "exit_after_speak_with_rheims":
       LAi_SetActorType(characterFromID("danielle"));
       SetMainCharacterIndex(0);
       PChar = PChar;      <<<---- CHANGED
       LAi_SetImmortal(pchar, false);
       ChangeCharacterAddress(characterFromID("Danielle"), "none", "none");
       ChangeCharacterAddress(characterFromID("Vincent Bethune"), "none", "none");
       ChangeCharacterAddress(characterFromID("Raoul Rheims"), "none", "none");
       DoQuestReloadToLocation("Rheims_house_inside", "goto", "goto5", "exit_after_speak_with_rheims_2");
       Locations[FindLocation("Douwesen_port")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_port")].reload.l3.disable = 0;
       Locations[FindLocation("Douwesen_shore_01")].reload.l2.disable = 0;
       Locations[FindLocation("Douwesen_shore_02")].reload.l2.disable = 0;
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims_complete";
       AddQuestRecord("again_find_rheims", 7);
       CloseQuestHeader("again_find_rheims");
       SetQuestHeader("search_danielle");
       AddQuestrecord("search_danielle", 1);
       locCameraFollow();
       restorepassengers("Blaze"); // PB: was restorepassengers(pchar.id) - Did not work as you are in control of "danielle" at that time
      

       RemoveCharacterEquip(characterFromID("danielle"), BLADE_ITEM_TYPE);
       GiveItem2Character(characterFromID("danielle"), "blade6");
       EquipCharacterByItem(characterFromID("danielle"), "blade6");
       if(AUTO_SKILL_SYSTEM) { AddPartyExpChar(pchar, "Sneak", 1000); }
       else { AddPartyExp(pchar, 10000); }
     break;


Could this be the cause of the problems --- if it happens elsewhere is it likely to cause problems there as well :facepalm


:drunk
That definitely looks to be related!
Try attached file starting again from PRIOR to your meeting with Rheims.
This should restore the functionality to Beta 3 state, with some extra comments added to explain why there are PChar = GetMainCharacter(); lines in the middle of the file.
It is definitely an uncommon occurrence to swap player characters and I don't think it happens anywhere else in the game code.
There are some parts where it is faked, but this example is for real.

But as far as I understand that code, the following section means that the required attribute was ALWAYS added to DANIELLE:
Code:
    case "dagger_3":
       LAi_ActorAnimation(characterFromID("blaze"), "Lay_1", "", -1);
       LAi_SetPlayerType(characterFromID("danielle"));
       SetMainCharacterIndex(GetCharacterIndex("danielle"));
       PChar = GetMainCharacter(); // PB: This is IMPORTANT to update that you are now 'Danielle'!
       ChangeCharacterAddress(characterFromID("Blaze"), "Rheims_house_inside", "goto5");

       DoQuestReloadToLocation("Rheims_house_inside", "item", "item1", "start_quest_movie_speak_with_rheims_complete");
       pchar.quest.main_line = "danielle_speak_with_almost_dead_rheims";

       locations[FindLocation("Douwesen_town_exit")].reload.l1.disable = 0;
       locations[FindLocation("Douwesen_town_exit")].reload.l2.disable = 0;
     break;
But by the time you're talking to Padre Domingues, you are back to Blaze again, so you wouldn't have the needed attribute (because it is Danielle who has it).
Which suggests that with the previous code change I suggested, it should now actually WORK because pchar is then ALWAYS Blaze.
Yet somehow it appears to be the other way around?

Anyway, if this fixes it, you won't hear me complaining.... :wp

Pirates

I have to say I have not really noticed any significant change - still sailing in and out of ports under false flags OK -- only noticeable thing is on Land -- I have had several bounty hunters after me - was wondering why since I have not angered anybody that I can recall. :duel:
When you encounter any again, can you make a screenshot of their dialog texts?
There are some bounty hunters who you can encounter regardless of anything even in the early game (though that never quite made sense to me).
But there are also the regular citizens who don't like your pirate status:
Code:
"Hmm... I have seen you before... during a ship skirmish some time ago, on a quarterdeck I think... HEY, you are the devious bastard who sailed close to our ship. We thought you were friendly right up to the moment you opened your gun-ports, fired into our ship, then boarded us and slaughtered our crew! ALARM! A pirate in disguise!",
" Should have killed ALL witnesses of my piratical past...",

So your false flags are never being detected? That does match with your fame level of "Unrecognized", I suppose.
Though even with that, I would expect there to be a slight chance of being detected anyway.

If you decide to get a LoM or join the Pirate Brotherhood and start to gain points with the various nations, this might begin to change.
Would be interesting to know at which Fame level, false flag detection becomes an actual risk.
At least it is good to know that in the early game, you are indeed pretty safe from being detected.
Keep an eye on ships as well as forts for this!

And thank you very much for your efforts in testing and helping out everywhere else. :bow
 

Attachments

  • quests_reaction.zip
    53.7 KB · Views: 91
But there are also the regular citizens who don't like your pirate status:
Code:
"Hmm... I have seen you before... during a ship skirmish some time ago, on a quarterdeck I think... HEY, you are the devious bastard who sailed close to our ship. We thought you were friendly right up to the moment you opened your gun-ports, fired into our ship, then boarded us and slaughtered our crew! ALARM! A pirate in disguise!",
" Should have killed ALL witnesses of my piratical past...",


:yes Yes - I have had that a couple of times - innocently walk up to someone in town to talk to them & all hell breaks loose :shock :rofl

:duel:
 
:yes Yes - I have had that a couple of times - innocently walk up to someone in town to talk to them & all hell breaks loose :shock :rofl

:duel:
Ah, that is because you are now considered to be a pirate then.
Do you reckon this happens too often? For now, that behaviour is quite simplistic.
 
Ah, that is because you are now considered to be a pirate then.
Do you reckon this happens too often? For now, that behaviour is quite simplistic.


:no

It has so far only happened to me when I have been trying to get a Treasure Quests in a town - and have gone and talked to everyone I can find ( sometimes several times) to try and get one. And then that dialog turns up xD.

:duel:
 
It has so far only happened to me when I have been trying to get a Treasure Quests in a town - and have gone and talked to everyone I can find ( sometimes several times) to try and get one. And then that dialog turns up xD.
Ah, yes; that would do it! The Treasure Quests and that behaviour are in the same dialog file. :cheeky
 
The new Quests_reaction.c file in post#10 works
Awesome! So the code is pretty much back to Beta 3.4 state for this and it works again (even if I don't understand how it can work).
You checked from the same savegame that you posted here earlier, right? So that includes the whole sequence from the start?

This got caused by my automatic search-and-replace of GetMainCharacter() references.
I did that because it appeared that it was often called like that when there was also a "PChar" variable available, which is a bit of a waste of a perfectly good variable.
So thanks a lot for catching this problem! I'll be very happy to have this NOT bugged in the Beta 4 public release. :cheeky
 
Back
Top