prudent üyesi avatar
Client linger olayında sıkıntı çekiyorum. normal şartlarda oyundan düşünce 90sn beklemesi lazım (sphere.inide ayarlı), ancak hiçbir şekilde bu olmuyor, anında düşüyor.

on=@logout'a
return 1 vermeyi denedim, olmadı. özel bir alt+f4 itemı yaratıp equip ettirdim yine olmadı, f_player_logout ile uğraştım yine olmadı? bildiğim kadarıyla olması gerekli.

ayrıca çok ilginç bir şekilde speechte hiçbir sorun olmamasına rağmen all go vb. komutlar çalışmıyor.

versiyon 56b.
Silindi üyesi avatar
Silindi
Members
0
Sphere.inide ki logout süresi sadece gz dışı alanlarda işler.Gz içinde 1 saniyede düşer.
Gz dışında ne kadar sürede düşmelerini istiyorsan sphere.iniden ayarlıyacaksın.

Gelelim gz içine ve evde logouta;

Bir item kontrolu ile kişinin gzde veya evde olup olmadıgına bakarız.


if (<src.isevent.e_house>)
serv.newitem i_alt_not
new.equip
new.timer 30
return 1
endif

if (<src.region.guarded> == 1)
serv.newitem i_alt_not
new.equip
new.timer 30
return 1
endif

[itemdef i_alt_not]
name Instant Disconnecters 
id i_memory
type t_eq_script 
weight 0 
layer layer_special 

On=@Create 
attr attr_invis|attr_decay 

On=@Equip 
timer 30
return 1

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



Bu kodlamayı spheretables.scp deki on=@logout altına eklersen sorunun düzelir.
logout

triggerlarından birinde argn=1 vs vardır. onu sil geçer
prudent üyesi avatar
tek login logout triggerları burada spheredeki:

[skillclass 0] // player class
str 100
int 100
dex 100
statsum 225
skillsum 700.0

on=@login
src.findid.i_alt_not.remove
skillclass 0
if (<src.account.plevel> < 2)
	if !(<src.isevent.fix>)
		src.events +fix
	endif
	if !(<src.account.tag0.pvar>==1)
		src.pinkontrol
	endif
src.sysmessage @055,,1 Hoş geldiniz! Serverda şu an <serv.clients> oyuncu var.
src.invis 0
src.hearall 0
src.detail 0
src.debug 0

	if (<src.findid.i_silsene>)
		src.sysmessage @38 Char silme islemi surduruluyor. Durdurmak istiyorsaniz .charsiliptal yazabilirsiniz.
		src.sysmessage @38 Charin silinmesine <eval ((<src.findid.i_silsene.timer>) / 86400)> gun var.
	endif

	if (<src.findid.i_runebookacik>)
		src.findid.i_runebookacik.remove
	endif
	if (<src.memoryfindtype.memory_guild.link.align> == 1)
		if !(<isevent.e_o_o_savasama>)
			src.events +e_o_o_savasama
		else
			src.events -e_o_o_savasama
		endif
	endif
	if (<src.memoryfindtype.memory_guild.link.align> == 2)
		if !(<isevent.e_c_c_savasama>)
			src.events +e_c_c_savasama
		else
			src.events -e_c_c_savasama
		endif
	endif
	if ((<skilltotal> > 700.0) && (0<account.plevel> < 2))
		src.sysmessage @38 Dikkat: Skill Cap'iniz 700'u gecmis. Skill ayarlariniz .skilldusur'den yapmalisiniz. Aksi takdirde yetkililer herhangibir skill'inizi dusurebilir. 
		serv.allclients f_stpublish Dikkat: Account: <account> Char: <name> Skill toplami 700'u gecmis.
	endif
	if (strmatch('<Var.pagedurumu>','00'))
		var.pagedurumu=page yok
	else
		var.pagedurumu=<uid.<var.pg_box>.rescount>
	endif
	if (strmatch('<var.gms>','00'))
		Var.gms=Yok
	endif
else
src.pinkontrol
src.invis 1
src.go star
	if !(<src.isevent.gmfix>)
		src.events +gmfix
	endif

on=@logout
src.tag.pgirmis 0
if (<src.account.plevel> < 2)
	if (<src.isevent.e_house>)
		serv.newitem i_alt_not
		new.equip
		new.timer 60
		return 1
	endif

	if (<src.region.guarded> == 1)
		serv.newitem i_alt_not
		new.equip
		new.timer 60
	return 1
	endif
src.findid.i_resurrection_timer.remove
src.findid.i_mem_healing_2.remove
src.tag.disarmaktif
src.tag.stunaktif
	if (<src.findid.i_runebookacik>)
		src.findid.i_runebookacik.remove
	elseif (<src.findid.i_rune_incognito>)
		src.findid.i_rune_incognito.remove
	endif
	if (<src.findid.i_rb_delay>) || (<src.findid.i_rb_delay2>)
		src.FINDID.i_rb_delay.REMOVE
		src.FINDID.i_rb_delay2.REMOVE
		src.EVENTS -e_x_breakspell
		src.f_fizzle
		return 1
	endif
