Bir CHARDEF bloğu, bir karakterin temel özelliklerini tanımlar.
Özellikler
İşte tüm karakter tanımı özelliklerinin bir listesi.
ANIM
RW ?? Karakterin desteklediği animasyonların maskesini alır veya ayarlar. Varsayılan değer 0ffffff'dir.
ARMOR
RW ?? Zırh olmadan karakterin temel savunmasını alır veya ayarlar.
AVERSIONS
RW ?? Karakterin hoşlanmadığı şeylerin bir listesini alır veya ayarlar.
BASEID
R ?? Ayarlanırsa karakterin defname'ini, aksi takdirde ID'yi alır.
BLOODCOLOR
RW ?? Karakterin kan rengini alır veya ayarlar (-1 değeri yaratığın kanamasını hiç önler.)
CAN
RW ?? Karakterin özniteliklerini alır veya ayarlar. sphere_defs.scp'deki can_flags bakın.
COLOR
RW ?? Karakter rengini alır veya ayarlar.
DAM min,max
RW ?? Karakterin silah olmadan vereceği temel hasarı alır veya ayarlar.
DAM.LO
R ?? Karakterin silah olmadan vereceği minimum temel hasarı alır.
DAM.HI
R ?? Karakterin silah olmadan vereceği maksimum temel hasarı alır.
DEFNAME
RW ?? Karakterin defname adını alır veya ayarlar.
DESIRES
RW ?? Karakterin beğendiği şeylerin bir listesini alır veya ayarlar.
DEX
RW ?? Bir karakter bu karaktere polimorf olduğunda ayarlanan el becerisini alır veya ayarlar.
DISPID
R ?? Karakterin görüntülendiği kimliği alır.
FOODTYPE
RW ?? Karakterin yiyebileceği şeylerin bir listesini alır veya ayarlar.
HEIGHT
RW ?? Karakterin yüksekliğini alır veya ayarlar.
HIREDAYWAGE
RW ?? Karakteri bir günlüğüne kiralamak için ne kadar altın gerektiğini alır veya belirler.
ICON
RW ?? Karakteri heykelcik biçiminde temsil etmek için kullanılabilecek öğeyi alır veya ayarlar.
ID
RW ?? Özellik değerlerini devralacak karakterin kimliğini alır veya ayarlar.
INSTANCES
R ?? Dünyada var olan bu karakterin sayısını döndürür.
INT
RW ?? Bir karakter bu karaktere polimorf olduğunda ayarlanan zekayı alır veya ayarlar.
JOB
R ?? Karakterin iş unvanını alır.
MAXFOOD
R ?? Karakterin sahip olabileceği maksimum yiyecek seviyesini alır.
MOVERATE
RW Y Hareket hızını (DEX'e göre) belirtilen oranla artırın veya sınırlayın. Ne kadar yüksekse, NPC o kadar hızlı olacaktır. 50 hızın %50'si, 200 ise çift hız anlamına gelir.
NAME
RW ?? Karakterin adını alır veya ayarlar.
RANGE min, max
RW Y Karakterin saldırı menzilini alır veya ayarlar.
RANGEH
R ?? Karakterin maksimum saldırı menzilini alır.
RANGEL
R ?? Karakterin minimum saldırı menzilini alır.
RESDISPDNHUE
RW ?? Karakteri görmek için yeterince yüksek bir RESDISP'ye sahip olmayan istemcilere göre görüntülenecek rengi alır veya ayarlar.
RESDISPNID
RW ?? Karakteri görmek için yeterince yüksek bir RESDISP'ye sahip olmayan istemcilere göre görüntülenecek karakter kimliğini alır veya ayarlar.
RESLEVEL
RW ?? İstemcinin karakteri görmesi için gereken en düşük RESDISP'yi alır veya ayarlar.
RESOURCES
RW ?? Karakterin yapıldığı kaynakları alır veya ayarlar.
RESOURCES.COUNT
R ?? Karakterin yapıldığı farklı kaynakların sayısını alır.
RESOURCES.n.KEY
R ?? Karakterin oluşturulduğu n'inci kaynağın BASEID'sini alır. (sıfır tabanlı)
RESOURCES.n.VAL
R ?? Karakterin yapıldığı n'inci kaynağın miktarını alır. (sıfır tabanlı)
SOUND
RW ?? Karakterin çıkardığı genel sesi alır veya ayarlar. SOUNDHIT, SOUNDGETHIT, SOUNDDIE, SOUNDIDLE, SOUNDNOTICE olarak bölünebilir, bölünmüş değerler isteğe bağlıdır ve ayarlandığında varsayılan SOUND değerine göre önceliğe sahip olacaktır.
SOUNDIDLE
RW ?? Karakterin çıkardığı iddle sesini alır veya ayarlar. (eylemle ilgili sesin çalınmasını önlemek için değer olarak -1 olabilir)
SOUNDNOTICE
RW ?? Karakterin çıkardığı uyarı sesini alır veya ayarlar. (eylemle ilgili sesin çalınmasını önlemek için değer olarak -1 olabilir)
SOUNDHIT
RW ?? Karakterin çıkardığı vuruş sesini alır veya ayarlar. (eylemle ilgili sesin çalınmasını önlemek için değer olarak -1 olabilir)
SOUNDGETHIT
RW ?? Karakterin çıkardığı isabet alma sesini alır veya ayarlar. (eylemle ilgili sesin çalınmasını önlemek için değer olarak -1 olabilir)
SOUNDDIE
RW ?? Karakterin çıkardığı kalıp sesini alır veya ayarlar. (eylemle ilgili sesin çalınmasını önlemek için değer olarak -1 olabilir)
STR
RW ?? Bir karakter bu karaktere polimorf olduğunda ayarlanan gücü alır veya ayarlar.
TAG.name
RW ?? Bir TAG'nin değerini alır veya ayarlar.
TAG.BARDING.DIFF (X branch only)
RW ?? Ayartma, Barış Yapma ve Kışkırtma becerilerinin zorluğunu belirler. Bu etiket ayarlanmamışsa eski davranış kullanılır.
THROWDAM min,max
RW y Fırlatılan nesneler için kullanılan bir dizi hasarı alır veya ayarlar.
THROWDAM dam
RW y Fırlatılan nesneler için kullanılan sabit hasarı alır veya ayarlar.
THROWDAMTYPE damage flags
RW y Fırlatılan nesneler için kullanılan hasar bayraklarını alır veya ayarlar.
THROWOBJ id
RW y NPC'ler tarafından fırlatılacak bir nesnenin kimliğini alır veya ayarlar.
THROWRANGE min,max
RW y Bir nesnenin fırlatılabileceği aralığı alır veya ayarlar.
THROWRANGE max
RW y Varsayılan min. 2 olacak şekilde bir nesnenin atılabileceği aralığı alır veya ayarlar.
TSPEECH speech_defname
RW ?? Karakter için konuşma işleyicilerinin listesini alır veya karaktere bir konuşma işleyicisi ekler.
TEVENTS event_defname
RW ?? Karakter için olay işleyicilerinin listesini alır veya karaktere bir olay işleyicisi ekler.
Bazı özellikler tek tek karakter temelinde geçersiz kılınabilir. Örneğin, TAG'ı ayarlayabilirsiniz. GEÇERSİZ KILMAK. Belirli bir NPC'nin hareket etme hızını hızlandırmak veya yavaşlatmak için belirli bir NPC'de HAREKET EDİN.
INI Geçersiz Kılmaları
TAG.OVERRIDE.RUNNINGPENALTY
Bu özel etiket, aynı adın INI ayarını karakter başına her karakter için geçersiz kılar.
TAG.OVERRIDE.STAMINALOSSATWEIGHT
Bu özel etiket, aynı adın INI ayarını karakter başına her karakter için geçersiz kılar.
TAG.NoMoveTill
TAG ise karakterin hareket etmesine izin vermez. NoMoveTill > SERV.Time
Örnekler
Bu ilk örnek, bir "temel" CHARDEF'i gösterir. Bunlar, CHARDEF anahtar sözcüğünün ardından bir sayı gelmesiyle tanımlanır:
[CHARDEF 01] // Bu, karakter animasyonu 01 için bir “temel” chardef'tir (mul/uop dosyalarından)
// Bu, “temel” özelliklerin başlangıcıdır.
// Temel özelliklerde ayarlanan değerler bir aralığa sahip olamaz ({1 10} kullanamazsınız)
DEFNAME=c_ogre // DEFNAME, bu CHARDEF'e referans vermek için kullanılan kolay bir addır
NAME=ogre // Bu, yaratığın oyun içinde görülen adıdır
ICON=i_pet_ogre // Yaratık küçültülürse, sonuçta ortaya çıkacak öğe budur
SOUND=snd_monster_ogre1 // Bu, bu yaratık için ses kayıtlarının başlangıcıdır
CAN=MT_WALK|MT_USEHANDS|MT_EQUIP // Bu bayraklar sphere_defs.scp dosyasının can_flags alanında tanımlanır
DAM=18,22 // Bu, yaratıkların silah kullanmadıkları zaman verecekleri hasar aralığıdır
ARMOR=30 // ARMOR, ek zırh kuşanılmadan *önce* fiziksel hasar direncidir
DESIRES=r_forests,t_gold,t_coin,t_gem,t_arock
AVERSIONS=t_trap,r_civilization
FOODTYPE=35 t_meat_raw // Bu, canlının yiyebileceği maksimum yiyecek miktarı (ve türleri) eats
RESOURCES=2 i_ribs_raw // Bu yaratığın cesedi oyulursa, şu kaynaklar yaratılacaktır
BLOODCOLOR=colors_blood // Bu yaratıkların kanının rengi
MOVERATE=100
TAG.Barding.Diff=48.8 // “Temel özelliklere” bir ETİKET eklendiğinde, mevcut tüm yaratıklar etkilenir
TAG.SlayerGroup=OGRE,REPOND
TEVENTS=e_carnivores2 // OLAYLAR, CHARDEF'ler tarafından kullanılan tetikleyici koleksiyonlarıdır. Her TEVENT kendi satırında olmalıdır.
CATEGORY=Monsters // KATEGORİ, ALT BÖLÜM ve AÇIKLAMA GM aracı “Eksen” tarafından kullanılır
SUBSECTION=Giants
DESCRIPTION=Ogre
// Bu, “temel” özelliklerin sonu ve “tetikleyicilerin” başlangıcıdır.
// Gerekirse bir tetikleyicideki *çoğu* temel özelliği geçersiz kılabilirsiniz.
ON=@Create // Bu @Create tetikleyicisidir
NAME=#NAMES_OGRE // #NAMES_OGRE sphere_names.scp dosyasında tanımlanmış bir isim dizisidir
TITLE=the ogre
NPC=brain_monster // Mevcut “beyinler” sphere_defs.scp dosyasında tanımlanmıştır
FAME={1500 1999} // { } işaretleri olası değerler aralığını ayarlamak için kullanılır
KARMA={-1500 -1999}
STR={165 195}
MAXHITS={100 120} // MAXHITS ayarlanmazsa, varsayılan değer STR ile aynıdır.
DEX={45 65}
MAXSTAM={45 65} // MAXSTAM ayarlanmamışsa, varsayılan değer DEX ile aynıdır INT={45 70}
MAXMANA={45 70} // MAXMANA ayarlanmamışsa, varsayılan değer INT ile aynıdır
MAGICRESISTANCE={55.0 70.0}
PARRYING={60.0 70.0}
TACTICS={60.0 70.0}
WRESTLING={70.0 80.0}
MODAR={0 5} // MODAR'ı @Create'te ayarlamak, bu yaratığa o-5 daha fazla ZIRH eklememizi sağlar
RESCOLD={15 25}
RESENERGY={15 25}
RESFIRE={15 25}
RESPOISON={15 25}
ON=@NPCRestock
ITEM=loot_ogre // Bu, sphere_templates_loot.scp dosyasındaki bir TEMPLATE'e başvurur 
