Arkadaşlar 3 tane sorum var yardımcı olurmusunuz:
1) oyuna yeni karakter açıp girdiğimde skill cap 800 se adamın skill toplamı 600 fln oluyor her skillden 1 ,2 almış oluyor,sadece clientte açarken seçtiği skilleri alması
2)Skilliniz 0.1 arttı diyor it's now 52.1 fln diyor ya mesela mavi yazıyla skill artışında, o doğru değeri vermiyor 0.1 arttı 52.1 diyor mesela halbuki daha 50.8 show real'a basınca
3)sphere.ini staminalossatweight ve running penalty bu 2 sinin ideal değeri nedir
birinci soruna yanıt verym .. Karakteri açtığında kendi istediği skilleri seçsin istiyorsun galiba yanlış anlamadıysam? Eğer Böyleyse bunu sağlamak için bir scripte ihtiyacın var. Yani başladığı yerde koyacağın bir stone ile belirli skilleri seçebilir.. ve bi ekleme daha.. eğer skillcup ın 800.0 olmasını istiyorsan.. onuda sphere_skills.scp scriptinden ayarlayabilirsin..

Al buda kullanabileceğin skill scripti başlangıca koy bu stoneyi sadece 8 skill seçebiliyorlar ve bu stoneyi sadece bir kez kullanabiliyorlar.Bu Arada skilleri seçtikten sonra statlarıda 100 100 100 yapıp britain'e yolluyor..kolay gelsin..

[ITEMDEF i_skill_stone]
ID=i_grave_stone
NAME=Skillstone
TYPE=0

ON=@CREATE
COLOR=0482


CATEGORY=Governor
SUBSECTION=Stones
DESCRIPTION=Skills Stone

ON=@DClick
If <eval <src.tag.skillbitti>>==1
src.sysmessage Skill secimini sadece bir kere yapabilirsiniz.
return 1
else
SRC.ALLSKILLS=0
SRC.DIALOG d_8_gm_skills
src.tag.skillbitti 1
RETURN 1

[DIALOG d_8_gm_skills]
0,0
nomove
resizepic 10 10 2620 500 450
text 120 40 69 0  //Title
//column 1
checkbox 40 80 210 211 0 0
text 65 80 349 1 //Anatomy
checkbox 40 100 210 211 0 1
text 65 100 349 2 //Alchemy
checkbox 40 120 210 211 0 2
text 65 120 349 3 //Archery
checkbox 40 140 210 211 0 3
text 65 140 349 4 //ArmsLore
checkbox 40 160 210 211 0 4
text 65 160 349 5 //Begging
checkbox 40 180 210 211 0 5
text 65 180 349 6 //Blacksmithing
checkbox 40 200 210 211 0 6
text 65 200 349 7 //Bowcraft
checkbox 40 220 210 211 0 7
text 65 220 349 8 //Camping
checkbox 40 240 210 211 0 8
text 65 240 349 9 //Carpentry
checkbox 40 260 210 211 0 9
text 65 260 349 10 //Cartography
checkbox 40 280 210 211 0 10
text 65 280 349 11 //Cooking
checkbox 40 300 210 211 0 11
text 65 300 349 12 //DetectingHidden
checkbox 40 320 210 211 0 12
text 65 320 349 13 //Enticement
checkbox 40 340 210 211 0 13
text 65 340 349 14 //EvaluatingIntel
checkbox 40 360 210 211 0 14
text 65 360 349 15 //Fencing
checkbox 40 380 210 211 0 15
text 65 380 349 16 //Fishing
//column 2
checkbox 190 80 210 211 0 16
text 215 80 349 17 //Forensics
checkbox 190 100 210 211 0 17
text 215 100 349 18 //Healing
checkbox 190 120 210 211 0 18
text 215 120 349 19 //Herding
checkbox 190 140 210 211 0 19
text 215 140 349 20 //Hiding
checkbox 190 160 210 211 0 20
text 215 160 349 21 //Inscription
checkbox 190 180 210 211 0 21
text 215 180 349 22 //ItemID
checkbox 190 200 210 211 0 22
text 215 200 349 23 //LockPicking
checkbox 190 220 210 211 0 23
text 215 220 349 24 //Lumberjacking
checkbox 190 240 210 211 0 24
text 215 240 349 25 //Macefighting
checkbox 190 260 210 211 0 25
text 215 260 349 26 //Magery
checkbox 190 280 210 211 0 26
text 215 280 349 27 //MagicResistance
checkbox 190 300 210 211 0 27
text 215 300 349 28 //Meditation
checkbox 190 320 210 211 0 28
text 215 320 349 29 //Mining
checkbox 190 340 210 211 0 29
text 215 340 349 30 //Musicianship
checkbox 190 360 210 211 0 30
text 215 360 349 31 //Peacemaking
checkbox 190 380 210 211 0 31
text 215 380 349 32 //Parrying
//column 3
checkbox 340 80 210 211 0 32
text 365 80 349 33 //Poisoning
checkbox 340 100 210 211 0 33
text 365 100 349 34 //RemoveTrap
checkbox 340 120 210 211 0 34
text 365 120 349 35 //Snooping
checkbox 340 140 210 211 0 35
text 365 140 349 36 //SpiritSpeak
checkbox 340 160 210 211 0 36
text 365 160 349 37 //Stealing
checkbox 340 180 210 211 0 37
text 365 180 349 38 //Stealth
checkbox 340 200 210 211 0 38
text 365 200 349 39 //Swordsmanship
checkbox 340 220 210 211 0 39
text 365 220 349 40 //Tactics
checkbox 340 240 210 211 0 40
text 365 240 349 41 //Tailoring
checkbox 340 260 210 211 0 41
text 365 260 349 42 //Taming
checkbox 340 280 210 211 0 42
text 365 280 349 43 //TasteID
checkbox 340 300 210 211 0 43
text 365 300 349 44 //Tinkering
checkbox 340 320 210 211 0 44
text 365 320 349 45 //Tracking
checkbox 340 340 210 211 0 45
text 365 340 349 46 //Veterinary
checkbox 340 360 210 211 0 46
text 365 360 349 47 //Wrestling
//finish button
text 340 390 69 48
button 400 395 1209 1210 1 0 0

