Also ich schreibe einen Bot für das Browsergame Bitefight, ich benutze C++ und um die Requests zu senden benutze ich libcurl.
Und auf einer seite, die ich leider nicht posten kann, weil man sich dafür einloggen muss, habe ich eine form, die sieht so aus:
Code: Alles auswählen
<form action="robbery.php" method="POST">
<input type="hidden" name=uja value="77210">
<input type="hidden" name=ujc value="00ceec69eb08237209ddd02afaf97dac">
<input type="hidden" name=ujp value="bfcd2ca254f49c8940b608a6f1c35f32">
<input type="hidden" name="mcp" value="1"><br>
<input type="submit" class=input value="angreifen"></form>
außer mcp sind alle Werte zufällig, aber das ist kein Problem, die kann man ja auslesen.
mcp ist immer 1.
Aber ganz am ende der Seite, findet sich dieser Javascript aufruf:
Code: Alles auswählen
<script language="javascript" src="mcp.js" type="text/javascript"></script>
Das Java script habe ich oben gepostet.
Der Punkt ist jetzt, dass der Wert von mcp verändert wird. Aber nicht in dem Quelltext im Arbeitsspeicher meines Bots.
Ich muss aber den richtigen Wert für mcp wissen, weil ich sonst nicht das richtige POST abschicken kann. Und wenn das Post nicht stimmt gehts nicht weiter.
Ich muss also rausbekommen, wie das Java Script den Wert von mcp ändert.
Ich sehe, dass mcp der Wert q zugewiesen wird im Script. Ich sehe auch, wo q der Wert zugewiesen wird. allerdings macht das für mich keinen Sinn.
Da das was am Ende für mcp rauskommt in aller Regel eine 4-Stellige Zahl ist. Und ich verstehe nicht, wie die da erzeugt wird.
Ich muss die Berechnung, die in dem Java-script gemacht wird irgendwie in meinem Bot in C++ machen.
Aber da ist gleich das nächste Problem. Für mich sieht es so aus, als würde er das irgendwie aus dem Mauskoordinaten errechnen, dummerweise gibt es keine Mauskoordinaten, wenn mein Bot das macht.
Ich muss einfach in meinem Bot irgendwie auf den richtigen Wert für mcp kommen.
Edit: Ich habe hier jetzt einfach mal den gesamten Quellcode der Seite kopiert:
Code: Alles auswählen
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Bitefight - Das kostenlose online Abenteuer. Spiele dein Monster, Vampir oder Werwolf</title>
<link rel="stylesheet" type="text/css" href="game.css">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="generator" content="Gameforge" />
<meta name="author" content="Gameforge" />
<meta name="coypright" content="Gameforge" />
<meta name="language" content="de" />
<meta name="publisher" content="Gameforge" />
<meta name="page-type" content="Kommerzielle Organisation" />
<meta name="page-topic" content="Spiele" />
<meta name="audience" content="all" />
<meta name="Expires" content="never" />
<meta name="keywords" content="rollenspiel, kostenlos, online, fantasy, mmog, browser, games, k�mpfen, web, explorer, monster, rpg, vampir, werwolf, internet" />
<meta name="description" content="Vampir oder Werwolf? W�hle und stelle dich dem Kampf! Onlinespiel mit tausenden Monstern! Kostenlos anmelden und spielen" />
<meta name="robots" content="index,follow" />
<meta name="Revisit" content="After 1 days" />
<style type=text/css>
.advertising *{margin:0 auto;}
.advertising {text-align:center;}
</style>
<body bgcolor="#220202" onload="init_stat()">
<div id="container">
<img src="img/header.jpg" width="1035" height="294" style="position:absolute; left:-37px; top:0px;" alt="Bite Fight" />
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td style="width:20px; background-image:url(img/border.gif); background-repeat:repeat-y; background-position:right;"> </td>
<td style="width:156px; background-image:url(img/sidebg.jpg); background-repeat:repeat-y; background-position:left; vertical-align:top;">
<div id="menu">
<a href="uebersicht.php" target="_top">Übersicht</a>
<a href="msg.php" target="_top">Nachrichten</a>
<a href="palace.php" target="_top">Versteck</a>
<a href="city.php" target="_top">Stadt</a>
<a href="robbery.php" target="_top">Jagd</a><br>
<a href="shoppremium.php?goin=1" target="_top" class="newmessage">VooDoo Shop</a>
<a href="ally.php" target="_top">Clan</a>
<a href="buddylist.php" target="_top">Buddyliste</a>
<a href="notizen.php" target="_top">Notizblock</a>
<a href="einstellungen.php" target="_top">Einstellungen</a><br>
<a href="http://board.bitefight.de" target="_blank">Forum</a>
<a href="highscore.php" target="_top">Highscore</a>
<a href="suche.php" target="_top">Suche</a>
<a href="faq.php" target="_top">Hilfe</a>
<a href="logout.php" target="_top">Logout</a><br>
<center style="font-size: 0.7em;">25.12.2009 16:22h</center> </div>
<img src="img/menudivider.gif" width="156" height="17" alt="" />
</td>
<td style="width:16px; background-image:url(img/border.gif); background-repeat:repeat-y;"> </td>
<td style="background-image:url(img/darkstone.jpg); vertical-align:top; text-align:center;">
<img src="img/content_top.jpg" width="784" height="38" alt="" />
<div id="content" style="position:relative; top:-30px; width:720px; margin-left:auto; margin-right:auto;">
<script language="javascript" src="mcp.js" type="text/javascript"></script><div style="position:absolute;left:-500px;top:-500px;">
<form action="robbery.php" method="POST"><select name="mjz" size="1" class="input">
<option value="1"></option><option value="2"></option><option value="3"></option><option value="4"></option><option value="5"></option><option value="6"></option><option value="7"></option><option value="8"></option><option value="9"></option><option value="10"></option><option value="11"></option><option value="12"></option></select>
<input type="submit" class=input value="Los!">
</form>
<form action="robbery.php" method="POST"><select name="ujo" size="1" class="input">
<option value="1"></option><option value="2"></option></select>
<input type="submit" class=input value="Los!">
</form>
<form action="robbery.php" method="POST"><input class="input" type="text" name="ujn" size="30" value="" MAXLENGTH="30">
<input type="submit" class=input value="Los!">
</form>
</div>
<h1>Jagdlust Ryu1991</h1><p>Gold: 118 <img src="img/res2.gif" alt="Gold" align="absmiddle" border="0"></p><p style="text-align:justify">Deine Suche war erfolgreich. Du kannst das aufgespürte Opfer nun angreifen!</p>
<center><br><br><table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr><td align="center" valign="top">
<table>
<tr><td align="center" valign="top">
<img src="img/logo/1/tmp/m-2-1-4-5-1-2-1.png" border=0 width=168></td></tr></table><p align="center" valign="center"></td>
<td width="10"> </td><td valign="top">
<table cellpadding="2" cellspacing="2" border="0" width="100%">
<tr><td class="tdh" colspan="2" align="center">Vampir Blackfire992</td></tr>
<tr><td class="tdn" colspan="2"><span class="fontsmall2">wurde von einem Ältesten verwandelt</span></td></tr>
<tr><td class="tdn">Gesamtbeute:</td><td class="tdn">11.357 l Blut</td></tr>
<tr><td colspan="2"> </td></tr>
<tr><td class="tdh" colspan="2" align="center">Charakterbeschreibung <a class="copyright" href="profilbad.php?id=83883&typ=p&ts=1261754544&nc=34b7d50">(melden)</a></td></tr>
<tr><td class="tdn" colspan="2" style="text-align:justify"><div style="overflow:hidden; width:100%;" align="center">-- keine vorhanden --</div></td></tr>
<tr><td colspan="2" align="center"> </td></tr>
<tr><td colspan="2" class="tdh" align="center">Die Charakterwerte von Blackfire992</td></tr>
<tr><td class="tdn">Stufe:</td><td class="tdn">8</td></tr><tr><td class="tdn">Kraft:</td><td class="tdn"><img src="img/b1.gif" alt="" ><img src="img/b2.gif" alt="" height="12" width="188.888888889"><img src="img/b3.gif" alt="" > <span class="fontsmall">(17)</span></td></tr><tr><td class="tdn">Verteidigung:</td><td class="tdn"><img src="img/b1.gif" alt="" ><img src="img/b2.gif" alt="" height="12" width="177.777777778"><img src="img/b3.gif" alt="" > <span class="fontsmall">(16)</span></td></tr><tr><td class="tdn">Geschicklichkeit:</td><td class="tdn"><img src="img/b1.gif" alt="" ><img src="img/b2.gif" alt="" height="12" width="177.777777778"><img src="img/b3.gif" alt="" > <span class="fontsmall">(16)</span></td></tr><tr><td class="tdn">Ausdauer:</td><td class="tdn"><img src="img/b1.gif" alt="" ><img src="img/b2.gif" alt="" height="12" width="188.888888889"><img src="img/b3.gif" alt="" > <span class="fontsmall">(17)</span></td></tr><tr><td class="tdn">Charisma:</td><td class="tdn"><img src="img/b1.gif" alt="" ><img src="img/b2.gif" alt="" height="12" width="200"><img src="img/b3.gif" alt="" > <span class="fontsmall">(18)</span></td></tr><tr><td class="tdn">Erfahrung:</td><td class="tdn"><img src="img/b1.gif" alt="" ><img src="img/b2.gif" alt="" height="12" width="161"><img src="img/b4.gif" alt="" height="12" width="39"><img src="img/b5.gif" alt="" ><span class="fontsmall"> (262 / 325)</span></td></tr><tr><td align="center"><form action="robbery.php" method="POST"><input type="hidden" name=uja value="83883">
<input type="hidden" name=ujc value="ec3b5d189568f43c4ce2a5f610b9dc9e">
<input type="hidden" name=ujp value="f6994a0bfa42c4b5dd2429d23cd2d5f6">
<input type="hidden" name="mcp" value="1"><br><input type="submit" class=input value="angreifen"></form></td>
<td align="center"><form action="robbery.php" method="POST"><input type="hidden" name="3656bc8fd3792e94b75072ba96b512be" value="1"><input type="hidden" name="mcp" value="1"> <br><input type="submit" name="b2" class=input value="erneut suchen"></form></td></tr></table>
</td></tr></table>
</center>
</div>
</td>
<td style="width:22px; background-image:url(img/border.gif); background-repeat:repeat-y; background-position:left;"> </td>
</tr>
</table>
<div>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<img src="img/footer.jpg" width="998" height="92" style="display:block;" alt="" />
</td>
</tr>
</table>
<div id="copyright" ><a href="changelog.php" class="copyright">v0.42</a> (C) by <a href="http://www.gameforge.de" target="_blank" class="copyright">Gameforge</a>. Alle Rechte vorbehalten. <a href="http://agb.gameforge.de/index.php?lang=de&art=impress&special=&&f_text=C00C0C&f_text_hover=FF0000&f_text_h=220202&f_text_hr=220202&f_text_hrbg=220202&f_text_hrborder=C00C0C&f_text_font=tahoma&f_bg=220202" target="_blank" class="copyright">Impressum</a>, <a href="http://agb.gameforge.de/index.php?lang=de&art=tac&special=&&f_text=C00C0C&f_text_hover=FF0000&f_text_h=220202&f_text_hr=220202&f_text_hrbg=220202&f_text_hrborder=C00C0C&f_text_font=tahoma&f_bg=220202" target="_blank" class="copyright">AGB</a>, <a href="http://agb.gameforge.de/index.php?lang=de&art=datenschutz&special=&&f_text=C00C0C&f_text_hover=FF0000&f_text_h=220202&f_text_hr=220202&f_text_hrbg=220202&f_text_hrborder=C00C0C&f_text_font=tahoma&f_bg=220202" target="_blank" class="copyright">Datenschutzerklärung</a>, <a href="http://board.bitefight.de/index.php?page=Board&boardID=296&s" target="_blank" class="copyright">Regeln</a></div>
</div>
</div>
</body>
</html>
<script language="javascript" src="mcp.js" type="text/javascript"></script>