• 23676ÔĶÁ
  • 30»Ø¸´

[Ô­´´]ΪÐÂÈË´ðÒÉ£¬Ïê½â¡°d2hackmap.cfg¡±ÖÐÓйØMAPHACKµØͼµÄÖØÒªÉèÖ㨸üÐÂÖС£¡£¡££© [¸´ÖÆÁ´½Ó]

ÉÏÒ»Ö÷Ìâ ÏÂÒ»Ö÷Ìâ
ÀëÏßcloudwzq
 
·¢Ìû
848
½ðÇ®
0
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
230 Сʱ
×¢²áʱ¼ä
2008-04-09
×îºóµÇ¼
2008-09-30
Ö»¿´Â¥Ö÷ µ¹ÐòÔĶÁ ʹÓõÀ¾ß Â¥Ö÷  ·¢±íÓÚ: 2008-05-30 09:47:29
— ±¾Ìû±» cloudwzq Ö´ÐÐËø¶¨²Ù×÷(2008-06-23) —
ÎÒÊÇÐÂÈË£¬ÒÔÏÂÄÚÈÝÊÇÎÒÂýÂý¿´¶®µÃ£¬Ïà·´ÄÑÃâÓÐÃýÎó»ò´íÎ󣬻¶Ó­Ö¸Õý£¡

±¾°æ±¾ÊÇ»ùÓÚ¡°HackMap1.16 CFG For DIIExp 1.10 ¡±£¬À´×ÔÓÚ±¾ÂÛ̳ÏÂÔصĵØͼhackmap¡£

Ê×ÏÈÈ·±£ÄãÍ˳öÓÎÏ·¡£
ÕÒÄãÓÎϷĿ¼ÏÂÒ»¸ö½Ðd2hackmap.cfgµÄÎļþ£¬Ò»°ãÔÚ¡°map¡±Ä¿Â¼Ï£¬Ò²¿ÉÄÜÊÇÆäËüÃû×Ö£¬ÕÒ²»µ½ÓÃÎļþËÑË÷£¬ÓüÇʱ¾³ÌÐò´ò¿ª¡£

ÎļþÄÚÈÝÈçÏ£º

¡£¡£¡£¡£¡£¡£

ÎļþÄÚÄã¿ÉÒÔÕÒµ½ºÃ¶à¡°//¡±£¬¡°//¡±µÄÒâ˼ÊÇ×¢ÊÍ£¬Ñ§¹ýC++µÄÈ˶¼Öª¡£ÓÉÓÚÎļþ²ÉÈ¡µÄ½Å±¾Ê½µÄÓïÑÔ£¬×¢Ê͵ôÒ²¾ÍÊÇÈ¡ÏûÕâ¸ö¶¨Ò壬ȥµôÁË¡°//¡±Ò²¾ÍÊǻָ´Õâ¸ö¶¨Òå¡£

µÚ¶þÂ¥£¨É³·¢Â¥£©ÎÒÏÈ̸¶ÔÐÂÈË×î³£Åöµ½µÄ¼¸Ìõ£¬ÐÂÈ˲»ÏëÍ·ÔεĻ°¿ÉÒÔÖ»¿´´ËÂ¥£¨Ë³±ã²Î¿¼µÚËÄÂ¥µØ°åÂ¥£¬ÊÇÓйصØͼй¦Äܵģ©¡£

µÚÈýÂ¥£¨°åµÊÂ¥£©¼°ÒÔÏÂ̸ÎÒÈÏΪҲÓÐÓõļ¸Ìõ£¬½«ÖðÌõ̸£¬ÎÒµÄÏë·¨·ÅÔÚÿһÐеĹκÅÄÚ£¬ÒÔʾºÍÔ­ÎĵÄÇø±ð¡£

µÚËÄÂ¥£¨µØ°åÂ¥£©£ºÓйصØͼй¦Äܼ°Æä°æ±¾ËµÃ÷¡£

Óйذ汾ÎÊÌ⣺½üÀ´ÔÚÓÐͬѧÌá³öÁËһЩй¦ÄÜ£¨ÖÁÉÙÊÇÏà¶ÔÓÚ±¾°æ±¾¶øÑÔ£©£¬Èç×Ô¶¯×é¶Ó£¬»ð·ç±©µÄ¶¯»­ÏÔʾ¹Ø±ÕµÈµÈ¡£¾­²âÊÔ£¬ÕâЩй¦ÄÜÔÚ±¾°æ±¾ÊDz»ÄÜʵÏֵģ¬ÓйØй¦ÄܵĽéÉܲο´µÚËÄÂ¥¡£



¸Ðл¡°hqy¡±£¬¡°ÏûʧÁË¡±£¬¡°heartfree¡±µÈÖîλͬѧµÄÈÈÐÄ°ïÖú¼°½â´ð£¡£¡£¡£¨¸ÐлÃûµ¥³ÖÐø¸üÐÂÖС£¡£¡£¡£¡£¡££©
[ ´ËÌù±»cloudwzqÔÚ2008-06-09 21:36ÖØб༭ ]
ÀëÏßcloudwzq
·¢Ìû
848
½ðÇ®
0
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
230 Сʱ
×¢²áʱ¼ä
2008-04-09
×îºóµÇ¼
2008-09-30
Ö»¿´¸Ã×÷Õß É³·¢  ·¢±íÓÚ: 2008-05-30 09:47:49
×î³£¼ûµÄ¼¸Ìõ

Quick Exit Game Key:            VK_OEM_MINUS //´ó¼üÅÌ"-" £¨±íʾÄã°´´ó¼üÅÌÉÏ"-"¿ÉÒÔÖ±½ÓÍ˳öÄãÕýÔÚÍæµÄÓÎÏ·£¬»Øµ½ÒÔÏÂÒ³Ã棩


Quick Next Game Key:        VK_OEM_PLUS //´ó¼üÅÌ"+" £¨±íʾÄã°´´ó¼üÅÌÉÏ"+"¿ÉÒÔÖ±½ÓÍ˳öÄãÕýÔÚÍæµÄÓÎÏ·£¬»Øµ½ÒÔÉÏÒ³Ãæ¡£²»Í¬µÄÊÇ£¬Äã½ÓÏÂÀ´´´½¨ÓÎÏ·»òÕß½øÈëÓÎÏ·£¬ÓÎÏ·Ãû×ÖºóÃæµÄÊý×Ö»á±ÈÇ°Ãæ¼ÓÁË1£¬³£¼ûÓÚ¸ú×ŶÓÎékbaal Ç°µÄ5С¶Ó²ä¾­Ñé¡£ÐèҪעÒâµÄÊÇÓÎÏ·Ãû×ֵĸñʽΪ¡°xxxÊý×Ö¡±£¬±ÈÈçdykb01£¬emkb001µÈ£¬Èç¹ûÓÎÏ·Ãûºó²»´øÊý×Ö£¬ÔòЧ¹û¸úÉÏÃæ´ó¼üÅÌÉÏ"-"Ч¹ûÒ»Ñù£©

View Equipment Key:            VK_K //"K" £¨ÔÚÓÎÏ·ÖУ¬°ÑÊó±ê·ÅÔÚÈËÎïÉíÉÏ£¬Í¬Ê±°´¡°k¡±¼ü¾Í¿ÉÒÔ¿´È˼ÒÉíÉϵÄ×°±¸£¬µ«¿´²»µ½È˼ÒÎïÆ·À¸ÀïµÄ¶«Î÷£¬Ò²¿´²»µ½È˼ÒPetµÄ×°±¸£©


Quick Back To Town Key:    VK_BACK //Í˸ñ¼ü"¡û" £¨Í˸ñ¼üÈÃÄãÒ»¼ü»Ø³Ç£¬Ç°ÌáÊÇÄãµÄÎïÆ·À¸ÀïÓлسÇÊ飨²»ÊǻسǾíÖᣩ£¬»òÕßÔÚû´ò¿ªºÐ×ÓµÄÇ°ÌáÏ£¬°Ñ»Ø³ÇÊéÈÓ½øºÐ×Ó£©


Hidden Items Toggle:            0, VK_ADD £¨ÐÂÈË×î³£ÎÊ£¬°´Ð¡¼üÅÌÉϵġ°+¡±¿É¿ªÎïÆ·Òþ²Ø£¬¶øĬÈÏ״̬Ï£¬±¦Ê¯£¬Ò»°ã°×É«ÎïÆ·µÈµÈ¶¼»á±»Òþ²Ø¡£ÈçºÎ¸Ä±äןöĬÈÏ״̬½«ÔÚÈýÂ¥·ÖÎö£©

Socket Protect Toggle:          1, 0x2D    £¨Õâ¸ö±íʾ¡°Insert¡±¼üÈ¥³ýsocketÎïÆ·ÎóÏâ±£»¤£¬ÔÚÄã×öÉñ·ûÖ®ÓïµÄʱºòÓã¬Ä¬ÈÏ״̬Ï£¬Õâ¸ö±£»¤ÊÇ¿ªÆôµÄ£¬·ÀÖ¹ÄãÎó°ÑÖ鱦/±¦Ê¯/·ûÎÄÏâµ½ÁËÄã²»ÏëÏâµÄ²ÄÁÏÀ