[DIALOG d_8_gm_skills TEXT]
Ayni anda 8 skill secmek zorundasiniz.
Anatomy 
Alchemy 
Archery 
Animal Lore
Begging 
Blacksmithing 
Bowcraft 
Camping 
Carpentry 
Cartography 
Cooking 
DetectingHidden 
Enticement 
EvaluatingIntel 
Fencing 
Fishing 
Forensics 
Healing 
Herding 
Hiding 
Inscription 
ItemID 
LockPicking 
Lumberjacking 
Macefighting 
Magery 
MagicResistance 
Meditation 
Mining 
Musicianship 
Peacemaking 
Parrying 
Poisoning 
RemoveTrap 
Snooping 
SpiritSpeak 
Stealing 
Stealth 
Swordsmanship 
Tactics 
Tailoring 
Taming 
TasteID 
Tinkering 
Tracking 
Veterinary 
Wrestling
Tamam:
[DIALOG d_8_gm_skills BUTTON]
ON=0
IF (<argchk>==8)
  IF (<argchk[0]>==1)
    SRC.Anatomy 100.0
  ENDIF
  IF (<argchk[1]>==1)
    SRC.Alchemy 100.0
  ENDIF
  IF (<argchk[2]>==1)
    SRC.Archery 100.0
  ENDIF
  IF (<argchk[3]>==1)
    SRC.ANIMALLORE 100.0
  ENDIF
  IF (<argchk[4]>==1)
    SRC.Begging 100.0
  ENDIF
  IF (<argchk[5]>==1)
    SRC.Blacksmithing 100.0
  ENDIF
  IF (<argchk[6]>==1)
    SRC.Bowcraft 100.0
  ENDIF
  IF (<argchk[7]>==1)
    SRC.Camping 100.0
  ENDIF
  IF (<argchk[8]>==1)
    SRC.Carpentry 100.0
  ENDIF
  IF (<argchk[9]>==1)
    SRC.Cartography 100.0
  ENDIF
  IF (<argchk[10]>==1)
    SRC.Cooking 100.0
  ENDIF
  IF (<argchk[11]>==1)
    SRC.DetectingHidden 100.0
  ENDIF
  IF (<argchk[12]>==1)
    SRC.Enticement 100.0
  ENDIF
  IF (<argchk[13]>==1)
    SRC.EvaluatingIntel 100.0
  ENDIF
  IF (<argchk[14]>==1)
    SRC.Fencing 100.0
  ENDIF
  IF (<argchk[15]>==1)
    SRC.Fishing 100.0
  ENDIF
  IF (<argchk[16]>==1)
    SRC.Forensics 100.0
  ENDIF
  IF (<argchk[17]>==1)
    SRC.Healing 100.0
  ENDIF
  IF (<argchk[18]>==1)
    SRC.Herding 100.0
  ENDIF
  IF (<argchk[19]>==1)
    SRC.Hiding 100.0
  ENDIF
  IF (<argchk[20]>==1)
    SRC.Inscription 100.0
  ENDIF
  IF (<argchk[21]>==1)
    SRC.ItemID 100.0
  ENDIF
  IF (<argchk[22]>==1)
    SRC.LockPicking 100.0
  ENDIF
  IF (<argchk[23]>==1)
    SRC.Lumberjacking 100.0
  ENDIF
  IF (<argchk[24]>==1)
    SRC.Macefighting 100.0
  ENDIF
  IF (<argchk[25]>==1)
    SRC.Magery 100.0
  ENDIF
  IF (<argchk[26]>==1)
    SRC.MagicResistance 100.0
  ENDIF
  IF (<argchk[27]>==1)
    SRC.Meditation 100.0
  ENDIF
  IF (<argchk[28]>==1)
    SRC.Mining 100.0
  ENDIF
  IF (<argchk[29]>==1)
    SRC.Musicianship 100.0
  ENDIF
  IF (<argchk[30]>==1)
    SRC.Peacemaking 100.0
  ENDIF
  IF (<argchk[31]>==1)
    SRC.Parrying 100.0
  ENDIF
  IF (<argchk[32]>==1)
    SRC.Poisoning 100.0
  ENDIF
  IF (<argchk[33]>==1)
    SRC.RemoveTrap 100.0
  ENDIF
  IF (<argchk[34]>==1)
    SRC.Snooping 100.0
  ENDIF
  IF (<argchk[35]>==1)
    SRC.SpiritSpeak 100.0
  ENDIF
  IF (<argchk[36]>==1)
    SRC.Stealing 100.0
  ENDIF
  IF (<argchk[37]>==1)
    SRC.Stealth 100.0
  ENDIF
  IF (<argchk[38]>==1)
    SRC.Swordsmanship 100.0
  ENDIF
  IF (<argchk[39]>==1)
    SRC.Tactics 100.0
  ENDIF
  IF (<argchk[40]>==1)
    SRC.Tailoring 100.0
  ENDIF
  IF (<argchk[41]>==1)
    SRC.Taming 75.0
  ENDIF
  IF (<argchk[42]>==1)
    SRC.TasteID 100.0
  ENDIF
  IF (<argchk[43]>==1)
    SRC.Tinkering 100.0
  ENDIF
  IF (<argchk[44]>==1)
    SRC.Tracking 100.0
  ENDIF
  IF (<argchk[45]>==1)
    SRC.Veterinary 100.0
  ENDIF
  IF (<argchk[46]>==1)
    SRC.Wrestling 100.0
  ENDIF
  SRC.GO Britain
  src.str 100
  src.dex 100
  src.int 100
	src.tag.ostr <str>
	src.tag.odex <dex>
	src.tag.oint <int>
	src.events -e_str
	src.events -e_dex
	src.events -e_int
	src.events +e_spr
        src.tag.statlar 1