src.skill fail
else
	if (strmatch('<Var.gms>','00'))
		Var.gms=Yok
	return 1
	if (<src.findid.i_page>)
		src.findid.i_page.remove
	endif
	if !(strmatch('<account.plevel>','7'))
		serv.allclients f_stpublish <name> cikti.
		Var.gms=<eval (<var0.gms>-1)>
	endif
src.go star
src.allshow 0

[itemdef i_alt_not]
name Instant Disconnecters
id i_memory
type t_eq_script
weight 0
layer layer_special

On=@Create
attr attr_invis|attr_decay

On=@Equip
timer 60
return 1

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

sorunu anlayamadım, hayvanlar da komutlara itaat etmiyor :S
Silindi üyesi avatar
Silindi
Members
0
Sphere.ininde çok büyük problemler var msnden ulaş bana.
prudent üyesi avatar
ulaşırım.

all kill için bana yardım edin ölezaiim :P
Silindi üyesi avatar
Silindi
Members
0
Hallederiz :)
Silindi üyesi avatar
Silindi
Members
0
Arkadaşlar adam evde cıkınca dısarı atmıyor sebebi ne olabilir sizce
housing.scp den kaynaklanır, ON=@login veya ON=@logout kısmı varmı housing.scp'de kontrol et.
Silindi
Adept
0
evet var orda nasıl bir degisiklik yapacaz ?

On=@Login
if !((<uid> == <eval <region.tag.owner>>) || (<eval <region.tag.co1uid>> == <uid>) || (<eval <region.tag.co2uid>> == <uid>) || (<eval <region.tag.co3uid>> == <uid>) || (<eval <region.tag.co4uid>> == <uid>) || (<eval <region.tag.co5uid>> == <uid>) || (<eval <region.tag.co6uid>> == <uid>) || (<eval <region.tag.co7uid>> == <uid>) || (<eval <region.tag.co8uid>> == <uid>) || (<eval <region.tag.f1uid>> == <uid>) || (<eval <region.tag.f2uid>> == <uid>) || (<eval <region.tag.f3uid>> == <uid>) || (<eval <region.tag.f4uid>> == <uid>) || (<eval <region.tag.f5uid>> == <uid>) || (<eval <region.tag.f6uid>> == <uid>) || (<eval <region.tag.f7uid>> == <uid>) || (<eval <region.tag.f8uid>> == <uid>) || (<eval <region.tag.f9uid>> == <uid>) || (<eval <region.tag.f10uid>> == <uid>) || (<eval <region.tag.f11uid>> == <uid>) || (<eval <region.tag.f12uid>> == <uid>) || (<eval <region.tag.f13uid>> == <uid>) || (<eval <region.tag.f14uid>> == <uid>) || (<eval <region.tag.f15uid>> == <uid>) || (<eval <region.tag.f16uid>> == <uid>) || (<eval <region.tag.f17uid>> == <uid>) || (<eval <region.tag.f18uid>> == <uid>) || (<eval <region.tag.f19uid>> == <uid>) || (<eval <region.tag.f20uid>> == <uid>))
	p <region.tag.signp>
	update
endif

On=@Logout
if ((<uid> == <eval <region.tag.owner>>) || (<eval <region.tag.co1uid>> == <uid>) || (<eval <region.tag.co2uid>> == <uid>) || (<eval <region.tag.co3uid>> == <uid>) || (<eval <region.tag.co4uid>> == <uid>) || (<eval <region.tag.co5uid>> == <uid>) || (<eval <region.tag.co6uid>> == <uid>) || (<eval <region.tag.co7uid>> == <uid>) || (<eval <region.tag.co8uid>> == <uid>) || (<eval <region.tag.f1uid>> == <uid>) || (<eval <region.tag.f2uid>> == <uid>) || (<eval <region.tag.f3uid>> == <uid>) || (<eval <region.tag.f4uid>> == <uid>) || (<eval <region.tag.f5uid>> == <uid>) || (<eval <region.tag.f6uid>> == <uid>) || (<eval <region.tag.f7uid>> == <uid>) || (<eval <region.tag.f8uid>> == <uid>) || (<eval <region.tag.f9uid>> == <uid>) || (<eval <region.tag.f10uid>> == <uid>) || (<eval <region.tag.f11uid>> == <uid>) || (<eval <region.tag.f12uid>> == <uid>) || (<eval <region.tag.f13uid>> == <uid>) || (<eval <region.tag.f14uid>> == <uid>) || (<eval <region.tag.f15uid>> == <uid>) || (<eval <region.tag.f16uid>> == <uid>) || (<eval <region.tag.f17uid>> == <uid>) || (<eval <region.tag.f18uid>> == <uid>) || (<eval <region.tag.f19uid>> == <uid>) || (<eval <region.tag.f20uid>> == <uid>))
	var.p <p>
	p <var.p>
	disconnect
	var.p
endif
p <region.tag.signp>

Yukarıdakini var.p <p> un altına ekle
Silindi
Adept
0
denedim olmuyo yaw acaba client versionuyla alakalı olabilir mi ?

Üye Ol veya Giriş Yap

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

Benzer Konular