collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: Kleine Fragen, Schnelle Antworten  (Gelesen 1724 mal)

Offline FlipelyFlip

  • Will sein Alter nicht verraten xD
  • Administrator
  • VX-Großmeister
  • ****
  • Beiträge: 884
  • Heyho (=
    • Flips Musik Kariere auf Facebook xD
Kleine Fragen, Schnelle Antworten
« am: Dezember 25, 2012, 03:17:01 »
Heyey liebe Leute,

Damit das Technik-Forum nicht mehr mit solch kleinen Threads zugeballert wird, hier ein Thread für jeden, der eine kleine Frage hat, und eine schnelle Antwort sucht.
Wenn ihr wissen wollt, wie man ein Event automatisch starten lässt, oder irgendwelche andere "Einzeilige Fragen" habt, dann postet sie bitte hier.
Ich verweise auch nochmal auf unsere RPG Maker VX Ace-Mentoren, die jedem mit Rat und Tat zur Seite stehen.

lg flipy

Re: Kleine Fragen, Schnelle Antworten

Offline derandere

  • Zero Post Lurker
  • Beiträge: 0
Re: Kleine Fragen, Schnelle Antworten
« Antwort #1 am: Dezember 30, 2012, 20:07:46 »
Hi ho,

auch wenn hier nur schnelle Fragen rein sollen...ich stelle mich GAAANZZ kurz vor.
Ich bin derandere habe mir vor ein paar Tagen über Steam den RPG Maker VX ACE
gekauft und bin am durchstöbern von Tutorials etc. Ich selbst programmiere in C++ C# habe aber
mit diesem Tool noch null Erfahrung.
Ich bin auf der Suche nach den Kampfregeln, bzw. auf der Suche nach der Stelle im Maker an der ich diese
anpassen oder nachlesen kann.

Unter Skills kann ich bei Formula ja einiges ändern...ich hoffe aber, dass es ihrgendwo noch ne andere Stelle gibt.
Was ich möchte, ist dass z.B :

if(a.Attackewert+random(6)>b.Verteidgungswert+random(6)then X Schaden

Wo hinterlegt man diese Regeln oder kann man die nicht verändern ?

Vielen Dank derandere




Re: Kleine Fragen, Schnelle Antworten

Offline FlipelyFlip

  • Will sein Alter nicht verraten xD
  • Administrator
  • VX-Großmeister
  • ****
  • Beiträge: 884
  • Heyho (=
    • Flips Musik Kariere auf Facebook xD
Re: Kleine Fragen, Schnelle Antworten
« Antwort #2 am: Dezember 30, 2012, 23:52:16 »
heyey,

erstmal willkommen hier im Forum (:

Also zu deiner Frage:

so standardmäßig geht das überhaupt nicht.
Man kanns jedoch mit nem Script regeln. Die Scriptsprache beim Maker ist eine abgespeckte Version von Ruby, dürfte aber für dich nicht all zu schwer sein (:

Spoiler for Hiden:
#==============================================================================
#
# ▼ Yanfly Engine Ace - Lunatic Damage v1.01
# -- Last Updated: 2011.12.22
# -- Level: Lunatic
# -- Requires: n/a
#
#==============================================================================

$imported = {} if $imported.nil?
$imported["YEA-LunaticDamage"] = true

#==============================================================================
# ▼ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2011.12.22 - Small bugfix on notetags and Ace Battle Engine compatibility.
# 2011.12.20 - Started Script and Finished.
#
#==============================================================================
# ▼ Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# Lunatic mode effects have always been a core part of Yanfly Engine scripts.
# They exist to provide more effects for those who want more power and control
# for their items, skills, status effects, etc., but the users must be able to
# add them in themselves.
#
# At first, I thought the need for Lunatic Damage tags would be no longer
# needed due to RPG Maker VX Ace's custom damage formula box, but after
# realizing that it's limited in size (100 characters max), Lunatic Damage will
# have to take over if needed.
#
#==============================================================================
# ▼ Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ▼ Materials/素材 but above ▼ Main. Remember to save.
#
#==============================================================================
# ▼ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
#
#==============================================================================

class Game_Battler < Game_BattlerBase
 
  #--------------------------------------------------------------------------
  # ● Welcome to Lunatic Mode
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  # Lunatic Damage Formulas allows skills and items to use custom damage
  # formulas that allow for more than 100 characters. Use the following
  # notetag to assign the formulas to be used.
  #
  #     <custom damage: string>
  #
  # The string used will refer to the formula used below. Also, note that
  # through this script, all items and skills will run through this method
  # even if the <custom damage> notetag isn't used.
  #
  # "NORMAL FORMULA" will be the formula used if no custom damage formulas
  # are inserted. In addition to that, you may also insert "NORMAL FORMULA"
  # to have the custom damage formula add on the normal damage formula used
  # in "Formula Calculation" within the database editor.
  #
  # If multiple tags of the custom damage notetags are used in the same
  # skill/item's notebox, then the calculations will occur in that order.
  # Replace "string" in the tags with the appropriate flag for the method
  # below to search for. Note that unlike the previous versions, these are
  # all upcase.
  #
  # Should you choose to use multiple lunatic formulas for a single skill or
  # item, you may use these notetags in place of the one shown above.
  #
  #     <custom damage>
  #      string
  #      string
  #     </custom damage>
  #
  # All of the string information in between those two notetags will be
  # stored the same way as the notetags shown before those. There is no
  # difference between using either.
  #--------------------------------------------------------------------------
  def lunatic_damage_formula(user, item)
    formulas = item.custom_damage
    @calc_element = true
    @calc_pdr = true
    @calc_mdr = true
    @calc_rec = true
    @calc_cri = true
    @calc_var = true
    @calc_guard = true
    a = user
    b = self
    value = 0
    for formula in formulas
      case formula.upcase
      #----------------------------------------------------------------------
      # Damage Formula: Normal Formula
      # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      # This formula uses/adds on the normal formula displayed in the
      # database editor. If no custom damage formulas are used, this will
      # take effect.
      #----------------------------------------------------------------------
      when /NORMAL FORMULA/i
        value += item.damage.eval(user, self, $game_variables)
       
      #----------------------------------------------------------------------
      # Damage Formula: Common Damage
      # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      # This is a part of the damage formulas that will run every time damage
      # is calculated. This step will always occur at the end but right
      # before the Finalization step.
      #----------------------------------------------------------------------
      when /COMMON DAMAGE/i
        # No common after effects added.
       
      #----------------------------------------------------------------------
      # Damage Formula: Finalization
      # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      # All damage calculations will run "FINALIZATION" after calculating.
      # Adjust whatever settings you want done here. By default, this setting
      # will correct certain values in case they go under specific amounts
      # under specific conditions (like HP draining).
      #----------------------------------------------------------------------
      when /FINALIZATION/i
        value *= item_element_rate(user, item) if @calc_element
        value *= pdr if item.physical? && @calc_pdr
        value *= mdr if item.magical? && @calc_mdr
        value *= rec if item.damage.recover? && @calc_rec
        value = apply_critical(value) if @result.critical && @calc_cri
        value = apply_variance(value, item.damage.variance) if @calc_var
        value = apply_guard(value) if @calc_guard
        #---
        if formulas.include?("NORMAL FORMULA")
          if item.damage.to_mp?
            value = [b.mp, value].min
          elsif item.damage.to_hp? && item.damage.drain?
            value = [b.hp, value].min
          end
        end # formulas.include?("NORMAL FORMULA")
       
      #----------------------------------------------------------------------
      # Stop editting past this point.
      #----------------------------------------------------------------------
      else
        value += lunatic_damage_extension(formula, a, b, item, value)
      end
    end
    return value.to_i
  end # lunatic_damage_formula(user, item)
 
end # Game_Battler

#==============================================================================
# ▼ Editting anything past this point may potentially result in causing
# computer damage, incontinence, explosion of user's head, coma, death, and/or
# halitosis so edit at your own risk.
#==============================================================================

module YEA
  module REGEXP
  module USABLEITEM
   
    CUSTOM_DAMAGE_STR = /<(?:CUSTOM_DAMAGE|custom damage):[ ](.*)>/i
    CUSTOM_DAMAGE_ON  = /<(?:CUSTOM_DAMAGE|custom damage)>/i
    CUSTOM_DAMAGE_OFF = /<\/(?:CUSTOM_DAMAGE|custom damage)>/i
   
  end # USABLEITEM
  end # REGEXP
end # YEA

#==============================================================================
# ■ DataManager
#==============================================================================

module DataManager
 
  #--------------------------------------------------------------------------
  # alias method: load_database
  #--------------------------------------------------------------------------
  class <<self; alias load_database_ldmg load_database; end
  def self.load_database
    load_database_ldmg
    load_notetags_ldmg
  end
 
  #--------------------------------------------------------------------------
  # new method: load_notetags_ldmg
  #--------------------------------------------------------------------------
  def self.load_notetags_ldmg
    groups = [$data_items, $data_skills]
    for group in groups
      for obj in group
        next if obj.nil?
        obj.load_notetags_ldmg
      end
    end
  end
 
end # DataManager

#==============================================================================
# ■ RPG::UsableItem
#==============================================================================

class RPG::UsableItem < RPG::BaseItem
 
  #--------------------------------------------------------------------------
  # public instance variables
  #--------------------------------------------------------------------------
  attr_accessor :custom_damage
 
  #--------------------------------------------------------------------------
  # common cache: load_notetags_ldmg
  #--------------------------------------------------------------------------
  def load_notetags_ldmg
    @custom_damage = []
    @custom_damage_on = false
    #---
    self.note.split(/[\r\n]+/).each { |line|
      case line
      #---
      when YEA::REGEXP::USABLEITEM::CUSTOM_DAMAGE_STR
        @custom_damage.push($1.to_s)
      #---
      when YEA::REGEXP::USABLEITEM::CUSTOM_DAMAGE_ON
        @custom_damage_on = true
      when YEA::REGEXP::USABLEITEM::CUSTOM_DAMAGE_OFF
        @custom_damage_on = false
      #---
      else
        @custom_damage.push(line.to_s) if @custom_damage_on
      end
    } # self.note.split
    #---
    @custom_damage.push("NORMAL FORMULA") if @custom_damage == []
    @custom_damage.push("COMMON DAMAGE")
    @custom_damage.push("FINALIZATION")
  end
 
end # RPG::UsableItem

#==============================================================================
# ■ Game_ActionResult
#==============================================================================

class Game_ActionResult
 
  #--------------------------------------------------------------------------
  # overwrite method: make_damage
  #--------------------------------------------------------------------------
  def make_damage(value, item)
    @critical = false if value == 0
    @hp_damage += value if item.damage.to_hp?
    @mp_damage += value if item.damage.to_mp?
    @hp_drain += @hp_damage if item.damage.drain?
    @mp_drain += @mp_damage if item.damage.drain?
    @success = true if item.damage.to_hp? || @mp_damage != 0
  end
 
end # Game_ActionResult

#==============================================================================
# ■ Game_Battler
#==============================================================================

class Game_Battler < Game_BattlerBase
 
  #--------------------------------------------------------------------------
  # overwrite method: make_damage_value
  #--------------------------------------------------------------------------
  def make_damage_value(user, item)
    p $lunatic
    value = lunatic_damage_formula(user, item)
    @result.make_damage(value.to_i, item)
    return unless $imported["YEA-BattleEngine"]
    rate = item_element_rate(user, item)
    make_rate_popup(rate) unless $game_temp.evaluating
  end
 
  #--------------------------------------------------------------------------
  # new method: lunatic_damage_extension
  #--------------------------------------------------------------------------
  def lunatic_damage_extension(formula, a, b, item, total_damage)
    # Reserved for future Add-ons.
    user = a; value = 0
    case formula.upcase
    # zum nutzen von diesem Code muss folgendes in die Notebox des Skills:
    # <custom damage: atk higher>
    when /ATK HIGHER/i
      if a.atk > self.atk
        value = 50
      end
    end
  return value
  end
 
end # Game_Battler

#==============================================================================
#
# ▼ End of File
#
#==============================================================================

im Spoiler findest du ein Script was eben genau deinen Wünschen entspricht, es zu nutzen.
Ganz unten findest du auch dein Beispiel mit dem ATK höher als die des Gegners. das kannst du ganz einfach auch für andere Werte nutzen, musst halt dazuscripten was du alles benötigst (:

lg flipy

Re: Kleine Fragen, Schnelle Antworten

Offline derandere

  • Zero Post Lurker
  • Beiträge: 0
Re: Kleine Fragen, Schnelle Antworten
« Antwort #3 am: Januar 01, 2013, 13:35:08 »
Danke dann werde ich das mal testen :)

Re: Kleine Fragen, Schnelle Antworten

Offline Valentine

  • Eventmeister
  • ***
  • Beiträge: 352
Re: Kleine Fragen, Schnelle Antworten
« Antwort #4 am: Januar 31, 2013, 12:28:25 »
Kennt hier wer ein Skript, das wie Resident Evil funktioniert? Das heißt: per Tastendruck Waffe ziehen, was ja dann auch die Chara Grafik dementsprechend ändern sollte. Eines konnte ich finden, aber das gibt es nur den VX Ace, ich suche eins für den VX.

Re: Kleine Fragen, Schnelle Antworten

Offline Kyoshiro

  • Moderator
  • RPGVX-Forengott
  • ***
  • Beiträge: 1623
  • Stand up and fight!
    • Mein Blog
Re: Kleine Fragen, Schnelle Antworten
« Antwort #5 am: Januar 31, 2013, 13:25:04 »
Hast du mal nachgesehen ob der gleiche Scripter das schon für den VX gemacht hatte?

Re: Kleine Fragen, Schnelle Antworten

Offline FlipelyFlip

  • Will sein Alter nicht verraten xD
  • Administrator
  • VX-Großmeister
  • ****
  • Beiträge: 884
  • Heyho (=
    • Flips Musik Kariere auf Facebook xD
Re: Kleine Fragen, Schnelle Antworten
« Antwort #6 am: Januar 31, 2013, 14:00:52 »
sowas kann man auch ganz einfach per Events machen.
Einfach eine Tastenabfrage machen, ob die gewünschte Taste gedrückt wurde.
Wenn ja, dann änder die Grafik und aktivier zB. nen Switch, welcher dann dazu
genutzt werden kann, um zu sagen, dass die Waffe gezogen ist. Bei drücken der
selben Taste wird eben der Switch off gemacht und die Waffe eingesteckt. So schwer
ist das nicht, dass man dafür ein Script braucht.

lg flipy

Re: Kleine Fragen, Schnelle Antworten

Offline Valentine

  • Eventmeister
  • ***
  • Beiträge: 352
Re: Kleine Fragen, Schnelle Antworten
« Antwort #7 am: Januar 31, 2013, 15:53:49 »
Hast du mal nachgesehen ob der gleiche Scripter das schon für den VX gemacht hatte?

Ja hab alles abgesucht auch seine HP, wurde nur für den Ace geskriptet.

Das mit Event und Tastenabfrage werd ich mal versuchen.

### Okay Flip dein Tip war Top, funktioniert wunderbar!
Ich seh grad das ich im Ace Forum gepostet habe, sollte in VX sein... Sorry verschiebt den Post sonst oder laßt den hier stehen.
« Letzte Änderung: Februar 01, 2013, 11:56:43 von Valentine »

Re: Kleine Fragen, Schnelle Antworten

Offline Ruffy115

  • Ralph
  • *
  • Beiträge: 10
Re: Kleine Fragen, Schnelle Antworten
« Antwort #8 am: Februar 02, 2013, 22:05:47 »
also ich möchte ein Rätsel machen wo z.B 4 Statuen sind und diese in der richtigen Reihenfolgen drücken muss ,aber wenn man eine falsche Reihenfolge oder Statue nimmt, dass es dann wieder von vorne beginnt diese Reihenfolge. Also jetzt komme ich zu meiner Frage kann man sowas machen oder nur per script oder gar nicht ?

Re: Kleine Fragen, Schnelle Antworten

Offline FlipelyFlip

  • Will sein Alter nicht verraten xD
  • Administrator
  • VX-Großmeister
  • ****
  • Beiträge: 884
  • Heyho (=
    • Flips Musik Kariere auf Facebook xD
Re: Kleine Fragen, Schnelle Antworten
« Antwort #9 am: Februar 02, 2013, 22:52:36 »
machs doch einfach so:

Nimm eine Variable her und gib ihr den Wert 0.
Jetzt nimmst du die Statue 3 her und überprüfst, ob der Wert == 0 ist. Wenn ja, dann füge 1 hinzu und lass ein SE abspielen, welches dir anzeigt, dass es richtig ist.
Falls der Wert der Variable nicht 0 ist, dann lass ein SE abspielen, welches dir den Fehler symbolisiert und setze den Wert auf 0 zurück.

Für zB. Statue Nr. 1 überprüfst du, ob der Wert == 1 ist. Wenn ja, dann + 1 zur Variable dazu rechnen und SE abspielen für Richtig.
Wenn der Wert nicht 1 ist, dann setz die Variable auf 0 zurück und lass das Fehlschlag-SE abspielen.

so kannst du weiter machen, bis du nicht alle Statuen abgefragt hast und die Richtige Reihenfolge hast (:

Du kannst dann auch ein Parallel Event einbauen, welches abfragt, ob die Variable den Wert 4 hat. Wenn ja, legt dieses Event einen Schalter um und das Rätsel ist gelöst (:

lg flipy

Re: Kleine Fragen, Schnelle Antworten

Offline Ruffy115

  • Ralph
  • *
  • Beiträge: 10
Re: Kleine Fragen, Schnelle Antworten
« Antwort #10 am: Februar 03, 2013, 00:41:06 »
ok danke für die Hilfe ich werde es mal ausprobieren

edit:

ich hätte da aber noch eine zusätzliche Frage kann man es auch machen, dass wenn man die Reihenfolge falsch macht immer eine zufällige andere Reihenfolge ersteht ?

Unterlasse das Doppelposting. Das is nur eine Ermahnung. Achte in Zukunft darauf, denn es gibt nicht umsonst einen Melde-Button.
lg flipy
« Letzte Änderung: Februar 03, 2013, 15:36:16 von FlipelyFlip »

Re: Kleine Fragen, Schnelle Antworten

Offline FlipelyFlip

  • Will sein Alter nicht verraten xD
  • Administrator
  • VX-Großmeister
  • ****
  • Beiträge: 884
  • Heyho (=
    • Flips Musik Kariere auf Facebook xD
Re: Kleine Fragen, Schnelle Antworten
« Antwort #11 am: Februar 03, 2013, 15:37:48 »
können schon, da musst du blos ne weitere Variable nehmen und damit dann die Eventseiten steuern. Wenn man dann Falsch liegt, kannst du ihr einen zufälligen Wert geben und so die Schalter unterschiedlich verteilen.

lg flipy

Re: Kleine Fragen, Schnelle Antworten

Offline Ruffy115

  • Ralph
  • *
  • Beiträge: 10
Re: Kleine Fragen, Schnelle Antworten
« Antwort #12 am: Februar 03, 2013, 16:58:04 »
können schon, da musst du blos ne weitere Variable nehmen und damit dann die Eventseiten steuern. Wenn man dann Falsch liegt, kannst du ihr einen zufälligen Wert geben und so die Schalter unterschiedlich verteilen.

lg flipy

Ich versteh das nicht so richtig ... :sad: Kannst du mir das bitte erklären, damit sogar ich das verstehe ?

Re: Kleine Fragen, Schnelle Antworten

Offline EAGLEX91

  • [angehender Sci Fi Prophet]
  • Ralph
  • *
  • Beiträge: 4
  • Ich bräuchte ein paar [sci fi gesinnte] Helfer !
Re: Kleine Fragen, Schnelle Antworten
« Antwort #13 am: Februar 06, 2013, 17:19:04 »
Heyho

Ich arbeite gerade an einem nicht gerade normalen Npc ( er wird ein  partymitglied sein )  ... jedoch soll dieser nicht mit normalen heil- items geheilt werden können und auch nicht  mit items die die mp erhöhen oder aufüllen. Stattdessen sollte er mit einer art konsumierbaren Rüstung, die die hp wieder aufüllt, ausgerüstet werden. Kann mir da jemand helfen, falls das unmöglich ist wäre ich auch für alternativen dankbar:  :zwinker:
Spoiler for Hiden:

Aktuelles Projekt: _Dark Sun_
(momentan Konzeptionsphase und Aufbau der Grundlagen)
Ich arbeite dran ... und verdammt, es wird ein sci fi Game!

 ... davon gibts in der Rpg szene viel zu wenig und auch keine wirklich guten... ich hoffe das kann ich bald ändern ;)


Re: Kleine Fragen, Schnelle Antworten

Offline Valentine

  • Eventmeister
  • ***
  • Beiträge: 352
Re: Kleine Fragen, Schnelle Antworten
« Antwort #14 am: Februar 09, 2013, 11:02:39 »
Meinst du der Chara soll eine Rüstung tragen die die HP wieder auffüllt?
Oder
Eine Rüstung die HP auffüllt nach und nach, sich aber verbraucht wenn er diese trägt und dann weg ist?

Beide Wege führen nach Rom!
Erstell einfach ein Event was du auf jeder Map einfügst. Enthalten sein muss eine Bediengung (Held trägt Rüstung) dann einfach auf HP ändern und dann einen Wert eintragen wieviel sich erhöhen soll. Dazwischen natürlich Wartezeiten (Wait/Warten: 120) oder so, je nachdem.
Was ich jetzt allerdings nicht weiß, wie sich die Rüstung verbraucht/abnutzt. Irgendwo glaube das aber gesehen zu haben.

Wenn es genau das ist was du suchst und nicht ganz verstehst wie du das umsetzen musst, frag einfach!

 


 Bild des Monats

rooftop party

Views: 3218
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