¶ÔÐÂÈËÓÐÓõĻù±¾ÉÏÊÇÕâô¶à£¬ÒÔºó×¢Òâµ½ÔÙ²¹³ä¡£
Èç¹û±Ê¼Ç±¾µçÄÔÓû§£¬ÄÇôºÜ²»ÐÒ£¬´ËÎļþÖÐÉæ¼°µ½µÄºÜÉÙ£¬ÎÒ¾õµÃΨһÓÐÓõÄÊÇÄã¿ÉÒÔ×Ô¼ºÑ¡Ôñ¿ªÒþ²ØÎïÆ·ÏÔʾµÄ¼ü£¨×¢ÒâÁ½ÐÐÖÐ×î¶àÖ»ÄÜÈ¥µôÒ»ÐеÄ×¢ÊÍ£©£º
//Hidden Items Toggle:            0, VK_7                  // µØÃæÎïÆ·Òþ²Ø,Êý×Ö7
//Hidden Items Toggle:            0, VK_CONTROL            // µØÃæÎïÆ·Òþ²Ø,CTRL¼ü
¸ü¶àÎÊÌâÁô´ý±Ê¼Ç±¾±à³ÌÓû§À´½âÊÍÁË¡£
[ ´ËÌù±»cloudwzqÔÚ2008-05-30 10:45ÖØб༭ ]
ÀëÏßcloudwzq
·¢Ìû
848
½ðÇ®
0
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
230 Сʱ
×¢²áʱ¼ä
2008-04-09
×îºóµÇ¼
2008-09-30
Ö»¿´¸Ã×÷Õß °åµÊ  ·¢±íÓÚ: 2008-05-30 09:48:16
Õâһ¥ÓÃÀ´½âÊÍÒ»ÏÂÐÂÈ˲»³£Óõ«ÊÇÎÒÈÏΪ»¹ÊÇÂùÖØÒªµÄÎÊÌ⣬Êʺ϶ÔÍæ°µºÚÓнøÒ»²½ÒªÇóµÄÍæ¼Ò¡£

// ½ÓÏÂÀ´ÊÇ¿ª¹Ø¼ü£¬¸ñʽ¶¼ÊÇ: ¿ª¹ØÃû:ĬÈÏÖµ£¬¼ü´úÂ룬1±íʾ¿ª£¬0±íʾ¹Ø¡££¨Ç°Ãæ1»òÕß0Ö¸µÄ¶¼ÊǸñʽÖеÄĬÈÏÖµ¡£¼ü´úÂëÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇ´óд×Öĸºê¶¨ÒåµÄ¼üÃûÈç¡°VK_F¡±±íʾ¡°F¡±¼ü£¬Ò»ÖÖÊÇ¡°-1¡±£¬±íʾÎÞ¼üÃû¶ÔÓ¦¡£ÓмüÃû¶ÔÓ¦µÄ£¬ÓÎÏ·ÖпÉÒÔËæʱ¸ü¸Ä£¬ÎÞ¼üÃû¶ÔÓ¦µÃ£¬Ö»ÄÜÍ˳öÓÎÏ·ºóÔÚÎļþÖÐÐ޸ģ©

//Óйظù¾ÝlifeºÍµÐ¶Ô×´¿ö×Ô¶¯Í˳öµÄһЩÅäÖÃ
Chicken Life Toggle:            0, VK_F      £¨°´¡°F¡±¼üÆôÓøù¾Ýlife×Ô¶¯Í˳ö¹¦ÄÜ£¬Ä¬ÈÏÊǹرչ¦ÄÜ£©
Chicken Hostile Toggle:        0, -1      £¨Ä¬ÈϹرոù¾ÝµÐ¶Ô×´¿ö×Ô¶¯Í˳ö¹¦ÄÜ£¬¿ÉÐÞ¸ÄĬÈÏÖµÆôÓã¬ÄãÉõÖÁ¿ÉÒÔÐ޸ļü´úÂ룬ֻҪÄãϲ»¶£©
Chicken Hostile Nearby Toggle:  0, -1£¨Ä¬ÈϹرÕÖ»¸ù¾ÝÖÜΧÊÇ·ñÓежÔ×´¿ö¶ø×Ô¶¯Í˳ö¹¦ÄÜ£¬ÆäËûͬÉÏ£©

// һЩ¹ØÓÚÈçºÎ±£ÃüµÄÊý×Ö¶¨Ò壬PVC£¬PVPÍæ¼ÒÒª³ä·ÖÀûÓÃ^^
Chicken Life:                  0//£¨ËÀÒ²²»ÍË£¬¼´¹Ø±Õ±£Ãü¹¦ÄÜ¡£ÎÒÈÏΪ´Ë¹¦ÄÜÔÚר¼Ò¼¶Ä£Ê½Ï¼«ÎªÓÐÓ㬵«ÔÚÒ»°ãģʽÖÐÓ¦É÷Ó㬱ÈÈçk3bb£¬Ëä¿É±£Ãü£¬µ«ÑªµÍ»¹¿ÉÒÔÓôó×ϲ¹£¬ÈôÀÏÊÇ×Ô¶¯Í˳ö¾Í²»ºÃÁË£©
Chicken Life Percent:        20 // 0~100 £¨×Ô¼ºlifeµÍÓÚ20%¼´×Ô¶¯Í˳ö£©
Chicken Hostile Life:          0£¨ËÀÒ²²»ÍË£©
Chicken Hostile Life Percent:    0 // 0~100£¨ÓÐÈ˶ԼºµÐ¶Ô£¬Èô¼º·½lifeµÍÓÚ0%¼´×Ô¶¯Í˳ö£¬Ô­½âÊÍÓÐÎó£©
Chicken Hostile Nearby Life:    0£¨ËÀÒ²²»ÍË£©
Chicken Hostile Nearby Life Percent:    0 // 0~100£¨ÖÜΧÓежԷ½Ê±£¬Èô¼º·½lifeµÍÓÚ0%¼´×Ô¶¯Í˳ö£¬Ô­½âÊÍÓÐÎó£©


ºóÃæÁô´ý²¹³ä£¡
[ ´ËÌù±»cloudwzqÔÚ2008-06-05 09:19ÖØб༭ ]
ÀëÏßcloudwzq
·¢Ìû
848
½ðÇ®
0
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
230 Сʱ
×¢²áʱ¼ä
2008-04-09
×îºóµÇ¼
2008-09-30
Ö»¿´¸Ã×÷Õß 3Â¥ ·¢±íÓÚ: 2008-05-30 09:48:35
Â¥ÏÂÓÐʲôÌرðÒª¹Ø×¢µÄ£¬ÎÒÈç¹ûÖªµÀ£¬½«ÔÚ±¾Â¥ÖðÌõ˵Ã÷£¬½öÏÞÓÚ±¾Ö÷ÌâÎÊÌâ¡£

ÒýÓõÚ11Â¥luo300ÓÚ2008-05-30 11:49·¢±íµÄ  :
ÄÇ×Ô¶¯½ÓÊÜ×é¶ÓÑûÇëÔõôÌí¼Ó

ÓйØй¦ÄܵÄʵÏÖÊÇ»ùÓÚÁíÍâÒ»¸ö¸üеİ汾¡°HackMap2.24 CFG For DIIExp 1.11b¡±¡£


ËùÓÐй¦ÄÜ£¨ÕýÔÚ²âÊÔ¡£¡£¡£¡£¡££©

//й¦ÄÜ
Area Level Toggle: 1,-1    //ÏÔʾ³¡¾°µÈ¼¶
ULC Mask Toggle: 1,-1    // ÆÁ±Î»ð·ç±©¶¯»­ÏÔʾ£¬0¡ª¡ªÕý³£ÏÔʾ»ð·ç±©¶¯»­£»1¡ª¡ª²»ÏÔʾ»ð·ç±©¶¯»­£¨²âÊÔÓÐЧ£©
BugKM Toggle: 0,-1    // ÆôÓÃBUGKM±£»¤£¬0¡ª¡ª½ûÓÃBUGKM±£»¤£»1¡ª¡ª½øÈëNo BugÓÎÏ·£¬10ÃëÖÓ×Ô¶¯Í˳ö
BugKD Toggle: 0,-1    // ÆôÓÃBUGKD±£»¤£¬0¡ª¡ª½ûÓÃBUGKD±£»¤£»1¡ª¡ª½øÈëNo BugÓÎÏ·£¬10ÃëÖÓ×Ô¶¯Í˳ö£»2¡ª¡ª½øÈëNo BugÓÎÏ·£¬KÍê3¸ö·âÓ¡ºó×Ô¶¯Í˳ö
BugKB Toggle: 2,VK_E        // ÆôÓÃBUGKB±£»¤£¬0¡ª¡ª½ûÓÃBUGKB±£»¤£»1¡ª¡ª½øÈëNo BugÓÎÏ·£¬10ÃëÖÓ×Ô¶¯Í˳ö£»2¡ª¡ª½øÈëNo BugÓÎÏ·£¬KÍê5С¶Óºó×Ô¶¯Í˳ö£¨²âÊÔÓÐЧ£¬½¨ÒéÐÂÈË°Ñ£²¸Ä³É£°£¬ÃâµÃÄãÒ»½ø£Á£Ã£Ô£µ¾Í±»ÆÈÍ˳ö£¬ÀÁµÃ¸Ä¸½¼þµØͼÁË£©
AutoMap Toggle: 1,-1    // ½øÈëÓÎÏ·£¬×Ô¶¯´ò¿ªÐ¡µØͼ£¬0¡ª¡ª²»×Ô¶¯´ò¿ªÐ¡µØͼ£»1¡ª¡ª×Ô¶¯¿ªÐ¡µØͼ
Show Ping Toggle: 1, -1  // ÔÚÀ¶/ºìÆ¿ÖÐÐÄÏÔʾÓÎÏ·µÄPing/FPSÖµ£¬0¡ª¡ª²»ÏÔʾPing/FPS£»1¡ª¡ªÏÔʾPing/FPS£¨²âÊÔÓÐЧ£©
Show Exp Toggle: 1, -1  // ÏÔʾÓÎÏ·µÄExpÖµ£¬0¡ª¡ª²»ÏÔʾExp£»1¡ª¡ªÏÔʾExp£¨²âÊÔÓÐЧ£©
Auto Party Toggle: 1,VK_U  // ×Ô¶¯½ÓÊÜ×é¶ÓÑûÇ룬0¡ª¡ª²»×Ô¶¯½ÓÊÜ×é¶ÓÑûÇ룻1¡ª¡ª×Ô¶¯½ÓÊÜ×é¶ÓÑûÇ루²âÊÔÓÐЧ£©



