Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[SUGGESTION] Mod API for Xonotic

#1
Heart 
Hi everyone, I'm new here but long time supporter of mods and creator of moddb.com. I'm posting to discuss something which I believe could be a great addition to the Xonotic project.

For the past year we have been working on a mod API called mod.io. Our goal is to create an open modding platform, that provides an easy-to-use interface to browse and install mods on the web and in-game. It would be amazing to see mods play a much larger role in Xonotic by making them super accessible, which is the objective of mod.io.

You can take a look at a demonstration i've setup (with entirely faked data so please excuse it) to get an idea of how it all works. Please ask me anything and if a developer from the community is interested in integrating mod.io - we'd be happy to assist and help take modding to the next level.
Reply

#2
Xonotic mostly faces an issue with curation regarding mods e.g there are multiple versions of the same map on the map host because of multiple people porting Quake maps, applying their own [incomplete] fixes, and using various naming conventions. Accessibility, not so much since clients are served whatever crucial mod files that are missing as they connect. (This is fine because servers can simply list the download url as whatever service that can be used with curl and that preserves the file name at the end of the url).

This slightly resembles Steam Workshop in appearance, that system assumes one modder or mod team makes the changes on one mod. Would this handle a sort of "one mod, changed by several different unaffiliated people to their own versions" scenario?
Reply

#3
With user-generated content you are always going to get duplicates and inconsistent naming conventions etc. The only way to stop that is to enforce super strict rules and when you do that, all you end up doing is making a system that's ultra hard to use and still doesn't fully solve the problem. So yes we still experience this problem, however the best solution is great search and filtering. For example our system allows you to order mods by popularity, rating, date, name etc and that will generally weed out the duplicate content by deprioritizing it. We also have a powerful curation system in place, so you can add moderators or allow the community to keep everything consistent and beautiful (see below).
[Image: Screen_Shot_2017-11-03_at_11.43.png]
The comparison with Workshop is fair, our system is a mod API as well - but works anywhere (great for open source!) and has a strong focus on customization to hopefully offer developers precisely what they need. Mod profiles can be managed by teams of people (see below), but those users will need permission to make changes is all.
[Image: Screen_Shot_2017-11-03_at_11.52.png]
Does that answer your question? If you are interested we are happy to adapt our product to fit your use-case.
Reply

#4
(11-03-2017, 07:53 AM)intenscia Wrote: If you are interested we are happy to adapt our product to fit your use-case.
This sentence rings all bells of my presales detector. Will your product be free to use as in beer and as in freedom? Be advised that Xonotic is not a corporation that has financial means, regardless of special events where the community raises donations (such as paying a professional modeller or arranging cups with prizes).
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#5
I guess Xonotic is more like an example implementation... just like the Blender Foundation movies are often used for TV sales.
I like the idea of mod.io but it really seems to be more useful for commercial closed source games.
Reply

#6
Hey everyone, thanks for taking a look at mod.io.

To answer your questions halogene:
1. Our product is entirely free to use as in beer and freedom.
2. We are open sourcing our SDK, design, documentation and plugins. Our server-side functionality is closed source. At the moment we have been developing in secret so these repositories are not publically available, but will be on launch and for teams that need access to implement mod.io functionality prior to launch.
3. We offer commercial features like a white label solution and patronage, but they are up to the developer enable. As a freedom game you can ignore these features, we expect most games will, even commerical ones.

Lyberta:
1. Mods don't have to be epic total conversions. They can be skins, maps, models, weapons, huds, scripts etc. Doesn't Xonotic already support manually installing maps for example: https://xonotic.co/ ? We are trying to make it easy for users to personalize their games by making small changes via user-generated-content. I don't know how Xonotic works to know why you would need to combine mods together?
2. We are running Google Analytics only for our internal use, but can disable it on your games page. Google Tag manager should not be called, i'll look into why that is occurring.
3. As above, we are open sourcing our SDK, design, documentation and plugins. Essentially the parts the games will use to integrate mod.io. Our server-side functionality is closed source.

poVoq:
1. While we expect commercial closed source games to be the majority, we are committed to working with and supporting open source projects by making a product compatible with your principles. It's been a huge focus of ours because right now games which don't have access to Workshop don't have a solution they can use for modding, unless they build it themselves.

