Infinite world size

thetoon
Member
Posts: 106
Joined: Tue Dec 11, 2012 12:55

Re: Infinite world size

by thetoon » Post

Kilarin wrote:A possible suggestion for those who want more horizontal exploration space. An approach that MIGHT require a smaller engine rewrite.
Don't get me wrong : I didn't expect such a thing to be doable without modifying the engine. The whole discussion has been mostly spent on "why would you ever need this?", but we're actually in the "Feature discussion" section, and I wasn't asking for help on doing that in a mod.

Your idea might be doable, but it MAY be more complicated than just using bigger coordinates. Still, every lead on how to do it is interesting, IMHO.

User avatar
Kilarin
Member
Posts: 896
Joined: Mon Mar 10, 2014 00:36
GitHub: Kilarin

Re: Infinite world size

by Kilarin » Post

thetoon wrote: I wasn't asking for help on doing that in a mod.
Nope, it would still be an engine rewrite.
thetoon wrote: it MAY be more complicated than just using bigger coordinates.
Yep. That's why I was asking for the developers opinions. There is every possibility that wraparound logic might be far more complicated than just increasing the size of the coords. I can foresee possible problems with mapgen logic when crossing the edges? It all depends on how the code is structured.

thetoon
Member
Posts: 106
Joined: Tue Dec 11, 2012 12:55

Re: Infinite world size

by thetoon » Post

Kilarin wrote:Nope, it would still be an engine rewrite.
My point, exactly. Well, rewrite might be a bit of an exageration, but that's certainly not just a matter of a changing a datatype declaration. I'm surprised, though, how well minetest behaves when you cross the boundaries : you can easily teleport beyond the limits and things keep working. Just without ground. That's encouraging.

What I'm calling here is not a patch, nor even an indication on how to do it, it's just collective brainstorm about how high the cost of an horizontally bigger map would be. Then we might eventually decide it's not worth it.

User avatar
rubenwardy
Moderator
Posts: 6978
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

Re: Infinite world size

by rubenwardy » Post

It would be easier to change the way positions are serialised (stored) than doing wrap around. As in making it so it is a 192k etc map. From what I understand of the engine, anyway.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: Infinite world size

by paramat » Post

kilarin, i'm fairly sure your idea could be integrated into a lua mapgen ... but i'm not interested enough to do this myself.

emugod
Member
Posts: 33
Joined: Tue Aug 13, 2013 19:49

Re: Infinite world size

by emugod » Post

I think the 'wraparound logic' that's being discussed would be a very valuable addition/change in its own right, with more good uses beyond fudging world space/size. Like creating 'spherical' worlds by removing any edge, having all four edges of the map loop back to the opposite edge. Or you could fake a 3D cube planet with six 'faces' and fourteen (did i count right?) looping/wrapping edges - possibly useful for letting you easily later generate an external view (as in a space game with multiple planets), by ripping just the visible surface geometry (and this might permit some limited external interaction, or assist in more seamless transition between zones).

And, am I the only one who feels this somehow connected to the VAE concept? I feel like the two would be similar in a lot of ways, in terms of what logical difficulties they present, and might both be best solved with the same root change.

prestidigitator
Member
Posts: 647
Joined: Thu Feb 21, 2013 23:54

Re: Infinite world size

by prestidigitator » Post

emugod wrote:Or you could fake a 3D cube planet with six 'faces'....
That's an awesome idea! You could make use of a heck of a lot more of the 64k^3 volume that way. Use a cube with a "radius" (center to face distance) of up to 30k. Depending on which of six regions you are in (determined by which primary axis coordinate has the greatest magnitude and its sign), up/down would just be in a different direction (for determining camera orientation, gravity, and "height"). There'd be the +X region, and -X, +Y, -Y, +Z, and -Z.

emugod
Member
Posts: 33
Joined: Tue Aug 13, 2013 19:49

Re: Infinite world size

by emugod » Post

