Log in

View Full Version : Does multiplayer won't work anymore?



magixboy
12-05-2008, 08:42 PM
Well, the multiplayer won't work for all my scripts i use. Why does this happen?
While my first player is done auto-mining, it logged out and press the 'log in' button, but didnt type anything.

Sry for my noobiness.:D


Thx in advance if u guys get to solve my problem.

D1zl3
12-05-2008, 09:14 PM
Well, the multiplayer won't work for all my scripts i use. Why does this happen?
While my first player is done auto-mining, it logged out and press the 'log in' button, but didnt type anything.

Sry for my noobiness.:D


Thx in advance if u guys get to solve my problem.

did you enter the info for the next character?

Baked0420
12-05-2008, 09:21 PM
maybe (in code tags) post a script that you have that problem with so people can see if it's the script, or a problem with SRL, most likely it's just the script though and not SRL.

magixboy
12-06-2008, 05:11 AM
@D1zl3
I did put up the info on my second character.

@Baked0420
Here it is

program PowerMiner;
{.include SRL/SRL.scar}
{.include srl/srl/misc/Users.scar}
{.Include SRL/SRL/Skill/Mining.Scar}

type
RRecord = Record
rocks: Integer;
end;

const
YourSRLID = '';
YourSRLPass = '';

procedure CheckStats;
begin
ScriptID := '1093';
if (not (yourSRLID = '')) then
SRLID := YourSRLID
else
if (not (yourSRLPass = '')) then
SRLPassword := YourSRLPass
else
SRLID := '4472';
SRLPassword := 'markiseggo';
end;

function Report(RR: String): boolean;
begin
WriteLn('Error:( ' + RR + ' )');
result := True;
end;

var
R: array [0..2] of RRecord;
LD, MN, Gas: Integer;
MaxWait, FalsePlayers: Integer;
Q: String;

const Version = '1.2.[beta]';

procedure PlayerReport;
var
I: Integer;
Active: String;
begin
For I := 0 to (HowManyPlayers - 1) do
begin
if (Players[i].Active) then Active := 'T' else Active := 'F';
WriteLn( (IntToStr(I))+' : '+Players[I].nick+ ' = '+
Active + '| Mined: '+IntToStr(Players[I].Integers[5]) + ' Ores| M lvl:' + IntToStr(Players[I].Integers[2]));
end;
case lowercase(Q) of
'iron':
begin
ReportVars[1] := ReportVars[1]
+28;
end;
'copper':
begin
ReportVars[0] := ReportVars[0]
+28;
end;
'tin':
begin
ReportVars[2] := ReportVars[2]
+28;
end;
end;
end;

procedure FullReport;
begin
ClearDebug;

WriteLn('Blumblebee''s PowerMiner Version ' + version);
WriteLn('_________________________________________ ____________');
WriteLn('Mined A Total Of ' + IntToStr(MN) + ' Ores');
WriteLn('Avoided ' + IntToStr(Gas) + ' Gas');
WriteLn('Completed ' + IntToStr(LD) +' Loads');
WriteLn('Ran For ' + TimeRunning);
WriteLn('_________________________________________ ____________');
PlayerReport;
SRLRandomsReport;
end;

function CountOre: integer; forward;

function FindRandoms: Boolean;
begin
if FindFight then
RunAway('n', false, 1, 2500);
Result := FindNormalRandoms;
end;

procedure DeclarePlayers;
begin
SRLPlayerForm(True, ['Weild Pick'], ['Loads'], ['Rock Type'], []);
end;

Function w_WizzupGas(cx,cy: integer): Boolean; //Credits To Wizzup? For This Procedure

Var
CTS, I, Le, T, Time: Integer;
P, P2: TPointArray;
C, C2: TIntegerArray;
R, G, B: Integer;
H, S, L: Extended;
X, Y, Z: Extended;
GP: TPoint;

Begin
Result := False;

Time := GetSystemTime;

CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.16, 0.46);
GP.X := cx;
GP.Y := cy;
GP.Y := GP.Y - 20;
FindColorsTolerance(P, 9083807, GP.x - 25, GP.y - 25, GP.X + 25, GP.Y + 25, 15);
ColorToleranceSpeed(CTS);
SetColorSpeed2Modifiers(0.2, 0.2);

If Length(P) < 60 Then
Exit;

C := GetColors(P);
C2 := C;
ClearSameIntegers(C);


If Length(C) < 40 Then

Begin
Exit;
End;

WriteLn('Passed Color Diversity: ' + IntToStr(Length(C)));
Writeln('Total colors found: ' + IntToStr(Length(P)));

SetLength(C, 0);
SetLength(C, Length(C2));
SetLength(P2, Length(P));

Le := High(C2);

For I := 0 To Le Do
Begin
ColorToRGB(C2[i], R, G, B);
//If ((R - G) <= 6) And (G - B > 7) Then
If ((R - G) <= 10) And (G - B > 7) Then
Begin
ColorToHSL(C2[i], H, S, L);
If (H > 11.5) And (H < 16.0) And (S < 16.0) And (S > 2.0) And (L > 42.0) And (L < 71.0) Then
Begin
ColorToXYZ(C2[i], X, Y, Z);
If (X >= 18.0) And (X <= 45.0) And (Y >= 20.0)
And (Y <= 48.0) And (Z >= 15.0)
And (Z <= 47.0) And (Abs(X - Y) < 3.0)
And (Abs(X - Z) < 5.0) And (Abs(Y - Z) < 6.5)
Then
Begin
C[T] := C2[i];
P2[T] := P[i];
T := T + 1;
End;
End;
End;
End;
SetLength(C, T);

ClearSameIntegers(C);

If Length(C) < 25 Then
Begin
Exit;
End;
WriteLn('Passed Color Diversity after filtering the colors: ' + IntToStr(Length(C)));
Writeln('Total colors found, after filtering: ' + IntToStr(Length(P2)));


Result := True;
WriteLn('Gas Gave TRUE');
writeln('Time taken: ' + IntToStr(GetSystemTime - Time));
End;

function PickCheck: string;
var
PickaxeDTM, X, Y: Integer;
begin
PickAxeDTM := DTMFromString('78DA63F466666078CBC8800C34A459191E0 26' +
'99828A32F50CD4B543520594964351140355F09A8B105AA79 47408D2' +
'3500D2B135E35003DB606DD');

if (Players[CurrentPlayer].booleans[0]) then
begin
GameTab(5);
wait(200+random(200));
if FindDTM(PickaxeDTM, x, y, MIx1,MIy1,MIx2,MIY2) then
begin
MMouse(x, y, 2, 2);
wait(150+random(150));
if IsUptext('une') then
result := ('Rune Pickaxe')
end;
if IsUptext('dam') then
result := ('Addy Pickaxe')
end;
if (Result = '') then
begin
WriteLn('Found Pick, Continuing');
end else
WriteLn('Currently Using A ' + Result);
Exit;
begin
if not (Players[CurrentPlayer].booleans[0]) then
begin
gametab(4);
if FindDTM(PickaxeDTM, x, y, MIx1,MIy1,MIx2,MIY2) then
begin
MMouse(x, y, 2, 2);
if IsUptext('une') then
result := ('Rune Pickaxe')
end;
if IsUptext('dam') then
result := ('Addy Pickaxe')
end;
If (Result = '') then
begin
WriteLn('Found Pick, Continuing');
end else
WriteLn('Currently Using A ' + Result);
Exit;
end;
end;

procedure FBP;
var
pick: integer;
begin
if not (LoggedIn) then
Exit;
if TimeFromMark(pick) < 1500 then
Exit;
FindNormalRandoms;
MarkTime(pick);
if (FindBlackChatMessage('ou do not')) then
begin
Report('Your Pick Has been broken');
LogOut;
Players[CurrentPlayer].Active := False;
inc(FalsePlayers);
NextPlayer(Players[CurrentPlayer].Active);
end;
end;

procedure AntiBan;
begin
if (not (LoggedIn)) then
Exit;
case Random(100) of
0:begin
BoredHuman;
wait(250 + random(500));
end;
2:begin
RandomRClick;
wait(200 + random(500));
end;
3:begin
GameTab(1 + Random(12));
Wait(300 + Random(500));
GameTab(4);
end;
4:begin
PickUpMouse;
Wait(200 + Random(200));
end;
5:begin
RandomMovement;
SetAngle(true);
end;
end;
end;

procedure LoadRockRec;
var
A: String;
begin
try
LoadRockRecords;
begin
A := (Players[CurrentPlayer].strings[0]);
case LowerCase(A) of
'iron':
begin
R[0].Rocks := rimmington_Iron;
R[1].Rocks := rimmington_Iron;
R[2].Rocks := rimmington_Iron;
MaxWait := 6000;
Q := 'iron';
end;
'copper':
begin
R[0].Rocks := lumbridge_copper;
R[1].Rocks := rimmington_Copper;
R[2].Rocks := varrock_Copper;
MaxWait := 12000;
Q := 'copper';
end;
'tin':
begin
R[0].Rocks := lumbridge_tin;
R[1].Rocks := rimmington_Tin;
R[2].Rocks := rimmington_Tin;
MaxWait := 12000;
Q := 'tin';
end;
end;
end;
except end;
end;

procedure WhileMining;
var
C: Integer;
begin
if not (LoggedIn) then
Exit;
MarkTime(C);
begin
While (TimeFromMark(c) < MaxWait) do
begin
FindRandoms;
Wait(100+random(50));
AntiBan;
FBP;
FindPick;
Wait(500+random(500));
if FindBlackChatMessage('anage') then
Exit;
end;
end;
end;

procedure MineRock;
var
B: Boolean;
H, X, Y, CX, CY: Integer;
begin
if not (LoggedIn) then
Exit;
FBP;
FindRandoms;
try
For H:= 0 To 2 Do
begin
B := FindObjRock(X, Y, R[H].Rocks);
if B then Break;
end;
except end;

FBP;

if B then
begin
if w_wizzupgas(CX ,CY - 5)then
begin
MFF(MMCX + 2,MMCY , 5, 4);
Inc(Gas);
ReportVars[3] := ReportVars[3] + 1;
SendSRLReport;
SRLRandomsReport;
MMouse(random(MSX2),random(MSY2),5,5);
Status('Found Gas! Using wizzups gas checker');
FTWait(8+random(2));
exit;
end else
Case Random(2) of
0:
begin
Mouse(X, Y, 0, 0, False);
Wait(150+Random(100));
if (ChooseOption('ine')) then
end;
1: Mouse(X, Y, 0, 0, True);
end;
Wait(10+random(50));
Flag;
WhileMining;
end;
end;

procedure DropAllExcept(W : Array of Integer);
// Credits to SandStorm
var
i: Integer;
begin
if not (LoggedIn) then
Exit;
For I:=1 To 28 Do
if not(InIntArray(w, i)) then
DropItem(i);
end;

procedure DropOre;
begin
if not LoggedIn then Exit;
Status('Dropping Ore');
CountOre;
try
begin
if (Players[CurrentPlayer].booleans[0]) then
DropAll;
end;
if not (Players[CurrentPlayer].booleans[0]) then
begin
DropAllExcept([1]);
end;
Finally
Inc(LD);
Players[CurrentPlayer].Integers[6] := Players[CurrentPlayer].Integers[6]
+ 1;
FullReport;
except
end;
end;

function CountDTMs(DTM :integer) :integer;
var
n, r, m, g: integer;
slot: tbox;
begin
for n := 1 to 28 do
begin
if existsitem(n) then
begin
slot:= invbox(n);
if FindDTM(DTM,m,g,slot.x1,slot.y1,slot.x2,slot.y2) then inc(r);
end;
end;
Result := r;
end;

function CountOre: integer;
var
tempcount, tempcount2, OreDTM: integer;
X, Y: Integer;
begin

OreDTM := DTMFromString('78DA63CC636260D065644006F7EACC19FE0 36' +
'990E87F20602C01AA5142550391859140BA02A8C698809A78 A01A' +
'53026AE2806AB408A8C904AAB1C2AF06009ACB0A4D');

