Nowe paski HP, mana 7853 11

O temacie

Autor

Zaczęty 27.08.2008 roku

Wyświetleń 7853

Odpowiedzi 11

SnapperHunter
  • Gość
Siemka :)   czy mógłby mi ktoś napisać prosty tutek jak utworzyc belki takie jak na obrazku??

Znalzałem to gdzies w sieci pisali ze to łatwo zrobićale nie powiedzieli jak i pomyśłałem ze tu tM bądą widzieć :(
 

SnapperHunter
  • Gość

SnapperHunter
Gość

Nowe paski HP, mana
#1 2008-08-27, 16:22(Ostatnia zmiana: 2008-12-24, 09:38)
znalazłem na WoG'u Tutek i przetłumaczyłem ale nadal nie rozumiem....
(BELKA-NOWE PASKI PŻ)

Tutorial dla tego wytwarzają / zmodyfikują z belki (HP / MP / EXP) pod G2
( powinien funkcjonować pod G1 podobnie)

Potrzebny jest:
Edytor do skrpytów ( Notepad ++, UltraEdit, ...)
Spacer2 do mapy <ZEN>
Coś do 2D ( Paint Shop Pro, Photoshop, ...)

Założą umiejętności zostaną w potrzebowanych programach. Man powinien wiedzieć jak VOB włączany jest w Spacer2 i jak tekstura alfy w 2D-program razu wytwarzany jest.

Pokażę teraz, jak "stare" belki (HP / MP) w którym zostaną pewnemu sensowi odlegle i potem "nowe" belki nad Skript włączani są.

Belki ona miarkuj przed Stan zawiadamiani są tekstury są, "drukowane" są ją nad Engine na monitor. Mamy razowi pani pierwszemu tu plik "..\ G2 \_ work \ data \ tura tekstu \ Desktop \ nomip \ Bar_Back.tga", to jest rama on zawsze zawiadomić stanie się obojętny, czy HP, MP lub przy nurkowaniu. Raz pani pierwszy zostanie tym plikiem nazwie wokół w "Bar_Back.tga.oryginalnie". Kopia tego pliku jest wytwarzana potem i kopia potem w "Bar_Back.tga" nazwać wokół. Ten plik jest farbowany teraz kompletnie czarno i jako kmpl. Zachować teksturę alfy. Nie mamy teraz wprawdzie ramy już stare belki są ciągle jeszcze, powtarzamy dlatego Całe jeszcze raz z plikami "Bar_Health.tga"(HP), "Bar_Mana.tga"(MP), "Bar_Misc.tga"(nurkowanie) i "Bar_TempMax.tga" (rest tego nie jest pusty belka całkiem czarny). Pliki znajdują się wszystko w selben porządkującemu.

, Co raz chronić einieges jest wart :(  potrzebujemy Teraz jeszcze nowego rodzaju pisma (Font) wokół nie jest zawiadamiany teraz chronić starych belek więcej nowe belki zjawiają się zostawić. Znajdujecie pod Fonts wszystko "..\ G2 \_ work \ data \ tura tekstu \ Fonts \ nomip", tam wytworzy państwa teraz także wasz plik lub skopiuje to prosto czysto. http://www.godfather75.de/Bilder/FONT_G2.tga
Robot przygotowawczy dokonał Sumpfkrautjunkie, rozszerzyłem jedynie plik nieznacznie. Kiedy my przy Print rozkazach teraz to nowe pismo użyją zostaną przystawi halt Farbbalken drukować z określonej litery.

Jak potrzebujemy teraz jeszcze nowego Skript- pliku, który mógłby następować wyglądają:

http://www.godfather75.de/Bilder/Skript.txt

Mam pod plik "..\ G2 \_ work \ data \ Scripts \ Content \ Story \ B_Story \ B_PrintBars.d" zapisać. To "Gothic.src" zmieniłem także jeszcze i powinniście zrobić jej to także :)  pułapka widzi w tym w około tak:
_INTERN \ CONSTANTS.D
_INTERN \ CLASSES.D

STORY \ B_Story \ B_PrintBars.d

Więc nowy plik zostanie słusznie wczesnym geparsed.

Musimy teraz jeszcze to "..\ G2 \_ work \ data \ Scripts \ Content \ Story \ Startup.d" zmodyfikują. Musicie dopasować zależny od świata gry ją to potem indywidualnie. Tu tylko Beispielskript:
----------------
func void STARTUP_NeueWelt ()
{
};

func void INIT_SUB_NeueWelt ()
{
};

func void INIT_NeueWelt ()
{
B_InitMonsterAttitudes ();
B_InitGuildAttitudes();
B_InitNpcGlobals ();
Wld_SendTrigger ("PRINTBARS01");

INIT_SUB_NeueWelt();
};
-------------------------
Potrzebujemy teraz tylko jeszcze jednym układów spustowych w "nowej świata" ( wezmą pod uwagę pisania wielką literą przy komunikacji między Zen i Skripte.) Jak wytworzy się jeden układów spustowych został opisany tu już, oszczędź mnie dlatego mi to teraz raz. Uważa na tym, że nazywa się układy spustowe "PRINTBARS01" i Skript PRINTBARS startuje, które staje się Skript wystartować raz potem na sekundę i te belki więc zaktualizuje. Kiedy wasz świat gry z wielu światów wytrzymuje musi zdobyć miejsce punktowane zostać potem naturalnie w każdym Zen tak układ spustowy. Więc kiedy majsterkujecie rzecz w Khorinis i potem do doliny miny pójdzie belki nie są automatycznie także, lecz dopiero kiedy układ spustowy jest istniejący :D

Powinni być teraz na lewo na dole na monitorze 3 nowych belek(HP / MP / EXP).
Link
Przedstawienie jest niestety zależne od rozwiązania ekranu. Eksperymentujcie prosto rum i sprawdźcie także między innymi Całe rozwiązania.

Wars potem także już, przy pytaniach lub wnioskach racjonalizatorskich jedni możecie jej szykowny mi chętnie mail lub PN.

mfg Godfather75


U góry podane Script funkcjonuje tak (przynajmniej u mnie) nie całkiem.
Wznowione Wld_SendTrigger brakuje("PRINTBARS01"), tu ogłoszenie nie aktualizowane jest w przeciwnym razie. Poza tym przyjdzie zawsze Access Violation, ponieważ ma się i więc dzieli się zostanie przez 0 do początku gry (miarkuj standard) 0 EXP.
Wersji jest tu, w której ja u góry zwane rzeczy naprawia zafunkcjonowałby przy sobie teraz bez zarzutu:
http://upload.worldofplayers.de/files/B_PrintBars.txt
Jak ktos to rozpracuje nich mi prześle pliki wszysktie żeby to działało xD
 

Buła

Buła

Użytkownicy
wyłącz komputer i wyjdź z domu
posty2402
Propsy3163
NagrodyV
Profesjabrak
  • Użytkownicy
  • wyłącz komputer i wyjdź z domu
Podaj link to oryginalnego tutka...
 

Tasilvar

Tasilvar

Użytkownicy
zwykły user
posty264
Propsy17
ProfesjaSkrypter
  • Użytkownicy
  • zwykły user
Popieram Bułe... Wez zapodaj link do tego tutka, bo efekt koncowy jest jak dla mnie ciekawy.. :D  a z tego co przetłumaczyles translatorem za wiele nie kapuje
 

Keretsel

Keretsel

Użytkownicy
posty312
Propsy10
ProfesjaProgramista
  • Użytkownicy
Nie jest to nic trudnego drodzy koledzy :D .
Działa to tak że podmieniamy nieużywane znaki w plikach z czcionkami, zamieniając je na wygląd paska, następnie piszemy skrypt który będzie wyświetlał ów znaki które połączą się w pasek. No ale napisanie tego srkytpu to inna historia :D
 

Althar

Althar

Użytkownicy
posty307
Propsy44
  • Użytkownicy

Althar

Nowe paski HP, mana
#5 2008-09-22, 19:05(Ostatnia zmiana: 2008-09-25, 19:30)
Ja też jestem bardzo ciekaw jak to wyjdzie, z tego co tu pisze zrobiłem to wszystko do G1, ale jeszcze nie uruchomiłem, pod G2 powinno wyjść lepiej bo tam wszystkie tekstury są w jednym folderze.
 

witek

witek

Użytkownicy
posty4
  • Użytkownicy
To sie robi tak jak zauwazyl Lesterek.
W tym niemieckim tutorialu gosc opisuje jak to zrobic (chociaz automatyczne tlumaczenie jest troche zabawne).

Generalnie najprosciej zrobic wlasna czcionke, jak opisane w tym niemieckim tutorialu; mozna ja tez pobrac - sa podane linki na poczatku tego tematu (plik nazywa sie "FONT_G2.tga"). Po obejrzeniu tej czcionki w programie graficznym mozna zauwazyc, ze niektore literki "nie sa literkami" tylko ladnymi bitmapami, z ktorych mozna zlozyc pasek postepu. Czcionke nalezy przegrac do katalogu "..\ G2 \_ work \ data \ tura tekstu \ Fonts \ nomip".
Pobralem rowniez skrypt B_PrintBars.d, ktory powinien rysowac nowe paski postepu. Wszystko skompilowalem ale cos nie dziala; podejrzewam, ze cos jest nie tak z Wld_SendTrigger("PRINTBARS01"). Wyglada jakby ten trigger nie zadzialal i dlatego zadne paski mi sie nie pojawiaja. Zrobilem test i recznie wywolalem funkcje PrintBars() (zostala wywolana recznie, nie za pomoca triggera) - tym razem zadzialalo: paski postepu zostaly wyswietlone.
Czy ktos ma pomysl dlaczego trigger nie zadzialal? Dodam, ze nie wprowadzalem zednych modyfikacji w skrypcie orginalnym oraz odpalam to na G2+NK.

Druga sprawa to jest taka, ze po wyswietleniu tych dodatkowych paskow wciaz pojawia sie orginalny pasek z punktami zycia. Trzeba sie go pozbyc i to jest rowniez opisane na poczatku tematu. Nie testowalem tego, ale trzeba znalezc orginalne pliki z paskami (mozna je znalezc tutaj "..\ G2 \_ work \ data \ tura tekstu \ Desktop \ nomip \"). Pliki odpowiedzialne za paski to "Bar_Back.tga", "Bar_Health.tga", "Bar_Mana.tga", "Bar_Misc.tga" i "Bar_TempMax.tga". Mozna je otworzyc w programie graficznym i zobaczyc jak wygladaja. Wyglada na to, ze te paski sa rysowane przez silnik graficzny Gothica. Autor proponuje aby wyedytowac te pliki graficzne i wykasowac tresc grafiki - zostawic tylko przezroczyste tlo, wtedy silnik gry bedzie nadal rysowal ale "przezroczyscie". Nie przetestowalem jeszcze tego.
 

Buła

Buła

Użytkownicy
wyłącz komputer i wyjdź z domu
posty2402
Propsy3163
NagrodyV
Profesjabrak
  • Użytkownicy
  • wyłącz komputer i wyjdź z domu
Udało mi się to zrobić, ale te czcionki są dziwne i są dużo większe od normalnych pasków zycia i to psuje efekt.
 

witek

witek

Użytkownicy
posty4
  • Użytkownicy
Cytat: Buła link=topic=3528.msg38379#msg38379 date=Nov 26 2008, 12:33\'
Udało mi się to zrobić, ale te czcionki są dziwne i są dużo większe od normalnych pasków zycia i to psuje efekt.


No wlasnie zauwazylem, ze te czcionki sa duze i troche badziewnie to wyglada. Zastanawialem sie czy da rade jakby zmniejszyc te czcionke albo wykorzystac standardowa czionke gothica (wydaje sie byc troche mniejsza), zapisac ja do innego pliku (ze zmieniona nazwa) i pozmieniac tylko grafiki (np. odpowiednio zmienic wyglad literki "W" albo jakiegos mniej uzywanego znaku).
Skoro udalo Ci sie to zrobic to prawdopodobnie nie masz problemu z funkcja Wld_SendTrigger (u mnie to nie chce dzialac, nie wiem dlaczego - jak opislem wyzej - to znaczy podejrzewam ze funkcja rysujaca paski nie chce sie sama uruchamiac co sekunde).
Buła, mozesz zalaczyc swoj kawalek kodu? Czy uzywajac funkcji Wld_SendTrigger potrzeba jeszcze jakichs dodatkowych zabiegow np. definiowanie dodatkowych zmiennych albo cos?
 

witek

witek

Użytkownicy
posty4
  • Użytkownicy
Juz udalo mi sie to zrobic.
Trzeba przeczytac jeszcze jeden z tutoriali, ktory zostal napisany przez kazzmir, tytul tutoriala to "Wywoływanie skryptu co xx, czyli wywołanie skryptu co 1/8 sekundy" (do znalezienia w dziale Tutoriale->Skrypty).
W skrypcie (ktory bedzie sie wywolywal co np. 1/8 sekundy) wstawiamy rysowanie naszych paskow tak jak to jest opisane wyzej.
Druga sprawa to modyfikacja pliku z czcionkami. Czcionki sa duze, probowalem zmniejszyc tekstury ale efekt byl kiepski - puste przestrzenie na pasku. Generalnie caly pasek sie zmniejszyl do odpowiednich rozmiarow, ale byl "poprzecinany" przezroczystymi kreskami o szerokosci kilku pixeli, co wygladalo jeszcze gorzej niz duzy pasek. W koncu udalo mi sie tak poprzerabiac tekstury aby zmniejszyc pasek do sensownych rozmiarow i zeby to jeszcze ladnie wygladalo. Ale trzeba bylo dodac pare nowych obrazkow do pliku z czcionka oraz pozmieniac skrypt wyswietlajacy paski.
 

Buła

Buła

Użytkownicy
wyłącz komputer i wyjdź z domu
posty2402
Propsy3163
NagrodyV
Profesjabrak
  • Użytkownicy
  • wyłącz komputer i wyjdź z domu
Pokażesz plik z czcionką, do jakich rozmiarów zmniejszyłeś?
 

witek

witek

Użytkownicy
posty4
  • Użytkownicy
[attachment=224:Font_Bars.zip]
Cytat: Buła link=topic=3528.msg39895#msg39895 date=Dec 11 2008, 18:40\'
Pokażesz plik z czcionką, do jakich rozmiarów zmniejszyłeś?


Plik (Font_Bars.zip) dodalem jako zalacznik. Wlasciwie to cala czcionka jest takich samych rozmiarow jak w orginalnej wersji. Jedynie zmniejszylem wysokosc elementow odpowiedzialnych za ksztalt paska, przez co pasek jest troche nizszy/cienszy niz w wersji pierwotnej. W wersji pierwotnej pasek sklada sie z 20 elementow (klockow), przez co uzyskujemy dokladnosc 5% podczas wyswietlania statystyki. W wersji pierwotnej skrocenie paska po zadanych wymiarow trzeba zrobic poprzez zmniejszenie liczby elementow z 20 do np 13, ale wtedy dokladnosc wyswietlania spada do okolo 8%.
W pliku, ktory zalaczylem zrobilem dodatkowa modyfikacje: dodalem dwa nowe elementy o kolorze zielonym, jeden o dlugosci 1/3 pierwotnego elementu, a drugi o dlugosci 2/3 pierwotnego elementu. W ten sposob mozna skrocic dlugosc paska do np. 13 elementow zachowuja dokladnosc wyswietlania 2.5%. Trzeba tez odpowiednio zmodyfikowac skrypt wyswietlajacy pasek; teraz nie mamy jednego pelnego zielonego klacka tylko 3 wersje zielonego klocka (jeden o dlugosci 1/3, drugi o dlugosci 2/3,trzeci o dlugosci 3/3 pierwotnego klocka).
Podam przyklad: w pliku z czcionka mamy nastepujace mapowanie
znak "5" to klocek zielony o dlugosci 1/3
znak "6" to klocek zielony o dlugosci 2/3
znak "." to klocek zielony o dlugosc 3/3
Zakladajac, ze mamy pasek o dlugosci 13 klockow (wtedy dokladnosc jest okolo 2.5%) ciag wyswietlen bedzie nastepujacy:
2.5%   "5"         (klocek o dlugosci 1/3)
5%      "6"         (klocek o dlugosci 2/3)
7.5%   "."          (jeden pelny klocek)
10%    ".","5"     (jeden pelny klocek + klocek 1/3)
12.5% ".","6"     (jeden pelny klocek + klocek 2/3)
15%    ".","."      (dwa pelne klocki)
17.5% ".",".","5" (dwa pelne klocki + klocek 1/3)

i tak dalej

Przykladowa tekstura, ktora zalaczylem modyfikuje na razie tylko pasek o kolorze zielonym. Nie sprawdzalem jak te paski beda wygladac przy innej rozdzielczosci ekranu niz 1280x800.
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry