So ich hab mir heute in der Schule (ist eh nix los nurnoch zumsitzen nächste Woche Prüfungen) mir das Walk system von kal durch den kopf gehen lassen....mir fiel auf das ich vieles nicht verstanden habe....
#########
#########
####X####
#########
#########
X steht jetzt für Null
jedes "#" steht für die coordinate eins alles was rechts oben neben dem x ist ist postitiv, alles rechts unten negativ genauso wie links unten und links oben.
wenn ich jetzt das packet sende (0x15,"bbb",1,1,0) dann dürfte ich doch genau hier stehen:
#########
#####X###
#########
#########
#########
wenn ich jetzt das packet (0x15,"bbb",-1,-1,0) schicke eigentlich doch wieder am anfangspunkt?:
#########
#########
####X####
#########
#########
Ich mein aber irgendwo gelesen zu haben das negative werte nicht gehen. Irgendwo hab ich gelesen das 255 der maximale schritt ist....wiederum woanders das 64 der maximale schritt ist....bin mir da jetzt nicht sicher
das heißt ich müsste (nehmen wir an 255 ist der maximale Wert) 255-1 rechnen und dann (0x15,"bbb",254,254,0) senden?
Ich hab mir viele Koordinatenkreuze heute aufgemalt z.B. mit Mob auf X: 7000 und Y: 10000 Player auf X: 5000 und Y: 11000 oder sone spielchen...dann die differenz genommen und eigentlich ist doch die differenz das was man laufen müsste um zum mob zu kommen oder? bloß wenn ich jetzt einen difx wert von 4000 habe wie soll ich das machen? wie stell ich das auf mehrere packets ?
dann hab ich natürlich sowas mit tempx und den spielchen gemacht da kam ich dann immer so auf werte wie 15 oder so und dann hab ich mal zum testen die difx / tempx genommen und geguckt wieviele solcher packets ich senden müsste...einiges.
Aufjedenfall denke ich mal verstehe ich das System jetzt besser ich hab mir auch in der Schule einen 4 Seiten Code aufgeschrieben den ich gleich mal eintippen werde und guck mal ob der funktioniert ^^
Über Tipps etc würde ich mich freuen :P
MFG
Diamond
warum hast du tut gemacht über walk with packets??^^ das meinte ich immer ;> du erklärst was , was du selber nicht verstehst?. guck dir "" nochmal an da steht genug zu.
EDIT:ok kriegst nen tipp: 64-128 "+ berreich" , 192-255 " - berreich" diesmal gibs kein code ;>
ich will auch kein code....außerdem wenn du dir meinen thread anguckst wirst du einen unterschied festellen
das war eine frage auf den + und - bereich des coordinatensystems....in meinem tut erkläre ich nur wie man allgemein läuft etc.
das ist ein meilenweiter unterschied.
und wenn du ihn dir ein drittes mal durchliest wirst du evtl. aber nur ganz evtl. feststellen das ich geschrieben habe das ich das system selber noch nicht ganz verstehe und das ich trotzdem versuche anderen zu helfen.
das hab ich dir bereits schon gesagt hast du es jetzt verstanden?
das heißt wenn ich jetzt im kreis laufen will...ne sagen wir im viereck...
müsste ich wenn ich hier stehe
#########
#########
####X####
#########
#########
ich sagte nich das du dir deins angucken sollst in deinem threat^^ ich hatte es ja da erklärt ;>
edit: was du da jez gemalt hast da läuft er schräg hoch und dann wieda in die mitte müsstest dann für jede ecke laufen^^ wenn du im viereck laufen willst ;>
nice
okay... jetzt gebt mir bitte nen tipp.. wie finde ich die coords raus wo mein player steht.. am besten ohne Player[0] wenns geht...
iwie mit player stop / player move am besten...
PHP Code:
if (buf2[2] == 0x15)//player stop
{
DWORD PlayerStopID;
memcpy((void*)&PlayerStopID,(void*)((DWORD)buf2+3),4);
printf("PSID = %s\n",PSID); //zum nachschauen ob er die ids findet
if (PlayerStopID = PID) //PID wird durch eingabe definiert... also ich gebe die ID von mir an
{
DWORD PX;
DWORD PY;
memcpy((void*)&PX,(void*)((DWORD)buf2+5+4),4); //hier sind die zahlen am ende falsch
memcpy((void*)&PY,(void*)((DWORD)buf2+5+4+4),4); //hier auch
printf("Your X: %s\n",PX);
printf("Your Y: %s\n",PY);
}
}
diese zahlen.. buf2+4 zB, wie finde ich die heraus? also bei x isses ja buf2+4 , bei y buf2+4+4 oder so.. wie kriege ich die heraus? ich bin mir halt nich sicher ob die richtig sind.. mein script kackt an der stelle ab
jetzt bin ich verwirrt...hab jetzt mal gemacht das ich die schritte selbst eingebe also die bytes....der maximale wert den ich senden kann ist positiv 44....wenn ich 45 sende passiert nix....das komische ist ich kann -44 eingeben und der bewegt sich in die andere richtung...ich dachte negativzahlen gehen nicht?
edit:
aber danke das ihr euch die mühe macht
BorSti guck mal msn...xD hab dir nen halben roman geschrieben schon
Walk through 02/11/2010 - General Gaming Discussion - 0 Replies Alright so everyone Macro's spells these days. could anyone give me a walk through for using lesser magic?
[TuT]Walk with packets. 08/02/2009 - Kal Hacks, Bots, Cheats & Exploits - 19 Replies Hey guys,
yes i make a tut.
i'm not the best in making Tutorials....of course not for Packets.
but i try to do it so "noobs" can read it and don't have to ask.
So here we go:
Walk in Kalonline is, i think, "simple".
A walk packet looks like this:
PACKET TYPE: 0x15 FORMAT: bbb
b: 1
[Hilfe] Packets Mob Walk 06/03/2009 - Kal Online - 32 Replies Hello all,
after arround 4-5 Hours of hard learning, my bot works very simple.
Now i try to fix, that my Bot beheads all died mobs arround me...
There should be something like a range arround 50.
For Pick, it works. difference between x,y and some math ^^.
After a Mobs spawn / apear, i get x,y coords. But they walk arround. And thats the Problem. I recive 1 Packet (for exampe: Mob move: x=2 y=4) 3-4 times. How can i fix that problem?
My Try:
if(lastMoveId!=id || lastMoveX != x ||...
[Question]Walk with packets. 04/22/2009 - Kal Online - 53 Replies Hey guys/ladies..
because i don't know how to make a bot....what means i don't know...i know but i still can't do it...no enough experience.
so i think i try to start only to walk with packets.
i try to make a "walk-hack", that means:
int difx=Player.X-ItemX;
int dify=Player.Y-ItemY;
float range=difx*difx+dify*dify;
float sqrt_range=sqrt(range);
unsigned char tempitemx=-(difx/sqrt(range))*30;
...