LoTROInterface

LoTROInterface (https://www.lotrointerface.com/forums/index.php)
-   General Authoring Discussion (D) (https://www.lotrointerface.com/forums/forumdisplay.php?f=45)
-   -   Broadcasting to plugins on other Clients (https://www.lotrointerface.com/forums/showthread.php?t=3762)

Garan 07-27-2019 08:06 PM

Quote:

Originally Posted by Agollas (Post 12340)
So characters that have been renamed have brackets around them for now. But could change things, so that they change name again once they realise they're a duplicate.

One idea I did have was if there was a way to overwrite the/tell command with a custom one, but I don't know if that's possible?

Nope. While you can create shorthand for the built in commands, mostly to avoid repetitive typing, you can't actually replace them in any meaningful way. By shorthand I mean if you wanted "/tsb" to be shorthand for "/tell somebody" you could do that, but it would still be resolved to the underlying tell command before executing. That's actually how people embed things like location coordinates or current target name in quickslot tells to do things like callouts in the 'Moors. But it still resolves to the actual command, it just saves you some typing.

Agollas 08-02-2019 11:49 AM

Quote:

Originally Posted by Garan (Post 12331)
I suspended development of the game system because it was far too easy for players to cheat. I toyed with a number of solutions to the cheating issue but none of them were satisfactory so I scrapped it but the user chat subsystem was a sound idea for cross client plugin communication.

With a plugin I'm working on, I may have found a solution to the cheating problem, that i just wanted to run by you, to see if you think it would work:

What if you enclosed instructions/data inside the <Select:IID:....> tags, with a randomly chosen user ID? That way it would stop people from cheating, unless they wrote their own plugin to send that data?

Thanks for your time again :)

Garan 08-02-2019 12:38 PM

Quote:

Originally Posted by Agollas (Post 12346)
With a plugin I'm working on, I may have found a solution to the cheating problem, that i just wanted to run by you, to see if you think it would work:

What if you enclosed instructions/data inside the <Select:IID:....> tags, with a randomly chosen user ID? That way it would stop people from cheating, unless they wrote their own plugin to send that data?

Thanks for your time again :)


Unfortunately, the "unless they wrote their own plugin" is the problem. Writing a basic Lua plugin is something anybody with even basic high school computer science knowledge can easily do. Heck, my 12 year old daughter is capable of far more complex programming. More sophisticated coding does exist but cheating would not require any sophistication. It is far too easy to display the raw chat. Additionally, it is far too easy to simply modify their own copy of the plugin - there's no way for the plugin to guarantee that the client is the unmodified client and for a card game that makes it just far too easy to cheat.

The best solution I came up with was for the dealer to control the game and broadcast only those cards that should be shown 'face up' and to send all other info via private message. It would work fairly well as long as the dealer wasn't cheating since if any of the other clients claimed to have a card that the dealer knew it hadn't dealt they could be called out and booted from the game. Unfortunately the handshaking of the private tells got excessive and just wasn't worth the hassle. I've occasionally looked at the interface to see if there was a way to streamline the communication but it always winds up being ugly and I always have far more important things on the ToDo list so it gets dropped for another year.

Agollas 08-02-2019 01:57 PM

Thanks for that.

That all makes a lot of sense, I'm thinking of working on a tag style game, that can be played anywhere instead of just the ruins in bree. I guess it would be self policing enough, that I would just need to make it harder to do rather than impossible, so I suppose if anyone wants to cheat enough to edit the code, good on them, and they will get identified as cheating anyway.


All times are GMT -5. The time now is 12:27 PM.

vBulletin® - Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
© MMOUI