-
Content Count
1157 -
Joined
-
Last visited
-
Days Won
86
Posts posted by Ridley
-
-
File Name: @autores (auto resurrection)
File Submitter: Ridley
File Submitted: 21 Feb 2016
File Category: Utility
@autores <mapname> < X coordinate> < Y coordinate>
eg. @autores prontera 150 150 <-- will revive players at prontera 150/150
Use it for your events, races or whatever
Note:
- only players on the given map are affected. If you set "prontera" as map, only players which die there will be revived. If you set pay_dun00, only players there are affected and so on..
- It has a 5 second cooldown till it revives you. This is set in line 57 (sleep2 5000;)
- second use of @autores will disable it again
- @autorescheck tells you if the system is enabled or disabled
- Works only at one map at the same time
- only players on the given map are affected. If you set "prontera" as map, only players which die there will be revived. If you set pay_dun00, only players there are affected and so on..
-
-
-
Hello boys'n'girls
The Download counter just hit 12000, thank you for that, even tho I wish there was a little more feedback or anything xD
If you updated it to date you should be fine. But probably I'm releasing soon a new one.
Regards
im waiting for this! :3
the new one is actually done, but not uploaded yet
Hey kerbii, does this one function well for the 2014-10-22 client? Thank you
no, you will miss some important files.
Small side note: downloadcounter is 13420
-
He talks about the crash logs since this is a client side problem
-
-
Untested but should work. And there are plenty ways to optimize that script :|
prontera,155,143,4 script Guild Base 722,{ set .npcname$,"[ ^0000FF Guild Base ^000000 ]"; set .mapname$,"guild_vs1"; OnMenu: mes .npcname$; mes "How may i help you sir ?"; mes "^FF0000_____________________________^000000"; mes "Guild Base Owner :"; if ( $@RoomOwner$ == "0" ){ mes "It is ^0000FFNOT Assigned^000000 yet."; } if ( $@RoomOwner$ != "0" ){ mes "^0000FF"+$@RoomOwner$+"^000000 Guild"; } mes "^FF0000_____________________________^000000"; next; switch(select("^4EEE94Guild Base Information^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFReturn To Base^000000", ( getgmlevel() < 80 || $@RoomOwner$ != "0" )?"":"^0000FFAssign Guild Base Owner^000000", ( getgmlevel() < 80 || $@RoomOwner$ == "0" )?"":"^FF0000Remove Guild Base Owner^000000")) { case 1: mes .npcname$; mes "To get into this Guild Base, The guild leader of your guild must talk with GM Team who incharge of assigning the Guild Base. "; next; mes .npcname$; mes "Inside the Guild Base have alot of facilities to help the Guild who owned the Guild Base."; close; case 2: warp .mapname$,50,48; flagemblem getcharid(2); end; case 3: mes .npcname$; mes "Please input the ^FF0000Name of the Guild^000000, So that the member of that guild can go into the Base."; mes "^FF0000_____________________________^000000"; mes "The name is ^FF0000VERY SENSITIVE^000000, please write it ^0000FFCorrectly^000000..."; input $@RoomOwner$; next; mes .npcname$; mes "The room has been assigned to ^FF0000"+$@RoomOwner$+"^000000 Guild."; mes "The member for this guild will be warped here by now."; atcommand "@guildrecall "+$@RoomOwner$+""; message strcharinfo(0),"Emblem of Guild Base Holder will be displayed upon the members get into the Base."; next; goto OnMenu; case 4: mes .npcname$; mes "Guild base ownership has been removed."; set $@RoomOwner$,"0"; mapannounce .mapname$,"The Guild Base Ownership has been WIPE Off/Changed.",bc_blue; mapwarp .mapname$,"prontera",155,185; next; goto OnMenu; } OnInit: set $@RoomOwner$,"0"; end; } guild_vs1,50,50,5 script Guild Base Manager 1907,{ set .npcname$,"[ ^0000FF Guild Base Manager ^000000 ]"; set .BuffDuration,3600000; mes .npcname$; mes "How can i help you here ?"; next; switch(select( ( getguildname(getcharid(2)) != $@RoomOwner$ || getcharid(0) != getguildmasterid(getcharid(2)) )?"":"^4EEE94Guild Members Recalling^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFHeal / Buffs^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFEquipment Repairing^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFPVP Room Warp^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFWOE Castle Warp^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFMall Room Warp^000000", ( getguildname(getcharid(2)) != $@RoomOwner$ )?"":"^0000FFRefiner^000000", "^FF0000Close^000000")) { case 1: goto Guild_Recall; case 2: goto Healing; case 3: goto Repairing; case 4: goto PVP_Warp; case 5: goto WOE_Warp; case 6: goto Mall_Room; case 7: goto Refiner; case 8: close; } Guild_Recall: mes .npcname$; mes "Your guild members has been recalled. They shall arrive here within couple of time."; atcommand "@guildrecall "+$@RoomOwner$+""; close; Healing: mes .npcname$; mes "Thank you for using our services."; close2; percentheal 100,100; sc_start SC_SPIRIT,.BuffDuration,5; specialeffect2 503,SELF,strcharinfo(0); skilleffect 34,0; sc_start SC_BLESSING,.BuffDuration,10; skilleffect 29,0; sc_start SC_INC_AGI,.BuffDuration,10; skilleffect 66,0; sc_start SC_IMPOSITIO,.BuffDuration,5; skilleffect 67,0; sc_start SC_SUFFRAGIUM,.BuffDuration,3; skilleffect 74,0; sc_start SC_MAGNIFICAT,.BuffDuration,5; skilleffect 361,0; sc_start SC_ASSUMPTIO,.BuffDuration,5; skilleffect 383,0; sc_start SC_WINDWALK,.BuffDuration,10; skilleffect 543,0; sc_start SC_NJ_NEN,.BuffDuration,5; skilleffect 357,0; sc_start SC_CONCENTRATION,.BuffDuration,10; skilleffect 380,0; sc_start SC_TRUESIGHT,.BuffDuration,5; skilleffect 114,0; sc_start SC_MAXIMIZEPOWER,.BuffDuration,100; skilleffect 234,0;sc_start SC_PROTECTWEAPON,.BuffDuration,5; skilleffect 235,0;sc_start SC_PROTECTSHIELD,.BuffDuration,5; skilleffect 236,0;sc_start SC_PROTECTARMOR,.BuffDuration,5; skilleffect 237,0;sc_start SC_PROTECTHELM,.BuffDuration,5; skilleffect 355,0; sc_start SC_AURABLADE,.BuffDuration,5; skilleffect 384,0; sc_start SC_MELTDOWN,.BuffDuration,10; skilleffect 378,0; sc_start SC_EDP,.BuffDuration,5; sc_start SC_ATTHASTE_POTION3,.BuffDuration,0; sc_start SC_FOOD_STR,.BuffDuration,10; sc_start SC_FOOD_AGI,.BuffDuration,10; sc_start SC_FOOD_VIT,.BuffDuration,10; sc_start SC_FOOD_INT,.BuffDuration,10; sc_start SC_FOOD_DEX,.BuffDuration,10; sc_start SC_FOOD_LUK,.BuffDuration,10; sc_start SC_FOOD_BASICHIT,.BuffDuration,10; sc_start SC_FOOD_BASICAVOIDANCE,.BuffDuration,10; sc_start SC_BATKFOOD,.BuffDuration,10; sc_start SC_MATKFOOD,.BuffDuration,10; sc_start SC_ATTHASTE_POTION3,.BuffDuration,5; sc_start SC_MOVHASTE_INFINITY,.BuffDuration,0; sc_start SC_CASH_PLUSEXP,.BuffDuration,150; sc_end SC_STONE; sc_end SC_SLOWDOWN; sc_end SC_FREEZE; sc_end SC_SLEEP; sc_end SC_CURSE; sc_end SC_SILENCE; sc_end SC_CONFUSION; sc_end SC_BLIND; sc_end SC_BLOODING; sc_end SC_DEC_AGI; sc_end SC_POISON; sc_end SC_ILLUSION; sc_end SC_NOEQUIPWEAPON; sc_end SC_NOEQUIPARMOR; sc_end SC_NOEQUIPHELM; sc_end SC_NOEQUIPSHIELD; sc_end SC_PROPERTYUNDEAD; sc_end SC_ORCISH; sc_end SC_BERSERK; sc_end SC_SKE; sc_end SC_SWOO; sc_end SC_SKA; end; Repairing: mes .npcname$; if ( getbrokenid(1) == 0 ){ mes "You have nothing cant be repair by now."; close; } atcommand "@repairall"; mes "All the broken equipments has been repaired."; close; PVP_Warp: warp "prontera",151,181; end; Mall_Room: warp "prontera",151,181; end; WOE_Warp: mes .npcname$; mes "Please choose your destination..."; next; switch(select("^4EEE94Prontera WOE Castle^000000", "^4EEE94Geffen WOE Castle^000000", "^4EEE94Payon WOE Castle^000000", "^4EEE94Yuno WOE Castle^000000", "^4EEE94Aldebaran WOE Castle^000000", "^4EEE94Rachel WOE Castle^000000", "^FF000Close^000000")) { case 1: callsub CastleWarp,"prt_gld",159,94; case 2: callsub CastleWarp,"gef_fild13",164,243; case 3: callsub CastleWarp,"pay_gld",200,173; case 4: callsub CastleWarp,"sch_gld",137,79; case 5: callsub CastleWarp,"alde_gld",186,155; case 6: callsub CastleWarp,"aru_gld",219,219; case 7: callsub CastleWarp,"prt_gld",159,94; case 8: callsub CastleWarp,"prt_gld",159,94; case 9: close; } CastleWarp: warp getarg(0),getarg(1),getarg(2); end; Refiner: mes .npcname$; mes "I am a great refiner.. i can refine all your equipments into +8."; next; switch(select( ( getequipisequiped(EQI_HEAD_TOP) == 0 || getequiprefinerycnt(EQI_HEAD_TOP) > 7 )?"":"Headgear [ ^4EEE94"+getequipname(EQI_HEAD_TOP)+"^000000 ]", ( getequipisequiped(EQI_ARMOR) == 0 || getequiprefinerycnt(EQI_ARMOR) > 7 )?"":"Armor [ ^4EEE94"+getequipname(EQI_ARMOR)+"^000000 ]", ( getequipisequiped(EQI_HAND_L) == 0 || getequiprefinerycnt(EQI_HAND_L) > 7 )?"":"Left Hand [ ^4EEE94"+getequipname(EQI_HAND_L)+"^000000 ]", ( getequipisequiped(EQI_HAND_R) == 0 || getequiprefinerycnt(EQI_HAND_R) > 7 )?"":"Right Hand [ ^4EEE94"+getequipname(EQI_HAND_R)+"^000000 ]", ( getequipisequiped(EQI_GARMENT) == 0 || getequiprefinerycnt(EQI_GARMENT) > 7 )?"":"Garment [ ^4EEE94"+getequipname(EQI_GARMENT)+"^000000 ]", ( getequipisequiped(EQI_SHOES) == 0 || getequiprefinerycnt(EQI_SHOES) > 7 )?"":"Shoes [ ^4EEE94"+getequipname(EQI_SHOES)+"^000000 ]", "^FF0000Close^000000")) { case 1: callsub EquipRefine,256,8-getequiprefinerycnt(EQI_HEAD_TOP); case 2: callsub EquipRefine,16,8-getequiprefinerycnt(EQI_ARMOR); case 3: callsub EquipRefine,32,8-getequiprefinerycnt(EQI_HAND_L); case 4: callsub EquipRefine,2,8-getequiprefinerycnt(EQI_HAND_R); case 5: callsub EquipRefine,4,8-getequiprefinerycnt(EQI_GARMENT); case 6: callsub EquipRefine,64,8-getequiprefinerycnt(EQI_SHOES); case 7: close; } EquipRefine: mes .npcname$; mes "Your equipment has been refined."; atcommand "@refine "+getarg(0)+" "+getarg(1)+""; next; goto Refiner; }
-
What about the console?
-
-
./configure --enable-debug=gdb
this just enables it
after the crash, there is a file "core.xxxx" (example, core.5213)
simply check with dir, then:
gdb map-server core.xxxxbt full
-
Off topic:
I don't know the code of harmony. But how do they do it without the sso launcher?
Let's say I use rolex. I would still be able to run the game client without it if I provide the exe with my login credentials. So I could avoid my Mac beeing logged
-
No idea what you mean xD but i found how to do it directly on the github site.
-
I'm a SVN Fanboy but i thought to give git a try.
When creating a fork, how can i update it to the latest version? (Using TortoiseGit).
Do i need to create a new remote? I would really appreciate any help with that.
-
-
./configure --enable-debug=gdb
ulimit -c unlimited
then starting the server. The next time it crashes you will find a file named core.1234 (or whatever number)
gdb map-server core.xxxx
bt full
-
hm it works thanks,
mine was a bit different and didnt work with dispbottom (i have actually no idea why) with mes it worked fine. o_o
-
Hello, I would like to request a command that displays all the duals on the map where the command is executedexamplei use @sameip in pronterathen display in the chat window---------------List of Same IP in Prontera---------User 1<ip> and User 2<ip>User 1<ip> and User 3<ip>User 4<ip> and User 18<ip>User 8<ip> and User 22<ip>(and so on)instead of "user" it shows the char nameI got an old src code of this but i hoped someone got an idea about how to make it a plugin or do it via bindatcmd. Anyways, here is the src (eathena)/*========================================== * @sameip * List all players on a map currently on the same IP. *------------------------------------------*/ACMD_FUNC(sameip){ int i, j; int map_id; char map_name[MAP_NAME_LENGTH]; struct s_mapiterator* iter; struct map_session_data* ssd; struct ip_record record[100]; struct same_record same[100]; nullpo_retr(-1, sd); if (!message || !*message) { safestrncpy(map_name, map[sd->bl.m].name, MAP_NAME_LENGTH); } else { safestrncpy(map_name, message, MAP_NAME_LENGTH); } map_id = map_mapname2mapid(map_name); if (map_id == -1) { sprintf(atcmd_output, "The map name '%s' doesn't exist.", map_name); clif_displaymessage(sd->fd, atcmd_output); return -1; } sprintf(atcmd_output, "---- Listing all players on %s ----", map_name); clif_displaymessage(sd->fd, atcmd_output); memset(same, 0, sizeof same); memset(record, 0, sizeof record); i = 0; iter = mapit_getallusers(); for (ssd = (struct map_session_data*)mapit_first(iter); mapit_exists(iter); ssd = (struct map_session_data*)mapit_next(iter)) { if (ssd == NULL) continue; if (ssd->state.autotrade) continue; if (ssd->fd < 0 || session[ssd->fd] == NULL) continue; if (ssd->bl.m != map_id) continue; ARR_FIND(0, 100, j, record[j].ip == session[ssd->fd]->client_addr); if (j == 100) { ARR_FIND(0, 100, j, record[j].account_id == 0); if (j == 100) break; record[j].ip = session[ssd->fd]->client_addr; record[j].char_id = ssd->status.char_id; record[j].account_id = ssd->status.account_id; continue; } same[i].ip = session[ssd->fd]->client_addr; same[i].pl1 = map_id2sd(record[j].account_id); same[i].pl2 = ssd; i++; } if (i > 0) { for (j = 0; i > j; j++) { if (same[j].pl1 && same[j].pl2) { sprintf(atcmd_output, "- Characters '%s' and '%s' are on the same IP.", same[j].pl1->status.name, same[j].pl2->status.name); clif_displaymessage(sd->fd, atcmd_output); } } } sprintf(atcmd_output, "---- Found %d players on the same IP ----", i); clif_displaymessage(sd->fd, atcmd_output); mapit_free(iter); return 0;}
-
omg it's annie, i'm fainting *fanboy shout
i remember an issue on eathena with guild skills.
prontera,164,170,4 script Guild Bug Fix 864,{ OnWhisperGlobal: if(guild_reset_progress!=0){ set @check,gettimetick(2); if(@check-guild_reset_progress < 360){ mes "Please wait 1 hour before using the NPC again"; close; } } mes "This is a npc to be used only by guild masters to rebuild their guilds in case they are bugged"; next; set @GID,getcharid(2); if(strcharinfo(0)!=getguildmaster(@GID)){ mes "You are not the guild master."; close; } mes "Let's start with counting your guild skills."; set @count,0; for(set @i,10000;@i<10015;set @i,@i+1) set @count, @count + getgdskilllv(@GID,@i); next; mes "Now let's count your remaining points and your guild level."; query_sql "Select `guild_lv`,`skill_point` from `guild` where `guild_id` = '" + @GID + "'",@guild_level,@skill_point; set @guild_level,@guild_level-1-@skill_point-@count; next; if(@guild_level){ mes "We need to remove "+@guild_level+" guild levels and give it again."; next; atcommand "@glevel -"+@guild_level; atcommand "@glevel "+@guild_level; mes "Everything should be fine now. You can use the npc again after 1 hour if necessary."; } else { mes "Everything seems fine with your guild. You can use the npc again after 1 hour if necessary."; } set guild_reset_progress,gettimetick(2); close;}
But right now i have no real id how to check/read/apply for all skills in the class tree.
-
what is "field list"? its not even in the script
-
it's already in the script..
CREATE TABLEcustom_storage SELECT * FROM storage;ALTER TABLE `custom_storage` ADD PRIMARY KEY ( `id` );ALTER TABLE `custom_storage` CHANGE `id` `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT;TRUNCATE TABLE `custom_storage`;
-
-
lol scrap it i got your point, man how can i be so blind xD
i could cry xD 2nd dumb mistake this weeks
-
i got a weird problem and can't figure the cause o__O
i added a few new items (i added customs before already and never had problems with it)
so, these are examples of those who work:
iteminfo.lub:
[29102] = { unidentifiedDisplayName = "Rogue Cape", unidentifiedResourceName = "rogue_cape", unidentifiedDescriptionName = { "Unknown Item, can be identified by [Magnifier]." }, identifiedDisplayName = "Rogue Cape", identifiedResourceName = "rogue_cape", identifiedDescriptionName = { "^ff0000This is an exlcusive Headgear for active Beta Testers!^000000", "Class: ^777777Costume^000000", "Location: ^777777Lower^000000", "Weight: ^77777710^000000", "Jobs: ^777777All^000000", "^990099[WoonRo Custom]^000000" }, slotCount = 0, ClassNum = 1250 }, [29103] = { unidentifiedDisplayName = "Siren", unidentifiedResourceName = "siren", unidentifiedDescriptionName = { "Unknown Item, can be identified by [Magnifier]." }, identifiedDisplayName = "Siren", identifiedResourceName = "siren", identifiedDescriptionName = { "^ff0000This is an exlcusive Headgear for active Beta Testers!^000000", "Class: ^777777Costume^000000", "Location: ^777777Upper^000000", "Weight: ^77777710^000000", "Jobs: ^777777All^000000", "^990099[WoonRo Custom]^000000" }, slotCount = 0, ClassNum = 1251 },
accname.lub[ACCESSORY_IDs.ACCESSORY_rogue_cape] = "_rogue_cape", [ACCESSORY_IDs.ACCESSORY_siren] = "_siren",
accessoryid.lubACCESSORY_rogue_cape = 1250, ACCESSORY_siren = 1251,
And these are the ones who doesn't work:[29104] = { unidentifiedDisplayName = "Helm of Darkness", unidentifiedResourceName = "Helm of Darkness", unidentifiedDescriptionName = { "Unknown Item, can be identified by [Magnifier]." }, identifiedDisplayName = "Helm of Darkness", identifiedResourceName = "Helm of Darkness", identifiedDescriptionName = { "A forboding helmet that hides part of the face. People wearing this have the appearance of Beelzebub.", "Class: ^777777Costume^000000", "Location: ^777777Upper^000000", "Weight: ^7777770^000000", "Jobs: ^777777All^000000", "^990099[WoonRo Custom]^000000" }, slotCount = 0, ClassNum = 1252 }, [29105] = { unidentifiedDisplayName = "Helm of Darkness Amarillo", unidentifiedResourceName = "Helm of Darkness Amarillo", unidentifiedDescriptionName = { "Unknown Item, can be identified by [Magnifier]." }, identifiedDisplayName = "Helm of Darkness Amarillo", identifiedResourceName = "Helm of Darkness Amarillo", identifiedDescriptionName = { "A forboding helmet that hides part of the face. People wearing this have the appearance of Beelzebub.", "Class: ^777777Costume^000000", "Location: ^777777Upper^000000", "Weight: ^7777770^000000", "Jobs: ^777777All^000000", "^990099[WoonRo Custom]^000000" }, slotCount = 0, ClassNum = 1253 },
accname.lub[ACCESSORY_IDs.ACCESSORY_helm_of_darkness] = "_helm_of_darkness", [ACCESSORY_IDs.ACCESSORY_amarillo] = "_amarillo",,
accessoryid.lubACCESSORY_helm_of_darkness = 1252, ACCESSORY_amarillo = 1253,
the sprite and file names are correct, all in the correct directiory.
I tried:
- switched the siren (1251) with amarillo (1253), Siren still worked, amarillo didn't
- the files directories are correct
- when wearing a gear (e.g. siren), then logging out, switching the clientside (make siren ID to amarillo) info files and logging back, i wear the gear, so the files took place in the grf
- Only thing which doesnt work, is are the collection.bps and inventory sprites. As said the directories are correct and the files are not corrupted.
- i didn't reach max. limit
Anyone got an idea?
- both issues seem to be in the texture path, which is
datatextureÀ¯ÀúÀÎÅÍÆäÀ̽ºcollection
datatextureÀ¯ÀúÀÎÅÍÆäÀ̽ºitem
- doesnt neither work with read data folder first.
-
Mysterious has a Script doing this
http://mysterious-project.googlecode.com/svn/trunk/npc/DoubleEXP.txt
Edit: Didnt See your Edit
gettime(4)== (0: Sunday - 6: Saturday)
For The timer use OnClock:
[BMG] mp3nametable.txt
in Client-Side Support
Posted
Mp3 128kbps
.wav is sound effects