Jump to content
Sign in to follow this  
Mhalicot

[Gabay] Paano gamitin ang Plugins

Recommended Posts

Malinaw na Gabay kung paano gamitin sa iyong server ang Plugins ng Hercules.


 

 

Talaan ng Nilalaman:

 

I. Panimula:

 

 

Ang C (Programming Language) para sa plugin ay karaniwang walang kaibahan, bago ma compile ang plugin kailangan matugunan muna ang pamantayan depende sa iyong Operating System, may dalawang Gabay sa baba, yung isa ay para sa Windows at yung isa naman ay para sa lahat ng iba pa (na kung saan dapat gumana sa anumang *nix distro, pati narin sa OSX)

 

 

 

II. Para sa Windows:

 

 

~ Ang gabay na  ito ay kung paano maihanda ang iyong MSVC environment para sa bagong HPM plugins.

~ Pakiusap intindihing mabuti para hindi maligaw :)

  1. Pumunta sa src/plugins/ ] folder, at gumawa ng bagong .c ] file, Halimbawa. dance.c ](ang pangalan na yan ang gagamitin bilang halimbawa)
    Step1.JPG
  2. Buksan ang [ dance.c ] at i-paste ang code na ito, Gumamit ng Notepad++
    #include <stdio.h>#include <string.h>#include "../common/HPMi.h"#include "../map/script.h"#include "../map/pc.h"HPExport struct hplugin_info pinfo ={    "@dance",		// Plugin name    SERVER_TYPE_MAP,// Which server types this plugin works with?    "0.1a",			// Plugin version    HPM_VERSION,	// HPM Version (don't change, macro is automatically updated)};ACMD(dance){      if (!message || !*message) {		  clif->message(fd, "usage: @dance 1-9");return -1;   }   if ( atoi(message) == 1 ) {clif->specialeffect(&sd->bl, 413, ALL_CLIENT);   } else if ( atoi(message) == 2 ) {clif->specialeffect(&sd->bl, 414, ALL_CLIENT);   } else if ( atoi(message) == 3 ) {clif->specialeffect(&sd->bl, 415, ALL_CLIENT);   } else if ( atoi(message) == 4 ) {clif->specialeffect(&sd->bl, 426, ALL_CLIENT);   } else if ( atoi(message) == 5 ) {clif->specialeffect(&sd->bl, 458, ALL_CLIENT);   } else if ( atoi(message) == 6 ) {clif->specialeffect(&sd->bl, 466, ALL_CLIENT);   } else if ( atoi(message) == 7 ) {clif->specialeffect(&sd->bl, 501, ALL_CLIENT);   } else if ( atoi(message) == 8 ) {clif->specialeffect(&sd->bl, 540, ALL_CLIENT);   } else if ( atoi(message) == 9 ) {clif->specialeffect(&sd->bl, 550, ALL_CLIENT);   }	else	{	clif->message(fd, "usage: @dance 1-9"); 	}   return true;}/* Server Startup */HPExport void plugin_init (void){    clif = GET_SYMBOL("clif");    script = GET_SYMBOL("script");    skill = GET_SYMBOL("skill");    addAtcommand("dance",dance);}
  3.  Buksan ang iyong MSVC project (Hal. 'Hercules-10.sln')
    Step2.JPG
  4. Pumunta sa Solution Explorer ]
    750px-Step3.JPG
  5. i-Right Click ang Hercules Project ( unang item sa [ Solution Explorer ]), tapos [ Add->New Project ].
    750px-Step4.JPG
  6. Piliin ang [ General ], at Piliin din ang [ Empty Project ].
    750px-Step5.JPG
  7. Ilagay ang pangalan ng plugin sa [ Name ] field sa ibaba tapos i-click ang OK. Tignan ang Image sa #6.
  8. Sa solution explorer buksan ang ginawang project para ipakita ang lahat ng nilalaman.
    750px-Step6.JPG
  9. i-Right Click ang iyong project na ginawa, at buksan [ Add->Existing Item ]
    750px-Step7.JPG
  10. i-Browse at hanapin ang [ dance.c ] file sa [ src/plugins ] at pindutin ang OK.
    Step8.JPG
  11. Ilagay ang [ dance.c ] file sa ilalim ng [ Source Files ], i-drag ito papunta sa project na ginawa mo tapos i-drop o bitawan mo ang pagkaka drag (Sa madaling salita mapupunta ito sa labas ng source files folder.)
    750px-Step9.JPG
    (Dapat ganito ang kalalabasan)
    750px-Step10.JPG
  12. Kapag nasalabas na nang folder ang [ dance.c ], i-delete ang 3 na folder (Piliin ang 3, pindutin ang delete button sa keyboard mo and pindutin ang OK.)
    750px-Step11.JPG
     (Dapat ganito ang kalalabasan)
    750px-Step12.JPG
  13. i-Right Click ang iyong project na ginawa at buksan ang [ Properties
    750px-Step13.JPG
  14. Sa ilalim ng [ Configuration Properties ] pindutin ang [ General ], palitan ang [ Output Directory ] gawing 
    ..plugins
    Palitan din ang [ Intermediate Directory ] gawing 
    $(ProjectName)$(ConfigurationName)
    at ang [ Configuration Type ] gawing 
    Dynamic Library (.dll)
     
    Step14.JPG
     
  15. Sa ilalim ng [ Configuration Properties ] i-click ang [ C/C++ ] tapos buksan ang [ General ], at ilagay sa [ Additional Include Directories ] ang 
    ..srccommon;..3rdpartymsinttypesinclude
     
    Step15.JPG
     
  16. Sa ilalim ng [ Configuration Properties ] i-click ang [ Linker ] at buksan ang [ General ], palitan ang [ Output File ] gawing 
     $(OutDir)dance.dll
    (Palitan ang dance.dll ng pangalan ng iyong sariling file kung iyon ang ginagamit mo.) tapos i-click ang OK.
    Halimbawa lamang ang dance.dll dahil ito ang filename nang Gabay na ito.
    750px-Step16.JPG
     
  17. i-Right Click ang project na ginawa mo and Piliin ang Build. Pag walang error ibig sabihin tama ang ginawa mo.
  18. i-Add ang iyong file sa [ /config/plugins.conf ]
     
    plugins_list: [	/* Enable HPMHooking when plugins in use rely on Hooking */	//"HPMHooking",	//"db2sql",	//"sample",	//"other",	"dance", // dance.c]
     

 

 

 

III. Para sa (*nix distro, OSX at ibapa):

 

~ Ang gabay na ito ay kung paano I-handa ang GCC environment para sa bagong HPM plugin.

  1. Sa iyong [ src/plugins/Makefile.in ] file, may makikita kang katulad nito:
    ################  PLUGIN CONFIGURATION  ###############################                                                                    ## When you add a plugin, add its name here:                          ## Example: if you have a plugin named my_cool_plugin.c and another   ## one named my_second_plugin.c, add them to the list like this:      ##                                                                    ## MYPLUGINS = my_cool_plugin my_second_plugin                        ##                                                                    ## Note: DO NOT include the .c extension!!!                           #MYPLUGINS = 
     
  2. I dagdag lamang ang iyong plugin name (hindi kasama ang .c extension), Pagkatapos ng [ MYPLUGINS = plugin name
    MYPLUGINS = dance
    i-save at i-close.
  3. Pang huli, i-Run ang [ make plugins ] command sa root folder ng Hercules at tapos ka na.

 

 

 

IV. Kapaki-pakinabanang na Link and Download:

 

 

V. Kadalasang Tanong:

 

~ Mga tanong na nasagot na

Hanapin lamang ang iyong problema sa link sa taas bago mag post kung hindi mo makita.

Mag mungkahi nang mga gusto idagdag sa gabay na ito.

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

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