Wszytko o OTS
Wszytko o OTS
FAQ
Szukaj
Użytkownicy
Grupy
Galerie
Rejestracja
Profil
Zaloguj się, by sprawdzić wiadomości
Zaloguj
Forum Wszytko o OTS Strona Główna
->
Problemy z OTS
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:
NIE
BBCode
:
TAK
Uśmieszki:
TAK
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
Wasze OTsy
----------------
Mapki wlasnej roboty
Skrypty, nowosci etc. :)
Problemy z OTS
Prywatne Otservy
Cytronia OTS
----------------
Cytronia OTS
Problemy z Cytronia
Guildie w Cytroni
Pomysly
Tibia
----------------
Wasze SS`y z rl Tibi
Poradniki dotyczace Tibi
Questy
Handel Postaciami
Nic Takiego
----------------
O Wszytkim i o Niczym
Przegląd tematu
Autor
Wiadomość
KrystSquad
Wysłany: Pią 20:56, 27 Kwi 2007
Temat postu:
Wedlug mnie dobry poradnik .!.
PS : Nie rób błędów!.!
Sebek
Wysłany: Pią 15:53, 16 Lut 2007
Temat postu:
Jak i gdzie zrobić stronke do otsa
Sebek
Wysłany: Pią 15:53, 16 Lut 2007
Temat postu:
Jak i gdzie zrobić stronke do otsa
Sebek
Wysłany: Pią 15:06, 16 Lut 2007
Temat postu:
Zrobiłem tak jak kazałeś gram ale potwory stoją bez ruchu dlaczego??????
Ziomek
Wysłany: Nie 23:04, 14 Sty 2007
Temat postu:
ja tak wsyzstko zrobile nie dziala global ip to znaczy ze inni gracze niemoga wejsc na ots tylko z mojej sieci a weszlem na ta stornew sprawdziem sie ip
dawid
Wysłany: Śro 15:01, 27 Gru 2006
Temat postu:
co wpisac do networgu
plis podajcie na OTS
dawid
Wysłany: Śro 15:01, 27 Gru 2006
Temat postu:
co wpisac do networgu
plis pogajcie
bartek
Wysłany: Wto 21:00, 10 Paź 2006
Temat postu:
kk ja mam juz ale dlaczego jest tak:
wchodze i psze GM Bartez potem pisze ze jestem 1 w kolejce dlaczego !!!!! ja sam jestem na ots plz o odp !!!!!!!!
bartek
Wysłany: Pon 15:03, 09 Paź 2006
Temat postu:
Jak to sciągnąć z tej strony
ziombi
Wysłany: Śro 20:04, 04 Paź 2006
Temat postu:
a tak wogule co z ym zrobic co podales
bartek
Wysłany: Śro 20:04, 04 Paź 2006
Temat postu:
a tak wogule co z ym zrobic co podales
jaca
Wysłany: Pon 12:24, 28 Sie 2006
Temat postu:
ej
jak sciognoc tego otsa prosze pomurzcie
qbaosa95
Wysłany: Czw 21:59, 24 Sie 2006
Temat postu:
Moje forum wbijac sie jak sie wbijecie to moze bedzie lepsze od tego
www.tibiaallots.fora.pl
Cain
Wysłany: Śro 12:47, 19 Lip 2006
Temat postu:
No więc powinniśmy zacząć od najważniejszej rzeczy... czyli śćiągnięciu OTS
Tutaj podaje link do YurOTS 0.9.4b:
http://rapidshare.de/files/10270499/YurOTS_094b.rar.html
Następnie rozpakowywujemy plik i zaczynamy od config.lua, którego otwieramy za pomocą notatnika.
Właściwości-----> Otwórz za pomocą------> Notatnik
Tutaj już wam pokażę co powinniście lub możecie uzupełnić Miejsca oznaczone gwiazdką oznaczają
ważniejsze informacje
Konfiguracja Config.lua
---------------------------- OTServ configuration ------------------------------
Cytat:
-- datadir
datadir = "data/"
-- sets what map to load
map = "data/world/test.otbm" <------ Ścieżka do mapy. Przy zmienieniu jej na mapę o nazwie ,,moja" wystarczy zmienić ,,test" na ,,moja".
-- OTBM for binary, SQL for SQL map, XML for OTX maps
mapkind = "OTBM" <------ To zostawiamy.
-- SQL for acc/player info from SQL, XML for acc/player info from XML
sourcedata = "XML" <------ To zostawiamy.
-- the message the player gets when he logs in
loginmsg = "Witam na SiwekOTS" <------ Napis, który pojawia się po zalogowaniu do gry na kanale Default.
-- the port otserv listens on *
port = "7171" <------ Port Servera. Najlepiej zostawić taki jaki jest.
-- name of our server
servername = "OmegaOTs" <------ Nazwa servera.
-- name of the owner of our server
ownername = "GM Misjonarz" <------ Posiadacz servera.
-- email of the owner of our server
owneremail = "" <------ E-mail posiadacza servera.
-- the url for more server info
url = "" <------ Strona servera. Nie jest konieczna
-- the location of the server
location = "Poland" <------ To raczej zostawiamy
-- the ip the server should redirect too *
ip = "86.63.99.152" <------ Nasze IP. Aby je sprawdzić wchodzimy na
http://www.whatismyip
-- The messagebox you sometimes get before you choose characters *
motd = "Witamy na OmegaOTS " <------ Tekst, który pojawia się przed listą postaci.
motdnum="0"
-- use md5 passwords for accounts, yes/no
md5passwords = "no"
-- world type. options: pvp, no-pvp, pvp-enforced *
worldtype = "pvp" <------ Typ świata.
Krótki opis
,,PvP- Można się zabijać"
,,PvP-Enforced- Za zabicie gracza dostaje się doświadczenie"
,,No-PvP- Nie można się zabijać.
-- max number of players allowed *
maxplayers = "40" <------ Maksymalna ilość osób na serverze.
-- exhausted time in ms (1000 = 1sec) *
exhausted = 1000 <------ Jak szybko można strzelać z runek. Poniżej 1000 można strzelać z macro =P
-- exhaustion time for healing spells (1000 = 1sec)
exhaustedheal = 1000 <------ Jak szybko można się leczyć czarami spontaniczymi (exura, exura gran, exura vita)
-- how many ms to add if the player is already exhausted and tries to cast a spell (1000 = 1sec)
exhaustedadd = 300
-- how long does the player has to stay out of fight to get pz unlocked in ms (1000 = 1sec)
pzlocked = 10*1000
-- allow multiple logins of the same char
allowclones = 0 <------ Ile osób może grać 1 charem. Przydatne do PvP
-- vocation names
vocations = {"a sorcerer", "a druid", "a paladin", "a knight"} <------ Najlepiej zostawić
promoted_vocations = {"a master sorcerer", "an elder druid", "a royal paladin", "an elite knight"} <------ Też najlepiej zostawić
--- SQL part
sql_host = "localhost"
sql_user = "root"
sql_pass = ""
sql_db = "otserv"
--- SQL MAP part
sqlmap = "test_map"
map_host = "localhost"
map_user = "root"
map_pass = ""
map_db = ""
------------------------- YurOTS basic configuration ---------------------------
-- name of your world (seen on the character list when logging in)
worldname = "Siwek OTS" <------ Nazwa Servera
-- how often do server saves it's state (0 = off, 5 = 5min, 60 = hour)
autosave = 10 <------ Co jaki czas ma następować zapis servera.
-- do you want to enable cap system? (yes/no)
capsystem = "no" <------ Czy ma być cap system??
-- do you want players to learn spells before they can use them? (yes/no) *
learnspells = "no" <------ Czy trzeba uczyć się czarów??
-- do you want to give premium account to all players? (yes/no)
freepremmy = "no" <------ Czy gracze mają zaczynać z Premium Account
-- do you want premium players to wait in queue as others? (yes/no)
queuepremmy = "yes"
-- how much % of {exp, mana, skill, eq, bp} do you lose when dying
diepercent = {"7", "7", "7", "7", "100"} <------ Jakie są szanse na stratę doświadczenia, m lvl, skilli, eq lub backpacka
-- how many summons player can have
maxsummons = 2 <------ Maksymalna ilość summonów.
-- do you want to give summons for all vocations? (yes/no)
summonsallvoc = "no" <------ Czy wszystkie profesje mogą tworzyć summona (Knight biega z 2 ds'ami?)
-- chance of losing a spear when shot (0 - none lost, 100000 - all lost)
spearlosechance = 50 <------ Po ilu uderzeniach spear ma ulec zniszczeniu
-- anti-afk - maximum idle time to kick player (1 = 1min)
kicktime = 15 <------ Po ilu minutach po nie oddawaniu oznak życia gracz ma zostać wyrzucony z gry
-- maximum number of items player can keep in his/her depot
maxdepotitems = 10000 <------ Maksymalna ilość itemów w depo
-- maximum number of items on a house tile (including those in containers)
maxhousetileitems = 20 <------ Maksymalna ilość itemów na jednej kratce domku
-- how much death entries are saved in players file (old are deleted)
maxdeathentries = 10
-- mana consumend by {snakebite, moonlight, volcanic, quagmire, tempest} rod
rodmana = {"2", "3", "5", "8", "13"} <------ Najlepiej to i 3 poniższe zostawić.
-- mana consumed by wand of {vortex, dragonbreath, plague, cosmic energy, inferno}
wandmana = {"2", "3", "5", "8", "13"} <------ Najlepiej to i 2 poniższe zostawić.
-- shooting range of {snakebite, moonlight, volcanic, quagmire, tempest} rod
rodrange = {"4", "3", "2", "1", "3"} <------ Najlepiej to i 1 poniższy zostawić.
-- shooting range of wand of {vortex, dragonbreath, plague, cosmic energy, inferno}
wandrange = {"4", "3", "2", "1", "3"} <------ Najlepiej to zostawić.
-- damage of burst arrows blast
-- default is from (1*lvl+5*mlvl)*0.24 to (1*lvl+5*mlvl)*0.55 <------ Obrażenia od burst arrow
burstarrowdmg = {"1.0", "5.0", "0.24", "0.55"} <------ Obrażenia od burst arrow
--------------------------- Multipliers and gains ------------------------------
-- experience multiplier (how much faster you got exp from monsters) *
expmul = 4 <------ Mnożnik expa.
-- experience multiplier for pvp-enforced (how much faster you got exp from players)
expmulpvp = 2 <------ Przy PvP-Enforced po zabiciu gracza dostajemy jego doświadczenie. Tutaj jest mnożnik tego doświadczenia
-- skill multipliers: 1 - rl tibia, 10 - ten times faster etc. {no-voc, sorcerer, druid, paladin, knight}
weaponmul = {"5", "5", "5", "5", "40"} <------ Jak szybko mają rosnąć skille: fist, sword, axe i club figting
distmul = {"1", "1", "1", "40", "1"} <------ Jak szyko ma rosnąć distance
shieldmul = {"5", "5", "5", "20", "30"} <------ Jak szybko ma rosnąć shielding
manamul = {"1", "3", "3", "2", "2"} <------ Jak szybko ma rosnąć magic level
-- how much points of life,mana,cap do you get when advancing {no-voc, sorcerer, druid, paladin, knight}
capgain = {"10", "10", "10", "20", "25"} <------ Ile co level dana profesja ma otrzymywać capa
managain = {"5", "30", "30", "15", "5"} <------ Ile co level dana profesja ma otrzymywać many
hpgain = {"5", "5", "5", "10", "15"} <------ Ile co level dana profesja ma otrzymywać życia
-- how much faster do you recovery life,mana after eating food (1 - rl tibia)
healthtickmul = 10 <------ O ile razy szybciej ma rosnąć życie niż w rl tibii
manatickmul = 10 <------ O ile razy szybciej ma rosnąć mana niż w rl tibii
-------------------------------- Skull system ----------------------------------
-- how many unjustified kills to get a red skull
redunjust = 3 <------ Po ilu zabiciach mamy otrzymać red skulla (tylko w PvP)
-- how many unjustified kills to get banned
banunjust = 6 <------ Po ilu zabiciach mamy otrzymać automatycznego bana
-- how long do you have white skull after attacking player (1 = 1min)
hittime = 1
-- how long do you have white skull after killing player (1 = 1min)
whitetime = 15 <------ Czas trwania white skulla
-- how long do you have red skull (1 = 1min)
redtime = 6*60 <------ Czas trwania red skulla. Im więcej osób tutaj zabijemy tym dłużej mamy. Po zabiciu 3 osób czekamy 3h, po 4 graczach 4h itd.
-- how long do you have to wait to lose 1 unjustified kill (1 = 1min)
fragtime = 12*60
------------------------------ GM access rights -------------------------------- To już zostawimy
-- access to walk into houses and open house doors
accesshouse = 3
-- access to login without waiting in the queue or when server is closed
accessenter = 3
-- access to ignore damage, exhaustion, cap limit and be ignored by monsters
accessprotect = 3
-- access to broadcast messages and talk in colors (#c blabla - in public channels)
accesstalk = 3
-- access to move distant items from/to distant locations
accessremote = 3
-- access to see id and position of the item you are looking at
accesslook = 3
Tak więc po uzupełnieniu tych ważnych i mniej ważnych pól mamy właściwie OTS gotowego.
Zmienianie cen run
Ale zapewne nie jeden z was chciał by, aby na serverze nie były takie drogie runy.
Jak to zrobić?? Właśnie tak:
Wchodzimy w folder z OTS następnie data/npc/scripts
Otwieramy plik runes.lua za pomocą notatnika i zmieniamy następujące rzeczy:
Cytat:
focus = 0
talk_start = 0
target = 0
following = false
attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Good bye then.')
focus = 0
talk_start = 0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
function onCreatureSay(cid, type, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then
selfSay('Hello ' .. creatureGetName(cid) .. '! I sell runes, wands and rods.')
focus = cid
talk_start = os.clock()
elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')
elseif focus == cid then
talk_start = os.clock()
if msgcontains(msg, 'runes') then
selfSay('I sell hmms (40gps), uhs (40gps), gfbs (60gps), explosions (60gps), sds (90gps) and blank runes (5gps). To buy more runes say "10 uh" or "100 sd".')
elseif msgcontains(msg, 'wands') then
selfSay('I sell wand of inferno (15k), plague (5k), cosmic energy (10k), vortex (500gp) and dragonbreath (1k).')
elseif msgcontains(msg, 'rods') then
selfSay('I sell quagmire (10k), snakebite (500gp), tempest (15k), volcanic (5k) and moonlight rod (1k).')
elseif msgcontains(msg, 'inferno') then
buy(cid,2187,1,15000)
elseif msgcontains(msg, 'plague') then
buy(cid,2188,1,5000)
elseif msgcontains(msg, 'cosmic energy') then
buy(cid,2189,1,10000)
elseif msgcontains(msg, 'vortex') then
buy(cid,2190,1,500)
elseif msgcontains(msg, 'dragonbreath') then
buy(cid,2191,1,1000)
elseif msgcontains(msg, 'quagmire') then
buy(cid,2181,1,10000)
elseif msgcontains(msg, 'snakebite') then
buy(cid,2182,1,500)
elseif msgcontains(msg, 'tempest') then
buy(cid,2183,1,15000)
elseif msgcontains(msg, 'volcanic') then
buy(cid,2185,1,5000)
elseif msgcontains(msg, 'moonlight') then
buy(cid,2186,1,1000)
elseif msgcontains(msg, '100 hmm') then
buy(cid,2311,100,800)
elseif msgcontains(msg, '10 hmm') then
buy(cid,2311,10,80)
elseif msgcontains(msg, 'hmm') then
buy(cid,2311,5,40)
elseif msgcontains(msg, '100 uh') then
buy(cid,2273,100,4000)
elseif msgcontains(msg, '10 uh') then
buy(cid,2273,10,400)
elseif msgcontains(msg, 'uh') then
buy(cid,2273,1,40)
elseif msgcontains(msg, '100 gfb') then
buy(cid,2304,100,2000)
elseif msgcontains(msg, '10 gfb') then
buy(cid,2304,10,200)
elseif msgcontains(msg, 'gfb') then
buy(cid,2304,3,60)
elseif msgcontains(msg, '100 explosion') then
buy(cid,2313,100,2000)
elseif msgcontains(msg, '10 explosion') then
buy(cid,2313,10,200)
elseif msgcontains(msg, 'explosion') then
buy(cid,2313,3,60)
elseif msgcontains(msg, '100 sd') then
buy(cid,2268,100,9000)
elseif msgcontains(msg, '10 sd') then
buy(cid,2268,10,900)
elseif msgcontains(msg, 'sd') then
buy(cid,2268,1,90)
elseif msgcontains(msg, 'blank') then
buy(cid,2260,1,5)
elseif string.find(msg, '(%a*)bye(%a*)') and getDistanceToCreature(cid) < 4 then
selfSay('Good bye, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
end
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Next Please...')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Good bye then.')
focus = 0
end
end
end
Zrobię tutaj przykład z hmm.
Mamy oto takie 2 linijki:
Cytat:
elseif msgcontains(msg, 'hmm') then
buy(cid,2311,100,]40
Tekst, który gracz musi wypowiedzieć, aby kupić daną runę.
Ilość strzałów w zakupionej runie
Suma pieniędzy zakupu runy
Czyli teraz przykładowo gdybyśmy napisali do NPC:
>Hi
>hmm
Musieli byśmy zapłacić 40 gp, a otrzymali byśmy hmm o wartości 100 strzałów.
Tak zmieniamy przy każdej runie, a będzie wszystko ok
Styknie wam
Andre
Wysłany: Czw 15:38, 13 Lip 2006
Temat postu: Re: Jak zrobic swuj ots
>jak mam zrobić OTS
> 6897275 muj gg
fora.pl
- załóż własne forum dyskusyjne za darmo
Powered by
phpBB
© 2001, 2005 phpBB Group
Regulamin