I agree with Elation there, Flame Sage. Just because you can't see the other staff working, does not mean they aren't working. You don't have to publicly announce everything.
Don't forget the minimizablitiy* to the tray.

Other than that. It looks amazing. Kudos.

_ryan
This is all very cool, and it will be quite helpful to not necessarily have to code in your own ban functionality in every game.


I think the BYOND Staff needs to be much more in contact, and working towards 4.0, it seems most of the staff isn't doing much right now other than you Mike H, and Lummox.

First of all, the staff isn't a whole lot larger than that. Tom is doing important work that isn't visible yet, Zilal has recently been putting in lots of time on guild stuff and some other things, and my time was going into getting the guild stuff off the ground a couple of weeks ago.

We all go through cycles (I've had a few days of no real productivity, but hopefully will get more done this weekend), but on the whole for the last several months the entire staff has been getting more done than at any time in recent memory.

And as Tom has posted, this year is going to be very productive for BYOND.
To answer some questions here:

Flame Sage:
So... When's Linux coming? :/


The capabilities to use host bans will exist on the backend, and so will reading friends lists, but so far there isn't any new option in the Linux client to let you use friends lists for closed hosting. It wouldn't be terribly hard to throw in as a command-line option, but it's unlikely that I'll be the one doing it.

The Naked Ninja:
Very nice, and either you're making really good money on BYOND or you had a pretty lousy job, but I'm glad this is getting somewhere!


More of the latter than the former.

Tiberath:
So this means effectively a game host can ban a game owner from the game against the owners will? Or will there be a way to override it just as there is pager bans?


Hosts can ban the game's creator. Game creators still have control over their hub entry, and if hosts only ever serve at their pleasure, then they can always yank away the hub_password and outmode whatever version the rogue host is running. For all other cases, hosts deserve the right to ban whoever they want. There is no override as in pager bans; it's doable, but counterproductive. Also there is no access to this config set via GetConfig() and SetConfig().

King Gunnerblast:
So the sticky ball is for allowing only a certain set of IP's into your game?


A sticky ban will collect keys and IP addresses and will keep doing so as new ones are found. It's not about allowing in only certain users--the friends lists are for that--but for banning a user who likes to try to sneak around the ban.

Elation:
Will DS be stripped of it's hosting ability? Games like Murder Mansion require to be hosted via Dream Seeker, because the host needs to click a button (a key I think) for the game to start. If you can only host in dream daemon, that would no longer be possible to play Murder Mansion without updates to the game itself.


Most games actually function just fine in DD. If Murder Mansion requires the host to click a button, then it's apparently calling world.OpenPort(). That still works in DD. Incursion is an exception I know; I made it go out of its way not to be hosted in DD unless it's loaded a special way, but as we intend to add host awareness, I can take that feature out. I doubt hosting in DS will go away immediately, anyway.

Danial.Beta (et al):
Can we please have a minimize to icon tray feature?


Dream Daemon already does this. If you close it it only minimizes to the tray; you have to choose Exit from the menu to close it down completely.

Android Data:
With this, can this be ported to Linux? A GUI for the Linux DreamDaemon would be very very nice. I don't figure it should take that much time, since it shouldn't be using anything not supported by Linux.


Well, nothing but the entire interface. DD would have to be rewritten from scratch in Linux to work as a graphical application.

Hiead:
Will the graphics be editable? I have quite a different emoticon in mind for my "Friends." =D


Nope, those are hard-coded. I thought of allowing a DMI file to be loaded, but that just gets massively complex. Too much effort for too little result.

Speaking of the Friends and Ban lists, those are game-dependent, right? The settings lose a lot of value if they are universal in DD to all hosted games.

They're not game-dependent, but I don't see them as losing much value. If you want to just kick someone out of a certain game, you can use a session-based ban for that. Most of the time it's not useful to ban someone from one game but not another.

As for sticky bans, how does that work? Does it request associations from BYOND itself? That doesn't seem very likely to me, lest BYOND be spammed by a ton of games every time someone logs in. Perhaps DD keeps its own running universal log of key associations?

There isn't a running log as such if a ban isn't active for that person. It does not query the BYOND hub for that info.

Flame Sage again:
Also; could we possibly have a wav file play when people enter / leave our server?


Actually this did occur to me at one point and I forgot about it again. I may be able to throw it in as a feature.

How does the 'Send Message' function work (under players), does it output under the world.log?

It sends text directly to a player that looks like this:

Message from host:
Do you want fries with that?

You can use HTML in your messages if you want. Multiple selection is allowed here as well so you can send the same thing to more than one person.

ALSO; will there be the ability to log the DreamDaemon's world log automaticly? Are we able to output HTML to DreamDaemon's console window?

Maybe and no. The latter is probably doable since the same control used by DS is accessible, but because of the limited window space there's not much point. Logging the output is something I hadn't considered, but I could look into setting it up.

Will BYOND 4.0 finally fix all of the "failed to open Dream Seeker" bugs everyone has been having?

We're hoping to finally quash that one, yes.

Will BYOND 4.0 stop using richedit20, so that it could be finally ran with WINE? Or would BYOND break even MORE with WINE.

To my knowledge BYOND never started using richedit20, and is still only using 1.0 (which uses 3.0 in XP, that in turn emulates 1.0). But it stands to reason that WINE issues are unlikely to improve unless WINE itself improves.
Lummox: richedit20 is the dll used for rich controls. There is also richedit32(I think it is the XP version). Either way, rich seems to be the biggest problem with support for Linux.
Nice work Lummox! Also will IsBanned() be taken out now?
Please don't make hosting DD-only, because I can't join my own games.
Squeegy

You just type in the port or byond://127.0.0.1:port
Tiberath wrote:
So this means effectively a game host can ban a game owner from the game against the owners will? Or will there be a way to override it just as there is pager bans?

I strongly call into question the whole idea of "game owner" in this context. If the host is hosting the game, the host owns the binary, and thus by all rights and accounts the host owns that session of the game.

If you don't trust hosts, don't distribute your binaries to the community at large. It's that simple.
I disagree with the decision. And the arguments for both sides are, as they were on the forums when the same topic came up, equally matched.

You can say, "It's their system" and I can say "They opt to host, I'm not forcing them, I spent hours a hours on a game to be disallowed to play it due to a disgruntled host?" etc.

I'm still for saying, every aspect of the game should be able to be controlled code wise.
Lummox said:
If Murder Mansion requires the host to click a button, then it's apparently calling world.OpenPort().

I think you misunderstand me! Players can join the game just fine- but you can only start, say, a round of the game, if the host clicks on a special key or hud button in-game (and it can only be the host, running in Dream Seeker, so they can walk about in the game).

Anyway I suppose MM will just have to be updated. 'bout time anyway. :P



Oh, and as for the host-owner power debate? Jtgibson wins, because Tiberath is one of those wiznet weirdos.
Will. The host should still get the command if the game is programmed correctly. As long as the user connects to the port instead of the HUB address or IP:port combo. I had issues with Seika until I realized that you can just connect by byond://port

_ryno
Tiberath wrote:
I disagree with the decision. And the arguments for both sides are, as they were on the forums when the same topic came up, equally matched.

You can say, "It's their system" and I can say "They opt to host, I'm not forcing them, I spent hours a hours on a game to be disallowed to play it due to a disgruntled host?" etc.

I'm still for saying, every aspect of the game should be able to be controlled code wise.

Well, let's put it into other words. Say a BYOND program was actually an aggressive military program in use by the NSA. The program was developed by an independent upstart who had to sign a Non-Disclosure Agreement.

The NSA starts running their software and decides that the original developer of the software shouldn't be allowed to access their software. The developer complains until they're blue in the face.


Where's the logic?
The "it's their system" argument wins every time, by necessity. A programmer can create malware, which is why BYOND has security modes like trusted, safe, and ultrasafe. Indeed we've seen people create programs just for phishing purposes. You can say it's insulting to be banned from your own game, but there are only two hosting paradigms:

1) The creator holds the reins, and hosts work for them. Because the number of servers is limited and the creator controls the central access points, they can cut off a rogue host by updating the game and changing the hub_password.

