Thread Rating:
- 2 Votes - 5 Average
- 1
- 2
- 3
- 4
- 5
Anarch Cassius 
Master
 
Posts: 273
Likes Given: 19
Likes Received: 10 in 9 posts
Joined: Mar 2012
Reputation: 2
![]()
|
RE: Makemypet
I am having similar problems. None of the old scripts to generate summons manually are working and the revisions log is so jumbled as to make telling exactly what has changed almost impossible.
My versions seem to work somewhat, at least the summoning versions sometimes obey orders... but sometimes not. Also summons tend to fight each other... and if those summons belong to a GM the entire server crashes in some kind of reputation system infinite loop.
Code:
[function summon_pet]
SRC.newnpc=<ARGS>
//SRC.ACT.EVENTS -e_npc_wars
SRC.ACT.TAG.NPCAI.RACE=
SRC.act.brain=0
SRC.act.tag.owner=<src.uid>
VAR.SUID=<ACT.UID>
SRC.act.flags=00c000000
SRC.act.newitem=i_memory
SRC.ACT.ACT.COLOR=02
SRC.act.act.cont=<VAR.SUID>
SRC.act.act.link=<SRC.uid>
SRC.act.act.more2=<SRC.uid>
SRC.act.act.timer=-1
SRC.ACT.NEWITEM=i_rune_summon_creature
//SRC.ACT.ACT.LAYER=41
SRC.ACT.ACT.TYPE=t_spell
SRC.ACT.ACT.MORE2=1
SRC.ACT.ACT.MOREP=40,816
SRC.ACT.ACT.CONT=<VAR.SUID>
SRC.ACT.ACT.LINK=<SRC.UID>
SRC.ACT.ACT.TIMER=-1
SRC.ACT.ACT.ATTR=attr_decay
SRC.act.p=<src.p>
SRC.ACT.FIX
SRC.ACT.action=-1
[function f_MakeMyPet]
serv.newitem i_memory
new.color = memory_ipet
new.more1 = 04
new.more2 = <serv.time>
new.morep = <p>
new.link = <src.uid>
new.cont = <uid>
// <pet uid>.f_MakePetOf <owner uid>
[function f_MakePetOf]
serv.newitem i_memory
new.color = memory_ipet
new.more1 = 04
new.more2 = <serv.time>
new.morep = <p>
new.link = <args>
new.cont = <uid>
Has anyone actually got any working summon scripts for current Sphere?
UPDATE
Got this working as well as any of my AI work... they still fail to attack often enough but I'm tracing that bug still.
Quote:[function summon_pet]
SRC.newnpc=<ARGS>
SRC.act.tag.owner=<src.uid>
SRC.act.p=<p.POS>
//examples of "neutralizing" npc if need be
//SRC.ACT.EVENTS -e_npc_wars
//SRC.ACT.TAG0.NPCAI.RACE=
//src.act.brain=11
VAR.SUID=<ACT.UID>
//make pet
SRC.act.newitem=i_memory
SRC.act.act.color = memory_ipet
SRC.act.act.more1 = 04
SRC.act.act.more2=<serv.time>
SRC.act.act.morep=<p>
SRC.act.act.cont=<VAR.SUID>
SRC.act.act.link=<SRC.uid>
SRC.act.act.timer=-1
//make summoned
SRC.ACT.Flags |StatF_Conjured
SRC.ACT.NEWITEM=i_rune_summon_creature
SRC.ACT.ACT.LAYER=layer_spell_summon
SRC.ACT.ACT.TYPE=t_spell
SRC.ACT.ACT.MORE2=1
SRC.ACT.ACT.MOREP=40,816
SRC.ACT.ACT.CONT=<VAR.SUID>
SRC.ACT.ACT.LINK=<SRC.UID>
SRC.ACT.ACT.TIMER=<eval <src.spiritspeak>/15>+{180 240}
SRC.ACT.ACT.ATTR=attr_decay
src.act.action=-1
SRC.ACT.FIX
RETURN
The "SRC.ACT.Flags |StatF_Conjured" line gives an error but it works, it's needed to make them actually summoned. This probably has odd or unnessicary lines but it makes them act like proper summons and doesn't result in weird reputation loops breaking the world.
Current Projects: Necromancy SCP overhaul. Custom Faction AI/System. Imbuing.
|
|
03-18-2016 06:37 AM |
|
|
User(s) browsing this thread: 1 Guest(s)