Log in

View Full Version : Why does Tractor still zone us?



Paksenarrion
06-06-2011, 06:03 AM
There are a ton of things in the game that if you accept a Tractor, you are completely screwed out of something. One of the latest things is that you lose Visitant status in Abyssea if you are tractored.

I don't see how Tractor should act so differently from using a Conflux in Abyssea. Those put you in a completely different part of the zone, so why does such a short distance still cause a zoning?

Sesh
06-06-2011, 10:25 AM
Laziness XD If they responded to this thread it would be more or less... We have looked into the situation and are aware of the problems with tractor at this time. However due to the complex nature and amount of time it would take to fix this problem, the development team has no plans to work on this issue in the near future. As always we apologize for any inconvenience this may cause.

Alhanelem
06-06-2011, 11:29 AM
Confluxes don't just teleport you anywhere. It's a scripted sequence with a set start point and destination. Tractor can be cast anywhere and the destination is not fixed; the code for it is also probably based off of warp. The game and servers are most likely programmed such that you can't normally move while dead and likely treat any kind of normal movement while dead as a red flag for an exploit or glitch.

Krisan
06-06-2011, 02:31 PM
Confluxes don't just teleport you anywhere. It's a scripted sequence with a set start point and destination. Tractor can be cast anywhere and the destination is not fixed; the code for it is also probably based off of warp. The game and servers are most likely programmed such that you can't normally move while dead and likely treat any kind of normal movement while dead as a red flag for an exploit or glitch.
You've been Drawn-In!

...
The ability to move a player without any special scripted events or what not has been around for a very long time. The principle of a mobile mob that's capable of drawing in whole alliances to where-ever it is at shouldn't be all that different from Tractor moving a player to where-ever the caster is.

Also the server doesn't care if you are dead or alive, that has nothing to do with whether you can be moved or not. (Trust me on this one.)

Zyeriis
06-06-2011, 02:43 PM
You've been Drawn-In!

...
The ability to move a player without any special scripted events or what not has been around for a very long time. The principle of a mobile mob that's capable of drawing in whole alliances to where-ever it is at shouldn't be all that different from Tractor moving a player to where-ever the caster is.

Also the server doesn't care if you are dead or alive, that has nothing to do with whether you can be moved or not. (Trust me on this one.)
Draw in isn't the same as tractor, I also doubt its coded the same way. Why? Draw in has no range limit, you are automatically pulled to the enemy's exact location, thus is difference between an exact destination and one that is relatively random. With Tractor, you can only be pulled a set distance in the direction of the caster, not directly to the caster. They are different. You're also dead (can dead players be drawn in? I forget, never have such situations) If they can't be drawn in, this is another indication that the systems are inherently different. The being dead part does matter, not just in the way you see to think it does (you're right the server doesn't care, the coding does). Just ask dead players who don't get atma when the mob dies.

Greatguardian
06-06-2011, 02:53 PM
Dead people can be drawn in. Movement is all client-side to prevent people from lagging into walls and crap.

Krisan
06-06-2011, 03:12 PM
Draw in isn't the same as tractor, I also doubt its coded the same way. Why? Draw in has no range limit, you are automatically pulled to the enemy's exact location, thus is difference between an exact destination and one that is relatively random. With Tractor, you can only be pulled a set distance in the direction of the caster, not directly to the caster. They are different. You're also dead (can dead players be drawn in? I forget, never have such situations) If they can't be drawn in, this is another indication that the systems are inherently different. The being dead part does matter, not just in the way you see to think it does (you're right the server doesn't care, the coding does). Just ask dead players who don't get atma when the mob dies.
The example is that the player can be called by an ability to change its position from any distance to a particular actor - in my example an enemy. The effect could be altered to a targeted spell effect relatively easily, whereas the exact position of the player is changed to that of the player casting the spell. It's incredibly simple, and I don't know why it's not like this to begin with. (There's really no good excuse for it.)

Also yes, Dead players can be Drawn-In. Positioning is also all client based, it's not handled by the server at all so there's nothing extravagant the server has to do that it doesn't already do with Tractor. (Which is: Check for the casting player's XYZ Position and copy the value for use of the targeted player)

Zyeriis
06-06-2011, 04:24 PM
Hmm, figured as much.
Anyway putting it simply.
Draw-in: Point A (Player/Starting Point) > Point B (Enemy/Destination)
Tractor: Point A (Player/Starting Point) > Random point, depending upon distance of Point A to B (once a certain distance is exceed, the point is no longer random) along the line to Point B (Destination) > Point B (Caster)
Conflux: Point A (First Conflux/Starting point) > Point B (Other Conflux/Destination)

I'm not saying that I disagree that it should most certainly be possible. I am merely pointing out the difference as things currently stand. Draw in moves your character to the position of the enemy using the ability, Tractor does not move your character to the position of the person casting the spell (unless they are within a certain range), it only moves you toward that character. Thus, tractor involves an additional step that may require re-loading your character upon that ever-changing point (the point you are moved to during draw-in does not move, the thing it is centered upon does, it's a bit different).

