FAQ
Szukaj
Użytkownicy
Grupy
Galerie
Rejestracja
Profil
Zaloguj się, by sprawdzić wiadomości
Zaloguj
Forum www.89x76x100x247.fora.pl Strona Główna
->
Newsy
Napisz odpowiedź
Użytkownik
Temat
Treść wiadomości
Emotikony
Więcej Ikon
Kolor:
Domyślny
Ciemnoczerwony
Czerwony
Pomarańćzowy
Brązowy
Żółty
Zielony
Oliwkowy
Błękitny
Niebieski
Ciemnoniebieski
Purpurowy
Fioletowy
Biały
Czarny
Rozmiar:
Minimalny
Mały
Normalny
Duży
Ogromny
Zamknij Tagi
Opcje
HTML:
TAK
BBCode
:
TAK
Uśmieszki:
TAK
Wyłącz HTML w tym poście
Wyłącz BBCode w tym poście
Wyłącz Uśmieszki w tym poście
Kod potwierdzający: *
Wszystkie czasy w strefie EET (Europa)
Skocz do:
Wybierz forum
Regulamin
----------------
Regulamin Forum
Newsy
----------------
Newsy
Wszyskie INFO o OTSie
Konkursy
Fotki
----------------
Fotki
Gildie
----------------
Gildie
Nowe Czary
----------------
Palladyn
Druid
Knight
Sorcerer
Hyde Park
----------------
Hyde Park
Archiwum
Czarny Rynek
----------------
Kupie
Zamienie
Sprzedam
Filmy
----------------
Filmiki
Przegląd tematu
Autor
Wiadomość
White Fang
Wysłany: Pią 11:16, 23 Lis 2007
Temat postu:
GM nie wiem czy tutaj mam pisac ale czy mógłbys dac tutaj skrypty na wieszanie tych wszystkich swiatecznych dekoracji plax
Gertus
Wysłany: Pon 15:02, 05 Lis 2007
Temat postu:
Sory Ja jusz Takich Posow NIe bende Pisal ^^
John
Wysłany: Pon 8:42, 05 Lis 2007
Temat postu:
(cenzura) - niby ja ci mówiłem, żebyś w all tematch pisał?? Za kłamstwo 1 ostrzeżenie !!! A po 2 to usuwam noobposty
Magro
Wysłany: Nie 17:33, 04 Lis 2007
Temat postu:
Gertus (cenzura) ci zara leb ty (cenzura) nabijaczu postow napierdalsz bezsensu w kazdym temacie....
Podaj tylko nick w grze to cie udupie bo to wkurwiajace.....
Gertus
Wysłany: Nie 15:22, 04 Lis 2007
Temat postu:
Heh FaJne ;P
Gaara
Wysłany: Pią 22:49, 02 Lis 2007
Temat postu:
napweno
White Fang
Wysłany: Nie 22:10, 28 Paź 2007
Temat postu:
Witam wszystkich wlasnie postanowilem dac wam skrypt na zucanie pnaczy w runie!!! testujce i wypowiadajcie sie na ten temat
dosc gadania pora zaczynac:
w folderze ots/data/spells/scripts/tworzymy plik o nazwie chwast a do niego wklejamy to:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1499)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
nastepnie w folderze ots/data/spells/spells.xml i pod kategoria
"<!-- runes --> " wklejamy taka linijke:
<rune name="Chwast" id="2276" charges="10" blocktype="all" maglv="5" exhaustion="1" enabled="1" allowfaruse="1" script="chwast.lua" />
Jezeli chcemy by ten czar mogli tworzyc np. druidzi to w folderze ots/data/spells/spells.xml/pod kategoria
<!-- conjure spells --> dodajemy taka linijke:
<conjure name="Chwast" words="niech sie stanie chwast" reagentId="2260" conjureId="2276" aggressive="0" conjureCount="10" maglv="55" mana="1000" soul="0" prem="1" enabled="1" function="conjureRune">
<vocation id="2" />
<vocation id="6" />
<vocation id="9" />
</conjure>
wtedy druidzi posiadajacy 55 maglv beda mogli tworzyc ta rune
Mam nadzieje ze komus sie przyda (dobre do pk)
White Fang
Wysłany: Nie 22:09, 28 Paź 2007
Temat postu:
jest to skok, działa on tym sposobem, że dajemy actionid podane w skrypcie nad rzeczką, wtedy się przeskakuje rzeczkę. można ustawić w którą stronę się skacze, jest 5 stron:
south - na dół
north - na górę
west - w lewo
east - w prawo
auto - w tą stronę, w którą się idzie. ; p
reszta jest już w skrypcie. ; P
w data/movements/movements.xml dodajemy:
Cytuj:
<movevent event="StepIn" itemid="102" script="skok.lua" />
pogrubione jest id podłogi z której się wyskakuje, można zrobić kilka takich linijek z innymi id.
teraz w data/movements/scripts tworzymy skok.lua
Cytuj:
function skok(cid, o_ile, dir)
if(dir=='north')then
whatDir = 0
elseif(dir=='east')then
whatDir = 1
elseif(dir=='south')then
whatDir = 2
elseif(dir=='west')then
whatDir = 3
elseif(dir=='auto')then
whatDir = getPlayerLookDir(cid)
end
local newpos = getPlayerPosition(cid)
if(whatDir==1)then
newpos.x = newpos.x + o_ile
elseif(whatDir==2)then
newpos.y = newpos.y + o_ile
elseif(whatDir==3)then
newpos.x = newpos.x - o_ile
elseif(whatDir==0)then
newpos.y = newpos.y - o_ile
end
doTeleportThing(cid, newpos)
end
function onStepIn(cid, item, pos)
local actiony = {562, 561,563,564,565} -- id podlogi z ktorej skaczemy
local o_ile = {4, 3,1,4,6} -- o ile ma skoczy
local strona = {'north', 'auto', 'south', 'east', 'west'} -- strona w ktora ma teleportowac
for i=1, #actiony do
if(item.actionid==actiony[i])then
skok(cid, o_ile[i], strona[i])
doPlayerSay(cid, 'JUMP!', 16)
end
end
end
pozdro. ; )
White Fang
Wysłany: Nie 22:07, 28 Paź 2007
Temat postu:
Autor: Duda1992
Groundshaker
Tworzymy plik gs.lua, a do zawartości wklejamy (nazwa ots\data\spells\scripts)
Kod:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 34)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, -0.2, -20, -0.5, 0)
local arr = {
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 3, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0}
}
local area = createCombatArea(arr)
setCombatArea(combat, area)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
endFierce Berserk
Tworzymy plik exori_gran.lua, a do zawartości wklejamy (nazwa ots\data\spells\scripts)
Kod:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.4, -45, -1.8, 0)
local arr = {
{1, 1, 1},
{1, 2, 1},
{1, 1, 1}
}
local area = createCombatArea(arr)
setCombatArea(combat, area)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
endWhirlwind trow
Tworzymy plik whirlwind.lua, a do zawartości wklejamy (nazwa ots\data\spells\scripts)
Kod:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_DRAWBLOOD)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WEAPONTYPE)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, -0.9, 0)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
endA do global.lua doklejamy (nazwa ots\data\global.lua)
Kod:
CONST_ANI_WEAPONTYPE = 254Ethereal Spear
Tworzymy plik ethereal.lua, a do zawartości wklejamy (nazwa ots\data\spells\scripts)
Kod:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_DRAWBLOOD)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 27)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, -1.2, 0)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
Teraz otwieramy spells.xml i doklejamy (nazwa ots\data\spells.xml)
Kod:
--By Duda1992
<instant name="exori mas" words="exori mas" lvl="33" maglv="4" mana="160" exhaustion="1" prem="1" enabled="1" script="gs.lua">
<vocation id="8"/>
</instant>
<instant name="exori gran" words="exori gran" lvl="70" maglv="5" mana="340" exhaustion="1" prem="1" enabled="1" script="exori_gran.lua">
<vocation id="8"/>
</instant>
<instant name="Whirlwind" words="exori hur" needtarget="1" needWeapon="1" soul="0" exhaustion="1" prem="1" enabled="1" script="whirlwind.lua">
<vocation id="8"/>
<vocation id="4"/>
</instant>
<instant name="Ethereal Spear" words="exori con" needtarget="1" needWeapon="1" soul="0" exhaustion="1" prem="1" enabled="1" script="etherear.lua">
<vocation id="3"/>
<vocation id="7"/>
</instant>
Mała literówka
W drugim skrypcie "local", a nie "ocal" xD. Skrypciki mi się bardzo przydadzą. Killavus zawsze się czegoś musi przyczepić ;] Weź zrób Dedacza 2.4 na Tibię 8.0 lepiej
White Fang
Wysłany: Nie 22:04, 28 Paź 2007
Temat postu:
Witam! Znalazłem na jakimś forum skrypt, który sprawia że możemy robić z roślin proszki lecznicze/paraliżujące/dające manę/trujące przy użyciu obsidian knife i blessed wooden stake.
Lecimy. W data -> actions -> scripts stwórz plik Obsidian Knife.lua i wklej tam to:
Kod:
function onUse(cid, item, frompos, item2, topos)
if item2.itemid == 0 then
return 0
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 2881 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,2882)
doPlayerAddItem(cid,5948,1)
elseif item2.itemid == 2881 and random >= 1 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,2882)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 3104 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,3105)
doPlayerAddItem(cid,5877,1)
elseif item2.itemid == 3104 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,3105)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 2830 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,2831)
doPlayerAddItem(cid,5878,1)
elseif item2.itemid == 2830 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,2831)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 2876 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,2877)
doPlayerAddItem(cid,5878,1)
elseif item2.itemid == 2876 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,2877)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 2871 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,2872)
doPlayerAddItem(cid,5878,1)
elseif item2.itemid == 2871 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,2872)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 2866 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,2867)
doPlayerAddItem(cid,5878,1)
elseif item2.itemid == 2866 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,2867)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 4256 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,4257)
doPlayerAddItem(cid,5876,1)
elseif item2.itemid == 4256 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,4257)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 4259 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,4260)
doPlayerAddItem(cid,5876,1)
elseif item2.itemid == 4259 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,4260)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 4262 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,4263)
doPlayerAddItem(cid,5876,1)
elseif item2.itemid == 4262 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,4263)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 2931 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,2932)
doPlayerAddItem(cid,5893,1)
elseif item2.itemid == 2931 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,2932)
end
end
random = math.random(1,15)
if getPlayerLevel(cid) >= 8 then
if item2.itemid == 3031 and random == 1 then
doSendMagicEffect(topos, 12)
doTransformItem(item2.uid,3032)
doPlayerAddItem(cid,5925,1)
elseif item2.itemid == 3031 and random >= 2 then
doSendMagicEffect(topos, 3)
doTransformItem(item2.uid,3032)
end
end
return 1
endNo i musisz jeszcze dorobić w actions.xml
Kod:
<!-- Ob Knife & blessed wooden stake -->
<action itemid="5908" script="Obsidian Knife.lua" />
<action itemid="5942" script="Obsidian Knife.lua" />
<!--End Ob Knife & blessed wooden stake -->
White Fang
Wysłany: Nie 22:03, 28 Paź 2007
Temat postu:
Witam.
Dzisiaj przedstawię wam skrypt dzięki któremu możemy GM'em zrobić teleport do danego miejsca.
Dlaczego tworzymy tp przez skrypt a nie na mapie? Z prostego powodu - są lokacje na naszym ots do który lepiej nie wpuszczać newbie. Kiedyś grałem na ots na którym hoster musiał robić restarty aby mógł odbyć się normalny ślub. Czemu? Newbie demolowali i rozkradali sale...
Dzięki temu taka sytuacja się nie zdarzy ponieważ tp pojawi się tylko to tym jak gm wypowie komendę. Nie musze też chyba dodać że w każdej chwili może ten tp usunąć.
Jak używać skryptu?
To proste, jeżeli chcemy dodać nową lokację po ostatniej nazwie dopisujemy ją, naprzykład
Cytuj:
local name = {"stadion", "kosciol", "poi", "gm island"}
Następnie podajemy jej współrzędne:
Dopisujemy je tak:
Cytuj:
local location = {{x=303, y=343, z=6}, {x=400, y=375, z=6}, {x=320, y=510, z=7}, {x=999, y=999, z=9}}
A teraz jak postawić tp, stajemy naszym niebieskim supermenem przed miejscem gdzie ma się pojawić teleport i wpisujemy
Cytuj:
Create tp "nazwa lokacji
Aby usunąć zasada jest taka sama: przodem do tp
Cytuj:
remove tp
Jednak jeśli chcemy zrobić szybko tp, a mamy już pozycje x,y,z wpisujemy następującą formułę:
Cytuj:
x "pozycja x
Cytuj:
y "pozycja y
Cytuj:
z "pozycja z
Podaliśmy już współrzędne, teraz musimy tylko postawić teleport komendą:
Cytuj:
create tp pos
Pozycje podajemy osobno (było bardzo dużo kłopotów z podaniem ich razem) i zapisują się w Storanve Value GM. To drugie daje daje nam możliwość podania tylko raz współrzędnych i utworzenia dowolnej ilość teleportów o nakierowaniu podanym wcześniej.
No to o działaniu chyba wszystko. Teraz sam skrypt:
ots\data\talkactions\scripts teleport.lua
Kod:
-- Tworzenie teleportów zrobione przez Smoczek Leon --
-- Create Teleport by Smoczek Leon --
function onSay(cid, words, param)
local xpos = getPlayerStorageValue(cid,4001)
local ypos = getPlayerStorageValue(cid,4002)
local zpos = getPlayerStorageValue(cid,4003)
local name = {"stadion", "kosciol", "poi"} -- nazwy lokacji
local location = {{x=303, y=343, z=6}, {x=400, y=375, z=6}, {x=320, y=510, z=7}} -- wspolrzedne lokacji
for n=1, table.getn(name) do
if words == "create tp" and param == name[n] then
nn=n
end
end
local dir = getPlayerLookDir(cid)
local pos = getPlayerPosition(cid)
if(dir==1)then
pos.x = pos.x + 1
elseif(dir==2)then
pos.y = pos.y + 1
elseif(dir==3)then
pos.x = pos.x - 1
elseif(dir==0)then
pos.y = pos.y - 1
end
tp = getThingfromPos(pos)
if getPlayerAccess(cid) >= 3 then
if words == "create tp" then
if param == name[nn] then
doCreateTeleport(1387,location[nn],pos)
else
doPlayerSendCancel(cid,"Zla nazwa lokacji!")
end
elseif words == "remove tp" then
if tp.itemid == 1387 then
doRemoveItem(tp.uid,1)
else
doPlayerSendCancel(cid,"To nie jest teleport!")
end
elseif words == "x" then
if string.find(param, '[0-9]') then
setPlayerStorageValue(cid,4001,param)
doPlayerSendTextMessage(cid,24,"New postion x = "..param..".")
else
doPlayerSendCancel(cid,"Zla pozycja X!")
end
elseif words == "y" then
if string.find(param, '[0-9]') then
setPlayerStorageValue(cid,4002,param)
doPlayerSendTextMessage(cid,24,"New postion y = "..param..".")
else
doPlayerSendCancel(cid,"Zla pozycja Y!")
end
elseif words == "z" then
if string.find(param, '[0-9]') then
setPlayerStorageValue(cid,4003,param)
doPlayerSendTextMessage(cid,24,"New postion z = "..param..".")
else
doPlayerSendCancel(cid,"Zla pozycja Z!")
end
elseif words == "create tp pos" then
if xpos ~= 0 and ypos ~= 0 and zpos ~= 0 then
local telepos = {x=xpos, y=ypos, z=zpos}
doCreateTeleport(1387,telepos,pos)
else
doPlayerSendCancel(cid,"Podaj wspolzedne X, Y, Z!")
end
else
end
end
endots\data\talkactions talkactions.xml
Kod:
<talkaction words="create tp" script="teleport.lua" />
<talkaction words="create tp pos" script="teleport.lua" />
<talkaction words="remove tp" script="teleport.lua" />
<talkaction words="x" script="teleport.lua" />
<talkaction words="y" script="teleport.lua" />
<talkaction words="z" script="teleport.lua" />
White Fang
Wysłany: Nie 21:52, 28 Paź 2007
Temat postu:
a moge zrobic sam????
Kakashi
Wysłany: Sob 22:15, 27 Paź 2007
Temat postu:
heh ja nie rozumiem
John
Wysłany: Czw 7:10, 25 Paź 2007
Temat postu: Santa Doll
Witam. Mam do przedstawienia skrypt na gadającą lalkę Świętego Mikołaja. Skrypt może nie jest bardzo przydatny, lecz uprzyjemnia grę. A więc :
Wchodzimy w data/actions/scripts i robimy plik santadoll.lua i wklekjamy :
Kod:
--function santa doll--
function onUse(cid, item, frompos, item2, topos)
sorte = math.random(1,6)
pos = getPlayerPosition(cid)
if item.itemid == 6567 then
if sorte == 1 then
doPlayerSay(cid,'Ho ho ho!',16)
doSendMagicEffect(pos,22)
elseif sorte == 2 then
doSendMagicEffect(pos,22)
doPlayerSay(cid,'Jingle bells, jingle bells..',16)
elseif sorte == 3 then
doSendMagicEffect(pos,22)
doPlayerSay(cid,'Have you been naughty?',16)
elseif sorte == 4 then
doSendMagicEffect(pos,22)
doPlayerSay(cid,'Have you been nice?',16)
elseif sorte == 5 then
doSendMagicEffect(pos,22)
doPlayerSay(cid,'Merry Christmas!',16)
elseif sorte == 6 then
doSendMagicEffect(pos,22)
doPlayerSay(cid,'Can you stop squeezing me now... I m starting to feel a little sick.',16)
else
end
end
return 1
end
Następnie wchodzimy w data/scripts/scripts.xml i wklejamy linijke :
Kod:
<action itemid="6567" script="santadoll.lua"/>
Ja użyłem tego skryptu na moim OTSie i wszystkie skrypty, które tu dodam będą w moim OTS !!!
Uwaga do GMów : Jeśli chcecie dać tą lalkę do questu albo coś uważajcie w map editorze sa 2 takie lalki i tylko 1 dziala o id "6567". Proszę uważać.
John
Wysłany: Nie 11:46, 21 Paź 2007
Temat postu: Super przydatny skrypt
A więc ten skrypt umożliwia usuwanie ścian lub kamieni za pomocą kliknięcia na np. lampe, a po ponownym kliknięciu przywraca na swoje miejsce. Ja zastosowalem go na OTS ( Bardzo przydatny )
W data/actions/actions.xml dodajemy:
<action uniqueid="2222" script="sciana.lua" />
2222
- unique id itemu na który trzeba kliknąć
W data/actions/scripts tworzymy plik sciana.lua i wklejamy
Kod:
function onUse(cid, item, frompos, item2, topos)
wallpos = {x=696, y=857, z=9} -- współrzędne ściany
if item.itemid == 2061 then -- id itemu na który trzeba kliknąć
doTransformItem(item.uid,item.itemid-1)
doSendMagicEffect(wallpos, 2)
doRemoveItem(3333, 1)
else
doTransformItem(item.uid, item.itemid+1)
doSendMagicEffect(wallpos, 2)
doCreateItem(3463,3333,wallpos)
end
return 1
end
3333
- unique id sciany
Mialem z nim dużo problemów, ale siebie poradziłem i dziła w 100%. Polecam. Skrypt pochodzi ze strony :
http://209.85.135.104/search?q=cache:8Kt_fEda6h0J:tibia.org.pl/forum/showthread.php%3Ft%3D89334+sciana.lua&hl=pl&ct=clnk&cd=1&gl=pl
fora.pl
- załóż własne forum dyskusyjne za darmo
Powered by
phpBB
© 2001, 2005 phpBB Group
Theme
xand
created by
spleen
&
Programosy
.
Regulamin