Skocz do zawartości
  • 0

PvP Damage Modifier


Adrianux

Pytanie

Podstawowe informacje

  • Wersja serwera: 1.20.4 paper
  • Wersja Skript: 2.12.2

Opis zlecenia

Generalnie problem jest taki ze chce stworzyć serwer boxpvp właściwie wszystko działa po za tym ze sharpness 5 bije tyle samo co sharpness 10 i tak dalej to samo z protections. I trzeba by było to w jakiś sposób rozwiązać np sharpness 1 2dmg sharpness 2 4dmg i tak dalej oczywiście (kryty no nie wiem np x1,5)  to nie musi być nieskończoność i to są przykładowe wartości które potem by trzeba by było  edytować a wiadomo tych setów też nie będzie 100 tylko max 20  z protections to już brakuje mi w ogóle pomysłu bo niestety redukcja ochrony dojdzie do 100% i jest koniec trzeba by było dodać jakiś wzrost logalitmiczny i co gorsza jescze każda część seta musiała by być indywidualnie liczona i dodawana a przecież jescze jest elka bo o głowach to ja nawet nie wspominam . Najlepiej gdyby dmg i ochrone minecraftową w ogóle lekceważyło i 100% obliczeń odbywało się w skrypcie . Pytanie jest proste czy da się coś takiego stworzyć w ramach skryptu czy niestety tu trzeba plugin. Bo niestety bez tego nie ma balansu bo set 8 jest taki sam jak 12 i jest serwer ściek. A no i zeby fizyka bicia minecraftowa została zachowana.

Edytowane przez Adrianux
Odnośnik do komentarza
https://skript.pl/temat/58990-pvp-damage-modifier/
Udostępnij na innych stronach

4 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
Godzinę temu, Adrianux napisał:

Pytanie jest proste czy da się coś takiego stworzyć w ramach skryptu czy niestety tu trzeba plugin

Tak da sie, aktualnie prawie wszystko mozesz zrobić w sk to co w pluginie. Może jedynie niektóre rzeczy z nmsami moga byc upierdliwe.

on damage:
    victim and attacker are a players
    set {_armor::*} to victim's helmet, victim's chestplate, victim's leggings, victim's boots, attacker's tool
    set {_ochrona} to 1
    set {_ostrosc} to 1
    loop {_armor::*}:
        if loop-value is enchanted with protection:
            add level of protection of loop-value to {_ochrona}
        if loop-value is enchanted with sharpness:
            add level of sharpness of loop-value to {_ostrosc}
    set {_dmg} to {_ostrosc}/{_ochrona}
    set damage to {_dmg}

Coś tego typu

Odnośnik do komentarza
https://skript.pl/temat/58990-pvp-damage-modifier/#findComment-347445
Udostępnij na innych stronach

  • 0
on damage:
    victim is a player
    attacker is a player

    set {_ochrona} to 1
    set {_ostrosc} to 1

    loop victim's helmet, victim's chestplate, victim's leggings, victim's boots:
        if loop-value is enchanted with protection:
            add level of protection of loop-value to {_ochrona}

    if attacker's tool is enchanted with sharpness:
        add level of sharpness of attacker's tool to {_ostrosc}

    set {_dmg} to {_ostrosc} / {_ochrona}
    set damage to {_dmg}

 

Po małych korektach zadziałało dzięki ci panie 

Nicku

Poprawiam formatowanie na blok kodu.

Notatka dodana przez Nicku

Odnośnik do komentarza
https://skript.pl/temat/58990-pvp-damage-modifier/#findComment-347448
Udostępnij na innych stronach

  • 0

może wystąpić problem z tym ze sety są praktycznie nie zniszczalne i wtedy zmieńcie linie 

add level of protection of loop-value to {_ochrona}

na

add (level of protection of loop-value * 0.5) to {_ochrona}

Ps ; wartość 0.5 możecie dowolnie konfigurować w zależności od potrzeb serwera 

 

Odnośnik do komentarza
https://skript.pl/temat/58990-pvp-damage-modifier/#findComment-347449
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...