I suppose they could alter tractor to slide your character's corpse across the ground or something, so that they can remove the zoning process from it (reverse knock back or something).

Could also make it so tractor enables you to move your corpse (slide across ground) for a set amount of time. That however might be too silly.

noodles355
06-06-2011, 05:11 PM
Hmm, figured as much.
Anyway putting it simply.
Draw-in: Point A (Player/Starting Point) > Point B (Enemy/Destination)
Tractor: Point A (Player/Starting Point) > Random point, depending upon distance of Point A to B (once a certain distance is exceed, the point is no longer random) along the line to Point B (Destination) > Point B (Caster)
Actually not really. Draw in is moving from one random location to the location of a monster (which can be anywhere). Replace "monster" with "player" and it's exactly what tractor does.

Paksenarrion
06-07-2011, 01:58 AM
I'm sure SE could find some new method for Tractor to work that wouldn't zone us. I've also been a fan of combining Raise and Tractor into one spell, but that's an entirely different matter and I can already hear the cries of "That would unbalance the game!"

I never did realize that the confluxes worked as a "scripted" method, though you can be at any one point around a conflux and it'll move you to a preset location.

The draw-in example is a great one. I recall draw-in pulling dead people as well. I'm sure they could probably work something off of that.

Romanova
06-07-2011, 02:28 AM
Hmm, figured as much.
Anyway putting it simply.
Draw-in: Point A (Player/Starting Point) > Point B (Enemy/Destination)
Tractor: Point A (Player/Starting Point) > Random point, depending upon distance of Point A to B (once a certain distance is exceed, the point is no longer random) along the line to Point B (Destination) > Point B (Caster)

I don't think it'd be that hard to put a range cap on tractor then just make it work exactly like draw-in (make it go straight to the blm instead of near him). And ya as others said draw-in can move dead bodies.

Krisan
06-07-2011, 03:30 AM
Hmm, figured as much.
Anyway putting it simply.
Draw-in: Point A (Player/Starting Point) > Point B (Enemy/Destination)
Tractor: Point A (Player/Starting Point) > Random point, depending upon distance of Point A to B (once a certain distance is exceed, the point is no longer random) along the line to Point B (Destination) > Point B (Caster)
Conflux: Point A (First Conflux/Starting point) > Point B (Other Conflux/Destination)

I'm not saying that I disagree that it should most certainly be possible. I am merely pointing out the difference as things currently stand. Draw in moves your character to the position of the enemy using the ability, Tractor does not move your character to the position of the person casting the spell (unless they are within a certain range), it only moves you toward that character. Thus, tractor involves an additional step that may require re-loading your character upon that ever-changing point (the point you are moved to during draw-in does not move, the thing it is centered upon does, it's a bit different).
I'm not sure I understand entirely what you're saying, I'm afraid. I think I get your reasoning to it to a degree, but still a smidgen confused. The enemy that draws you in can move, yeah, and the point of being drawn in is centered upon the enemy, that's essentially correct. But the enemy can be anywhere in a zone and draw you to its exact location. The way this works is the server checks for the enemy XYZ Pos, copies it, then immediately sends it to the client which then pastes the copied value over the player's XYZ Pos. The player then "teleports" across the map to where-ever the mob is. (This is why when you get drawn in you are seemingly standing underneath\inside the enemy, because you are sharing the exact same coordinates on the map.)

This is actually not all that different from how Tractor already works, they just added an extra step to it whereas you zone before the casters XYZ Pos is pasted over your own. Why you zone is actually not clear to me at all, since as mentioned earlier - movement is completely client-side based, the server only keeps track of where you are, it doesn't control your positioning, so there's nothing special the server would need to do (such as zoning you) to accomplish an effect like Tractor. I suspect this was a spell that was made very early in development of the game, and it was just poorly implemented\designed\coded by someone on the team that never could imagine how the zoning effect could inconvenience us down the line. In fact in retrospect.. I bet they chose this not out of necessity at all, but for the sake of aesthetics.. They probably thought it might look odd if you just suddenly "popped" next to the caster after hitting confirm, as opposed to the zoning effect which kind of adds its own unique illusion to the effect.. That's ultimately pretty silly, but I'd not doubt it for a minute.

Anyway..
I am not arguing that the concept of tractor and draw-in are different, you're right in that sense. Because one can be drawn-in from across a map, and entire alliances can be drawn-in at once. But the mechanics behind the effect of draw-in are in principle exactly what you would need to achieve a zoneless Tractor. The actual distance from which Tractor can be used shouldn't be changed and I'm not arguing that point, not suggesting Tractor should be changed to a Draw-In effect either - only that the mechanics behind how Draw-In function should be applied to Tractor as opposed to using a needless zoning effect which is probably nothing more than aesthetic hogwash.

hiko
06-07-2011, 03:37 AM
what sesh said, it have been coded this way, and with all their spagetti code it would be too much work to fix it withour breaking something else

