[GAME] Moontest! (Back from the Dead!) [GAME]

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

by paramat » Post

I have some suggestions for a direction with this ...
I suggest this be a mod instead of a fork or a minetest 'game', and generates a realm placed towards y = 30000. This will make your project more popular as people can add the moon realm to their existing worlds, travel between realms and transfer materials etc.
Dev RealBadAngel is working on a skydome thingy that allows a custom sky, but this would (i assume) appear to all players in multiplayer whether they are on the moon or not. In singleplayer that would work, until then you can always set time to night and halt time while you are on the moon (this wil be my 'spacetime' mod):

Code: Select all

-- spacetime 0.1.0 by paramat
-- for latest stable minetest and back to 0.4.3
-- depends default
-- license WTFPL

spacetime = {}

-- On joinplayer

minetest.register_on_joinplayer(function(player)
    minetest.set_timeofday(0)
    minetest.setting_set("time_speed", 0)
end)
Last edited by paramat on Thu Oct 17, 2013 00:47, edited 1 time in total.

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

by paramat » Post

Minetest 0.4.8 stable will have the Lua Voxel Manipulator which will enable fast realm generation instead of the 1 minute per chunk server lag my realm mods cause :) Once i get my hands on the LVM i will convert moonrealm mod then you can edit the textures, add meteor / meseor strikes etc.

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

by paramat » Post

Also coming in 0.4.8 is drowning in any selected node, good for vacuum nodes on the moon.
0.4.7 has 'per player physics', so with my multigrav mod you can have low moonlike gravity for players in the moonrealm viewtopic.php?id=7224
Last edited by paramat on Thu Oct 17, 2013 01:18, edited 1 time in total.

Zsoltisawesome
Member
Posts: 180
Joined: Sun Dec 18, 2011 18:07
GitHub: YellowberryHN
IRC: YellowberryHN
In-game: YellowberryHN
Location: Utah, USA
Contact:

by Zsoltisawesome » Post

Hey all! We now have an official Github Repo! *flutteryay*

It is located at http://www.github.com/realtinymonster/moontest

We are not allowed to use any of the original textures or sounds, except for the character files, so we need texturers!
Last edited by Zsoltisawesome on Thu Sep 18, 2014 15:11, edited 2 times in total.
Check Out Moontest! http://hnss.gq/moontest
Buddies: Likwid H-Craft, 0gb.us, Death, Starfellow, asie, and many more!

Zsoltisawesome
Member
Posts: 180
Joined: Sun Dec 18, 2011 18:07
GitHub: YellowberryHN
IRC: YellowberryHN
In-game: YellowberryHN
Location: Utah, USA
Contact:

by Zsoltisawesome » Post

EDIT: nothing here
Last edited by Zsoltisawesome on Mon May 05, 2014 16:42, edited 1 time in total.
Check Out Moontest! http://hnss.gq/moontest
Buddies: Likwid H-Craft, 0gb.us, Death, Starfellow, asie, and many more!

User avatar
Inocudom
Member
Posts: 3121
Joined: Sat Sep 29, 2012 01:14
IRC: Inocudom
In-game: Inocudom

by Inocudom » Post

Paramat created a mapgen that might benefit you:
viewtopic.php?id=6329

Zsoltisawesome
Member
Posts: 180
Joined: Sun Dec 18, 2011 18:07
GitHub: YellowberryHN
IRC: YellowberryHN
In-game: YellowberryHN
Location: Utah, USA
Contact:

by Zsoltisawesome » Post

Hi All, Just wanted to say, I will get back to working on this once I get my shiny new computer.

Other than that, how many of you are still willing to help me?



EDIT: Bump x9001
Last edited by Zsoltisawesome on Fri Mar 07, 2014 18:26, edited 1 time in total.
Check Out Moontest! http://hnss.gq/moontest
Buddies: Likwid H-Craft, 0gb.us, Death, Starfellow, asie, and many more!

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

by paramat » Post

You are of course welcome to do WTF you want with my moonrealm mod, it has the gravity, spacesuit and drowning in vacuum stuff, life support air spread is fixed too. RBA made an excellent video with custom skybox, see the thread.

Zsoltisawesome
Member
Posts: 180
Joined: Sun Dec 18, 2011 18:07
GitHub: YellowberryHN
IRC: YellowberryHN
In-game: YellowberryHN
Location: Utah, USA
Contact:

