How exactly is user input handled in the web client? Will things like macros, commands, and the mouse procs be completely emulated with JavaScript somehow? Will the input implementation be part of what is exposed to developers, and if so, on what level?

Also, if the client side of user input is handled in JavaScript, could you then assume that it would result in better performance or responsiveness on the web client?

User input has me worried, because it sounds like I might have to rewrite lots of code that was built around a system that might soon be considered obsolete.
In response to Fugsnarf
You get a gold star!
If my memory serves me right, I actually remember some old libraries that used Javascript for handling keyboard input. Ever seen KeyState by Loduwijk? This was one of the libraries that handled input (that was fluid) years before BYOND 4.0 was ever released. The only drawback with it I believe was it could sometimes take away focus from the main window.
In response to Bandock
Bandock wrote:
If my memory serves me right, I actually remember some old libraries that used Javascript for handling keyboard input. Ever seen KeyState by Loduwijk? This was one of the libraries that handled input (that was fluid) years before BYOND 4.0 was ever released. The only drawback with it I believe was it could sometimes take away focus from the main window.

Thanks for pointing out a library. The name KeyState sounds strangely familiar to me, but I don't remember if I ever tested it out or not. I will have to investigate that. It could be helpful.
In response to Multiverse7
Multiverse7 wrote:
How exactly is user input handled in the web client? Will things like macros, commands, and the mouse procs be completely emulated with JavaScript somehow? Will the input implementation be part of what is exposed to developers, and if so, on what level?

I can answer this most concisely by listing a few of the methods each control will have available (bearing in mind this list is still in flux):

input(command): Send a command to the server
expand(command): Send a command to the server for expansion, and handle the result in output()
topic(topic): Send something to client/Topic()
mouse(params,event): Pass a mouse event along to the server

I need to update my docs to include some of the newer macro-related methods I added, but suffice it to say macros are well handled also. You will indeed have a lot of flexibility in how to handle these things, and can design sophisticated controls of your own.

Also, if the client side of user input is handled in JavaScript, could you then assume that it would result in better performance or responsiveness on the web client?

I'm not sure what you mean exactly. Command parsing is all done server-side in this model (unlike how DS does it). If you mean in terms of key repeats and whatnot, that's already handled in DS too and wouldn't be any different in this model as far.

User input has me worried, because it sounds like I might have to rewrite lots of code that was built around a system that might soon be considered obsolete.

The current setup works with verbs, legacy games that use macro mode (like Birdland), old .dms macros, .dmf macros, and macros created at runtime. I've also tested this against a game that uses Forum_Account's keyboard library. The input setup is pretty solid, so I don't think you'll have to worry about changing anything on that score.
In response to Lummox JR
Thanks for the info, Lummox. I'm glad that our current commands will be compatible with the web client. However, I still can't be sure that it wouldn't be beneficial to rewrite an input system with the web client in mind. I may want to avoid the built-in input system entirely, and just talk to the client and server individually, but that seems to be beyond the scope of the web client itself. The client and server probably overlap a lot, much like they do in the current Dream Seeker system. It might be best for me to just peel away that onion, and do things my own way.

I really won't understand much about the system until it has been released, so I will just try to be patient and quit asking about it until then.
If you are planning on doing macro-style commands, the built-in system (which relays the macros defined on the server to the client) is pretty efficient and clean, and requires no changes to your code. If you want to query the keystate, you could build your own javascript. The beauty of this client is that you have most of the functionality of the existing system (almost everything outside of some dmf windows is ported), while also having the flexibility of custom js without having to resort to the old IE browser hack.

For the most part, you shouldn't have to do much to port you game over. You'll probably want to rewrite the GUI in the new html syntax eventually, but most games should work with dmf out of the box, or at least that is the goal by the end of beta.

Unfortunately we still need to do more playtesting and fixes before we can roll this out, so that's why things have been delayed a bit.
In response to Tom
Tom wrote:
Unfortunately we still need to do more playtesting and fixes before we can roll this out, so that's why things have been delayed a bit.

I don't want to sound ungrateful, but how long is "a bit"? Are we talking "some time before the end of this month" or shorter / longer? I've been waiting for this development for a while and it was originally going to be released 10 days ago, which seems a long time for a couple of bug fixes.
you cant rush perfection broski
We're very close to getting this into beta. I'm working on some of the important login stuff right now.
Awesome. Looking forward to the interface goodies that come with it...
What?... people still quote or respond with statements like that?
I dunno if its meant to be some sort of trend or just a misconception that some frequenters of the forums have decided, all too readily, to buy into -even with solid evidence already nullifying such assertions- but as for me i'd rather such statements were either kept to themselves or at least personalised by the poster, so as not to in anyway impress upon readers -especially new guys- certain narrow/limited/negative ideas about this whole project.

Instead each of us should be left to fully form our own opinions, estimations and valuations of BYOND, after properly making honest and smart attempts to create something we'd like or enjoy working on, knowing realistically that existing tools and capabilities can be relied on to help make them a reality*.

Anyway as you might see i've ended up going for quite a bit i suppose, but don't take this as an attack at you Cloud, this was more of an opposition against the stance you'd lent your banner to, so to speak, and perhaps because it stuck out as an odd -and misleading- angle to come from, simply to address lnfnn's slight impatience.

If anything, ET's response was pretty apt tbh.. lol.