Krisan
06-07-2011, 03:41 AM
I don't think it'd be that hard to put a range cap on tractor then just make it work exactly like draw-in (make it go straight to the blm instead of near him). And ya as others said draw-in can move dead bodies.
Draw-In in a Nutshell: Check for Enemy XYZ Coordinates, Copy Enemy Coordinates, Paste the copied Coordinates over the Player's own coordinates.
Tractor in a Nutshell: Check for Caster's XYZ Coordinates, Copy Caster's Coordinates, Rezone Player and paste the copied Coordinates over the Player's own coordinates.

They're almost exactly the same as it is now, really. I only used Draw-In as an easy to understand example of why the zoning is not necessary. (And to yes, prove that a dead body can be moved. There's technically never a situation in the game where you can't be moved - even when under the effects of the spell Bind you could be moved across the map by something like Draw-In.)



what sesh said, it have been coded this way, and with all their spagetti code it would be too much work to fix it withour breaking something else
If you understand coding at all, you should know this wouldn't be difficult to implement at all. Making it the way it is now is more of a trial than making it work the way we'd prefer it to. (And the excuse of "spaghetti code" should not be justified.. If their own spell effects aren't outlined clearly in the source files of this game, god knows how they've kept it running this long.)

Paksenarrion
06-07-2011, 04:15 AM
what sesh said, it have been coded this way, and with all their spagetti code it would be too much work to fix it withour breaking something else

I realize that there's a ton of spaghetti code in the game at the moment. If they could find a way to make us NOT lose stuff like visitant status, Campaign tags, or our earnings from Besieged when we get tractored, I wouldn't care so much.

One thing that could debatable be changed alongside a change in making Tractor zone you is that they could allow you to use Tractor in a BCNM settings. Now I know what you're thinking, "accept the wipe and move on." Why? If there's a chance of victory and you've wiped and someone with Raise and Tractor could help recover the group from a failure, why shouldn't we be able to do that? You're also probably thinking "That would make the BCNMs with multiple monsters faceroll." Again, so? You spent the seals, you should be able to get the prize, even if Generic Hume Maleā„¢ does something stupid.

That's my opinion at least. Take it for what it's worth.

Atomic_Skull
06-07-2011, 12:47 PM
(And the excuse of "spaghetti code" should not be justified.. If their own spell effects aren't outlined clearly in the source files of this game, god knows how they've kept it running this long.)

SE is the same company that deleted the original source code and art assets for FF7 to make room for FF8 on their development workstations. It didn't cross their minds to archive all that stuff because it might be needed later. When Eidos made the PC version of FF7 they had to work from a beta version of the source that someone found on a hard drive that was laying around. The original uncompressed cinematics and textures were all gone and they had to use the PS1 versions.

So yeah, their coding practices have never been good.

Alhanelem
06-07-2011, 01:10 PM
The ability to move a player without any special scripted events or what not has been around for a very long time.Draw in isn't a spell or a normal ability or TP move.

Yarly
06-07-2011, 03:58 PM
This doesn't even need to be even considered until 2013.

GlobalVariable
06-07-2011, 04:07 PM
I'd wager the current programming staff wouldn't know how to edit code from that far back in the games history to change how tractor works.

p.s.
I had a GM move me without zoning me once. I was stuck on a rock and didn't want to lose my TP or have to run allll the way back while my party was fighting the NM. I've had to be unstuck exactly 3 other times and this was the only instant I wasn't zoned. I forget which GM that was but thank you, saved my party a lot of hassle trying since I was supposed to tank that bugger. :)

Camate
06-10-2011, 06:27 AM
After checking with the development team in regards to this, they mentioned that they are not currently planning anything to make it so using tractor will not result in an area change. Since they feel the measures needed to address this are not realistic, they have no plans to make changes. We do understand that it is inconvenient that visitant status will be removed upon use and we apologize for this.

cidbahamut
06-10-2011, 07:14 AM
After checking with the development team in regards to this, they mentioned that they are not currently planning anything to make it so using tractor will not result in an area change. Since they feel the measures needed to address this are not realistic, they have no plans to make changes. We do understand that it is inconvenient that visitant status will be removed upon use and we apologize for this.
This is not an acceptable response.

Daniel_Hatcher
06-10-2011, 08:32 AM
Well tough, it's the one you got, deal with it!

Invader
06-10-2011, 08:55 AM
So here is a question: do teleporters in other zones count as a zone change too? Why can't w/e server-side code used for the teleporters in, say, velugannon palace, be used for tractor as well? All the same information should be present... and if all it is is a hard-coded location, couldn't it be made to be variable with regards to the location of the player casting Tractor?

As a programmer, this sounds like a cop-out. More technical details please because I'm not buying this.

Korpg
06-10-2011, 09:15 AM
So here is a question: do teleporters in other zones count as a zone change too? Why can't w/e server-side code used for the teleporters in, say, velugannon palace, be used for tractor as well? All the same information should be present... and if all it is is a hard-coded location, couldn't it be made to be variable with regards to the location of the player casting Tractor?

