Zobacz koniecznie!
Navigation » Botting.pl - Botowanie to przecież nie przestępstwo > Muttley Bot > Ogólne o Muttlet Bot » [Mini-poradnik] Pisanie skryptów + porady

Odpowiedz
 
Narzędzia tematu Wygląd tematu
Stary 09-08-10, 20:16   #1
muttley
PWJ Na 200%
 
muttley's Avatar
 
Data dołączenia: Sep 2008
Skąd: Tczew
Posty: 1,384
Podziękowań: 35
Podziękowano mu 152 razy w 74 postach.
muttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubiany
Standardowy [Mini-poradnik] Pisanie skryptów + porady

Witam,

jako że w v0.15 udało mi się dodać dopracowanego skryptera chcę tu napisać nieco o skryptach.
Same skrypty są pisane w języku C# dlatego przydadzą Wam się wszystkie umiejętności związane z programowaniem.

http://si-szarp.pl/kurs/pierwszy-program

Na tej stronie możecie znaleźć nieco porad dotyczących C#, możecie też do obróbki skryptów używać edytora takiego jak Notepad++(http://notepad-plus-plus.org/)

Różnica jest taka, że nie dodajemy już "początku", czyli nasz kod zamiast wyglądać tak:

Kod:
using System;

namespace LoL
{
  class Lol
  {
    void LOL
    {
      core.Client.Process.Kill();
    }
  }
}
będzie wyglądać tak:

Kod:
core.Client.Process.Kill();
Całość jest dosyć prosta, ale na pewno będzie niezrozumiała dla początkującego.
Sam jestem samoukiem, więc najprawdopodobniej będę często wstawiał skrypty do działu skrypty do analizy.
Dzięki takiemu narzędziu mamy zawartą w tym całą potęgę platformy .NET, dlatego postaram się nieco opisać:

Do każdego miejsca dostajemy się poprzez kropki np. core.Client.

Zaczynamy od "core", czyli rdzenia całego bota:



Jak widzimy mamy tu dostępne:

Client - rzeczy odpowiedzialne za modyfikacje w kliencie czyli procesie gry
Modules - moduły rdzenia, nie opiszę ich zbytnio, dodam tylko, że wpisując
Kod:
core.Modules.EatFoodFromGround = true;
możemy włączyć zjadanie jedzenia z podłogi (na około nas)
Player - jak sama nazwa wskazuje - "Gracz" - mamy tam bardzo dużo rzeczy do zarządzania tym co robi gracz

Idąc dalej, do "Client" możemy wybrać:


AttackMode - typ ataku (Full Attack, Balanced, Full Defense), jak ustawić zapraszam do SetModes
BattleList - bardzo przydatna rzecz - możemy tam znaleźć listę wszystkich stworzeń w pobliżu (obszar nieco ponad ekran + 2 poziomy (1 nad nami i 1 pod))

Jak widzimy mamy tutaj metodę GetCreatures - używamy jej w taki sposób
Kod:
core.Client.BattleList.GetCreatures();
Tylko, że zwrócenie jej w taki sposób niczego nam nie da, trzeba ją do czegoś przypisać, dlatego dodamy tablicę "Tibia.Objects.Creature":
Kod:
Tibia.Objects.Creature[] potwory = core.Client.BattleList.GetCreatures();
Dzięki temu "potwory" zawierają aktualną listę stworzeń w pobliżu, możemy teraz bardzo prosto sprawdzić, czy obok nas nie biega jakiś gracz.
Do tych stworzeń należy wszystko co możemy spotkać w Tibii, czyli: NPC/Gracze/Potwory (NPC i Potwory mają identyczne "Type", to oznacza, że nie można ich ze sobą rozróżnić za pomocą tej wartości)
Tu odnosimy się do klasy Tibia.Objects.Creature - dzięki niej mamy bardzo dużo informacji dotyczących potwora

Addon - to jak wiemy są addony, czyli dodatki do stroju, możemy je zmienić zapisując wartość za pomocą wartośći OutfitAddon:
Kod:
.Addon = Tibia.Constants.OutfitAddon.None/First/Second/Both;
Address - czyli miejsce w pamięci Tibii, nie znajduję tu większego zastosowania dla skryptów
Approach - jest to metoda (działanie), dzięki której postać idzie do losowej kratki obok potwora
Kod:
.Approach();
Attack - czy jest po co to komentować?
Kod:
.Attack();
BodyColor - kolor ciała stworzenia, tu z pomocą przychodzi wartość OutfitColor, możemy ją ustawiać:
Kod:
.BodyColor = Tibia.Constants.OutfitColor.Red/Orange/Yellow/Green/Blue/Purple/Brown/Black/White/Pink/Grey/Peach
Direction - czyli kierunek w którym zwrócony jest potwór, tylko do odczytu, wartość jest zwracana za pomocą Tibia.Constants.Direction
Kod:
if (currentCreature.Direction == Tibia.Constants.Direction.Up/Left/Right/Down)
			{
				System.Windows.Forms.MessageBox.Show("Potwór patrzy tak");
			}
Distance - zwraca nam dystans do stworzenia (gracz-stwór)
Kod:
if (currentCreature.Distance() >= 10)
			//Dystans jest większy niż 10 kratek
DistanceBetween - zwraca nam dystans pomiędzy potworem a czymś innym, używając tego musimy podać miejsce do którego się odnosimy za pomocą Tibia.Objects.Location
Kod:
Tibia.Objects.Location pewneMiejsce = new Tibia.Objects.Location(32887, 32578, 7);
		if (currentCreature.DistanceBetween(pewneMiejsce) >= 10)
			//Dystans jest większy niż 10 kratek
FeetColor - kolor stóp - używamy tak samo jak BodyColor
Kod:
.FeetColor = Tibia.Constants.OutfitColor...
Follow - nie potrzeba mówić
Kod:
.Follow();
HeadColor - tak samo jak BodyColor czy FeetColor
Kod:
.HeadColor = Tibia.Constants.OutfitColor...
HPBar - procent HP stwora - tylko do odczytu, choć w ramach zabawy można zmodyfikować, ale grozi debugiem
Kod:
if (currentCreature.HPBar <= 30)
			//Prawie trup
Id - id potwora
Kod:
if (currentCreature.Id == core.Player.Id)
			//To ja
InParty - sprawdza czy dany stwór jest akurat w Party (widzimy tylko te, do których należymy)
Kod:
if (currentCreature.InParty())
			//Jeśli stwór jest w Party
		else
			//Co jeśli nie jest
IsAttacking - sprawdzanie czy atakuje - tak jak wyżej
IsBlocking - czy możemy przeniknąć przez stwora - tak jak wyżej
IsReachable - czy możemy dojść do stwora "po prostej", czyli bez zmiany poziomu - tak jak wyżej
IsSelf - sprawdza czy stwór nie jest graczem - tak jak wyżej
IsWalking - sprawdza czy stwór się porusza - tak jak wyżej
LegsColor - kolor nóg - tak jak w HeadColor, BodyColor, FeetColor
Light - siła światła bijącego od stwora - możemy zmieniać od 0 do 27 lub za pomocą LightSize:
Kod:
.Light = Tibia.Constants.LightSize.None/Torch/Full
LightColor - czyli kolor bijącego światła - używamy LightColor
Kod:
.LightColor = Tibia.Constants.LightSize.Default/None/Orange/White
Location - położenie stwora, mamy parametry X, Y, Z
Look - działa tak samo jak Look w kliencie, co tu opisywać
Name - nie trzeba komentować
OutfitType - rodzaj outfitu potwora - liczba
Kod:
.OutfitType = Tibia.Constants.OutfitType.<Tu podajemy nazwę outfitu (ludzkiego bądź potwora) bez spacji>
PartyShield - rodzaj tarczy Party
Skull - czaszka
Kod:
.Skull = Tibia.Constants.Skull.None/White/Red/Black/Green/Yellow
Type - rodzaj stwora - opisywałem to na początku
Kod:
if (currentCreature.Type == Tibia.Constants.CreatureType.NPC (również potwór)/Player)
			//Co jeśli tak
WalkSpeed - 220 + (level * 2)
WarIcon - ikonka podczas wojny
Kod:
.WarIcon = Tibia.Constants.WarIcon.Blue/Green/None/Red
X,Y,Z - współrzędne
W przykładach, gdzie podawałem zaczynając od kropek miałem na myśli "dostawianie do reszty", natomiast currentCreature to przykład
Bogatsi o tą wiedzę możemy stworzyć prosty skrypt sprawdzający czy nie ma w pobliżu pewnego gracza
Użyjemy pętli foreach
Kod:
foreach (Tibia.Objects.Creature c in core.Client.BattleList.GetCreatures())
	{
		if (c.Name == "Omega Arek")
		{
			System.Media.SoundPlayer alert = new System.Media.SoundPlayer(System.Windows.Forms.Application.StartupPath + @"\alert.wav");
			alert.Play();
		}
	}
Ten kod sprawdzi, czy na battleliście nie znajduje się wspomniany gracz i jeśli tak to odtworzy alert.wav z katalogu bota.
Close - zamyka klienta
Kod:
core.Client.Close();
Console - narzędzie do "say'a"
.Say - możemy dzięki temu wypowiedzieć tekst lub utworzyć specjalną wiadomość
Kod:
core.Client.Console.Say("wiadomość");
Kod powyżej wypowiada wiadomość na głównym czacie

Ten kod z kolei będzie wypowiadać wiadomość na jednym z kanałów, zależnie jaki wybierzemy.
Kod:
core.Client.Console.Say(ChatMessage.CreateChannelMessage("wiadomość", Tibia.Constants.ChatChannel.Guild/Party/Gamemaster/Tutor/RuleReport/Game/Trade/TradeRook/RealLife/Help/OwnPrivate));
Natomiast kod poniżej będzie wypowiadał wiadomość na kanale default (chyba, że wybierzemy kanał NPC), lecz można dodać dodatkowe atrybuty, np. krzyczenie czy szept, ale też kanał NPC
Kod:
core.Client.Console.Say(ChatMessage.CreateNormalMessage("wiadomość", Tibia.Constants.SpeechType.Say/Whisper/Yell/PrivatePlayerToNPC));
Ten kod będzie służyć do pisania prywatnych wiadomości
Kod:
core.Client.Console.Say(ChatMessage.CreatePrivateMessage("wiadomość", "odbiorca"));
FollowMode - tak jak w AttackMode, odsyłam do SetModes
GetHotkey - zwraca nam Tibia.Objects.Hotkey - możemy dzięki temu modyfikować hotkeye. Mamy 36 hotkeyów (0-11 F1-F12, 12-23 Ctrl F1-F12, 24-35 Shift F1-F12)

Możemy modyfikować Hotkeye bez deklarowania ich
Kod:
core.Client.GetHotkey((byte)0).ObjectId = 3031;
	core.Client.GetHotkey((byte)0).ObjectUseType = HotkeyObjectUseType.UseOnTarget/UseOnSelf/WithCrosshairs;
	core.Client.GetHotkey((byte)0).Text = "lol";
	core.Client.GetHotkey((byte)0).SendAutomatically = true;
Tym kodem zmodyfikowałem hotkey F1
GetPlayer - zwraca nam Tibia.Objects.Player - możemy zrobić coś takiego:
Kod:
Tibia.Objects.Player p = core.Client.GetPlayer();
Dzięki temu mamy "skrót" do core.Player
Input - możemy dzięki temu klikać w okno Tibii oraz naciskać klawisze

Ten kod klika we współrzędne 20x20 (na ekranie)
Kod:
core.Client.Input.Click(20,20);
Z kolei w ten sposób wciskamy F1
Kod:
core.Client.Input.SendKey(Keys.F1);
Dzięki temu możemy stworzyć nasz własny system leczenia oparty o hotkeye (to co robi GhostBot czy Blackd Safe) w samym skrypterze.
__________________
muttley jest offline   Reply With Quote
Stary 09-08-10, 20:17   #2
muttley
PWJ Na 200%
 
