Jump to content
Emistry

Utility: GM Online List

Recommended Posts

GM Online List


This Script will display to players a list of GM in this server.

Configuration :

	OnInit:		.min_group_id = 1;		.afk_second = 300;		end;


  • Submitter
  • Submitted
    07/29/2012
  • Category
  • Video
  • Content Author
    Emistry

 

  • Upvote 1
Link to comment
Share on other sites

How do you change the view of Lv,

I want to display the ranking like Admin / Support / Event GM, instead of the GM Lv.

Edited by rainz89
Link to comment
Share on other sites

the current 1 doesnt support putting a rank in the display list.....

if you want..then you have to edit the script ......

change all

.GM_Level

to

.GM_Level$

then..change this line

set .GM_Level[ getarraysize( .GM_Level ) ],getgmlevel();

to

if( getgmlevel() < 10 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 1 GM";
else if( getgmlevel() < 20 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 2 GM";
else if( getgmlevel() < 30 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 3 GM";
else if( getgmlevel() < 40 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 4 GM";

Link to comment
Share on other sites

Sir.. i edit the min GM level into 4.. But the GM not showing in the list.. He relog many times also not showing.. 

 

set .MinGMLevel,4;  // Min. GM Level to Show in Online Lists
Link to comment
Share on other sites

Sir.. i edit the min GM level into 4.. But the GM not showing in the list.. He relog many times also not showing.. 

 

set .MinGMLevel,4;  // Min. GM Level to Show in Online Lists

make sure the account is GM Level 4...not Group ID...

Link to comment
Share on other sites

the current 1 doesnt support putting a rank in the display list.....

if you want..then you have to edit the script ......

change all

.GM_Level
to

.GM_Level$

then..change this line

set .GM_Level[ getarraysize( .GM_Level ) ],getgmlevel();
to

if( getgmlevel() < 10 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 1 GM";
else if( getgmlevel() < 20 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 2 GM";
else if( getgmlevel() < 30 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 3 GM";
else if( getgmlevel() < 40 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 4 GM";

 

 

I copy and paste this script.. But here i got.. The account is LVL 99 GM... But it shows LVL0.. 

 

screen_Milenia_Adventure068.jpg

Link to comment
Share on other sites

@rakuzas

show your script ...

 

 

prontera,164,172,7	script	GM Online Lists	856,{
mes "Staffs Online Lists : ^FF0000"+getarraysize( .GM_Name$ )+"^000000 Staffs";
mes "^0000FF_____________________________^000000";
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){
	getmapxy( .Map$,.x,.y,0,.GM_Name$[[email protected]] );
	mes "[ Lv ^63D1F4"+.GM_Level[[email protected]]+"^000000 ] ^[email protected] ^0000FF"+.GM_Name$[[email protected]]+"^000000";
	mes "Location : ^0000FF"+.Map$+"^000000";
	mes "^0000FF_____________________________^000000";
	}
close;

OnInit:
set .MinGMLevel,1;		// Min. GM Level to Show in Online Lists
end;

OnPCLoginEvent:
if( getgmlevel() < .MinGMLevel ) end;
set .GM_Name$[ getarraysize( .GM_Name$ ) ],strcharinfo(0);
if( getgmlevel() < 10 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 1 GM";
else if( getgmlevel() < 20 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 2 GM";
else if( getgmlevel() < 30 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 3 GM";
else if( getgmlevel() < 40 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 4 GM";
end;

OnPCLogoutEvent:
if( getgmlevel() < .MinGMLevel ) end;
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){
	if( strcharinfo(0) != .GM_Name$[[email protected]] ) continue;
	deletearray .GM_Name$[[email protected]],1;
	deletearray .GM_Level[[email protected]],1;
	end;
	}
end;
}

Here is my script.. right now all GM Online show lvl 0.. Maybe im set it wrong?

Link to comment
Share on other sites

Or you can try this.

OnPCLoginEvent:
if( getgroupid() < .MinGMLevel ) end;
set .GM_Name$[ getarraysize( .GM_Name$ ) ],strcharinfo(0);
if( getgroupid() < 10 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 1 GM";
else if( getgroupid() < 20 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 2 GM";
else if( getgroupid() < 30 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 3 GM";
else if( getgroupid() < 40 ) set .GM_Level$[ getarraysize( .GM_Name$ ) ],"Level 4 GM";

 

OnPCLogoutEvent:
if( getgroupid() < .MinGMLevel ) end;
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){
	if( strcharinfo(0) != .GM_Name$[[email protected]] ) continue;
	deletearray .GM_Name$[[email protected]],1;
	deletearray .GM_Level[[email protected]],1;
	end;
	}
end;
Edited by KoolKat29
Link to comment
Share on other sites

try 

OnPCLoginEvent:
set [email protected],getgmlevel();
if( [email protected] < .MinGMLevel ) end;
set [email protected],getarraysize( .GM_Name$ );
set .GM_Name$[ [email protected] ],strcharinfo(0);
if( [email protected] < 10 ) set .GM_Level$[ [email protected] ],"Level 1 GM";
else if( [email protected] < 20 ) set .GM_Level$[ [email protected] ],"Level 2 GM";
else if( [email protected] < 30 ) set .GM_Level$[ [email protected] ],"Level 3 GM";
else if( [email protected] < 40 ) set .GM_Level$[ [email protected] ],"Level 4 GM";
end;
Link to comment
Share on other sites

asasa.png

 

GM LVL 99 But shows LVL 0.. Hmm..

 

and also.. Is it possible to shows Location from ra_temple into Rachel Temple?

Edited by rakuzas
Link to comment
Share on other sites

make sure your GM level is within this range..

if( [email protected] < 10 ) set .GM_Level$[ [email protected] ],"Level 1 GM";
else if( [email protected] < 20 ) set .GM_Level$[ [email protected] ],"Level 2 GM";
else if( [email protected] < 30 ) set .GM_Level$[ [email protected] ],"Level 3 GM";
else if( [email protected] < 40 ) set .GM_Level$[ [email protected] ],"Level 4 GM";

i think your current GM level is 40 level or higher...

Link to comment
Share on other sites

i dont know if im set it wrong.. But right now no GM online shows and the GM already relogin.. Here is the script..

 

 

 
ra_temple,110,159,5    script    GM Online Lists    856,{
mes "Staffs Online Lists : ^FF0000"+getarraysize( .GM_Name$ )+"^000000 Staffs";
mes "^0000FF_____________________________^000000";
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){
    getmapxy( .Map$,.x,.y,0,.GM_Name$[[email protected]] );
    mes "[ Lv ^63D1F4"+.GM_Level[[email protected]]+"^000000 ] ^[email protected] ^0000FF"+.GM_Name$[[email protected]]+"^000000";
    mes "Location : ^0000FF"+.Map$+"^000000";
    mes "^0000FF_____________________________^000000";
    }
close;
 
OnInit:
set .MinGMLevel,1;        // Min. GM Level to Show in Online Lists
end;
 
OnPCLoginEvent:
set [email protected],getgmlevel();
if( [email protected] < .MinGMLevel ) end;
set [email protected],getarraysize( .GM_Name$ );
set .GM_Name$[ [email protected] ],strcharinfo(0);
if( [email protected] < 10 ) set .GM_Level$[ [email protected] ],"Level 1 GM";
else if( [email protected] < 20 ) set .GM_Level$[ [email protected] ],"Level 2 GM";
else if( [email protected] < 30 ) set .GM_Level$[ [email protected] ],"Level 3 GM";
else if( [email protected] < 40 ) set .GM_Level$[ [email protected] ],"Level 4 GM";
end;
 
OnPCLogoutEvent:
if( getgroupid() < .MinGMLevel ) end;
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){
    if( strcharinfo(0) != .GM_Name$[[email protected]] ) continue;
    deletearray .GM_Name$[[email protected]],1;
    deletearray .GM_Level[[email protected]],1;
    end;
    }
end;
}

Here is the GM account : 

 

agm.png

Edited by rakuzas
Link to comment
Share on other sites

/swt .... seem like you didnt read what i said in post#17 ...

 

if( [email protected] < 10 ) set .GM_Level$[ [email protected] ],"Level 1 GM";
else if( [email protected] < 20 ) set .GM_Level$[ [email protected] ],"Level 2 GM";
else if( [email protected] < 30 ) set .GM_Level$[ [email protected] ],"Level 3 GM";
else if( [email protected] < 40 ) set .GM_Level$[ [email protected] ],"Level 4 GM";
else set .GM_Level$[ [email protected] ],"ADMIN";
end;
Link to comment
Share on other sites


prontera,155,171,5 script GM Online Lists 436,{

mes "Staffs Online Lists : ^FF0000"+getarraysize( .GM_Name$ )+"^000000 Staffs";

mes "^0000FF_____________________________^000000";

for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){

getmapxy( .Map$,.x,.y,0,.GM_Name$[[email protected]] );

mes "[ Lv ^63D1F4"+.GM_Level[[email protected]]+"^000000 ] ^[email protected] ^0000FF"+.GM_Name$[[email protected]]+"^000000";

mes "Location : ^0000FF"+.Map$+"^000000";

mes "^0000FF_____________________________^000000";

}

close;

OnInit:

set .MinGMLevel,60; // Min. GM Level to Show in Online Lists

end;

OnPCLoginEvent:

set [email protected],getgmlevel();

if( [email protected] < .MinGMLevel ) end;

set [email protected],getarraysize( .GM_Name$ );

set .GM_Name$[ [email protected] ],strcharinfo(0);

if( [email protected] < 10 ) set .GM_Level$[ [email protected] ],"Level 1 GM";

else if( [email protected] < 20 ) set .GM_Level$[ [email protected] ],"Level 2 GM";

else if( [email protected] < 30 ) set .GM_Level$[ [email protected] ],"Level 3 GM";

else if( [email protected] < 40 ) set .GM_Level$[ [email protected] ],"Level 4 GM";

else set .GM_Level$[ [email protected] ],"ADMIN";

end;

OnPCLogoutEvent:

if( getgmlevel() < .MinGMLevel ) end;

for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){

if( strcharinfo(0) != .GM_Name$[[email protected]] ) continue;

deletearray .GM_Name$[[email protected]],1;

deletearray .GM_Level[[email protected]],1;

end;

}

end;

}

screen_Milenia_Adventure093.jpg

 

im using this script now its shows GM online.. but still not shows Admin.. I mean.. Level 99 GM still shows LVL0.. And.. Can change the map? i mean i will read like from orcs_dun01 into the name description like Orcs Dungeon 01 or like ra_temple into Rachel Temple.. Hmm.. If not, i will just remove its then.. /heh 

Link to comment
Share on other sites

mes "[ Lv ^63D1F4"+.GM_Level$[[email protected]]+"^000000 ] ^[email protected] ^0000FF"+.GM_Name$[[email protected]]+"^000000";

 

OnPCLogoutEvent:
if( getgmlevel() < .MinGMLevel ) end;
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 )
	if( strcharinfo(0) == .GM_Name$[[email protected]] ){
	    deletearray .GM_Name$[[email protected]],1;
	    deletearray .GM_Level$[[email protected]],1;
	    end;
	}
end;
Link to comment
Share on other sites

Here is the working code : 

 

 
ra_temple,110,159,5     script  GM Online Lists 856,{
 
mes "Staffs Online Lists : ^FF0000"+getarraysize( .GM_Name$ )+"^000000 Staffs";
mes "^0000FF_____________________________^000000";
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 ){
        getmapxy( .Map$,.x,.y,0,.GM_Name$[[email protected]] );
        mes "[ ^63D1F4"+.GM_Level$[[email protected]]+"^000000 ] ^[email protected] ^0000FF"+.GM_Name$[[email protected]]+"^000000";
        mes "Location : ^0000FF"+.Map$+"^000000";
        mes "^0000FF_____________________________^000000";
        }
close;
 
OnInit:
set .MinGMLevel,1;              // Min. GM Level to Show in Online Lists
end;
 
OnPCLoginEvent:
set [email protected],getgmlevel();
if( [email protected] < .MinGMLevel ) end;
set [email protected],getarraysize( .GM_Name$ );
set .GM_Name$[ [email protected] ],strcharinfo(0);
if( [email protected] < 10 ) set .GM_Level$[ [email protected] ],"Level 1 GM";
else if( [email protected] < 20 ) set .GM_Level$[ [email protected] ],"Level 2 GM";
else if( [email protected] < 30 ) set .GM_Level$[ [email protected] ],"Level 3 GM";
else if( [email protected] < 40 ) set .GM_Level$[ [email protected] ],"Level 4 GM";
else set .GM_Level$[ [email protected] ],"ADMIN";
end;
 
OnPCLogoutEvent:
if( getgmlevel() < .MinGMLevel ) end;
for( set [email protected],0; [email protected] < getarraysize( .GM_Name$ ) ; set [email protected],[email protected] + 1 )
        if( strcharinfo(0) == .GM_Name$[[email protected]] ){
            deletearray .GM_Name$[[email protected]],1;
            deletearray .GM_Level$[[email protected]],1;
            end;
        }
end;
}

// Special Thanks to Emistry for nice script and guide to make it works!
// Edit some script to make it works on Milenia Ragnarok Online by Rakuzas.

screen_Milenia_Adventure094.jpg

 

And.. Can make the map read as other name? not the default map name like that? Thanks..

Link to comment
Share on other sites

there is no way npc can read the map name from mapnametable.txt ..

 

you can either save all map name with custom variable and retrieve it ...

somwhere in Trojan Website last time have this .... you can check there if you found his website link...

too bad i dont have it..forget already ~

Link to comment
Share on other sites

Hmmm.. So.. Its ok then.. I will just remove the GM location.. Thanks for making this work! Thank you so much~ /no1

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.