¸½¼þÌṩµÄÊÇ¡°HackMap2.24 CFG¡± µÄÏÂÔØ£¬¾­±¾È˲âÊÔ²¢ÊÔÓóɹ¦£¬±£Ö¤ÎÞ¶¾£¬ÇÒ²»Î¥·´±¾Õ½ÍøµÄ·´bot¹æ¶¨£¬ÇëÐèÒªµÄͬѧ·ÅÐÄÏÂÔØ¡£
¸Ðл¡°ÏûʧÁË¡±ÈÈÐÄÌṩµØͼ°æ±¾£¡£¡£¡£¡£¡£¡
[ ´ËÌù±»cloudwzqÔÚ2008-06-06 11:39ÖØб༭ ]
ÃèÊö:HackMap2.24 CFG £¨Ð¹¦ÄÜʵÏÖ£©
¸½¼þ: map.rar (321 K) ÏÂÔØ´ÎÊý:180
ÀëÏßcloudwzq
·¢Ìû
848
½ðÇ®
0
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
230 Сʱ
×¢²áʱ¼ä
2008-04-09
×îºóµÇ¼
2008-09-30
Ö»¿´¸Ã×÷Õß 4Â¥ ·¢±íÓÚ: 2008-05-30 09:48:57
Èç¹û´ó¼Ò¶Ô×Ô¶¨Òå¿ì½Ý¼üÓÐÐËȤ£¬¿ÉÒÔ¿´¿´d2hackmap.vcbÕâ¸öÎļþ£¬ÔÚÉÏÊöÎļþµÄͬһĿ¼Ï£¬ÀïÃæºÜÏêϸ£¨Ö»ÒªÀïÃ涨Òåµ½µÄ¼üÃû£¬´ó¼Ò¶¼¿ÉÒÔÓã¬Î¨Ò»ÐèҪעÒâÏ£¬Äã´òËãÓõļüÃûÓÐûÓÐÔÚd2hackmap.cfgÖÐÓùý£¬²»¹ýÖظ´Ê¹ÓÃÏàͬµÄ¼üÃûûʲô¹ØϵµÄ£¬¿ÉÒÔʵÏÖ£¬Ò»¼ü¶à¹¦ÄÜ£©¡£

¡£¡£¡£

VK_C: 0x43
VK_D: 0x44
VK_E: 0x45
VK_F: 0x46
VK_G: 0x47
VK_H: 0x48
VK_I: 0x49
VK_J: 0x4A
VK_K: 0x4B
VK_L: 0x4C
VK_M: 0x4D
VK_N: 0x4E
VK_O: 0x4F
¡£¡£¡£


ÒÔÉÏÂÛÊöµÄ¼üÃû¶¼ÊÇÕë¶ÔÆÕͨ¼üÅ̵ģ¬¶Ô±Ê¼Ç±¾µçÄԵļüÃûÕýÔÚÑо¿£¬Ñо¿ºÃÁËÎҷųöÀ´



¶Ô±¦Ê¯ÏÔʾÓÐÌØÊâÒªÇóµÄ×¢ÒâÏÂÒÔÏ´úÂ룺

Òªµ¥¶ÀÏÔʾÑÕÉ«£¬¿ÉÒÔµ¥¶ÀÉèÖÃÒÔÏÂÐУ¬Èç
Item Colours[2051]                  1,0x62      // ÆäÖÐ2051¶ÔÓ¦ÁÑ¿ªµÄ×ϱ¦Ê¯£¬ÆäËü±¦Ê¯ÔÚÏÂÃæÁгö£º


Chipped-Amethyst-----ËéÁѵÄ×ϱ¦Ê¯----gcv--2050
Chipped-Diamond------ËéÁѵÄ×êʯ------gcw--2075
Chipped-Emerald------ËéÁѵÄÂ̱¦Ê¯----gcg--2065
Chipped-Ruby---------ËéÁѵĺ챦ʯ----gcr--2070
Chipped-Saphire------ËéÁѵÄÀ¶±¦Ê¯----gcb--2060
Chipped-Skull--------ËéÁѵÄ÷¼÷Ã------skc--2090
Chipped-Topaz--------ËéÁѵĻƱ¦Ê¯----gcy--2055
Amethyst-------------×ϱ¦Ê¯----------gsv--2052
Diamond--------------×êʯ------------gsw--2077
Emerald--------------Â̱¦Ê¯----------gsg--2067
Ruby-----------------ºì±¦Ê¯----------gsr--2072
Saphire--------------À¶±¦Ê¯----------gsb--2062
Skull----------------÷¼÷Ã------------sku--2092
Topaz----------------»Æ±¦Ê¯----------gsy--2057
Flawless-Amethyst----ÎÞ覴Ã×ϱ¦Ê¯----gzv--2053
Flawless-Diamond-----ÎÞ覴Ã×êʯ------glw--2078
Flawless-Emerald-----ÎÞ覴ÃÂ̱¦Ê¯----glg--2068
Flawless-Ruby--------ÎÞ覴ú챦ʯ----glr--2073
Flawless-Saphire-----ÎÞ覴ÃÀ¶±¦Ê¯----glb--2063
Flawless-Skull-------ÎÞ覴Ã÷¼÷Ã------skl--2093
Flawless-Topaz-------ÎÞ覴ûƱ¦Ê¯----gly--2058
Perfect-Diamond------ÍêÃÀ×êʯ--------gpw--2079
Perfect-Amethyst-----ÍêÃÀ×ϱ¦Ê¯------gpv--2054
Perfect-Sapphire-----ÍêÃÀÀ¶±¦Ê¯------gpb--2064
Perfect-Topaz--------ÍêÃÀ»Æ±¦Ê¯------gpy--2059
Perfect-Ruby---------ÍêÃÀºì±¦Ê¯------gpr--2074
Perfect-Skull--------ÍêÃÀ÷¼÷Ã--------skz--2094
Perfect-Emerald------ÍêÃÀÂ̱¦Ê¯------gpg--2069
£¨¸Ðлheartfree£¬Ìṩ×ÊÁÏ£©




£¨±¸Íü£©

»¶Ó­´ó¼ÒÌáÒâ¼û»òÕß²¹³ä¡£ÓÐÃýÎó¼´µ±Á¢¼´¸ÄÕý
[ ´ËÌù±»cloudwzqÔÚ2008-06-09 21:35ÖØб༭ ]
ÀëÏßhqy
·¢Ìû
1850
½ðÇ®
187
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
260 Сʱ
×¢²áʱ¼ä
2008-04-12
×îºóµÇ¼
2020-05-02
Ö»¿´¸Ã×÷Õß 5Â¥ ·¢±íÓÚ: 2008-05-30 09:52:33
ÎÒÅäºÏÒ»ÏÂÂ¥Ö÷~ÒÔC++½âÎöHACKMAP¶Ô´Ë¹¦ÄܵÄʵÏÖ
ÐÂÈËÇëÌø¹ý,ÎÞÊÓ±¾Â¥Ð»Ð»

¸ù¾ÝÂ¥Ö÷ÒªÇó,°ÑmarsgodµÄ×îаæhackmap¹¤³Ì×÷Ϊ¸½¼þÉÏ´«ÁË,vs2003¿ÉÒÔÖ±½Ó±àÒë,ÕâÀïÃæÓÐÒ»´¦ÎªÅóÓÑÌí¼ÓµÄ×Ô¶¯ºÈÀ¶µÈ¹¦ÄÜ,ÒÑ×¢Ê͵ô,¹©´ó¼Ò²Î¿¼

  ÒÔmarsgod¼ÓÇ¿µÄµÄhackmap×îаæΪÀ¶±¾~

