[WF-General] Server metadata changes

Sean Ryan sryan at evercrack.com
Fri Jan 9 21:01:46 PST 2015


Marisa,

You are correct, the metaserver does in fact keep track of any metadata 
that is attributed to a legitimately negotiated server.

There are default (and non-overridable) values, like IP and a few 
others, but anything can be added (at some point I will have to limit 
this for practical purposes, but thus far there has been no need).

In our case, if you look in cyphesis this is done via the cyphesis.vconf 
in 2 places:

--------
#1 - in the [cyphesis] configuration block.  These are "monitor" stats 
... there is a technical requirement of that which escapes me at the 
moment, Erik can comment.  It has to do with internal server variables 
that register with the monitor or something.
--------
# additional attributes to send to MS of Monitor Variables
# as a pipe delimited list
metastats="clients|entities|version|ruleset|buildid"

---------
#2 in the [metaattributes] section.  In this way you can set any 
name=value pair you want.  Again there are practical limits that I 
believe I enforce around there somewhere, but essentially anything you 
want.
---------

# The are name, value pairs that will be registered with
# the metaserver
[metaattributes]
server="cyphesis"


So in effect you could have something like this in your cyphesis.vconf

[metaattributes]
server="cyphesis"
url="http://foo.bar"
screenshot="http://bar/waka.jpg"
free=true


Erik is correct that ember is not setup to make good use of this though. 
  This was on my TODO, but I haven't done it yet due to the refactoring 
going on with cyphesis ... I already put in the above changes to 
cyphesis awhile back, but until the next release it won't see wide 
distribution.  Only after that is it work taking a look at dealing with 
it on the client side.

