Page 1 of 1

Wishlist for 0.4.X (rails, main login menu, LUA debug)

PostPosted: Fri Dec 14, 2012 20:58
by Michael Eh?
0.4.4 dev is still being worked on ... what I like to see make the cut (because i don't think it can be done in LUA).

NOTE: Since 0.4.4 went stable around this post, I've added as wish list for next dev.

A RAIL SOLUTION
============
Rail has been around and many servers stop using 'Carts' because it slows down the server. Since people are using carts as a means of transportation, travelling on rails should mean your speed is doubled.

ie. walking on rails == run speed. Running on rails == flying speed while on rails.

If you really want to stick to rails while moving, 'down' sticks you to only moving on rails. 'Left' or 'right' you can take branches. 'Forward' or 'back' work the same. Moving POV with the mouse would not change direction of movement. To stop movement on rails and return to normal speed and free movement, 'JUMP'. If you encounter and end of rail or a gap, you automatically return to normal movement. So technically, you could jump a gap then hold down to reclick onto the other part of the rail. More fun ... add a routine so you lose speed as you leave the rail... ski jump anyone? ;)

This way, people will start building rail lines and not want to grief them as happened on servers in the past.

Remember MULTIPLE SERVERS
======================
Main menu this time. I do work between servers and to have pull down menu of recent servers with another pulldown for port numbers would save time retyping. I would NOT have this for IDs to prevent trolling.

FULL Screen Toggle
==============
F11 is usually full screen mode for many PC programs so why not have it as full screen toggle for minetest?

LUA DEBUG
========
How about at least for server admins and mode developers a LUA console/debug. Ie. how much a mod is using up of resources. Something like F6 but LUA related.

Thoughts ... Please quote each idea seperately. Any other things to put on this 'wishlist'? I'll cut and paste the best ones in the first post.

PostPosted: Fri Dec 14, 2012 21:13
by PilzAdam
Michael Eh? wrote:.4.4 dev is still being worked on ... what I like to see make the cut (because i don't think it can be done in LUA).

No, 0.4.4 stable is already released.

Michael Eh? wrote:A RAIL SOLUTION
============
Rail has been around and many servers stop using 'Carts' because it slows down the server. Since people are using carts as a means of transportation, travelling on rails should mean your speed is doubled.

ie. walking on rails == run speed. Running on rails == flying speed while on rails.

Well, the new reworked carts mod by me works pretty good, even on servers.

Michael Eh? wrote:Remember MULTIPLE SERVERS
======================
Main menu this time. I do work between servers and to have pull down menu of recent servers with another pulldown for port numbers would save time retyping. I would NOT have this for IDs to prevent trolling.

That would be nice.

PostPosted: Fri Dec 14, 2012 21:32
by Michael Eh?
Michael Eh? wrote:A RAIL SOLUTION
============
Rail has been around and many servers stop using 'Carts' because it slows down the server. Since people are using carts as a means of transportation, travelling on rails should mean your speed is doubled.

ie. walking on rails == run speed. Running on rails == flying speed while on rails.

PilzAdam wrote:Well, the new reworked carts mod by me works pretty good, even on servers.


This wouldn't require carts so carts can be used to haul stuff as they are meant too. I haven't seen as server that used carts reinstall it since.

PostPosted: Fri Dec 14, 2012 22:31
by jojoa1997
VanessaE server has it

PostPosted: Sat Dec 15, 2012 04:08
by RAPHAEL
Michael Eh? wrote: I haven't seen as server that used carts reinstall it since.


DTAmedia server has carts as well (the new one that's not as buggy and is faster)

PostPosted: Mon Dec 17, 2012 03:00
by Michael Eh?
Server MSG [user]
=============
allows admins to /MSG [username] [msg] so they and they can read it when they log on next. Good for saying 'hey you're banned for griefing.' ;) This would save admins having to catch the player online and the player could then go to appropiate channels to contact the admins via website/IRQ/email. You could add /msg [ALL] [msg].

Server TOS
========
This would spit out a simple Terms Of Service whe the user types /tos. It would also have the chat window open up with pause for scrolling through the terms. Would require a TOS.txt file is oome directory for admins to write up.

PostPosted: Mon Dec 17, 2012 12:59
by 0gb.us
PilzAdam wrote:
Michael Eh? wrote:Remember MULTIPLE SERVERS
======================
Main menu this time. I do work between servers and to have pull down menu of recent servers with another pulldown for port numbers would save time retyping. I would NOT have this for IDs to prevent trolling.

That would be nice.


That would be very nice, a feature that we are sorely lacking. I gave up trying to keep track of multiple servers, and wrote a shell script for it.

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
#!/bin/bash
OPTIONS=("minetest.0gb.us:30001 redcrab.suret.net:30401 94.23.33.108:30000 localhost:30000")
select opt in $OPTIONS; do
    if [ "${opt#*:}" != "" ]
    then
        minetest --address ${opt%:*} --go --name <username> --password <password> --port ${opt#*:}
    else
        exit;
    fi
done


This is in no way elegant, and naïvely assumes you use the same name and password on every server, but it's better than nothing. Each server you use needs to be added to the file, in the format <address>:<port> (separate different servers with spaces), and you need to add your name and password directly to the file. Not good for shared computers.

Which brings me to another point. It would be nice if Minetest could remember our password. It would need to be possible to easily enable/disable this. My computer is automatically password-locks when no one is using it, but some people have different setups, or are sharing a computer. password remembering should definitely be optional.

Michael Eh? wrote:Server MSG [user]
=============
allows admins to /MSG [username] [msg] so they and they can read it when they log on next. Good for saying 'hey you're banned for griefing.' ;) This would save admins having to catch the player online and the player could then go to appropiate channels to contact the admins via website/IRQ/email. You could add /msg [ALL] [msg].

Server TOS
========
This would spit out a simple Terms Of Service whe the user types /tos. It would also have the chat window open up with pause for scrolling through the terms. Would require a TOS.txt file is oome directory for admins to write up.


Those are both addable by plugins. Feel free to write some!

PostPosted: Tue Dec 18, 2012 06:26
by Michael Eh?
I wasn't wanting remember multiple usernames or passwords. Just Servers and ports.

PostPosted: Tue Dec 18, 2012 06:33
by NakedFury
Michael Eh? wrote:I wasn't wanting remember multiple usernames or passwords. Just Servers and ports.


Just like what can be found in many shooter and online games, even minecraft has it and they show how good the connection is.

PostPosted: Sat Dec 22, 2012 19:48
by jmf
It would be cool if the server selection worked like this:
Server are selected like worlds in world selection.
Every server has an own folder that contains:
*One "server" file with server name, IP and Port
*One "cache" folder, so every server has its own cache.
Second one would delete the cached files if you delete the server.

PostPosted: Sun Dec 23, 2012 07:36
by jordan4ibanez
I think you're a little late for 0.4.4

PostPosted: Tue Jan 08, 2013 05:18
by Michael Eh?
tell me about it jordan4ibanez :/

I posted this shortly around the stable release. though there is still the bug with dropped items.

Still I think main menu option is doable. People on other servers do like the rail idea. Carts can then be used for hauling ore as it was meant to be.

PostPosted: Fri Jan 18, 2013 04:52
by Michael Eh?
Okay a new idea I've added to the top wish list (plus changing the topic for the next dev cycle).

F11 is usually full screen mode for many PC programs so why not have it as full screen toggle for minetest?

PostPosted: Fri Jan 18, 2013 11:23
by rarkenin
What about dynamically loading compiled mods, from DLLs, .so's, or whatever? One can use dlopen( or something and get access to mod functions in it. However, dealing with the API would be a bit more hazardous, and modding would be a pain, as the plugin itself would need to be linked to libminetest or something to have Lua-like functions.

PostPosted: Fri Jan 18, 2013 12:00
by Calinou
rarkenin wrote:What about dynamically loading compiled mods, from DLLs, .so's, or whatever? One can use dlopen( or something and get access to mod functions in it. However, dealing with the API would be a bit more hazardous, and modding would be a pain, as the plugin itself would need to be linked to libminetest or something to have Lua-like functions.


See the IRC Chat mod.

PostPosted: Sun Jan 20, 2013 17:05
by kaeza
rarkenin wrote:What about dynamically loading compiled mods, from DLLs, .so's, or whatever? One can use dlopen( or something and get access to mod functions in it. However, dealing with the API would be a bit more hazardous, and modding would be a pain, as the plugin itself would need to be linked to libminetest or something to have Lua-like functions.

This is already possible from Lua. Take a look at the package.loaders documentation in the Lua manual. As Calinou pointed, this is what I used for the IRC mod.

PostPosted: Sun Jan 20, 2013 19:17
by rarkenin
kaeza wrote:
rarkenin wrote:What about dynamically loading compiled mods, from DLLs, .so's, or whatever? One can use dlopen( or something and get access to mod functions in it. However, dealing with the API would be a bit more hazardous, and modding would be a pain, as the plugin itself would need to be linked to libminetest or something to have Lua-like functions.

This is already possible from Lua. Take a look at the package.loaders documentation in the Lua manual. As Calinou pointed, this is what I used for the IRC mod.


I did see that. I think that this would be a good idea to add a tutorial for this to the API reference. Is it possible to call Lua functions at high speed from the C++ though?

PostPosted: Mon Jan 21, 2013 13:55
by kaeza
rarkenin wrote:
kaeza wrote:
rarkenin wrote:What about dynamically loading compiled mods, from DLLs, .so's, or whatever? One can use dlopen( or something and get access to mod functions in it. However, dealing with the API would be a bit more hazardous, and modding would be a pain, as the plugin itself would need to be linked to libminetest or something to have Lua-like functions.

This is already possible from Lua. Take a look at the package.loaders documentation in the Lua manual. As Calinou pointed, this is what I used for the IRC mod.


I did see that. I think that this would be a good idea to add a tutorial for this to the API reference. Is it possible to call Lua functions at high speed from the C++ though?

Minetest does not export any API in C++. This means that you cannot e.g. create a DLL/.so to access internal things to the engine.

You can call *Lua* functions from your DLL/.so (using the Lua C API), but doing so has sligth to no performance gain, and the users of your mod would have to compile it (which may be a tedious task, especially on Windows).

As for creation of a tutorial, I think this will only be useful in a few cases, so it's not really worth it as part of Minetest API docs. If you want documentation about how to do it, I recommend you read this.

PostPosted: Mon Jan 21, 2013 16:07
by rarkenin
Now that we have particles in the engine(although not part of the stable build yet), there should be Lua functions for causing a node to emit particles, even when it is not being punched or dug. Also, some particles of some nodes should appear to be carried off by wind. Also make particles appear when others dig.

Also, having infotext scroll if it doesn't fit would be nice.

Thirdly, formspec radiobuttons and checkboxes. Scrollable lists containing rows with their own controls within, like:

Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
Code: Select all
|----------------|
| |------------/\|
| | foo [btn]  []|
| | bar [btn]  \/|
|----------------|


PostPosted: Tue Jan 22, 2013 07:46
by MEGASPARK
Michael Eh? wrote:.4.4 dev is still being worked on ... what I like to see make the cut (because i don't think it can be done in LUA).

NOTE: Since 0.4.4 went stable around this post, I've added as wish list for next dev.

A RAIL SOLUTION
============
Rail has been around and many servers stop using 'Carts' because it slows down the server. Since people are using carts as a means of transportation, travelling on rails should mean your speed is doubled.

ie. walking on rails == run speed. Running on rails == flying speed while on rails.

If you really want to stick to rails while moving, 'down' sticks you to only moving on rails. 'Left' or 'right' you can take branches. 'Forward' or 'back' work the same. Moving POV with the mouse would not change direction of movement. To stop movement on rails and return to normal speed and free movement, 'JUMP'. If you encounter and end of rail or a gap, you automatically return to normal movement. So technically, you could jump a gap then hold down to reclick onto the other part of the rail. More fun ... add a routine so you lose speed as you leave the rail... ski jump anyone? ;)

This way, people will start building rail lines and not want to grief them as happened on servers in the past.

Remember MULTIPLE SERVERS
======================
Main menu this time. I do work between servers and to have pull down menu of recent servers with another pulldown for port numbers would save time retyping. I would NOT have this for IDs to prevent trolling.

FULL Screen Toggle
==============
F11 is usually full screen mode for many PC programs so why not have it as full screen toggle for minetest?

Thoughts ... Please quote each idea seperately. Any other things to put on this 'wishlist'? I'll cut and paste the best ones in the first post.

railroad tracks..... hmmmm would it be nice to have train faster then flying speed??

PostPosted: Thu Jun 06, 2013 04:01
by Michael Eh?
Lets add LUA debug option... as in which mods are using the most of the server's CPU.

PostPosted: Thu Jun 06, 2013 08:21
by PilzAdam
Michael Eh? wrote:Lets add LUA debug option... as in which mods are using the most of the server's CPU.

You can benchmark mods quite good with os:clock().

PostPosted: Fri Jun 07, 2013 21:12
by Michael Eh?
PilzAdam wrote:
Michael Eh? wrote:Lets add LUA debug option... as in which mods are using the most of the server's CPU.

You can benchmark mods quite good with os:clock().

Yeah but can be be part of the main program? =)