Re: Server object tutorials
What build of Lacewing are you using? The Server object is broken in build 18 alpha 3.
Re: Server object tutorials
17... I was waiting for a stable build of 18 before using that.
Re: Server object tutorials
OK, have you enabled interactive conditions for the server receiving a message to it?
Re: Server object tutorials
Not at home right now, but I'm positive I enabled them all just so I didn't have to worry about that.
edit: home now, yes all 8 conditions are set to passive
When the server sends a message to channel... what is that going to? I would assume all of the clients in that channel, right?
If a client sends a message to the server, does the server use the client's channel as the channel variable?
For example:
client sends number message to server on subchannel 0
server receives number message from client on subchannel 0
- send text message to channel on subchannel 0
Would that text message go to the channel the client is in.. or do I need to establish which channel to send it to? Since the condition was a message from client, I'm not sure if it's establishing the channel or not.
Re: Server object tutorials
Passive means that your events do nothing.
Re: Server object tutorials
why on earth would you ever want them to do nothing?
Re: Server object tutorials
If you want to set them back to default behavior? There are reasons. But you need to set yours to Active/enabled and not Passive/disabled.
Re: Server object tutorials
Hmmm but what are they doing in passive? What is default behavior?
Re: Server object tutorials
Quote:
Originally Posted by Konidias
Hmmm but what are they doing in passive?
Quote:
Originally Posted by Konidias
edit: home now, yes all 8 conditions are set to passive
I do not understand your question...
Quote:
Originally Posted by Konidias
What is default behavior?
Passive. That is why you need to set them to active/enabled so that they will trigger your conditions for the server object. If they are passive/disabled, then it means the server object will treat those things like the default lacewing server would. Enabling them as active means that they will rigger those conditions and you can alter the behavior, which is what you want to do.
Re: Server object tutorials
Sorry, my question is... When the conditions are passive, what is their default behavior? What is the difference between "on message to channel" as passive and "on message to channel" as interactive?
In what type of situation would you want it to be passive? It can't really do anything without being active/enabled... can it?
Re: Server object tutorials
When the condition is passive it doesn't fire the condition. If you're not interested in that particular condition, it's FAR more efficient not to enable it.
Re: Server object tutorials
Quote:
Originally Posted by Konidias
It can't really do anything without being active/enabled... can it?
Quote:
Originally Posted by LB
If they are passive/disabled, then it means the server object will treat those things like the default lacewing server would.
Re: Server object tutorials
But for a lot of games, wouldn't you need pretty much all of the conditions at some point?
Re: Server object tutorials
Maybe, that's for you to decide.
Re: Server object tutorials
I'm pretty sure one of us has it wrong... My understanding was, if the condiiton was passive, Lacewing would trigger the action but not allow you to intercept, but interactive would intercept and so allow you to block, for example, a name change. Not having interactive or passive would not run the condition at all, making the server faster.
Re: Server object tutorials
Interactive triggers the conditions and allows you to change the default behavior. Passive does not trigger the conditions or allow you to change the default behavior. By default, everything is set to passive. You can test for yourself :)
Re: Server object tutorials
Quote:
Originally Posted by Konidias
Sorry, my question is... When the conditions are passive, what is their default behavior? What is the difference between "on message to channel" as passive and "on message to channel" as interactive?
In what type of situation would you want it to be passive? It can't really do anything without being active/enabled... can it?
Basically, "Passive" means that it does it the way a public server might. "Interactive" allows you to interact (or intercept as SortaCore used it) with the information being sent or received to the server, but just having that as interactive makes the server less efficient. That's why the option is there in the first place. If Jamie was to make the default "Interactive" then there wouldn't be any options for "Passive", thus getting rid of the confusion, but there would be a quite significant lag. Some people prefer to have fast servers (imagine that) and only take into account the things they really need to interact with. So he added "Passive" for a basic server, "Interactive" if you want to do stuff.
Boy can I ramble...
Re: Server object tutorials
Quote:
Originally Posted by SortaCore
I'm pretty sure one of us has it wrong... My understanding was, if the condiiton was passive, Lacewing would trigger the action but not allow you to intercept, but interactive would intercept and so allow you to block, for example, a name change. Not having interactive or passive would not run the condition at all, making the server faster.
This is correct. :)
Build 18 doesn't have the interactive/passive stuff at all.
Re: Server object tutorials
Jamie, he's on build 17...
Re: Server object tutorials
I know he is. SortaCore was correct for build 17, and in build 18 the interactive/passive stuff is removed altogether.
Re: Server object tutorials
Oh, OK, I guess I misunderstood all of this. Sorry.
Re: Server object tutorials
Okay, a few questions (isn't it always the case when you get answers? =p)
1. What sort of situations would arise where you'd want to intercept and block these conditions? Like what would be crucial enough to want to sacrifice speed? For example, what would you do with "on channel join request" that would require it to be interactive?
2. If the interactive/passive stuff is removed altogether... what is taking its place? Is every condition passive now? or interactive? What does that mean for future builds?
3. Right now I'm using build 17... because I tend to try to use the most stable builds... Should I be using 18 anyway? I mean eventually I'll have to use it, but I'm wondering this because I'm just starting out with Lacewing, and I don't want to run into broken/experimental stuff just yet and not even realize it's broken/expiremental. I want to be able to learn from the most stable build so that I don't get any more confused than I already am. So... am I just being too safe or should I just go with build 18?
Also, thanks very much for the help and thanks for this extension Jamie! I appreciate it.
Re: Server object tutorials
3. Stay with build 17. 18 is alpha. You will always run into broken things.
Marv