collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: Vampyr SBABS More Item Drops  (Gelesen 1681 mal)

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Vampyr SBABS More Item Drops
« am: April 29, 2012, 13:08:52 »
Halli Hallo!

Das nachfolgende Script weist leider eine kleine Schwäche auf:

Spoiler for Hiden:
#===============================================================================
# Additional Drops Note Tags
# by Deriru
#
# PLEASE GIVE CREDIT IF USED!
#
#-------------------------------------------------------------------------------
# What it does:
# It gives a feature wherein you can make enemies drop more items by using note
# tags. Note that the calculation is by percentage rather than fraction.
#-------------------------------------------------------------------------------
# Setting up additional drops:
# Here is the format for making the tag note for additional drops:
# <DROP_TAG ItemType DropID Percentage>
# <Drops 2 30 100>
#
# DROP_TAG: See setup options
# ItemType: The type of drop.
# DropID: The ID of the drop (to the left of the item/equip's name in database.)
# Percentage: Percentage of the item drop (out of 100)
#
# See the Slime in the demo's Enemy tab to see some examples.
#-------------------------------------------------------------------------------
# Setup Options:
# DROP_TAG: The note tag label for the additional drops.
#-------------------------------------------------------------------------------
# Setup Start!
#-------------------------------------------------------------------------------
module Deriru
  module DropNotes
    DROP_TAG = "Drops"
  end
end
#-------------------------------------------------------------------------------
# Setup End!
# DO NOT TOUCH THE PARTS BELOW IF YOU DON'T KNOW WHAT YOU'RE DOING!
#===============================================================================
 class Game_Monster < Game_Character
  def get_rewards
    if $Vampyr_SBABS.auto_exp_e_gold
      exp = (self.actor.maxhp+self.actor.maxmp+self.actor.atk+self.actor.def+self.actor.spi+
      self.actor.agi+self.actor.hit+self.actor.eva) * $Vampyr_SBABS.auto_exp_rate / 100
    else
      exp = self.actor.exp
    end
    exp = (exp*1.5) if self.overkill
    if $Vampyr_SBABS.divide_exp
      x = (exp/$game_party.members.size)
      for i in $game_party.members
        i.gain_exp(x, true)
      end
    else
      x = exp
      for i in $game_party.members
        i.gain_exp(x, true)
      end
    end
    $game_player.reward = "Exp: #{exp.to_f}"
    droped_items = []
    filt1 = /<#{Deriru::DropNotes::DROP_TAG} ([\w]*) [\w]* [\w]*>/i
    filt2 = /<#{Deriru::DropNotes::DROP_TAG} [\w]* ([\w]*) [\w]*>/i
    filt3 = /<#{Deriru::DropNotes::DROP_TAG} [\w]* [\w]* ([\w]*)>/i

    data = $data_enemies[self.enemy_id].note
    cat = data.scan(filt1)
    id = data.scan(filt2)
    chance = data.scan(filt3)
    for i in 0..((cat.size) - 1) do
      next unless rand(101) <= chance[0].to_i
        case cat[0].to_i
        when 1
        droped_items.push($data_items[id[0].to_i])
        when 2
        droped_items.push($data_weapons[id[0].to_i])
        when 3
        droped_items.push($data_armors[id[0].to_i])
      end
    end
   
    for i in droped_items.compact
      $game_drop.push(Game_Drop.new(self, i.icon_index, i, 0))
    end
    if $Vampyr_SBABS.auto_exp_e_gold
      gold = (self.actor.maxhp+self.actor.maxmp+self.actor.atk+self.actor.def+self.actor.spi+
      self.actor.agi+self.actor.hit+self.actor.eva) * $Vampyr_SBABS.auto_gold_rate / 100
    else
      gold = self.actor.gold
    end
    if gold > 0 and rand(100) <= $Vampyr_SBABS.gold_drop_rate
      $game_drop.push(Game_Drop.new(self, $Vampyr_SBABS.gold_drop_icon_index, nil, gold))
    end
    @animation_id = self.actor.die_animation_id if self.actor.die_animation_id > 0
    if self.actor.die_se != nil   
      RPG::SE.new(self.actor.die_se).play
    else
      Sound.play_enemy_collapse
    end
    if $Vampyr_SBABS.battle_area_variable > 0
      $game_variables[$Vampyr_SBABS.battle_area_variable] += 1
      $game_map.need_refresh = true
    end
    @killed = true
  end