muttley's Avatar
 
Data dołączenia: Sep 2008
Skąd: Tczew
Posty: 1,384
Podziękowań: 35
Podziękowano mu 152 razy w 74 postach.
muttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubiany
Standardowy

Inventory - kolejna klasa - pozwala nam ona na operacje związane z inwentarzem postaci

CountItems - liczy przedmioty, zwraca liczbę (int)
Kod:
int liczbaZlota = core.Client.Inventory.CountItems(3031);
GetContainer - zwraca pojemnik, jest 1 parametr - numer w bajtach (kontener 1 ma numer 0, kontener 2 ma 1 itd.)
Kod:
Tibia.Objects.Container mainBP = core.Client.Inventory.GetContainer((byte)0);
GetContainerItems - zwraca przedmioty w pojemnik - tak samo jak wyżej 1 parametr
Kod:
Tibia.Objects.Item[] mainBPItems = core.Client.Inventory.GetContainerItems((byte)0);
GetContainers - zwraca wszystkie kontenery
Kod:
Tibia.Objects.Container[] containers = core.Client.Inventory.GetContainers();
GetItemInSlot - zwraca Tibia.Objects.Item w danym slocie
Kod:
Tibia.Objects.Item itemwSlocie = core.Client.Inventory.GetItemInSlot(Tibia.Constants.SlotNumber.Head/Backpack/Necklace/Left/Right/Armor/Legs/Ring/Ammo/Feet);
GetItems - zwraca wszystkie przedmioty z otwartych kontenerów
NumberContainers - numeruje kontenery - w nawiasie piszemy nazwę + "\\#"
Kod:
core.Client.Inventory.NumberContainers("BP \\#");
Stack - łączy wszystkie itemy w plecakach
Kod:
core.Client.Inventory.Stack();
UseItem - używa itemu o danym id
Kod:
core.Client.Inventory.UseItem(266);
UseItemOnCreature - używa itemu o danym id na potworku o danym id
Kod:
core.Client.Inventory.UseItem(266, (byte)0, core.Player.Id);
UseItemOnSelf - używa itemu na nas, takie samo użycie jak UseItem
UseItemOnTile - używa itemu na kratce, np. klucza na drzwiach
Kod:
Tibia.Objects.Tile t = core.Client.Map.GetTile(new Location(33333,33333,7));
	core.Client.Inventory.UseItemOnTile(1111, t);
LastSeenCount - liczba - ilość itemu, na który ostatnio dawaliśmy Look
LastSeenId - liczba - id itemu, na który...
LastSeenText - ciąg znaków (string) - text itemu, na który...
LoggedIn - zwraca wartość, czy jesteśmy zalogowani
Kod:
if (core.Client.LoggedIn)
		//
Login - klasa dająca nam możliwość logowania się, nie ma potrzeby jej używać, jest wbudowany skrypt logujący, który jest zabezpieczony przed zacinaniem się
Logout - muszę to komentować?
Kod:
core.Client.Logout();
Map - klasa dająca nam możliwości otrzymywania "kratek"

GetTile - zwraca kratkę (Tibia.Objects.Tile) w danym miejscu, jeden parametr - location
Kod:
Tibia.Objects.Tile t = core.Client.Map.GetTile(new Location(33333,33333,7));
GetTiles - zwraca wszystkie kratki będące aktualnie w pamięci
Kod:
Tibia.Objects.Tile[] t = core.Client.Map.GetTiles();
GetTilesOnSameFloor - zwraca wszystkie kratki na naszym poziomie (nieco ponad obszar ekranu)
Kod:
Tibia.Objects.Tile[] floorWithPlayer = core.Client.Map.GetTilesOnSameFloor();
GetTileWithPlayer - zwraca kratkę z graczem
Kod:
Tibia.Objects.Tile playerTile = core.Client.Map.GetTileWithPlayer();
Memory - klasa pozwalająca nam zapisywać i odczytywać wartości z pamięci - nie opiszę jej, będzie od tego oddzielny poradik
PlayerLocation - zwraca nam Location gracza
Process - System.Diagnostics.Process - możemy tam się bawić takimi rzeczami jak priority, ale jej też nie opiszę - na potrzeby skryptów nic tam nie ma
ProcessHandle - uchwyt procesu, jeśli będziemy używać WinAPI może się przydać
SetModes - metoda pozwalająca ustawić nam AttackMode i FollowMode
Kod:
core.Client.SetModes(Tibia.Constants.Attack.Balance/FullAttack/FullDefence, Tibia.Constants.Follow.DoNotFollow/FollowClose);
Status - zwraca nasz status (zalogowany, niezalogowany)
Kod:
if (core.Client.Status == Tibia.Constants.LoginStatus.LoggedIn/NotLoggedIn/LoggingIn)
	{
	}
Statusbar - to ten pasek, gdzie pokazują się w okienku Tibii białe wiadomości, można je bardzo prosto tam wysyłać
Kod:
core.Client.Statusbar = "Pozdrowienia od bottera";
Version - wersja Tibii - ciąg znaków - np. "8.60"
VersionNumber - wersja Tibii jako numer (np. 860)
Window - klasa pozwalająca na manipulację oknem Tibii

Activate - aktywuje okno Tibii - powoduje, że okno będzie się znajdować na samej górze
Flash - miga na pasku zadań
IsActive - zwraca czy Tibia jest zaznaczona
IsMaximized - czy Tibia jest zmaxymalizowana
IsMinimized - czy jest zminimalizowana
IsTopMost - czy będzie zawsze na wierzchu
IsVisible - czy jest widoczna
Maximize - maksymalizuje Tibię
Minimize - minimalizuje Tibię
Title - można tym edytować tytuł Tibii np.
Kod:
if (core.Client.LoggedIn)
		core.Client.Window.Title = "Mam " + core.Player.Health.ToString() + " HP oraz " + core.Player.Mana.ToString() + " many.";
	else
		core.Client.Window.Title = "Wylogowany";
Tu zakończyłem omawiać Client, przejdźmy teraz do Player


Addon - to jak wiemy są addony, czyli dodatki do stroju, możemy je zmienić zapisując wartość za pomocą wartośći OutfitAddon:
Kod:
core.Player.Addon = Tibia.Constants.OutfitAddon.None/First/Second/Both;
Axe - Skill gracza w użyciu Toporów
AxePercent - Procent wbitego skilla
BodyColor - kolor ciała stworzenia, tu z pomocą przychodzi wartość OutfitColor, możemy ją ustawiać:
Kod:
core.Player.BodyColor = Tibia.Constants.OutfitColor.Red/Orange/Yellow/Green/Blue/Purple/Brown/Black/White/Pink/Grey/Peach
Capacity - capacity gracza
CapacityVisible - widoczne capacity gracza (to co widzimy w oknie Tibii)
Club - Skill gracza w użyciu Obuchów
ClubPercent - Procent wbitego skilla
Direction - czyli kierunek w którym zwrócony jest potwór, tylko do odczytu, wartość jest zwracana za pomocą Tibia.Constants.Direction
Kod:
if (core.Player.Direction == Tibia.Constants.Direction.Up/Left/Right/Down)
	{
		System.Windows.Forms.MessageBox.Show("Potwór patrzy tak");
	}
Distance - Skill gracza w użyciu Broni dystansowych
DistanceBetween - zwraca nam dystans pomiędzy potworem a czymś innym, używając tego musimy podać miejsce do którego się odnosimy za pomocą Tibia.Objects.Location
Kod:
Tibia.Objects.Location pewneMiejsce = new Tibia.Objects.Location(32887, 32578, 7);
if (core.Player.DistanceBetween(pewneMiejsce) >= 10)
	//Dystans jest większy niż 10 kratek
DistancePercent - Procent wbitego skilla
Experience - zdobyte doświadczenie
FeetColor - kolor stóp - używamy tak samo jak BodyColor
Kod:
core.Player.FeetColor = Tibia.Constants.OutfitColor...
Fishing - Skill gracza w użyciu wędki
FishingPercent - Procent wbitego skilla
Fist - Skill gracza w użyciu pięści
FistPercent - Procent wbitego skilla
GoTo - bardzo ciekawa metoda, pozwala nam na ruch postaci w dane miejsce
Kod:
core.Player.GoTo = new Location(-1,-1,-1);
HeadColor - tak samo jak BodyColor czy FeetColor
Kod:
core.Player.HeadColor = Tibia.Constants.OutfitColor...
Health - życie gracza
HealthMax - maxymalny poziom życia gracza
HPBar - procent HP - tylko do odczytu, choć w ramach zabawy można zmodyfikować, ale grozi debugiem
Kod:
if (core.Player.HPBar <= 30)
	//Prawie trup
Id - id gracza
IsSelf - sprawdza czy stwór nie jest graczem - tak jak wyżej
IsWalking - sprawdza czy stwór się porusza - tak jak wyżej
LegsColor - kolor nóg - tak jak w HeadColor, BodyColor, FeetColor
Level - poziom gracza
LevelPercent - procent wbitego poziomu
Light - siła światła bijącego od stwora - możemy zmieniać od 0 do 27 lub za pomocą LightSize:
Kod:
core.Player.Light = Tibia.Constants.LightSize.None/Torch/Full
LightColor - czyli kolor bijącego światła - używamy LightColor
Kod:
core.Player.LightColor = Tibia.Constants.LightSize.Default/None/Orange/White
Location - położenie stwora, mamy parametry X, Y, Z
MagicLevel - Skill gracza w użyciu Magii
MagicLevelPercent - Procent wbitego skilla
Mana - mana gracza
ManaMax - maxymalny poziom many gracza
Name - nie trzeba komentować
OutfitType - rodzaj outfitu potwora - liczba
Kod:
core.Player.OutfitType = Tibia.Constants.OutfitType.<Tu podajemy nazwę outfitu (ludzkiego bądź potwora) bez spacji>
PartyShield - rodzaj tarczy Party
SetOutfit - pozwala nam ustawić outfit (tylko takie jakie ma odblokowana dana postać)
Kod:
core.Player.SetOutfit(new Outfit((ushort)Tibia.Constants.OutfitType.CitizenMale, (byte)0, (byte)0, (byte)0, (byte)0, (byte)0));
Shielding - Skill gracza w użyciu Tarczy
ShieldingPercent - Procent wbitego skilla
Skull - czaszka
Kod:
core.Player.Skull = Tibia.Constants.Skull.None/White/Red/Black/Green/Yellow
Soul - ilość souli gracza
Stamina - ilość staminy gracza (minuty)
Stop - zatrzymuje gracza (jeśli idzie)
Kod:
core.Player.Stop();
Sword - Skill gracza w użyciu Miecza
SwordPercent - Procent wbitego skilla
TargetId - Id celu, który atakuje gracz
Turn - obraca gracza w daną stronę
Kod:
core.Player.Turn(Tibia.Constants.Direction.Up);
Walk - rusza gracza w daną stronę
Kod:
core.Player.Turn(Tibia.Constants.Direction.UpLeft);
Tu w przeciwieństwie do turn mamy jeszcze ruchy po przekątnych
WalkSpeed - 220 + (level * 2)
WarIcon - ikonka podczas wojny
Kod:
.WarIcon = Tibia.Constants.WarIcon.Blue/Green/None/Red
WorldName - nazwa świata gracza
X,Y,Z - współrzędne

Właśnie przebrnęliśmy przez dość sporą dokumentację i poradnik, dzieki którym masz podstawy do stworzenia na prawdę zaawansowanych skryptów. Teraz tylko pisać + pytać na forum ;)
__________________
muttley jest offline   Reply With Quote
Stary 10-08-10, 17:47   #3
Denosis
Beginner
 
Denosis's Avatar
 
Data dołączenia: Jul 2010
Posty: 42
Podziękowań: 1
Podziękowano mu 6 razy w 2 postach.
Denosis jest dość znany
Standardowy

Mini Poradnik ? Powinien się nazywać MEGA :D

