Tdi123
-
Posts
192 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Tdi123
-
-
Example, ITEM_DB:
30452,Enchant_Elmo,Enchant Elmo,2,30,,1,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc "F_Encantment"; },{},{}
30453,Enchant_Auras,Enchant Auras,2,30,,1,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc "F_Encantment1"; },{},{}
30454,Enchant_Asas,Enchant Asas,2,30,,1,,,,,0xFFFFFFFF,7,2,,,,,,{ callfunc "F_Encantment2"; },{},{}
SCRIPT:
function script F_Encantment {
end;
}function script F_Encantment1 {
end;
}function script F_Encantment2 {
end;
}Thank you in advance for your help!
-
Thank you in advance for your help!
-
-
On 10/3/2021 at 3:41 PM, mR L said:
https://github.com/rathena/rathena/blob/master/db/pre-re/skill_db.yml
# ItemCost: Item required to cast. (Default: 0) # - Item Item name. # Amount Item amount. # Level Skill level. Makes the skill item check become level dependent if supplied. (Default: applies to all levels)
I still don't know how to make this type of modification, could you help me?
I am wanting to add a bonus to the queen bee card to nullify the consumption of ninja stones as well.
Who can help me, thank you in advance! -
Just like the queen bee card that nullifies the spending of gems, I wanted to create the effect to nullify the spending of ninja stones.
Thank you in advance for your help!
-
I've tried a few things, but I believe the problem is in the server grf, inside the sprite, I find it very difficult to be in the script, but anyone who can solve it, thank you very much!
-
On 9/30/2021 at 7:32 AM, sader1992 said:
prontera,0,0,0 script delay 444,{ .@t = #DELAY_ERGHLKJ + 60;//60 seconds if(.@t < gettimetick(2)){ mes "Try again after " + (gettimetick(2) - .@t) + " seconds"; end; } #DELAY_ERGHLKJ = gettimetick(2); mes "Hello!"; end; }
#ACCOUNT_VARIABLE
Thank you very much!
On 9/30/2021 at 6:39 AM, Tdi123 said:I'm trying to put some delay to use npc again, but it only works for the character, I wanted to put it on the account, how do I do it?
Example:
if( .@now < barenamvp_delay ) {
mes .prc$;
mes "Aguarde ^0000ff"+(bar_delay - .@now)+"s^000000 para usar o npc novamente";
close2;
cutin "",255;
end;}
It works too, putting # in front of bar_delay, so it looks like this: #bar_delay
-
I'm trying to put some delay to use npc again, but it only works for the character, I wanted to put it on the account, how do I do it?
Example:
if( .@now < barenamvp_delay ) {
mes .prc$;
mes "Aguarde ^0000ff"+(bar_delay - .@now)+"s^000000 para usar o npc novamente";
close2;
cutin "",255;
end;}
-
And also another script to use a command to recall the guild during the emperium war?
I appreciate the help in advance
-
If you have a tutorial, thank you, anyone who knows how to do it, please get in touch via pv!
-
15 hours ago, Kakaroto said:
rA don't support this feature yet.
Okay, thank you very much!
-
-
I was seeing some examples, but I don't know how to create this item, could someone help me?
Example: https://www.divine-pride.net/database/item/25793/inventory-expansion-coupon
-
-
-
On 5/5/2021 at 6:21 PM, sader1992 said:
or you can do something like
if(getd("$QID_" + get_unique_id())){ //already got }else{ //get something setd("$QID_" + get_unique_id(),true); }
Thank you very much!
-
11 hours ago, Alzhea said:
try change
OnInit: bindatcmd("joinbg",strnpcinfo(0)+"::OnJoinBG",0,99); end;
into
OnInit: bindatcmd("joinbg",strnpcinfo(3)+"::OnJoinBG",0,99); end;
Did not work
-
SCRIPT:
function script F_ShuffleNumbers { deletearray getarg(2); .@static = getarg(0); .@range = getarg(1) +1 - .@static; .@count = getarg(3, .@range); if (.@range <= 0 || .@count <= 0) return 0; if (.@count > .@range) .@count = .@range; for (.@i = 0; .@i < .@range; ++.@i) .@temparray[.@i] = .@i; for (.@i = 0; .@i < .@count; ++.@i) { .@rand = rand(.@range); set getelementofarray( getarg(2), .@i ), .@temparray[.@rand] + .@static; .@temparray[.@rand] = .@temparray[--.@range]; } return .@count; } - script RegistroBG -1,{ OnJoinBG: .@name$ = strcharinfo(0); .@minplayer2start = getvariableofnpc(.minplayer2start, "fortress#bg"); .@start = getvariableofnpc(.start, "fortress#bg"); if(.@start == 1) { dispbottom "Batalha Campal : Desculpe, a bg está em andamento."; end; } while ( .aid[.@i] != getcharid(3) && .@i < .size ) ++.@i; if ( .@i < .size ) { dispbottom "Batalha Campal : Por favor, aguarde a batalha começar."; end; } if (BaseLevel < 300) { dispbottom "Batalha Campal : Apenas jogadores de nível 300 podem participar da Batalha Campal!"; end; } if( agitcheck() || agitcheck2() ){ dispbottom "Batalha Campal : Neste momento a Guerra do Emperium está ativa e não é possível se inscrever na Batalha Campal!"; end; } dispbottom "Batalha Campal : Por favor, permaneça no mapa atual para participar!"; .aid[ .size++ ] = getcharid(3); for ( .@i = 0; .@i < .size; ++.@i ) { if ( !isloggedin( .aid[.@i] ) ) { deletearray .aid[.@i], 1; --.@i; --.size; } else { attachrid .aid[.@i]; if ( strcharinfo(3) != strnpcinfo(4) ) { deletearray .aid[.@i], 1; --.@i; --.size; } } } detachrid; if ( .size == .@minplayer2start * 2 ) { copyarray getvariableofnpc( .aid_, "fortress#bg" ), .aid, .size; donpcevent "fortress#bg::OnStart"; deletearray .aid; .size = 0; } else announce .@name$ +" se inscreveu na Batalha Campal... ainda restam "+ .size +"/"+ .@minplayer2start * 2 +" vagas para começar.", bc_npc | bc_all; end; OnInit: bindatcmd("joinbg",strnpcinfo(0)+"::OnJoinBG",0,99); end; } - script fortress#bg -1,{ OnInit: // ============= // Game Settings // ============= // Minimum players per team to start // default : 5 ( 5v5 ) .minplayer2start = 1; // Event duration in minutes.. // default : 5 mins .duration = 5; // Reward settings setarray .rwd[0], 7773, 5, // win team reward 7773, 1; // lose team reward end; OnStart: .start = 1; .red = bg_create ( strnpcinfo(4), 58, 123, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDie" ); .blue = bg_create ( strnpcinfo(4), 141, 60, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDie" ); callfunc "F_ShuffleNumbers", 0, .minplayer2start *2 -1, .@r; for ( .@i = 0; .@i < .minplayer2start * 2; ++.@i ) { attachrid .aid_[.@r[.@i]]; bg_join ( .@i % 2 )? .red : .blue; } detachrid; sleep 5000; announce "Destruam a Fortaleza Principal!", bc_npc | bc_map | bc_blue; sleep 5000; announce "A Batalha durará 5 minutos!", bc_npc | bc_map | bc_blue; bg_monster 0, "bat_c01", 99, 92, "Fortaleza Principal", 1911, strnpcinfo(3)+"::OnEmpDown"; sleep .duration * 60000; if(.owner) callsub L_reward, (.owner == .red) ? .red : .blue, (.owner == .red) ? .blue : .red, (.owner == .red) ? "Red" : "Blue"; else announce "A batalha terminou em empate!", bc_npc | bc_map | bc_blue; .owner = .start = 0; bg_destroy .red; bg_destroy .blue; mapwarp strnpcinfo(4),"prontera",150,150,0; end; L_reward: announce getarg(2) +" team venceu!", bc_npc | bc_map | bc_blue; bg_get_data getarg(0), 1; for ( .@i = 0; .@i < $@arenamemberscount; ++.@i ) getitem .rwd[0],.rwd[1], $@arenamembers[.@i]; sleep 1; bg_get_data getarg(1), 1; for ( .@i = 0; .@i < $@arenamemberscount; ++.@i ) getitem .rwd[2],.rwd[3], $@arenamembers[.@i]; return; OnEmpDown: .owner = getcharid(4); announce ((getcharid(4) == .red) ? "Red": "Blue") +" Team conquistou a Fortaleza Principal!", bc_npc | bc_map | bc_blue; bg_warp .red, strnpcinfo(4), 58, 123; bg_warp .blue, strnpcinfo(4), 141, 60; bg_monster .owner, "bat_c01", 99, 92, "Fortaleza Principal", (getcharid(4) == .red) ? 1912 : 1913, strnpcinfo(3)+"::OnEmpDown"; //setnpcdisplay("#mainfort", "Fortaleza Principal", (getcharid(4) == .red) ? 1912 : 1913 ); end; OnRedQuit: callsub L_Quit, .red, "Red"; OnBlueQuit: callsub L_Quit, .blue, "Blue"; L_Quit: if ( bg_get_data( getarg(0), 0 ) ) end; announce "Todos "+ getarg(2) +" team membros saíram!", bc_npc | bc_map | bc_blue; sleep 1000; callsub L_reward, ( getarg(0) == .red ) ? .red : .blue, ( getarg(0) == .red ) ? .blue : .red, ( getarg(0) == .red ) ? "Red" : "Blue"; awake instance_npcname( strnpcinfo(0) ); end; OnRedDie: OnBlueDie: sleep2 1250; percentheal 100, 100; end; } bat_c01,99,92,0 script #mainfort -1,5,5,{ end; OnTouch: getmapxy(.@mapname$, .@mapx, .@mapy, BL_NPC, strnpcinfo(3)); setarray .@n_mapx[0], .@mapx-5, .@mapx+5; setarray .@n_mapy[0], .@mapy-5, .@mapy+5; @ontouch = 1; .@owner = getvariableofnpc( .owner, "fortress#bg" ); while ( @ontouch && strcharinfo(3) == strnpcinfo(4) ) { if( .@owner != getcharid(4) ) { if ( Hp > 1 ) percentheal -10, 0; else percentheal -100, 0; specialeffect2 49; } else if ( .@owner == getcharid(4) ) { if ( Hp != MaxHP ) specialeffect2 EF_HEAL; percentheal 10, 10; } sleep2 1000; getmapxy(@mapname$, @mapx, @mapy, BL_PC); if ( @mapx < .@n_mapx[0] || @mapx > .@n_mapx[1] || @mapy < .@n_mapy[0] || @mapy > .@n_mapy[1]) { @ontouch = 0; } } end; } bat_c01,55,126,0 script #redminifort 1915,5,5,{ end; OnTouch: getmapxy(.@mapname$, .@mapx, .@mapy, BL_NPC, strnpcinfo(3)); setarray .@n_mapx[0], .@mapx-5, .@mapx+5; setarray .@n_mapy[0], .@mapy-5, .@mapy+5; .@owner = getvariableofnpc( .red, "fortress#bg" ); @ontouch = 1; while ( @ontouch && strcharinfo(3) == strnpcinfo(4) ) { if ( .@owner != getcharid(4) ) { if ( Hp > 10 ) percentheal rand(-20,-40), 0; else percentheal -100, 0; specialeffect2 49; } else { if( HP != MaxHP ) specialeffect2 EF_HEAL; percentheal 10, 10; } sleep2 1000; getmapxy(@mapname$, @mapx, @mapy, BL_PC); if ( @mapx < .@n_mapx[0] || @mapx > .@n_mapx[1] || @mapy < .@n_mapy[0] || @mapy > .@n_mapy[1]) { @ontouch = 0; } } end; } bat_c01,144,57,0 script #blueminifort 1914,5,5,{ end; OnTouch: getmapxy(.@mapname$, .@mapx, .@mapy, BL_NPC, strnpcinfo(3)); setarray .@n_mapx[0], .@mapx-5, .@mapx+5; setarray .@n_mapy[0], .@mapy-5, .@mapy+5; .@owner = getvariableofnpc( .blue, "fortress#bg" ); @ontouch = 1; while ( @ontouch && strcharinfo(3) == strnpcinfo(4) ) { if ( .@owner != getcharid(4) ) { if ( Hp > 10 ) percentheal rand(-20,-40), 0; else percentheal -100, 0; specialeffect2 49; } else { if( HP != MaxHP ) specialeffect2 EF_HEAL; percentheal 10, 10; } sleep2 1000; getmapxy(@mapname$, @mapx, @mapy, BL_PC); if ( @mapx < .@n_mapx[0] || @mapx > .@n_mapx[1] || @mapy < .@n_mapy[0] || @mapy > .@n_mapy[1]) { @ontouch = 0; } } end; } bat_c01 mapflag battleground 2 bat_c01 mapflag nosave SavePoint bat_c01 mapflag nowarp bat_c01 mapflag nowarpto bat_c01 mapflag noteleport bat_c01 mapflag nomemo bat_c01 mapflag nopenalty bat_c01 mapflag nobranch bat_c01 mapflag noicewall
If I put the map name + the coordinate, the npc works only on the npc map, example:
prontera,0,0,0 script RegistroBG 100,{
OnJoinBG:So, it will only work on the prontera map
I wanted to release the command for all maps
Thank you for your help now!
-
I created a simple npc pack guild, but I don’t know how to do a unique_id check, could someone help me?
poring_w02,172,178,3 script Pack Guild#1 446,{ mes "^FF7F00[ Pack Guild ]^000000"; mes (gettime(3)>= 6&&gettime(3)<= 12?"Bom dia":(gettime(3)>=13&&gettime(3)<=18?"Boa tarde":"Boa noite"))+" ^0000ff"+strcharinfo(0)+"^000000"; mes "Aqui você poderá escolher qualquer ^0000ffElmo^000000 quest do Servidor."; next; if(#packguild > 0){ mes "^FF7F00[ Pack Guild ]^000000"; mes "Você já recebeu seu Elmo!"; close; } mes "^FF7F00[ Pack Guild ]^000000"; mes "Vale lembrar que o Pack Guild será válido por ^0000ff30 dias^000000."; close2; callfunc "pgshop"; end; }
-
28 minutes ago, Hyroshima said:
Posso estar falando merda mas pelo que vi em várias versões, a skill aumenta o dano somente por itens/cartas que aumentam o atk (como str ou o poder de atk), a carta general aumenta o dano através de um efeito bonus em raças, experimenta usar uma carta q aumenta um desses 2 atributos que falei.
Não sei afirmar isso também, esse problema foi relatado por um jogador mono mestre-ferreiro, então acredito que as cartas aumentam o dano tbm, no bRO wiki está escrito isso.
LINK: https://browiki.org/wiki/Choque_do_Carrinho
- Pode ser aumentada por equipamentos que aumentam o ATQ e dano físico, como a carta Andre, a carta General Tartaruga e por cartas de aumento de dano contra uma raça.
-
Tentei equipar 4 cartas general tartaruga para testar, mas o dano não aumenta, equipei uma primeiro, depois 2, 3 e 4
o dano continua o mesmo, vale notar que o carrinho do mestre ferreiro está em 10k
urgente, alguém pode me ajudar?
-
The cart shock skill is not increasing the damage with the race cards, example: General turtle card, hydra and etc ...
-
On 4/21/2021 at 6:28 PM, Akkarin said:
It's the files that are encrypted. You can overwrite them or add more files, but you can't extract the files without the password/key.
yes
-
On 4/21/2021 at 2:12 AM, Haruka Mayumi said:
Gonna check it
Yes, and the program allowed it!
On 4/21/2021 at 2:12 AM, Haruka Mayumi said:Gonna check it
I can replace a file or add it, the program allows it, even if I don't have the password
Guild emblem does not appear on the castle flag, how to solve?
in General Support
Posted
I am setting up a ragnarok server, using the rathena emulator, hexed 2018-06-21aRagexeRE, and date of the compatible, but I have yet to discover the source of this error, could someone help me?
Basically the guild emblem after conquering the castle, does not appear on the flags.