No more pillar up

Post Reply
gsmanners
Member
Posts: 159
Joined: Fri Jan 10, 2014 21:37

No more pillar up

by gsmanners » Post

I don't know how I'm just noticing this, but you can't jump and place a block underneath you anymore. Why this is, I have no idea.

User avatar
webdesigner97
Member
Posts: 1328
Joined: Mon Jul 30, 2012 19:16
GitHub: webD97
IRC: webdesigner97
In-game: webdesigner97
Location: Cologne, Germany
Contact:

Re: No more pillar up

by webdesigner97 » Post

You can, but you have to rightclick at the right moment. There was a commit that prevents placing a node when its position would be inside you, so now you have to jump and press RMB when you are at the highest point.

User avatar
Krock
Developer
Posts: 4650
Joined: Thu Oct 03, 2013 07:48
GitHub: SmallJoker
Location: Switzerland
Contact:

Re: No more pillar up

by Krock » Post

This was a fix to prevent from seeing through the walls. To be able to place nodes again "in you", grant yourself "noclip".
Look, I programmed a bug for you. >> Mod Search Engine << - Mods by Krock - DuckDuckGo mod search bang: !mtmod <keyword here>

gsmanners
Member
Posts: 159
Joined: Fri Jan 10, 2014 21:37

Re: No more pillar up

by gsmanners » Post

Krock wrote:This was a fix to prevent from seeing through the walls. To be able to place nodes again "in you", grant yourself "noclip".
Sorry, no it didn't fix that. If you're standing in just the right spot, you can still do the xray effect without any noclip.

Image

User avatar
Casimir
Member
Posts: 1207
Joined: Fri Aug 03, 2012 16:59
GitHub: CasimirKaPazi

Re: No more pillar up

by Casimir » Post

When you add movement_speed_jump = 7 to you minetest.conf it works.

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: No more pillar up

by Calinou » Post

When you enable noclip mode, regardless of flying or not (but you need the “noclip” privilege), you can place nodes inside yourself.

User avatar
ak399g
Member
Posts: 160
Joined: Tue Jul 30, 2013 02:36
In-game: SAFR
Contact:

Re: No more pillar up

by ak399g » Post

This workaround is not acceptable for servers. It is a 'fix' that doesn't actually solve the problem (I can still skillfully place a block on, say, the ceiling overhead, and look through it and through walls). What's more is that it breaks/severely hampers what was once a crucial construction strategy.

Sokomine
Member
Posts: 4290
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine
IRC: Sokomine
In-game: Sokomine

Re: No more pillar up

by Sokomine » Post