An example of the scoreboard I keep for the metaserver (just a simple 
json file of the data structure) looks like this (as you can see ... 
it's yours ;)
198.58.122.63={buildid=2524,clients=0,entities=3155,expiry=20150109T234412.671372,ip_int=1064975046,latency=113,port=33115,ruleset=deeds,server=tinyrpg,version=0.6.3,}

So in short, cyphesis and the metaserver already do what you need.  
Ember will need a little tweak to make use of it.  There is, as Erik has 
also suggested a push to change the way these type of comms are done, as 
in unifying the under the atlas protocol (I don't much care for it, 
however it is the underlying comms for all the WF stuff, so it makes 
sense to unify it).

I have to discuss with Erik, but with the direction he seems to be 
going, it might be better to have the MS as a web service that outputs 
atlas documents ... I'll have to discuss more with him on that, but this 
should be enough for you to get what you need.

Sean


On 2015-01-09 16:48, Marisa Giancarla wrote:
> Ok. I thought the metaserver also kept things like game name etc. if
> you look at the current meta you will see my TinyRPG entry. I saw the
> article about using a more appropriate format for the server listings
> so maybe i shouldn't put any effort into this change right now?
> 
> ----
> 
> LinkedIn: http://www.linkedin.com/in/marisagiancarla [2]
> 
> Opensim City: https://OpensimCity.org [3]
> 
> Opensim Radio: http://radio.opensimcity.org:8188 [4]
> Empire Directory: https://EmpireDirectory.net [5]
> Lugdunon City: https://LugdunonCity.org [6]
> IndieDB: http://www.indiedb.com/company/pocketfiction-pocketgames4me
> [7]
> 
> On Jan 9, 2015, at 1:42 PM, Erik Ogenvik <erik at ogenvik.org> wrote:
> 
>> The Meta server only keeps track of the addresses of the servers.
>> The client will then query the servers individually, and get the
>> pertinent information from them.
>> The relevant code for this is in Eris/MetaQuery for the client, and
>> ServerRouting::addToEntity for Cyphesis.
>> 
>> The plan is to move away from the Meta server though, as it's not
>> fitting for persistent worlds (it's an idea more suited for
>> non-persistent games). See
>> 
> http://mail.worldforge.org/pipermail/general/2014-December/008396.html
>> [1]
>> 
>> /Erik
>> 
>> 2015-01-09 21:44 GMT+01:00 Marisa Giancarla <fstltna at me.com>:
>> 
>> By commercial i was meaning a subscription based game as opposed to
>> a regular free game... Can you give me pointers on where i can start
>> with the url addition or can you add it?
>> 
>> Marisa
>> 
>> ----
>> 
>> LinkedIn: http://www.linkedin.com/in/marisagiancarla [2]
>> 
>> Opensim City: https://OpensimCity.org [3]
>> 
>> Opensim Radio: http://radio.opensimcity.org:8188 [4]
>> Empire Directory: https://EmpireDirectory.net [5]
>> Lugdunon City: https://LugdunonCity.org [6]
>> IndieDB: http://www.indiedb.com/company/pocketfiction-pocketgames4me
>> [7]
>> 
>> On Jan 9, 2015, at 12:32 PM, Erik Ogenvik <erik at ogenvik.org> wrote:
>> 
>> Adding a field for a website url seems sensible.
>> But you need to provide more information about why we need to add a
>> field for "commercial". And what does "commercial" mean?
>> 
>> /Erik
>> 
>> 2015-01-09 19:40 GMT+01:00 Marisa Giancarla <fstltna at me.com>:
>> 
>> Thanks. Looking at the source does ember need to be updated to show
>> the new fields in the metadata, or just the metadata server and
>> cyphesis?
>> 
>> Marisa
>> 
>> ----
>> 
>> LinkedIn: http://www.linkedin.com/in/marisagiancarla [2]
>> 
>> Opensim City: https://OpensimCity.org [3]
>> 
>> Opensim Radio: http://radio.opensimcity.org:8188 [4]
>> Empire Directory: https://EmpireDirectory.net [5]
>> Lugdunon City: https://LugdunonCity.org [6]
>> IndieDB: http://www.indiedb.com/company/pocketfiction-pocketgames4me
>> [7]
>> 
>> On Jan 9, 2015, at 9:45 AM, Taben Yaroslav
>> <yaroslav.taben at mail.utoronto.ca> wrote:
>> 
>> There is metaserver in the worldforge repo here:
>> https://github.com/worldforge [8]
>> Is that what you look for?
>> 
>> Yaroslav
>> 
>> On Jan 9, 2015, at 12:16 PM, Marisa Giancarla <fstltna at me.com>
>> wrote:
>> 
>> Im interested in adding two fields to the server metadata, a game
>> website url and a boolean that says if the server is commercial or
>> not. I will port my subscription code to worldforge but I'm not sure
>> if the metadata server is included in the github repo... Any ideas?
>> 
>> Marisa
>> 
>> ----
>> 
>> LinkedIn: http://www.linkedin.com/in/marisagiancarla [2]
>> 
>> Opensim City: https://OpensimCity.org [3]
>> 
>> Opensim Radio: http://radio.opensimcity.org:8188 [4]
>> Empire Directory: https://EmpireDirectory.net [5]
>> Lugdunon City: https://LugdunonCity.org [6]
>> IndieDB: http://www.indiedb.com/company/pocketfiction-pocketgames4me
>> [7]
>> _______________________________________________
>> General mailing list
>> General at mail.worldforge.org
>> http://mail.worldforge.org/lists/listinfo/general [9]
> 
>> _______________________________________________
>> General mailing list
>> General at mail.worldforge.org
>> http://mail.worldforge.org/lists/listinfo/general [9]
> 
> _______________________________________________
>  General mailing list
>  General at mail.worldforge.org
>  http://mail.worldforge.org/lists/listinfo/general [9]
> 
>> _______________________________________________
>> General mailing list
>> General at mail.worldforge.org
>> http://mail.worldforge.org/lists/listinfo/general [9]
> 
> _______________________________________________
>  General mailing list
>  General at mail.worldforge.org
>  http://mail.worldforge.org/lists/listinfo/general [9]
> 
>> _______________________________________________
>> General mailing list
>> General at mail.worldforge.org
>> http://mail.worldforge.org/lists/listinfo/general [9]
> 
> 
> Links:
> ------
> [1] 
> http://mail.worldforge.org/pipermail/general/2014-December/008396.html
> [2] http://www.linkedin.com/in/marisagiancarla
> [3] https://OpensimCity.org
> [4] http://radio.opensimcity.org:8188
> [5] https://EmpireDirectory.net
> [6] https://LugdunonCity.org
> [7] http://www.indiedb.com/company/pocketfiction-pocketgames4me
> [8] https://github.com/worldforge
> [9] http://mail.worldforge.org/lists/listinfo/general
> 
> _______________________________________________
> General mailing list
> General at mail.worldforge.org
> http://mail.worldforge.org/lists/listinfo/general


More information about the General mailing list