TPAHere TARDIS command
roberestarkk opened this issue ยท 14 comments
Describe the feature request
The /ttravel ? command is basically /tpa for a TARDIS.
It would be neat if there could also be a command that is basically /tpahere for a TARDIS.
Also as an aside, what's the difference, if any, between /ttravel and /ttravel player ?
I ask with a view to what the actual command would end up being, while still maintaining existing command consistency.
Maybe a new command like /tcall or /tsummon
Or maybe a modifier to an existing command like /ttravel request/summon or /ttravel ?here
?
Ah many thanks! It works a treat.
The only thing my members would suggest be changed (so far in our testing) is that it tell them if/when the timelord accepts the call. Both because it's good to know in general, and so they don't stand there and get landed on :)
Also, I notice it doesn't have the nulls any more, but all we've updated since then is TARDIS...
Did it turn out to be something TARDIS related, or have you added handling on your end to work around something else, and I can expect it to potentially crop up again with other plugins until I go update something else?
That comment on chat messages not giving feedback might also apply to /ttravel <playername> ?
but I'm not sure, no-one is logging in to help me test just yet :(
The only thing my members would suggest be changed (so far in our testing) is that it tell them if/when the timelord accepts the call.
I did have this in the previous version, but it's a bit harder to do now as there is a disconnect between accepting the request and actually clicking the handbrake, we'd need to track whether they accepted and then send the message if they release the handbrake - but only if they haven't set another destination in between...
Also, I notice it doesn't have the nulls any more, but all we've updated since then is TARDIS... Did it turn out to be something TARDIS related, or have you added handling on your end to work around something else, and I can expect it to potentially crop up again with other plugins until I go update something else?
It was a code change in TARDIS - when composing the message, I was initially using Player.getDisplayName()
this was returning an unformatted string (I presume another plugin sets a prefix or something at some stage) but TARDIS just sent the unformatted string - I just changed it to Player.getName()
.
it's a bit harder to do now as there is a disconnect between accepting the request and actually clicking the handbrake
It would be nice to know when the TARDIS actually starts travelling, true...
But I think it's also important to say that the timelord accepted the request to set the destination.
The more immediate feedback will at least tell them:
a) They got the command right and everything is working
b) The timelord is aware of the request
c) The timelord is planning to accept and travel to that spot (eventually)
d) They should treat the landing zone as 'hot' for the next little while (rather than either waiting for the timeout, or assuming it's safe until they get a response)
If the wording is something like "%Player% has agreed to your proposed destination for their TARDIS" or "%Player% has answered your call, and their TARDIS has those co-ordinates set for travel" or some such, they won't necessarily expect the transport to happen right then and there...
That said, I reckon the majority of the time the timelord is going to travel to them pretty soon after accepting, if not immediately, and the edge cases can be explained away by the players communicating, ie: "Oh sorry I forgot" or "Oh sorry, something came up".
I just changed it to Player.getName()
Ah phew, thanks, I do love avoiding updating other plugins! Most plugins make me update them manually :(
I'm not particularly sure what you are asking for here...
Do you want a command that asks a player to move their TARDIS to the location you are looking at?
Also as an aside, what's the difference, if any, between
/ttravel
and/ttravel [player] ?
There is no /ttravel
command by itself, it requires an argument or two, so not sure what you mean.
Exactly that yes!
So if I'm wandering around in my TARDIS, and a friend wants me to come check something out, rather than them saying in chat "Hey come check this out" and me using the command to request to travel to them, and them possibly having to move back to a safe landing spot and accepting, they can just run whatever the command is and I'll get a message saying " wants you to travel to them, do you accept?" which I can accept to set the destination.
Sorry, I mean what's the difference between /ttravel player [playername]
and /ttravel [playername]
except that the latter allows you to specify a ?
Only difference between the commands is the request
/ttravel player [playername]
just travels to the player if they are online
/ttravel [playername] [?|tpa]
travels to the player if they accept your request
Lovely thank you, I've just had a chance to do some testing with it.
Is it possible to have it so that people who don't have a TARDIS themselves can use it?
It seems as though perhaps it's applying the "Do you even have a TARDIS?" check from the base /tt comehere
Also, when I type "tardis comehere accept", it doesn't set the destination so I can do the handbrake, bar-watching, handbrake process...
It seems to set the destination, release the handbrake, land, tell me to set the handbrake in chat, and then set it automatically anyway so when I try it's already set.
I'm not against it doing the whole process automatically if it's easier that way, but the feedback doesn't match what it's doing.
Also, if I try to do it while the Timelord isn't in their TARDIS, I get this, which looks almost right except for all the nulls:
https://i.imgur.com/1Yd4ud4.png
Is it possible to have it so that people who don't have a TARDIS themselves can use it?
Hmm, think it will need to NOT be a /tardis
command then, maybe /tcall [player]
as you initially suggested.
Will add the handbrake, bar-watching, handbrake process to the new command.
Also, if I try to do it while the Timelord isn't in their TARDIS, I get this, which looks almost right except for all the nulls
That's not TARDIS adding the nulls, but I think I know what the problem is...
Would love to see more messages in chat to provide feedback to players using these features.
If you use /tcall
or /ttravel <playername> ?
You don't get any feedback at all until the the other player does something.
If you use [/]tardis <thing> accept
and it fails, you don't get feedback either, only the other person sees why it fails.
(Also, that could probably be shortened to tardis accept
or tardis yes
for both cases, similarly to how Essentials tpa
and tpahere
uses tpaccept
or tpyes
to respond to both. It also has tpno
and tpreject
but I don't know that it'd necessarily be worth adding those for this)
Also if you use tardis request accept
and it succeeds, it tells you they've accepted your 'rescue' request, which is not the same thing necessarily.