SRC.SYSMESSAGE Skilleriniz Tamamlandi.
ELSE
  SRC.SYSMESSAGE Ayni anda 8 Skill Secmek Zorundasiniz...
  SRC.DIALOG d_8_gm_skills
ENDIF
1. sorun için sphere.ini MaxBaseSkill=0 yap.
sağolun.. (nexima işe yaradı)
bu 2. soru peki onu nasıl ekran artış yazılarını show real'daki gibi gösterttirebilirim bilen varmı? bide şöyle 2 tane hata almaktayım:
13:10:ERROR:(fix.scp,590)Undefined symbol 'i_jail'
13:10:ERROR:(itemb7.scp,44)Undefined symbol 'e_jail'
1. soruyu Nexima söylemiş.Batuhanın söylediği tamamen alakasız birşey.

2. soruyu yapamazsın malesef.Ama oyuna bir etkisi yok.Çok sorun yaratmaz.

3. soru için, benim kullandığım değerler.Öneririm;

StaminaLossAtWeight=250
RunningPenalty=55

i_jail ile ilgili hatanda fix.scp de i_jail itemiyle ilgili bir sorgulama var.Ama i_jail diye bir item yok diyor.Fix.scp den i_jail ile alaklı kısımları silersen sorun düzelir.Silerken diğer scriptlere zarar vermemeye dikkat et.
2. Soru optionsda bir ayarla yapılıyordu ama unuttum.Karıştır oraları biraz.Sphere ile ilgili değil o yanlış hatırlamıyorsam.
eyw tamam bakarım ona bi,bide son olarak 2 problem daha var
1)
00:17:ERROR:(commands.scp,347)Can't resolve <account.name>
00:17:ERROR:(commands.scp,348)Can't resolve <account.name>
00:17:ERROR:(commands.scp,361)Can't resolve <account.name>

bu 55r de account.name leri ne olarak değiştirmem lazım ki bu account.name komutu hata vermesin?

2) buy demeden npclere çift tıklayınca buy menüsünü açması için ne yapmam gerekiyor?
commands.scp account.namenin geçtiğiscripti koyarmısın.

Vendorlar için de vendorların bir eventi vardır e_human_environ diye.events klasorune gir events.scp veya orj scp kullanıyorsan human_events.scp tarzı birşey vardır.Ordan e_human_environ eventini bul altına ekle.

On=@Dclick
hear buy
Forum Kuralları:
- Bir üstteki mesajı boş yere alıntı yapmayınız. Bu durum forum görüntüsü açısından hoş olmamaktadır.


Bu konu Slothere tarafından düzenlendi(2009-04-23 18:26, 15 yıl önce)
events scp zaten böyle ama çalışmıyor sadece c_h_mageshop çift tıklayınca buy menü açıyor.

On=@DClick
if (<distance> < 4) && !(<src.flags>&statf_dead)
if ((<npc> == brain_vendor) || (<npc> == brain_animal_trainer) || (<npc> == brain_healer))
hear buy
return 1
	endif
endif

buda commands.scp:

// ----------------------------
// COMMANDS.SCP - GENEL KOMUTLAR
// ----------------------------

VERSION=0.55

[PLEVEL 1]
DISARM
FORUM
INFSVR
INGOTS
HUNGRY
OKSIL
ORES
PLAYER
REGS
STAT
SKILLDUSUR

[PLEVEL 2]
AFK
CHARLIST
FIX
WHERE
SALUTE
BANKSELF
ADMIN
ANIM
BARK
CAST
CLIENTS
FOLLOW
GATE
GETIR
XGO
GO
GOCHAR
GOCLI
GONAME
GOSOCK
GOUID
HELP
INVIS
JAIL
KAFESLE
PG
S
SUMMONTO
XSUMMONTO
STAFFADMIN
SA
SUICIDE
TELE
INVUL
PAGE
GMPAGE
PAGE KICK
PAGE K
PAGE BAN
PAGE B

[PLEVEL 3]
NOT
RESURRECT
SICIL
SINFO
FLY
LINK
LOCK
REMOVE
MACROADMIN
MA
DIALOG
STONE
XSTONE
PAGE
GMPAGE
PAGE KICK
PAGE K
PAGE BAN
PAGE B

[PLEVEL 4]
PRIVSHOW
ADD
STATIC
SUMMON
EDIT
GOTYPE
INFO
NUKE
PROPS
SAVE
SET
TAG
TAGLIST
TILE
TWEAK
QUESTARR
AMOUNT
PAGE
GMPAGE
PAGE KICK
PAGE K
PAGE BAN
PAGE B

[PLEVEL 5]
ALLCLIENTS
SAVE
REGION
SECTOR
PASSWORD
XPASSWORD
JFORGIVE
CONTROL
PAGE
GMPAGE
PAGE KICK
PAGE K
PAGE BAN
PAGE B