hackmap¼ÓÔØʱºò³õʼ»¯ÕâЩÅäÖÃÎļþ:
  1. PBYTE InitMinimapCellsConfig()
  2. {
  3.     PBYTE pMiniCells = (PBYTE)VirtualAlloc(NULL, anMinimapCellMasks.size(), MEM_COMMIT, PAGE_READWRITE);
  4.     if (pMiniCells) {
  5.         for (int i = 0; i < ARRAYSIZE(aConfigVars); i++) {
  6.             if (!stricmp(aConfigVars[i].szName1, "MinimapCells") ) {
  7.                 aConfigVars[i].pVar = pMiniCells;
  8. //                for (int j = 0; j < nMaxMinimapLevelNo-1; j++) {
  9. //                    *(pMiniCells+j*nMaxMinimapCellNo+j+1) = 1;
  10. //                }
  11.                 return pMiniCells;
  12.             }
  13.         }
  14.     }
  15.     VirtualFree(pMiniCells, 0, MEM_RELEASE);
  16.     return NULL;
  17. }
  18. __try {
  19.         LoadConfig(aConfigVars,ARRAYSIZE(aConfigVars));
  20.         nWardenSigNum = LoadWardenModSignatures(pWardenSig);
  21.         InitMiniCells(p);
  22.     }__finally {
  23.         VirtualFree(p, 0, MEM_RELEASE);
  24.     }
  25. ÆäÖÐaConfigVarsΪ
  26. ConfigVar aConfigVars[] = {
  27.     {"ShowHighestResistToggle", 0,      &tToggleTrueResist, 1, 2, 1},
  28.     {"AreaLevelToggle", 0,        &tToggleAreaLevel, 1, 2, 1},
  29.     {"ULCMaskToggle", 0,        &tToggleULCMask, 1, 2, 1},
  30.     {"BugKMToggle", 0,        &tToggleBugKM, 1, 2, 1},
  31.     {"BugKDToggle", 0,        &tToggleBugKD, 1, 2, 1},
  32.     {"BugKBToggle", 0,        &tToggleBugKB, 1, 2, 1},
  33.     {"AutoMapToggle", 0,        &tToggleAutoMap, 1, 2, 1},
  34.     {"AutoPartyToggle", 0,        &tToggleAutoParty, 1, 2, 1},
  35.     {"ShowPingToggle", 0,        &tToggleShowPing, 1, 2, 1},
  36.     {"ShowExpToggle", 0,        &tToggleShowExp, 1, 2, 1},
  37.     {"ShowPETExpToggle", 0,        &tToggleShowPetExp, 1, 2, 1},
  38.     {"RevealActAutomapKey", 0,          &vkRevealAct, 1, 1, 1},
  39.     {"RevealLevelAutomapKey", 0,        &vkRevealLevel, 1, 1, 1},
  40.     {"CenterMapScrollKey", 0,          &vkCenterMap, 1, 1, 1},
  41.     {"QuickExitGameKey", 0,            &vkExitGame, 1, 1, 1},
  42.     {"QuickNextGameKey", 0,            &vkQuickNextGame, 1, 1, 1},
  43.     {"QuickBackToTownKey", 0,            &vkBackToTown, 1, 1, 1},
  44.     {"ViewEquipmentKey", 0,            &viewingInventory.vkKeyCode, 1, 1, 1},
  45.     // new, added by sting
  46.     {"FirstPlayerStatKey", 0,            &vkFirstPlayerStat, 1, 1, 1},
  47.     {"NextPlayerStatKey", 0,            &vkNextPlayerStat, 1, 1, 1},
  48.     {"PreviousPlayerStatKey", 0,        &vkPrevPlayerStat, 1, 1, 1},
  49.     {"ViewPlayerStatsKey", 0,            &viewingStats.vkKeyCode, 1, 1, 1},
  50. //    {"ViewPlayerSkillsKey", 0,            &viewingSkills.vkKeyCode, 1, 1, 1},
  51. //    {"ViewPlayerPetKey", 0,                &viewingPet.vkKeyCode, 1, 1, 1},
  52. //    {"ViewPlayerQuestInfoKey", 0,        &viewingQuestInfo.vkKeyCode, 1, 1, 1},
  53.     {"ExtraworkDllAction", 0,            &fExtraworkDllAction, 1, 1, 1},
  54.     {"VersionCheckingDllAction", 0,        &fVersionCheckingDllAction, 1, 1, 1},
  55.     {"UnknownWardenModAction", 0,        &fWardenAction, 1, 1, 1},
  56.     {"AutoNextGameName", 0,                &fAutoNextGameName, 1, 1, 1},
  57.     {"AutoNextGamePassword", 0,                &fAutoNextGamePassword, 1, 1, 1},
  58.     {"AutoRevealAct", 0,                &fAutoRevealAct, 1, 1, 1},
  59.     {"LogInGameMessage", 0,                &fLogInGameMessage, 1, 1, 1},
  60.     {"MessageLogToggle", 0,                &fLogInGameMessage, 1, 1, 1},
  61.     {"LocaleMPQ", 0,                    &szLocaleMPQ, 0, 1, 1},
  62.     {"LocalizationSupport", 0,                &fLocalizationSupport, 1, 1, 1},
  63.     {"RightClickSwapToggle", 0,                &tToggleRightClickSwap, 1, 2, 1},
  64.     {"UseCustomFontToggle", 0,                &tToggleUseCustomFont, 1, 2, 1},
  65.     {"LayerLevelNoToggle", 0,                &tToggleLayerLevelNo, 1, 2, 1},
  66.     // end
  67.    
  68.     {"WeatherToggle", "FullVisualsToggle", &tToggleFullVisuals, 1, 2, 1},
  69.     // new
  70.     {"InfravisionToggle", "FullVisualsToggle", &tToggleInfravision, 1, 2, 1},
  71.     {"LightRadiuToggle", "FullVisualsToggle", &tToggleLightRadiu, 1, 2, 1},
  72.     {"ScreenShakeToggle", "FullVisualsToggle", &tToggleScreenshake, 1, 2, 1},
  73.     {"HiddenCorpseToggle", "FullVisualsToggle", &tToggleHiddenCorpse, 1, 2, 1},
  74.     // end
  75.     {"AutomapMonstersToggle", 0,        &tToggleAutomapMonsters, 1, 2, 1},
  76.     {"AutomapLevelNamesToggle", 0,      &tToggleAutomapLevelNames, 1, 2, 1},
  77.     {"AutomapChestsToggle", 0,          &tToggleAutomapChests, 1, 2, 1},
  78.    
  79.     {"AutomapItemsToggle", 0,          &tToggleAutomapItems, 1, 2, 1},
  80.     // new
  81.     {"AutomapCorpseToggle", 0,          &tToggleAutomapCorpse, 1, 2, 1},
  82.     {"AutomapActiveRoomToggle", 0,      &tToggleAutomapActiveRoom, 1, 2, 1},
  83.     {"AutomapReadyRoomToggle", 0,      &tToggleAutomapReadyRoom, 1, 2, 1},
  84.     // end
  85.     {"HiddenItemsToggle", 0,            &tToggleHiddenItems, 1, 2, 1},
  86.     {"ScrollMapToggle", 0,              &tToggleScrollMap, 1, 2, 1},
  87.     // new
  88.     {"AutomapScreenAreaToggle", 0,              &tToggleAutomapScreenArea, 1, 2, 1},
  89.     // end
  90.     // not exist
  91.     {"AutomapMissilesToggle", 0,        &tToggleAutomapMissiles, 1, 2, 1},
  92.     // end
  93.     {"MonsterTCToggle", 0,              &tToggleMonsterTC, 1, 2, 1},
  94.     // new
  95.     {"MonsterLevelToggle", 0,              &tToggleMonsterLevel, 1, 2, 1},
  96.     {"MonsterResistsToggle", 0,              &tToggleMonsterResists, 1, 2, 1},
  97.     // end
  98.     {"PermShowItemsToggle", 0,          &tTogglePermShowItems, 1, 2 ,1},
  99.     // new
  100.     {"GameTimeToggle", 0,          &tToggleGameTime, 1, 2 ,1},
  101.     {"ClockToggle", 0,          &tToggleClock, 1, 2 ,1},
  102.     {"PermShowOrbsToggle", 0,          &tTogglePermShowOrb, 1, 2 ,1},
  103.     {"InputLineToggle", 0,          &tToggleInputLine, 1, 2 ,1},
  104.     {"OutTownSelectToggle", 0,          &tToggleOutTownSelect, 1, 2 ,1},
  105.     // end
  106.     {"AutomapPartyDefault", 0,          &fAutomapPartyDefault, 1, 1, 1},
  107.     {"AutomapNamesDefault", 0,          &fAutomapNamesDefault, 1, 1, 1},
  108.     {"MiniShrinesToggle", 0,            &tToggleMiniShrine, 1, 2, 1},
  109.     {"LevelNameColour", 0,              &nCaveNameTextCol, 1, 1, 1},
  110.     {"StaffTombLevelDesc", 0,          &szStaffTombLvlDesc, 0, 1, 1},
  111.     {"DiagonalScrollToggle", 0,        &tToggleDiagonalScroll, 1, 2, 1},
  112.     {"MapScrollSpeed", 0,              &nMapScrollSpeed, 1, 1, 1},
  113.     {"LifeBarTransparency", 0,          &nLifeBarTrans, 1, 1, 1},
  114.     {"LifeBarColour", 0,                &nLifeBarColour, 1, 1, 1},
  115.     {"SocketProtectToggle", 0,          &tToggleSocketProtect, 1, 2, 1},
  116.     // new
  117.     {"ChickenLifeToggle", 0,          &tToggleChickenLife, 1, 2, 1},
  118.     {"ChickenHostileToggle", 0,          &tToggleChickenHostile, 1, 2, 1},
  119.     {"ChickenHostileNearbyToggle", 0,          &tToggleChickenHostileNearby, 1, 2, 1},
  120.     {"ChickenLife", 0,          &nChickenLife, 4, 1, 1},
  121.     {"ChickenHostileLife", 0,          &nChickenHostileLife, 4, 1, 1},
  122.     {"ChickenHostileNearbyLife", 0,          &nChickenHostileNearbyLife, 4, 1, 1},
  123.     {"ChickenLifePercent", 0,          &nChickenLifePercent, 4, 1, 1},
  124.     {"ChickenHostileLifePercent", 0,          &nChickenHostileLifePercent, 4, 1, 1},
  125.     {"ChickenHostileNearbyLifePercent", 0,          &nChickenHostileNearbyLifePercent, 4, 1, 1},
  126.     // end
  127.     {"UnitBlobFiles", 0,                &apUnitBlobFiles, 0, 1, ARRAYSIZE(apUnitBlobFiles)},
  128.     {"PlayerBlobFile", 0,              &apUnitBlobFiles[0], 0, 1, 1},
  129.     {"MonsterBlobFile", 0,              &apUnitBlobFiles[1], 0, 1, 1},
  130.     {"ObjectBlobFile", 0,              &apUnitBlobFiles[2], 0, 1, 1},
  131.     {"MissileBlobFile", 0,              &apUnitBlobFiles[3], 0, 1, 1},
  132.     {"ItemBlobFile", 0,                &apUnitBlobFiles[4], 0, 1, 1},
  133.     // new
  134.     {"AutomapActiveRoomColour", 0,            &anAutomapActiveRoomColors, 1, 1, ARRAYSIZE(anAutomapActiveRoomColors)},
  135.     {"AutomapReadyRoomColour", 0,            &anAutomapReadyColors, 1, 1, ARRAYSIZE(anAutomapReadyColors)},
  136.     {"AutomapScreenAreaColour", 0,            &anAutomapScreenColors, 1, 1, ARRAYSIZE(anAutomapScreenColors)},
  137.     // end
  138.     {"ClosedChestColour", 0,            &anClosedChestColors, 1, 1, ARRAYSIZE(anClosedChestColors)},
  139.     {"LockedChestColour", 0,            &anLockedChestColors, 1, 1, ARRAYSIZE(anLockedChestColors)},
  140.     {"HostileMissileColour", 0,        &anHostileMissileColors, 1, 1, ARRAYSIZE(anHostileMissileColors)},
  141.     {"GuidedMissileColour", 0,          &anGuidedMissileColors, 1, 1, ARRAYSIZE(anGuidedMissileColors)},
  142.     {"TracerMissileColour", 0,          &anTracerMissileColors, 1, 1, ARRAYSIZE(anTracerMissileColors)},
  143.     {"OtherMissileColour", 0,          &anOtherMissileColors, 1, 1, ARRAYSIZE(anOtherMissileColors)},
  144.     {"MissileColours", 0,              &anMissileColours, 1, 1, ARRAYSIZE(anMissileColours)},
  145.     // new
  146.     {"MissileCorpse", 0,              &afMissileCorpses, 1, 1, ARRAYSIZE(afMissileCorpses)},
  147.     {"EtherealItemPrefix", 0,              &szEtherealItemPrefix, 0, 1, 1},
  148.     {"EtherealItemPostfix", 0,              &szEtherealItemPostfix, 0, 1, 1},
  149.     // end
  150.     {"RuneNumbersToggle", 0,            &tToggleRuneNumbers, 1, 2, 1},
  151.     {"SocketNumbersToggle", 0,          &tToggleSocketNumbers, 1, 2, 1},
  152.     // new
  153.     {"ItemLevelsToggle", 0,          &tToggleItemLevel, 1, 2, 1},
  154.     {"ItemValueToggle", 0,          &tToggleItemValue, 1, 2, 1},
  155.     {"ItemValueNpc", 0,          &nItemValueNpc, 4, 1, 1},
  156.     {"ItemIndexsToggle", 0,          &tToggleItemIndex, 1, 2, 1},
  157.     {"UnitNumbersToggle", 0,          &tToggleUnitNumber, 1, 2, 1},
  158.     {"ViewSocketablesToggle", 0,          &tToggleViewSocketable, 1, 2, 1},
  159.     {"ItemBasicStatsToggle", 0,          &tToggleItemBasicStat, 1, 2, 1},
  160.     // end
  161.     {"QuestItemColour", 0,              &nQuestItemColour, 1, 1, 1},
  162.     // new
  163.     {"HiddenItemLevel", 0,              &nHiddenItemLevel, 1, 1, 1},
  164.     // end
  165.     // new, added by sting
  166.     {"KeepGameWindowToggle", 0,        &tToggleKeepGameWindow, 1, 2, 1},
  167.     {"MinimapToggle", 0,                &tToggleMinimap, 1, 2, 1},
  168.     {"MinimapCells", 0,                    (void*)-1, 1, 1, {nMaxMinimapLevelNo, nMaxMinimapCellNo} },
  169. //    {"MinimapCellColour", 0,            &nMinimapCellCol, 1, 1, 1},
  170.     {"MinimapCellColour", 0,            &nMinimapCellCol[0], 1, 1, 1},
  171.     {"MinimapCellColour2", 0,            &nMinimapCellCol[1], 1, 1, 1},
  172.     {"MinimapSize", 0,                    &nMinimapSize, 1, 1, 1},
  173.     {"EnterGameSound", 0,                &fEnterGameSound, 1, 1, 1},
  174.     {"ServerIpToggle", 0,                &tToggleServerIp, 1, 2, 1},
  175. #ifdef ENABLE_CATCH_EXECEPTION
  176.     // for debug only
  177.     {"CrashDumpFile", 0,                &nDumpType, 4, 1, 1},
  178.     // end
  179. #endif
  180.    
  181.     // not exist
  182.     {"RareItemColour", 0,              (char *)anItemColours+5*2*2, 1, 2, {ARRAYSIZE(anItemColours), 8, 2, 7} },
  183.     {"UniqueItemColour", 0,            (char *)anItemColours+6*2*2, 1, 2, {ARRAYSIZE(anItemColours), 8, 2, 7} },
  184.     // end
  185.     {"ItemColours", 0,                  &anItemColours, 1, 2, {ARRAYSIZE(anItemColours), 8, 2, 7 } }, // 0x0BB8, 8, 2, 0x4007
  186.     {"WeaponColours", 0,                &anItemWeaponCols, 1, 2, {ARRAYSIZE(anItemWeaponCols), 8, 2, 7 } }, // 0x3E8, 8, 2, 0x4007
  187.     {"ArmorColours", 0,                &anItemArmorCols, 1, 2, {ARRAYSIZE(anItemArmorCols), 8, 2, 7 } }, // 0x3E8, 8, 2, 0x4007
  188.     {"MiscItemColours", 0,              &anItemMiscCols, 1, 2, {ARRAYSIZE(anItemMiscCols), 8, 2, 7 } }, // 0x3E8, 8, 2, 0x4007
  189.     {"CharmColours", 0,                &anItemMiscCols[95], 1, 2, {3, 8, 2, 7} }, // 0x3, 8, 2, 0x4007
  190.     {"RuneColours", 0,                  &anRuneColours, 1, 2, ARRAYSIZE(anRuneColours)}, // 0x64
  191.     {"RejuvPotColours", 0,              &anItemMiscCols[7], 1, 2,  {2, 8, 2, 7} },
  192.     {"HealingPotColours", 0,            &anItemMiscCols[79], 1, 2, {5, 8, 2, 7} },
  193.     {"ManaPotColours", 0,              &anItemMiscCols[84], 1, 2, {5, 8, 2, 7} },
  194.     {"AmethystColours", "GemColours",  &anItemMiscCols[49], 1, 2, {5, 8, 2, 7} },
  195.     {"TopazColours", "GemColours",      &anItemMiscCols[54], 1, 2, {5, 8, 2, 7} },
  196.     {"SapphireColours", "GemColours",  &anItemMiscCols[59], 1, 2, {5, 8, 2, 7} },
  197.     {"EmeraldColours", "GemColours",    &anItemMiscCols[64], 1, 2, {5, 8, 2, 7} },
  198.     {"RubyColours", "GemColours",      &anItemMiscCols[69], 1, 2, {5, 8, 2, 7} },
  199.     {"DiamondColours", "GemColours",    &anItemMiscCols[74], 1, 2, {5, 8, 2, 7} },
  200.     {"SkullColours", "GemColours",      &anItemMiscCols[89], 1, 2, {5, 8, 2, 7} },
  201.     {"GoodGoldNumber", 0,              &nGoldGoodNum, 4, 1, 1},
  202.     {"GoodGoldColour", 0,              &nGoldGoodCol, 1, 2, 1},
  203.     {"PoorGoldColour", 0,              &nGoldPoorCol, 1, 2, 1},
  204.     {"MonsterDescColour", 0,            &nMonsterTextCol, 1, 1, 1},
  205.     {"MonsterDeathAnims", 0,            &afMonsterDeathAnims, 1, 1, ARRAYSIZE(afMonsterDeathAnims)},
  206.     {"MonsterColours", 0,              &anMonsterColours, 1, 1, ARRAYSIZE(anMonsterColours)},
  207.     // new
  208.     {"MonsterCorpseColour", 0,          &anMonsterCorpseColors, 1, 1, ARRAYSIZE(anMonsterCorpseColors)},
  209.     {"DangerousMonster", 0,              &anDangerousMonster, 1, 2, ARRAYSIZE(anDangerousMonster)},
  210.     {"DangerousMonsterChickenToggle", 0, &tToggleChickenDangerousMonster, 1, 2, 1},
  211.     {"DangerousMonsterAction", 0,        &fDangerousMonsterAction, 1, 1, 1},
  212.     // end
  213.     {"NormalMonsterColour", 0,          &anMonsterNormalColors, 1, 1, ARRAYSIZE(anMonsterNormalColors)},
  214.     {"BossMonsterColour", 0,            &anMonsterBossColors, 1, 1, ARRAYSIZE(anMonsterBossColors)},
  215.     {"MinionMonsterColour", 0,          &anMonsterMinionColors, 1, 1, ARRAYSIZE(anMonsterMinionColors)},
  216.     {"ChampionMonsterColour", 0,        &anMonsterChampColors, 1, 1, ARRAYSIZE(anMonsterChampColors)},
  217.     {"SuperUniqueColour",        0,      &anSuperUniqueColors, 1, 1, ARRAYSIZE(anSuperUniqueColors)},
  218.     {"Act5BarbarianColour", 0,          &anMonsterColours[522], 1, 1, 1},
  219.     {"NeutralPlayerColour", 0,          &anNeutralPlayerColors, 1, 1, ARRAYSIZE(anNeutralPlayerColors)},
  220.     {"HostilePlayerColour", 0,          &anHostilePlayerColors, 1, 1, ARRAYSIZE(anHostilePlayerColors)},
  221.     {"PartyPlayerTextColour", 0,          &anPartyPlayerTextColour, 1, 2, 1},
  222.     {"NeutralPlayerTextColour", 0,          &anNeutralPlayerTextColour, 1, 2, 1},
  223.     {"HostilePlayerTextColour", 0,          &anHostilePlayerTextColour, 1, 2, 1},
  224.     // new
  225.     {"NormalCorpseColour", 0,          &anNormalCorpseColors, 1, 1, ARRAYSIZE(anNormalCorpseColors)},
  226.     {"BossCorpseColour", 0,          &anBossCorpseColors, 1, 1, ARRAYSIZE(anBossCorpseColors)},
  227.     {"MinionCorpseColour", 0,          &anMinionCorpseColors, 1, 1, ARRAYSIZE(anMinionCorpseColors)},
  228.     {"ChampionCorpseColour", 0,          &anChampionCorpseColors, 1, 1, ARRAYSIZE(anChampionCorpseColors)},
  229.     // end
  230.     {"EnchantmentDescs", 0,            &aszEnchantDescs, 0, 1, ARRAYSIZE(aszEnchantDescs)},
  231.     {"AuraDescs", 0,                    &aszAuraDescs, 0, 1, ARRAYSIZE(aszAuraDescs)},
  232.     {"ImmunityDescs", 0,                &aszImmuneDescs, 0, 1, ARRAYSIZE(aszImmuneDescs)},
  233.     {"ExtraStrongDesc", 0,              &aszEnchantDescs[5], 0, 1, 1},
  234.     {"ExtraFastDesc", 0,                &aszEnchantDescs[6], 0, 1, 1},
  235.     {"CursedDesc", 0,                  &aszEnchantDescs[7], 0, 1, 1},
  236.     {"MagicResistantDesc", 0,          &aszEnchantDescs[8], 0, 1, 1},
  237.     {"FireEnchantedDesc", 0,            &aszEnchantDescs[9], 0, 1, 1},
  238.     {"ChampionDesc", 0,                &aszEnchantDescs[16], 0, 1, 1},
  239.     {"LightningEnchantedDesc", "LightEnchantedDesc",      &aszEnchantDescs[17], 0, 1, 1},
  240.     {"ColdEnchantedDesc", 0,            &aszEnchantDescs[18], 0, 1, 1},
  241.     {"ThiefDesc", 0,                    &aszEnchantDescs[24], 0, 1, 1},
  242.     {"ManaBurnDesc", 0,                &aszEnchantDescs[25], 0, 1, 1},
  243.     {"TeleportationDesc", 0,            &aszEnchantDescs[26], 0, 1, 1},
  244.     {"SpectralHitDesc", 0,              &aszEnchantDescs[27], 0, 1, 1},
  245.     {"StoneSkinDesc", 0,                &aszEnchantDescs[28], 0, 1, 1},
  246.     {"MultipleShotsDesc", 0,            &aszEnchantDescs[29], 0, 1, 1},
  247.     {"GhostlyDesc", 0,                  &aszEnchantDescs[36], 0, 1, 1},
  248.     {"FanaticDesc", 0,                  &aszEnchantDescs[37], 0, 1, 1},
  249.     {"PossessedDesc", 0,                &aszEnchantDescs[38], 0, 1, 1},
  250.     {"BerserkerDesc", 0,                &aszEnchantDescs[39], 0, 1, 1},
  251.     {"MightAuraDesc", 0,                &aszAuraDescs[0], 0, 1, 1},
  252.     {"HolyFireAuraDesc", 0,            &aszAuraDescs[1], 0, 1, 1},
  253.     {"BlessedAimAuraDesc", 0,          &aszAuraDescs[2], 0, 1, 1},
  254.     {"HolyFreezeAuraDesc", 0,          &aszAuraDescs[3], 0, 1, 1},
  255.     {"HolyShockAuraDesc", 0,            &aszAuraDescs[4], 0, 1, 1},
  256.     {"ConvictionAuraDesc", 0,          &aszAuraDescs[5], 0, 1, 1},
  257.     {"FanaticismAuraDesc", 0,          &aszAuraDescs[6], 0, 1, 1},
  258.     {"PhysicalImmunityDesc", 0,        &aszImmuneDescs[0], 0, 1, 1},
  259.     {"MagicImmunityDesc", 0,            &aszImmuneDescs[1], 0, 1, 1},
  260.     {"FireImmunityDesc", 0,            &aszImmuneDescs[2], 0, 1, 1},
  261.     {"LightningImmunityDesc", 0,        &aszImmuneDescs[3], 0, 1, 1},
  262.     {"ColdImmunityDesc", 0,            &aszImmuneDescs[4], 0, 1, 1},
  263.     {"PoisonImmunityDesc", 0,          &aszImmuneDescs[5], 0, 1, 1},
  264. };