end

Dieses Add-on ermöglicht es, mehrere Items im Vampyr SBABS aus Gegnern fallen zu lassen.
Nur leider gilt dies nicht für Event-Monster. Ein Event-Monster erstellt man mithilfe von Kommentaren auf der Eventseite.

(Comment) Enemy 4
(Comment) Die Self Switch A


Stirbt ein solcher Feind, werden höchstens die zwei Standard-Items aus der Datenbank fallen gelassen, aber nicht die Extra-Drops!

Hat jemand eine Idee, wie man das im Script umschreiben könnte, sodass es für Area- und Event-Monster zählt?
Vielen Dank schon mal! Ich benötige es sehr dringend! :D

Hier eine Demo mit allen nötigen Inhalten:
DEMO

Re: Vampyr SBABS More Item Drops

Offline Emelie Rose

  • Meisterköchin
  • Eventmeister
  • ***
  • Beiträge: 329
Re: Vampyr SBABS More Item Drops
« Antwort #1 am: April 29, 2012, 16:49:29 »
warum erstellst du nicht ein event welches das erledigt?

- event "beute" erstellen ( z.b apfel +1)
- event gegner ist tod ->
-> variable 1 lokalisiert y position
-> variable 2 lokalisiert x position
-> event "beute" wird zu der position geportet und wird sichtbar.
-> held sammelt auf und fertig :D


sollte so gehen denk ich

Re: Vampyr SBABS More Item Drops

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Re: Vampyr SBABS More Item Drops
« Antwort #2 am: April 29, 2012, 18:34:35 »
Von der Theorie her geht das auch tatsächlich. Aber das wird, ohne dass ich es jetzt ausprobiert habe, zu Problemen führen, wie z.B.:

- Mehrere Gegner lassen diesen "Apfel" gleichzeitig fallen, also benötige ich dieses Event ebenfalls mehrfach.
- Da ich ein Antilag verwende, muss dieses Event permanent geupdatet werden. So etwas möchte ich verhindern. Die Karte würde nur von diesen Events überquellen.

- Und natürlich ist es viel zu aufwendig. Dann lieber einmal ein Script editieren und fertig :haha_zwinker:.

Aber danke für die Antwort!
Kennst du dich denn mit dem Scripten aus?
(bzw. bin ich eigtl. im richtigen Unterforum? :haha:)

Re: Vampyr SBABS More Item Drops

Offline Valentine

  • Eventmeister
  • ***
  • Beiträge: 352
Re: Vampyr SBABS More Item Drops
« Antwort #3 am: April 29, 2012, 20:53:22 »
Hey Sorry wenn ich hier so reinplatze!
Aber vielleicht weißt Du, wie man mit dem Vampyr ABS Gegner als Events erstellen kann?
Es geht sonst nur via "Bereich + Monster" erstellen, aber wie geht das über Events, wo man auch einen Kampf starten kann.

Re: Vampyr SBABS More Item Drops

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Re: Vampyr SBABS More Item Drops
« Antwort #4 am: April 29, 2012, 21:23:51 »
Ein Event-Monster erstellt man mithilfe von Kommentaren auf der Eventseite.

(Comment) Enemy 4
(Comment) Die Self Switch A



Erstelle ein Event und setzte z.B. auf die erste Seite die beiden Kommentare.
Wo die Kommentar-Funktion ist solltest du wissen, denke ich :haha_zwinker:.

Erstelle eine weitere Seite, mit der Bedingung: "Self Switch A" muss an sein.

Benutze auch eine Graphic für den Charakter, sonst wirst du ihn nicht sehen!

Ist alles erledigt, sollte das Event-Monster glücklich auf der Karte herumhüpfen.
Stirbt es, wird Self Switch A eingeschaltet.

Wenn "Die Self Switch A" fehlt, erscheint das Monster immer wieder nach der in der Datenbank angegebenen Respawn-Zeit.

Alles sehr theoretisch...
Schau doch einfach mal in die Demo rein. Dort ist ein solcher Gegner (Boss).

Re: Vampyr SBABS More Item Drops