As a programmer, this sounds like a cop-out. More technical details please because I'm not buying this.

2 differences from a teleporter and tractor "zoning."

Teleporters (including Confluxes) have a specific entrance/exit area. It is known where the player is going to end up. Tractor has no specific entrance/exit point.

Your example doesn't affect Abyssea or the time system placed on such said system.

Bumbeen
06-10-2011, 09:25 AM
Mayhaps there is some abuse potential without the zoneing..

Korpg
06-10-2011, 09:45 AM
Mayhaps there is some abuse potential without the zoneing..

You mean the old Byakko route people used to take when sky was popular?

Having a WHM and BLM (or WHM/BLM) go thru the zone by him/herself, and the other 17 people kill themselves to Groundskeepers just to get tractor-raised instead of going all the way around the zone in a group. That didn't help save time, unless the WHM and BLM (or WHM/BLM) was the first in the zone.

Invader
06-10-2011, 09:50 AM
Teleporters (including Confluxes) have a specific entrance/exit area. It is known where the player is going to end up. Tractor has no specific entrance/exit point.

I already said that "if all it is is a hard-coded location, couldn't it be made to be variable with regards to the location of the player casting Tractor". Please read the entire post before replying.


Your example doesn't affect Abyssea or the time system placed on such said system.
How does Visitant Status (which is what I assume you mean by "time system") have anything to do with reprogramming how Tractor works?

Korpg
06-10-2011, 09:59 AM
I already said that "if all it is is a hard-coded location, couldn't it be made to be variable with regards to the location of the player casting Tractor". Please read the entire post before replying.

I'm not a programmer, but I don't think your way works because Tractor does not have a specific set of coordinates to kick you out of. You have to actually "zone" to get from one point to another while dead. Teleports have a specific set of coordinates to pop you at. When you hit a teleport, it takes you to X, Y, Z at this specific map.



How does Visitant Status (which is what I assume you mean by "time system") have anything to do with reprogramming how Tractor works?

I said your example. If you said Conflux, your example would make more sense in the matter.

Akujima
06-10-2011, 10:57 AM
After checking with the development team in regards to this, they mentioned that they are not currently planning anything to make it so using tractor will not result in an area change. Since they feel the measures needed to address this are not realistic, they have no plans to make changes. We do understand that it is inconvenient that visitant status will be removed upon use and we apologize for this.


This is where we mention PS2 Limitations.

Rhianu
06-10-2011, 10:59 AM
I'm not a programmer, but I don't think your way works because Tractor does not have a specific set of coordinates to kick you out of.
I've taken a few college classes on programming, and I'm only a beginner, but even I can tell you that it shouldn't matter whether the calculation is preformed using a pre-designated number or a variable. Computers are perfectly comfortable working with either type of data.

If the game can teleport players around an area without zoning by using set numbers, then it can also do so using variables. In theory, it could work by reading in the coordinate values of the BLM casting Tractor, and then reassigning the coordinate values of the player he or she is casting Tractor on to match those values. The mere presence of a variable in an equation should not necessitate a loading screen. The real reason, whatever it is, has to be something else.

More detailed information on exactly why it supposedly can't be done is needed here.

Laraul
06-10-2011, 11:18 AM
Hmmm... I agree... and I have a simple solution. Remove tractor.

Problem solved...

I don't think this is such a simple problem to solve. Leave it be.

Invader
06-10-2011, 11:21 AM
I've taken a few college classes on programming, and I'm only a beginner, but even I can tell you that it shouldn't matter whether there is a pre-designated number or a variable. Computers are perfectly comfortable working with either type of data.

If the game can teleport players around an area without zoning by using set numbers, then it can also do so using variables. In theory, it could work by reading in the coordinate values of the BLM casting Tractor, and then reassigning the coordinate values of the player he or she is casting Tractor on to match those values. The mere presence of a variable in an equation should not necessitate a loading screen. The real reason, whatever it is, has to be something else.

More detailed information on exactly why it supposedly can't be done is needed here.

Which is why I said I wanted technical details. You are basically correct in that, if it is not zoning us during a teleporter (conflux or otherwise) then it shouldn't need to zone us when using tractor.

I am thinking that since location is updated client side (which is why you can still run around while d/cing) they don't have a way to tell the client that you should be at X,Y,Z coordinate without also telling the client to change areas. That is the only acceptable answer they could give as to why it can't currently be done, but I don't believe it is the case... hence why I ask whether NPC teleporters are, in fact, also using a zone change.

Rhianu
06-10-2011, 11:27 AM
I'm trying to remember whether or not the "Now Loading" screen pops up when using other same-zone teleportation methods.

I don't think I ever really paid that much attention to it before. :X

Maurauc
06-10-2011, 12:19 PM
Give Black Mage "Draw In".. Can cast on dead or alive people, gives a prompt, and doesn't require us to zone. Just make it a magic version of what monsters have.. Problem solved?