prestidigitator wrote:Depending on which of six regions you are in (determined by which primary axis coordinate has the greatest magnitude and its sign), up/down would just be in a different direction (for determining camera orientation, gravity, and "height"). There'd be the +X region, and -X, +Y, -Y, +Z, and -Z.
What I was really suggesting was to 'fake' this, without any need for the gravity changing around, by instead using the wraparound/loop on a normal flat map, just arranged as an unfolded cube laid flat (most commonly shown as cross shaped). More because I really feel the true 3D cube world just wouldn't actually be any fun, but also just to avoid the fairly significant work of implementing that gravity changing.

thetoon
Member
Posts: 106
Joined: Tue Dec 11, 2012 12:55

Re: Infinite world size

by thetoon » Post

emugod wrote:What I was really suggesting was to 'fake' this, without any need for the gravity changing around, by instead using the wraparound/loop on a normal flat map, just arranged as an unfolded cube laid flat (most commonly shown as cross shaped). More because I really feel the true 3D cube world just wouldn't actually be any fun, but also just to avoid the fairly significant work of implementing that gravity changing.
What would happen if people ... mine ?

emugod
Member
Posts: 33
Joined: Tue Aug 13, 2013 19:49

Re: Infinite world size

by emugod » Post

thetoon wrote:What would happen if people ... mine ?
That's actually the exact problem I have with the true 3D cube world concept. If players are constantly changing the shape of the planet it would seem to me you'd quickly wind up with significant 'gravitational anomalies'. What happens when a player digs to the center? Do they become trapped, floating? Or what about when a player builds their space elevator, or their artificial mountain? Is the center of gravity shifted?

Whereas with what I'm describing to fake it, it's just a standard map of somewhat unusual shape (like an unfolded cube box, commonly depicted as cross made of six squares), with the wraparound/looping effect between faces. It would provide an expediency to generating a false external view, and probably even one that could support some degree of external interaction.

drkwv
Member
Posts: 102
Joined: Thu Jun 28, 2012 13:48
GitHub: aa6

Re: Infinite world size

by drkwv » Post

emugod wrote:
thetoon wrote:What would happen if people ... mine ?
What happens when a player digs to the center? Do they become trapped, floating? Or what about when a player builds their space elevator, or their artificial mountain? Is the center of gravity shifted?
Just put a black hole in the center. If player digs into it, do anything you want. Kill, teleport, give superpowers. And the black hole would be the only source of gravity so you don't need to worry about gravitational shifts.

User avatar
spootonium
Member
Posts: 94
Joined: Fri May 02, 2014 01:38
Location: Down the mine.

Re: Infinite world size

by spootonium » Post

A somewhat simplified method of faking a cube-world on a single map might be to use something like "Möbius" Farlands: a procedurally-generated border to the map that symmetrically joins one edge to its opposite.

This could be a Perlin mountain range, or a desert, or even a vast Tethys Ocean, but it would need to be just large enough to take you out of visual range of one map edge, before teleporting you to a corresponding point within the opposite Farland. The idea is that from the POV of the player, continually walking in one direction eventually takes you around the world.

To avoid storage cost, the Möbius Farlands might have to be intantiated as-and-when encountered, and thus any changes to them would be non-persistent.
I write code. Sometimes, it even works.

drkwv
Member
Posts: 102
Joined: Thu Jun 28, 2012 13:48
GitHub: aa6

Re: Infinite world size

by drkwv » Post

spootonium wrote:The idea is that from the POV of the player, continually walking in one direction eventually takes you around the world.
Unfortunately, this will not make the world larger. It'll become even smaller because travel distance between 32768,32768 and -32768,-32768 will be zero.

prestidigitator
Member
Posts: 647
Joined: Thu Feb 21, 2013 23:54

Re: Infinite world size

by prestidigitator » Post

emugod wrote:
thetoon wrote:What would happen if people ... mine ?
If players are constantly changing the shape of the planet it would seem to me you'd quickly wind up with significant 'gravitational anomalies'. What happens when a player digs to the center? Do they become trapped, floating? Or what about when a player builds their space elevator, or their artificial mountain? Is the center of gravity shifted?
Eh. We're not talking about perfect geometry, so just make it consistent:

Code: Select all

local xm, ym, zm = math.abs(x), math.abs(y), math.abs(z);
local xs, ys, zs = (x ~= 0 and x/xm) or 1, (y ~= 0 and y/ym) or 1, (z ~= 0 and z/zm) or 1;
up =
   { x = (xm >= ym and xm >= zm and xs) or 0,
     y = (ym > xm and ym >= zm and ys) or 0,
     z = (zm > xm and zm > ym and zs) or 0 };
Always an up. Jump/climb/fly that way (or the opposite, if you're in space) to go home.

emugod
Member
Posts: 33
Joined: Tue Aug 13, 2013 19:49

Re: Infinite world size

by emugod » Post

Nore wrote:I do have code that should make the world infinite, however, there are still a lot of limitations:
-> you still can't go further than 214748 because of the way floats are sent (a 32 bit integer)
Could you elaborate on this? And the nature, root cause, of the current codes 2^15 limit?

User avatar
srifqi
Member
Posts: 570
Joined: Sat Jun 28, 2014 04:31
GitHub: srifqi
IRC: srifqi
In-game: srifqi
Location: Indonesia

Re: Infinite world size

by srifqi » Post

emugod wrote:the current codes 2^15 limit?
2^16 (65536), remember the negative
Saya dari Indonesia! · Terjemahkan Minetest! · my mods · My nickname in IPA: /es.rif.qi/

User avatar
Calinou
Moderator
Posts: 3169
Joined: Mon Aug 01, 2011 14:26
GitHub: Calinou
IRC: Calinou
In-game: Calinou
Location: Troyes, France
Contact:

Re: Infinite world size

by Calinou » Post

Nore wrote:I do have code that should make the world infinite, however, there are still a lot of limitations:
-> probably overwritten mapblocks by other ones (didn't check this one though)
-> you still can't go further than 214748 because of the way floats are sent (a 32 bit integer)
-> horrible code
-> probably other things
-> and it is outdated

Anyway, if you want to give it a try: https://github.com/Novatux/minetest/tree/unlimited-map
This works, but collision stops working after ±32768. If you fall past that limit, the game will freeze, using all CPU and taking RAM increasingly. Frequent flickers of the world also happen.

Thus, only a few blocks are really available, this still adds 1856 blocks, which is 6 % more, in each direction.

User avatar
Tedypig
Member
Posts: 286
Joined: Tue Mar 05, 2013 12:33
IRC: Piggybear87
In-game: Piggybear
Location: Largo, FL, USA

Re: Infinite world size

by Tedypig » Post

I just read this whole topic and the smartest thing said was Kilarin's post on page 2, 3rd post down. If it would take that long to just WALK (NO hitting mapgen "walls", NO stoping and looking, NO mining, NO building NO NOTHING EXCEPT WALKING!!!) Why the fuck do you idiots need or even want a bigger map? That is also just the surface, if you tak into account the actual number of changeable nodes in the game (including replacing air with something) It is as close to infinate as we could ever need. 15 fucking years to walk the whole map. If you all want a Minecrap like map then fucking go play Minecrap. I for one suggested SMALLER maps, because there's no need for something so big. This game is free, just fucking play the game and have fun. Don't be a whiney little baby because "theres and edge", or "I can't walk in a straight line for more than 3 hours". Honestly, if you need to walk for more than 3 hours, you have no life (and this is coming from someone that actually has no life). Another thing I saw was, "You need to add mods to make it playable" So fucking what?? Minecrap has a ton of mods also. Every little fucking thing you see in that game, came from a mod originally, the monsters, the nodes, everything! I had creepers and zombies on my Minecrap Classic server, how? MODS! Grow the fuck up people. The map is plenty big, (too big in my opinion) mods make different servers different, just like on your Minecrap game. Again, if you want another game, go play that game. Don't expect this one to change for you and you alone. Honestly, if this game becomes much more like Minecrap, I will find another game to play, just like if this ever goes pay like Minecrap.

#Endrant

drkwv
Member
Posts: 102
Joined: Thu Jun 28, 2012 13:48
GitHub: aa6

Re: Infinite world size

by drkwv » Post

Tedypig wrote:I just read this whole topic
And I already explained why people want more space. The smartest idea was about transforming map into a cube with gravity. Probably you can't into reading and understanding so try something else like going to the war and become a hero (all girls will be yours).

User avatar
rubenwardy
Moderator
Posts: 6978
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy
Location: Bristol, United Kingdom
Contact:

Re: Infinite world size

by rubenwardy » Post

It is mostly just bragging rights. Don't you want to say 'the maps in Minetest are bigger than in Minecraft'?

Also, bigger maps are needed in order to create real life things, such as a whole country from height map data.

But that is about it. We currently have the bragging right of unlimited in all directions, which is good for a mining game. I suggest we make more use of this, in gameplay. Vertical biomes? Like different types of stone and caverns.
Renewed Tab (my browser add-on) | Donate | Mods | Minetest Modding Book

Hello profile reader

User avatar
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: Infinite world size

by paramat » Post

Personally i found the idea of larger or edge-wrapping worlds boring, it's much more interesting to have an edge which is reachable in a reasonable length of time, just think how much time we save compared to a Minecraft long term mission to the farlands. If there was an edge much further away i wouldn't even bother trying to travel to it. As you can see Nore has tried to create a larger world and Calinou has tested and demonstrated it is impractical. Some people 'want' a larger world without actually 'needing' it. Some of these ideas can be done in a lua mapgen that slices up our huge vertical space, combined with teleportation. Other than that it looks like a larger world is only possible with a huge rewrite of the engine, no-one can be bothered for such a non-existant need. Minetest's own mapgen dev has commented on this topic on IRC and his attitude is very similar to this.

User avatar
HeroOfTheWinds
Member
Posts: 470
Joined: Wed Apr 23, 2014 23:16
GitHub: HeroOfTheWinds
IRC: WindHero
Location: Hawaii

Re: Infinite world size

by HeroOfTheWinds » Post

rubenwardy wrote:But that is about it. We currently have the bragging right of unlimited in all directions, which is good for a mining game. I suggest we make more use of this, in gameplay. Vertical biomes? Like different types of stone and caverns.
I think we can safely say that modders like paramat and I have been trying to remedy this a bit with some mods like fracture, floatindev, SkyLands, subterrain, and CaveRealms. :) Not to mention some of the other mods that wouldn't mind a revival, such as PilzAdam's nether mod or the nyan cat heaven mod. (I actually am trying to implement a heaven of sorts in SkyLands right now.)

I also agree with paramat on all but one point: while I'm not thirsty for edge-wrapping worlds, I'm not against them either. I'm actually quite tempted to try making a "farlands" style mod that includes edge wrapping, but I have no idea when I would get around to it. I'm barely keeping up with the mods I'm already working on. :P
Nam ex spatio, omnes res venire possunt.
Why let the ground limit you when you can reach for the sky?
Back to college now, yay for sophomore year schedules. :P

User avatar
aldobr
Member
Posts: 316
Joined: Sun Nov 25, 2012 05:46

Re: Infinite world size

by aldobr » Post

What about server roaming ?

IE.: when you hit the limit of current game world you are automatically reconnected into another server...

User avatar
SegFault22
Member
Posts: 872
Joined: Mon May 21, 2012 03:17
Location: NaN

by SegFault22 » Post

Any "wrap around" that would be implemented should work seamlessly. Instead of teleporting a player to the other side of the world when they reach the edge, or any other cheap tricks, the client should load the chunks of the other side of the world as if they are adjacent to the edge. This might be difficult to do, but it will most definitely be worth it.
The reason for wanting a larger world, is that there needs to be more diverse (and larger) surface features available for players to explore and build upon. When the world is bigger than what could rationally be used, one can go far out and discover much more than what can ever be packed into a small world. That way, you never really know what is "out there", and there always exists interest in finding new, awesome places to build at. This would also have the effect of helping servers keep players from getting bored and quitting.

User avatar
aldobr
Member
Posts: 316
Joined: Sun Nov 25, 2012 05:46

Re: Infinite world size

by aldobr » Post

ChunkX = ChunkX mod MaxChunkX (make it so that chunkx is a variable of a type that can assume values bigger than maxchunkx)

Post Reply

Who is online

Users browsing this forum: No registered users and 10 guests