Post your Screenshots of Terrain!

Jordach
Member
Posts: 4534
Joined: Mon Oct 03, 2011 17:58
GitHub: Jordach
IRC: Jordach
In-game: Jordach
Location: Blender Scene

Re: Post your Screenshots of Terrain!

by Jordach » Post

Mantar wrote:
Fri Mar 18, 2022 19:16
That is fantastic work! I'll have to see about fitting these into Exile, surface structures left by the Ancients have been on Dokimi's todo list for some time, and these rings could be a good start.
So I wrote a mapgen.

Image
Image
Image
Image
Image
Image

User avatar
debiankaios
Member
Posts: 910
Joined: Thu Dec 03, 2020 12:48
IRC: debiankaios
In-game: debiankaios Nowe
Location: germany
Contact:

Re: Post your Screenshots of Terrain!

by debiankaios » Post

Jordach wrote:
Sat Mar 19, 2022 04:26
Mantar wrote:
Fri Mar 18, 2022 19:16
That is fantastic work! I'll have to see about fitting these into Exile, surface structures left by the Ancients have been on Dokimi's todo list for some time, and these rings could be a good start.
So I wrote a mapgen.

Image
Image
Image
Image
Image
Image
Omg, what's the name of this mapgen and can you publish it, please

User avatar
Mantar
Member
Posts: 582
Joined: Thu Oct 05, 2017 18:46
Contact:

Re: Post your Screenshots of Terrain!

by Mantar » Post

That does look nice!
Lead dev of Exile, git repo: https://codeberg.org/Mantar/Exile

User avatar
Mantar
Member
Posts: 582
Joined: Thu Oct 05, 2017 18:46
Contact:

Re: Post your Screenshots of Terrain!

by Mantar » Post

Got the rings loaded into Exile, but while it's neat, that mapgen does some unusual things that are maybe not suited. I'll have to split the rings out to use them properly.
The nodes for the rings are kind of placeholders, but the core being a glowing faint blue color is about right.
Still, thanks to Skamiz for the code. Look at this awesome thing!
Attachments
Ring.jpg
Ring.jpg (430.66 KiB) Viewed 23792 times
Lead dev of Exile, git repo: https://codeberg.org/Mantar/Exile

User avatar
freshreplicant
Member
Posts: 223
Joined: Sun Aug 09, 2020 10:37
In-game: freshreplicant

Re: Post your Screenshots of Terrain!

by freshreplicant » Post

Mantar wrote:
Sun Mar 27, 2022 02:16
Got the rings loaded into Exile, but while it's neat, that mapgen does some unusual things that are maybe not suited. I'll have to split the rings out to use them properly.
The nodes for the rings are kind of placeholders, but the core being a glowing faint blue color is about right.
Still, thanks to Skamiz for the code. Look at this awesome thing!
That is awesome, in the most literal sense of the word.

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

Mantar wrote:
Sun Mar 27, 2022 02:16
~snip~
So happy to see this.
Splitting out the rings should be fairly straightforward. The main caveat is that they need to either be placed close to the center of a chunk, or you need to modify the mapgen to work across chunk boundaries.

You may also notice that I run minetest.fix_light(minp, maxp) if a ring was generated, this is because (as I learned only just now), vm:calc_lighting doesn't return correct results if the light source node doesn't have paramtype = "light", in the node definition.

Other than that maybe try to vary the size and thickness of the rings, so they don't all look similar?

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

Aaand I ended up doing it myself.
rings_001.png
rings_001.png (422.37 KiB) Viewed 23674 times
Even randomized the placement location as much as possible while staying within chunk boundaries.
rings_002.png
rings_002.png (324.02 KiB) Viewed 23674 times
Here is the code. No terrain, only rings.

Code: Select all

--[[
Copyright (c) 2022 Skamiz

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
--]]

local c_plating = minetest.get_content_id("df_stones:obsidian")
local c_core = minetest.get_content_id("cicrev:corite")

minetest.set_mapgen_setting("water_level", "0", true)

--noise parameters
-- cracks in the shells of the great rings
np_3d_ring = {
    offset = 0,
    scale = 1,
    spread = {x = 8, y = 8, z = 8},
    seed = 0,
    octaves = 1,
    persist = 1,
    lacunarity = 1.0,
    -- flags = "absvalue",
}

