- Beranda
- Ragnarok Online
[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )
...
TS
panda.mutz
[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )
Quote:
Spoiler for INFO:
tekan shift+X untuk membuka semua spoiler dan gunakan CTRL + F untuk mencari Tools / kata kunci yang akan di gunakan
Spoiler for Tools dan Server Stable:
note : tutorial menggunakan rAthena
Spoiler for part 1 | Download Server & Setting IP:
Spoiler for part 2 | Setting Database Server:
Spoiler for part 3 | Setting GRF file:
Spoiler for part 4 | Compile Server:
Spoiler for selingan ~:
Diubah oleh panda.mutz 20-10-2022 13:25
omblonx dan 3 lainnya memberi reputasi
2
248.1K
989
Komentar yang asik ya
Mari bergabung, dapatkan informasi dan teman baru!
Ragnarok Online
2.1KThread•940Anggota
Tampilkan semua post
snnelwan
#814
Buat para master skript tolong
1. ubah skrip dibawah ini supaya bisa enchant temporal str,vit,dex,int,agi,luk boots (item ID 22006, 22007, 22008, 22009, 22010, 22011)
2. hilangkan "60% low, 30% mid, 10% high for 1st & 2nd enchant slot && 40% low, 30% mid, 20% high, 10% special for 3rd enchant slot" yang ada di skrip
1. ubah skrip dibawah ini supaya bisa enchant temporal str,vit,dex,int,agi,luk boots (item ID 22006, 22007, 22008, 22009, 22010, 22011)
2. hilangkan "60% low, 30% mid, 10% high for 1st & 2nd enchant slot && 40% low, 30% mid, 20% high, 10% special for 3rd enchant slot" yang ada di skrip
Code:
//===== rAthena Script =======================================
//= Unofficial Fallen Angel Wing (FAW) Enchants
//===== By: ==================================================
//= Nerfwood
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= Enchants FAW as per iROWiki's information
//= Dialogue are unofficial
//===== Additional Comments: =================================
//= 1.0 First Version
//============================================================
//Decreasing Chance of Enchantment
//max bonus
//max stats
function script EnchantStat_1 {
.chance = rand(1,10);
if(@card2 && @card3) { //For 4th Slot aka 3rd Enchant Slot
if(.chance<5) .x=0;
else if(.chance<7) .x=1;
else if(.chance<9) .x=2;
else .x=3;
}
else { //For 2nd and 3rd card slot aka 1st and 2nd Enchant Slot
if(.chance<7) .x=0;
else if(.chance<10) .x=1;
else .x=2;
}
return getelementofarray(getvariableofnpc( getd(".enc" + getarg(0) ) , "Valkyrie#faw"), .x );
}
//Equal Chance of Enchanting
function script EnchantStat_0 {
if(@card2 && @card3)
return getelementofarray(getvariableofnpc( getd(".enc" + getarg(0) ) , "Valkyrie#faw"), rand(0,3) );
else
return getelementofarray(getvariableofnpc( getd(".enc" + getarg(0) ) , "Valkyrie#faw"), rand(0,2) );
}
//=======MAIN NPC
moc_para01,180,24,3 script Valkyrie#faw 403,{
mes .npc$;
mes "I am capable of blessing the",
"magnificent ^000099Fallen Angel Wing^000000",
"with maximal attributes.",
"Would you like to enchant yours?";
if(countitem(2589)) {
set .@menu$, "Enchant Fallen Angel Wing";
}
else .@menu$="";
next;
switch(select("Information:" + .@menu$ + ":Reset Enchantment"))
{
case 1: goto OnInformation;
case 2: goto OnEnchantNow;
case 3: goto OnResetEnchant;
default: close;
}
OnInformation:
mes .npc$,
"I can enchant your",
"^000099Fallen Angel Wing^000000 for",
(.cost?callfunc("F_InsertComma",.cost)+"z":"free")+" to give it various",
"attributes. In fact, I can do it",
"twice if its refinement level is",
"+7 ~ +8, and thrice if its",
"+9 and above.";
next;
mes .npc$,
"The 3rd enchantment has a",
"the same stats",
"with the first two.";
next;
mes .npc$,
"There is no chance to",
"fail, so enchant away",
"as much as you like.";
next;
mes .npc$,
"But if you're not happy",
"with the results, you can",
"reset the enchantments",
"for ^009900"+ callfunc("F_InsertComma",.cost2) + "z^000000.";
next;
mes .npc$,
"That's about everything.";
close;
OnEnchantNow:
mes .npc$;
if( (getequipid(EQI_GARMENT)!=2589) ) {
mes "Please equip your",
"^000099Fallen Angel Wing^000000 if",
"you want to have it enchanted.";
if(!.autoequip) close;
next;
if(select("Equipon't Equip")==2) close;
equip 2589;
mes .npc$;
}
.@refeq = getequiprefinerycnt(EQI_GARMENT);
if(.@refeq<7) .@refeq2 = 1;
else if(.@refeq>8) .@refeq2 = 3;
else .@refeq2 = 2;
mes "You have a ^000099+" +.@refeq + " Fallen Angel Wing^000000.",
"It can have a total of " + .@refeq2 + " enchantment" +( .@refeq2>1?"s.":".")+" Please";
mes "select your preferred","enchantment.";
next;
setd ".@enc$", select("Fighting Enchant:Magic Enchant:Archer Enchant:Critical/Fatal Enchant:Max HP Enchant:Max SP Enchant:ASPD Enchant:STR Enchant:AGI EnchantEX Enchant:VIT Enchant:INT Enchant:LUK Enchant:Atk 7%:Matk 7%");
if(.cost) callsub OnCostlyEnchant;
@card1 = getequipcardid(EQI_GARMENT,0);
@card2 = getequipcardid(EQI_GARMENT,1);
@card3 = getequipcardid(EQI_GARMENT,2);
@card4 = getequipcardid(EQI_GARMENT,3);
if( @card2 && @card3 && @card4) {
mes .npc$,
"Hmm.. it seems that all",
"slots have already been enchanted.";
close;
}
.@EnStat = callfunc( (.chancetype?"EnchantStat_1":"EnchantStat_0"), .@enc$) ;
if(!@card2) callsub OnFawEnchant , .@EnStat , @card3 , @card4 , .@refeq;
else if(!@card3 && .@refeq>6) callsub OnFawEnchant , @card2 , .@EnStat , @card4 , .@refeq;
else if(!@card4 && .@refeq>8) callsub OnFawEnchant , @card2 , @card3 , .@EnStat , .@refeq;
else {
mes .npc$,
"Sorry, but your",
"^000099Fallen Angel Wing^000000's",
"refinement level is too",
"low to continue";
close;
}
mes .npc$,
"Your ^000099Fallen Angel Wing^000000 has",
"been enchanted with ^000099"+getitemname(.@EnStat)+"^000000.";
close;
OnFawEnChant:
delitem2 2589, 1, 1, getarg(3), 0, @card1, @card2, @card3, @card4;
getitem2 2589, 1, 1, getarg(3), 0, @card1, getarg(0), getarg(1), getarg(2);
specialeffect2 1019;
specialeffect2 98;
return;
OnResetEnchant:
mes .npc$,
"This will cost " + callfunc("F_InsertComma",.cost2) + "z.",
"Are you sure?";
next;
if(select("Yes:No")==2) close;
mes .npc$;
if(Zeny<10000) {
mes "You don't have enough zeny.";
close;
}
Zeny -= 10000;
mes "Your ^000099Fallen Angel Wing^000000's",
"enchantments have been reset.";
.@refeq = getequiprefinerycnt(EQI_GARMENT);
@card1 = getequipcardid(EQI_GARMENT,0);
@card2 = getequipcardid(EQI_GARMENT,1);
@card3 = getequipcardid(EQI_GARMENT,2);
@card4 = getequipcardid(EQI_GARMENT,3);
delitem2 2589, 1, 1, .@refeq, 0, @card1, @card2, @card3, @card4;
getitem2 2589, 1, 1, .@refeq, 0, @card1, 0, 0, 0;
specialeffect2 261;
specialeffect2 119;
close;
//Only called when .cost is defined
OnCostlyEnchant:
if(Zeny<.cost) {
mes .npc$,
"You don't have enough zeny.";
close;
}
Zeny -= .cost;
return;
OnInit:
.npc$ = "[^AA0000Valkyrie^000000]";
setarray .enc1[0], 4825,4825,4825, 4825; //Fighting max. -->bonus bBaseAtk,50; bonus bHit,15;
setarray .enc2[0], 4831,4831,4831, 4831; //Magic max. -->bMatk,50; bonus bVariableCastrate,-20
setarray .enc3[0], 4841,4841,4841, 4841; //Expert Arc max. -->bLongAtkRate,20; bonus bAspd,1;
setarray .enc4[0], 4866,4866,4866, 4866; //Fatal max. -->bCritAtkRate,10; bonus bCritical,4;
setarray .enc5[0], 4900,4900,4900, 4900; //MHPP max. -->bMaxHPrate,5;
setarray .enc6[0], 4802,4802,4802, 4802; //MaxSP max. -->bonus bMaxSP,150;
setarray .enc7[0], 4881,4881,4881, 4881; //ASPD max. -->bAspdRate,10;
setarray .enc8[0], 4853,4853,4853, 4853; //STR Special Str
setarray .enc9[0], 4853,4854,4854, 4854; //AGI Special Agi
setarray .enc10[0], 4857,4857,4857, 4857; //DEX Special DEX
setarray .enc11[0], 4855,4855,4855, 4855; //VIT Special Vit
setarray .enc12[0], 4856,4856,4856, 4856; //INT Special Int
setarray .enc13[0], 4858,4858,4858, 4858; //LUK Special Luk
setarray .enc14[0], 4905,4905,4905, 4905; //ATK 7%
setarray .enc15[0], 4907,4907,4907, 4907; //MaTK 7%
// 1 = 60% low, 30% mid, 10% high for 1st & 2nd enchant slot && 40% low, 30% mid, 20% high, 10% special for 3rd enchant slot
// 0 = Equal Chance
.chancetype = 1;
//Turn on Equip Selection if garment is unequipped? 1 = Yes
.autoequip =0;
//Cost for Enchanting. It's free in iRO
//.cost=0;
//Cost to reset | Costs 1Mz in iRO
.cost2 = 10000;
}
Diubah oleh snnelwan 06-04-2017 22:48
0
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/04/1233587_20140904094842.png)
-
List di bawah ini latest update![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/05/1233587_20140905032150.png)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/05/1233587_20140905034530.png)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/05/1233587_20140905035355.png)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/05/1233587_20140905040225.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906022935.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906024929.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906025427.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906031619.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906120555.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906114336.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2014/09/06/1233587_20140906121445.gif)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2018/03/04/1233587_20180304024333.png)
![[TUTORIAL] Cara membuat Private Server sendiri ( Online / Offline )](https://s.kaskus.id/images/2018/03/11/1233587_20180311030209.png)
