Planned features per release, with pointers to design docs where they exist. Work status
lives on GitHub (krpc/krpc issues and PRs); this is the
roadmap, not a status index.
| Feature | Design doc |
|---|---|
| Server-side functions (incl. arbitrary server-side code) | protocol/server-side-functions.md, protocol/server-side-arbitrary-expressions.md |
Extension methods (adding RPCs to existing KRPCClass etc.) |
protocol/extension-members.md |
| Structure / named-tuple types | protocol/struct-types.md |
| Protocol fixes with limited blast radius (nullable parameters/returns) | protocol/nullable-values.md |
| Object lifetime and object-cache improvements | #771 / PR #894 |
| Service versioning | services/service-versioning.md |
| Debug service | #955 |
| Editor part API | PR #788 |
A single breaking wire format carrying the components below; they land together because they share the format. Overview: protocol/single-connection.md, meta-issue #906 (protocol/improvements.md).
| Feature | Design doc |
|---|---|
| Single bidirectional connection | protocol/single-connection.md |
| Message ids (async messages) | protocol/request-ids.md |
| Client → server streams | protocol/reverse-streams.md |
| Batching / transactions | protocol/reverse-streams.md (#903) |
| Tick control — guaranteed one RPC/batch per physics update (#251) | — |
| Stream freezing removal | protocol/stream-freezing-removal.md |
| Stream refcounting / invalidation | protocol/stream-refcounting.md, protocol/stream-invalidation.md |
| Feature | Notes |
|---|---|
| Inheritance support | Just a nicety; skipping keeps the OOP model simple — clients translate their OOP to procedures. |
| Constructor calls | Objects are wrappers of game objects, GC'd when unreferenced by the game; constructors add a new refcounted object kind. |
| Autopilot aero | Maybe ignore, defer to MechJeb integration. |
| Client thread safety | Pointless before the 1.0 rewrite — the changes would be lost. |
| SSL / encryption | Likely out of scope; use a proxy / tunnel. |