2) Anyone can host the game. In this case, the host is at the top of the food chain. If the creator has an issue with that, they should've gone with option 1. Anyone unwilling to face the prospect of a host they don't like shouldn't choose this path. Me, I'd rather popularize my games by making them widely hostable.

As it is, hosts already have a banning mechanism they can use against the creator; they can get the creator's IP address, and cut off its access via a firewall.
May we (game developers) please have the ability to disable messages from the host? This, especially with the addition of html, can greatly disrupt the internal structure of a game's administration (admin annoucements, moderator actions, Game Master... stuff). Global messages, outside whatever system the game may have in place for this purpose, can greatly disrupt a game's otherwise professional presentation.



The below is a rant which I hadn't intended on going on. Read at your own risk:

Managing users who are troublesome to the host's system is the host's prerogative, whereas control over the distribution of a game is the right of the game's owner. To allow anyone, including the game's owner, to enter a host's system against their will is stripping the rights of the host, just as allowing anyone to host a game against the will of the game's owner strips the owner's rights. Sure, a host could just decide to stop hosting; if that is the only option left, then by the same token a game maker, who wants to restrict those who play the game, should simply not make the game. Both options are equally absurd. Game makers already have the ability to limit who can download or host their game, let's not give them the ability to harrass the host.
I'm not sure I follow what you mean about game makers harassing the host, though. The message would come from the host, not the game's creator.

