07 September 2018

Menjalankan dan Test Play Private Server Ragnarok Online

Setelah selesai setup server, client, dan hexing ragexe, sekarang kamu sudah dapat mencoba bermain private server  buatan mu sendiri. Tapi sebelumnya, kamu harus mendownload kRO terlebih dahulu. Kenapa harus kRO ? karena base dari emulator ragnarok menggunakan acuan dari kRO. Bukan berarti kamu tidak bisa menggunakan idRO untuk bermain private server, tapi akan lebih baik jika kamu menggunakan kRO.

Yang perlu kamu siapkan untuk memulai private server mu adalah :
1. kRO Installer
2. Custom Setup.exe by Ai4rei (pilih sesuai versi kRO mu : http://nn.ai4rei.net/dev/rel/opensetup/old/
3. Buat DATA.ini
  • Buka folder Ragnarok mu (kRO atau idRO atau private server)
  • cari DATA.ini dan copy paste ke folder private server mu.
  • Buka dan tambahkan nama file custom GRF mu pada urutan paling atas (no. 1) seperti gambar dibawah, lalu save. (NOTE: huruf besar kecil harus sama)
  • Jika kamu menggunakan GRF tambahan seperti misalnya pallete.grf, jangan lupa tambahkan juga.
Optional :
4. Custom kRO Patcher by Ai4rei :http://nn.ai4rei.net/dev/rsu/#download

Setelah kamu mendownload dan menginstall (mengekstrak) client kRO terbaru, pindahkan custom grf, custom client dan data.ini (yang sudah dimodif). Lalu jalankan rAsql, Setelah itu, jalankan server rAthena / Herculesmu, yaitu dengan menjalankan run-server.bat atau secara berurutan, login-server.exe, char-server.exe, dan map-server.exe.

Setelah server online, buka folder private server ragnarok mu, dan jalankan Ragexe.exe yang sudah kamu buat. Karena kamu belum mempunyai ID, daftarkan dengan menggunakan _M / _F, misalnya admin_M dan isikan passwordmu. Masuk dan buatlah karaktermu. Setelah itu, masuklah kedalam dunia Ragnarok mu

Untuk bermain LAN, ubah IP Address dengan IP LAN mu pada clientinfo.xml. Untuk mendapatkan IP LAN mu, buka CMD.exe (klik Start - Run atau Klik Start, ketik pada kolom search cmd) ketik ipconfig lalu tekan Enter. Lihat IP mu pada IPv4 Address, misal 192.168.1.12

Trouble-shooting.
Biasanya pada tahap ini, kamu akan mengalami error / crash (Gravity Error) pada saat membuka ragexe.exe buatanmu.

Yang sering terjadi :
Problem : Error: Missing (file)
Solusi : update kRO mu ke paling terbaru, dan juga update Translated Data Foldermu.

Problem : Forced Closed sebelum sempat masuk game.
Solusi : ulangi proses Hexing client (patch), gunakan option yang dipilih oleh Select Recomendation.

Problem : Tombol-tombol / tulisan korea.
Solusi : periksa DATA.ini, apakah kamu sudah mencantumkan custom GRF mu ?

Yang sering terjadi setelah masuk kedalam game :
Problem : Salah satu Item bergambar Apel (Unknown Item)
Solusi :
  • Buka Translated Data Folder yang kamu download
  • cari dan buka file idnum2itemdisplaynametable.txt
  • CTRL+F (find) id item yang Unknown / bergambar apel.
  • Jika tidak ditemukan, update Translated Data Folder mu, atau disable item tersebut pada Database.
  • Jika ada, buka folder Ragnarokmu, lalu buka folder System, cari ItemInfo.Lub, cari kode item yang Unknown / bergambar apel, Jika tidak ada, Update ItemInfo.Lub mu.
NOTE : Tutorial yang saya buat sampai pada artikel ini, defaultnya menggunakan Renewal (karena memang saya tidak belum mengajarkan untuk mengganti sistem Renewal atau Pre-Renewal) dan hanya merubah pengaturan untuk bermain secara Offine atau LAN. Jadi bila ada error diluar yang saya ajarkan, silahkan untuk mencarinya sendiri lewat google atau forum masing-masing emulator, Trims.

01 September 2018

Hexing Unpacked Ragnarok Client


Unpacked Ragnarok Client adalah file exe asli dari kRo yang belum pernah diedit. File exe idRO bukan Unpacked, karena sudah dimodifikasi, seperti misalnya untuk auto-follow karakter lain, kamu bisa menekan SHIFT+klik kanan pada karakter lain, kamu akan berhenti mengikuti karakter lain setelah memukul musuh atau menggunakan skill yg menyerang musuh, dan kamu bisa auto-follow kembali dengan menggunakan SHIFT+Klik Kanan lagi. namun pada idRO (versi Gravindo), setelah kamu memukul musuh atau menggunakan skill untuk menyerang musuh, kamu harus Logout terlebih dahulu dapat menggunakan perintah ini lagi (Auto-follow berguna saat kamu malas mengklik untuk berjalan atau saat kamu sedang menggunakan Dual Client).

Dan untuk dapat bermain, kamu harus menggunakan Ragnarok Client (Ragexe) dari kRO, dan tentu saja menggunakan Full Client dari kRO. Ragexe dari RO official lain biasanya tidak bisa dimainkan bila menggunakan Client dari RO Official lain. Tapi kamu bisa menambah atau merubah konten (dengan format yang sama), misalnya seperti pada Custom GRF, kamu menambahkan pallete untuk warna baju dan warna rambut karaktermu (dan diatur pada saat meng-hexing unpacked client).

Sebelum memulai, penulis akan mengingatkan kamu, kalau tahap ini adalah tahap yang kebanyakan orang gagal, dikarenakan patch untuk hexing yang dishare (oleh orang-orang baik, terima kasih banyak!) terkadang tidak lengkap, bahkan tidak pernah dibuat (tidak stabil).

Jadi, bagaimana caranya biar gampang ?
  • Pertama, pada Hercules, buka folder src/common/ , pada rAthena buka folder src/config
  • Buka file mmo.h pada Hercules, file packets.hpp pada rAthena, menggunakan Notepad++ cari value seperti dibawah :
  • 1
     #define PACKETVER 20141022
    
  • PACKETVER pada emulator saya adalah 20141022, berarti saya menggunakan client 2014-10-22 Ragexe (FORMAT PACKETVER / CLIENT = Tahun / Bulan / Tanggal)
  • Buka forum resmi rAthena dan Hercules (biasanya pada salah satu forum, ada yang share), cari subforum Client Release, lalu cari topic yang berhubungan dengan kode PACKETVER yang ada di emulatormu. Jika tidak ada yang share, berarti kamu harus patch Ragexe mu sendiri.

Default PACKETVER pada Hercules adalah 20141022
Default PACKETVER pada rAthena adalah 20151104
(NOTE: update terakhir pada saat tulisan ini dibuat)

Default packetver pada masing-masing emulator biasanya adalah yang paling stabil, dengan sedikit bug, namun client versi lama tidak akan mendapatkan fitur baru, seperti misalnya, update Max Level Homunculus menjadi 175 hanya bisa digunakan dengan 20170920, yang artinya client sebelum 20170920 tidak akan support Max level Homunculus yang baru.

Dan untuk kamu yang ingin membuat server Pre-Renewal, hal ini bisa menjadi kelebihanmu, kamu cukup memilih beberapa client stabil yang direkomendasikan oleh komunitas, seperti misalnya client 20141022, 20120410 , dan 20100803.

Oke, sekarang lanjut ke cara hexingnya, seperti biasa persipkan terlebih dahulu perabotannya.
1. Client Patcher, pilih salah satu, Secret's Nemo support client 2016 keatas (kedua Patcher ini sudah tidak update / discontinued)
2. Unpacked Ragnarok Client (Ragexe.exe)
3. Hex Client Editor : HxD (Gratis)

Berikut adalah langkah-langkah untuk patch Ragexe, disini saya menggunakan Neo's Nemo, dan menggunakan 20141022bRagexe.exe.
  • Buat folder baru agar mempermudah pekerjaanmu, misalnya Patching
  • Download dan extract Unpacked Client (Ragexe).
  • Download dan save Client Patcher pada folder Patching
  • Jalankan aplikasi Nemo (Run As Administrator)
  • Pada baris Input File Exe, klik browse dan cari Ragexe mu, setelah Ok. kolom Output Patched akan terisi otomatis, kamu bisa mengganti nama Exe dan lokasi penyimpanannya.
  • Klik Load Patches pada Toolbar, lalu akan muncul list patch yang dapat di apply ke Ragexe .
  • Klik Select Recomended pada Toolbar, Nemo secara otomatis akan memberikan patch rekomendasi untuk Ragexe yang akan di patch. Lalu akan muncul beberapa option untuk merubah setelan Ragexe seperti misalnya DATA.INI.
  • Kamu mungkin perlu menambah beberapa patch, seperti misalnya, centang option Use Ragnarok Icon (Option ini akan mengganti Icon Gear pada Ragexe menjadi icon Ragnarok Online pada umumnya),  centang option Increase Headgear ViewID (Defaultnya 2000, cukup rubah menjadi 6000, maksimal 32000), terakhir centang option Read Data Folder First (berguna agar Ragexe membaca folder Data terlebih dahulu kemudian GRF, akan saya jelaskan fungsinya nanti pada artikel lain)
  • Kalau kamu ragu, jangan centang option lain, atau meng-uncheck option yang sudah dipilih oleh Nemo ketika menggunakan toolbar Select Recomended
  • Klik Apply Selected pada toolbar untuk menyimpan perubahan yang sudah kamu buat.
Selamat, kamu sudah selesai mempatch Ragexe.exe mu sendiri !

Membangun Client Side


Untuk dapat memainkan sebuah game MMO, kita membutuhkan game client, biasanya berisi file executable (EXE), file game asset yang ter-enkripsi, dan file-file pendukung seperti dll. BGM, dan patcher. Biasanya disediakan Publisher agar bisa didownload dan dimainkan oleh Player.

Pada Ragnarok Online private server, biasanya kamu membutuhkan custom client sendiri, selain client official, agar dapat bermain. Custom client mendukung private server mu agar memiliki identitas server mu sendiri. Seperti misalnya, pada saat membuka game, player akan logo server mu pada tampilan login screen. Walaupun tanpa Custom client ini kamu tetap dapat bermain dengan menggunakan Hexed Client dan mengedit clientinfo.xml.

Ragnarok Online menggunakan file ekstensi GRF sebagai media enkripsi data-data gamenya, ketika kamu menjalankan Ragnarok.exe, maka game akan membaca file grf tersebut agar game bisa berjalan. Biasanya file grf ini berisi data-data seperti sprite karakter, sprite item, dan Map beserta grafik pendukung seperti thumbnail item, deskripsi item, dan lain-lain. Ragnarok Online menggunakan data.grf sebagai file enkripsi. Pada versi terdahulu ada grf tambahan seperti sdata.grf dan rdata.grf. Dan pada saat event-event khusus berlangsung biasanya terdapat grf tambahan seperti event.grf.

Hal-hal yang dibutuhkan dalam membuat custom client / Custom GRF mu sendiri, yaitu:
1. grf builder : Download dari Ratemyserver
2. Translated Data Folder (Pilih salah satu sesuai konsep private server mu)
3. clientinfo.xml
Template : https://github.com/HerculesWS/Hercules/wiki/Clientinfo.xml


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>
 <desc>Ragnarok Client Information</desc>
 <servicetype>korea</servicetype>
 <servertype>sakray</servertype>
 <hideaccountlist />
 <passwordencrypt />
 <passwordencrypt2 />
 <extendedslot />
 <readfolder />
 <connection>
  <display>SERVER NAME HERE</display>
  <desc>Ragnarok Online</desc>
  <balloon>this is a tool tip</balloon>
  <address>SERVER IP HERE</address>
  <port>6900</port>
  <version>20</version>
  <langtype>1</langtype>
  <registrationweb>REGISTRATION URL HERE</registrationweb>
  <yellow>
   <admin>2000001</admin>
   <admin>2000002</admin>
   <admin>2000003</admin>
  </yellow>
  <loading>
   <image>loading00.jpg</image>
   <image>loading01.jpg</image>
   <image>loading02.jpg</image>
   <image>loading03.jpg</image>
   <image>loading04.jpg</image>
   <image>loading05.jpg</image>
   <image>loading06.jpg</image>
   <image>loading07.jpg</image>
   <image>loading08.jpg</image>
   <image>loading09.jpg</image>
   <image>loading10.jpg</image>
  </loading>
 </connection>
</clientinfo>

Kamu hanya perlu membuatnya seperti ini menggunakan Notepad++

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>
<servicetype>korea</servicetype>
<servertype>primary</servertype>
   <connection>
      <display>NamaRO</display>
      <balloon></balloon>
      <desc></desc>
      <address>127.0.0.1</address>
      <port>6900</port>
      <version>30</version>
      <langtype>1</langtype>
      <registrationweb></registrationweb>
 <loading>
 <image>Loading00.jpg</image>
 <image>Loading01.jpg</image>
 <image>Loading02.jpg</image>
 <image>Loading03.jpg</image>
 <image>Loading04.jpg</image>
 <image>Loading05.jpg</image>
 <image>Loading06.jpg</image>
 <image>Loading07.jpg</image>
 <image>Loading08.jpg</image>
</loading>
      <aid>
 <admin></admin>
       </aid>
   </connection>
</clientinfo>
Save dengan nama clientinfo.xml pada Notepad++, dan masukan ke dalam folder data yang sudah kamu download.

NOTE : Hapus ID pada (2000001 dan seterusnya) jika kamu tidak menginginkan ID tersebut menggunakan sprite Game Master (GM). Ganti IP pada address sesuai WAN IP atau Nama Domain (misal www.ragnarokku.com) mu jika kamu menggunakan server ini untuk Online, LAN IP jika ingin bermain LAN, dan 127.0.0.1 atau localhost jika kamu ingin bermain sendiri.


Cuma itu saja ? yap, kecuali kamu ingin menambah grafik custom, kamu akan membutuhkan aplikasi untuk mengedit gambar seperti Adobe Photoshop atau GIMP.

Langkah-langkah untuk membuat custom client mu adalah sebagai berikut

  • Download Translated Data Folder (Pilih salah satu), struktur utama folder selalu bernama data, Tapi kamu selalu bisa menggantinya dengan nama lain. Didalam folder data terdapat folder dan file-file yang digunakan didalam GRF.
  • Data folder dengan struktur lengkap

  • Download dan jalankan aplikasi GRF Builder (grfbuilder.exe) 
    Tampilan GRF Builder versi 0.1.30
  • klik New pada toolbar, lalu tentukan lokasi file grf yang akan dibuat, isilah nama file sesuai keinginanmu, misalnya MyData.grf (NOTE: ekstensi .grf harus diketik juga)
  • klik Merge dir pada toolbar, cari dimana kamu menyimpan Translated Data Folder yang sudah kamu download. Klik (sekali) pada nama folder tersebut lalu klik Ok. Tunggu sampai aplikasi selesai membaca.
  • Terakhir, klik Repack pada toolbar. Tunggu sampai proses selesai.

  • Sampai disini, kamu sudah berhasil membuat custom client / custom GRF mu sendiri, Happy RO !