Sekundes
06-10-2011, 12:40 PM
I didn't read everything but I agree with the draw in concept. The simple fact that certain mobs can use draw in completely null any argument against making this possible. At this point it is just finding a good way of making in practical.

Malamasala
06-10-2011, 03:36 PM
I'm 95% certain tractor zones you to make it possible to tell the difference between pos hacking and tractoring. That is assuming you can't third party the effect of zoning 10 meters at a time.

Arcon
06-10-2011, 03:51 PM
SE should hire a few people on here into the development team. Atomic Skull comes to mind. RAIST too. I humbly offer my services as well. I would really love to challenge those comments by the development team. Of course, just rambling on here no one believes people when they say it's not that hard, unfortunately we can't prove otherwise, short of designing our own mimic game. Seriously SE, consider it.

GlobalVariable
06-10-2011, 05:36 PM
SE should hire a few people on here into the development team. Atomic Skull comes to mind. RAIST too. I humbly offer my services as well. I would really love to challenge those comments by the development team. Of course, just rambling on here no one believes people when they say it's not that hard, unfortunately we can't prove otherwise, short of designing our own mimic game. Seriously SE, consider it.

How much you want to bet the code is obfuscated by whatever programmers they had back at the beginning AND the source isn't well commented (even if the commenting translates well into your native language) to boot?

While I think they should reconsider this being "worth it", even if 1 or both of those isn't the case, this could take more hours (and thus money) than you might expect for a seemingly simple change.

Tagrineth
06-10-2011, 07:37 PM
Which is why I said I wanted technical details. You are basically correct in that, if it is not zoning us during a teleporter (conflux or otherwise) then it shouldn't need to zone us when using tractor.

I am thinking that since location is updated client side (which is why you can still run around while d/cing) they don't have a way to tell the client that you should be at X,Y,Z coordinate without also telling the client to change areas. That is the only acceptable answer they could give as to why it can't currently be done, but I don't believe it is the case... hence why I ask whether NPC teleporters are, in fact, also using a zone change.

Actually this makes perfect sense.

With NPC teleporters and Confluxes, the player is initiating the teleportation effect themselves. Quick go-ahead from the server, the client updates the position, the server receives the confirmation that you're at the new position, verifies that you initiated the motion via NPC (without verification, you'd be hacking!) and presto! new position.

In other words, we're still working all client-side with client-server confirmation - there's no server "putting" your character at a new location.

Draw-in is similar in that it's a mob effect and thus the server itself knows the position of the mob at a given instant so the server can verify the draw-in command and send it to the player, thus sending the player to a specific point that is clear and functionally known to the server.

I think the problem lies in the way the server cross-verifies whether "boosted" transportation methods (aka anything that isn't running, especially anything that breaks Flee speed) are legit or not. They'd probably have to add a whole new layer of client-server communication and back-and-forth verification to ensure that your corpse's warping to another player's location was legit, since lag can affect so many variables. It wouldn't be totally out of the question for an intrepid hacker to abuse the newfound ability to perform an arbitrary corpse-port with clever use of falsified client-server verification ("oh, don't worry, I was just Tractored!") - and before you say "oh well the server can just verify Tractor was used"... well in the case of lag or even a d/c of the person casting Tractor, it would cause a serious conundrum because the client-server verification that Tractor was cast would no longer exist, which would set off a red flag the size of China and possibly cause a legit player to get banned for pos hacking. All because of a stupid asinine mishap of a failed client-server verification.

Simply put, for this to work and be in any way reliable, the server would be forced to trust the client too much - which could easily lead to abuse.

I'd rather see SE add a server-side special case to certain effects that allow the zoning to 'fudge' maintained status - in other words, add a special flag to Visitant status that can verify if you zone with the same entry and exit zones, your Visitant status is auto-restored by the server and position retained instead of being cleared as normal.

Given SE's penchant for poor programming practices, I'd hazard that the above would be significantly easier and safer to add to the code than changing the fundamentals of Tractor itself.

Kraggy
06-10-2011, 08:47 PM
After checking with the development team in regards to this, they mentioned that they are not currently planning anything to make it so using tractor will not result in an area change. Since they feel the measures needed to address this are not realistic, they have no plans to make changes. We do understand that it is inconvenient that visitant status will be removed upon use and we apologize for this.

Well prophesied this man:


Laziness XD If they responded to this thread it would be more or less... We have looked into the situation and are aware of the problems with tractor at this time. However due to the complex nature and amount of time it would take to fix this problem, the development team has no plans to work on this issue in the near future. As always we apologize for any inconvenience this may cause.

It was an asinine mechanic the day it was released, God knows what the technical reasons are but the negative repercussions in-game clearly didn't bother SE back then, or ever since.

Juilan
06-11-2011, 02:01 AM
After checking with the development team in regards to this, they mentioned that they are not currently planning anything to make it so using tractor will not result in an area change. Since they feel the measures needed to address this are not realistic, they have no plans to make changes. We do understand that it is inconvenient that visitant status will be removed upon use and we apologize for this.
haven't read past this but i guess atleast people called bs, the reason it'd go out of the way for the devs is they'd have to rebuild the system for tractor, get apoc and just zombie out of a bad spot... but in regards to this, they dont want you skeeting across the ground when you're dead, that'd be too much fun

Invader
06-11-2011, 02:03 AM
Actually this makes perfect sense.

With NPC teleporters and Confluxes, the player is initiating the teleportation effect themselves. Quick go-ahead from the server, the client updates the position, the server receives the confirmation that you're at the new position, verifies that you initiated the motion via NPC (without verification, you'd be hacking!) and presto! new position.

In other words, we're still working all client-side with client-server confirmation - there's no server "putting" your character at a new location.

Draw-in is similar in that it's a mob effect and thus the server itself knows the position of the mob at a given instant so the server can verify the draw-in command and send it to the player, thus sending the player to a specific point that is clear and functionally known to the server.

I think the problem lies in the way the server cross-verifies whether "boosted" transportation methods (aka anything that isn't running, especially anything that breaks Flee speed) are legit or not. They'd probably have to add a whole new layer of client-server communication and back-and-forth verification to ensure that your corpse's warping to another player's location was legit, since lag can affect so many variables. It wouldn't be totally out of the question for an intrepid hacker to abuse the newfound ability to perform an arbitrary corpse-port with clever use of falsified client-server verification ("oh, don't worry, I was just Tractored!") - and before you say "oh well the server can just verify Tractor was used"... well in the case of lag or even a d/c of the person casting Tractor, it would cause a serious conundrum because the client-server verification that Tractor was cast would no longer exist, which would set off a red flag the size of China and possibly cause a legit player to get banned for pos hacking. All because of a stupid asinine mishap of a failed client-server verification.

Simply put, for this to work and be in any way reliable, the server would be forced to trust the client too much - which could easily lead to abuse.

I'd rather see SE add a server-side special case to certain effects that allow the zoning to 'fudge' maintained status - in other words, add a special flag to Visitant status that can verify if you zone with the same entry and exit zones, your Visitant status is auto-restored by the server and position retained instead of being cleared as normal.

Given SE's penchant for poor programming practices, I'd hazard that the above would be significantly easier and safer to add to the code than changing the fundamentals of Tractor itself.

This makes zero sense, I'm sorry.

Here is how the mechanic should work:

1) Player A casts Tractor on Player B.
This would involve sending the information that "Hey, I just cast tractor on Player B!" to the server.

2)The server records the current position of the player casting tractor as well as the target (Player B) on whom it was cast.

3)The server tells Player B that Player A cast tractor on them, prompting the confirm/deny prompt for accepting Tractor on Player B's client.

4)Player B accepts tractor, at which point the server does whatever it would do for teleporters/draw in/confluxes/whatever to move Player B to the recorded coordinates.

In this scenario, which is the only way it would ever be done, Player B cannot "hack" a tractor, because the server will have no knowledge of the associated position to which they should be moved. In other words, regardless of however it is done now, Player B's client should have no prior knowledge, nor any control over the location to which they move. This would prevent hacking the Tractor system.

Juilan
06-11-2011, 02:03 AM
So here is a question: do teleporters in other zones count as a zone change too? Why can't w/e server-side code used for the teleporters in, say, velugannon palace, be used for tractor as well? All the same information should be present... and if all it is is a hard-coded location, couldn't it be made to be variable with regards to the location of the player casting Tractor?

As a programmer, this sounds like a cop-out. More technical details please because I'm not buying this.

they don't count as zone changes, you just far surpass the monster's tracking range, watch out they'll make you need to re-tp every time you take a porter!

Bumbeen
06-11-2011, 08:57 AM
You mean the old Byakko route people used to take when sky was popular?

Having a WHM and BLM (or WHM/BLM) go thru the zone by him/herself, and the other 17 people kill themselves to Groundskeepers just to get tractor-raised instead of going all the way around the zone in a group. That didn't help save time, unless the WHM and BLM (or WHM/BLM) was the first in the zone.

No. I mean perhaps someone could tractor you off the side of a cliff without the zoning and then it might require a GM to fix your position.

Sagian
06-12-2011, 11:31 AM
No. I mean perhaps someone could tractor you off the side of a cliff without the zoning and then it might require a GM to fix your position.

Considering Tractor pulls a player to the caster's position, you can't tractor someone off the side of a cliff unless YOU are off the side of a cliff.

I'm still trying to imagine how it could be abused, but I really don't see any valid excuse for not re-working Tractor.

Bumbeen
06-12-2011, 11:37 AM
Considering Tractor pulls a player to the caster's position, you can't tractor someone off the side of a cliff unless YOU are off the side of a cliff.

I'm still trying to imagine how it could be abused, but I really don't see any valid excuse for not re-working Tractor.

Right now it works that way, but maybe if it didn't zone there are some hurdles like that to overcome. I am not trying to make excuses for SE btw. Technical reasons be damned, they can figure it out if the order came down to do it.

Maurauc
06-12-2011, 11:55 AM
I can see why the POS hacking idea comes up when dead, which may be why you zone, but an easy way around it could be to flag the player when they have tractor cast on them (Hooray, new status effect only available while dead!"), and that tractor can only be cast whenever you're 20' or less away from the corpse. The POS hack check can still be done. Just make sure they don't move huge distances and you're set.

Aliron
06-13-2011, 04:42 AM
Wouldn't it be possible to make the visitant status work similar to signet/sigil/sanction which does NOT wear off when you change areas or get tractored. The duration of those is based on various factors, for instance Sigil duration is based on a key item, just like how long to make Visitant last is based on the Stone key items spent. Even the new hourglass key item in Dynamis works in a similar fashion to what we're looking for. It could be as simple as copy and pasting some of the coding for the Hourglass to Visitant status in some parts.

Dazusu
06-14-2011, 11:29 PM
Since they feel the measures needed to address this are not realistic

Completely unrealistic to change the players XYZ. POS bots have been doing this since 2004. If a bedroom programmer can do it in two hours, an SE programmer should be able to do it, and make it look pretty in the same amount of time.

This isn't going to open up the door for exploits. If people want to POS hack across a zone and get themselves banned - changing the Tractor system isn't going to change this. The server will know where the client should end up, if they end up somewhere different than expected, ban 'em.

(If someone already posted this, sorry, didn't read past this response.)

Dazusu
06-14-2011, 11:37 PM
How much you want to bet the code is obfuscated by whatever programmers they had back at the beginning

And can simply be unobfuscated using the same process by which it was obfuscated. I bet you it is well commented. Programmers worth their balls comment their code well. If there's a massive team working on a game, it HAS to be commented for obvious reasons. This is just speculation on your behalf, though (badly thought out speculation at that)

However, SE giving 'players' access to the source code - not bloody likely.

I've noticed though, everytime SE says something is 'too hard' or 'too long of a process' to do, you seem to swoop in and give 20 different reasons (none of which are substantiated or make much sense from a programmers point of view) as to why they can't do it. Do you work for SE?

GlobalVariable
06-15-2011, 01:20 PM
And can simply be unobfuscated using the same process by which it was obfuscated. If it were that easy to undo, the programmer would bother doing it - I'm not talking about the company using obfuscation to protect its IP. At best only makes it a time consuming process to reverse engineer code so the idea is to make it annoying for a company that replaces you.

My brother did it to all his code when he realized the company he was working at was trying to save money by having him train what would be his replacement. Companies that don't have good version record/backup practices are particularly vulnerable. I usually see it in code from lower paid programmers out of india or china but this sort of thing does happen, not frequently heard of happening in large well known companies, but it happens.

Byrth
06-15-2011, 01:59 PM
Completely unrealistic to change the players XYZ. POS bots have been doing this since 2004. If a bedroom programmer can do it in two hours, an SE programmer should be able to do it, and make it look pretty in the same amount of time.

This isn't going to open up the door for exploits. If people want to POS hack across a zone and get themselves banned - changing the Tractor system isn't going to change this. The server will know where the client should end up, if they end up somewhere different than expected, ban 'em.

This is exactly how I think about it.

If you're worried about it being abused:
1) They would have to be dead.
2) When you cast Tractor, the server obviously saves a location that the spell was cast from. People can only be moved to that point and they can't move while dead, so if they POS hack anywhere else it should definitely raise some eyebrows.

The reason that SE doesn't instantban for POS hacking basically comes down to bad internet connections. If you have a shitty internet connection, sometimes you lag and your position doesn't get reported to the server for a few seconds/up to a minute or two. You can still run around in game, though. So when your position gets updated, it looks (for all intents and purposes) to the server like you warped (or POS hacked) from one place to another.

Because people can't move while dead, even if they lag they shouldn't do anything that appears to be POS hacking. SE could change the way Tractor works and be much more strict with the way the server handles POS hacking dead characters with no ill effects on gameplay.

Arcon
06-15-2011, 04:19 PM
The reason that SE doesn't instantban for POS hacking basically comes down to bad internet connections. If you have a shitty internet connection, sometimes you lag and your position doesn't get reported to the server for a few seconds/up to a minute or two. You can still run around in game, though. So when your position gets updated, it looks (for all intents and purposes) to the server like you warped (or POS hacked) from one place to another.

There are ways to work around that though, at least partially. You can check if the distance from the previous point to the current point is less than or equal to than the maximum distance you could have traveled in the time since the server last received an update. If it is, it's still possible that it was hacking, however if it's bigger it definitely is hacking.

Byrth
06-15-2011, 04:26 PM
There are ways to work around that though, at least partially. You can check if the distance from the previous point to the current point is less than or equal to than the maximum distance you could have traveled in the time since the server last received an update. If it is, it's still possible that it was hacking, however if it's bigger it definitely is hacking.