local side_lenght = 80
local chunk_size = {x = 80, y = 80, z = 80}
local chunk_area = VoxelArea:new{MinEdge={x = 1, y = 1, z = 1}, MaxEdge=chunk_size}

local nobj_3d_r = noise_handler.get_noise_object(np_3d_ring, chunk_size)

local data = {}

minetest.register_on_generated(function(minp, maxp, chunkseed)

	if maxp.y < 0 or minp.y > 0 then return end
	math.randomseed(chunkseed)
	-- if math.random() <= 1/25 then return end

	local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
	local area = VoxelArea:new({MinEdge=emin, MaxEdge=emax})
	vm:get_data(data)

	local nvals_3d_r = nobj_3d_r:get_3d_map_flat(minp)

	-- major radius
	local R = math.random(10, 30)
	-- mineor 'radius'
	local r = math.random(1, 3)
	-- y is decreased to bias rings towards not laying flat on the ground
	local rdir = vector.new(math.random() - 0.5, (math.random() - 0.5)/2, math.random() - 0.5):normalize()
	local rpos = {}

	-- rpos.x = math.floor((minp.x + maxp.x) / 2)
	-- rpos.z = math.floor((minp.z + maxp.z) / 2)
	-- rpos.y = math.floor((minp.y + maxp.y) / 2)

	rpos.x = math.random(minp.x + R + r + 1, maxp.x - (R + r + 1))
	rpos.y = math.random(minp.y + R + r + 1, maxp.y - (R + r + 1))
	rpos.z = math.random(minp.z + R + r + 1, maxp.z - (R + r + 1))

	for z = minp.z, maxp.z do
		for y = minp.y, maxp.y do
			for x = minp.x, maxp.x do
				local vi = area:index(x, y, z)

				-- ring core
				local dist = math.pow(rpos.x - x, 2) + math.pow(rpos.z - z, 2) + math.pow(rpos.y - y, 2)
				-- first check if node is certain distance from the middle position
				if dist > math.pow(R - r, 2) and dist < math.pow(R + r, 2) and
					-- then check how close it is to the plane specified by the rings orientation
				 	math.abs((x-rpos.x) * rdir.x + (y-rpos.y) * rdir.y + (z-rpos.z) * rdir.z) <= r then
					data[vi] = c_core
				end

				-- ring plating
				local nv_3d_r = nvals_3d_r[(z - minp.z) * 80 * 80 + (y - minp.y) * 80 + (x - minp.x) + 1]

				if data[vi] ~= c_core and nv_3d_r < 0.3 and
						dist > math.pow((R - r) - 1, 2) and dist < math.pow((R + r) + 1, 2) and
					 	math.abs((x-rpos.x) * rdir.x + (y-rpos.y) * rdir.y + (z-rpos.z) * rdir.z) <= r + 1 then
					data[vi] = c_plating
				end


			end
		end
	end

	vm:set_data(data)
	minetest.generate_decorations(vm)
	-- minetest.generate_ores(vm)
	vm:update_liquids()
	vm:set_lighting({day = 0, night = 0})
	vm:calc_lighting()
	vm:write_to_map()

end)

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

Got them to try to adjust to the surface if the used mapgen provides a height map.
rings_003.png
rings_003.png (916.37 KiB) Viewed 23651 times
rings_004.png
rings_004.png (937.44 KiB) Viewed 23651 times

Code: Select all

--[[
Copyright (c) 2022 Skamiz

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
--]]

local c_plating = minetest.get_content_id("default:obsidian")
local c_core = minetest.get_content_id("default:mese")

minetest.set_mapgen_setting("water_level", "0", true)

--noise parameters
-- cracks in the shells of the great rings
np_3d_ring = {
    offset = 0,
    scale = 1,
    spread = {x = 8, y = 8, z = 8},
    seed = 0,
    octaves = 1,
    persist = 1,
    lacunarity = 1.0,
    -- flags = "absvalue",
}

local side_lenght = 80
local chunk_size = {x = 80, y = 80, z = 80}
local chunk_area = VoxelArea:new{MinEdge={x = 1, y = 1, z = 1}, MaxEdge=chunk_size}

local nobj_3d_r = noise_handler.get_noise_object(np_3d_ring, chunk_size)

local data = {}

