Ingame Mod Manager

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

Ingame Mod Manager

by Jeija » Thu Jul 26, 2012 11:21

This video says it:
YouTube

Image


The modmanager is coded in Lua and C++.
Using lua makes it more customizable (it wasn't really easier to code).
Every subgame should contain a modmanager.lua file that contains the functions to contact the "central server" (modlist server). Therefore the modmanager is "branded" by the selected game!

Current functions are:
- Install a mod
- Remove a mod
- Search mods

Todo:
- Search modlist (DONE)
- (Auto-)Update
- Your feature Requests

It has additional dependencies:
- luazip
- luasocket

(On arch they are available in the official repo)

Admin Tools
I also wrote a lua script that helps game admins create a modlist. By default the script uses a ftp server, but it should not be too hard to change it to http.

Plans
It would be awesome if people create their own games with their own modmanager.lua + central server. I was not planning to make a mod repo server myself.
The final goal: No more topics like "HEEEEEEELP PLSSSS!!!!!! CANNOT INSTALL MODSSSS!!!"

Download:
GitHub
GitHub - Admin tools
Just compile it like a normal minetest with the dependencies installed.
This is NOT a mod, you need to compile it.

Mind this is still in an early phase.
What features would you like to have?
Last edited by Jeija on Wed Oct 24, 2012 16:33, edited 1 time in total.
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
sfan5
Member
 
Posts: 3636
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5

by sfan5 » Thu Jul 26, 2012 11:59

Nice!
Mods: Mesecons | WorldEdit | Nuke
Minetest builds for Windows (32-bit & 64-bit)
 

User avatar
mauvebic
Member
 
Posts: 1550
Joined: Fri Jan 27, 2012 11:32

by mauvebic » Thu Jul 26, 2012 12:15

pretty nice, though i have a feature request: when you remove a mod, the mod manager should create dummy nodes for the unknown nodes and run an abm to remove them automatically. (or something like that)
"Fuck the hat." - Paulie Gualtieri
 

User avatar
Stef
Member
 
Posts: 394
Joined: Wed Apr 04, 2012 10:46

by Stef » Thu Jul 26, 2012 12:52

for windows pleas? maybe also an ingame texture pack changer
Sorry for my crappy english, im dutch :D
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Thu Jul 26, 2012 13:08

I don't use windows and therefore don't know how to use it (in the way of compiling, dependencies...)
Maybe someone else can compile it for you.
sfan5?
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
sfan5
Member
 
Posts: 3636
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5

by sfan5 » Thu Jul 26, 2012 14:29

I provide Windows Builds now:
Go check them out at http://sfan.sf.funpic.de/minetest-builds/
Mods: Mesecons | WorldEdit | Nuke
Minetest builds for Windows (32-bit & 64-bit)
 

User avatar
Calinou
Member
 
Posts: 3124
Joined: Mon Aug 01, 2011 14:26
GitHub: Calinou
IRC: Calinou
In-game: Calinou

by Calinou » Thu Jul 26, 2012 14:30

Wow, awesome. :P
Should be in the default/official game.
 

User avatar
sfan5
Member
 
Posts: 3636
Joined: Wed Aug 24, 2011 09:44
GitHub: sfan5
IRC: sfan5

by sfan5 » Thu Jul 26, 2012 14:36

I dont think celeron55 would add it :P
Mods: Mesecons | WorldEdit | Nuke
Minetest builds for Windows (32-bit & 64-bit)
 

User avatar
cHyper
Member
 
Posts: 587
Joined: Fri May 06, 2011 08:49
IRC: cHyper
In-game: cHyper

by cHyper » Thu Jul 26, 2012 15:00

Whats about a ingame multiplayer browser for various server-IP's ?
--------------------------------------------------------
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Thu Jul 26, 2012 15:01

I'd like to do all of these things, but I'd also like to make sure that it gets merged later on.
Last edited by Jeija on Thu Jul 26, 2012 15:01, edited 1 time in total.
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
dannydark
Member
 
Posts: 428
Joined: Fri Aug 12, 2011 21:28

by dannydark » Thu Jul 26, 2012 18:51

Nice work Jeija, downloading now.

How about adding an auto-refresh feature for the mods list? or maybe make it optional to have the list auto-refresh with a checkbox maybe?

It would be nice to see this merged upstream.
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Thu Jul 26, 2012 18:53

Everyone please mind that the windows version does NOT work yet!

@dannydark:
Auto-refresh would be nice, but refreshing takes like 1 second, and that can be annoying. It already has modlist caching so that it does not have to refresh every time it needs the modlist.
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Fri Jul 27, 2012 05:14

I'd like to push this, but it should be 100% working.
If someone knows a little using cmake and porting this, please help!
I have to add luazip and luasocket so that they compile on windows.
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
dannydark
Member
 
Posts: 428
Joined: Fri Aug 12, 2011 21:28

by dannydark » Fri Jul 27, 2012 11:32

Jeija wrote:I'd like to push this, but it should be 100% working.
If someone knows a little using cmake and porting this, please help!
I have to add luazip and luasocket so that they compile on windows.


help with a windows build? or just help in general?

I will try doing a windows build when I get home from work tonight, I tried it out on my linux desktop yesterday so didn't have any problems, although I tend to use windows as my main OS so I will need to compile it for that anyway.
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Fri Jul 27, 2012 12:43

Some help for the windows build would be awesome!!!
I can do everything apart from that, but I will wait with new features until the windows build
suceeds and possibly help you building minetest with luasocket + luazip (maybe also luafilesystem) on windows (although I do not know that much about cmake)
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Sat Jul 28, 2012 10:21

Did it work, dannydark?
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
dannydark
Member
 
Posts: 428
Joined: Fri Aug 12, 2011 21:28

by dannydark » Sat Jul 28, 2012 13:53

Sorry Jeija, didn't get chance to compile last night had a call out to fix some clients servers that experienced system failure after one of there developers did a hard reboot on them during updates ¬_¬

I've got the servers back up and running, just need to restore there websites from backup and then I should be able to have a look at compiling this for you.

Should be in the next couple of hours hopefully.
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Sat Jul 28, 2012 14:45

:D
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
dannydark
Member
 
Posts: 428
Joined: Fri Aug 12, 2011 21:28

by dannydark » Sat Jul 28, 2012 16:28

Is the mod server down at the moment? keep getting "Error: invalid server reply" when trying to fetch the mods list.
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Sun Jul 29, 2012 10:36

So did it compile? [k]Did you add luasocket and luazip to cmake?[/k]
No, the mod server is not down. Does it show a lua error in the console? (zip could not be found or sth like this)
Redstone for minetest: Mesecons (mesecons.net)
 

cornernote
Member
 
Posts: 844
Joined: Wed Jul 11, 2012 15:02

by cornernote » Sun Jul 29, 2012 11:57

Hi Jeija,

I downloaded, then compiled, then ran (on the surface everything seems to work).

I clicked "Refresh", and this is what is looks like:

Image
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Sun Jul 29, 2012 13:58

Jeija wrote:Everyone please mind that the windows version does NOT work yet!

-.- of course it doesn't work yet. Dannydark is working on the problem, trying to add luazip and luasocket to minetest.
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
dannydark
Member
 
Posts: 428
Joined: Fri Aug 12, 2011 21:28

by dannydark » Sun Jul 29, 2012 16:44

No errors other than that, I've manually compiled luasocket and luazip to test, I will get them added to cmake and will send a pull request on github when I get home in about an hour.

EDIT: I think I know why celeron55 probably won't include this upstream, as it adds quite a few more dependencies, I will keep going ahead adding them in, but was just thinking would it not just be easier to link to the pre-compiled windows binaries needed for this?

The reason I say that is because the extra lua libraries and there dependencies are not actually required to build minetest with the mod manager...however, they are obviously needed for it to function.

I will see if I can come up with a better way to do this for windows, but at the moment I'm not really sure what the best approach would be for this, although saying that I'm not all that sure the pre-compiled binaries work properly as I now seem to be getting a segfault when trying to refresh the mod list ¬_¬. Will keep you updated.

EDIT2: Here are the links to the windows files if anyone wants to try them:

LuaZip: http://files.luaforge.net/releases/luazip/luazip/LuaZip1.2.3/luazip-1.2.3-win32-lua51.zip
LuaSocket: http://files.luaforge.net/releases/luasocket/luasocket/luasocket-2.0.2/luasocket-2.0.2-lua-5.1.2-Win32-vc8.zip
Last edited by dannydark on Sun Jul 29, 2012 19:13, edited 1 time in total.
 

cornernote
Member
 
Posts: 844
Joined: Wed Jul 11, 2012 15:02

by cornernote » Mon Jul 30, 2012 00:08

Does it HAVE to be part of minetest? Perhaps a 2nd exe to manage mods wouldn't be such a bad idea. Could also double up as a server finder/connecter.
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Mon Jul 30, 2012 05:44

It is not part of minetest (only the GUI, but that has to be part of it). All he rest is in lua.
Why do you think there is an advantage when using a second exe? It needs the librarys anyway, the lua script needs them.
Redstone for minetest: Mesecons (mesecons.net)
 

lesliev
Member
 
Posts: 32
Joined: Thu Jun 21, 2012 10:57

by lesliev » Wed Aug 01, 2012 20:45

Wow, this is a cool idea. Some comments:
1. I could possibly host a mod repo, while traffic is not too heavy. FTP is fine.
2. Mod authors need to think about and write 'clean-up' code to remove their entities when they are uninstalled. This could be encouraged by the mod installer system. Init code too. mauvebic mentions this above.
3. Groups of mods make a modpack!
 

User avatar
Jeija
Member
 
Posts: 686
Joined: Fri Dec 23, 2011 21:46

by Jeija » Thu Aug 02, 2012 05:51

Dannydark, it is just too much work I think to install the lua binaries. I guess it's better to compile them with minetest, it shouldn't take too long. How did it go, adding them to mtest?
Redstone for minetest: Mesecons (mesecons.net)
 

User avatar
dannydark
Member
 
Posts: 428
Joined: Fri Aug 12, 2011 21:28

by dannydark » Thu Aug 02, 2012 13:22

Hi Jeija,

Sorry I've been bogged down with work recently, I got most of it added to minetest just got a few tweaks to do and will submit to github, Hopefully I will get time to do it tonight or the weekend at the latest.

Also luazip has a dependency of zziplib, The problem with this is that zziplib doesn't come with a pre-compiled lib like most lib sources, which means before you can compile luazip on windows you will need to compile zziplib which depends on some windows sdks. This isn't really a problem as they are easily available but it will mean people will have that extra step to do before compiling.

I could setup a new repository on github for zziplib with a pre-compiled library I guess? that would mean anyone compiling this could just grab the zziplib source from github and wouldn't need to compile it.

lesliev wrote:Wow, this is a cool idea. Some comments:
1. I could possibly host a mod repo, while traffic is not too heavy. FTP is fine.
2. Mod authors need to think about and write 'clean-up' code to remove their entities when they are uninstalled. This could be encouraged by the mod installer system. Init code too. mauvebic mentions this above.
3. Groups of mods make a modpack!


@lesliev regarding #2 it would be a nice idea, there is currently a pull request on github that allows digging of unknown nodes which means at least we can remove stuff left over from mods for the time being until mod developers add clean-up scripts to there mods ^_^
Last edited by dannydark on Thu Aug 02, 2012 13:25, edited 1 time in total.
 

User avatar
rubenwardy
Member
 
Posts: 4500
Joined: Tue Jun 12, 2012 18:11
GitHub: rubenwardy
IRC: rubenwardy
In-game: rubenwardy

by rubenwardy » Thu Aug 09, 2012 11:52

I came up with an idea like this, but i didnt have time to make it before you did...
 

TheLoLMan
Member
 
Posts: 190
Joined: Sat Jun 16, 2012 13:43

by TheLoLMan » Thu Aug 09, 2012 14:49

NICE
 

Next

Return to Minetest Engine

Who is online

Users browsing this forum: No registered users and 26 guests

cron