Modders: Give feedback to the core developers

Sokomine
Member
 
Posts: 3918
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine

Re: Modders: Give feedback to the core developers

by Sokomine » Mon Apr 28, 2014 13:58

Pavel_S wrote:Also get_id() function will make easy to create entity inventory.

Good idea. When writing my traders, I found it annyoing that I had to come up with my own uniq_id function for them. Reliable uniq id's for entities would be helpful. Such things are better done in a library than in each mod individually.
 

spillz
Member
 
Posts: 138
Joined: Thu Feb 13, 2014 05:11

Re: Modders: Give feedback to the core developers

by spillz » Mon Apr 28, 2014 14:27

BrandonReese wrote:
spillz wrote:
Amaz wrote:I think it is ~50 blocks.


The sounds like low hanging fruit that could (and should) be easily fixed.

A different issue: with the alternative minetest games it isn't clear what map generation each is compatible with. It would be a good with if the game could specify which mapgen it is compatible with and the new world creator dialogs showed only those generators in the drop down selector.


I believe lua mapgens can override your selection in the create dialog

Code: Select all
minetest.set_mapgen_params({mgname="singlenode", flags="nolight"})


But that's not really a solution. The game shouldn't be displaying options that either have no effect or are incompatible.
 

User avatar
Evergreen
Member
 
Posts: 2135
Joined: Sun Jan 06, 2013 01:22
Location: A forest in the midwest
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen

Re: Modders: Give feedback to the core developers

by Evergreen » Mon Apr 28, 2014 19:03

I think being able to directly control player velocity would be nice. (portal anyone?)
 

User avatar
Pavel_S
Member
 
Posts: 131
Joined: Sat Apr 06, 2013 11:43

Re: Modders: Give feedback to the core developers

by Pavel_S » Mon Apr 28, 2014 19:11

Evergreen wrote:I think being able to directly control player velocity would be nice. (portal anyone?)

JetPack, wind pushing?
 

User avatar
BrandonReese
Member
 
Posts: 839
Joined: Wed Sep 12, 2012 00:44
Location: USA
GitHub: bremaweb
IRC: BrandonReese
In-game: BrandonReese

Re: Modders: Give feedback to the core developers

by BrandonReese » Mon Apr 28, 2014 19:13

Pavel_S wrote:
Evergreen wrote:I think being able to directly control player velocity would be nice. (portal anyone?)

JetPack, wind pushing?


Water pushing also
 

User avatar
webdesigner97
Member
 
Posts: 1325
Joined: Mon Jul 30, 2012 19:16
Location: Bergisch Gladbach, Germany
GitHub: webD97
IRC: webdesigner97
In-game: webdesigner97
 

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

Re: Modders: Give feedback to the core developers

by Casimir » Mon Apr 28, 2014 20:41

Casimir wrote:For almost everything an option to disable it would be usefull, both for subgames and for server. A server [...] thats gets spamed often could disable doping of items.

I found that the function is in builtin/item.lua and therefore I can just overwrite it.
Code: Select all
function minetest.item_drop(itemstack, dropper, pos)
   local name = dropper:get_player_name()
   if name then
      minetest.chat_send_player(name, "Itemdrop is disabled.")
   end
   return itemstack
end
Last edited by Casimir on Mon Apr 28, 2014 20:50, edited 2 times in total.
 

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

Re: Modders: Give feedback to the core developers

by Casimir » Mon Apr 28, 2014 20:49

spillz wrote:The game shouldn't be displaying options that either have no effect or are incompatible.

But it also shouldn't hide possible options. When someone wants to test mapgen v7 with minetest_game for any reason, they should be able to do it, and at the same time be informed that it is not supported. The simplest solution would be a general info about the subgame when choosing one. You also could write a mod that outputs a message, just like in minimal developement test, for all unsupported mapgens.
 

User avatar
stu
Member
 
Posts: 923
Joined: Sat Feb 02, 2013 02:51
Location: United Kingdom
GitHub: stujones11

Re: Modders: Give feedback to the core developers

by stu » Mon Apr 28, 2014 21:43

BrandonReese wrote:I would like to see an option that would make it so name tags do not show through nodes, that would make it possible for people to hide.


+1000 This is very much needed and probably trivial to implement.

Sokomine wrote:
Pavel_S wrote:Also get_id() function will make easy to create entity inventory.