ÒÔÏÂÊÇhackmap¼ì²âÓÎÏ·ÖмüÅÌ°´¼üµÄʵÏÖ´úÂë:
  1. void __fastcall KeydownPatch(BYTE keycode, BYTE repeat)
  2. {
  3.     if ((keycode == (BYTE)-1) || !keycode) return;
  4.     if (keycode == VK_LEFT) ScrollMap(-2, 0);
  5.     if (keycode == VK_RIGHT) ScrollMap(+2, 0);
  6.     if (keycode == VK_UP) ScrollMap(0, -2);
  7.     if (keycode == VK_DOWN) ScrollMap(0, +2);
  8.     if (tToggleDiagonalScroll.flag) {
  9.         if (keycode == VK_HOME) ScrollMap(-2, -1);
  10.         if (keycode == VK_END) ScrollMap(-2, +1);
  11.         if (keycode == VK_PRIOR) ScrollMap(+2, -1);
  12.         if (keycode == VK_NEXT) ScrollMap(+2, +1);
  13.     }
  14.     if (repeat) return;
  15.     if (keycode == vkRevealAct) RevealAutomapAct();
  16.     if (keycode == vkRevealLevel) RevealAutomapLevel();
  17.     if (keycode == vkCenterMap) CenterMap();
  18.     if (keycode == vkExitGame) D2ExitGame(0);
  19.     if (keycode == vkQuickNextGame) D2QuickNextGame();
  20.     if (keycode == vkBackToTown || fBackToTown == 2) {
  21.         fBackToTown = 0;
  22.         BackToTown();
  23.     }
  24.     if (keycode == vkFirstPlayerStat) SetCurrentPlayerStat(0);
  25.     if (keycode == vkNextPlayerStat) SetCurrentPlayerStat(1);
  26.     if (keycode == vkPrevPlayerStat) SetCurrentPlayerStat(-1);
  27.     for (int i = 0; i < ARRAYSIZE(viewingList); i++) {
  28.         if (keycode == viewingList[i]->vkKeyCode)
  29.             viewingList[i]->OpenView();
  30.     }
  31.    
  32.     char buf[512];
  33.     buf[0] = '\0';
  34.     ToggleVar *tv = &pTogglesListStart;
  35.     while (tv <= &pTogglesListEnd) {
  36.         if (keycode == tv->key) {
  37.             tv->flag = !tv->flag;
  38.             if (tv->func) (tv->func)();
  39.             if (tv->desc)
  40.                 wsprintfA(buf+strlen(buf), ", %s %s", tv->desc, tv->flag ? "on" : "off");
  41.         }
  42.         tv++;
  43.     }
  44.     if (buf[0] != '\0') {
  45.         wchar_t wbuf[512];
  46.         D2CLIENT_PrintGameStringAtBottomLeft(wsprintfW2(wbuf, "<Hackmap>: %s.", &buf[2]), 0);
  47.     }
  48. }


