Jump to content

Racaae

Members
  • Content Count

    27
  • Avg. Content Per Day

    0
  • Joined

  • Last visited

  • Days Won

    2

Racaae last won the day on April 7

Racaae had the most liked content!

Community Reputation

13 Good

1 Follower

About Racaae

  • Rank
    Drops

Profile Information

  • Gender
    Male
  • Location
    Brasil

Recent Profile Visitors

977 profile views
  1. Find: query_sql "SELECT `code` , `item_amount` , `validation_code` , `status` FROM `donate` ORDER BY `code` DESC", [email protected]$, [email protected]$, [email protected]$; Replace: query_sql "SELECT `code` , `item_amount` , `validation_code` FROM `donate` ORDER BY `code` DESC", [email protected]$, [email protected]$, [email protected]$; Find: getitem .donate_item,@Donation_Code$; Replace: getitem .donate_item, atoi(@Donation_Code$);
  2. You need to add the egg itemID and ticket itemID to the arrays. Example. setarray [email protected], 6116, //Succu_Pet_Coupon 6117, //Imp_Pet_Coupon 6118, //Chung_E_Pet_Coupon 6129, //Ticket_Nightmare 6130, //Ticket_Loli_Ruri 6131, //Ticket_Goblin_Leader 6132, //Ticket_Incubus 6133, //Ticket_Miyabi_Ningyo 6134, //Ticket_Whisper 6135, //Ticket_Wicked_Nymph 6136, //Ticket_Medusa 6137, //Ticket_Stoneshooter 6138, //Ticket_Marionette 6139, //Ticket_Leafcat 6140, //Ticket_Dullahan 6141, //Ticket_Shinobi 6142, //Ticket_Golem 6143, //Ticket_Civil_Servant 6157, //Poring_Ticket 6158, //Drops_Ticket 6159, //Poporing_Ticket 6160, //Lunatic_Ticket 6161, //Picky_Ticket 6162, //Pecopeco_Ticket 6163, //Savage_Baby_Ticket 6164, //Spore_Ticket 6165, //Poison_Spore_Ticket 6166, //Chonchon_Ticket 6167, //Steel_Chonchon_Ticket 6168, //Petit_Ticket 6169, //Deviruchi_Ticket 6170, //Isis_Ticket 6171, //Smokie_Ticket 6172, //Dokebi_Ticket 6173, //Desert_Wolf_B_Ticket 6174, //Yoyo_Ticket 6175, //Sohee_Ticket 6176, //Rocker_Ticket 6177, //Hunter_Fly_Ticket 6178, //Orc_Warrior_Ticket 6179, //Bapho_Jr_Ticket 6180, //Munak_Ticket 6181, //Bongun_Ticket 6182, //Goblin_Ticket 6183, //Hardtack_Ticket 6184, //Zherlthsh_Ticket 6185, //Alice_Ticket 6883, //Pet_Snow_Bunny_Ticket 6884, //Pet_Tikbalang_Ticket XXXX; //MY CUSTOM PET TICKET ID setarray [email protected], 9055, //Succubus_Egg 9056, //Imp_Egg 9030, //Chung_E_Egg 9054, //Nightmare_Terror_Egg 9042, //Loli_Ruri_Egg 9046, //Goblin_Leader_Egg 9052, //Incubus_Egg 9048, //Miyabi_Ningyo_Egg 9045, //Whisper_Egg 9047, //Wicked_Nymph_Egg 9050, //Medusa_Egg 9051, //Stone_Shooter_Egg 9043, //Marionette_Egg 9041, //Leaf_Cat_Egg 9049, //Dullahan_Egg 9044, //Shinobi_Egg 9053, //Golem_Egg 9040, //Civil_Servant_Egg 9001, //Poring_Egg 9002, //Drops_Egg 9003, //Poporing_Egg 9004, //Lunatic_Egg 9005, //Picky_Egg 9014, //PecoPeco_Egg 9009, //Savage_Bebe_Egg 9012, //Spore_Egg 9013, //Poison_Spore_Egg 9006, //Chonchon_Egg 9007, //Steel_Chonchon_Egg 9022, //Green_Petite_Egg 9023, //Deviruchi_Egg 9021, //Isis_Egg 9015, //Smokie_Egg 9019, //Dokkaebi_Egg 9010, //Baby_Desert_Wolf_Egg 9016, //Yoyo_Egg 9020, //Sohee_Egg 9011, //Rocker_Egg 9008, //Hunter_Fly_Egg 9017, //Orc_Warrior_Egg 9024, //Bapho_Jr 9018, //Munak_Egg 9025, //Bongun_Egg 9029, //Santa_Goblin_Egg 9028, //Rice_Cake_Egg 9026, //Zherlthsh_Egg 9027, //Alice_Egg 9058, //Snow_Rabbit_Egg 9059, //Tikbalang_Pet YYYY; //MY CUSTOM PET EGG ID
  3. Oi, você pode encontrar a maioria das atualizações do kRO no divine-pride. Até onde eu sei não existe nada para converter texto em script, então tem que adicionar cada item um por um, lendo o efeito do item e transformando para linguagem da db. (Content updates - Divine Pride (divine-pride.net)
  4. - script mvpdrop -1,{ OnNPCKillEvent: if (getmonsterinfo(killedrid,MOB_MVPEXP) > 0) { //check if monster is mvp if (rand(1,100) < 50) { //50% chance getitem 607, 1; //got 1 yggdrasil berry announce strcharinfo(0) + " got " + getitemname(607) + " from a MvP!", bc_all; } } end; }
  5. Add below OnNPCKillEvent: if (mobcount(.map$, strnpcinfo(0)+"::OnBossKill")) end; *mobcount("<map name>","<event label>") This function will count all the monsters on the specified map that have a given event label and return the number or 0 if it can't find any.
  6. Vai em src/config/core.h, ache essa parte e tira os // da segunda linha. Recompila o servidor, VIP ativado. /// Uncomment to enable VIP system. //#define VIP_ENABLE conf/login_athena.conf, acha essa parte e muda o 5 para 1. // Which group (ID) will be denoted as the VIP group? // Default: 5 vip_group: 5 Em conf/battle/player.conf tem algumas opções de configuração do vip. Por exemplo: rate de EXP e drop, aumentar limite do armazém. Em conf/groups.conf você configura os comandos e algumas outras coisas disponíveis para os VIPs. Em conf/login_athena.conf também dá para aumentar o número de personagens máximo em contas VIP.
  7. Boa noite. Sim, é possível criar um NPC que pede um item em troca de algo. Aí depende do seu sistema VIP se é fácil de criar isso ou não. Aqui tem um exemplo de um NPC que faz exatamente isso, usando o vip oficial do rAthena. prontera,159,170,3 script Moça do VIP 4_F_KAFRA1,{ mes "[" + strnpcinfo(1) + "]"; if (vip_status(VIP_STATUS_ACTIVE)) mes "Olá, você já é VIP."; else { mes "Olá, quer se tornar VIP? São vários benefícios!"; mes "Escolha quanto tempo você quer contratar."; next; for( [email protected] = 0; [email protected] < getarraysize( .day ); [email protected]++ ) [email protected]$ += (.day[[email protected]] + " dia(s):"); [email protected] = select([email protected]$) - 1; mes "[" + strnpcinfo(1) + "]"; mes "O custo de "+.day[[email protected]]+" dia(s) de VIP é:"; if (.cash_cost[[email protected]]) mes "- " + callfunc("F_InsertComma",.cash_cost[[email protected]]) + " CASH"; if (.cash_cost[[email protected]] && .item_qtd[[email protected]]) mes "ou"; if (.item_qtd[[email protected]]) mes "- " + .item_qtd[[email protected]]+"x <ITEM>" + getitemname( .item_id ) + "<INFO>" + .item_id + "</INFO></ITEM>"; if (.zeny_cost[[email protected]] && .item_qtd[[email protected]] || .cash_cost[[email protected]] && .zeny_cost[[email protected]]) mes "ou"; if (.zeny_cost[[email protected]]) mes "- " + callfunc("F_InsertComma",.zeny_cost[[email protected]]) + "z"; next; [email protected]$ = ""; if (.cash_cost[[email protected]]) [email protected]$ += "Pagar com CASH"; [email protected]$ += ":"; if (.item_qtd[[email protected]]) [email protected]$ += "Pagar com "+getitemname(.item_id); [email protected]$ += ":"; if (.zeny_cost[[email protected]]) [email protected]$ += "Pagar com zeny"; switch(select([email protected]$ + ":Deixa pra lá.")) { case 1: mes "[" + strnpcinfo(1) + "]"; if ( #CASHPOINTS < .cash_cost[[email protected]] ) { mes "Você não tem CASH suficiente."; } else { #CASHPOINTS -= .cash_cost[[email protected]]; vip_time ( .day[[email protected]] * 1440 ); mes "VIP adquirido com sucesso!"; mes "Você pode usar o comando ^[email protected]^000000 para ver a duração do seu VIP."; } break; case 2: mes "[" + strnpcinfo(1) + "]"; if ( countitem( .item_id ) < .item_qtd[[email protected]] ) { mes getitemname( .item_id ) + " insuficiente."; } else { delitem .item_id, .item_qtd[[email protected]]; vip_time ( .day[[email protected]] * 1440 ); mes "VIP adquirido com sucesso!"; mes "Você pode usar o comando ^[email protected]^000000 para ver a duração do seu VIP."; } break; case 3: mes "[" + strnpcinfo(1) + "]"; if ( Zeny < .zeny_cost[[email protected]] ) { mes "Você não tem Zeny suficiente."; } else { Zeny -= .zeny_cost[[email protected]]; vip_time ( .day[[email protected]] * 1440 ); mes "VIP adquirido com sucesso!"; mes "Você pode usar o comando ^[email protected]^000000 para ver a duração do seu VIP."; } break; case 4: mes "[" + strnpcinfo(1) + "]"; mes "Até mais."; } } close; OnCheck: if (vip_status(VIP_STATUS_ACTIVE)) dispbottom "SISTEMA: Você é VIP até "+ gettimestr("%d/%m/%Y %H:%M",21,vip_status(VIP_STATUS_EXPIRE)); else dispbottom "SISTEMA: Você não é VIP."; end; OnInit: //== CONFIGURAÇÕES ================== setarray .day,7,14,30; //Opções de dias de VIP //setarray .cash_cost,4000,7000,10000; //Custo em Cash de cada opção (use // para desabilitar CASH) //setarray .zeny_cost,10000000,15000000,30000000; //Custo em Zeny de cada opção (use // para desabilitar Zeny) .item_id = 7929; //ID do item usado para troca setarray .item_qtd,3,5,10; //Custo (em item) para cada opção de tempo (use // para desabilitar item) //=================================== bindatcmd("tempovip", strnpcinfo(3)+"::OnCheck"); end; } O refinador 100% é mais simples que os refinadores comuns já que não tem nenhuma chance de falha. Aqui vai o exemplo: prontera,161,170,3 script Refinador Barra Pesada 4_M_REPAIR,{ disable_items; mes "[" + strnpcinfo(1) + "]"; mes "Olá! Eu aceito CASH para refinar seus equipamentos com 100% de chance de sucesso!"; next; if(select("Informações.:Refinar.") == 1) { mes "[" + strnpcinfo(1) + "]"; mes "Eu refino equipamentos ^0000FFaté o nível " + .max + "^000000. O valor em CASH que eu peço depende do nível do equipamento."; mes "Você pode ver a tabela com os preços abaixo."; next; mes "[TABELA DE PREÇOS]"; for( [email protected] = 0; [email protected] < .max; [email protected]++ ) mes "+" + [email protected] + ">+" + ([email protected]+1) + " - " + callfunc("F_InsertComma", .cost[[email protected]]) + " CASH"; close; } mes "[" + strnpcinfo(1) + "]"; mes "Já estou animado!"; mes "Que equipamento você quer refinar?"; next; setarray [email protected]$[1],"Topo","Armadura","Mão esquerda","Mão direita","Capa","Sapatos","Acessório 1","Acesório 2","Cabeça meio","Cabeça baixo"; setarray [email protected][1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_L, EQI_ACC_R, EQI_HEAD_MID, EQI_HEAD_LOW; for(set [email protected],1; [email protected]<=10; set [email protected],[email protected]+1) set [email protected]$, [email protected]$+((getequipisequiped([email protected][[email protected]]))?"+"+getequiprefinerycnt([email protected][[email protected]])+" "+getequipname([email protected][[email protected]]):[email protected]$[[email protected]]+"- [VAZIO]")+":"; set [email protected], [email protected][ select([email protected]$) ]; if (!getequipisequiped([email protected])) { mes "[" + strnpcinfo(1) + "]"; mes "Você deve equipar o item que quer refinar."; close; } if (!getequipisenableref([email protected])) { emotion ET_OTL; mes "[" + strnpcinfo(1) + "]"; mes "Me desculpe."; mes "É impossível refinar esse item."; close; } [email protected]_refine = getequiprefinerycnt([email protected]); //save refinery count if (getequiprefinerycnt([email protected]) >= .max) { emotion ET_PROFUSELY_SWEAT; mes "[" + strnpcinfo(1) + "]"; mes "Esse item já é poderoso demais até para mim. É melhor deixar para lá."; close; } mes "[" + strnpcinfo(1) + "]"; mes "Refinar ^006400"+getequipname([email protected])+"^8B4513 vai custar " + callfunc("F_InsertComma", .cost[[email protected]_refine]) + " CASH."; mes "Devo continuar?"; next; if(select("Não.:Sim.") == 1) { emotion ET_THINK; mes "[" + strnpcinfo(1) + "]"; mes "Oh, você mudou de ideia."; mes "Ok."; mes "Você pode voltar depois."; close; } if (#CASHPOINTS < .cost[[email protected]_refine]) { mes "[" + strnpcinfo(1) + "]"; mes "Você não tem CASH suficiente."; close; } mes "[" + strnpcinfo(1) + "]"; mes "Ótimo."; mes "Como desejar!"; mes "Eu tenho um jeito especial para refinar..."; mes ".......ka boom!"; specialeffect EF_SUI_EXPLOSION; #CASHPOINTS -= .cost[[email protected]_refine]; successrefitem [email protected]; next; emotion ET_DELIGHT; mes "[" + strnpcinfo(1) + "]"; mes "Certo, aqui está~"; mes "Adeus~!"; close; OnInit: //== CONFIGURAÇÕES ================== .max = 15; //refino máximo //custo de cada nv de refinamento setarray .cost,100,100,100,100,500,1000,2000,4000,5000,6000,10000,18000,19000,20000,21000,22000,40000,50000,70000,100000; //=================================== end; }
  8. Hi. Add this after input [email protected],0,#GOLDPOINTS; if ([email protected] == 0) { mes "Exchange canceled."; close; }
  9. Isso vai de script para script. Você tem que entender como o ranking do script funciona, ou pode compartilhar aqui para eu ver se acho.
  10. Maybe the account you are using is of lowel level. set $VIPs_AdminGmLevel,99; Find this line and change the 99 to the level of your account.
  11. The menu works just fine here. Did you whisper to "npc:vipsystem8806azwan"?
  12. Hi. I didn't test much. The command is @reward.
  13. } else if (getskilllv("GD_APPROVAL") != 1) { mes "Official Guild Approval required to enter."; }
  14. Here's the full script, try it out.
  15. Boa noite, você pode usar o comando hateffect. Ele coloca um efeito continuo no personagem. Exemplo: OnPCLoginEvent: if (verifique aqui se o personagem é o líder do pvp) hateffect(HAT_EF_LEVEL99_SUN_ORANGE, true); end; Nesse exemplo, o efeito LEVEL99_SUN_ORANGE é ativado na hora que o boneco loga. Tem várias "auras" como opção. Você pode ver a lista em src/map/script_constants.hpp
×
×
  • Create New...

Important Information

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