FORUM: http://forum.toribash.com
Hi guys,
I'm new around here, I heard you guys are always interested in interesting new games. Espically free ones that have a virtual economy!
Recently I found this game called Toribash, and for a long while I was quite addicted to it. I'ts a physics fighting game, control the character via joint manipulation.
Anyway, I started thinking about the hacking side of it, because for each win you get in multiplayer you get 5 toricredits credited to your Toribash account, and there's some pretty cool colors I wouldn't mind getting my hands on - but I just don't have the available funds to do so.
I thought about making a bot and I checked out the packets/protocol and to my surprised it was all plain-text - not encrypted at all... and then I found this bot code on the forums by one of the devs!
- Code: Select all
#!/bin/sh
# random toribash player
NICK=bot
SPACE_SLEEP=${1:-15}
player=0
timeout=0
echo "Botname $NICK space_sleep $SPACE_SLEEP"
# connect to server
#exec 5<>/dev/tcp/127.0.0.1/20184 || exit 1
#exec 5<>/dev/tcp/66.230.225.210/20182 || exit 1
exec 5<>/dev/tcp/203.81.48.75/20186 || exit 1
echo NICK $NICK >&5
echo ENTER >&5
#echo SAY "hello I am $NICK" >&5
while read x; do
echo x=$x
echo $x | grep -qs "lolbot" >&5
if [ $? -eq 0 ]; then
echo SAY "Moo!" >&5
fi
echo $x | grep -qs "auth" >&5
if [ $? -eq 0 ]; then
echo PASS 441132 >&5
echo SET engagedistance 1000 >&5
echo SAY "authd" >&5
fi
echo $x | grep "^BOUT " | grep -qs $NICK
if [ $? -eq 0 ]; then
player=$(echo $x | cut -d " " -f2 | cut -d ";" -f 1)
fi
now=$(date "+%s")
if [ $now -gt $timeout ]; then
echo PING >&5
echo ">> sending ping"
let "timeout=$now + 10"
fi
[ $player -gt 1 ] && continue
echo $x | grep -qs "GAME"
if [ $? -eq 0 ]; then
let "lg=$RANDOM % 2"
let "rg=$RANDOM % 2"
jstr="JOINT $player; "
for ((i=0; i<20; i++)); do
let "r = $RANDOM % 4"
#r=3
jstr="$jstr $i $r"
done
sleep $SPACE_SLEEP
echo "COMMITING"
echo "GRIP $player; $lg $rg" >&5
#echo "GRIP $player; 1 1" >&5
#echo "JOINT $player;0 3 1 3 2 3 3 3 4 2 5 3 6 3 7 2 8 3 9 3 10 3 11 3 12 3 13 3 14 3 15 3 16 3 17 3 18 3 19 3" >&5
echo $jstr >&5
fi
echo $x | grep -qs "WIN" && sleep 5 && echo READY >&5
done <&5
You'll need to be sufficient in *unix to make this work - what it does is makes a bot that basically does random moves and usually wins against noobs. It needs some minor changes to the protocol (they've changed it a wee bit).
In my bot, I've got a !crash user function working (crashes their Toribash client) and I've got a function to freeze a match and bribe people. It doesn't stop there, I've also been doing some nice scams by using other peoples nicknames... i.e: User X knows the person I'm impersonating and trades are done (but he gets scammed).
I'm still working on perfecting my bot to run 24/7 using different names once in a while so it can farm Toricredits. (did you know people actually BUY Toricredits from other people if you get more for cheaper? The devs even said this was fine!)
But yeah, this game seems perfect for DRuG - I did a bit of work on the client with Ollydbg too to give me any name I want and a few gfx mods (longer ghost) but I'm not that great at the whole reverse engineering stuff.
Hopefully you guys check it out and maybe I could apply to get on the DRuG team
LINK: http://www.toribash.com
FORUM: http://forum.toribash.com