µÚÒ»¸ö¹¦ÄÜ~

Quick Exit Game Key:            VK_OEM_MINUS //´ó¼üÅÌ"-" £¨±íʾÄã°´´ó¼üÅÌÉÏ"-"¿ÉÒÔÖ±½ÓÍ˳öÄãÕýÔÚÍæµÄÓÎÏ·£¬»Øµ½ÒÔÏÂÒ³Ã棩  Õâ¸ö¹¦ÄÜÊÇÕâÀïµÄ:

if (keycode == vkExitGame) D2ExitGame(0);

ÇÒÓÐvoid D2ExitGame(DWORD flag)
{

    D2CLIENT_fExitAppFlag = flag;
//    D2CLIENT_SetExitApp(flag);
    SendMessage(D2GFX_GetHwnd(), WM_CLOSE, 0, 0);
}
¾ÍÊÇ˵¸øD2´°¿Ú·¢Ò»¸ö´°¿Ú¹Ø±ÕµÄÏûÏ¢µÄ»°,ÈôÔÚÓÎÏ·PALYER״̬~Ôò»áÍ˳öµ½´óÌü~


µÚ2¸ö¹¦ÄÜ~
Quick Next Game Key:        VK_OEM_PLUS //´ó¼üÅÌ"+" £¨±íʾÄã°´´ó¼üÅÌÉÏ"+"¿ÉÒÔÖ±½ÓÍ˳öÄãÕýÔÚÍæµÄÓÎÏ·£¬»Øµ½ÒÔÉÏÒ³Ãæ¡£²»Í¬µÄÊÇ£¬Äã½ÓÏÂÀ´´´½¨ÓÎÏ·»òÕß½øÈëÓÎÏ·£¬ÓÎÏ·Ãû×ÖºóÃæµÄÊý×Ö»á±ÈÇ°Ãæ¼ÓÁË1£¬³£¼ûÓÚ¸ú×ŶÓÎékbaal Ç°µÄ5С¶Ó²ä¾­Ñé¡£ÐèҪעÒâµÄÊÇÓÎÏ·Ãû×ֵĸñʽΪ¡°xxxÊý×Ö¡±£¬±ÈÈçdykb01£¬emkb001µÈ£¬Èç¹ûÓÎÏ·Ãûºó²»´øÊý×Ö£¬ÔòЧ¹û¸úÉÏÃæ´ó¼üÅÌÉÏ"- "Ч¹ûÒ»Ñù£©

    if (keycode == vkQuickNextGame) D2QuickNextGame();