minetest.register_on_generated(function(minp, maxp, chunkseed)

	if maxp.y < 0 or minp.y > 0 then return end
	math.randomseed(chunkseed)
	-- if math.random() <= 1/25 then return end

	local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
	local height_data = minetest.get_mapgen_object("heightmap")
	local area = VoxelArea:new({MinEdge=emin, MaxEdge=emax})
	vm:get_data(data)

	local nvals_3d_r = nobj_3d_r:get_3d_map_flat(minp)

	-- major radius
	local R = math.random(10, 30)
	-- mineor 'radius'
	local r = math.random(1, 3)
	-- y is decreased to bias rings towards not laying flat on the ground
	local rdir = vector.new(math.random() - 0.5, (math.random() - 0.5)/2, math.random() - 0.5):normalize()
	local rpos = {}

	rpos.x = math.random(minp.x + R + r + 1, maxp.x - (R + r + 1))
	rpos.y = math.random(minp.y + R + r + 1, maxp.y - (R + r + 1))
	rpos.z = math.random(minp.z + R + r + 1, maxp.z - (R + r + 1))

	-- if a heightmap is aviable try to stick to the surface
	if height_data then
		rpos.y = height_data[(rpos.z - minp.z) * 80 + (rpos.x - minp.x) + 1]
		rpos.y = math.min(math.max(rpos.y, minp.y + R + r + 1), maxp.y - (R + r + 1))
	end

	for z = minp.z, maxp.z do
		for y = minp.y, maxp.y do
			for x = minp.x, maxp.x do
				local vi = area:index(x, y, z)

				-- ring core
				local dist = math.pow(rpos.x - x, 2) + math.pow(rpos.z - z, 2) + math.pow(rpos.y - y, 2)
				-- first check if node is certain distance from the middle position
				if dist > math.pow(R - r, 2) and dist < math.pow(R + r, 2) and
					-- then check how close it is to the plane specified by the rings orientation
				 	math.abs((x-rpos.x) * rdir.x + (y-rpos.y) * rdir.y + (z-rpos.z) * rdir.z) <= r then
					data[vi] = c_core
				end

				-- ring plating
				local nv_3d_r = nvals_3d_r[(z - minp.z) * 80 * 80 + (y - minp.y) * 80 + (x - minp.x) + 1]
				local nv_2d = height_data[(z - minp.z) * 80 + (x - minp.x) + 1]

				if data[vi] ~= c_core and nv_3d_r < 0.3 and
						dist > math.pow((R - r) - 1, 2) and dist < math.pow((R + r) + 1, 2) and
					 	math.abs((x-rpos.x) * rdir.x + (y-rpos.y) * rdir.y + (z-rpos.z) * rdir.z) <= r + 1 then
					data[vi] = c_plating
				end

			end
		end
	end

	vm:set_data(data)
	minetest.generate_decorations(vm)
	-- minetest.generate_ores(vm)
	vm:update_liquids()
	vm:set_lighting({day = 0, night = 0})
	vm:calc_lighting()
	vm:write_to_map()

end)

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

I started a new thing.
island_002.png
island_002.png (602.59 KiB) Viewed 23599 times
island_003.png
island_003.png (605.13 KiB) Viewed 23599 times
island_004.png
island_004.png (877.01 KiB) Viewed 23599 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

This is going to be just a single island mapgen.
island_005.png
island_005.png (787.54 KiB) Viewed 23599 times
island_006.png
island_006.png (714.84 KiB) Viewed 23599 times
island_007.png
island_007.png (739.04 KiB) Viewed 23599 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

island_008.png
island_008.png (711.71 KiB) Viewed 23587 times
island_009.png
island_009.png (751.27 KiB) Viewed 23587 times
island_010.png
island_010.png (678.42 KiB) Viewed 23587 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

Unintended, but nice shots.
island_011.png
island_011.png (671.19 KiB) Viewed 23566 times
island_012.png
island_012.png (734.44 KiB) Viewed 23566 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

Tried out a different approach for the pillars. This is much closer to what I had in mind when I started.
island_013.png
island_013.png (718.12 KiB) Viewed 23542 times
island_014.png
island_014.png (800.8 KiB) Viewed 23542 times
island_015.png
island_015.png (846.4 KiB) Viewed 23542 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

island_016.png
island_016.png (860.77 KiB) Viewed 23542 times
island_017.png
island_017.png (937.35 KiB) Viewed 23542 times

ShadMOrdre
Member
Posts: 1118
Joined: Mon Dec 29, 2014 08:07
Location: USA

Re: Post your Screenshots of Terrain!

