kRPC: Control the game using C#, C++, Java, Lua, Python...

kRPC: Control the game using C#, C++, Java, Lua, Python...

7.8k Downloads

Open up SpaceCenter API to be used in other game scenes

djungelorm opened this issue ยท 0 comments

commented

Much of the functionality in the SpaceCenter service should be available from other game scenes.
This feature has been requested in several issues: #470 #434 #430

The GameScene parameter for a service needs to be more granular, and applicable to individual RPCs. An RPC attribute (KRPCProperty, KRPCMethod etc.) should have a GameScene parameter to specify which game scene the RPC is available in. If this is not given, it should default to the game scene of the enclosing KRPCClass, or the enclosing KRPCService.

GameScene should be specifiable as sets of allowed scenes. For example, you should be able to specify that something is available in GameScene.Editor and GameScene.Flight but not other scenes. Also we should have GameScene.All as a convenience, and have that as the default unless otherwise specified.

All the client documentation should be updated to specify when things are accessible. Services, classes and RPCs should be annotated with which game scene they are available in (or should not be annotated if they inherit from the enclosing service or class).