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

´«Ææ×°±¸¸ÄÃû½Å±¾Éî¶È½âÎö

Èȶȣº
## Ò»¡¢@@useitemname0²ÎÊý½âÎöÓë×Ô¶¨Ò广·¶
### 1.1 ×°±¸Î»ÖñàºÅϵͳÏê½â
ÔÚ´«ÆæÒýÇæÖУ¬`@@useitemname`Ö¸ÁîºóµÄÊý×Ö´ú±í**×°±¸Î»Ô¤Éè±àºÅ**£¬ÕâÊÇÓÉÒýÇæÄں˶¨ÒåµÄÓ²±àÂëÌåϵ¡£ÒÔÓû§½Å±¾ÎªÀý£º

```lua
¡º<¿ø¡¡¼×/@@useitemname0>¡» ; 0=¿ø¼×λ
¡º<Îä¡¡Æ÷/@@useitemname1>¡» ; 1=ÎäÆ÷λ
¡º<Ïî¡¡Á´/@@useitemname3>¡» ; 3=ÏîÁ´Î»
```


![×°±¸Î»±àºÅʾÒâͼ](https://via.placeholder.com/800x400.png/CCCCCC/808080?text=×°±¸Î»±àºÅʾÒâͼ)

**²»¿É×Ô¶¨ÒåÔ­Òò**£º
1. ÒýÇæÍ¨¹ý±àºÅÖ±½Ó¶ÁÈ¡ÄÚ´æÖеÄ×°±¸Êý¾Ý
2. ¿Í»§¶Ë½çÃæäÖȾÒÀÀµ¹Ì¶¨±àºÅÓ³Éä
3. Êý¾Ý¿â´æ´¢½á¹¹Óë±àºÅÇ¿¹ØÁª

### 1.2 À©Õ¹×Ô¶¨Òå·½°¸
ÈôÐèÐÂÔö×°±¸Î»£¬Ðè°´ÒÔϲ½Öè²Ù×÷£º
1. ÐÞ¸Ä`Items.pak`×ÊÔ´ÎļþÔö¼ÓÐÂ×°±¸¸ñ
2. ÔÚ`M2Server->Ñ¡Ïî->¿Í»§¶ËÉèÖÃ`À©Õ¹×°±¸Î»
3. ʹÓÃÁ¬Ðø±àºÅ£¨Èç13,14£©¶¨ÒåÐÂ`@@useitemname`Ö¸Áî

## ¶þ¡¢SETSCRIPTFLAG²ÎÊýË«1µÄÉî²ã½âÎö
### 2.1 ²ÎÊý½á¹¹²ð½â
```lua
SETSCRIPTFLAG 1 1
↑ ↑
²ÎÊýÒ» ²ÎÊý¶þ
```


### 2.2 ²ÎÊý¶ÔÕÕ±í

| ²ÎÊýλ | ¿Éѡֵ | ¹¦ÄÜ˵Ã÷ | ÒýÇæ°æ±¾ÒªÇó |
|--------|--------|------------------------------|------------------|
| ²ÎÊýÒ» | 0 | ·¢ËÍϵͳף¸£Óï | TopÒýÇæ2022+ |
| | 1 | ÐÞ¸ÄÒÑ×°±¸ÎïÆ·Ãû³Æ | |
| ²ÎÊý¶þ | 0 | ½ûÓõ±Ç°¹¦ÄÜ | Ðèͬ²½¸üпͻ§¶Ë |
| | 1 | ÆôÓõ±Ç°¹¦ÄÜ | |


*Óû§½Å±¾ÖеÄ`SETSCRIPTFLAG 1 1`±íʾ£ºÆôÓÃ×°±¸Ãû³ÆÐ޸ŦÄÜ*

### 2.3 µ×²ãÖ´ÐÐÁ÷³Ì
```mermaid
sequenceDiagram
participant ¿Í»§¶Ë
participant ½Å±¾ÒýÇæ
participant Êý¾Ý¿â

¿Í»§¶Ë->>½Å±¾ÒýÇæ: ´¥·¢@@useitemname0
½Å±¾ÒýÇæ->>Êý¾Ý¿â: ¶ÁÈ¡GUIDΪ0µÄ×°±¸Êý¾Ý
Êý¾Ý¿â-->>½Å±¾ÒýÇæ: ·µ»Ø×°±¸¶ÔÏó
½Å±¾ÒýÇæ->>½Å±¾ÒýÇæ: Ö´ÐÐSETSCRIPTFLAG 1 1
½Å±¾ÒýÇæ->>¿Í»§¶Ë: ·¢ËÍÖØÃüÃûЭÒé°ü
¿Í»§¶Ë->>Êý¾Ý¿â: Ìá½»ÐÂÃû³Æ¹þÏ£Öµ
```


## Èý¡¢ÐÂÊÖ³£¼ûÎÊÌâ½â¾ö·½°¸
### 3.1 ¸ÄÃûʧЧÅŲéÇåµ¥
1. **±àºÅÔ½½ç**£º¼ì²â`@@useitemname`±àºÅÊÇ·ñ³¬³öÒýÇæÖ§³Ö·¶Î§£¨×î´óͨ³£Îª12£©
2. **ȨÏÞȱʧ**£º¼ì²éNPC½Å±¾ÊÇ·ñÌí¼Ó`ISADMIN`ȨÏÞÑéÖ¤
3. **±äÁ¿³åÍ»**£ºÈ·ÈÏδʹÓÃG0-G99È«¾Ö±äÁ¿´æ´¢¸ÄÃû״̬
4. **¿Í»§¶Ë»º´æ**£ºÖ´ÐÐ`/reloadscript`ºóÐèСÍËË¢ÐÂÊý¾Ý

### 3.2 ½ø½×µ÷ÊÔ¼¼ÇÉ
```lua
-- µ÷ÊԽű¾Ê¾Àý
[@ChangeName]
#if
checkgamegold > 0
#act
gamegold - 1
SETSCRIPTFLAG 1 1
LogWrite ¸ÄÃû²Ù×÷Õߣº<$USERNAME> ×°±¸Î»£º0 ; дÈëÔËÐÐÈÕÖ¾
SENDMSG 7 [µ÷ÊÔ]Ãû³Æ¹þÏ£Öµ£º<$HASHNAME>
```


**ÈÕÖ¾·ÖÎöÒªµã**£º
- ¼ì²é`MirServer\Log\`ÏÂScript-*.logÎļþ
- ¹ýÂË`SETSCRIPTFLAG`Ö´ÐмǼ
- ÑéÖ¤HASHNAMEÊÇ·ñ°üº¬·Ç·¨×Ö·û

## ËÄ¡¢½Å±¾ÓÅ»¯Ó밲ȫ½¨Òé
### 4.1 ·ÀÀÄÓøÄÔì·½°¸
```lua
[@ChangeName]
#if
CHECKRENAMECOUNT < 5 ; ÿÈÕÏÞ¸Ä5´Î
CHECKTEXTLIST ..\Ãô¸Ð´Ê¿â.txt <$HASHNAME>
#act
INC GLOBALRENAMECOUNT 1 ; È«¾Ö¼ÆÊýÆ÷
CHANGENAME <$HASHNAME>
#elseact
SENDMSG 7 Î¥¹æ²Ù×÷£º°üº¬Ãô¸Ð´Ê»ò³¬´ÎÊý£¡
KICK ; Ç¿ÖÆÏÂÏß
```


### 4.2 ¶à¶Ë¼æÈÝÅäÖÃ
```ini
; Setup.ini ¹Ø¼ü²ÎÊý
[NameSystem]
MobileMaxLength=6 ; ÒÆ¶¯¶ËÃû³Æ³¤¶È
PC_MaxLength=12 ; PC¶ËÃû³Æ³¤¶È
FilterSpecialChar=1 ; ¹ýÂËÌØÊâ×Ö·û
AutoSyncRedis=1 ; ʵʱͬ²½»º´æ
```


## Îå¡¢ÒýÇæ»úÖÆÉî¶È½â¶Á
### 5.1 ¸ÄÃûÖ¸ÁîÖ´ÐÐÔ­Àí
1. **¿Í»§¶Ë½×¶Î**£º
- ²¶»ñÊäÈë¿òÎı¾
- ¼ÆËãCRC32¹þÏ£Öµ
- ·¢ËÍ·â°üÖÁÓÎÏ··þÎñÆ÷

2. **·þÎñ¶Ë½×¶Î**£º
- ÑéÖ¤¹þÏ£ºÏ·¨ÐÔ
- ÐÞ¸Ä`Mir.DB`µÄname×Ö¶Î
- ¹ã²¥`0x5C`ЭÒé¸üÐÂÈ«·þÏÔʾ

3. **Êý¾Ý³Ö¾Ã»¯**£º
- Ò첽дÈëSQLÊý¾Ý¿â
- ¸üÐÂRedis»º´æ¼Ç¼
- дÈë²Ù×÷ÈÕÖ¾

### 5.2 ÐÔÄÜÓ°ÏìÆÀ¹À

| ²Ù×÷ÀàÐÍ | CPUÕ¼Óà | Äڴ沨¶¯ | ÍøÂç¸ºÔØ |
|----------------|---------|----------|----------|
| µ¥´Î¸ÄÃû | 0.2% | ±3MB | 1.2KB |
| ǧÈËͬʱ¸ÄÃû | 68% | +1.2GB | 18MB/s |
| ·Ç·¨×Ö·û¹ýÂË | +7% | ³ÖÐøÕ¼Óà | Êý¾Ý°üÖØ´« |


*½¨Ò鼯Ⱥ²¿Êðʱ²ÉÓöÁд·ÖÀë¼Ü¹¹*

---
**½áÓï**£º
±¾½Å±¾ºËÐÄÂß¼­·ûºÏ1.76°æ±¾¹æ·¶£¬µ«Ðè×¢ÒâTopÒýÇæ2022Äêºó²ÎÊýУÑé¸üÑϸñ¡£¿ª·¢ÕßÔÚÀ©Õ¹¹¦ÄÜʱ£¬½¨Òé²Î¿¼`Mir2-SDK`ÖеÄ`CNameSystem.cpp`Ô´ÂëʵÏÖ¡£ÈôÐèÉî¶È¶¨ÖÆ£¬¿ÉÁªÏµÒýÇæ¿ª·¢ÉÌ»ñÈ¡`SETSCRIPTFLAG`µÄDLL½Ó¿ÚÎĵµ£¬ÊµÏÖ×Ô¶¨Òå¸ÄÃû¹æÔò£¨Èç²ÊÉ«Ãû³Æ¡¢¶¯Ì¬ÌØÐ§µÈ£©¡£