ÇÒÓÐwchar_t wszGameName[32];
void D2QuickNextGame()
{
    wchar_t *nptr = wszGameName+wcslen(wszGameName)-1;
    wchar_t *endptr = nptr+1;
    while (nptr >= wszGameName && (*nptr == L'0' || iswdigit(*nptr))) {
        --nptr;
    }
    if (nptr < endptr-1) {
        long n = wcstol(++nptr, &endptr, 10);
        wchar_t temp[32];
        wsprintfW(temp, L"%d", ++n);
        wchar_t *nptr2 = endptr-wcslen(temp);
        if (nptr < nptr2) nptr = nptr2;
        wcscpy(nptr, temp);
    }

    D2ExitGame(0);
}¿É¼þÂ¥Ö÷µÄ·ÖÎö»¹ÊǺܾ«×¼µÄ,ÒòΪÕâ¸ö¿ìËÙÏÂÒ»·¿¼äº¯Êý±¾Éí×îºó¾Íµ÷ÓÃÁË¿ìËÙÍ˳öº¯Êý~D2ExitGame(0);

ÓÉ´ËÒý·¢ÁËHACKMAPµÄ1¸öBUG
ÎÒÃÇ×¢Òâ¿ìËÙÍ˳öº¯ÊýºÍ¿ìËÙһϷ¿¼äº¯Êý¶¼¸øD2´°¿Ú±¾Éí·¢ÁËÒ»´ÎWM_CLOSEÏûÏ¢,ÄÇôÈç¹ûͬʱ°´ÏÂ+ºÍ-(µ±È»Î¢¹Û½Ç¶È¿´²»´æÔÚͬʱ,ÄÇô¾ÍÊÇÄǸöÒâ˼֪µÀ¾ÍÐÐÁË- -)D2´°¿ÚÏûʧ,½ø³ÌÈ´´æÔÚ.
Õâ´ó¸ÅÊÇÒòΪµÚÒ»´Î½Óµ½ÏûÏ¢Í˳öÁËPLAYER״̬,¶øµÚ¶þ´ÎÊÇÔÚ´óÌü»òÕßÆäËû״̬½Óµ½µÄWM_CLOSEÏûÏ¢,´°¿Ú¿ÉÄÜÕæµÄÏú»ÙÁË~µ«ÊÇ°´°µºÚµÄÂß¼­²¢Ã»ÓÐDestroyWindow()

µÚÈý¸ö¹¦ÄÜ~
View Equipment Key:            VK_K //"K" £¨ÔÚÓÎÏ·ÖУ¬°ÑÊó±ê·ÅÔÚÈËÎïÉíÉÏ£¬Í¬Ê±°´¡°k¡±¼ü¾Í¿ÉÒÔ¿´È˼ÒÉíÉϵÄ×°±¸£¬µ«¿´²»µ½È˼ÒÎïÆ·À¸ÀïµÄ¶«Î÷£¬Ò²¿´²»µ½È˼ÒPetµÄ×°±¸£©

Õâ¸öÎÒÃÇÒªÏÈ¿´Ò»¸öÀà
class ViewingInventoryInfo : public ViewingPlayerInfo
{
public:
    virtual void CreateUI() { D2CLIENT_SetUiVar(UIVAR_INVENTORY, 0, 1); }
    virtual void DestroyUI() { D2CLIENT_SetUiVar(UIVAR_INVENTORY, 1, 1); }
    virtual DWORD GetUI() { return D2CLIENT_GetUiVar(UIVAR_INVENTORY); }
};
ËûµÄ°Ö°ÖÊÇ
class ViewingPlayerInfo
{
public:
    void OpenView();
    void ViewLoop();
    ViewingPlayerInfo():nPlayerId(-1),nUnitType(-1),nUnitNo(-1),vkKeyCode(-1){}
    BOOL TestUnit(UnitAny *unit);
    virtual void CreateUI() = 0;
    virtual void DestroyUI() = 0;
    virtual DWORD GetUI() = 0;
private:
    friend UnitAny * __stdcall ViewingGetUnit(ViewingPlayerInfo* vpi, UnitAny *unitdef);
private:
    DWORD nPlayerId;
    DWORD nUnitType;
    DWORD nUnitNo;
public:
    BYTE  vkKeyCode;
};
Õâ¸ö¹¦ÄÜʵÏֵĸ´ÔÓһЩ~×ÜÖ®¾ÍÊǵõ½¶Ô·½Êý¾ÝÈ»ºóÓðµºÚ×ÔÉíµÄº¯ÊýÏÔʾ³öÀ´~ºÃÏóÊÇ·Ï»°..

µÚËĸö¹¦ÄÜ~

Quick Back To Town Key:    VK_BACK //Í˸ñ¼ü"¡û" £¨Í˸ñ¼üÈÃÄãÒ»¼ü»Ø³Ç£¬Ç°ÌáÊÇÄãµÄÎïÆ·À¸ÀïÓлسÇÊ飨²»ÊǻسǾíÖᣩ£¬»òÕßÔÚû´ò¿ªºÐ×ÓµÄÇ°ÌáÏ£¬°Ñ»Ø³ÇÊéÈÓ½øºÐ×Ó£©

    if (keycode == vkBackToTown || fBackToTown == 2) {
        fBackToTown = 0;
        BackToTown();
    }
ÇÒÓÐvoid BackToTown()
{
    UnitAny *pla = D2CLIENT_GetPlayerUnit();
    if(TestPlayerInTown(pla)) return;

    fBackToTown = 1;
    InstallD2Patchs(aPacketRecvPatchs, aPacketRecvPatchs+ARRAYSIZE(aPacketRecvPatchs));

    BYTE castTP1[9] = {0x3C};
    *(DWORD*)&castTP1[1] = 0xDC;
    *(DWORD*)&castTP1[5] = 0xFFFFFFFF;
    D2NET_SendPacket(sizeof(castTP1), 0, castTP1);
   
    BYTE castTP2[5] = {0x0C};
    *(WORD*)&castTP2[1] = pla->pPos->targetx;
    *(WORD*)&castTP2[3] = pla->pPos->targety;
    D2NET_SendPacket(sizeof(castTP2), 0, castTP2);
}
Èç¹ûµ±Ç°ÔÚ³ÇÀﻹ»Ø¸öÄñ?¶÷ ÌáÇ°½áÊøº¯Êý¹ý³Ì
²»È»µÄ»°½Ù³ÖÒ»¸öÊý¾Ý°ü,×÷ÓÃÒ»»á˵

È»ºó·¢Êý¾Ý±¨¸ø·þÎñÆ÷
D2NET_SendPacket(sizeof(castTP1), 0, castTP1);
Õâ¸ö°Ñµ±Ç°¼¼ÄÜÇл»Îª»Ø³ÌÊé

È»ºóÔÙ·¢°ü
D2NET_SendPacket(sizeof(castTP2), 0, castTP2);
Õâ¸öÔÚÖ¸¶¨×ø±êʹÓûسÉÊé¼¼ÄÜ,

È»ºóÕ¦»ØÈ¥Äó?
ÎÒÃǽٳÖ(ÊÇhackmap- -)µÄº¯ÊýÖÐÉóÅз¢¹ýÀ´µÄÊý¾Ý,Èç¹ûÊÇÓиöÃÅ¿ª¿ªÁËÕâ¸öÊý¾Ý,¾Í´ÓÕâ¸öÃŽøÈ¥   

ÈçÏÂ:
void __fastcall GamePacketReceivedIntercept(BYTE* aPacket, DWORD aLength)
{
    if(fBackToTown && aLength > 6 && *(WORD*)&aPacket[0] == 0x251 && *(WORD*)&aPacket[6] == 0x3B)
    {
        ResetPacketRecvIntercept();
        BYTE castMove[9] = {0x13};
        *(DWORD*)&castMove[1] = 2;
        *(DWORD*)&castMove[5] = *(DWORD*)&aPacket[2]; // portal ID
        D2NET_SendPacket(sizeof(castMove), 0, castMove);
    }
}
·¢ÏÖÊǸöÃÅ¿ªÁË,¾Í·¢¸ö°ü,½øÈ¥ÁË~
D2NET_SendPacket(sizeof(castMove), 0, castMove);

ÓÉ´ËÒý·¢HACKMAPµÄ2¸öBUG

Ò».Èç¹ûûÓлسÌÊé,Äã°´Á˻س̼þ,Éí±ßÈË¿ª¸öÃÅ,ÄãÒ²¸ú×Å»ØÈ¥ÁË- -
¶þ.ÔÚÓÎÏ·Ö÷Ñ­»·½Ù³Öº¯ÊýÖÐ,È¡ÏûÁËÕâÒ»½Ó°ü½Ù³Ö¹ý³Ì,ÕâÊÇÕý³£µÄ,ÎÊÌâÊDz¢²»Äܱ£Ö¤´ËÈ¡Ïû¹ý³ÌÔçÓÚ½Ù³Ö¹ý³Ì´¥·¢,ÄÇôËùÒÔÓÐʱºò...Äã°´»Ø³Ì¼û,¿ªÁËÃÅÁË,Äã¹ÒÁË...ÕâʱºòÄ㸴»î,»á´ÓÃÅ×Ô¶¯½øÈ¥....ÈÝÒ×·´¸´±»ÂãÌåÇ¿¼é- -

µÚ5¸ö¹¦ÄÜ~

