Yes, in general any trigger that uses a key, mouse, or button detection will have lag problems. As do advanced math function. Neither are very noticeable by themselves (There is a map out using key detection for WASD movement with two players that claims to be lagless, I haven't tested it yet though.), but when combined make alot of lag, which seems to scale with the number of active players. I have a few ideas drafted up from different maps and some outside research to help make these functions more efficient, but I haven't had a chance to implement them yet.
But it's not limited to 3'rd person, first person will as well, or anything with key detection.
Hotkeys with dummy abilities yes. The only problem being that you can't detect key ups, as there is no ability (to my knowledge) that is activated only while clicked.
Hotkeys with dummy abilities yes. The only problem being that you can't detect key ups, as there is no ability (to my knowledge) that is activated only while clicked.
What's a dummy ability? And what is a "key up"? Is there any way to accelerate the trigger checking process (like hyper trigs in SC1)?
WIth key detection, you must differentiate between a "key down" and a "key up", a key down being when the key is pressed, and a key up being when a key is released.
The alternative is hotkey detection. You rig up a button with the key you want to detect as it's hotkey, and give it to the unit, and create a dummy ability (an ability that does nothing, save for an effect to be detected) that is cast when it is used. This way, if they press that button (say WASD), each one will trigger it's own dummy ability, which you detect in the trigger in the stead of "key down". However, there is no way to detect a "key up" in this scenario, that we know of.
As far as hyper triggers, I don't think anything has been found, but that wouldn't solve the problem, IIRC. The lag is due to network traffic (it is generated any time any player presses any key, regardless if it is a hotkey or not), so the more players = more lag. For one player, it's not noticable, but with multiple, it starts to scale up.
I take it that each key press in each instance is being sent, creating a large amount of data being sent per player per key stroke. Is there any way to have the client side decipher the key stroke and only send the data of the unit being moved? (Instead of each comp sending key press data to every other computer and having those computers translate the data into the unit being moved).
I take it that each key press in each instance is being sent, creating a large amount of data being sent per player per key stroke. Is there any way to have the client side decipher the key stroke and only send the data of the unit being moved? (Instead of each comp sending key press data to every other computer and having those computers translate the data into the unit being moved).
Yes, and not that I know of respectively. As far as I know network traffic is always sent, and without a new function written it'd be impossible to circumvent that. If we could see exactly what custom script they coded in the library, we might be able to work with that, but considering the editor has only been out for a few months, I think that's going to be a bit far away.
If anyone has any requested tutorials they want done, make sure to add them under the requested tutorials section. I want to write a few more before I go back to university.
I decided to actually "unshy" myself and talk in the video. Appreciate my accent.
P.S. This is really just a show-off video supposed to improve the wiki article about the system itself (to show how it renders). At the same time, it can be used to advertise the wiki itself since I am sending people interested in the system directly to our wiki to see how it works exactly.
Ultraviolet shouted: How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow