Godot-rc hosts a websocket server inside godot editor, clients can send commands and request information from an editor over a socket, made in first place for integrating scenes node manipulations and node property editing
Please refrain from using godot-rc in production.
This project is in early stages of development, there are a lot of missing safety checks and hidden bugs. If you anyway want to use it then use a version control system, commit early, commit often.
Tested only on Godot 4.4.1, should work with Godot 4+
- Download this repo
- Move
addons/godot-rctoyour_projects/addons/godot-rc - Enable this plugin in
Project -> Project Settings -> Plugins
emacs - godot-rc-emacs
Clients communicate with godot-rc by sending JSON objects.
Each client request should have this structure:
methodstring, which tells server which function to executeparamsnumber, string or dictionary, arguments passed tomethodwhen function is executedidnumber, an optional parameter which used for differentiating responses
While server sends responses and notifications Here is response structure:
resulta return value of an executed functionidnumber, responseidis equal toidof a request which led to this response
Notifications are messages sent by server and not triggered by client's requests (e.g. scene-changed notification is sent when something in scene changes) Notification structure is similar to a client request's:
methodstring, notification identifierparamsadditional information about event which triggered this notification
TODO, read plugin.gd