Offline Emelie Rose

  • Meisterköchin
  • Eventmeister
  • ***
  • Beiträge: 329
Re: Vampyr SBABS More Item Drops
« Antwort #5 am: April 29, 2012, 22:27:26 »
Von der Theorie her geht das auch tatsächlich. Aber das wird, ohne dass ich es jetzt ausprobiert habe, zu Problemen führen, wie z.B.:

- Mehrere Gegner lassen diesen "Apfel" gleichzeitig fallen, also benötige ich dieses Event ebenfalls mehrfach.
- Da ich ein Antilag verwende, muss dieses Event permanent geupdatet werden. So etwas möchte ich verhindern. Die Karte würde nur von diesen Events überquellen.

- Und natürlich ist es viel zu aufwendig. Dann lieber einmal ein Script editieren und fertig :haha_zwinker:.

Aber danke für die Antwort!
Kennst du dich denn mit dem Scripten aus?
(bzw. bin ich eigtl. im richtigen Unterforum? :haha:)

hmm stimmt auch wieder :( wenn du mehrere hast die das dropen...

mit scripten kenn ich mich in diesem fall nicht aus.
unterforum stimmt auch :D




anderer vorschlag. erstell halt zweimal das gleiche monster in der datenbank und mach unterschiedliche dropps. muss ja niemand wissen das das verschiedene sind wenn die eh mehrmals uaf karte sind. ich dachte da eher du meinst einen boss kampf (der ja normalerweise nur einmal auf karte ist :D)

Re: Vampyr SBABS More Item Drops

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Re: Vampyr SBABS More Item Drops
« Antwort #6 am: April 30, 2012, 10:05:44 »
Mit Area Monstern bin ich viel zu eingeschränkt, was das Eventen angeht...

Aber deine zweite Idee ist gar nicht mal so schlecht! Zwar bräuchte ich dafür mindestens 3 Gegner in der Datenbank, obwohl es nur einer sein kann, jedoch könnte das gut klappen.

Die Begrenzung liegt bei 999 Monstern. Das ist eigtl. mehr als genug.

Meine einzige Befürchtung ist, dass es, wie du es schon angedeutet hast, auffliegen könnte.
Schließlich lassen einige Feinde ein bestimmtes Item gar nicht fallen und wenn man Pech hat, erwischt man nur Monster, die man gar nicht braucht. Es herrschen nicht die gleichen Bedingungen...

Also wenn nach 1 Woche noch niemand probiert hat, diese kleine Lücke auszubessern (ich wäre echt froh darüber!), werde ich diese provisorische Variante bevorzugen. :grimace:
Die Idee ist wirklich eine gute Alternative. Man betrügt leider nur den Spieler. :hehe:

Edit: Ich habe sogar schon eine Antwort erhalten, also benötige ich vorerst kein Script mehr. :haha:
« Letzte Änderung: April 30, 2012, 10:38:34 von Franky »

Re: Vampyr SBABS More Item Drops

Offline Emelie Rose

  • Meisterköchin
  • Eventmeister
  • ***
  • Beiträge: 329
Re: Vampyr SBABS More Item Drops
« Antwort #7 am: April 30, 2012, 13:49:14 »
naja betrügen würd ich jetzt nicht sagen :D

nehmen wir als beispiel das game WoW. da kriegt man ja auch nicht von jedem mob den quest gegenstand sondern muss oftmals viele killen. für mich machst du nur die quests "schwerer" ;)

Re: Vampyr SBABS More Item Drops

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Re: Vampyr SBABS More Item Drops
« Antwort #8 am: April 30, 2012, 18:01:39 »
Aber ich glaube nicht, dass sie in WoW 5 mal denselben Gegner erstellt haben, nur weil sie keine Event-Monster anfertigen konnten  :grimace:.
Dort sind auch alle Monster gleich und haben eine bestimmte Prozentzahl, die bestimmt, wann ein Item gedropt wird.

Re: Vampyr SBABS More Item Drops

Offline Emelie Rose

  • Meisterköchin
  • Eventmeister
  • ***
  • Beiträge: 329
Re: Vampyr SBABS More Item Drops
« Antwort #9 am: April 30, 2012, 23:57:15 »
klar haben die da nicht 5x das gleiche monster :D

