AionSource.com - Powered by the Tower of Eternity: SM Pet Command Mechanic Question - AionSource.com - Powered by the Tower of Eternity

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • This topic is locked

SM Pet Command Mechanic Question Rate Topic: -----

#1 User is offline   Sardoni 

  • Bringer of Truth
  • PipPipPipPipPipPipPipPip
  • View blog
  • Group: Curse Premium
  • Posts: 7771
  • Joined: 20-July 09
  • LocationLong Beach, MS
  • Character:Sardoni
  • Legion:Benny Llama
  • Race :Asmodians
  • Server:Test Server

Posted 21 August 2009 - 06:40 PM

For those unfamiliar with the Spiritmaster we get pet commands like this: Command: Disturbance I

It's one command that we cast and our pets react it it, but depending on the pet we are currently using it will process that above command in a different way.

Command: Disturbance I Wind
Command: Disturbance I Earth
Command: Disturbance I Fire
Command: Disturbance I Water
Command: Disturbance I Lava (level 50 Asmodian DP pet)
Command: Disturbance I Tempest (level 50 Elyos DP pet)

For clarification, the Spiritmaster only has the one command [Command: Disturbance I] on our hotbar, but the pet will react in the ways above depending on which one is summoned.

So my question is, how does the pet acknowledge the command?

Meaning, when we cast the command do all variations of the "command" get directed to the pet and then pet only acknowledges the variation of the command relevant to itself or is there a checksum built in initially when you first cast the command that verifies FIRST the elemental pet you have out and then gives it the element specific command.

I'm trying to come up with solutions for some of the SM concerns I've gathered from playing one and also concerns from other SMs in the SM Forum. This would greatly help my theory crafting.

Any feedback would be much appreciated :)
Posted Image

Fear not. The Worthy Noble Durable Expert Carefully Crafted Great Master Plan (W.N.D.E.C.C.G.M.P. for short) is not written down anywhere and no one knows the full contents of the W.N.D.E.C.C.G.M.P. but rest assured NCSoft is following the W.N.D.E.C.C.G.M.P. to the letter and all actions are dictated by the W.N.D.E.C.C.G.M.P.
0

#2 User is offline   one_each 

  • Lieutenant
  • PipPipPipPip
  • Group: Members
  • Posts: 537
  • Joined: 24-July 09
  • Legion:The Older Gamers

Posted 22 August 2009 - 02:12 PM

I have no idea what you are theory crafting, but it shouldn't matter. The "pet" does not acknowledge or interpret the command. In fact, the "pet" may actually be a simple integer (0=no pet, 1=fire, 2=wind...), I don't know. Unless the devs want to share some code with me, I can only guess at what is going on.

I expect that it works something like this:

1) player presses the button
2) client determines the button is mapped to Command: Disturbance i
3) client tells the server the player just activated Command: Disturbance i
4) server tells client to begin animation
5) After animation delay then the server will (in no particular order)
. a) tell the client to finish the animation
. b) apply damage to the target
. c) apply the effect to the target

This is a simplified version of what is happening and does not take into account things such as the pet not being out or the cool-down is not up. There are a lot of details that I've left out in order to keep it simple.

Using this information, it seems as if your question is "how is step 5.c implemented?" It can be one of three ways (perhaps more)

Object-oriented: Base pet class with doCommandDisturbance method is overridden in sub-classes for each pet.
Table-driven: Uses data files to determine which effect to apply
Hard-coded: If statements check pet type and apply effect as needed
Why did the chicken cross the road?
Ernest Hemingway: To die. In the rain. Alone.
0

#3 User is offline   angelsarc 

  • Great General
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 1638
  • Joined: 08-July 09
  • LocationIL
  • Character:Yagaru
  • Legion:Hate
  • Race :Elyos
  • Server:Zikel

Posted 23 August 2009 - 07:28 PM

IIRC, when you mouse over a Command with a pet out, it shows a second tooltip tailored towards the specific Spirit that you have summoned at the time. Based on that, my guess would be that you are casting a specific subskill from the very start. The current pet acknowledges that particular Command and uses it. It is possible to interrupt a Command with other Commands, including Move, Rest, and Summon, so there should be no instances where you could lose your pet and summon a new one and still have a Command pending.

This post has been edited by angelsarc: 23 August 2009 - 07:31 PM

0

#4 User is offline   Sardoni 

  • Bringer of Truth
  • PipPipPipPipPipPipPipPip
  • View blog
  • Group: Curse Premium
  • Posts: 7771
  • Joined: 20-July 09
  • LocationLong Beach, MS
  • Character:Sardoni
  • Legion:Benny Llama
  • Race :Asmodians
  • Server:Test Server

Posted 24 August 2009 - 10:57 AM

See that's why I need more eyes. Acknowledging that it is one command that the client/server filters to the pet lets me know that a system check is in place when the pet is summoned.

So now the only other unknown is whether or not the pet can "feed me" anything. I know I can buff the pet, give the pet commands, tell it to absorb damage, but does the pet have the capability of "buffing me."

http://www.aionsourc...ution-idea.html

This plays into the pet applying the robe idea. If it exists in the game already it would be simpler to code (i.e. making it a more appealing solution) if this mechanic does not currently exist in the game (i.e. harder to code) than I need to resort to my other idea :)

Thanks for the responses.
Posted Image

Fear not. The Worthy Noble Durable Expert Carefully Crafted Great Master Plan (W.N.D.E.C.C.G.M.P. for short) is not written down anywhere and no one knows the full contents of the W.N.D.E.C.C.G.M.P. but rest assured NCSoft is following the W.N.D.E.C.C.G.M.P. to the letter and all actions are dictated by the W.N.D.E.C.C.G.M.P.
0

Page 1 of 1
  • You cannot start a new topic
  • This topic is locked

2 User(s) are reading this topic
0 members, 2 guests, 0 anonymous users