* Of course though, this is only if we're not all talk, and actually do care about trying to make something cool happen with what we've got and are sure to have, and really just making the most of it (i.e. instead of the sometimes unnecessary, superficial or irrelevant technical debates, comparisons with other products, rants/complaints and so on that have too often spawned in the past, people put effort into honestly creating fun and doable games, even 'simple' ones and just seeing where that takes them.

In this project called BYOND that the majority of us seem continually drawn to, even those with supposed disappointment or lack of belief in it to be anything worthwhile, why not stop perpetuating negativity and e.t.c. so often, and try one of the above... and if not, well you can at least leave others the freedom to try as much and as hard as they'd like, to make their own 'net dream', or simply profitable game become a reality.
alright... i've tried to edit/go over this enough now i think... hopefully its all pretty clear to read and make sense of.
Oh and before i forget >.<, also looking forward to what you and Tom have for us with the new client, i imagine that at least experimenting with the whole web thing should be fun.

The work especially in the last year or so is much appreciated guys, keep on keeping on! :D
Cloud Magic wrote:
Ok, how much did you pay to use BYOND and who did you pay ?

Please just shut up. Your reaction only gives me second thoughts about using BYOND to make a game and doesn't answer my question.

I'm serious enough to be hiring help to make a game, and I'm considering to use BYOND as it would speed up development.

But I don't see that happening if there's not even a beta version I can play with.

An announcement was made that the HTML5 client would be done at or near the 9th of this month.

After well over a week after that estimate I inquired about the current status, taking care to explicitly mention I'm not trying to sound ungrateful but just want a rough estimate.

The response?

Cloud Magic wrote:
BYOND is not a profitable endeavor. Chill.

1) The question wasn't addressed to you, yet you still replied. Next time, don't bother. Nobody wants to hear what you've got to say.

2) My question was not "are you done yet?" but "oh, you missed the original deadline, is this still going on & do you have a new deadline, because there haven't been any responses to this thread for a week?".

3) For that matter why should I pay and help make BYOND profitable if its developers won't even keep its users informed about their release schedule?

Though you are right on the money that I'd like to see this HTML5 client yesterday. I'd like to build a HTML5 game, and I'd like to see if that's going to be feasible with BYOND before investing too much time into it.

And yes, I'm aware that there is an existing skin system with dmf files, but I don't want to use a legacy method from the start of the project, especially as this new client is supposedly near completion.
In response to Lummox JR
Lummox JR wrote:
We're very close to getting this into beta. I'm working on some of the important login stuff right now.

I'll assume this means "a week or two"? I'm excited to try out this HTML5 client. It could allow for some really quick development of HTML5 games!
It means it'll be ready when it's ready. Holding out for new features is something Tom has expressed his distaste for in the past and it should be considered in this case as well, you shouldn't be developing waiting for something that always has the potential of being delayed or not happening at all, people make that mistake quite often.

If BYOND can't do what you need as it stands you should be considering other options, and not holding out for planned features.
In response to Nadrew
Nadrew wrote:
It means it'll be ready when it's ready.

Well the problem is Infnn doesn't have all year. Can't you all see he's trying to make a game here? He needs the HTML5 up and running pronto, capiche? You guys said the 9th, it's past the 9th and still no HTML5. Infnn isn't paying you guys to sit on your butts and do nothing. In fact he's probably not even paying you guys at all! SO HURRY UP! WORK AT THE PACE HE'S REQUIRING OR HE'LL GO USE ANOTHER TOOL!
Oh i see now, it seems that i misunderstood what you were apparently saying in the first instance, that it's not like Tom and Lummox are profiting from byond as an 'endeavour', as in 'hey, you know you aren't paying them for the software and products in general right? so people should maybe chill out a bit and not go bugging them about it so much' or something like that right?

Well 'creative license' aside i would guess that is along the lines of what you meant, in which case yeah my mistake xD. I'd read it as you saying using BYOND wasn't a profitable endeavour.. or something like that, so apologies for addressing you about that unnecessarily i guess o.o.

Hmm. Now just wondering if i should still leave what i wrote up, i did take some time with it as well.. *sigh*. I do think theres a point to be made with that kind of a post though, so i dunno, maybe i just leave it to any moderator that might see it to decide? or should i just take it down?
:o did you really? like completely no further access to any files of any version of the game up till now? if so.. *whistles* that really would be some bad timing were you not to be able to get it all html-ized.thats right

Out of curiousity, if so how did that end up happening?
Yut Put wrote:
Also, question: I've lost the source to Footrace(but the dmb/rsc of the most recent version still exist). Will I still be able to have it played in html5, or do I need to compile an html5 version for that to happen?

You can host old games. Of course, you won't be able to take advantage of the new interface setup since that has to be coded in.

As far as the Infnn's request: Nadrew said it best. One reason we generally don't make many announcements is that they set up anticipation and, with this codebase being very complex, I don't like to make firm deadlines (and I didn't in the OP-- I just said we were hoping to get it out soon). We want this out as much as you do, but that won't happen until it is working to our satisfaction, because buggy software just makes things harder on everyone. That said, it's close.

There is absolutely no reason that someone considering BYOND can't start right now, even if that just means prototyping the design (which is probably the most important thing, long term). Whether you want to use BYOND or not is much more dependent on existing features than these new ones, because the bulk of the work is through the server. The web client isn't vaporware and will be out soon, and we hope it is to everyone's liking, but fundamentally what will make or break your game is the server design and whatever BYOND limitations come with it.
Page: 1 2 3 4 5 6 7 8