Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow y-rotation of jump area #50

Open
tuedel opened this issue Sep 22, 2019 · 8 comments
Open

Allow y-rotation of jump area #50

tuedel opened this issue Sep 22, 2019 · 8 comments
Labels
enhancement New feature or request

Comments

@tuedel
Copy link
Contributor

tuedel commented Sep 22, 2019

Rotation about the y-axis should work with most mods; x and z would probably break mesecons and the likes.

Possibly related: #16

@thomasrudin thomasrudin added the enhancement New feature or request label Sep 27, 2019
@thomasrudin
Copy link
Contributor

Possibly related: #16

You guessed right: this needs to happen first...

@BobFred7
Copy link

BobFred7 commented Feb 2, 2020

I don't see why Y-rotation would require a single-step jump

@thomasrudin
Copy link
Contributor

I don't see why Y-rotation would require a single-step jump

It needs to be stored temporarily because you are writing in your own area while rotating

@BobFred7
Copy link

BobFred7 commented Feb 3, 2020

It ? needs to be stored temporarily because you are writing ? in your own area ? while rotating ?

Ambiguity/unclear pronouns

please clarify?

@tuedel
Copy link
Contributor Author

tuedel commented Feb 4, 2020

The jump is currently performed as a sequence of individual steps (see https://github.com/mt-mods/jumpdrive/blob/master/move.lua):

  1. Copy all nodes to the target area
  2. Copy/move metadata to the target area
  3. Execute compatibility code for specific mods
  4. Move objects (including players) to the target area
  5. Clear the source area

To perform an in-place rotation, the ship/area which is being jumped has to be written to the same area it is occupying before the jump. Thus, a complete copy of the ship/area (including metadata) would need to be stored somewhere else before starting to jump/writing anything to the map - otherwise the jumpdrive would overwrite parts of the ship/area before even reading them.
Single-step/overlapping jumps pose a similar (but not identical) problem.

The important part here is in-place, which has never been specified explicitly in this issue. 😉
Rotating the ship while performing a jump to another non-overlapping area should be possible independently of #16.

@thomasrudin
Copy link
Contributor

Ambiguity/unclear pronouns

Sorry about that, i was in a hurry :)
Thanks @tuedel

@BobFred7
Copy link

BobFred7 commented Feb 4, 2020

Single-step/overlapping jumps pose a similar (but not identical) problem.

What does "single-step jump" actually mean?

@S-S-X
Copy link
Member

S-S-X commented Jul 1, 2020

What does "single-step jump" actually mean?

Single step jump is overlapping jump where you move whole jumprive area only +1 node to some direction.
There you cant place things to target location before source location is saved beforehand because those areas overlap.

In other words, at beginning of jump your jump target coordinates are inside your current engine radius.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants