AutoIT + LUA?

05/31/2007 14:58 Bl@ze!#1
-
05/31/2007 15:38 r00kie#2
Nein. Lua ist zu AutoIT nicht kompatibel.
05/31/2007 16:01 mr.rattlz#3
Mir fallen da spontan drei verschiedene Möglichkeiten ein:

1.
Das Script einfach an den Lua-Interpreter übergeben und die Ausgabe verwerten

2.
Nutzung der Lua51.dll über DllOpen/DllCall (bei der Möglichkeit bin ich mir nicht ganz sicher ob das ginge)

oder 3.:
Einbindung von LuaScript über AutoItX als Active Scripting Engine :)
05/31/2007 18:11 Term!nX#4
Also es geht tatsächlich, weil ich es schonmal getan hab. Requia hatte diese Unterstützung, man konnte Scripts schreiben, in denen man unter LUA Syntax Autoitbefehle verwenden konnte. (Falls du sowas meinst)
05/31/2007 20:20 Bl@ze!#5
-
05/31/2007 21:02 Term!nX#6
Ehm, Requia ist im Grunde genommen schlechter als au3. Ich hab in au3 nen Multiclientbot geschrieben, der bis zu 4 clients unterstützt. Daher au3 >>>>>> Requia. Deswegen ists totaler Blödsinn 500 ?umel für Requia auszugeben o.o

Also ein Requia nachprogrammieren dürfte äußerst schwer und zeitaufwendig sein :)



PS:

Hi Oxy, tja war schon geil was alles passiert ist bei Requia. Harko hat mir bis heute keine Antwort auf meine Erläuterung über die Erklärung meines Bans gegeben, also sei froh dass du aus der schlechten Community in die gute gekommen bist. Welcome.
05/31/2007 21:19 Bl@ze!#7
Quote:
Originally posted by Term!nX@May 31 2007, 21:02
Ehm, Requia ist im Grunde genommen schlechter als au3. Ich hab in au3 nen Multiclientbot geschrieben, der bis zu 4 clients unterstützt. Daher au3 >>>>>> Requia. Deswegen ists totaler Blödsinn 500 ?umel für Requia auszugeben o.o

Also ein Requia nachprogrammieren dürfte äußerst schwer und zeitaufwendig sein :)



PS:

Hi Oxy, tja war schon geil was alles passiert ist bei Requia. Harko hat mir bis heute keine Antwort auf meine Erläuterung über die Erklärung meines Bans gegeben, also sei froh dass du aus der schlechten Community in die gute gekommen bist. Welcome.
Danke erstmal , naja ich hab ihn erstmal nicht das Geld geboten und außerdem kommen wir vom Thema ab.
Mein Plan war ja nicht Requia nachzuprogrammieren sondern ein Au3 Script zu machen was ein Fenster öffnet mit verschiedenen checkboxes <Guckst du hier> [Ne Paint Zeichnung :D]

Und wenn man was da auswählt soll der LUA Script X - Y ausführen. =) Sozusagen nen AutoIT Gui Menü und LUA Script :) . Wobei ich dann auch Au3 Scripts mache aber wie gesagt man sollte irgendwie die LUA scritps ausführen können :-D
Muss da nämlich alles umkooardinieren, da ich mein letzes Requia Projekt nicht vollenden konnte (Char level bot) , war grad fertig mit Charactererstellung bis Requia out of date war.. Charaktererstellung ist aus AutoIT und LUA .. aber nicht deshalb soll LUA auch funktionieren. [Sind aber keine TargetX oder sowas von Requia enthalten nur normale LUA-Syntax befehle.]

[Only registered and activated users can see links. Click Here To Register...]

Rot = "Dann die LUA Datei , ne?^^" :D
05/31/2007 21:56 Term!nX#8
Nee war mir schon klar, dass Crypto die ?uros geboten hat ^^

Aber ich versteh nicht, warum willst du unbedingt die LUA syntax verwenden? Die au3 syntax ist doch genauso einfach. Und wenn du die Lua syntax mit au3 befehlen gespickt hast, müsste das eigentlich leicht sein, das umzuschreiben.
05/31/2007 22:25 Harko#9
Quote:
Originally posted by Term!nX@May 31 2007, 21:02
Ehm, Requia ist im Grunde genommen schlechter als au3. Ich hab in au3 nen Multiclientbot geschrieben, der bis zu 4 clients unterstützt. Daher au3 >>>>>> Requia. Deswegen ists totaler Blödsinn 500 ?umel für Requia auszugeben o.o
100 gw clients bei einer cpu auslastung von 20% sind kein problem nur internet würde nicht mehr zu lassen. ;)

und 500euro ist viel Geld wenn man Zeitungen austrägt aber sonst nicht wirklich ;)
06/01/2007 07:18 Bl@ze!#10
Weiß nicht , ich möchte nunmal den Lua Syntax verwenden , weil ich LUA besser beherrsche :-) . Naja wir reden später weiter , muss jetzt zur Schule ... omg.. ^^
06/01/2007 10:23 Busti#11
Was ist Requia ? Wenn ich das bei Google eingebe, finde ich nur wirres zeug. (Französisch :x).
06/01/2007 13:10 Bl@ze!#12
Quote:
Originally posted by Busti@Jun 1 2007, 10:23
Was ist Requia ? Wenn ich das bei Google eingebe, finde ich nur wirres zeug. (Französisch :x).
Also ich bin wieder da.
Requia , vorerst es existiert nicht mehr , bzw nicht public nur für Harko.
Requia ist ein Programm das damals Guild Wars und noch irgendwas Supported hat und man mit LUA Scripts dann botten kann. Sprich Guild Wars Bot. In dem konntest du Lua + AutoIT verwenden , nuja .. meine Frage halt kann man das auch ohne Requia.
Mittlerweile kann Requia auch WoW Supporten , aber Harko wird es nicht mehr public machen , glaub ich.

Edit : So hätte ein Script aussehen können .
Edit 2 : Der war von Darkicon in irgendeinem Board meine Scripts gammeln auf irgend einen USB Stick und hab gerade keine Zeit den zu holen. :)

Code:
function main&#40;&#41;
 while &#40;true&#41; do
  FinishRoute&#40;&#41;;

 SearchByType&#40;2&#41;;
 Sleep&#40;200&#41;;
 if &#40;SearchIndex ~= 0&#41; then
  TargetByIndex&#40;0, SearchIndex&#41;;
 Sleep&#40;5000&#41;;
 end
  GoTo&#40;-105, 12355&#41;;
  Fight&#40;3000&#41;;
 end
end
--####################################################--
function Sell&#40;&#41;
 TargetNpc&#40;-1924, 14692&#41;;
 Sleep&#40;200&#41;;

 -- sell everything in the first backpack
 for i=0, 19 do
  GetItem&#40;0, i&#41;;
  Sleep&#40;200&#41;;
  if&#40;ItemIndex ~= 0&#41; then
   SellItem&#40;&#41;;
  end
 end
