µ±Ç°Î»Öà : 145zÓÎÏ·Õ¾¡¡|¡¡ÈÈѪ´«Ææ¡¡|¡¡¼¼Êõ½Ì³Ì¡¡|¡¡

´«ÆæHERO»áԱϵͳ×Ô¶¯ÔöÖ³Íæ¼Ò£¡Éç½»°ó¶¨¡¢Ñø³É±Õ»·¡¢²¡¶¾ÁѱäÈ«½â¹¹

Èȶȣº
¸ïÃüÐÔÉè¼Æ£ºLegend HEROÒýÇæ»áԱϵͳµÄÖÕ¼«ÐÎ̬——¹¹½¨¿É×ÔÎÒ·±Ö³µÄÍæ¼ÒÉú̬Á´

´«Í³»áԱϵͳֻÊÇ“¸¶·Ñ-ÌØÈ¨”µÄµ¥Ïò¹ÜµÀ¡£ÕæÕýµÄ¶¥¼âÉè¼Æ£¬ÊÇÈûáÔ±Ìåϵ³ÉΪ×ÔÖ÷Ñ­»·µÄÉú̬ÒýÇæ£ºÍæ¼ÒÒò¸£Àû¶øÀ´£¬ÎªÌØÈ¨¸¶·Ñ£¬ÒòÉç½»ÁôÏ£¬ÎªÈÙÒ«´«²¥£¡±¾ÎĽ«´Óµ×²ã¼Ü¹¹µ½ÉϲãÍæ·¨£¬²ð½âÈçºÎÓÃHERO½Å±¾´òÔì“ÓÕµ¼¸¶·Ñ→¼¤·¢»îÔ¾→°ó¶¨Éç½»→Çý¶¯´«²¥”µÄ×ÔÑ­»·ÏµÍ³£¡

Ò»¡¢Éç½»°ó¶¨£º°ÑVIPÌØÈ¨±ä³ÉÉç½»»õ±Ò

1. ×é¶Ó¾­Ñé/±¬ÂÊ·øÉ䣨ÈËÀ­ÈË£©

; ********** QMapEvent.txt ×é¶Ó¼Ó³É **********
[@OnGroup]
#IF
IsGroupLeader ; // ¼ì²âÊÇ·ñÊǶӳ¤
LARGE HumInfo.CheckItemValue(-100) 0 ; // ¶Ó³¤ÊÇ»áÔ±
#ACT
; // ÉèÖöÓÎé¹â»·±äÁ¿
SetGroupVar »áÔ±¹â»· 1

; ********** QMonKillByHero.txt »÷ɱÅж¨ **********
[@KillMonGroup]
#IF
IsGroupMember ; // ×é¶Ó״̬ɱ¹Ö
CheckGroupVar »áÔ±¹â»· = 1 ; // ¶ÓÎé´æÔÚ»áÔ±¹â»·
#ACT
; // ·øÉä¾­Ñé¼Ó³É (¶ÓÔ±¶îÍâ+30%)
CHANGEKILLEREXPADD + 30 ; // µ±Ç°»÷ɱÕß¾­Ñé¼Ó³É
; // ±¬ÂÊ·øÉä (È«¶Ó+15%)
SetMonDropRate 1.15 ; // ÁÙʱÌáÉý±¬ÂÊ
; // ʵʱ²¥±¨ (ÖÆÔ쾪ϲ)
SENDMSG 6 "¡¾¶ÓÎ鸣Àû¡¿ÄúÕýÏíÊÜVIP¶ÓÓÑ¡º<$GROUPLEADERNAME>¡»µÄ·øÉä¼Ó³É£¡¾­Ñé+30% ±¬ÂÊ+15%"


ºËÐÄЧ¹û£º ÆÕÍ¨Íæ¼Ò±§½ôVIP´óÍȾÍÄܱäÇ¿£¬VIPÍæ¼Ò»ñµÃ“Éç½»ÁìÐä”ÈÙÒ«¸Ð¡£Ë«ÖسÉñ«£¡

2. ¿ç·þ×é¶Ó±êʶ£¨Éí·ÝìÅÒ«£©

; µÇ¼ʱÉèÖóƺÅ
[@Login]
#IF
LARGE HumInfo.CheckItemValue(-100) 0
#ACT
; // ¶¯Ì¬ÖÁ×ð³ÆºÅ
#IF
LARGEOREQUAL HumInfo.CheckItemValue(-100) 3
#ACT
SETRANKLEVELNAME %s\¡ïÌìѡ֮Éñ¡ï\
#ELSEACT
SETRANKLEVELNAME %s\¡óÈÙÒ«»áÔ±¡ó\

; // ÉíÌåÌØÐ§ (È«·þ¿É¼û)
StartBodyEffect 203 ; // ½ðÉ«¹â»·ÌØÐ§


