คุยกันเกี่ยวกับการพัฒนา PP RO server ว่าจะเพิ่มเติมอะไรบ้างที่นี่
สุมหัวคุยเรื่องระบบภายใน Server
เรื่องที่อยู่ใน comment ของ Entry
- Multi Class (Extended 2nd Class)
edit @ 2005/07/01 13:16:10
คุยกันเกี่ยวกับการพัฒนา PP RO server ว่าจะเพิ่มเติมอะไรบ้างที่นี่
สุมหัวคุยเรื่องระบบภายใน Server
เรื่องที่อยู่ใน comment ของ Entry
- Multi Class (Extended 2nd Class)
--- Text Compiling ---
ขอขอบคุณ http://worldofeathena.yuu-kun.com/ ที่เขียนรายละเอียดในส่วนการติดตั้งครับ ^^
เครดิตให้ประมูลอีกทีกับวิธีการ compile (วิธีการติดตั้งดูแล้วมันงง ๆ เขียนขึ้นใหม่แล้วกัน)
(ของผมฟอร์แมตเครื่องแล้วมันหายต้องลงใหม่ เลยเจอวิธีการติดตั้งอะนะ)
ไม่มีรูปครับขอโทษด้วย ^^'
1. ไปที่ http://www.cygwin.com
2. คลิกที่ 'Install or Update now' ดาวน์โหลด setup.exe แล้วรัน
3. จะพบกับหน้าแนะนำโปรแกรม คลิก Next
4. เลือกว่าจะ Install ผ่านเน็ตหรือ ดาวน์โหลดไฟล์(อีกหัวข้อคือเรียกจาก Directory ไม่อยากแนะนำเพราะวุ่นวายพอสมควร - -")
แนะนำให้เลือกใช้ 'Install from Internet' คลิก Next (เท่าที่ดูผมว่าหากใช้วิธีแบบนี้เกิดเน็ตหลุดก็ยังสามารถโหลดต่อจากที่โหลดไปแล้วได้ ^^)
5. เลือก Path ที่จะ Install ปกติมันจะตั้งเป็น C:\cygwin ก็เปลี่ยนได้ตามสะดวก เช็คว่ามีการเลือก All Users และ Unix ที่ด้านล่าง ชัวร์แล้วก็คลิก Next
6. เลือก Path ที่จะเก็บ Package ที่ดาวน์โหลดเสร็จแล้ว(อันนี้แนะนำไว้ที่โฟลเดอร์ต่างหากเลยจะได้ไม่สับสน) คลิก Next
7. ถ้าใช้ Proxy ในการต่ออินเตอร์เน็ต(เช่น Adsl Localnet อาจจะใช้ Proxy) ให้กรอก Proxy ที่ใช้อยู่ หากไม่ได้ใช้ก็ไม่ต้องสนใจ แล้วคลิก Next
8. เลือก Mirror Site ที่ต้องการไปโหลด (โหลดได้เหมือนกันทุกที่แต่บางไซต์อาจจะเร็วกว่าอันนี้ต้องเดาเองนะ) เลือกไปอันนึงแล้วคลิก Next
9. อันนี้ขั้นตอนสำคัญครับเลือก Package ที่จะ Install ละ เช็คว่ามีพวกนี้อยู่ป่าวนะ(ถ้าเป็น Skip ให้คลิกซ้าย 1 ที จะมีกากบาทในช่องสี่เหลี่ยมถือว่าติ๊กละ)
| gcc: C Compiler upgrade helper gcc-core: C compiler gcc-G++: C++ compiler gcc-mingw-core: Mingw32 support headers and libraries for GCC gcc-mingw-g++: Mingw32 support headers and libraries for GCC C++ gdb: The GNU Debugger make: The GNU version of the 'make' utility. mingw-runtime: The MinGW Runtime |
ต้องมีให้ครบนะ เสร็จแล้วก็คลิก Next
10. คราวนี้ก็รอสิครับ รอจนกว่าดาวน์โหลดเสร็จแล้วเดี๋ยวมันก็ Install
11. พอ Install เสร็จมันจะมีหน้าต่างขึ้นมาไม่ต้องติ๊กอะไรเพิ่มเติมนะครับ อันนั้นเป็นการเลือกให้สร้าง Shortcut (ใครไม่เอาก็คงจะรู้ว่าทำไง) คลิก Finish
12. หน้าต่าง pop up ก่อนจากจะโผล่ขึ้นมาคลิก OK เป็นอันเสร็จครับ
หลังจากติดตั้งแล้วมาดูวิธี Compile กันครับ
1. เมื่อติดตั้งเสร็จ ถ้าลงตามโปรแกรมก็จะอยู่ที่ C:\cygwin\ ให้สร้าง Folder home ขึ้นมา
จะได้เป็น c:\cygwin\home\ เสร็จแล้ว ให้เราลองรันครั้งแรก โปรแกรม จะสร้าง user ขึ้นมา
ยกตัวอย่างถ้า Username ของ Windows ที่เครื่องคุณคือ xxx โปรแกรมก็จะสร้าง folder ขึ้นมาเป็น c:\cygwin\home\xxx\ ถือว่าเสร็จเรียบร้อยสำหรับการเตรียมโปรแกรม
3. ใน eAthena จะมีโฟลเดอร์ src อยู่ด้วย ให้ copy ไปไว้ที่ home\xxx (อันนี้ขึ้นอยู่กับชื่อ User นะ)
จะได้เป็น c:\cygwin\home\xxx\eAthena\ โฟลเดอร์ต่างๆ และตัวเปิด server (ซึ่งมันก็มีหมดอะนะ)
4. เมื่อเรียบร้อยแล้ว ให้ทำการแก้ไข ไฟล์ใน Folder ....eAthena\src (แก้ที่ไฟล์ .c) อยากแก้อะไรเชิญสำแดงฝีมือได้เลยครับ ^^
5. เมื่อแก้สะใจพอแล้ว(?) ก็ถึงเวลา Compile เป็น exe เสียทีละ ให้ลบไฟล์ ใน eAthena ดังนี้
- ไฟล์ รัน server ทั้งหมด ได้แก่ login-server.exe char-server.exe map-sever.exe ladmin.exe
เนื่องจากเราจะสร้างใหม่อยู่แล้วครับ
- ไฟล์ dll คือ cygwin1.dll และ cygz.dll เพราะถ้าไม่เอาออกจะ error(เดี๋ยวค่อยเอามาใส่ใหม่)
6. รันโปรแกรม วิธีการใช้คล้ายกับ MS-DOS คำสั่งต่างๆ
- พิมพ์ cd eAthena //คือเข้าไปที่ folder eAthena
- พิมพ์ make clean //คือการลบไฟล์ .o ที่เคยได้สร้างไว้ก่อนหน้านี้ (กรณี จะทำการ รวมไฟล์ ครั้งที่ 2)
- make //คือ compile ไฟล์ครับ
7. เมื่อเสร็จแล้ว รอมัน compile จนเสร็จ จะได้ตัวรัน Server ทั้งหมดมาครับ(คือมัน compile ขึ้นมาใหม่)แล้ว copy แต่ตัวรัน ไปวางใน Path เดิมที่ปกติเข้าไปรัน Server
(อย่างของผมก็ก๊อปมันไปไว้ที่ D:\Athena Server\SVN Rxxxx TXT\) แค่นี้เป็นอันเสร็จ ได้ตามที่เราแก้ไว้
Note ::
- ถ้าจะแก้เพิ่มอีก ก็ไปแก้ ที่โฟลเดอร์ src เหมือนเดิมครับ แต่อย่าลืมใช้คำสั่ง make clean ก่อน compile ทุกครั้ง
- หากสร้างแล้ว ไม่ได้ ไฟล์ exe ขึ้นมา ให้กลับไปดูข้อความใน cygwin มันจะบอก บรรทัดที่ error ไว้ครับ เราก็ไปที่บรรทัดที่เราแก้ไว้ เพราะบางที เราอาจใส่ค่าผิดครับ
จบละเรื่องคอมไพล์ ผมเอามาก่อนเพราะว่าผมมีต้นฉบับแล้วไม่ต้องทำใหม่ อิๆ