by Zsoltisawesome » Post

Ding Dong! Github updated! Check out the new IRC channel #moontest!

twoelk
Member
Posts: 1482
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

by twoelk » Post

not really sure what this is:

could be a mod because it is in "Modding General",
States it is a "Game" in the thread titel
but includes a full engine in the downloads on the first posts which would make it a fork.

obviously I shouldn't throw the download into the minetest/game folder nore into the minetest/mods folder but would a newbie recognise that? Or am I missing something?

Amaz
Member
Posts: 354
Joined: Wed May 08, 2013 08:26
GitHub: Amaz1
IRC: Amaz
In-game: Amaz

Re:

by Amaz » Post

twoelk wrote:not really sure what this is:

could be a mod because it is in "Modding General",
States it is a "Game" in the thread titel
but includes a full engine in the downloads on the first posts which would make it a fork.

obviously I shouldn't throw the download into the minetest/game folder nore into the minetest/mods folder but would a newbie recognise that? Or am I missing something?
The topic was made before normal users had permission to post in the Games section... It is a game though. You need to get the download from github. It was originally going to be a fork, but it changed into a game.

twoelk
Member
Posts: 1482
Joined: Fri Apr 19, 2013 16:19
GitHub: twoelk
IRC: twoelk
In-game: twoelk
Location: northern Germany

Re: Re:

by twoelk » Post

Amaz wrote:...
The topic was made before normal users had permission to post in the Games section... It is a game though. You need to get the download from github. It was originally going to be a fork, but it changed into a game.
I gathered that. I was rather hoping this could be fixed (as in editing first post and requesting a move to correct topic)

I have allready listed this "game" in my list of games in my wikisandbox.

(sorry for not correctly adding the [sarcasm] tags to previous post)

Zsoltisawesome
Member
Posts: 180
Joined: Sun Dec 18, 2011 18:07
GitHub: YellowberryHN
IRC: YellowberryHN
In-game: YellowberryHN
Location: Utah, USA
Contact:

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by Zsoltisawesome » Post

Current issues: Spacesuits don't work, vacuum doesn't spread, caves spawn with air, not vacuum, vacuum only goes up to the normal water level...
I hate bugs...

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

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by HeroOfTheWinds » Post

Zsoltisawesome wrote:Current issues: Spacesuits don't work, vacuum doesn't spread, caves spawn with air, not vacuum, vacuum only goes up to the normal water level...
I hate bugs...
I might look at the actual source code later to try helping solve what's wrong, but here's a couple ideas on how to fix these things:
Caves spawning with air: Using the voxelmanip during register_on_generated() (or whatever function the current code for it is in), translate this outline into code following the conventions of the rest of the code:
--if node's name is "air" then
--set voxel data for that position to the contentID of vacuum
--end

Vacuum only going up to water level: In the minetest.config file bundled with your game, change the value of the normal water level to something like 33000.

Of course, the problems could be completely different... are you using the most recent version of paramat's moon mod?
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
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by paramat » Post

Good to see you're now using mgv7, i look forward to screenshots (BTW the screenshots in your first post are out of date ;) ).

Zsoltisawesome
Member
Posts: 180
Joined: Sun Dec 18, 2011 18:07
GitHub: YellowberryHN
IRC: YellowberryHN
In-game: YellowberryHN
Location: Utah, USA
Contact:

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by Zsoltisawesome » Post

Paramat, I am well aware, I just haven't been taking many screenshots! :S

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

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by HeroOfTheWinds » Post

Lookin' for screenshots? I didn't grab many, but these should help hold you over until someone with a better eye for good screenies grabs a few:
Spoiler
Image

Image

Image

Image
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
HeroOfTheWinds
Member
Posts: 470
Joined: Wed Apr 23, 2014 23:16
GitHub: HeroOfTheWinds
IRC: WindHero
Location: Hawaii

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by HeroOfTheWinds » Post

I noticed that this hasn't been really updated lately, so I'll give a short rundown of recent additions and changes...
Zsoltisawesome wrote:Current issues: Spacesuits don't work, vacuum doesn't spread, caves spawn with air, not vacuum, vacuum only goes up to the normal water level...
I hate bugs...
All of these are now fixed! I am the vacuum master!
Lua Voxel Manipulator reigns supreme now.