ÐÄÀíѧ»úÖÆ£º Íæ¼Ò¸¶·ÑµÄÉî²ã¶¯»úÊÇÉç»áµØÎ»È·ÈÏ¡£ìÅ¿á³ÆºÅ+ÌØÐ§ÊÇÐÐ×ßµÄ¹ã¸æÅÆ£¡

¶þ¡¢Ñø³É±Õ»·£ºÓûáÔ±µÈ¼¶ÖÆÔì“ÓÀ¶¯»ú”

!https://via.placeholder.com/400x200/4A86E8/FFFFFF?text=HERO»áÔ±Ñø³É±Õ»·Ä£ÐÍ

¸¶·ÑÉý¼¶ → ½âËøÑø³É×ÊÔ´ → ÌáÉýÕ½Á¦ → ¸ü¿ìÊÕ¸î×ÊÔ´ → ¼ÓËÙÉý¼¶
↑ ↓
¹⁵__________________________________←⁻¹


½Å±¾ÊµÏÖ£º³É¾ÍÌåϵÇý¶¯Éý¼¶

; ********** VIP³É¾Íϵͳ **********
[@OnVIPUpgrade]
; // µ±Íæ¼Ò»áÔ±µÈ¼¶ÌáÉýʱ´¥·¢
#ACT
; // ¸ù¾Ýеȼ¶·¢·Å³É¾Í½±Àø
MOV P0 <$NEWVIPLEVEL>
#IF
EQUAL P0 1
#ACT
ADDACHIEVEMENT ÇàÍ­¾õÐÑ
GIVE VIP³É³¤Àñ°ü¢Ù 1
#IF
EQUAL P0 2
#ACT
ADDACHIEVEMENT °×ÒøÖ®Òí
GIVE °×ÒøÖ®Òí(30Ìì) 1 ; // ÏÞʱ³á°ò
GIVE VIP³É³¤Àñ°ü¢Ú 1
; ...¸ü¸ß¼¶³É¾Í...

; // È«·þ¹«¸æ´Ì¼¤ÅʱÈ
SENDMSG 0 "¡¾ÖÁ×ð֮·¡¿Íæ¼Ò¡º<$USERNAME>¡»ÈÙÉý<$NEWVIPLEVEL>¼¶»áÔ±£¬»ñµÃ¡º<$ACHIEVEMENTNAME>¡»£¡"


»áԱרÊô³É³¤²ÄÁÏ

; ¹ÖÎﱬÂÊ¿ØÖÆ (MonItems\VIPħÁú.cfg)
; ÆÕͨ±¬ÂÊ
1/10 ½ð±Ò 10000
1/5 ǿЧ½ð´´Ò©
; ½öVIP¿É±¬
#IF
LARGE HumInfo.CheckItemValue(-100) 0
#THEN
1/15 VIPÑ«ÕÂË鯬 ; // ÓÃÓÚÉý¼¶»áÔ±
1/30 Áú»ê½á¾§ ; // Éý¼¶VIPרÊô×°±¸


¹Ø¼üÉè¼Æ£º ÆÕͨ¹ÖÎïµôÂä»ù´¡×ÊÔ´£¬VIPרÊôµØÍ¼/¹ÖÎïµôÂä³É³¤ÐÔϡȱ×ÊÔ´£¬Ðγɱջ·Éú̬¡£

Èý¡¢²¡¶¾Áѱ䣺ÈÃÍæ¼Ò³ÉΪÄãµÄÍÆÏúÔ±

1. ʦͽϵͳ°ó¶¨£¨À­ÐÂ×Ô¶¯Éý¼¶£©

; ********** °Ýʦ´¥·¢ **********
[@MasterSuccess]
#IF
CheckIsMaster ; // ×Ô¼ºÊÇʦ¸µ
LARGE HumInfo.CheckItemValue(-100) 0 ; // ʦ¸µÊÇVIP
#ACT
; // ͽµÜ×Ô¶¯»ñµÃÌåÑéÌØÈ¨
SetApprenticeVar ÁÙʱ»áÔ± 3 ; // 3ÌìÌåÑ鿨
; // ²¥±¨½±ÀøÓÕ»ó
SENDMSG 6 "ÄúÒÑ»ñµÃʦ¸µÔùË͵Ä[3ÌìVIPÌåÑé]£¬ËÙÏíÌØÈ¨£¡"
SENDMSG 6 "Ìáʾ£ºÕýʽ¼ÓÈë»áÔ±ÏíÓÀ¾Ã¼Ó³É£¡"

