
mod:World Border more options for "wrap" logic
Erumaaro opened this issue ยท 1 comments
Information
Minecraft version: 1.20.1
Modloader: Forge
Mod name: World Border
Feature description
The current "wrap" logic teleports the player to the opposite side of the map, which effectivly makes the playable area similar to a torus.
I would like it if was possible to choose a different/new "wrap" logic for each direction:
border types: teleport inside, wrap, pole (choose one)
if pole type: teleport logic will move player half the distance between the other two borders along the current border (in whichever direction puts him inside the playable area) and rotate their view (yaw).
This would make it possible to make the playable area similar to a "sphere" if one diretion has borders that are "poles" and the other one wraps around.
It would also create an interesting geometry if both directions have "poles".
example:
config:
x wraps, z is poles, 2 block margin
X: -180, +180
Z: -90, +90
(mimicking degrees of latitue and longitude on a sphere)
event:
player goes north (-z) and crosses border at (-30, -90) while looking NE (old_yaw = -140), which is a "pole" border.
effect:
player is teleported to (+150, -88) and is looking SE (new_yaw = -40).
(If you go straight to the north pole, you are not teleported to the southpole but you will be walking south on the opposite meridian without having turned around)
pseudocode:
move math for poles in z direction (North-Pole and South-Pole) when crossing +z border:
new_pos.x = modulo( (old_pos.x - minX) + (maxX-minX)/2 , maxX-minX ) + minX ;
new_pos.z = old_pos.z - distanceTeleportedBack ;
move math for poles in x direction ("East-Pole" and "West-Pole") when crossing +x border:
new_pos.x = old_pos.x - distanceTeleportedBack ;
new_pos.z = modulo( (old_pos.z - minZ) + (maxZ-minZ)/2 , maxZ-minZ ) + minZ ;
rotation math for poles in x direction:
new_yaw = - old_yaw
rotation math for poles in z direction:
new_yaw = modulo( - old_yaw , 2 * pi) - pi ;
PS
additional features I would like to request but are (I believe) already requested:
-bigger size limit, preferrably all the way to 30M
-the ability to choose different teleportation logic for each direction of every dimension, including modded dimensions.
Hey!
I appreciate the suggestion! While I'd love to add all features submitted on the issue-tracker, I've got to prioritize working on them due to having limited time. In order to see which features users would like to see most, I've created https://serilum.com/mods/requests, which shows a table with all feature request submitted.
I'm aware that this is not the reaction you were looking for, but the reality is that I can't keep up with the demand. I try to do as much as I can.
Users are able to upvote requests by reacting to the first issue comment on this GitHub page with one of the ๐ ๐ ๐ โค๏ธ ๐ ๐ emoji's. The request with the most unique reactions, will be shown at the top. You can of course add the reactions yourself too, but don't have to :). The author of the feature is already counted as +1.
I won't only focus on popular features in the upcoming years, but it does help with prioritizing. I'll probably work on a combination of popular and interesting/needed/fun submissions.
I'll close this issue with "not planned" as a way to separate an open feature request from an actual completed issue. This does not actually mean it's not planned! Incompatibilities and bug reports will still remain open.
When the feature is implemented, I'll again post a comment and close it as "completed".
Thank you for taking the time to submit the suggestion! โค๏ธ