Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

OTS własne outfity


Jukesnk12

Rekomendowane odpowiedzi

Opublikowano

Poszukuje wiedzy na temat wgrania własnych outfitów( własnych jak własnych, gotowych z otland) na swój serwer, oraz ustawienie domyślnie outfitu do danej klasy postaci, oraz żeby nie zakladać osobnego tematu, idzie jakoś ustawić, że po kliknięciu w skrzynke z "first eq" z non-vocation id profesji zmienia się na tą wybraną oraz automatycznie przelogowywuje postać?

 

(najbardziej licze na odpowiedź od @rafaeru, ale reszta też niech sie wypowie)

@rafaeru*

Opublikowano
4 minuty temu, rafaeru napisał:

użyj tego do dodania outfitów do clienta:

https://github.com/ottools/ObjectBuilder

 

co do skrzynki to zależy od tfs ale wystarczy użyć funkcji:


doPlayerSetVocation(cid, voc)
doRemoveCreature(cid)

 

 

 O widzisz, napisałem temat a w między czasie zacząłem sie bawić troche tym object builderem nim jeszcze odpisałeś, dzięki wielkie bo to mnie uświęciło w tym, że w dobrą stronę myślę. jeśli remove creature to logout to nie powinno być problemu ze skrzynkami

@rafaeruMoge używać jednego tematu do zadawania kilku pytań?

 

Jak zrobić tak, żeby podmienić lookID powiedzmy Wand of Inferno, na id które już wgrałem object builderem?

 

w data/items jest:

  <item id="2187" article="a" name="wand of inferno">
        <attribute key="description" value="It unleashes the very fires of hell." />
        <attribute key="weight" value="2700" />
        <attribute key="weaponType" value="wand" />
        <attribute key="shootType" value="fire" />
        <attribute key="range" value="3" />

nie widzie tutaj nic o id wyglądu itemu.

Opublikowano
35 minut temu, rafaeru napisał:

Jeśli zamieniłeś istniejącego woia to nic nie musisz zmieniać w silniku. Jeśli chcesz dodać nowy item musisz jeszcze go dodać do items.otb

 Grafike WOI  na takiego fireballa podmieniłem przy uzyciu item editora, ale po odpaleniu fire sword(ktory juz wyglada jak ball) nie wali dystansowo tylko na 1smq fizycznie jak sword, gdzie lezy wina? skoro to ten sam woi tylko ze wyglada inaczej?

Opublikowano
5 minut temu, rafaeru napisał:

Nie rozumiem o co ci chodzi

 

skoro to jest to samo woi, tylko z innym wyglądalem to dlaczgo nie zachowuje sie jak woi?

woi decay.png

Opublikowano
1 minutę temu, rafaeru napisał:

Id wyglądu są zdefiniowane w pliku items.otb ktore trzeba otworzyć edytorem specjalnym.

Jeśli ta woi nie bije sprawdz czy w weapons.xml masz ja dodana jako wand.

O właśnie o to chodziło, w weapons.xml miałem błąd przy tym wandzie co zrobiło z niego zupełnie inny itemek, ale poprawiłem i już śmiga, dzięki

Opublikowano

@rafaeru

Coś poradzisz na crasha przy próbie zmiany wyglądu?

xbQih7M.png

taki debug przy próbie zmiany wyglądu. ( w object builderze zarówno outfit jak i sprites po koleji animacje są wgrane)

dodam, że jeden wygląd już udało mi się dodać i można go wybrać, ale ten który działa animacje dodawałem samemu, a ten który debuguje skopiowałem z innego tibia.spr czy to moze byc wina?

Opublikowano

Jak sprawdzasz animacje komenda /z (albo dajesz do skryptu) to musisz przyjąć id z object buildera - 1 czyli jeśli w object builderze id efektu to 43 to w grze jest to 42 bo liczysz od 0. W przypadku outfitow tak nie trzeba i tam id się zgadza z tym z object buildera.

 

Outfit który dodałeś z jakiej wersji na jaką ? 

Opublikowano
14 godzin temu, rafaeru napisał:

Jak sprawdzasz animacje komenda /z (albo dajesz do skryptu) to musisz przyjąć id z object buildera - 1 czyli jeśli w object builderze id efektu to 43 to w grze jest to 42 bo liczysz od 0. W przypadku outfitow tak nie trzeba i tam id się zgadza z tym z object buildera.

 

Outfit który dodałeś z jakiej wersji na jaką ? 

z 8.54 v1 na 8.60 v1. exportuje takim sposobem:

tpWh5zW.png

Opublikowano
1 godzinę temu, rafaeru napisał:

To nie wiem powinno dodać normalnie

Cyxijuq.png

 

Mimo że zapisałem w object builderze na 8.6 i połączyłem pliki z clientem tibii, to tak jakby nie wgrało tego outfitu

 

tym bardziej mnie to dziwi bo tym samym sposobem inny outfit działa

vD5jAAC.png

 

edit. Na moje to może być wina tego, że na Dark Faun z wgranych animacji sam krok po kroku tworzyłem outfit, a na tym duszku exportowalem z innego spr

 

edit 3 -  Udało się! Okazało się że jak mam clienta 8.6 w jednym folderze ze spr i dat i wygeneruje spr z dodanym nowym outfitem, to musze wgrać te spr i dat nowe do nowego "czystego" clienta, i tak pobrałem nowy client 8.6 wrzuciłem spr z nowymi grafikami i działa

e51yOEz.png

Dzięki że napisałeś że "powinno dodać" to sie nie poddawałem i próbowałem, teraz @rafaerupowiedz mi jak zrobić żeby powiedzmy profesja z id 1 miała przypisany tylko 1 outfit i nie mogła zmieniać na inny.

Opublikowano

w creaturescripts do login.lua dodajesz w środku coś takiego:

if isDruid(cid) then
	local outfit = {lookType = 111}
	doCreatureChangeOutfit(cid, outfit)
elseif isSorcerer(cid) then
	local outfit = {lookType = 222}
	doCreatureChangeOutfit(cid, outfit)
elseif isKnight(cid) then
	local outfit = {lookType = 333}
	doCreatureChangeOutfit(cid, outfit)
elseif isPaladin(cid) then
	local outfit = {lookType = 444}
	doCreatureChangeOutfit(cid, outfit)
end

111, 222, 333, 444 to id outfitow

Wybieranie outfitow blokujesz w configu

Opublikowano
1 godzinę temu, rafaeru napisał:

w object builderze i items.otb

@rafaeru dobra dzięki mam, potrafiłbyś mi pomóc przerobić item, bo aktualnie mam że leczy 100% many i 100%hp, chce zrobić potki na 10% i 25%(niżej masz zawartość)

 

function onUse(cid, item, frompos, item2, topos)
if(os.time() > getPlayerStorageValue(cid, exhausted_storagevalue)) then
doPlayerAddMana(cid, getPlayerMaxMana(cid))                           <--------------------- to na 10% / 25%
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))              <----------------------- to na 10% / 25%
doPlayerSay(cid,"Regeneracja!", TALKTYPE_ORANGE_1)
local kolor = 95
doSendAnimatedText(getPlayerPosition(cid),'+'.. getPlayerMaxMana(cid) .. '',kolor)
setPlayerStorageValue(cid, exhausted_storagevalue, os.time() + exhausted_seconds)
doRemoveItem(item.uid, 1)

  else
doPlayerSendCancel(cid, "You are exhausted.")
end
end
 

 

 

Opublikowano

Wystarczy zrozumieć jak działa skrypt, słusznie zauważyłeś które funkcje są od dawania hp/mp

doPlayerAddMana(cid, getPlayerMaxMana(cid))
doCreatureAddHealth(cid, getCreatureMaxHealth(cid))

wyjaśnienie:

doPlayerAddMana(komu dodać, ile dodać)

cid = creature id czyli osoba która wykonuje skrypt, jeśli gracz pije potiona czyli on wykonuje skrypt czyli cid jest równe gracza czyli dodaje hp/mp graczowi

getPlayerMaxMana(kto)

ta funkcja zwraca ile dana kreatura ma max hp w naszym przypadku cid czyli gracz wykonujący skrypt

 

więc jeśli chcesz uzyskać 25% wartości musisz podzielić max hp gracza na 4

100% / 4 = 25%

 

czyli dajesz do skryptu:

doPlayerAddMana(cid, getCreatureMaxMana(cid)/4)

jak chcesz 10% to dzielisz na 10 itd...

Opublikowano

@rafaeruTrudne pytanie,  ale jakoś sie postaram wytłumaczyć.

 

Postać na 1 lvl ma powiedzmy outfit "12", na 500 lvl dostaje promocje i jej outfit zmienia się na "13" to jeszcze zrozumiałe, ale teraz chodzi mi o to, żeby wraz z outfitem "13" pojawiał się co kilka sekund efekt (nie wiem czy wiesz ale cos podobnego było na dragon ballach takie pioruny pojawiające się na postaci), efekt mam wgrany outfity mam wgrane, tylko jak to teraz złączyć?

 

 

Opublikowano
3 godziny temu, rafaeru napisał:

    <globalevent name="piorun" interval="90" event="script" value="piorun.lua"/>

 

 to dobrze tak? teraz troche mam problem z zawartością piorun.lua, mógłbyś rozjaśnić sytuacje albo bardziej rozpisać? (if voc 5 dosendmagiceffect 72 co 2 sekundy)

 

Cytat

 function onThink (interval, lastExecution)
end
         if vocation ==5       then
            doSendMagicEffect(playerpos, 15)
            end

coś tutaj mam nie tak

Opublikowano

Tutaj masz listę wiekszosci funkcji tfs 0.3.6 (chyba na takim robisz nie ?)

https://wklejto.pl/txt80463

Dodatkowo możesz sobie dodać plugin do Notepad++

Skrypt powinien wyglądać tak:

function onThink(interval, lastExecution)
	local players = getPlayersOnline()
	local cid
	for i=1,#players do
		cid = players[i]
		if getPlayerVocation(cid) == 5 then
			doSendMagicEffect(getCreaturePosition(cid), 15)
		end
	end
return true
end

Można to też zrobić w creaturescripts onThink

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...