; ********** ͽµÜÉý¼¶´¥·¢ **********
[@ApprenticeLevelUp]
#IF
CheckApprenticeLevelUp > 40 ; // ͽµÜ´ïµ½40¼¶
#ACT
; // ·´À¡Ê¦¸µ½±Àø
GIVEMASTER VIP»ý·Ö 100
GIVEMASTER Ôª±¦ 500
; // ÍÆËÍÓÕ»óÏûÏ¢
SENDMSG 6 "°®Í½<$APPRENTICENAME>ÒÑ´ï40¼¶£¡Äú»ñµÃ[VIP»ý·Ö]½±Àø"
SENDMSG 6 "VIP»ý·Ö¿É¶Ò»»»Æ½ð»áÔ±£¡µ±Ç°»ý·Ö£º<$CURRVIPPOINT>"


2. ÑûÇëÂëÁѱäϵͳ

; ********** ÑûÇë×¢²áNPC **********
[@InviteSystem]
<¡ïÉú³ÉÎÒµÄÑûÇëÂë/@GenInviteCode> \
<¡ïÊäÈëÑûÇëÂëÉý¼¶/@UseInviteCode>\

[@GenInviteCode]
#IF
LARGE HumInfo.CheckItemValue(-100) 0
#ACT
; // Éú³ÉΨһÂë(ʾÀý)
MOV S0 <$USERNAME>_<$RANDOM(1000,9999)>
SETINVITECODE <$STR(S0)>
SENDMSG 6 "ÄúµÄרÊôÑûÇëÂ룺\ \¡º<$STR(S0)>¡»\ \·ÖÏí¸øºÃÓÑÊäÈë¿ÉµÃ½±Àø£¡"

[@UseInviteCode]
INPUTBOX ÇëÊäÈëÑûÇëÂ룺\
#ACT
MOV S1 <$INPUTSTR>
; // УÑé²¢°ó¶¨¹ØÏµ
BINDINVITER <$STR(S1)> ; // °ó¶¨ÑûÇë¹ØÏµ
; // ÐÂÍæ¼Ò½±Àø
GIVE ÐÂÈËÀñ°ü 1
; // ÑûÇëÕß½±Àø
GETINVITERNAME S2 ; // »ñÈ¡ÑûÇëÕßÃû
CALCVAR GLOBAL VIP_POINT_<$STR(S2)> + 50
SENDMSG 0 "Íæ¼Ò¡º<$USERNAME>¡»Ê¹ÓÃÑûÇëÂë¼ÓÈ룡ÑûÇëÕß¡º<$STR(S2)>¡»»ñµÃ50VIP»ý·Ö£¡"


ËÄ¡¢Êý¾ÝÇý¶¯µÄÔËÓªÖÐÊà

»áÔ±ÒDZíÅ̽ű¾£¨\QuestDiary\ÔËÓªÊý¾Ý\£©

; ********** ×Ô¶¯Éú³ÉÈÕ±¨ **********
#CALL [\System\AutoDailyReport.txt] @VIPReport

; ********** VIPReport½ÚÑ¡ **********
[@Main]
#ACT
; // 1. ¸¶·Ñת»¯ÂÊ
CALCVAR GLOBAL VIP_DAY_TRY -> N0 ; // µ±ÈÕÌåÑéÈËÊý
CALCVAR GLOBAL VIP_DAY_BUY -> N1 ; // µ±ÈÕ¸¶·ÑÈËÊý
DIV N2 N1 N0 * 100
MOV S0 <$STR(N2)>

; // 2. ÁѱäϵÊý
GETINVITECOUNT N3 ; // µ±ÈÕÑûÇë×¢²áÊý
DIV N4 N3 N1
MOV S1 <$STR(N4)>

; // 3. »îÔ¾¶È
QUERYHUMANCOUNT VIP_Active_Rate -> N5 ; // µ±ÈÕVIPÍæ¼Ò»îÔ¾Êý

; // Éú³ÉHTML±¨±í
BuildHTMLReport VIPÈÕ±¨ ת»¯ÂÊ=<$STR(S0)>% ÁѱäϵÊý=<$STR(S1)> »îÔ¾VIP=<$STR(N5)>


ÔËÓª¹«Ê½£º

ת»¯ÂÊ = ¸¶·Ñ»áÔ±Êý / ÌåÑé»áÔ±Êý

ÁѱäϵÊý = ÑûÇëÐÂÔöÊý / ¸¶·Ñ»áÔ±Êý

½¡¿µÖ¸±ê£º×ª»¯ÂÊ>15% ÇÒ ÁѱäϵÊý>1.2

Îå¡¢·´²¸Ñ­»·£ºÓÃÊý¾ÝÓÅ»¯½Å±¾²ÎÊý

¶¯Ì¬ÄÑ¶ÈÆ½ºâϵͳ