und wenn du da eh 100% drop chance willst machste halt das item bei allen rein und dann ein optionales :)

Re: Vampyr SBABS More Item Drops

Offline Valentine

  • Eventmeister
  • ***
  • Beiträge: 352
Re: Vampyr SBABS More Item Drops
« Antwort #10 am: Mai 01, 2012, 12:30:39 »
Hey Franky, Danke Danke es hat geklappt! Genau das wollte ich wissen mit den Events =D

Re: Vampyr SBABS More Item Drops

Offline Franky

  • Blutiger Fortgeschrittener
  • Eventmeister
  • ***
  • Beiträge: 390
Re: Vampyr SBABS More Item Drops
« Antwort #11 am: Mai 01, 2012, 14:52:37 »
Hier ist die Lösung, falls es hier auch jemand braucht! :haha:
(von Irrlicht)

Unter Vampyr SBABS einfügen:
class Game_Event < Game_Character
 
  def make_drop
    droped_items = []
    for i in [self.actor.drop_item1, self.actor.drop_item2]
      next if i.kind <= 0
      next if rand(i.denominator) != 0
      if i.kind == 1
        droped_items.push($data_items[i.item_id])
      elsif i.kind == 2
        droped_items.push($data_weapons[i.weapon_id])
      elsif i.kind == 3
        droped_items.push($data_armors[i.armor_id])
      end
    end
    # EINGEFÜGT:
    drop_filter = /<#{Deriru::DropNotes::DROP_TAG} (\d*) (\d*) (\d*)>/i
    $data_enemies[self.enemy_id].note.scan(drop_filter) do
      item_type = $1.to_i
      item_id = $2.to_i
      drop_rate = $3.to_i
      if rand(100) < drop_rate
        items = item_type == 1 ? $data_items :
                item_type == 2 ? $data_weapons :
                item_type == 3 ? $data_armors : []
        droped_items.push(items[item_id])
      end
    end
    #===========
    for i in droped_items.compact
      $game_drop.push(Game_Drop.new(self, i.icon_index, i, 0))
    end
    if $Vampyr_SBABS.auto_exp_e_gold and @boss <= 0
      gold = (self.actor.maxhp+self.actor.maxmp+self.actor.atk+self.actor.def+self.actor.spi+
      self.actor.agi+self.actor.hit+self.actor.eva) * $Vampyr_SBABS.auto_gold_rate / 100
    else
      gold = self.actor.gold
    end
    if gold > 0 and rand(100) <= $Vampyr_SBABS.gold_drop_rate
      $game_drop.push(Game_Drop.new(self, $Vampyr_SBABS.gold_drop_icon_index, nil, gold))
    end
  end
end


@Valentine
Kein Problem! :zwinker:

@Emelie Rose
100% Dropchance habe ich noch nie gebraucht! xD Viel zu hoch! Maximal 70%, alles was drüber geht, verdirbt den "Sammel-Effekt" :haha_zwinker:.
Bei WoW soll es ja Items geben, die nur zu 0,0001 Prozent droppen, oder so xD! War schon lange nicht mehr online, aber so etwas habe ich in Erinnerung.

Re: Vampyr SBABS More Item Drops

Offline Valentine

  • Eventmeister
  • ***
  • Beiträge: 352
Re: Vampyr SBABS More Item Drops
« Antwort #12 am: Mai 03, 2012, 23:30:00 »
Sagt mal wisst ihr wie man bei dem Vampyr ABS die Standard Attacke die man mit A auslöst wo dann die ausgerüstete Waffe geschwingt wird, gegen etwas anderes eintauschen kann, zBsp. eine Animation?

 


 Bild des Monats

rooftop party

Views: 3585
By: papilion

 Umfrage

  • Wer soll das BdM gewinnen?
  • Dot Kandidat 1
  • 3 (25%)
  • Dot Kandidat 2
  • 1 (8%)
  • Dot Kandidat 3
  • 2 (16%)
  • Dot Kandidat 4
  • 0 (0%)
  • Dot Kandidat 5
  • 6 (50%)
  • Stimmen insgesamt: 12
  • View Topic

 Schnellsuche





SimplePortal 2.3.3 © 2008-2010, SimplePortal