Skip to content

Instantly share code, notes, and snippets.

@djungelorm
djungelorm / autopilot.py
Created February 16, 2016 02:48
kRPC AutoPilot
import krpc
import time
import numpy
import math
def main():
conn = krpc.connect()
vessel = conn.space_center.active_vessel
# Point prograde, 0 degree roll
@djungelorm
djungelorm / hover.py
Created March 16, 2016 05:52
kRPC hover script
import krpc
import time
conn = krpc.connect()
vessel = conn.space_center.active_vessel
control = vessel.control
flight = vessel.flight(vessel.orbit.body.reference_frame)
target = 15 # target altitude above the surface, in meters
g = 9.81
import krpc
import math
import time
# http://brettbeauregard.com/blog/2011/04/improving-the-beginners-pid-introduction/
class PIDController(object):
""" A robust PID """
def __init__(self, input, setpoint, kp, ki, kd, outmin = 0, outmax = 0):
@djungelorm
djungelorm / remove-tdx.patch
Created April 13, 2016 17:33
Remove TDx references
diff --git a/doc/BUILD b/doc/BUILD
index 97f27c3..855a085 100644
--- a/doc/BUILD
+++ b/doc/BUILD
@@ -251,7 +251,6 @@ csharp_library_multiple(
'//tools/build/ksp:Assembly-CSharp-firstpass',
'//tools/build/ksp:UnityEngine',
'//tools/build/ksp:UnityEngine.UI',
- '//tools/build/ksp:TDx.TDxInput',
'//tools/build/ksp:KSPUtil',
diff --git a/client/lua/BUILD b/client/lua/BUILD
index 305b24d..dcd5ebd 100644
--- a/client/lua/BUILD
+++ b/client/lua/BUILD
@@ -12,7 +12,7 @@ genrule(
name = 'zip',
srcs = [':rock'],
outs = ['krpc-lua-%s.zip' % version],
- cmd = 'ln -f -r -s "$<" "$@"',
+ cmd = 'ln -f -s "`pwd`/$<" "`pwd`/$@"',
#!/usr/bin/env python3
import asyncio
import websockets
import krpc
@asyncio.coroutine
def main():
websocket = yield from websockets.connect('ws://localhost:50000/')
import krpc
import math
import time
def cross(u,v):
return (
u[1]*v[2] - u[2]*v[1],
u[2]*v[0] - u[0]*v[2],
u[0]*v[1] - u[1]*v[0])
@djungelorm
djungelorm / example.py
Created June 7, 2016 02:50
krpc-clientgen examples
import os
from krpctools.clientgen.generator import Generator
from krpctools.clientgen.docparser import DocParser
class ExampleGenerator(Generator):
def __init__(self, macro_template, service, definition_files):
super(ExampleGenerator, self).__init__(macro_template, service, definition_files)
@classmethod

Keybase proof

I hereby claim:

  • I am djungelorm on github.
  • I am alexjcollins (https://keybase.io/alexjcollins) on keybase.
  • I have a public key whose fingerprint is 0197 E421 CE44 D969 539D 87AB 68FA C0F9 D283 5E8C

To claim this, I am signing this object:

'use strict';
var WebSocket = require('ws');
var ProtoBuf = require('protobufjs')
var builder = ProtoBuf.loadProtoFile('krpc.proto'),
proto = builder.build();
function decodeBytes(buffer) {
return buffer.slice(5)