Bug 211: (Faux) Cannot cancel Bind
Moderators: Community Managers, Developers
-
BugTracker
- Posts: 810
- Joined: Wed Aug 28, 2013 9:40 am
Bug 211: (Faux) Cannot cancel Bind
Bug ID : 211 - Cannot cancel Bind Bug Date : 2015/07/01 08:05:12 Assigned To : Faux Priority : Low Category : VGClient Sub-Category : Gameplay: Ability Severity : Standard Reproducible : Every timeDetails:
Unable to interrupt binding at altars. Jumping, escape and running away does nothing.
Originated From World: New Telon (1) Chunk : Khal (85) Location : -660 -43397 1244
Entered on Jul 02, 2015 19:07 by John Adams
I see /bind is Complete, so this Abort might be part of the Casting system that is not yet implemented. Blackstorm did Bind, but assigning to Faux for Interrupt/Cancel
Re: Bug 211: (Faux) Cannot cancel Bind
Interrupt should be a pretty easy system to implement now that casting is working. However, using an item to bind functions differently, so I'll have to take a look at that and see how Blackstorm did it (as Bind is not an ability).
Edit: Its all hardcoded right now. If we don't find a way to interrupt item use, there is always the option to make invisible casted abilities for things like bind so it fits into the casting system.
Edit: Its all hardcoded right now. If we don't find a way to interrupt item use, there is always the option to make invisible casted abilities for things like bind so it fits into the casting system.
- Blackstorm
- Retired
- Posts: 354
- Joined: Thu Sep 04, 2014 11:11 am
- Location: Paris, FRANCE
- Contact:
Re: Bug 211: (Faux) Cannot cancel Bind
I should take a look about that now the casting system is in place.. ^^
Re: Bug 211: (Faux) Cannot cancel Bind
As a general summary, when a character uses an ability, the ChunkServer will call a UseAbility process in the WorldCharacter object. That process determines whether it has to play a casting animation and create a timer for the impact animation. If so, it returns true to ChunkServer, which adds the client to the ChunkServer casting map. The chunk server casting map is checked every 5ms, and if not empty, it will poll each client object to check if the timer has expired. If the timer in the WorldCharacter object has expired, it makes a Lua call to activate the ability script.
All of this works off of the Ability Structs though, so Bind won't work unless we make it an invisible ability.
The easier solution is probably to just make cancelling an ability always send the ability interrupt packet regardless of whether its an item or an ability. We can just add some logic to that interrupt function to check the character's casting map.
All of this works off of the Ability Structs though, so Bind won't work unless we make it an invisible ability.
The easier solution is probably to just make cancelling an ability always send the ability interrupt packet regardless of whether its an item or an ability. We can just add some logic to that interrupt function to check the character's casting map.
- Blackstorm
- Retired
- Posts: 354
- Joined: Thu Sep 04, 2014 11:11 am
- Location: Paris, FRANCE
- Contact:
Re: Bug 211: (Faux) Cannot cancel Bind
Hum, actually i have no log from the sunset where i can found a valid sequence for the bind process...
I've unzipped a lot but, i found always a return opcode (1034) with a value of 3 (that say, "you cannot bind here"), so i don't know if a sound or an animation was played during the cast, and what type of cast is it (i'm using a server cast, a lot less complex than an ability cast packet, because 'Bind" seem to not be a common ability).
So if someone find a log with the bind (269) process and have the value of the opcode 1034 at '0' inside, i would like to retrieve it ^^
I've unzipped a lot but, i found always a return opcode (1034) with a value of 3 (that say, "you cannot bind here"), so i don't know if a sound or an animation was played during the cast, and what type of cast is it (i'm using a server cast, a lot less complex than an ability cast packet, because 'Bind" seem to not be a common ability).
So if someone find a log with the bind (269) process and have the value of the opcode 1034 at '0' inside, i would like to retrieve it ^^
Re: Bug 211: (Faux) Cannot cancel Bind
The bind sounds are in interactiveobjects. There is both a "Bind" and a "BindComplete" sound.
Re: Bug 211: (Faux) Cannot cancel Bind
Here is how bind should work.
You click on the bind stone the following should happen.
Client sends OP_ClientBind
At that point the server should send you the packets for casting a spell I don't remember the exact cast time but it was like 6 seconds and you could interrupt it since it was a cast.
Once it finished casting you get OP_ServerSetBindLocation with the correct response and you also get OP_ServerCharacterUpdate with the updated vector/chunk if the bind was successful.
Still looking for a log
You click on the bind stone the following should happen.
Client sends OP_ClientBind
At that point the server should send you the packets for casting a spell I don't remember the exact cast time but it was like 6 seconds and you could interrupt it since it was a cast.
Once it finished casting you get OP_ServerSetBindLocation with the correct response and you also get OP_ServerCharacterUpdate with the updated vector/chunk if the bind was successful.
Still looking for a log
- John Adams
- Retired
- Posts: 4582
- Joined: Wed Aug 28, 2013 9:40 am
- Location: Phoenix, AZ.
- Contact:
Re: Bug 211: (Faux) Cannot cancel Bind
There is some discussion on whether something is an "Ability" vs "Casting". Just because something is not in a player spell book does not mean it cannot be emulated like an ability, and just hidden from the book. I'd rather not do things 2 different ways, but keep everything going down the same happy path.
Find a way to get this (and other) "passive" abilities to work the same.
Find a way to get this (and other) "passive" abilities to work the same.
Re: Bug 211: (Faux) Cannot cancel Bind
I wish I could remember if casting speed enhancements speeded up binding. I think so, but I just didn't bind often enough nor pay enough attention when binding.
The /bind command seems to work pretty much exactly like /rift (as opposed to .rift). Is rifting an ability or a casting? One difference between /bind and clicking on a rift stone is that I think clicking from too far away would give you a distance error, while /bind would give you a "you can't bind here" error.
The /bind command seems to work pretty much exactly like /rift (as opposed to .rift). Is rifting an ability or a casting? One difference between /bind and clicking on a rift stone is that I think clicking from too far away would give you a distance error, while /bind would give you a "you can't bind here" error.
- Blackstorm
- Retired
- Posts: 354
- Joined: Thu Sep 04, 2014 11:11 am
- Location: Paris, FRANCE
- Contact:
Re: Bug 211: (Faux) Cannot cancel Bind
yep, all that things are already implemented into the game and work well ^^ but in fact, i need more details about the casting process that only logs can give me to replicate the exact process and using the appropriate opcodes... otherwise, we can emulate an ability and do the best ^^ but it's not the same thing
Rift have the same problem... btw.. when you rift, did you have a casting bar on the live server or just the current animation like on NT plz ?
Rift have the same problem... btw.. when you rift, did you have a casting bar on the live server or just the current animation like on NT plz ?