Ores have been largely changed, only Mese and iron return from regular Minetest right now. In place of coal, we now have phosphorus. The new titanium has been added as a highly durable metal, and now there is a new ore called Lunarium that is better than even diamond. (Think of it as moon mese) Silicon can also be found, and it drops the same silicon used in Mesecons. Tools can be crafted from titanium and lunarium.

Light Crystals can now be crafted into light sticks, which have a recipe modeled after torches and give off light just tad bit dimmer than regular torches. Speaking of regular torches, they now go out and become unlit if they are placed in a vacuum. Place them in air from an airgen, though, and it's all good. To relight a torch that's gone out, rightclick it with a stick while in air.

Airgen was bugged, it would spread air out even in total vacuum. Also, if a sealed room became unsealed, the air wouldn't leave. Needless to say, fixed. Several similar errors occurred with liquids, those were also fixed.

Moon trees have been added to provide a source of wood. They are basically monochrome versions of regular trees, and spawn very few and far apart.

Zeg9's UFOs have been added, modified to travel faster and run on lunarium lumps instead of obsidian shards.

New node, half-functional, half-decorative: Air Shield. Can be passed through like trapstone from moreblocks, and has a snazzy animated texture. Use it for doors on buildings with air inside.

Stay tuned for more!
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
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by paramat » Post

Thanks for the screenshots, looks good, the red lakes are funny, is that 'hl' = hydroponic liquid? Best to define a new liquid for lakes. Also, if you want to be realistic, lakes usually appear on large moons with an atmosphere, like Saturn's Titan.
The first screenshot made me realise that 4 of the skybox textures need a horizon exactly halfway up the image, with 'distant moon landscape grey' below that. I would recommend using the stars-only textures because the spherical planets look wrong here (but look cool also).
I will be working on my own moon skybox textures that are a reasonable match to the default Minetest starry sky, once these are done you will be welcome to use them here.
I won't be getting deeply involved in moontest but i can help out with the code and bugfixes.

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

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by paramat » Post

HeroOfTheWinds, thoughts on your problem.
The actual emerged volume is usually larger than the volume requested, and has edges always aligned along mapblock (16^3n) borders, i think the screenshot shows both volumes, the larger volume isn't a 'chunk' (80^3n).
In this case looks like the player is spawning in an ungenerated area, data was read from the world halfway through mapgen, so it read in a half generated moon, mostly "air", but you only placed nodes in the requested volume, perhaps a hacky fix would be to add nodes throughout the larger emerged volume? Ideally perhaps the module could be created within the mapgen's on-generated function somehow ...
Last edited by paramat on Tue May 27, 2014 00:50, edited 1 time in total.

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

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by HeroOfTheWinds » Post

I originally wanted to use the on_generated function, and the code was commenced in that format. However, I couldn't get any answers on how to predict where exactly the player would spawn, so I had to switch to a point after generation... which led to this. I still am researching a way to predict the player spawn point during generation, but not getting any clear answers... I have considered just forcing the player to spawn at 0,0,0, but then it might be under a mountain, which could end up being weird.
The other alternative would be to stick the module generation where I currently have it, but stick it in a minetest.after() call, to give Minetest time to generate the map.
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
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by paramat » Post

Perhaps instead of predicting where the player will spawn, choose and set the player's position, as in the spawnplayer functions i use in watershed, fracture and noisegrid. Spawning players inside landing modules is an excellent idea, something i would like to do myself.
For my moonrealm mod, it may be possible for the spawnplayer function to search for a suitable flat landing area by internally pre-generating terrain heightmaps, set the player's position there and then *somehow* create the module around the player.

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

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by paramat » Post

Just got this working as an experimental spawnplayer function in fracture mod, it creates a glass spawn cube around the player at newplayer and respawn, no bugs. The mapgen overwrites some of the glass nodes because mapgen happens after the glass cube is spawned.
To do the same as this in moontest it may be necessary to pre-generate mgv7 heightmaps in lua to find a suitable spawnpoint at the surface, problem is mgv7 is about to get rewritten with a complex new mapgen i could not recreate in lua, although i could recreate the current mgv7.

