Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie entferne ich folgende nervige Dinge im Kampfsystem?
Ken der Kot
14.08.2018, 19:14
Ich möchte alle Effekte, die eine Szene im Kampfsystem überblenden einfach nur raus haben und im Maker ist das wohl nicht so ohne weiteres einstellbar ohne tausend Zusatzscripte...
Ich meine die folgenden Dinge:
- Battle Transition: Wie entferne ich die Battle Transition? Ich möchte einen nahtlosen Übergang in den Kampf. Der Maker soll keine Sekunde ruckeln, nur weil er die Szene wechseln muss. Das Kampffenster soll sofort einblenden. VE Turn Map Battle (https://www.youtube.com/watch?v=sdZw1ID6zZM) macht das, was ich will. Allerdings müsste ich dafür dem sein komplettes KS nutzen (was ich nicht will).
- Bei Fliehen: Der Screen blendet aus und wieder ein. Das möchte ich entfernt haben. Es soll ohne Verzögerung wieder zur Map gewechselt werden.
- Nach Kampf gewonnen: Auch hier. Der Screen blendet aus und wieder ein. Das möchte ich entfernt haben. Es soll ohne Verzögerung wieder zur Map gewechselt werden.
Ich bitte um Hilfe, da ich an diesem Kleinkram schon den ganzen Tag sitze und zu keiner Lösung komme. :(
Und um welchen Maker handelt es sich?
Also wenn ich es richtig gelesen habe, sind es im Maker inplentierte Funktionen die man wohl nur über Skripts umgehen könnte. Der Aufwand der dahinter steckt, kann ich nicht so gut beurteilen allerdings glaube ich nicht, dass es ein Script gibt welches diese Funktion ausschaltet bzw umändert
Ken der Kot
15.08.2018, 08:53
Hallo Gridley es handelt sich hierbei um den Vx Ace.
Gucke ich mir heute Abend an, wenn es bis dahin noch nicht gelöst ist. Transition rausnehmen sollte jetzt nicht so aufwendig sein.
Ken der Kot
15.08.2018, 11:43
Danke Linkey. Da bin ich gleich zuversichtlich gestimmt. :)
Habe es in der Mittagspause erledigt. Falls ich nicht alle Stellen erwischt habe, einfach bescheid geben, wo du noch ein Problem hast. Wie immer über Main einfügen:
class Scene_Base
def transition_speed()
return 0
end
def fadeout_all(time = 1000)
RPG::BGM.fade(time)
RPG::BGS.fade(time)
RPG::ME.fade(time)
Graphics.fadeout(0)#time * Graphics.frame_rate / 1000)
RPG::BGM.stop
RPG::BGS.stop
RPG::ME.stop
end
end
class Scene_Map < Scene_Base
def transition_speed()
return 0
end
#--------------------------------------------------------------------------
# * Execute Pre-Battle Transition
#--------------------------------------------------------------------------
def perform_battle_transition
Graphics.transition(0, "Graphics/System/BattleStart", 100)
Graphics.freeze
end
#--------------------------------------------------------------------------
# * Get Fade Out Speed
#--------------------------------------------------------------------------
def fadeout_speed
return 0
end
#--------------------------------------------------------------------------
# * Get Fade In Speed
#--------------------------------------------------------------------------
def fadein_speed
return 0
end
#--------------------------------------------------------------------------
# * Get Fade Out Speed for Title Screen Transition
#--------------------------------------------------------------------------
def fadeout_speed_to_title
return 0
end
end
class Scene_Battle < Scene_Base
def transition_speed()
return 0
end
def pre_terminate
super
Graphics.fadeout(0) if SceneManager.scene_is?(Scene_Map)
Graphics.fadeout(0) if SceneManager.scene_is?(Scene_Title)
end
end
class Scene_Title < Scene_Base
def transition_speed()
return 0
end
end
Ken der Kot
15.08.2018, 12:36
Hey vielen Dank schon mal.
Hab es getestet aber es entfernt leider sogar die Übergänge beim Titel Screen. Also ich wollte eigentlich nur den Übergang in den Kampf entfernt haben, sowie die Fade-out und Fade-In Effekte, die nach dem Fliehen aus einem Kampf eintreten und nachdem man einen Kampf gewonnen hat. Also diese Überblendungen zu Scene_Battle.
Dort hingegen gibt es ein kleines Problem. Nämlich verwende ich Wettereffekte (die ganz normalen) im Kampf. Das funktioniert zwar weiterhin auch gut, nur ruckelt das Wetter leicht, während dem Übergang. Bekommt man es vielleicht so hin, daß man es gar nicht merkt, dass der Maker die Szene wechselt? Will es so, daß einfach nur die Battle Windows erscheinen ohne Ruckeln und man dann sofort losfighten kann.
Okay, dachte du wolltest die komplett raus haben. Erstmal hier, dass es nur noch Kämpfe betrifft:
class Scene_Map < Scene_Base
def transition_speed()
return 0
end
#--------------------------------------------------------------------------
# * Execute Pre-Battle Transition
#--------------------------------------------------------------------------
def perform_battle_transition
Graphics.transition(0, "Graphics/System/BattleStart", 100)
Graphics.freeze
end
#--------------------------------------------------------------------------
# * Get Fade Out Speed
#--------------------------------------------------------------------------
def fadeout_speed
return 0
end
#--------------------------------------------------------------------------
# * Get Fade In Speed
#--------------------------------------------------------------------------
def fadein_speed
return 0
end
#--------------------------------------------------------------------------
# * Get Fade Out Speed for Title Screen Transition
#--------------------------------------------------------------------------
def fadeout_speed_to_title
return 0
end
end
class Scene_Battle < Scene_Base
def transition_speed()
return 0
end
def pre_terminate
super
Graphics.fadeout(0) if SceneManager.scene_is?(Scene_Map)
Graphics.fadeout(0) if SceneManager.scene_is?(Scene_Title)
end
end
Bezüglich Wetter muss ich mal schauen. Sehe bei mir da auch keinen Ruckler.
Ken der Kot
15.08.2018, 13:37
Danke, so ist es besser :) Leider überblendet es immer noch, wenn der Kampf vorbei ist (d.h. wenn man gewonnen hat). Der Bildschirm wird dann für eine halbe Sekunde schwarz und erscheint dann erst.
Bezüglich Wetter: Ich verwende ein Skript, das es möglich macht, daß Wettereffekte im Kampf einfach weiterlaufen können.
Poste ich dir mal hier
Also Beispiel: Es schneit. Und wenn es dann zum Kampf überblendet "ruckelt" das Wetter kurz, bevor es normal weiterschneit. Der Ruckler soll weg. Hab da schon einiges versucht, aber habs nicht geschafft.
class Spriteset_Battle
#just throw the weather creation somewhere after viewports created...
alias tsuki_weatherfx_create_viewports create_viewports
def create_viewports
tsuki_weatherfx_create_viewports
create_weather
end
def create_weather
@weather = Spriteset_Weather.new(@viewport2)
@weather.type = $game_map.screen.weather_type
@weather.power = $game_map.screen.weather_power
end
alias tsuki_screenfx_spritebattle_update update
def update
tsuki_screenfx_spritebattle_update
update_weather
end
#only update weather if it's not the same as the current weather?
def update_weather
#@weather.type = $game_troop.screen.weather_type if $game_troop.screen.weather_type != @weather.type
#@weather.power = $game_troop.screen.weather_power if $game_troop.screen.weather_power != @weather.power
@weather.ox = 0
@weather.oy = 0
@weather.update
end
#throw weather disposal somewhere before viewports are disposed...
alias tsuki_weatherfx_dispose_viewports dispose_viewports
def dispose_viewports
dispose_weather
tsuki_weatherfx_dispose_viewports
end
def dispose_weather
@weather.dispose
end
end
class Game_Interpreter
#allow weather in battle
alias tsuki_weatherfx_command_236 command_236
def command_236
if $game_party.in_battle
screen.change_weather(@params[0], @params[1], @params[2])
wait(@params[2]) if @params[3]
else
tsuki_weatherfx_command_236
end
end
end
Ken der Kot
16.08.2018, 11:47
@ Linkey hast du das mit dem kurzen Ruckler noch entdecken können? Wär ja seltsam, wenn das Problem nur ich hätte :D
Vielleicht läuft mein VX Ace auch einfach flüssiger. Ich schaue aber mal, dass ich die Transition ganz rausnehme. Komme aber erst die Tage dazu. Momentan arbeite ich mich wieder zu Tode :D
Ken der Kot
16.08.2018, 12:38
Okay vielen Dank
Ken der Kot
18.08.2018, 13:35
Konntest du dich am Wochenende von der Arbeit gut erholen und evtl was machen? :)
Hey Ken,
ich bekomme wie gesagt diesesn schwarzen Bildschirm nicht, daher kann ich nicht testen, ob es funktioniert, aber reicht es eventuell, wenn du einefach die Pre-Termination überspringst (die letzte Methode aus dem script was ich dir oben gepostet habe mit folgender überschreiben):
def pre_terminate
#super
#Graphics.fadeout(0) if SceneManager.scene_is?(Scene_Map)
#Graphics.fadeout(0) if SceneManager.scene_is?(Scene_Title)
end
Ken der Kot
24.08.2018, 12:38
Hey, cool Danke schon mal. Das hat geholfen. Hab den schwarzen Bildschirm am Ende jetzt nicht mehr. Jedoch setzt das Wetter beim Übergang kurz aus und dann wieder ein (es existiert Wetter auf der Map). Das sollte flüssig ineinander übergehen, weil der Battlebackground ein Screenshot von der eigentlichen Map ist. Man soll nicht sehen, daß da eine Szene "gewechselt" wird.
Auch der Wetterruckler am Anfang der Map ist leider noch da, kurz bevor das Kampfmenü einblendet. Also das Wetter setzt nicht aus, aber es stoppt für ein paar Frames bevor es weitergeht und das merkt man.
Wahrscheinlich läuft der Ace bei mir mit mehr FPS. Ich habe da einfach keine Ruckler drin - bzw. ist dieser eine Frame wahrscheinlich mit dem Auge nicht bemerkbar.
Versuch mal das Freezen und die Transition, auch wenn diese 0 Frames laufen sollte, rauszunehmen (die beiden zeilen der "perform_battle_transition methode" mit "#" auskommentieren):
def perform_battle_transition
#Graphics.transition(0, "Graphics/System/BattleStart", 100)
#Graphics.freeze
end
Ist dann der Ruckler zum Kampfstart weg?
Ken der Kot
24.08.2018, 13:21
Wieviel FPS hast du denn? Hab grad mal mit F2 die Anzeige aktiviert. Zum Kampfstart und danach sinds bei mir durchgehend 59-60. Die Zahl bricht also nicht ein, trotzdem kleiner Ruckler.
Hab die Änderung von dir mal übernommen, aber machts trotzdem nicht besser :(
Mh komisch. Hast du noch andere Scripts im Einsatz? Läuft bei mir flüssig, die 60 Frames ändern sich auch nie.
Schick mir mal das Projekt (am besten auf die betroffene Map reduziert), oder ein leeres projekt mit allen Scripts drin, wo der fehler auch auftritt.
Ken der Kot
24.08.2018, 13:46
Schick dir gleich pn
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.