[PLEVEL 6]
ALLCLIENTS
SAVE
REGION
SECTOR
PASSWORD
XPASSWORD
JFORGIVE
CONTROL
PAGE
GMPAGE
PAGE KICK
PAGE K
PAGE BAN
PAGE B

[PLEVEL 7]
SERV
KILL
PAGE
GMPAGE
PAGE KICK
PAGE K
PAGE BAN
PAGE B
KICK
EVENTS
SHOW
TAGLIST

// pLevel 1
[function guildsil]
guild_test

[function player]
dialog d_player

[function infsvr] // bronx'un player chari icin
information

[function forum] // bronx 05.11.2001
if !(0<args> == 0)
	weblink www.microsoft-tr.com/middle/forum
	sysmessage Lutfen bekleyin..
else
	weblink www.microsoft-tr.com/middle/forumö
	sysmessage Lutfen bekleyin..
endif

[function oksil] // oyuncuların oku silmesi için. 
arrowquest

// pLevel 1 d0ne.

[function questarr] // Quest Oku çıkartır. GM ler için.
serv.allclients arrowquest <args>

[function sa]
staffadmin

[function ma]
macroadmin

[function cnct]
return <eval ((<serv.time> - <tag.sa_timer>) / 600)>

[function sanim] // region-wide
region.allclients sanim2 <args>

[function sanim2]
if (<account.plevel> > 1)
	anim <args>
endif

[function sgo] // server-wide
serv.allclients sgo2 <ARGS>

[function sgo2]
if (<account.plevel> > 1)
	go <args>
endif

[function ssay]
serv.allclients ssay2 <args>

[function ssay2]
if (<account.plevel> > 1)
	sayu <args>
endif

[function editchk]
region.allclients editchk2

[function editchk2]
if ((<skilltotal> > 700.0) && (0<account.plevel> < 2))
	var.smsgx 0482
	serv.allclients stafftrig2 *** Warning: character '<name>' skill total over 700.0 (<skilltotal>)
	serv.allclients stafftrig2 *** 'Skill total' check complete.
endif

[FUNCTION stafftrig2]
if (<account.plevel> > 1)
	smsgx <args>
endif

[function sysmessageua] 
sysmessage @<var.sysmessageua>,,1 <args>

[function smsgx] 
sysmessage @<var.smsgx>,,1 <args>

[function f_disc]
newitem i_insta_disconnecter
act.equip

[itemdef i_insta_disconnecter]
name Instant Disconnecter
id i_memory
type t_eq_script
weight 0
layer layer_special

On=@Create
attr attr_invis|attr_decay

On=@Equip
timer 3	

On=@Timer
if (<cont>)
	cont.disconnect
endif
remove
return 1

[function f_fizzle] // fizzle func.
effect 3,i_fx_smoke_small,3,40,1
sound 92
if (<mana> > 8)
	mana (<mana> - {5 8})
else
	mana 1
endif
if (<findid.i_magerylvl>)
	findid.i_magerylvl.remove
endif
if (<findid.i_evallvl>)
	findid.i_evallvl.remove
endif
if (<findid.i_poisonlvl>)
	findid.i_poisonlvl.remove
endif
if (<findid.i_spdelay_man>)
	findid.i_spdelay_man.remove
elseif (<findid.i_spdelay_woman>)
	findid.i_spdelay_woman.remove
elseif (<findid.i_spdelay_unisex>)
	findid.i_spdelay_unisex.remove
endif

[function f_statloss] // pk's stat loss
if (<isevent.e_spr>)
	events -e_spr
	sysmessage Stat'lariniz artik korunmuyor.
	tag.ostr
	tag.oint
	tag.odex
endif

if (0<tag.loss>)
	if (<kills> > <eval <tag.loss>>)
		if (<str> > 26)
			str (<str> - 2)
		endif
		if (<dex> > 26)
			dex (<dex> - 2)
		endif
		if (<int> > 26)
			int (<int> - 2)
		endif
	endif
endif
tag.loss <kills>

[function f_player_login] // playerlar boyle login oluyor
if (0<account.plevel> > 1)
	skillclass 1
	var.smsgx 0482
	src.sysmessage @0481 Hede Staff Kadrosuna Hosgeldin, <src.name>!
	f_staff_login
	return 1
else
	account.plevel
endif

title
detail 0

if (<necromancy> > 0) && (<necromancy> < 50.1)
	necromancy
endif

tag.hungry
tag.affet
tag.af
tag.aff
tag.bagn
tag.questp
tag.umcn
tag.umc
tag.msk
tag.mco
tag.bear
tag.af
tag.aff
tag.nysnowball
tag.vendorella

if !(<isevent.fix>)
	events +fix
endif

// clearation wrong accounts from fctn system & guild retreat
if !(strmatch('<uid.040079abb.tag.<account.name>>',''))
if (strmatch('<uid.040079abb.tag.<account.name>>','<uid>')) && !(<memoryfindtype.memory_town>)
var.p <p>
p 5123 1778
try uid.040079abb.tag.<account.name>
p <var.p>
update
elseif (<memoryfindtype.memory_guild>) && (<memoryfindtype.memory_town>) && (<memoryfindtype.memory_guild.link.link.uid> != <memoryfindtype.memory_town.link.uid>)
if !(<findid.i_fctn_resigner>)
newitem i_fctn_resigner
act.equip
findid.i_fctn_resigner.timer 1
sysmessage <memoryfindtype.memory_guild.link.name>: O/C/F destek yonu degisimi.
endif
elseif (strmatch('<uid.040079abb.tag.<account.name>>','X'))
if !(<findid.i_fctn_resigner>)
newitem i_fctn_resigner
act.equip
findid.i_fctn_resigner.timer 1
sysmessage Hesabiniz faction sisteminden diskalifiye edilmis.
endif
endif
endif

[function f_player_logout] // playerlar boyle logout oluyor
if (<findid.i_rune_incognito>)
	findid.i_rune_incognito.remove
endif

if (<region.guarded>) && !(<region.flags>&region_flag_insta_logout) && (<hits> < <str>) && !(<flags>&statf_dead)
	if (<memoryfindtype.memory_town>) || (<memoryfindtype.memory_guild.link.align> > 0)
		hits 1
	endif
endif

if (<kills>) // murder count fix
	if !(0<tag.lg>)
		tag.lg 1
	elseif (<tag.lg> > 2)
		kills (<kills> + 1)
		tag.lg 0
	else
		tag.lg <eval (<tag.lg> + 1)>
	endif
else
	tag.loss
	tag.lg
endif

[function f_stpublish] // staff join-part messager
if (0<account.plevel> > 1)
	smsgx *** <args>
endif

[function f_staff_login] // staff boyle login oluyor
if !(0<account.plevel>)
	skillclass
	f_player_login
	return 1
endif

if (0<allshow>)
	allshow 0
endif

if !(strmatch('<account.plevel>','7'))
	privshow 1
	nightsight 1
	fame 0
	kills 0
	karma 0
endif

tag.stf_timer
tag.sa_timer <serv.time>
if !(strmatch('<account.plevel>','7'))
	var.smsgx 045
	serv.allclients f_stpublish <account.name> baglandi.
endif
if (strmatch('<serv.name>','Locus'))
	var.pg_box 04022b54a
elseif (strmatch('<serv.name>','Quann'))
	var.pg_box 0400a8b60
endif
var.smsgx 0482
smsgx Hizmet sureniz: <eval (<account.totalconnecttime> / 60)> saat.
if (<uid.<var.pg_box>.rescount>)
	smsgx Toplam <uid.<var.pg_box>.rescount> adet page mevcut. Liste icin: '.pg'
endif
events -fix
events gmfix
// dialog d_staff

[function f_staff_logout] // staff boyle logout oluyor
//if !(strmatch('<account.plevel>','7'))
//	var.smsgx 020
//	serv.allclients f_stpublish <account.name> cikti. (<cnct>m)
//endif
				
[eof]


Bu konu Slothere tarafından düzenlendi(2009-04-27 10:15, 15 yıl önce)

Üye Ol veya Giriş Yap

Bu forum başlığına mesaj atmak istiyorsanız hemen üye olun veya giriş yapın.