I accidentally created this world as a test so had to use the /seed command to get it displayed and then open "Latest log" in my logs folder and scroll to near the bottom of the file to be able to do a Ctrl-C.
You spawn almost in a village with a blacksmith who has 11 iron ingots, an iron pickax, iron leggings, bread, and horse armor.
literally next to the village is a ravine that is actually two ravines fully connected end to end.
In 7 years of play and over 1000 worlds I've never seen this before.
There's a third ravine that crosses the "T".
I did try this seed in 1.13.2 also. Spawn is in the same place and the village is there and has a library and church but no blacksmith. The ravines do not exist, or at least aren't open to the sky.
The south end is at 173, 144 and the north end is at 101, -34.
Taxi distance = 72 + 178 = 250 blocks.
The third ravine is from 149, 182 to 230, 163.
Taxi distance = 81 + 19 = 100 blocks.
The proper way to measure distance in this case is by taking the square root of the sum of the square of the differences*. Thus, the distance is sqrt(72^2 + 178^2) = 192 blocks, which is consistent with two ravines end-end (which vary in length from 85-112 blocks, averaging 98.5. The second ravine is about 83 blocks long (they usually have some curvature so the real length will be longer than the distance between the ends suggests).
*The game uses double values to store the current position and increments them by a value ranging from -1 to +1 by adding the results of sine and cosine functions to them in such a way that the distance covered per step is always one block (ravines don't have much y-variance so x and z are dominant; when sine(x) is +/-1 cosine(x) is 0 and vice-versa, and this describes a circle centered on the starting point, which is one end of a ravine):
float dy = cosine(directionY);
x += (double)(cosine(directionXZ) * dy);
y += (double)sine(directionY);
z += (double)(sine(directionXZ) * dy);
Sines and cosines aren't needed, just think about the pythagorean theorem
I was showing how the game controls the direction that a ravine goes in since BigAlanM was thinking that the game used taxicab distance, not real distance (as it does for water and light propagation, where x/z are alternatively incremented in whole units - otherwise, everything else uses real distance) and even mentioned it ("taking the square root of the sum of the square of the differences"; e.g. sqrt(a^2 + b^2) = distance, while BigAlanM was just adding the x and z distances, which gives you the taxicab distance, which also doesn't show how far the player has to walk since they are not fixed to the block grid).
Here is what happens if you generate 360 ravines, all the same size (100 blocks long) and with no curvature, from the same point, with the direction of each one offset by one degree from the last - the opposite ends describe a circle, not a diamond shape (as with taxicab geometry), with a diameter of 202 blocks (the minimum radius of a ravine is 1.5 blocks, which rounds to 1 extra block at each end):
Actually, I was just using taxicab distance because that indicates the number of rail tracks that would be needed to traverse the distance.
I could have just as easily have calculated the square root of the sum of the squares.
Rollback Post to RevisionRollBack
There are no dangerous weapons. There are only dangerous people. R.A. Heinlein
If you aren't part of the solution, then you obviously weren't properly dissolved.
P U N Y ravine dude you should see the one that my friend found its thousands of blocks long we are flying it in creative to see where it starts and ends
The only way a ravine will ever get that long is if you used one of the two "broken" seeds which cause caves and ravines to repeat, most famously "107038380838084", which has a very large number of such ravines at numerous locations along the z-axis (extending east-west), with surface ravines limited by the longest stretches of water-free terrain, as water will cut them off. There are also other seeds (including "same lower 48 bits" seeds, of which there are a total of 65536 for every 48 bit seed) which produce enough repetition to make ravines chain together (repeating every 2 or 4 chunks, and 8 if two or more ravines generate end-end; 16+ is unlikely as you'd need 3+ ravines in a straight line). It is highly unlikely that a randomly generated world will have one of these seeds though (1 in 141 trillion for repeating every chunk, 1 in 35 trillion for 1,2,4 chunks*).
*It is possible that Random.nextLong() may be able to produce two or more values with the same lower 48 bits since it doesn't directly pull them from the underlying RNG, thus it produces results which are more or less uniformly distributed across the entire 64 bit seed space despite the RNG only using 48 bits. Either way, the chance of getting a random seed with enough repetition is very low (even on a larger scale, up to e.g. the size of my first world, about 6600 blocks or 412 chunks across, only 516 48 bit seeds will repeat within that distance). However, a separate issue causes up to 1/3 of all chunks to have the same caves and ravines at sign-reversed coordinate pairs (e.g. chunks 5,-6 and -5,6), with 1/3 of all seeds affected to this extent; this does not cause infinite repetition though.