Turning off host messages could be problematic, since it would require adding more backend functionality to deal with that in DM. Overall I'm not too worried about presentation disruptions since this feature would only really be needed for major announcements or other special cases. If the game itself has a good means of sending announcements, then hosts will tend to prefer using that anyway.
If I may recommend I have seen that you guys are trying to work on a ban system an yes we call all say it wouldnt be fool proof however. I can recommend taking it one more step up from what you have an allow byond to get a users mac address seeing as many people dont under or know how to change this... Reguardless if the user uses a proxy or changes there ip bounced etc. If you allowed seeker to pull a users local mac address you could take that banning a step more. An it be rather simple to make the ban more or less effective if done so. All you would need is to allow seeker to pull a mac address an based on a dns or something it could also help narrow it down.

The game im currently apart of an staff at on byond were talking about possible new ways to code the ban system. So far what we have is a Key, Ip, Ip range ban system an it checks all the values with current logs to manage a full ban if you will we did talk about coding it so we could ban a mac address however seeker is to limited in that field to go at it we had a few talks of an outside program reading the mac an sending it to seeker but that back fired...

Anyway It be nice if byond supported a local mac address look up it help confirm who someone is even if they changed there ip an key because in most cases noobs dont know wth a mac address is much less how to find it or change it. :) Networking 101 got to love it.
A MAC address is problematic for two reasons. First, a good proxy could probably override it--in fact any good home router can override it. Second, it's actually much much harder to access. Still, it probably could be helpful; it's just not in the cards at the moment. I won't rule out adding it later.
Lummox JR wrote:
A MAC address is problematic for two reasons. First, a good proxy could probably override it--in fact any good home router can override it. Second, it's actually much much harder to access. Still, it probably could be helpful; it's just not in the cards at the moment. I won't rule out adding it later.

Yah i can understand that I hope its added some time soon because in most cases people dont even know what it is. However another reason why I am hoping to see it is because the things it will open up to some games. For example say you have a game that you dont want to allow multi keying but you allow people like family with a router connection from the same IP an what not. You really have no way to check if they are using a router an if its the same computer or just some person with a router as they claim. Also I was talking more or less about the network cards mac not the router itself. Last I looked routers an network cards had two different mac address an yes some routers allow you to use your computers local mac as the routers however. The router an the local mac address from the network card are still two stand alone macs. I mean sure you can change them an you can have both of them match but if you had two computers hooked up to a router its not likely you will all have the same mac. So more or less its not just ban related for the reason I hope to see some kind of call for mac addresses later on in byond. :) Just recommending ideas but thank you for the feed back its very much appreciated and I do understand what you are getting at. :)
Some more suggestions:

* The ability to load/save the ban and friend lists (possibly even ALL settings) so we can make personalized settings on a per-game basis.

* A seperate color/window for world.log outputs and runtime errors, for clarification.

* (see below for possible usage) I'd like it if, when you host through Dream Daemon, world.key is set to the BYOND Key currently hosting the game. (or world.host or something; since world.key and world.password are being phased out I thought you could use world.key).

Also, for the rest of you: the developer can already prevent certain people from hosting. You need some webspace. Then you upload a .txt file containing a list of IP addresses. You can then ban by IP if you code it in properly.
Page: 1 2 3