Dzięki za to , pobawie się :)
Denosis jest offline   Reply With Quote
Stary 24-08-10, 17:49   #4
rafek1241
Banned
 
Data dołączenia: May 2009
Posty: 19
Podziękowań: 0
Podziękowano mu 0 razy w 0 postach.
rafek1241 jeszcze nie znają
Standardowy

Słuchaj mam sprawę. A więc, jak zrobić w programie (notepad ++) żeby pokazywał możliwe funkcje takie jak na obrazku (czy ty korzystasz z innego programu. Jeśli tak, to jakiego).

rafek1241 jest offline   Reply With Quote
Stary 24-08-10, 21:04   #5
muttley
PWJ Na 200%
 
muttley's Avatar
 
Data dołączenia: Sep 2008
Skąd: Tczew
Posty: 1,384
Podziękowań: 35
Podziękowano mu 152 razy w 74 postach.
muttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubianymuttley jest znany i lubiany
Standardowy

Używam Visual Studio, możesz sobie zrobić projekt Tibiaapi i z tego robić
__________________
muttley jest offline   Reply With Quote
Stary 27-08-10, 13:53   #6
adammmos
Newbie
 
Data dołączenia: Aug 2010
Posty: 8
Podziękowań: 0
Podziękowano mu 0 razy w 0 postach.
adammmos jeszcze nie znają
Standardowy

Ja mam takie pytanie związane z cavebotem, nie widziałem gdzie je napisać, to dałem je tutaj, otóz w elfie była opcja "walk" przy której bot przechodził przez ten WPT bez stawania, a w muttleybocie nie mogę nic takiego znaleźć, jest taka opcja? (I przy Stand, i przy Node bot staje na jakiś czas :/)
adammmos jest offline   Reply With Quote
Stary 27-08-10, 14:26   #7
Kristo
Beginner
 
Data dołączenia: Feb 2009
Posty: 69
Podziękowań: 4
Podziękowano mu raz, w jednym poście.
Kristo jeszcze nie znają
Standardowy

Też mam z tym problem - zawsze przystaje na 2 sek ;/
Pobociłbym a tu elfa nie ma ;/ muttley mi sie coś wali i po jakimś czasie zacina;/
Kristo jest offline   Reply With Quote
Stary 27-08-10, 21:35   #8
adammmos
Newbie
 
Data dołączenia: Aug 2010
Posty: 8
Podziękowań: 0
Podziękowano mu 0 razy w 0 postach.
adammmos jeszcze nie znają
Standardowy

@up dokładnie, niezależnie co robię po jakimś czasie wywala mi komunikat w deseń winodowsowego "aplikacja nie odpowiada" czy coś w tym stylu, ale trochę się różni, nie wiem ocb.
adammmos jest offline   Reply With Quote
Stary 28-08-10, 11:36   #9
przemo098
Newbie
 
Data dołączenia: Jun 2010
Posty: 16
Podziękowań: 0
Podziękowano mu 0 razy w 0 postach.
przemo098 jeszcze nie znają
Standardowy

a nie można by zrobić tak żeby to piasło się jak w elfbocie xD ?
przemo098 jest offline   Reply With Quote
Stary 28-08-10, 16:21   #10
matigi12
Newbie
 
Data dołączenia: Mar 2010
Posty: 8
Podziękowań: 0
Podziękowano mu 0 razy w 0 postach.
matigi12 jeszcze nie znają
Standardowy

Że tak powiem nie, bo to jest pisane w innym języku. To jest w C# a elf w C++ podobno, NG Pascal
matigi12 jest offline   Reply With Quote
Odpowiedz

Tagi
miniporadnik, pisanie, porady, skryptów

Narzędzia tematu
Wygląd tematu

Zasady Postowania
Nie możesz tworzyć nowych tematów
Nie możesz pisać odpowiedzi.
Nie możesz dodawać załączników
Nie możesz edytować swoich postów

BB code jest włączone
Emotikonywłączone
Kod [IMG] jest włączone
Kod HTML jest wyłączony

Skocz do


no new posts