end
--####################################################--
function Fight&#40;maxdistance&#41;
 local BlockId = -1; -- id from last blocked mob
 local BlockCnt = 0;
 while&#40;true&#41; do
  SearchByFaction&#40;3&#41;;

  -- all monsters are dead ...
  if&#40;SearchIndex == 0&#41; then
   return;
  end

  -- same target which is blocked by another monster
  if&#40;SearchIndex == BlockId&#41; then
   return;
  end

  -- monster to far away
  if&#40;SearchDistance > maxdistance&#41; then
   local text = &#34;Creature &#34;..SearchIndex..&#34; to far away.&#34;;
   Console&#40;text&#41;;
   return;
  end

  TargetByIndex&#40;0, SearchIndex&#41;;

  Sleep&#40;200&#41;;

  -- loop as long as target is alive
  while &#40;TargetHpMax == 0 or TargetHp > 0&#41; do

   -- if target is dead
   if &#40;TargetIndex == 0&#41; then
    do break end
   end

   -- way blocked by another monster
   if&#40;IsMoving == 0 and TargetDistance > 150&#41; then
    if&#40;BlockCnt > 5&#41; then
     Console&#40;&#34;Target blocked, search for next.&#34;&#41;;
     BlockId = TargetIndex;
     do break end
    else
     BlockCnt = BlockCnt + 1;
    end
   else
    BlockId = -1; -- delete if successfull kill
    BlockCnt = 0;
   end

   -- energy if needed
   if &#40;IsAbilityUsable&#40;0&#41; and
     PlayerEnergy &#60; 4 and
    UseAbility&#40;2, 0&#41;;
   end

    
   -- healing if needed
   if &#40;PlayerHp &#60; 300&#41; then
    UseAbility&#40;3, 0&#41;;
    Sleep&#40;200&#41;;
   end

   -- Cyclone axe
   if &#40;IsAbilityUsable&#40;0&#41; and
     PlayerEnergy > 5 and
     TargetDistance &#60; 150&#41; then
    UseAbility&#40;0, 0&#41;;
   end

   -- Triple Chop
   if &#40;IsAbilityUsable&#40;0&#41; and
     PlayerEnergy > 5 and
     TargetDistance &#60; 150&#41; then
    UseAbility&#40;1, 0&#41;;
   end

   Sleep&#40;200&#41;;
  end

  Loot&#40;&#41;;
 end
end
--####################################################--
function Loot&#40;&#41;
 SearchByType&#40;4&#41;;
 if &#40;SearchIndex ~= 0&#41; then
  TargetByIndex&#40;0, SearchIndex&#41;;
  while &#40;TargetIndex ~= 0&#41; do

   -- wrong target? &#40;happens sometimes&#41;
   if &#40;TargetType ~= 4&#41; then
    do break end
   end

   -- character blocked by another monster/object?
   if &#40;TargetDistance > 150 and IsMoving == 0&#41; then
  Console&#40;&#34;Blocked Loot aborted.&#34;&#41;;
  return;
   end

   Sleep&#40;20&#41;;
  end
  -- recursive call to loot multiple times
  Loot&#40;&#41;;
 end
end
--####################################################--
function GoTo&#40;x, y&#41;
 MoveTo&#40;x, y&#41;;

 while &#40;PlayerX ~= x and PlayerY ~= y&#41; do
  Sleep&#40;100&#41;;

  -- monster near the character?
  SearchByFaction&#40;3&#41;;
  if&#40;SearchIndex ~= 0 and SearchDistance &#60; 100&#41; then
   return;
  end

  -- monster blocks the way?
  if&#40;IsMoving == 0&#41; then
   return;
  end
 end
end
--####################################################--
function FinishRoute&#40;&#41;
 Sleep&#40;2000&#41;
 GoToZone&#40;32&#41;;
 Sell&#40;&#41;;
 EnterMission&#40;&#41;;
 Sleep&#40;12000&#41;;
end
--####################################################--
function GoToZone&#40;zone&#41;
 TravelToZone&#40;zone&#41;;
 Sleep&#40;5000&#41;;
 while&#40;PlayerX == 0&#41; do
  Sleep&#40;100&#41;;
 end
 Sleep&#40;5000&#41;;
end
--####################################################--
function TargetNpc&#40;x, y&#41;

 SearchIndex = 0;

 while&#40;SearchIndex == 0&#41; do
  SearchByCoord&#40;x, y&#41;;
  Sleep&#40;200&#41;;
 end

 TargetByIndex&#40;0, SearchIndex&#41;;
end
--####################################################--
-- entry point
main&#40;&#41;;
06/01/2007 13:45 Busti#13
Ist Requia in c++ geschrieben ?
06/01/2007 13:50 Bl@ze!#14
Frag Harko selbst :)
06/01/2007 15:17 Term!nX#15
Quote:
Originally posted by Busti@Jun 1 2007, 13:45
Ist Requia in c++ geschrieben ?
Ja die DLLs schon aber auch mit inline asm.

Ja 500? sind soo nicht viel, aber für einen Bot, der nichtmal multiclienting unterstützt, derbst übertrieben.