Appreciate the feedback so far.
Reply

#7
(11-05-2017, 09:09 PM)pid=\82092 Wrote: intenscia

To answer your questions halogene:
1. Our product is entirely free to use as in beer and freedom.
2. We are open sourcing our SDK, design, documentation and plugins. Our server-side functionality is closed source. 

Somehow it seems to me that your answers to 1. and 2. are contradictory, I sort of agree with Lyberta here despite Lyberta's sort of radical approach.  But with Xonotic being truly free, anyone is of course free to make it work with your solution. I still don't know what the benefit would be since Xonotic is based on online gaming and every server pushes whatever stuff would be missing to the client anyway. So the only application I see is server admins or single player  gamers. Whether the former need this sort of solution I'd rather doubt, the latter are probably a minority (or invisible since not using the forums...).

I believe this can be a sweet thing for games that are not as open to modding as Xonotic is. I wonder though if there is enough benefit for Xonotic as incentive to make it work.
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#8
(11-06-2017, 02:39 AM)Halogene Wrote: I still don't know what the benefit would be since Xonotic is based on online gaming and every server pushes whatever stuff would be missing to the client anyway. So the only application I see is server admins or single player  gamers. Whether the former need this sort of solution I'd rather doubt, the latter are probably a minority (or invisible since not using the forums...).

I believe this can be a sweet thing for games that are not as open to modding as Xonotic is. I wonder though if there is enough benefit for Xonotic as incentive to make it work.

Steam Workshop and by the looks of mod.io are generally tailored to creators and users especially when there's a comments section where the two can interact and communicate. Server admins really only need a url to refer to clients missing a package; however the link must preserve the file name, which I can see mod.io doesn't do.

As for extra commentary, when I first started hosting a Xonotic server- this being around the time I also started playing the game- I was requested to add Aerowalk to my maplist. Initially I added aerowalk_ql.pk3, but then later got complaints I didn't use the right version. So I was told that the version to use was "hub"; later I added another unsatisfactory version because I assumed the latest revision is the best. This happened a few times for other maps like Toxicity.
The moral of the story above, Xonotic needs a coherent and curated map host. If you search up a single map name on xonotic.co you may get 5-6 different results; that itself is time consuming to check if the map is improperly scaled, missing textures, has an entity floating out of the map, etc.

Philosophical differences aside, mod.io has merit to it. It's also useable without Javascript, where if you disabled it xonotic.co will never finish loading.
Reply

#9
Delivering a map server/site that the community would actually use and find comprehensive is a legal minefield, unfortunately. For that reason such a site isn't likely to ever be on any of our "official" hardware (i.e. the host that xonotic.org, the forums, autobuilds/releases, and stats all run on). It wouldn't be endorsed on our main site either for the same reason.

There isn't anything stopping us from hosting a site where folks could download maps that we could legally distribute, though. It just hasn't been done b/c it is a big effort AND it would be inherently incomplete.
asyyy^ | are you releated to chuck norris?
Reply

#10
Why hasn't the real intense mentioned mod.io on any of his social media?  You would think that someone with that kind of exposure would at least mention their side projects.
https://www.reddit.com/user/intenscia/
http://www.moddb.com/members/intense
https://twitter.com/scottreismanis
https://twitter.com/dbolical
Reply

#11
Lyberta:
We are SaaSS, since ultimately someone needs to host the mod files and provide the infrastructure/bandwidth required to download them. But the libraries I mentioned such as our SDK for integrating is licensed under MIT, and is able to be used by games in any manner they please. I've spoken to the developer and we will open it up on Github next week once our first build is ready.

Halogene:
Our role depends on what you want modding to be in your game. As i'm sure you've already experienced, with a passionate playerbase you can bet people will get creative with the tools you offer. You could make modding simple and maps only, or you can make it skins, weapons, maps, scripts, themes, huds etc. Integrating with a server is an important feature when a mod affects everyone else on that server (i.e. a map or  to a lesser degree a skin), but some mods like scripts, themes or huds might be personal to the user. We work with both kinds of mods,  you configure the tags that categorize the mods available.

Also Antares* hit on an important point and that is our expertise for a long time has been creating modding communities like ModDB. We want to make mods a joy to explore, and allow creators of mods to derive pleasure from seeing the comments and feedback their players give. We hope in doing so it'll make modding much larger, and by making a SDK much more accessible for less technical users that don't want to find, download, unzip then install mod files which is never fun.

Antares*:
Appreciate the merit. We hope to be able to solve the challenges you've experienced with map versioning, by allowing mod creators to have all versions uploaded to the one profile and an ability to select the "current active version".

Antibody:
Why would hosting a map server/site be a legal minefield for you? We have a system in place for handling DMCA claims and user disputes, that's one of our strengths. We build all of the boring but important functionality like that. They'd be no point considering mod.io if we were not solving massive problems like that.

mini:
mod.io hasn't launched yet, xonotic is actually one of the first communities we have shown it too. Believe me when it is ready i'll be shouting it from the rooftops! We are showing it here because creating a platform which has a license and approach compatible with open source and DRM free games is something we offer, that say Workshop cannot, since it is tied to Steam-only games. We'd like to help a few developers such as xonotic explore the possibility of using mod.io to distribute mods, and once that is built go live. So we will be gradually going more and more public over the coming few months. Hope that makes sense... keeping things semi-quiet for now.
Reply

#12
(11-08-2017, 04:04 AM)intenscia Wrote: Halogene:
Our role depends on what you want modding to be in your game. As i'm sure you've already experienced, with a passionate playerbase you can bet people will get creative with the tools you offer. You could make modding simple and maps only, or you can make it skins, weapons, maps, scripts, themes, huds etc. Integrating with a server is an important feature when a mod affects everyone else on that server (i.e. a map or  to a lesser degree a skin), but some mods like scripts, themes or huds might be personal to the user. We work with both kinds of mods,  you configure the tags that categorize the mods available.

Thank you for taking your time to answer elaborately all the time! As I said, anything that's required to play on a server (maps, scripts, balances, models, etc) is already being delivered to the client upon connect automatically, no need to use a mod database or anything for that. You just connect. So if I am not mistaken the applicability of mod.io for Xonotic (online) players would be limited to things that only affect the client and therefore are not being delivered by the server, such as huds or menu themes.

For server admins of course a mod database could provide easier access to existing mods (physics/balance settings, models, maps...) so setting up a custom server becomes a bit easier. But I still wonder if that would justify the effort, some server admins should speak up here. I mean we have to weigh the effort of pouring all the stuff into the database and maintaining it thereafter against the effort to collect the desired settings from other server admins and various places and fiddle around with the rest until everything works. I have no idea how much mod.io would simplify in that task.

Or am I missing a point here? I'm not saying this service does not make sense, but I have yet to understand the demands inside Xonotic community that would be addressed.

On a side note, as the infrastructure for such a database would be beyond the control of Xonotic team and thereby generating an external dependency, this may prevent it from becoming "oficially" supported. But that's a core team decision, obviously.


(11-08-2017, 04:04 AM)intenscia Wrote: Antibody:

Why would hosting a map server/site be a legal minefield for you? We have a system in place for handling DMCA claims and user disputes, that's one of our strengths. We build all of the boring but important functionality like that. They'd be no point considering mod.io if we were not solving massive problems like that.
So mod.io has a system in place to handle DMCA claims and user disputes. How can such a thing possibly be offered for free? How would that sort of service work? Would you indemnify Xonotic (whatever form of entity it is, if any) from copyright infringement or license violation claims when we would use it as official platform to manage content? I'm sort of a natural born sceptic for services that are proprietary but offered for free, but I am more than happy if you can explain and I am willing to understand.
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#13
Quote:Thank you for taking your time to answer elaborately all the time! As I said, anything that's required to play on a server (maps, scripts, balances, models, etc) is already being delivered to the client upon connect automatically, no need to use a mod database or anything for that. You just connect. So if I am not mistaken the applicability of mod.io for Xonotic (online) players would be limited to things that only affect the client and therefore are not being delivered by the server, such as huds or menu themes.

For server admins of course a mod database could provide easier access to existing mods (physics/balance settings, models, maps...) so setting up a custom server becomes a bit easier. But I still wonder if that would justify the effort, some server admins should speak up here. I mean we have to weigh the effort of pouring all the stuff into the database and maintaining it thereafter against the effort to collect the desired settings from other server admins and various places and fiddle around with the rest until everything works. I have no idea how much mod.io would simplify in that task.

Or am I missing a point here? I'm not saying this service does not make sense, but I have yet to understand the demands inside Xonotic community that would be addressed.

I could be wrong, but i'm assuming right now that you have to manually install maps and models in Xonotic to customize your game with mods. Then when you join a server, that server makes sure everyone else connected has the maps and models required. That's great, it means you've already solved 50% of the problem and the server stuff wouldn't change. What mod.io would add to this picture, is an ability to browse and install these mods in-game, instead of the old fashioned "follow the readme" way. Our API helps developers standardize the way mods are managed in their game and makes searching and filtering easy.

Quote:On a side note, as the infrastructure for such a database would be beyond the control of Xonotic team and thereby generating an external dependency, this may prevent it from becoming "oficially" supported. But that's a core team decision, obviously.

The infrastructure and content would all be hosted by us, but our API makes all of it public. So others could easily consume it, and run their own backups or Xonotic modding communities if they desired.

Quote:So mod.io has a system in place to handle DMCA claims and user disputes. How can such a thing possibly be offered for free? How would that sort of service work? Would you indemnify Xonotic (whatever form of entity it is, if any) from copyright infringement or license violation claims when we would use it as official platform to manage content? I'm sort of a natural born sceptic for services that are proprietary but offered for free, but I am more than happy if you can explain and I am willing to understand.

We offer copyright holders a system to submit DMCA reports. When those reports come in we review them, and if legitimate take down the content. Provided a process similar to that is followed, we remain within the safe harbour provisions. The key is technology to scale in an efficient and effective manner. We don't indemnify anyone, but this is no different from servers downloading maps from users and xonotic.co now. In 15 years of running ModDB we've followed this process, and never had it escalate by being smart and diligent. We offer all of this for free, in much the same way that Github offers their proprietary repo hosting free for public projects. For us it's a matter of pride being able to demonstrate the goodwill we've established hosting games like Xonotic, which are supported by corporate games who need a more custom and private solution. Hope that helps.
Reply

#14
(11-08-2017, 05:30 AM)intenscia Wrote: I could be wrong, but i'm assuming right now that you have to manually install maps and models in Xonotic to customize your game with mods. Then when you join a server, that server makes sure everyone else connected has the maps and models required. That's great, it means you've already solved 50% of the problem and the server stuff wouldn't change. What mod.io would add to this picture, is an ability to browse and install these mods in-game, instead of the old fashioned "follow the readme" way. Our API helps developers standardize the way mods are managed in their game and makes searching and filtering easy.

For online gaming, you are indeed wrong. If your client does not have the map played on the server, or models, or whatever, the client automatically downloads it from the server upon connect. With a Xonotic client you can connect to whatever Xonotic server running any mod or map or game mode and you will only experience a download before connecting (usually only a couple of MBs, takes seconds at DSL speed). There is no manual installation of any of these things required.

But if you want to play a certain map alone, single player, on your computer, with bots (= booring for estimated 90% of the online visible player base), then you would have to manually download the stuff (or move it from the dlcache folder into the data folder if you have played with the content on a server before, that's where it gets stored client side).

(11-08-2017, 05:30 AM)intenscia Wrote: We offer copyright holders a system to submit DMCA reports. When those reports come in we review them, and if legitimate take down the content. Provided a process similar to that is followed, we remain within the safe harbour provisions. The key is technology to scale in an efficient and effective manner. We don't indemnify anyone, but this is no different from servers downloading maps from users and xonotic.co now. In 15 years of running ModDB we've followed this process, and never had it escalate by being smart and diligent. We offer all of this for free, in much the same way that Github offers their proprietary repo hosting free for public projects. For us it's a matter of pride being able to demonstrate the goodwill we've established hosting games like Xonotic, which are supported by corporate games who need a more custom and private solution. Hope that helps.
That sounds good for usage by users, as the primal liabiltiy remains with the user that uploaded the content. I assume that this would be the way to go, keeping Xonotic itself out of any responsibility and having this sort of as a community maintained ressource. Thank you for clarifying!
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#15
(11-08-2017, 05:02 AM)Halogene Wrote: But I still wonder if that would justify the effort, some server admins should speak up here. I mean we have to weigh the effort of pouring all the stuff into the database and maintaining it thereafter against the effort to collect the desired settings from other server admins and various places and fiddle around with the rest until everything works.
I really don't think that's the case. I see mod.io as an alternative public file host and given the trends of the internet i.e all-in-one hubs such as YouTube, etc, it can indirectly give some exposure to Xonotic just by being on there. E.g search engines were and maybe still are biased for a certain style of websites. It doesn't have to replace xonotic.co nor does the community have to explicitly migrate there. Likewise, you don't see Bethesda managing what sites host mods of their games nor holding any authority over such in any capacity.
Reply

#16
Halogene:
Regarding the server stuff what you said is what I meant. I realize the server makes those downloads automatic, but at some point either the server operator or another user manually installed the mod into the game which everyone else is downloading. So mod.io just makes that flow easier and more obvious by adding a mod browser and installer in-game.
Lyberta:
The API endpoints are all public. So you could get an API key, request the information and host your own copy or even run a mod.io competitor / community site. That's kind of what we hope will happen.
Reply

#17
Just for clarification (so you get a better view on how this works with Xonotic): setting up a dedicated server is something that isn't being done from in-game. Xonotic has a very old-fashioned way of configuring dedicated servers: you edit config files and run a script.

You can of course also start a server directly out of the game and have other users connect to it, but the performance is noticeably worse in most cases as the server would then additionally be busy processing one client. But I agree, for the casual game in a LAN (and of course single player games) such a feature would be quite cool indeed.
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#18
I wish more games did the old fashioned dedicated server approach. All of the peer-to-peer match making is magic sure, but misses so much upside such a lanning with friends!
Reply

#19
We just made our SDK Github repo MIT licensed and public, which you can see here: https://github.com/DBolical/modioSDK
Reply

#20
Please refrain from bashing everything that does not meet your personal requirements. The way to make your point on this forum is not "this is so horrible it does not have this and that" but instead "nice to release it on github. Could you add this and that and maybe consider changing it so it is compatible with the other thing? That would be great."
My Xonstats Profile
Latest track on soundcloud: Farewell - to a better Place (piano improvisation)
New to Xonotic? Check out the Newbie Corner!

Reply

#21
This is a really cool idea, intenscia.  Looks like you guys put a lot of thought and effort into this.  Great work, and thanks for considering FOSS!
Reply

#22
Thanks -z-, sorry for the late response I missed the notification somehow.
Oh and Lyberta we have released a greatly updated version of the SDK with C++ interface and other elements improved. Feedback and contributions welcomed. Our Unity plugin will be open sourced next,  you can view what we have open sourced here: https://github.com/DBolical
It will continually be opened as we prepare for launch in early 2018. Our development team is also on Discord now: https://discord.gg/DVqv2zS
Reply



Possibly Related Threads…
Thread Author Replies Views Last Post
  [SUGGESTION] DodgeBall Mod [video] gruuvin 5 4,399 04-02-2019, 03:13 PM
Last Post: Snowball
  [SUGGESTION] Ping Mod Ch4mp 1 2,627 03-09-2017, 06:09 PM
Last Post: Mario
  [SUGGESTION] "Xonotic-for-Kids" Mod silvers 46 41,013 07-13-2015, 08:14 PM
Last Post: acerspyro
  [SUGGESTION] Overkill mod: Nex balance issues unfa 12 12,305 06-16-2014, 11:11 AM
Last Post: tZork
  [SUGGESTION] **Trollnotic - Xonotic Mod** K__ 6 13,993 05-20-2012, 04:04 AM
Last Post: K__
  [SUGGESTION] A like Zombie Mod? Max98 4 4,179 04-17-2012, 12:44 PM
Last Post: Mr. Bougo
  [SUGGESTION] Gravity gun fight mod thingy Nesquick 2 4,007 01-04-2011, 03:17 PM
Last Post: jaykay

Forum Jump:


Users browsing this thread:
1 Guest(s)

Forum software by © MyBB original theme © iAndrew 2016, remixed by -z-