Log in

View Full Version : What am I doing wrong here?



Amends
08-13-2012, 04:29 PM
So I've been toying with this for awhile now but to no avail and so i need your guys help. Ive been trying to get the six hour fix to work but it hasn't done much for me. I tried looking through the forums a few times and all the fixes i could find weren't working.

Please let me know what im doing wrong (Here's a snippet of the script, just mainloop and procedure that includes six hour fix)


procedure SetUpStuff;
begin
ClearDebug;
{$IFDEF SMART}
{$IFDEF SIMBAMAJOR980}
Smart_Server := 55;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
{$ELSE}
SRL_SixHourFix := True;
Smart_FixSpeed := True;
{$ENDIF}
{$ENDIF}
SetUpSRL;
DeclarePlayers;
if not LoggedIn then
begin
repeat
LoginPlayerToLob;
until LobbyScreen;

OpenWorldScreen;
if not WorldScreen then
OpenWorldScreen;
if WorldScreen then
begin
SelectWorld(MainWorld);
LogInPlayer;
end;
end;
while not LoggedIn do
wait(500);
ActivateClient;
wait(100+random(100));
end;

begin
SetUpStuff;
MakeCompass('E');
SetAngle(SRL_ANGLE_HIGH);
GameTab(tab_Emotes);
repeat
begin
//Sendkeys(CRText, 50, 50);
TypeSendEx(CRText, true);
Writeln('Text entered...');
Writeln('Pausing!');
Mouse(573, 423, 2, 2, true);
wait((DelayMessage*1000)-random(500)+random(1000));
end;
until (false);
end.

Thanks kindly for any input

NKN
08-13-2012, 04:30 PM
Why do you have two {$ENDIF}?

eska
08-13-2012, 04:36 PM
You did not include smart.
You did not include srl
You call DeclarePlayers but you haven't made any function with that name...
You try to access the variable MainWorld but it doesn't exist.
You try to access the variable CRText but it doesn't exist.
You try to access the variable DelayMessage but it doesn't exist.

Once you fix all that it compiles.

Edit: My bad I though that was your full script.

Amends
08-13-2012, 04:37 PM
because of this


{$IFDEF SMART}
{$IFDEF SIMBAMAJOR980}

Should one of the {$ENDIF} do the job?

@Eska: thats just a snippet of the script, not the whole thing. THought this was all that was necessary

NKN
08-13-2012, 04:38 PM
You did not include smart.
You did not include srl
You call DeclarePlayers but you haven't made any function with that name...
You try to access the variable MainWorld but it doesn't exist.

That's uh, just part of the script.
Who knows if he included those at the top?

eska
08-13-2012, 04:40 PM
because of this



Should one of the {$ENDIF} do the job?

@Eska: thats just a snippet of the script, not the whole thing. THought this was all that was necessary


Your 2 endif are alright. It's normal. That's what I use in my scripts:

{$IFDEF SMART}
{$IFDEF SIMBAMAJOR980}
Smart_Server := 55;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
{$ELSE}
SRL_SixHourFix := True;
Smart_FixSpeed := True;
{$ENDIF}
{$ENDIF}


Other than that, I'm not familiar with the sixhourfix, so I can't really tell what you should do to fix it because I never actualy tested that thing.

Amends
08-13-2012, 04:46 PM
Okay you kinda lost me there but let me clarify.

The WHOLE script functions perfectly well up to the 6hr limit.
What's shown in the OP is just the last procedure in the script + the mainloop.
All i'm currently seeking help with is getting "SRL_SixHourFix := True;" to work

Btw im running on the most current version of Simba with SMART v8

Edit: I thought it may be related to something similar to whats described here: http://villavu.com/forum/showpost.php?p=1082371&postcount=8
But im not really sure what a suitable fix would be to test it

shstiger2009
08-13-2012, 04:52 PM
Okay you kinda lost me there but let me clarify.

The WHOLE script functions perfectly well up to the 6hr limit.
What's shown in the OP is just the last procedure in the script + the mainloop.
All i'm currently seeking help with is getting "SRL_SixHourFix := True;" to work

Btw im running on the most current version of Simba with SMART v8

Edit: I thought it may be related to something similar to whats described here: http://villavu.com/forum/showpost.php?p=1082371&postcount=8
But im not really sure what a suitable fix would be to test it

I think Brandon said something about it not working correctly...but I've personally seen mine work after he said that. I'm pretty sure it might have something to do with the script...like if you're in a SPS path and you get the restart game error, it's still thinking it's in that loop, and there's no way to break out of it.

Amends
08-13-2012, 05:04 PM
Hmmm it could be something similar to that but i dont have any SPS walking in there.

riwu
08-14-2012, 10:35 AM
Okay you kinda lost me there but let me clarify.

The WHOLE script functions perfectly well up to the 6hr limit.
What's shown in the OP is just the last procedure in the script + the mainloop.
All i'm currently seeking help with is getting "SRL_SixHourFix := True;" to work

Btw im running on the most current version of Simba with SMART v8

Edit: I thought it may be related to something similar to whats described here: http://villavu.com/forum/showpost.php?p=1082371&postcount=8
But im not really sure what a suitable fix would be to test it
The six hour fix work by starting right from where the script stops at, so since you don't have any LoggedIn checks in your mainloop it won't log you back in.

John
08-14-2012, 10:48 AM
Hmmm it could be something similar to that but i dont have any SPS walking in there.

For the script to actually Restart smart and continue it must first find the 'Game session expired' message. To do that you must add in, if not logged in then LogInPlayer; in most of your procedure, that's what I do and it works great.
Remember to have area checking if it walks around.

Amends
08-14-2012, 05:46 PM
Thanks for your responses guys! I think that this is what I was looking for.
To reply to John I have this;

if not LoggedIn then
begin
repeat
LoginPlayerToLob;
until LobbyScreen;
but from looking at your Dagg cannonner you used;

if not LoggedIn then
LoginPlayer;
Is there a difference here? If so how can I implement your method into my script correctly?

Thanks

NKN
08-14-2012, 06:49 PM
if not LoggedIn then
Loginplayer will log him all the way into the game. Your login script will only log someone in to the LobbyScreen, and that could be an infinite loop if something goes wrong. If wouldn't put it in a repeat until loop. Maybe just use it once. If you want it to go to the game, just use if not logged in, login player like this:

if(not(LoggedIn)) then
LoginPlayer;