Hidden Items Toggle:            0, VK_ADD £¨ÐÂÈË×î³£ÎÊ£¬°´Ð¡¼üÅÌÉϵġ°+¡±¿É¿ªÎïÆ·Òþ²Ø£¬¶øĬÈÏ״̬Ï£¬±¦Ê¯£¬Ò»°ã°×É«ÎïÆ·µÈµÈ¶¼»á±»Òþ²Ø¡£ÈçºÎ¸Ä±äןöĬÈÏ״̬½«ÔÚÈýÂ¥·ÖÎö£©

×¢Ò⺯Êý
BYTE __fastcall HideItemsPatch(UnitAny *unit)
{
    if (!tToggleHiddenItems.flag && (unit->nUnitType == UNITNO_ITEM)) {
        return (GetItemColour(unit)[1] == -2);
    }
    return 0;
}
Èç¹ûÆô¶¯ÁËÒþ²ØÎïÆ·,(Æì×Ó±»²åÁË>_<)
²¢ÇÒÕâÍæÒâÊǸöµÀ¾ßµÄ»°,ÄÇô¿¼ÂÇÒÔÏÂ,²»È»²»ÏÔʾ

¿¼ÂÇÕâ¸öGetItemColour(unit)[1] == -2
ÇÒÓÐ
char *GetItemColour(UnitAny *item)
{
    ItemTxt *itemtxt = D2COMMON_GetItemTxt(item->nTxtFileNo);

    if (itemtxt->dwCode == D2TXTCODE('gld ')) {
        return (D2COMMON_GetUnitStat(item, STAT_GOLD, 0) >= nGoldGoodNum) ? nGoldGoodCol : nGoldPoorCol;
    }

    if (itemtxt->nType == 74) {
        DWORD runeno = (itemtxt->szCode[1]-'0')*10+(itemtxt->szCode[2]-'0')-1;
        if (runeno < ARRAYSIZE(anRuneColours)) return anRuneColours[runeno];
    }

    int index = GetItemColourIndex(item->nTxtFileNo);
    if(index > ARRAYSIZE(anItemColours)-1 ) index = ARRAYSIZE(anItemColours)-1;
    int socknum = D2COMMON_GetUnitStat(item, STAT_NUMSOCKETS, 0);
    if( socknum > 6) socknum = 6;
   
    return anItemColours[index][(item->pItemData->nQuality-1)&7][!!D2COMMON_GetItemFlag(item, ITEMFLAG_ETHEREAL, 0, "?")][socknum];
}
¿´Ó¢ÎÄ~ÕâÀï¾ÍÊÇһЩÅжÏ~°Ñ²»¹»´óÁ¿µÄGold,ÖÊÁ¿²»¹»µÄDD,Ö®ÀàµÄѽ~¸øÒ»ÀàÖµ,ÆäËûµÄÒ»Àà

µÚ6¸ö¹¦ÄÜ~
Socket Protect Toggle:          1, 0x2D    £¨Õâ¸ö±íʾ¡°Insert¡±¼üÈ¥³ýsocketÎïÆ·ÎóÏâ±£»¤£¬ÔÚÄã×öÉñ·ûÖ®ÓïµÄʱºòÓã¬Ä¬ÈÏ״̬Ï£¬Õâ¸ö±£»¤ÊÇ¿ªÆôµÄ£¬·ÀÖ¹ÄãÎó°ÑÖ鱦/±¦Ê¯/·ûÎÄÏâµ½ÁËÄã²»ÏëÏâµÄ²ÄÁÏÀ

Ê×ÏÈÎÒÃÇ¿´¿´ÎªÊ²Ã´ÊÇÒ»0X2DÄØ
ÒÔÏÂÊÇWINDOWSƽ̨²¿·Ö°´¼üµÄÐéÄâ¼ü¶¨Òå
#define VK_SPACE          0x20
#define VK_PRIOR          0x21
#define VK_NEXT          0x22
#define VK_END            0x23
#define VK_HOME          0x24
#define VK_LEFT          0x25
#define VK_UP            0x26
#define VK_RIGHT          0x27
#define VK_DOWN          0x28
#define VK_SELECT        0x29
#define VK_PRINT          0x2A
#define VK_EXECUTE        0x2B
#define VK_SNAPSHOT      0x2C
#define VK_INSERT        0x2D
#define VK_DELETE        0x2E
#define VK_HELP          0x2F

×¢Òâ:#define VK_INSERT        0x2D

ÏâǶ±£»¤hackmapÔÚ2¸öµØ·½¾ù×öÁ˺¯Êý½Ù³Ö(¿ÉÄÜÊǵÀ¾ßÀ¶ºÍÉíÉÏ°É),ÒÔÒ»¸öΪÀý
void __declspec(naked) SocketProtectPatch2_ASM()
{
    __asm {
        cmp tToggleSocketProtect.flag, 0
        jz outcode
        call SocketProtectPatch_ASM
        add dword ptr [esp], 0x36
        ret
outcode:
        mov eax, [esp+4+0x44] // 4 bytes for return address
        test eax, eax
        ret
    }
}
´Ëºô½ÐЭÒé±íÃ÷±àÒëÆ÷²»»áΪÕâ¸öº¯ÊýÉú³É¶ÑÕ»ìõ¸ÉÈÅÎÒÃÇ~
Ö®ºóÃ÷ÏÔÊÇÄÚÁª»ã±à
Èç¹ûûÓÐÆô¶¯insert±£»¤,»Øµ½Ô­À´Ä¬ÈϵĴ¦Àí
²»È»µÄ»°½ÐSocketProtectPatch_ASM°ïæ

´Ëº¯ÊýÈçÏÂ:
void __declspec(naked) SocketProtectPatch_ASM()
{
    __asm {
        mov eax, p_D2CLIENT_PlayerUnit
        mov eax, [eax]
        push 0x13
        push eax
        call D2CLIENT_SocketProtect_ORIG
        ret
    }
}
¶÷~Ò²ÊÇÕâ¸öºô½ÐЭÒé,¿ÉÒÔÍùÉÏ¿´Ò»ÑÛ,½ÐÍêÕâ¸öº¯Êý,ÏÂÒ»¾äadd espÁË,¾ÍÊÇ˵¶ÑջƽºâÊÖ¹¤ÍËÕ»à¶~
Õâ¸öº¯Êý,p_D2CLIENT_PlayerUnitÕâ¸ö¶«Î÷Êǵ±Ç°ÓÎÏ·Õ߶ÔÏóµ¥ÔªÖ¸Õë~
°ÑËû·ÅeaxÀï±ß,È»ºó°ÑÒÔËûµÄÄÚÈÝΪµØÖ·µÄÄÚÈݷŽøeax,¾ÍÊÇÖ¸Õë²Ù×÷À²~
ÒÀ´Î°Ñ0x13 ºÍeaxѹ¶ÑÕ»Àï±ß,ºÃÁËD2CLIENT_SocketProtect_ORIGÀ´°ï¸öæ°É~
ÏÔÈ»Á½¸öpush²Ù×÷ÊÇ°ÑÕâ¸ö¸çÃÇÐèÒªµÄ²ÎÊýË͸øËû~
´Ë¸çÃÇÓõÄÊÇ__stdcallºô½ÐЭÒé,ÐèÒªµÄ²ÎÊýÀàÐÍÊÇUnitAny *unit, DWORD arg2
Õâ¸öЭÒéô~ÓÉÓÒµ½×óÒÀ´Î½øÕ»~ºÍpush˳ÐòÎǺÏ

ÕâÊÇ×Ôd2client.dllµ¼³öµÄÒ»¸öº¯Êý,´ó¸Å¼ÓÔص½Õâ¸öµØ·½0x2BCA0+0x6FAB0000
¿ÉÒÔ·¢ÏÖ±£»¤Ö®ºó»á˵,i can´t ,¾ÍÊÇÕâ¸öº¯Êý¸ÉµÄÁË~HACKMAPÔÚÕâÀï½èµ¶É±Å£¶øÒÑ~


µÈ´ý¸üÐÂ~
[ ´ËÌù±»hqyÔÚ2008-06-06 13:52ÖØб༭ ]
¸½¼þ: d2hackmap_224_with_src-release.zip (636 K) ÏÂÔØ´ÎÊý:93
ÀëÏßxim001
·¢Ìû
316
½ðÇ®
0
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
198 Сʱ
×¢²áʱ¼ä
2008-03-22
×îºóµÇ¼
2008-09-24
Ö»¿´¸Ã×÷Õß 6Â¥ ·¢±íÓÚ: 2008-05-30 09:57:52
ÔõôûÐÅÏ¢ £¿£¿£¿£¿£¿£¿£¿£¿£¿
ÀëÏßbabyzhang
·¢Ìû
79
½ðÇ®
2125
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
5 Сʱ
×¢²áʱ¼ä
2008-05-27
×îºóµÇ¼
2013-05-31
Ö»¿´¸Ã×÷Õß 7Â¥ ·¢±íÓÚ: 2008-05-30 10:45:11
ѧϰ
ÀëÏßhqy
·¢Ìû
1850
½ðÇ®
187
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
260 Сʱ
×¢²áʱ¼ä
2008-04-12
×îºóµÇ¼
2020-05-02
Ö»¿´¸Ã×÷Õß 8Â¥ ·¢±íÓÚ: 2008-05-30 10:55:51
babyzhang...ÑÛÊì
ÀëÏßfendou
·¢Ìû
837
½ðÇ®
-20
91±Ò
0
ÐÅÓþ
0
×ʲú
0 IST
ÔÚÏßʱ¼ä
151 Сʱ
×¢²áʱ¼ä
2008-05-27
×îºóµÇ¼
2008-11-06
Ö»¿´¸Ã×÷Õß 9Â¥ ·¢±íÓÚ: 2008-05-30 11:01:32