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

[Problem]Piosenki w grze.


Rekomendowane odpowiedzi

Opublikowano

Witam,

Zastanawiam się czy można by było sterować piosenkami w Metin2.

Tzn.Wgrałem do klienta np 10 dodatkowych utworów i teraz chciałbym alby po wpisaniu komendy inni gracze je usłyszeli, albo jak nacisne na specjalny quest.

Coś na zasadzie piosenki świątecznej tylko że bez płatków śniegu itp. tylko że włącza się inna piosenka :)

 

Dodatkowo można by było zabezpieczyć tą muzykę przed zmianą pakując ją w pliki .epk , .eix

Nie wiem czy to wogole jest możliwe ale jeśli tak to bardzo bym prosił o napisanie takiego questa ponieważ ja jestem zielony w tych sprawach.

 

 

Będą + i lubie to jak zwykle za udzieloną mi pomoc.

 

PS.Jeśli dałem do złego działu proszę o przeniesienie.

8910814572903361049127.png

Opublikowano

Na pewno jest możliwość, trzeba napisać questa, że jak wpiszesz daną komendę to puszcza daną piosenkę.

Na jednym z tureckich serwerów jest takie coś ale nie wiem na jakiej zasadzie działa.

Można także podpiąć radio do serwera.

Opublikowano

cmdchat oczywiście zadziała.

przykładowo w queście dodajesz :

cmdchat("muzyka", "piosenka1.mp3") -- piosenka1.mp3 znajdująca się w folderze BGM w kliencie

przy czym w game.py musisz dodać :

 

"muzyka" : self.__grajmuzyka, 

 

oraz :

 

 

def __grajmuzyka(self, nazwa):
snd.FadeOutAllMusic()
musicInfo.SaveLastPlayFieldMusic()
snd.FadeInMusic("BGM/" + nazwa)

 

umarł

Opublikowano

cmdchat oczywiście zadziała.

przykładowo w queście dodajesz :

cmdchat("muzyka", "piosenka1.mp3") -- piosenka1.mp3 znajdująca się w folderze BGM w kliencie

przy czym w game.py musisz dodać :

 

"muzyka" : self.__grajmuzyka, 

 

oraz :

 

 

def __grajmuzyka(self, nazwa):
snd.FadeOutAllMusic()
musicInfo.SaveLastPlayFieldMusic()
snd.FadeInMusic("BGM/" + nazwa)

 

?? chyba u ciebie

 

@topic

 

add_bgm_info( indexmapy, "nazwautworu.mp3");

 

w settings.lua

10s55xy.jpg


 


Ładną grafikę dla Reinora dostarcza L&A Studio!


Kontakt do L&A Studio: 44934972

Opublikowano
@topic

 

add_bgm_info( indexmapy, "nazwautworu.mp3");

 

 

w settings.lua

 

Ale jak zmienie lub dodam w settings.lua to będe miał na stałe i tylko 1 piosenke.

 

 

Zaraz wypróbuje sposób z4z0l,a

 

PS: Dla wszystkich like i 5 gwiazdek.

8910814572903361049127.png

Opublikowano

?? chyba u ciebie

 

@topic

 

add_bgm_info( indexmapy, "nazwautworu.mp3");

 

w settings.lua

Przeczytaj jeszcze raz czego dokładnie potrzebuje :) W queście po wciśnięciu przycisku lub czegoś, uruchamia się dany utwór, o to chodzi.

 

umarł

Opublikowano

Tak o to dokładnie mi chodziło :]

 

A jeszcze jedno jak powinien wyglądać quest?

Dodałem w taki sposób do game.py te wpisy czy są dobrze? Bo jak tak mam to gra się zacina przy ładowaniu mam 100% i nic zatrzymuje się i tyle :D

SS game.py

 

 

5e1dc9d68a16a.jpg

 

 

i kolejne pytanie jeśli dodam to do questa to jak mam wpisac komende aby utwór usłyszeli gracze?

8910814572903361049127.png

Opublikowano

Tak o to dokładnie mi chodziło :]

 

A jeszcze jedno jak powinien wyglądać quest?

Dodałem w taki sposób do game.py te wpisy czy są dobrze? Bo jak tak mam to gra się zacina przy ładowaniu mam 100% i nic zatrzymuje się i tyle :D

SS game.py

 

 

5e1dc9d68a16a.jpg

 

 

i kolejne pytanie jeśli dodam to do questa to jak mam wpisac komende aby utwór usłyszeli gracze?

Tak teraz myślę, i dochodzę do wniosku że nie jesteś w stanie w czasie rzeczywistym zmienić piosenki u wszystkich na raz. Możesz to zrobić sobie tak:

quest zmiana_piosenki begin
state start begin
 when xx.chat."Zmień piosenkę" with pc.is_gm() begin
  local piosenki = {"Nazwa pierwszej", "Nazwa drugiej", "Nazwa trzeciej", "Nazwa czwartej", "Nazwa piątej"}
  say("Wybierz piosenkę:")
  local s = select(piosenki[1], piosenki[2], piosenki[3], piosenki[4], piosenki[5], "Anuluj")
  if s == 6 then
   return
  end
  game.set_event_flag("piosenka", s)
  say("Wybrana piosenka to "..piosenki[s]..".")
 end

 when xx.chat."Wyłącz specjalną piosenkę " with pc.is_gm() and game.get_event_flag("piosenka") != 0 begin
  say("Chcesz wyłączyć specjalną piosenkę?")
  local a = select("Tak", "Anuluj")
  if a == 1 then
   game.set_event_flag("piosenka", 0)
  end
 end

 when login with game.get_event_flag("piosenka") != 0 begin
  local nazwa = "piosenka"..game.get_event_flag("piosenka")..".mp3" -- np piosenka2.mp3
  cmdchat("muzyka", nazwa)
 end
end
end

wklej.to:

http://wklej.to/t6Myy

Czas na małe objaśnienie wad i zalet. Możesz w dowolnym momencie zmienić sobie piosenkę w queście - to jedyna zaleta jaką widzę. Wady są następujące:

  1. Piosenka zmieni się dopiero wtedy, gdy ktoś się zaloguje lub zmieni mapę (a Ty ustawiłeś nową piosenkę)
  2. W związku z powyższym zmiana nie następuje natychmiastowo
  3. Jeśli wyłączysz specjalną piosenkę to ktoś musi się przelogować by mieć starą piosenkę

Więcej wad na chwilę obecną nie widzę. Można to zrobić na zasadzie np server_timera co minutę. Wtedy gdy on nastąpi to u każdego gracza będzie zmiana piosenki, czyli w jednym czasie (powinno zadziałać).

 

edit. drobne poprawki

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Coś ten quest nie chce mi się wgrać ;/

 

Wyskakuje must start with 'quest'

zmiana_piosenki.quest:1:Abort (core dumped)

 

 

PS: na 100% mam dobre rozszerzenie i nazwa dobrze przepisana.

8910814572903361049127.png

Opublikowano

Coś ten quest nie chce mi się wgrać ;/

 

Wyskakuje must start with 'quest'

zmiana_piosenki.quest:1:Abort (core dumped)

 

 

PS: na 100% mam dobre rozszerzenie i nazwa dobrze przepisana.

when xx.chat."Zmień piosenkę" with pc.is_gm() begin

zmień na

when xx.chat."Zmień piosenkę " with pc.is_gm() begin

Drobny błędzik

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Jak zmienić każdemu na raz piosenkę to nie mam pojęcia, jedynie poprzez wejście na daną mapę można to uczynić. Co do game.py to

"muzyka" : self.__grajmuzyka, 

musisz dodać w

def __ServerCommand_Build(self):

najlepiej gdzieś po

"CloseSafebox" : self.CommandCloseSafebox,

pamiętając oczywiście o tabulatorach, które są bardzo ważne w pythonie.

reszta jest dobrze. jeżeli chcesz wywołać to w queście to bazgrasz na przykład coś takiego :

when xx.chat."Graj" begin
cmdchat("muzyka ", "piosenka1.mp3") -- najważniejsza jest spacja po nazwie MUZYKA
say("Włączone.")
end

i powinno działać

 

umarł

Opublikowano

Chcesz ustawić piosenkę dla wszystkich graczy czy tylko dla jednego ? Jeżeli dla jednego to moim sposobem na pewno zadziała bo właśnie testowałem. Quest który podał Sunushi wgrywa się bez błędów, musiałeś coś źle skopiować.

 

umarł

Opublikowano

No kurcze ten quest od Sunushiego to wgrywam tak:

Łącze się z serwerem poprzez CoreFTP.

Wchodzę w katalog:

/usr/home/game/share/locale/germany/quest/

Daje tam questa z tabami i rozrzezeniem .quest

Daje prawa 777

W konsoli wpisuje cd /usr/home/game/share/locale/germany/quest/

i wpisuje ./qc nazwa.quest

i ten blad mi wywala.

 

PS. Co Ci pisze jak ci się quest już wgra na samym końcu?

8910814572903361049127.png

Opublikowano

Quest jako tako działa tylko że teraz nie wiem gdzie w quescie mam zmienic nazwe piosenki dajmy na to że nazwa piosenki to "baran.mp3" to gdzie w quescie wpisac aby po kliknieciu ona została odtworzona. :) sorka że mam aż takie głupie pytania

8910814572903361049127.png

Opublikowano

local piosenki = {"Nazwa pierwszej", "Nazwa drugiej", "Nazwa trzeciej", "Nazwa czwartej", "Nazwa piątej"}

wpisujesz powiedzmy :

local piosenki = {"baran", "Nazwa drugiej", "Nazwa trzeciej", "Nazwa czwartej", "Nazwa piątej"}

oczywiście bez rozszerzenia *.mp3

 

Poza tym, używaj opcji edytuj w postach.

 

umarł

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...