Skip to content

Instantly share code, notes, and snippets.

@vedantk
vedantk / gist:762289
Created January 2, 2011 04:48
.. in which I discover how to cheat AssaultCube, even though I really shouldn't.
[vk@vk assaultcube]$ diff orig_weapon.cpp source/src/weapon.cpp
566c566,569
< hitpush(dam, o, d, from, to, d->weaponsel->type, gib, gib ? 1 : 0);
---
> if (d->weaponsel->type == GUN_SHOTGUN) {
> dam += 15;
> }
> hitpush(dam, o, d, from, to, d->weaponsel->type, gib, gib ? 1 : 0);
925c928
< bool quickwait = attackmillis*3>=gunwait && !(m_arena && m_teammode && arenaintermission);
@vedantk
vedantk / snowfox.py
Created January 12, 2011 06:23
Why the hell do they have to delay this for so long...
#!/usr/bin/python2
import time
import webbrowser
from datetime import datetime
import urllib2 as url
from BeautifulSoup import BeautifulSoup
site = "http://ftpcontent.worldnow.com/wdrb/news/closings.html"
#!/usr/bin/python
def eval_solution(self, soln):
self.apply_solution(soln)
confs = self.find_conflicts(next_state)
score = sum([weight_of(conflict) for conflict in confs])
self.revert_solution(soln)
return score
def find_solutions(self, conflict):
@vedantk
vedantk / royalty.py
Created February 14, 2011 06:54
Traces the bloodlines of academic royalty by sifting through Wikipedia.
#!/usr/bin/python
# Traces the bloodlines of academic royalty by sifting through Wikipedia.
import re
import urllib2
from BeautifulSoup import BeautifulSoup
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
advisor = re.compile("advisor", re.IGNORECASE)
@vedantk
vedantk / transitivity
Created April 3, 2011 06:00
Create transitive predicates in Python.
def transitivePredicate(db):
def predicate(a, b):
pool = db.get(a)
if not pool:
return False
if b in pool:
return True
for ent in pool:
if predicate(ent, b):
return True
@vedantk
vedantk / expr.py
Created May 27, 2011 14:51
latest expr
import re
import ast
import random
import math
import operator
from bigfloat import *
h = 10 ** -10
N = int(math.sqrt(1 / h))
@vedantk
vedantk / mldemo_cv.patch
Created May 30, 2011 14:57
linux opencv library patch for mldemo
diff --git a/MLDemos_variables.pri b/MLDemos_variables.pri
index 578c92d..d81089b 100644
--- a/MLDemos_variables.pri
+++ b/MLDemos_variables.pri
@@ -64,11 +64,8 @@ INCLUDEPATH += . \
/usr/include/opencv/ \
/usr/local/include/opencv/
LIBS += -L/usr/local/lib
-LIBS += -lcv \
- -lcxcore \
@vedantk
vedantk / mldemos-linux.patch
Created May 30, 2011 15:35
Linux + OpenCV 2.2 Patch for MLDemos
updated: https://gist.github.com/999427
@vedantk
vedantk / opencv2.2.patch
Created May 30, 2011 20:37
opencv 2.2 for mldemos (non-hacky version)
From 207a4c622081c32ebcb25ce0825e6c7704f81ac0 Mon Sep 17 00:00:00 2001
From: Vedant Kumar <vk@vedantk.com>
Date: Mon, 30 May 2011 16:37:55 -0400
Subject: [PATCH] Added compat headers, removed hacky cvSumPixels workaround
---
MLDemos/public.h | 9 ++++-----
MLDemos/sampleManager.cpp | 4 ++--
MLDemos_variables.pri | 3 +--
3 files changed, 7 insertions(+), 9 deletions(-)
@vedantk
vedantk / gist:1121980
Created August 3, 2011 05:38
An iterative version of f(n).
(define (f' n)
(define (f'-iter a b c count)
; f(n) = a + b + c = f(n-1) + 2f(n-2) + 3f(n-3).
; Use f(n) to calculate f(n+1) = f(n) + 2f(n-1) + 3f(n-2).
(if (= count (+ n 1))
a
(f'-iter (+ a b c) (* 2 a) (* 3 (/ b 2)) (+ count 1))))
(if (< n 3)
n
; f(3) = f(2) + 2f(1) + 3f(0).