by ShadMOrdre » Post

Long river lazily flowing through the jungle.
screenshot_20220405_002427.jpg
screenshot_20220405_002427.jpg (202.92 KiB) Viewed 23468 times
Also with caves and geomoria.
screenshot_20220403_015747.jpg
screenshot_20220403_015747.jpg (194.29 KiB) Viewed 23468 times
Planets. Scaled down to 0.01 world size. Based on 3D Voronoi.
screenshot_20220402_221047.jpg
screenshot_20220402_221047.jpg (94.18 KiB) Viewed 23468 times

ShadMOrdre
Member
Posts: 1118
Joined: Mon Dec 29, 2014 08:07
Location: USA

Re: Post your Screenshots of Terrain!

by ShadMOrdre » Post

Now with river tributaries.
screenshot_20220407_154051.jpg
screenshot_20220407_154051.jpg (214.7 KiB) Viewed 23429 times

User avatar
StarNinjas
Member
Posts: 411
Joined: Wed Mar 14, 2018 00:32
GitHub: starninjas
IRC: StarNinjas
In-game: J1
Location: Terrarca
Contact:

Re: Post your Screenshots of Terrain!

by StarNinjas » Post

Wow, you guys always amaze me with this stuff!!
Don't go to bed tonight, without knowing what would happen if you died. https://thegospelfilm.org/

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

mc_001.png
mc_001.png (948.27 KiB) Viewed 23143 times
mc_002.png
mc_002.png (515.51 KiB) Viewed 23143 times
mc_003.png
mc_003.png (894.28 KiB) Viewed 23143 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

mc_004.png
mc_004.png (605.76 KiB) Viewed 23131 times
mc_005.jpg
mc_005.jpg (290.69 KiB) Viewed 23131 times
mc_006.jpg
mc_006.jpg (281.75 KiB) Viewed 23131 times

User avatar
Wuzzy
Member
Posts: 4778
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: Post your Screenshots of Terrain!

by Wuzzy » Post

In Minetest Game 5.6.0, a dungeon chest generated floating in water:
Image

(Mapgen = v7, coords and seed in screenshot)

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

mountains_001.png
mountains_001.png (628.67 KiB) Viewed 20146 times
mountains_002.png
mountains_002.png (937.48 KiB) Viewed 20146 times
mountains_003.jpg
mountains_003.jpg (220.65 KiB) Viewed 20146 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

mountains_004.png
mountains_004.png (906.52 KiB) Viewed 20143 times
mountains_005.png
mountains_005.png (715.02 KiB) Viewed 20143 times
mountains_006.png
mountains_006.png (920.54 KiB) Viewed 20143 times

User avatar
Skamiz Kazzarch
Member
Posts: 613
Joined: Fri Mar 09, 2018 20:34
GitHub: Skamiz
In-game: Skamiz
Location: la lojbaugag.

Re: Post your Screenshots of Terrain!

by Skamiz Kazzarch » Post

mountains_007.png
mountains_007.png (821.9 KiB) Viewed 20135 times
That's it for this one. I think I might write a mod for creating mapgens on the fly next.

User avatar
the_raven_262
Member
Posts: 343
Joined: Mon Sep 22, 2014 09:30
GitHub: theraven262
IRC: [Discord unfortunately] corvus262

Re: Post your Screenshots of Terrain!

by the_raven_262 » Post

Some shots from an as-of-yet unreleased server game. This is all done without a lua mapgen, just the usual decorations (I dislike lua mapgens for their lack of speed). But you can see here that the carpathian 3D noise caverns produce more than an adequate setting (one just needs to light them up a bit). Image Image Image Image Image Image Image Image Image
All of the new textures are mine (I did the mapgen stuff and most of the art for the server). I have taken some liberties when expanding the lore behind mese, as you can see. This is just the tip of the iceberg though and I really hope that the server gets up some time this year.

L-Dog
Member
Posts: 481
Joined: Sat Jun 19, 2021 12:49
GitHub: N-nec
In-game: L-Dog

Re: Post your Screenshots of Terrain!

by L-Dog » Post

Made the Enemy Mod more like it was in old Days
screenshot_20230207_174426.png
screenshot_20230207_174426.png (159.16 KiB) Viewed 5573 times
screenshot_20230207_174558.png
screenshot_20230207_174558.png (254.34 KiB) Viewed 5573 times

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 9 guests