You're not the first one to be annoyed by this "feature". I've complained about that already, but nobody changed it yet. In order to fix your own version, edit src/game.cpp and remove some lines around line 908. Btw, the pillaring up is not the main problem (that's usually only needed for scaffolding) - not beeing able to place nodes using facedir in tight corners is far more annoying for builders.
A list of my mods can be found here.

User avatar
BlockMen
Developer
Posts: 768
Joined: Fri Mar 01, 2013 17:24
GitHub: BlockMen
Location: Germany

Re: No more pillar up

by BlockMen » Post

This change was not thought to prevent "looking into walls", it fixes the strange behavior to build (non walkable) nodes into yourself.

That it is now hard to pillar up is more caused by this change https://github.com/minetest/minetest_ga ... st.conf#L4 not by the placement prevention.

Seems this (jump height) needs (for sure) be reverted.

EDIT: Yes, was caused by that.
Fixed here : https://github.com/minetest/minetest_ga ... 703ca4b747

Sokomine
Member
Posts: 4290
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine
IRC: Sokomine
In-game: Sokomine

Re: No more pillar up

by Sokomine » Post

Hm, there does seem to be a connection between this and pillaring up. When I try to pillar up in order to reach upper areas of my house under construction, it is far more difficult to do so with this change than with it commented out/deleted in the code. Guess jumping up and falling down again is so fast that it's not particulary relevant for the server and too fast for the network anyway, so most of it seems to happen locally.

Since some time, beeing stuck in a node seems to lead to the player beeing in utter darkness - not even the inventory is shown. This is a problem when a server spawns the player underground (dirt or stone).

I'd really be glad if this change could be reverted!
A list of my mods can be found here.

User avatar
LionsDen
Member
Posts: 530
Joined: Thu Jun 06, 2013 03:19

Re: No more pillar up

by LionsDen » Post

Until then, just add the following line to your minetest.conf file.

Code: Select all

movement_speed_jump = 7.0
It seems to have made it easier to jump and place a node under me.

User avatar
BlockMen
Developer
Posts: 768
Joined: Fri Mar 01, 2013 17:24
GitHub: BlockMen
Location: Germany

Re: No more pillar up

by BlockMen » Post

LionsDen wrote:Until then, just add the following line to your minetest.conf file.

Code: Select all

movement_speed_jump = 7.0
It seems to have made it easier to jump and place a node under me.
original/restored value is 6.5 :P

User avatar
ak399g
Member
Posts: 160
Joined: Tue Jul 30, 2013 02:36
In-game: SAFR
Contact:

Re: No more pillar up

by ak399g » Post

Sokomine wrote:You're not the first one to be annoyed by this "feature". I've complained about that already, but nobody changed it yet. In order to fix your own version, edit src/game.cpp and remove some lines around line 908. Btw, the pillaring up is not the main problem (that's usually only needed for scaffolding) - not beeing able to place nodes using facedir in tight corners is far more annoying for builders.
So, this? :
Spoiler

Code: Select all


bool nodePlacementPrediction(Client &client,
		const ItemDefinition &playeritem_def, v3s16 nodepos, v3s16 neighbourpos)
{
	std::string prediction = playeritem_def.node_placement_prediction;
	INodeDefManager *nodedef = client.ndef();
	ClientMap &map = client.getEnv().getClientMap();

	if(prediction != "" && !nodedef->get(map.getNode(nodepos)).rightclickable)
	{
		verbosestream<<"Node placement prediction for "
				<<playeritem_def.name<<" is "
				<<prediction<<std::endl;
		v3s16 p = neighbourpos;
		// Place inside node itself if buildable_to
		try{
			MapNode n_under = map.getNode(nodepos);
			if(nodedef->get(n_under).buildable_to)
				p = nodepos;
			else if (!nodedef->get(map.getNode(p)).buildable_to)
				return false;
		}catch(InvalidPositionException &e){}
		// Find id of predicted node
		content_t id;
		bool found = nodedef->getId(prediction, id);
		if(!found){
			errorstream<<"Node placement prediction failed for "
					<<playeritem_def.name<<" (places "
					<<prediction
					<<") - Name not known"<<std::endl;
			return false;
		}
		// Predict param2 for facedir and wallmounted nodes
		u8 param2 = 0;
		if(nodedef->get(id).param_type_2 == CPT2_WALLMOUNTED){
			v3s16 dir = nodepos - neighbourpos;
			if(abs(dir.Y) > MYMAX(abs(dir.X), abs(dir.Z))){
				param2 = dir.Y < 0 ? 1 : 0;
			} else if(abs(dir.X) > abs(dir.Z)){
				param2 = dir.X < 0 ? 3 : 2;
			} else {
				param2 = dir.Z < 0 ? 5 : 4;
			}
		}
		if(nodedef->get(id).param_type_2 == CPT2_FACEDIR){
			v3s16 dir = nodepos - floatToInt(client.getEnv().getLocalPlayer()->getPosition(), BS);
			if(abs(dir.X) > abs(dir.Z)){
				param2 = dir.X < 0 ? 3 : 1;
			} else {
				param2 = dir.Z < 0 ? 2 : 0;
			}
		}
		assert(param2 >= 0 && param2 <= 5);
		//Check attachment if node is in group attached_node
		if(((ItemGroupList) nodedef->get(id).groups)["attached_node"] != 0){
			static v3s16 wallmounted_dirs[8] = {
				v3s16(0,1,0),
				v3s16(0,-1,0),
				v3s16(1,0,0),
				v3s16(-1,0,0),
				v3s16(0,0,1),
				v3s16(0,0,-1),
			};
			v3s16 pp;
			if(nodedef->get(id).param_type_2 == CPT2_WALLMOUNTED)
				pp = p + wallmounted_dirs[param2];
			else
				pp = p + v3s16(0,-1,0);
			if(!nodedef->get(map.getNode(pp)).walkable)
				return false;
		}
		// Add node to client map
/*		MapNode n(id, 0, param2);
		try{
			LocalPlayer* player = client.getEnv().getLocalPlayer();

			// Dont place node when player would be inside new node
			// NOTE: This is to be eventually implemented by a mod as client-side Lua
			if (!nodedef->get(n).walkable ||
				(client.checkPrivilege("noclip") && g_settings->getBool("noclip")) ||
				(nodedef->get(n).walkable &&
				neighbourpos != player->getStandingNodePos() + v3s16(0,1,0) &&
				neighbourpos != player->getStandingNodePos() + v3s16(0,2,0))) {

					// This triggers the required mesh update too
					client.addNode(p, n);
					return true;
				}
		}catch(InvalidPositionException &e){
			errorstream<<"Node placement prediction failed for "
					<<playeritem_def.name<<" (places "
					<<prediction
					<<") - Position not loaded"<<std::endl;
		}/**/
	}
	return false;
}

}
Also, the note says it'll be implemented as client-side lua (which is much easier to toggle). Here's hoping that change is high on the list.

To others, noclip and jump height 'workarounds' are not acceptable for my purposes.
Additional info: I run Xubuntu 14.04 with the 0.4.10-dev ppa.

Sokomine
Member
Posts: 4290
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine
IRC: Sokomine
In-game: Sokomine

Re: No more pillar up

by Sokomine » Post

ak399g wrote: To others, noclip and jump height 'workarounds' are not acceptable for my purposes.
Neither for my purposes. Noclip doesn't make placing nodes any easier and is seldom granted. For now, editing the client is the only real way around this problem.
A list of my mods can be found here.

Dragonop
Member
Posts: 1233
Joined: Tue Oct 23, 2012 12:59
GitHub: Dragonop
IRC: Dragonop
In-game: Dragonop
Location: Argentina

Re: No more pillar up

by Dragonop » Post

YOU STILL CAN!
Just need to keep press Jump+Sneak and press the Place Block button
Ween you jump while sneaking you jump 1,5 blocks!

User avatar
webdesigner97
Member
Posts: 1328
Joined: Mon Jul 30, 2012 19:16
GitHub: webD97
IRC: webdesigner97
In-game: webdesigner97
Location: Cologne, Germany
Contact:

Re: No more pillar up

by webdesigner97 » Post

Dragonop wrote:YOU STILL CAN!
Just need to keep press Jump+Sneak and press the Place Block button
Ween you jump while sneaking you jump 1,5 blocks!
But then facedir blocks like chests won't facedir...

Sokomine
Member
Posts: 4290
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine
IRC: Sokomine
In-game: Sokomine

Re: No more pillar up

by Sokomine » Post

webdesigner97 wrote: But then facedir blocks like chests won't facedir...
That's right, and that's the most important reason for wanting to build where you stand. Slim panels, handrails etc. are hard to place if you are standing elsewhere. They're even hard to place when standing in the right block. Anyway, I patch my Minetest, and that problem is gone. Just requires the occasional repetition of the deletion of the lines concerned once there's a new version out and git can't solve it automaticly.
A list of my mods can be found here.

User avatar
hoodedice
Member
Posts: 1374
Joined: Sat Jul 06, 2013 06:33
GitHub: hoodedice
IRC: hoodedice
In-game: hoodedice
Location: world
Contact:

Re: No more pillar up

by hoodedice » Post

Sokomine wrote:
webdesigner97 wrote: But then facedir blocks like chests won't facedir...
That's right, and that's the most important reason for wanting to build where you stand. Slim panels, handrails etc. are hard to place if you are standing elsewhere. They're even hard to place when standing in the right block. Anyway, I patch my Minetest, and that problem is gone. Just requires the occasional repetition of the deletion of the lines concerned once there's a new version out and git can't solve it automaticly.
Another Minetest fork in 3... 2.... 1......
7:42 PM - Bauglio: I think if you go to staples you could steal firmware from a fax machine that would run better than win10 does on any platform
7:42 PM - Bauglio: so fudge the stable build
7:43 PM - Bauglio: get the staple build

Sokomine
Member
Posts: 4290
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine
IRC: Sokomine
In-game: Sokomine

Re: No more pillar up

by Sokomine » Post

hoodedice wrote: Another Minetest fork in 3... 2.... 1......
Ah, no, it's just a couple of lines deleted. Plus that patch from sfan5 that allows to save maps from servers locally. Plus, recently, gsmapper.

I still hope sfan5 will bring his patch up in #minetest-dev and get it integrated into the main branch. It ought to be optional, but it's *very* helpful for saving maps. The only point where it doesn't help is if you connect to a server and then find out that the server has a problem...the broken map will then already have overwritten your intact local copy. I know no good way around that problem.
A list of my mods can be found here.

Post Reply

Who is online

Users browsing this forum: No registered users and 9 guests