Jump to content
  • 0
Sign in to follow this  
jomjoms123

how to add modify @go commands in hercules.

Question

4 answers to this question

Recommended Posts

  • 0

how to add modify @go commands in hercules.

What do you mean? You mean you want to change the maps within @go? If so, take a look in your /src/map/atcommand.c and find this:

 

/*========================================== * @go [city_number or city_name] - Updated by Harbin *------------------------------------------*/ACMD(go){	int i;	int town;	char map_name[MAP_NAME_LENGTH];	int16 m;	const struct {		char map[MAP_NAME_LENGTH];		int x, y;	} data[] = {		{ MAP_PRONTERA,    156, 191 }, //  0=Prontera		{ MAP_MORROC,      156,  93 }, //  1=Morroc		{ MAP_GEFFEN,      119,  59 }, //  2=Geffen		{ MAP_PAYON,       162, 233 }, //  3=Payon		{ MAP_ALBERTA,     192, 147 }, //  4=Alberta#ifdef RENEWAL		{ MAP_IZLUDE,      128, 146 }, //  5=Izlude (Renewal)#else		{ MAP_IZLUDE,      128, 114 }, //  5=Izlude#endif		{ MAP_ALDEBARAN,   140, 131 }, //  6=Al de Baran		{ MAP_LUTIE,       147, 134 }, //  7=Lutie		{ MAP_COMODO,      209, 143 }, //  8=Comodo		{ MAP_YUNO,        157,  51 }, //  9=Yuno		{ MAP_AMATSU,      198,  84 }, // 10=Amatsu		{ MAP_GONRYUN,     160, 120 }, // 11=Gonryun		{ MAP_UMBALA,       89, 157 }, // 12=Umbala		{ MAP_NIFLHEIM,     21, 153 }, // 13=Niflheim		{ MAP_LOUYANG,     217,  40 }, // 14=Louyang		{ MAP_NOVICE,       53, 111 }, // 15=Training Grounds		{ MAP_JAIL,         23,  61 }, // 16=Prison		{ MAP_JAWAII,      249, 127 }, // 17=Jawaii		{ MAP_AYOTHAYA,    151, 117 }, // 18=Ayothaya		{ MAP_EINBROCH,     64, 200 }, // 19=Einbroch		{ MAP_LIGHTHALZEN, 158,  92 }, // 20=Lighthalzen		{ MAP_EINBECH,      70,  95 }, // 21=Einbech		{ MAP_HUGEL,        96, 145 }, // 22=Hugel		{ MAP_RACHEL,      130, 110 }, // 23=Rachel		{ MAP_VEINS,       216, 123 }, // 24=Veins		{ MAP_MOSCOVIA,    223, 184 }, // 25=Moscovia		{ MAP_MIDCAMP,     180, 240 }, // 26=Midgard Camp		{ MAP_MANUK,       282, 138 }, // 27=Manuk		{ MAP_SPLENDIDE,   197, 176 }, // 28=Splendide		{ MAP_BRASILIS,    182, 239 }, // 29=Brasilis		{ MAP_DICASTES,    198, 187 }, // 30=El Dicastes		{ MAP_MORA,         44, 151 }, // 31=Mora		{ MAP_DEWATA,      200, 180 }, // 32=Dewata		{ MAP_MALANGDO,    140, 114 }, // 33=Malangdo Island		{ MAP_MALAYA,      242, 211 }, // 34=Malaya Port		{ MAP_ECLAGE,      110,  39 }, // 35=Eclage	}; 

 

If you want to add more, you can but if you do, you gotta scroll down and edit this part as well:

 

// get possible name of the city	map_name[MAP_NAME_LENGTH-1] = '0';	for (i = 0; map_name[i]; i++)		map_name[i] = TOLOWER(map_name[i]);	// try to identify the map name	if (strncmp(map_name, "prontera", 3) == 0) {		town = 0;	} else if (strncmp(map_name, "morocc", 4) == 0 ||	           strncmp(map_name, "morroc", 4) == 0) {		town = 1;	} else if (strncmp(map_name, "geffen", 3) == 0) {		town = 2;	} else if (strncmp(map_name, "payon", 3) == 0) {		town = 3;	} else if (strncmp(map_name, "alberta", 3) == 0) {		town = 4;	} else if (strncmp(map_name, "izlude", 3) == 0) {		town = 5;	} else if (strncmp(map_name, "aldebaran", 3) == 0) {		town = 6;	} else if (strncmp(map_name, "lutie", 3) == 0 ||	           strcmp(map_name,  "christmas") == 0 ||	           strncmp(map_name, "xmas", 3) == 0 ||	           strncmp(map_name, "x-mas", 3) == 0) {		town = 7;	} else if (strncmp(map_name, "comodo", 3) == 0) {		town = 8;	} else if (strncmp(map_name, "juno", 3) == 0 ||	           strncmp(map_name, "yuno", 3) == 0) {		town = 9;	} else if (strncmp(map_name, "amatsu", 3) == 0) {		town = 10;	} else if (strncmp(map_name, "kunlun", 3) == 0 ||	           strncmp(map_name, "gonryun", 3) == 0) {		town = 11;	} else if (strncmp(map_name, "umbala", 3) == 0) {		town = 12;	} else if (strncmp(map_name, "niflheim", 3) == 0) {		town = 13;	} else if (strncmp(map_name, "louyang", 3) == 0) {		town = 14;	} else if (strncmp(map_name, "new_1-1", 3) == 0 ||	           strncmp(map_name, "startpoint", 3) == 0 ||	           strncmp(map_name, "beginning", 3) == 0) {		town = 15;	} else if (strncmp(map_name, "sec_pri", 3) == 0 ||	           strncmp(map_name, "prison", 3) == 0 ||	           strncmp(map_name, "jail", 3) == 0) {		town = 16;	} else if (strncmp(map_name, "jawaii", 3) == 0) {		town = 17;	} else if (strncmp(map_name, "ayothaya", 3) == 0) {		town = 18;	} else if (strncmp(map_name, "einbroch", 5) == 0) {		town = 19;	} else if (strncmp(map_name, "lighthalzen", 3) == 0) {		town = 20;	} else if (strncmp(map_name, "einbech", 5) == 0) {		town = 21;	} else if (strncmp(map_name, "hugel", 3) == 0) {		town = 22;	} else if (strncmp(map_name, "rachel", 3) == 0) {		town = 23;	} else if (strncmp(map_name, "veins", 3) == 0) {		town = 24;	} else if (strncmp(map_name, "moscovia", 3) == 0) {		town = 25;	} else if (strncmp(map_name, "mid_camp", 3) == 0) {		town = 26;	} else if (strncmp(map_name, "manuk", 3) == 0) {		town = 27;	} else if (strncmp(map_name, "splendide", 3) == 0) {		town = 28;	} else if (strncmp(map_name, "brasilis", 3) == 0) {		town = 29;	} else if (strncmp(map_name, "dicastes01", 3) == 0) {		town = 30;	} else if (strcmp(map_name,  "mora") == 0) {		town = 31;	} else if (strncmp(map_name, "dewata", 3) == 0) {		town = 32;	} else if (strncmp(map_name, "malangdo", 5) == 0) {		town = 33;	} else if (strncmp(map_name, "malaya", 5) == 0) {		town = 34;	} else if (strncmp(map_name, "eclage", 3) == 0) {		town = 35;	}

 

and don't forget to change your /src/common/mapindex.h file.

 

 

Finally, you need to edit your /conf/help.txt file. It controls the message displayed in @go.

 

go: "Params: <city name|number>n" "Warps you to a city.n"	"  -3: (Memo point 2)  14: louyang         31: moran"	"  -2: (Memo point 1)  15: start point     32: dewatan"	"  -1: (Memo point 0)  16: prison/jail     33: malangdo islandn"	"   0: prontera              17: jawaii             34: malaya portn"	"   1: morocc                18: ayothaya       35: eclagen"	"   2: geffen                  19: einbrochn"	"   3: payon                  20: lighthalzenn"	"   4: alberta                 21: einbechn"	"   5: izlude                   22: hugeln"	"   6: aldebaran           23: racheln"	"   7: xmas (lutie)        24: veinsn"	"   8: comodo               25: moscovian"	"   9: yuno                     26: midgard campn"	"  10: amatsu               27: manukn"	"  11: gonryun              28: splendiden"	"  12: umbala               29: brasilisn"	"  13: niflheim              30: el dicastesn"

 

Share this post


Link to post
Share on other sites
  • 0

Alternatively, if you do not wish to modify your source code, you can use my custom @go command which runs via NPC script. Easy to modify and can simply be loaded/unloaded at any time without having to stop/re-compile/start your server.

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
Answer this question...

×   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.