Code: Select all

	function spawnplayer(player)
		local DENOFF = -0.4
		local TSTONE = 0.02
		local PSCA = 4 -- Player scatter from world centre in chunks (80 nodes).
		local xsp
		local ysp
		local zsp
		local np_terrain = {
			offset = 0,
			scale = 1,
			spread = {x=384, y=128, z=384},
			seed = 593,
			octaves = 5,
			persist = 0.67
		}
		local np_terralt = {
			offset = 0,
			scale = 1,
			spread = {x=237, y=79, z=237},
			seed = 593,
			octaves = 5,
			persist = 0.67
		}
		for chunk = 1, 64 do
			print ("[fracture] searching for spawn "..chunk)
			local x0 = 80 * math.random(-PSCA, PSCA) - 32
			local z0 = 80 * math.random(-PSCA, PSCA) - 32
			local y0 = 80 * math.random(-PSCA, PSCA) - 32
			local x1 = x0 + 79
			local z1 = z0 + 79
			local y1 = y0 + 79
	
			local sidelen = 80
			local chulens = {x=sidelen, y=sidelen, z=sidelen}
			local minposxyz = {x=x0, y=y0, z=z0}

			local nvals_terrain = minetest.get_perlin_map(np_terrain, chulens):get3dMap_flat(minposxyz)
			local nvals_terralt = minetest.get_perlin_map(np_terralt, chulens):get3dMap_flat(minposxyz)
	
			local nixyz = 1
			local stable = {}
			for z = z0, z1 do
				for y = y0, y1 do
					for x = x0, x1 do
						local si = x - x0 + 1
						local n_terrain = nvals_terrain[nixyz]
						local n_terralt = nvals_terralt[nixyz]
						local density = (n_terrain + n_terralt) * 0.5 + DENOFF
						if density >= TSTONE then
							stable[si] = true
						elseif stable[si] and density < 0 then
							ysp = y + 1
							xsp = x
							zsp = z
							break
						end
						nixyz = nixyz + 1
					end
					if ysp then
						break
					end
				end
				if ysp then
					break
				end
			end
			if ysp then
				break
			end
		end
		print ("[fracture] spawn player ("..xsp.." "..ysp.." "..zsp..")")
		player:setpos({x=xsp, y=ysp, z=zsp})
		local vm = minetest.get_voxel_manip()
		local pos1 = {x=xsp-2, y=ysp-2, z=zsp-2}
		local pos2 = {x=xsp+2, y=ysp+2, z=zsp+2}
		local emin, emax = vm:read_from_map(pos1, pos2)
		local area = VoxelArea:new({MinEdge=emin, MaxEdge=emax})
		local data = vm:get_data()
		local c_glass = minetest.get_content_id("default:glass")
		for i = -2, 2 do
		for j = -2, 2 do
		for k = -2, 2 do
			if i ^ 2 + j ^ 2 + k ^ 2 >= 4 then
				local vi = area:index(xsp + i, ysp + j, zsp + k)
				data[vi] = c_glass
			end
		end
		end
		end
		vm:set_data(data)
		vm:write_to_map()
		vm:update_map()
	end

	minetest.register_on_newplayer(function(player)
		spawnplayer(player)
	end)

	minetest.register_on_respawnplayer(function(player)
		spawnplayer(player)
		return true
	end)

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

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by HeroOfTheWinds » Post

That's some pretty neat code, paramat.

I ended up finding a different solution, using static_spawnpoint in minetest.config instead.

And so, moontest now has the game start with players inside a shared Apollo Lunar Module! 639 lines of code later...
Interesting note, trying to place mesecons wires and other mesecons objects with the Lua Voxel Manipulator is something I would not like to try again... you need to get the content id for each individual type of wire bend, e.g. mesecons:wire_10100000_on. So yeah.... doable, but painstaking.
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
paramat
Developer
Posts: 3700
Joined: Sun Oct 28, 2012 00:05
GitHub: paramat
IRC: paramat
Location: UK

Re: [GAME] Moontest! (Back from the Dead!) [GAME]

by paramat » Post

My spawn egg in moonrealm was being overwritten by the vacuum nodes, so i edited the mapgen to only replace "air" or "ignore", any spawn vehicle created in 'register on newplayer' is now left untouched.

This is a good discovery ...

Code: Select all

[noisegrid] chunk minp (-32 -32 -32)
[noisegrid] emin (-48 -48 -48)
[noisegrid] emax (63 63 63)
For the 'on generated' version of voxelmanip, the actual emerged volume extends 16 nodes (one engine mapblock) beyond all sides, this is why my mapgen trees rarely get chopped despite often extending above the chunk being generated.

Post Reply

Who is online

Users browsing this forum: No registered users and 21 guests