; ********** È«·þ¶¯Ì¬±¬Âʵ÷Õû **********
#IF
EQUAL $WEEK 6 ; // ÖÜÁù
CALCVAR GLOBAL VIP_PAY_WEEK -> N0 ; // ±¾ÖÜ»áÔ±¸¶·Ñ×ܶî
#ACT
; // »ù´¡±¬ÂÊϵÊý
MOV BASE_RATE 1.0
; // ¸¶·Ñ²»×ã→ÌáÉý±¬Âʴ̼¤
#IF
SMALL N0 500000 ; // ±¾ÖܳäÖµ<5000Ôª
#ACT
INC BASE_RATE 0.3
; // ¸¶·ÑÒç³ö→½µµÍ±¬ÂÊÆ½ºâ
#IF
LARGE N0 2000000 ; // ±¾ÖܳäÖµ>2ÍòÔª
#ACT
DEC BASE_RATE 0.2
; // Ó¦ÓÃϵÊý
CHANGEALLMONDROPRATE <$STR(BASE_RATE)>
SENDMSG 0 "¡¾ÏµÍ³¡¿È«·þ±¬ÂÊÒÑ»ùÓÚ¾­¼ÃÉú̬¶¯Ì¬µ÷ÕûΪ<$STR(BASE_RATE)>±¶£¡"


ºËÐÄÂß¼­£º ³äÖµµÍÃÔʱ↑±¬ÂÊ→ÌáÉýÍæ¼Ò»ñµÃ¸Ð→´Ì¼¤¸¶·Ñ

³äÖµ¹ýÈÈʱ↓±¬ÂÊ→±ÜÃâͨ»õÅòÕÍ→ÑÓ³¤ÉúÃüÖÜÆÚ

ÖÕ¼«Éú̬¼Ü¹¹Í¼

graph LR
A[»áÔ±³õʼ¸¶·Ñ] --> B{ÌØÈ¨Ìåϵ}
B --> C[Õ½Á¦ÅòÕÍ]
C --> D[×ÊÔ´ÊÕ¸î]
D --> E[Éç½»·øÉä]
E --> F[ʦͽ/ÑûÇëÁѱä]
F --> G[лáÔ±×¢Èë]
G --> A
B --> H[³É¾ÍÈÙÒ«]
H --> I[È«·þ²¥±¨]
I --> J[Éí·ÝìÅÒ«]
J --> K[´Ì¼¤ÅʱÈ]
K --> A
D --> L[Ñø³ÉÕý·´À¡]
L --> M[³ÖÐø»îÔ¾]
M --> N[Êý¾Ý³Áµí]
N --> O[¶¯Ì¬Æ½ºâϵͳ]
O --> P[ÓÅ»¯ÓÎÏ·²ÎÊý]
P --> B


ÔËάºËÎäÆ÷£º»áÔ±¼à¿ØÖ¸Áî´óÈ«

# ʵʱ¼à¿ØÃüÁM2Server¿ØÖÆÌ¨£©
@VIPStats # ÏÔʾµ±Ç°ÔÚÏß»áÔ±·Ö²¼
@VIPTop10 # ÏÔʾÏû·Ñ°ñTOP10
@CheckVIP [½ÇÉ«Ãû] # ²éÖ¸¶¨Íæ¼Ò»áԱ״̬

# ½ô¼±µ÷¿Ø½Å±¾
#CALL [\´¦Àí½Å±¾\»áÔ±½ô¼±µ÷¿Ø.txt] @VIPAdjust

# VIPAdjustÄÚÈÝʾÀý
[@Main]
#IF
EQUAL $SERVERHOUR 20 ; // Íí8µã¸ß·åÆÚ
CHECKONLINEVIP < 30 ; // ÔÚÏßVIP²»×ã30ÈË
#ACT
; // ´¥·¢È«·þ´ÙÏúʼþ
GmExe ¿ªÊ¼»î¶¯ ÏÞʱ¸£Àû
SENDMSG 0 "¡¾½ô¼±¸£Àû¡¿VIPÔÚÏßÂʹýµÍ£¡È«·þ±¬ÂÊÁÙʱ+50%£¡"


½áÂÛ£º¹¹½¨Éú̬µÄÈý¸ö»Æ½ð·¨Ôò

1. Éç½»À¦°ó·¨Ôò
ÈÃ°×æÎÍæ¼Òͨ¹ýÉç½»¹ØÏµ±»°ó¶¨ÔÚVIPÖÜΧ
2. Í´¿àÑÓ³Ù·¨Ôò
»áÔ±¹ýÆÚʱ±£Áô70%ÊôÐÔÈýÈÕ£¬ÖÆÔì½ä¶Ï·´Ó¦
3. Êý¾Ý·´Éä·¨Ôò
ÓÃʵʱÊý¾Ý¶¯Ì¬µ÷Õû½Å±¾²ÎÊý£¬ÐγÉÉú̬ÃâÒßϵͳ