joyy95 Posted July 21, 2023 Group: Members Topic Count: 28 Topics Per Day: 0.04 Content Count: 51 Reputation: 0 Joined: 06/28/23 Last Seen: Yesterday at 05:52 AM Share Posted July 21, 2023 Hello, Im trying to add King Of Emperium... https://board.herc.ws/topic/4495-king-of-emperium-hill/ But i need help with castledb.txt because my rathena is castledb.yml... i dont know how to convert the format thanks Quote Link to comment Share on other sites More sharing options...
0 Winterfox Posted July 21, 2023 Group: Members Topic Count: 1 Topics Per Day: 0.00 Content Count: 245 Reputation: 93 Joined: 06/30/18 Last Seen: November 27, 2024 Share Posted July 21, 2023 You should really consider to research before you ask such questions. YAML isn't really hard to understand, the rAthena databases are well documented and the data you want to convert isn't really complex. Here is a good guide for YAML: https://learnxinyminutes.com/docs/yaml/ And an example how the conversion in your specific case looks: - Id: 100 Map: guild_vs1 Name: King of Emperium Hill Npc: koe Quote Link to comment Share on other sites More sharing options...
0 joyy95 Posted July 22, 2023 Group: Members Topic Count: 28 Topics Per Day: 0.04 Content Count: 51 Reputation: 0 Joined: 06/28/23 Last Seen: Yesterday at 05:52 AM Author Share Posted July 22, 2023 How about this emp room breaker? i dont knwo how to make itno error with put castledb.txt Quote Link to comment Share on other sites More sharing options...
0 Winterfox Posted July 22, 2023 Group: Members Topic Count: 1 Topics Per Day: 0.00 Content Count: 245 Reputation: 93 Joined: 06/30/18 Last Seen: November 27, 2024 Share Posted July 22, 2023 Is Emp Room Breaker another script, or what do you mean by that? Quote Link to comment Share on other sites More sharing options...
0 joyy95 Posted July 23, 2023 Group: Members Topic Count: 28 Topics Per Day: 0.04 Content Count: 51 Reputation: 0 Joined: 06/28/23 Last Seen: Yesterday at 05:52 AM Author Share Posted July 23, 2023 12 hours ago, Winterfox said: Is Emp Room Breaker another script, or what do you mean by that? Another script //===== rAthena Script ======================================= //= Emperium Break Room //===== By: ================================================== //= Masao //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= An little Emperium Break Room NPC in which you can test your //= strength and speed against Emperiums. //===== Additional Comments: ================================= //= 1.0 First Version. [Masao] //============================================================ prontera,141,179,0 script Emperium Breaker 1288,{ set .@emp_time,$empbrk_record; set .@emp_m,.@emp_time / 60000; set .@emp_s,.@emp_time / 1000; set .@emp_ms,.@emp_time / 10000; mes "[Emperium Breaker]"; mes "Current record holder is the Player ^5050A0"+$empbrk_master$+"^000000 ."; mes "With an time of ^000080"+.@emp_m+"^000000Minutes ^000080"+.@emp_s+"^000000Seconds ^000080"+.@emp_ms+"^000000Milliseconds until the Emperium got broke."; next; set .@time,empbrk_record; set .@m,.@time / 60000; set .@s,.@time / 1000; set .@ms,.@time / 10000; mes "[Emperium Breaker]"; mes "Your Own Record:"; mes "^000080"+.@m+"^000000m ^000080"+.@s+"^000000s ^000080"+.@ms+"^000000ms"; mes "[Emperium Breaker]"; mes "Would you like to try to set a new record?"; next; if (getgmlevel() >= 20) { menu "Standard Menu",-,"Reset",L_RO,"Reset Rooms",L_RR,"Cancel",L_C; menu "Yes",-,"No",L_C,"Reset",L_R; } else { menu "Yes",-,"No",L_C,"Reset",L_R; } cleararray .arena$[0],"",4; mes "[Emperium Breaker]"; if (getareausers("pvp_n_4-5",94,128,105,139)){ mes "Emp n° ^0000DF1 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^0000DF1 ^00A000 Free^000000"; set .arena$[0],"^0000DFEmperium^000000"; } if (getareausers("pvp_n_4-5",60,94,71,105)){ mes "Emp n° ^B05D002 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^B05D002 ^00A000 Free^000000"; set .arena$[1],"^B05D00Emperium^000000"; } if (getareausers("pvp_n_4-5",94,60,105,71)){ mes "Emp n° ^B00FB03 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^90AF003 ^00A000 Free^000000"; set .arena$[2],"^90AF00Emperium^000000"; } if (getareausers("pvp_n_4-5",128,94,139,105)){ mes "Emp n° ^50AF004 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^500F004 ^00A000 Free^000000"; set .arena$[3],"^500F00Emperium^000000"; } next; switch (select(.arena$[0],.arena$[1],.arena$[2],.arena$[3],"Exit")){ case 1: if (getareausers("pvp_n_4-5",60,94,71,105) == 0){ if($@empr_occupied[0] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[0],1; set $@empbrk_charid[0],getcharid(0); warp "pvp_n_4-5",99,128; initnpctimer "EmpBrk#1"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 2: if (getareausers("pvp_n_4-5",60,94,71,105) == 0){ if($@empr_occupied[1] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[1],1; set $@empbrk_charid[1],getcharid(0); warp "pvp_n_4-5",68,99; initnpctimer "EmpBrk#2"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 3: if (getareausers("pvp_n_4-5",94,60,105,71) == 0){ if($@empr_occupied[2] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[2],1; set $@empbrk_charid[2],getcharid(0); warp "pvp_n_4-5",100,68; initnpctimer "EmpBrk#3"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 4: if (getareausers("pvp_n_4-5",128,94,139,105) == 0){ if($@empr_occupied[3] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[3],1; set $@empbrk_charid[3],getcharid(0); warp "pvp_n_4-5",130,99; initnpctimer "EmpBrk#4"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 5: close; } L_RO: mes "[Emperium Breaker]"; mes "Are you sure you want to reset the official record?"; next; menu "Yes",-,"No",L_C; set $empbrk_record,0; set $empbrk_master$,""; close; L_R: mes "[Emperium Breaker]"; mes "Are you sure you want to reset your record?"; next; menu "Yes",-,"No",L_C; set empbrk_record,0; close; L_RR: mes "[Emperium Breaker]"; mes "Rooms have been reset."; cleararray $@empr_occupied[0],0,4; close; L_C: close; } - script EmpBrk#1 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#1::OnEmpBreak"; end; OnTimer600000: warpchar "prontera",155,180,$@empbrk_charid[0]; killmonster "pvp_n_4-5","EmpBrk#1::OnEmpBreak"; set $@empr_occupied[0],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#1"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } set $@empr_occupied[0],0; areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "prontera",155,180,$@empbrk_charid[0]; end; OnInit: set .x1,94; set .y1,128; set .x2,105; set .y2,139; set .xe,100; set .ye,134; end; } pvp_n_4-5,99,125,0 script EmpBrk#1_touch -1,3,1,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",99,128; end; } - script EmpBrk#2 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#2::OnEmpBreak"; end; OnTimer600000: warpchar "prontera",155,180,$@empbrk_charid[1]; killmonster "pvp_n_4-5","EmpBrk#2::OnEmpBreak"; set $@empr_occupied[1],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#2"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "prontera",155,180,$@empbrk_charid[1]; set $@empr_occupied[1],0; end; OnInit: set .x1,60; set .y1,94; set .x2,71; set .y2,105; set .xe,65; set .ye,99; end; } pvp_n_4-5,74,99,0 script EmpBrk#2_touch -1,1,3,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",68,99; end; } - script EmpBrk#3 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#3::OnEmpBreak"; end; OnTimer600000: warpchar "prontera",155,180,$@empbrk_charid[2]; killmonster "pvp_n_4-5","EmpBrk#3::OnEmpBreak"; set $@empr_occupied[2],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#3"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "prontera",155,180,$@empbrk_charid[2]; set $@empr_occupied[2],0; end; OnInit: set .x1,94; set .y1,60; set .x2,105; set .y2,71; set .xe,99; set .ye,65; end; } pvp_n_4-5,100,74,0 script EmpBrk#3_touch -1,3,1,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",100,68; end; } - script EmpBrk#4 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#4::OnEmpBreak"; end; OnTimer600000: warpchar "prontera",155,180,$@empbrk_charid[3]; killmonster "pvp_n_4-5","EmpBrk#4::OnEmpBreak"; set $@empr_occupied[3],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#4"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "izlude",128,114,$@empbrk_charid[3]; set $@empr_occupied[3],0; end; OnInit: set .x1,128; set .y1,94; set .x2,139; set .y2,105; set .xe,134; set .ye,99; end; } pvp_n_4-5,125,100,0 script EmpBrk#4_touch -1,1,3,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",130,99; end; } pvp_n_4-5 mapflag nowarp pvp_n_4-5 mapflag nowarpto pvp_n_4-5 mapflag notrade pvp_n_4-5 mapflag nochat pvp_n_4-5 mapflag nocommand 1 pvp_n_4-5 mapflag novending pvp_n_4-5 mapflag nobranch pvp_n_4-5 mapflag noicewall pvp_n_4-5 mapflag noloot pvp_n_4-5 mapflag nomemo pvp_n_4-5 mapflag nosave pvp_n_4-5 mapflag noreturn Quote Link to comment Share on other sites More sharing options...
0 Winterfox Posted July 23, 2023 Group: Members Topic Count: 1 Topics Per Day: 0.00 Content Count: 245 Reputation: 93 Joined: 06/30/18 Last Seen: November 27, 2024 Share Posted July 23, 2023 Did you add the pvp_n4-5 map to the castle_db.yml? I don't think that is necessary for it to work. But if you want to keep it in the castle_db.yml, you need to add the gvg_castle mapflag to your script. Quote Link to comment Share on other sites More sharing options...
Question
joyy95
Hello, Im trying to add King Of Emperium... https://board.herc.ws/topic/4495-king-of-emperium-hill/
But i need help with castledb.txt because my rathena is castledb.yml... i dont know how to convert the format thanks
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.