Their autobanner checks for movement speed, iirc, which would also catch POS hacking. If you're going faster than flee, you can end up talking to GMs. Still, because movement speed is necessarily zero while dead, it should be easy to distinguish between legitimate Tractors and a dead character POS hacking. Basically, there's no reason that they couldn't implement this.

Just going to drop this here:
http://wiki.bluegartr.com/bg/%28_%29-side

Invader
06-28-2011, 04:44 AM
Don't know about the rest of you, but I'm still hoping for some more indepth information on why this is not happening. Camate?

wildsprite
06-28-2011, 04:48 AM
I think it can be answered pretty easily, in order to fix this, they would have to remove the original tractor spell and give us a new one in its place, because its code is bad, this might not be a feasible idea, but that would not stop them from creating a replacement spell, they would just need to name it something else

Invader
06-28-2011, 06:22 AM
I disagree wildsprite; it can be fixed and would probably take more work creating an entirely new spell than modifying an existing one. It needs a new entry in w/e spell database they have, which means filling out the element and adding it into the DATs, translating the name into English, German, and French (from Japanese) and all the server-side code of handling a new spell ID. They should just fix Tractor and its easy to do, idk why they say its hard. Hence the request for more information.

wildsprite
06-28-2011, 06:42 AM
while I might agree with you under normal circumstances, the devs have said that the original spell was tied to spaghetti code and would be most difficult to fix, therefore adding a new spell rather than modifying the original would just be less complicated, when this game was originally coded they didn't do much documentation to allow for easier solutions and tractor was among that code

GlobalVariable
06-28-2011, 06:50 AM
I think the problem is exactly that; they don't know which noodle in the spaghetti code because its so far back none of the current team would have worked on that sections, and so decided it would take to long.

Raxiaz
06-28-2011, 03:15 PM
That's a ****ty excuse, and after FFXIV's poor reception, I'm really not surprised by SE. They need to stop cutting corners and actually take the time to develop a good game, something they haven't done since FFX, personally.

Arcon
06-28-2011, 03:17 PM
I think the problem is exactly that; they don't know which noodle in the spaghetti code because its so far back none of the current team would have worked on that sections, and so decided it would take to long.

I can understand that excuse in general, sometimes code is just really bad. I'm just having trouble to believe that it applies in this case. What does tractor actually do? It gives the dead player a "tractor effect'. It saves the location of the caster when the spell went off and makes a dialog pop up on the players screen. If the player accepts, it starts the zoning process.

They wouldn't even need to touch the spell. This zoning subroutine is completely unrelated to the spell itself, it's just one piece of code, that zones you and puts in a certain location after the zoning process. I could very well imagine, that any kind of zoning or moving could be done by one function that looks something like this:


setLocation(area, pos)

If area = current area, it's basically a draw in and puts a player on the appropriate position in the pos vector (may call a different subroutine for that). If area =/= current area, it iniates a zone. We do know that both mechanisms do already exist, SE wouldn't even need to know them or how they work. If the zone(area, pos) or drawIn(pos) functions are really extremely complicated and spaghettified, who cares? They don't have to change them or even understand how they work or even look at them. Just use them.

I just don't see how spaghetti code can be an excuse in this case. I'd love to get my hands on the source code. If it really was as bad as everyone says, I would at least be at peace with the way things are going, but hard to just take the same excuse time and again, when it doesn't seem to make any sense. As Daz put it:

POS bots have been doing this since 2004. If a bedroom programmer can do it in two hours, an SE programmer should be able to do it, and make it look pretty in the same amount of time.

GlobalVariable
06-28-2011, 05:37 PM
I can understand that excuse in general, sometimes code is just really bad. I'm just having trouble to believe that it applies in this case. Yeah well whatever the actually technical details are, they should darn well reconsider their decision here. The mechanic has been a problem in enough cases to make me think it can present future problems to. If it had been fixed back when besieges was new, or even when campaign was still going strong, we'd never have run into it as a problem in abyssea. I really don't want it to be there to screw people on whatever new thing they come up with next.

Raxiaz
06-29-2011, 12:27 AM
Too true, GlobalVariable. Too true.

Darkshade
06-29-2011, 02:37 AM
If the programming is bad or whatever, I just don't see why they couldn't keep the spell but write a new effect for it so it calls the new code when it is cast to do what other users are suggesting in this thread. I'm not a C++ computer science major but it doesn't sound that hard to do, really.

Invader
06-29-2011, 06:31 AM
while I might agree with you under normal circumstances, the devs have said that the original spell was tied to spaghetti code and would be most difficult to fix, therefore adding a new spell rather than modifying the original would just be less complicated, when this game was originally coded they didn't do much documentation to allow for easier solutions and tractor was among that code Could you point me to the Dev post by Camate or another SE official that said the problem is because of spaghetti code? I didn't see that post. I DID see other players speculating that that was the reason. Either way, it's not an excuse.