Good idea. When writing my traders, I found it annyoing that I had to come up with my own uniq_id function for them. Reliable uniq id's for entities would be helpful. Such things are better done in a library than in each mod individually.


+1000 Again, should not be hard to do, I'm sure I read mention of if before somewhere but can't remember if anything was ever done.

Something else I would like are more player related callbacks, like when a player is punched, it would save me polling player hp to make armor wear-out possible. A callback when a player is 'fully loaded' and all methods and properties are available would be nice too instead of guesswork and multiple delays for model changing, attachments, etc.

And what's happening with this?

dev wiki wrote:get_armor_groups() - Returns {group1=rating, group2=rating, ...}) (NOTE: Documented in lua_api.txt but not yet implemented as of version 0.4.4)

I would also like to see more helpful stuff for fps style mods/games. A method like minetest.line_of_sight that could return objects in the line of sight (to a given range) might be good.

Almost forgot the thing I want most, 'pitch', then I can make planes \o/

Cheers!
 

User avatar
ShadowNinja
Developer
 
Posts: 199
Joined: Tue Jan 22, 2013 22:35
GitHub: ShadowNinja
IRC: ShadowNinja
In-game: ShadowNinja

Re: Modders: Give feedback to the core developers

by ShadowNinja » Tue Apr 29, 2014 02:26

Topywo wrote:AFAIK ABMs keep going once put on. If that's really true (not my lack of knowledge), I would like to see the possibilities to shut them off and on later in the game, after meeting a condition, paired with the computers internal clock or connected with the Minetest time.

ABMs are designed to run on every loaded node that meets the specified conditions, always. Node timers might be more suitable for your purpose as they are cancelable and restartable. They don't have features like neighbor checking built-in though.
The best way to contact me is usually IRC (InchraNet, freenode).
 

User avatar
webdesigner97
Member
 
Posts: 1325
Joined: Mon Jul 30, 2012 19:16
Location: Bergisch Gladbach, Germany
GitHub: webD97
IRC: webdesigner97
In-game: webdesigner97

Re: Modders: Give feedback to the core developers

by webdesigner97 » Wed Apr 30, 2014 05:55

Also modders should be able to do http requests, e.g. to check for a new mod version...
 

Kilarin
Member
 
Posts: 778
Joined: Mon Mar 10, 2014 00:36

Re: Modders: Give feedback to the core developers

by Kilarin » Wed Apr 30, 2014 13:12

First a request that would probably be pretty easy to implement:
I think "Tool Tips" would be a REALLY nice feature. It would make it much more user friendly for players when using tools whose function or operation are not immediately obvious.

Now a request that may be very difficult or even unwise to implement:
Normally objects can only be active within the region loaded around a player, and the vast majority of the time that makes perfect sense. But it would be nice if it was possible to override this behavior, so that, for example, a cart could be sent heading down a long track, and just keep loading the region around it until it reaches the end of it's track.
 

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

Re: Modders: Give feedback to the core developers

by rubenwardy » Wed Apr 30, 2014 13:51

Kilarin wrote:Now a request that may be very difficult or even unwise to implement:
Normally objects can only be active within the region loaded around a player, and the vast majority of the time that makes perfect sense. But it would be nice if it was possible to override this behavior, so that, for example, a cart could be sent heading down a long track, and just keep loading the region around it until it reaches the end of it's track.


Code: Select all
minetest.forceload_block(pos)
^ forceloads the position pos.
^ returns true if area could be forceloaded


https://github.com/minetest/minetest/bl ... .txt#L1704
 

Kilarin
Member
 
Posts: 778
Joined: Mon Mar 10, 2014 00:36

Re: Modders: Give feedback to the core developers

by Kilarin » Thu May 01, 2014 12:08

rubenwardy wrote:minetest.forceload_block(pos)

So, for example, I could modify the cart mod to check if it gets an "ignore" for a node, and if so, force load it? Hmmm, that is worth trying. Thank you!

Another suggestion for the developers:
The ability to set gravity locally. So that, for example, the "Dyson Cube" mod could make gravity for each different side of the cube point towards that edge. And any mod could make gravity in a local area point in whatever direction they wanted, (or turn it off entirely). Is there already a way to do this? And if not, could it be implemented without completely rewriting the existing engine?
 