Result := Result xor Result;
GameTab(4);
wait(100 + random(200));
if finddtm(OreDTM,x,y,MIx1,MIy1,MIx2,MIY2) then
begin
TempCount := CountDTMs(OreDTM);
Result := TempCount;
MN := MN + TempCount;
TempCount2 := CountDTMs(OreDTM);
Result := TempCount2;
Players[CurrentPlayer].Integers[5] := Players[CurrentPlayer].Integers[5]
+ TempCount2;
end;
freedtm(OreDTM);
end;

procedure SetScript;
begin
SetupSRL;
CheckStats;
Disguise('Powerminer rev' + Version);
MouseSpeed := 20;
DeclarePlayers;
end;

procedure PlayerStart;
begin
ActivateClient;
if not (LoggedIn) then
LogInPlayer;
if LoggedIn then
begin
SetAngle(True);
SetRun(True);
SetChat('Off', 1);
SetChat('Off', 2);
Wait(500 + Random(500));
PickCheck;
Wait(400 + Random(655));
Players[CurrentPlayer].integers[2] := GetSkillInfo('Mining', False);
WriteLn('Players Mining level is ' +
IntToStr(Players[CurrentPlayer].integers[2]));
gametab(4);
LoadRockRec;
FindPickHeadColor;
end;
end;

procedure MainLoop;
begin
SetScript;
wait(500 + random (200));
PlayerStart;
repeat
repeat
repeat
Status('Mining ' + Players[CurrentPlayer].strings[0] + ' ore''s');
MineRock;
until InvFull;
If InvFull then
begin
DropOre;
end;
If Not (LoggedIn) Or Not (Players[CurrentPlayer].Active) Then
Players[CurrentPlayer].Active := False;
If Not LoggedIn Then
Begin
Players[CurrentPlayer].Active := False;
inc(FalsePlayers);
PlayerStart;
end;
until(Players[CurrentPlayer].Integers[6] >= Players[CurrentPlayer].Integers[0]) or
(Players[HowManyPlayers - 1].Active = False);
begin
NextPlayer(True);
Players[CurrentPlayer].Integers[6] := 0;
PlayerStart;
end;
If AllPlayersInactive then Break;
until(AllPlayersInactive);
Report('All Players Inactive');
end;

procedure scriptterminate;
begin
disguise('Terminated.');
FullReport;
end;

begin
MainLoop;
end.

Blumblebees (CTI) PowerMiner

Type: PowerMiner
Date Released: December, 5, 2008
SCAR REV: 3.15b
SRL Rev: #28
Author: Blumblebee

{Version History}

1.0.[beta]:
'Initial Release, A Bit sketch, none the less works well. Iron is'
'only rock tested so far. Further testing Required.'

1.1.[beta]:
'Minor Tweaks Before Release. Bug Fixed, Progress Report Format Changed'
'Slightly. Overall, just made it more appealing.
1.2.[beta]:
'Released! Let the Leeching Begin!'

{Bug Report}

1.0.[beta]:
'Pick Axe head reattachment hasnt been added, thus this kills the'
'script. The FindGas procedure is not working as well as hoped.'
'(50-75% accurate)'

1.1.[beta]:
'Minor Tweaking/Bug Fixes before Release. Found a Bug with Tin Mining.'
'Script Will Mine Silver Ore, when powermining tin. Minor setback, but'
'problem none the less.'

{Other Notes}

1.0.[beta]:
'So Far, Script works well. Script will be released soon.'

1.1.[beta]:
'Found A Counting Error for the proggie reports that have been fixed.'
'Hopefully will be released now.'

Well, i don't remember actually; does it got to do with 'login.scar'?

EDIT: How can i make this quote smaller?

Baked0420
12-06-2008, 05:40 AM
oops I meant to tell you to put it in SCAR tags sorry, just edit your post and change CODE to SCAR in each of the tags before and after the script. and I'll edit this post if I see anything wrong at all with it being multi-player compatible, and the login.scar fix was just so you could login in general with even your first player, I don't think it affected multiplayer.

Kyle Undefined
12-06-2008, 05:52 AM
Have you done the login fix? If not, then do it. Use the search button.

~Camo