User avatar
Evergreen
Member
 
Posts: 2135
Joined: Sun Jan 06, 2013 01:22
Location: A forest in the midwest
GitHub: 4Evergreen4
IRC: EvergreenTree
In-game: Evergreen

Re: Modders: Give feedback to the core developers

by Evergreen » Thu May 01, 2014 12:18

Kilarin wrote:
rubenwardy wrote:minetest.forceload_block(pos)

So, for example, I could modify the cart mod to check if it gets an "ignore" for a node, and if so, force load it? Hmmm, that is worth trying. Thank you!

Another suggestion for the developers:
The ability to set gravity locally. So that, for example, the "Dyson Cube" mod could make gravity for each different side of the cube point towards that edge. And any mod could make gravity in a local area point in whatever direction they wanted, (or turn it off entirely). Is there already a way to do this? And if not, could it be implemented without completely rewriting the existing engine?
It would probably be better to include something which alwos modders to push and pull the player, and a way to rotate the player model.
 

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

Re: Modders: Give feedback to the core developers

by rubenwardy » Thu May 01, 2014 16:58

Kilarin wrote:
rubenwardy wrote:minetest.forceload_block(pos)

So, for example, I could modify the cart mod to check if it gets an "ignore" for a node, and if so, force load it? Hmmm, that is worth trying. Thank you!

Another suggestion for the developers:
The ability to set gravity locally. So that, for example, the "Dyson Cube" mod could make gravity for each different side of the cube point towards that edge. And any mod could make gravity in a local area point in whatever direction they wanted, (or turn it off entirely). Is there already a way to do this? And if not, could it be implemented without completely rewriting the existing engine?


Issue on Freeminer: https://github.com/freeminer/freeminer/issues/62

I had this idea a while ago, and I discussed it with PilzAdam.
Most of the modifications required are server side.
 

User avatar
Pavel_S
Member
 
Posts: 131
Joined: Sat Apr 06, 2013 11:43

Re: Modders: Give feedback to the core developers

by Pavel_S » Sun May 04, 2014 16:28

.isVisible and .isClickable propetries of entity`s collision box would be a nice feature, for any mob mod, to hide collision box, as well as for all players and NPC`s. Also sometimes it`s needed to attach one entity to another and have callbacks on_punch or on_rightclick for both, but attached entity has invisible, unclickable collision box.
 

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

Re: Modders: Give feedback to the core developers

by spootonium » Mon May 05, 2014 13:58

I'd like to be able to define default and alternative keyboard controls as part of a gamemode, and to assign additional keys for mod functions. An example of usage might be if I wanted to implement a "crouch" or "crawl" capability instead of, or in addition to "sneak".

From what I can glean from the dev wiki, the Player object's get_player_control() and get_player_control_bits() can only return specific, hard-coded values. What I propose, is the ability to modify or add to these, through some sort of a minetest.register_player_control(key,controlbit) function.
I write code. Sometimes, it even works.
 

User avatar
Pavel_S
Member
 
Posts: 131
Joined: Sat Apr 06, 2013 11:43

Re: Modders: Give feedback to the core developers

by Pavel_S » Thu May 08, 2014 01:57

Does Minetest do interpolation to entities?
I ask because it seems like single entity moves using interpolation, but attached entity don`t. And it moves annoyingly(see jumping player in Cars mod or shaking heli in Helicopter mod).
 

dgm5555
Member
 
Posts: 245
Joined: Tue Apr 08, 2014 19:45

Re: Modders: Give feedback to the core developers

by dgm5555 » Sun May 18, 2014 10:10

my first take on functions I would like:-
forceload_block(now=true/false, onstartup=true/false) - which would load a block immediately - the current one doesn't seem to guarantee loading [EDIT: this seems to be an undocumented benefit of voxel_manip]
ground_level(x,z,ignore_water=true/false) to identify the level of ground at a particular location (possibly with option of returning waterlevel if it was higher.
refresh_texture("mod:texname") - to enable reload of a texture if it has changed.
refresh_mod("mod") - to enable reload of mod - really useful if debugging without having to go in and out of game.
node_identify_onpoint = true/false - so a tool-tip (or whatever it's called - like the text a sign shows) is shown for every node to identify it's identity and properties. [EDIT: like worldedit //inspect, but displayed by the HUD]
copy and paste to the chat bar (and fix the F10 bug which means full-screen chat can't be cleared)
Last edited by dgm5555 on Fri May 23, 2014 23:26, edited 1 time in total.
 

spillz
Member
 
Posts: 138
Joined: Thu Feb 13, 2014 05:11

Re: Modders: Give feedback to the core developers

by spillz » Sun May 18, 2014 12:32

rubenwardy wrote:
Code: Select all
minetest.forceload_block(pos)
^ forceloads the position pos.
^ returns true if area could be forceloaded


https://github.com/minetest/minetest/bl ... .txt#L1704


This isn't quite what it seems. (And people writing API docs really need to care more for their users than this)

https://github.com/minetest/minetest/bl ... v.cpp#L778

It adds the block to a list of blocks that should be kept loaded. It doesn't synchronously load the block right away, it is an asynchronous request. Presumably there is a way to get chunk load notifications....
 

spillz
Member
 
Posts: 138
Joined: Thu Feb 13, 2014 05:11

Re: Modders: Give feedback to the core developers

by spillz » Sun May 18, 2014 12:37

spootonium wrote:I'd like to be able to define default and alternative keyboard controls as part of a gamemode, and to assign additional keys for mod functions. An example of usage might be if I wanted to implement a "crouch" or "crawl" capability instead of, or in addition to "sneak".

From what I can glean from the dev wiki, the Player object's get_player_control() and get_player_control_bits() can only return specific, hard-coded values. What I propose, is the ability to modify or add to these, through some sort of a minetest.register_player_control(key,controlbit) function.


See also https://github.com/minetest/minetest/pull/1217

This adds keyboard shortcuts for chat commands and if they ever except it I would then hope to add mod support.
 

dgm5555
Member
 
Posts: 245
Joined: Tue Apr 08, 2014 19:45

Re: Modders: Give feedback to the core developers

by dgm5555 » Sun May 18, 2014 13:04

spillz wrote:This isn't quite what it seems. (And people writing API docs really need to care more for their users than this)
https://github.com/minetest/minetest/bl ... v.cpp#L778
It adds the block to a list of blocks that should be kept loaded. It doesn't synchronously load the block right away, it is an asynchronous request. Presumably there is a way to get chunk load notifications....

I agree. I wasted at least an hour of my time figuring this out, and it couldn't possibly have taken more than 2 minutes to document it properly.

Actually that would be another one extremely high on my wish list - a properly documented API

Another would be a central repository of mods listing global functions and variables, to reduce risk of conflict with other mods. And on that note, is there a function to poll if a mod is enabled? I've ended up polling for globals and assuming if result is nil then not loaded (so I know whether my mod can use other mod's functions), but it's not very robust.
 

User avatar
kaeza
Moderator
 
Posts: 2162
Joined: Thu Oct 18, 2012 05:00
Location: Montevideo, Uruguay
GitHub: kaeza
IRC: kaeza diemartin blaaaaargh
In-game: kaeza

Re: Modders: Give feedback to the core developers

by kaeza » Sun May 18, 2014 13:37

dgm5555 wrote:And on that note, is there a function to poll if a mod is enabled?

Yes:
Code: Select all
if minetest.get_modpath("foobarmod") then
  -- Code using `foobarmod' features goes here.
end
Your signature is not the place for a blog post. Please keep it as concise as possible. Thank you!

Check out my stuff! | Donations greatly appreciated! PayPal
 

Sokomine
Member
 
Posts: 3918
Joined: Sun Sep 09, 2012 17:31
GitHub: Sokomine

Re: Modders: Give feedback to the core developers

by Sokomine » Sun May 18, 2014 17:36

Beeing able to read zlib streams without having to add extra libraries would be great. The schematics are encoded that way, and sometimes (at least for my use case) I'd like to know how many of each node are contained in the schematic (so that I can ask the player to insert that many blocks into the build chest).

Also saving/restoring table values for mods would be great. There's a mod out there that does it; but we need it in the main game. It's inacceptable that one has to copy the code for saving data each time a mod may use it. Depending on other mods is very unpopular as it makes installation for inexperienced players even more difficult. Plus this is something that could very easily be done inside e.g. builtin.
 

PreviousNext

Return to General Discussion



Who is online

Users browsing this forum: No registered users and 2 guests