Vai al contenuto

Rilevato Ad-Blocker. Per favore disabilita il tuo adblocker quando navighi su makerando.com - Non c'è nessun annuncio invasivo.

  • Chatbox

    You don't have permission to chat.
    Load More
MrSte

RPGMAKER VX ACE Lune Ultimate Anti-Lag

Recommended Posts

Autore: Raizen

 

Informazioni: Anti Lag abbastanza potente, questo anti lag si basa sui Frame e FPS e fa rendere il molto veloce, ovviamente potete impostare la velocità dei Frame e FPS ;)

 

Script:

 

#=======================================================

# Lune Ultimate Anti-Lag
# Author: Raizen
# Compatible with: RMVXAce
# Comunity: centrorpg.com
# This script allows a very well balanced anti-lag, in which
# considers the own PC of the player, using a smart frame-skipper
# to slow lags,
#========================================================

#To update constantly the event, put a commentary on the first
# command of the script written :update:

module Anti_conf
#==============================================================================
# ** Configurations
#------------------------------------------------------------------------------
# Configure what is necessary for a better performance.
#==============================================================================
# Choose how the script will act.
# <=====Quality============================Performance=====>
# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
# Default = 10
Fr = 10

# Configure the FPS rate (default = 60)
Fps = 60
# Configure the minimum FPS rate (default = 25)
Mini = 25
# Quantity of frames the anti-lag will study,
# the higher the time, the more precise the script,
# but will take longer to load the anti-lag
Time = 60

end
=begin




Functions on this Anti-Lag

* Common event positioning bug fixed
* Smart Frame Skipper
* updates what is only necessary
* helps to lower lags from visual system/scripts
* Changes its behavior according to the players PC
* Increases the RPG Maker priority over other programs


=end

#=================================================================#
#=================================================================#
#====================  Alias methods =============================#
# command_203          => Game_Interpreter
# start                => Scene_Map
# update               => Scene_Map
# perform_transfer     => Scene_Map
#=================================================================#
#====================  Rewrite methods ===========================#
# update_events        => Game_Map
# update_one_event     => Spriteset_Map
#=================================================================#
#========================  New methods ===========================#
# need_to_update?      => Game_Event
# near_the_screen?     => Sprite_Character
# call_position_event  => Scene_Map
# skip_calculate       => Scene_Map
# update_one_event     => Spriteset_Map
#=================================================================#
#=================================================================#
 
#==============================================================================
#============================  Início do Script!  =============================
#==============================================================================
#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
#  Esta classe executa o processamento da tela de mapa.
#==============================================================================
 
class Scene_Map < Scene_Base
alias lune_skip_start start
alias lune_skip_update update
alias lune_perform perform_transfer
 
#--------------------------------------------------------------------------
  # * Inicialização do processo
  #--------------------------------------------------------------------------
  def start
   
Graphics.frame_rate = Anti_conf::Fps
    @update_skip = false
    @count_up = 0
    lune_skip_start
 
end
  #--------------------------------------------------------------------------
  # * Execução da transferência
  #--------------------------------------------------------------------------
  def perform_transfer
    $get_new_ids
= Array.new
    Graphics.frame_rate = Anti_conf::Fps
    lune_perform
   
@count_up = 0
    @update_skip = false
  end
  #--------------------------------------------------------------------------
  # * Atualização da tela
  #--------------------------------------------------------------------------
  def update
   
@update_skip ? lune_skip_update : skip_calculate
 
end
  #--------------------------------------------------------------------------
  # * Atualização de um personagem especifico
  #--------------------------------------------------------------------------
  def call_position_event(id)
    @spriteset.update_one_event(id)
  end
  #--------------------------------------------------------------------------
  # * Calcula o tempo necessário para rodar o update do Scene_Map
  #--------------------------------------------------------------------------  
  def skip_calculate
   
@count_up += 1
    return unless @count_up >= Anti_conf::Time
    auto_skip = Time.now
    lune_skip_update
    old_skip
= Time.now
    get_skip
= old_skip - auto_skip
   
Graphics.frame_rate -= (get_skip * Graphics.frame_rate * 2 * Anti_conf::Fr - 1).to_i
   
Graphics.frame_rate = [Graphics.frame_rate, Anti_conf::Mini].max
   
@update_skip = true
  end
end
 
 

#==============================================================================
# ** Scene_Base
#------------------------------------------------------------------------------
#  Esta é a superclasse de todas as cenas do jogo.
#==============================================================================
class Scene_Base
alias skipper_main main
 
#--------------------------------------------------------------------------
  # * Processamento principal
  #--------------------------------------------------------------------------
  def main
   
@fr_cont = 0
    skipper_main
 
end
  #--------------------------------------------------------------------------
  # * Execução da transição
  #--------------------------------------------------------------------------
  def perform_transition
   
Graphics.transition(transition_speed * Graphics.frame_rate / 60)
  end
  #--------------------------------------------------------------------------
  # * Atualização da tela (básico)
  #--------------------------------------------------------------------------
  def update_basic
   
if @fr_cont >= 60
      Graphics.update    
     
@fr_cont -= 60
    end
    @fr_cont += Graphics.frame_rate
    update_all_windows
   
Input.update
 
end
end
 
#==============================================================================
# ** Aumento da prioridade do rpg maker
#------------------------------------------------------------------------------
Lune_high = Win32API.new("kernel32", "SetPriorityClass", "pi", "i")
Lune_high.call(-1, 0x90)
#==============================================================================
 
#==============================================================================
# ** Game_Event
#------------------------------------------------------------------------------
#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança
# de páginas de event por condições determinadas, e processos paralelos.
# Esta classe é usada internamente pela classe Game_Map. 
#==============================================================================
 
class Game_Event < Game_Character
  #--------------------------------------------------------------------------
  # * necessário atualizar?
  #--------------------------------------------------------------------------
  def need_to_update?
    ax = $game_map.adjust_x(@real_x) - 8
    ay = $game_map.adjust_y(@real_y) - 6
    ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:')
  end
end
 
#==============================================================================
# ** Sprite_Character
#------------------------------------------------------------------------------
#  Este sprite é usado para mostrar personagens. Ele observa uma instância
# da classe Game_Character e automaticamente muda as condições do sprite.
#==============================================================================
 
class Sprite_Character < Sprite_Base
  #--------------------------------------------------------------------------
  # * Evento próximo a tela?
  #--------------------------------------------------------------------------
  def near_the_screen?
    ax = $game_map.adjust_x(@character.x) - 8
    ay = $game_map.adjust_y(@character.y) - 6
    ax.between?(-11, 11) && ay.between?(-8, 8)
  end
end
#==============================================================================
# ** Game_Event
#------------------------------------------------------------------------------
#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança
# de páginas de event por condições determinadas, e processos paralelos.
# Esta classe é usada internamente pela classe Game_Map. 
#==============================================================================
 
class Game_Event < Game_Character
alias lune_ant_initialize initialize
 
#--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     event : RPG::Event
  #--------------------------------------------------------------------------
  def initialize(*args, &block)
    lune_ant_initialize(*args, &block)
    $get_new_ids.push(@event.id)
  end
end
 
#==============================================================================
# ** Game_Interpreter
#------------------------------------------------------------------------------
#  Um interpretador para executar os comandos de evento. Esta classe é usada
# internamente pelas classes Game_Map, Game_Troop e Game_Event.
#==============================================================================
 
class Game_Interpreter
alias lune_lag_command_203 command_203
 
#--------------------------------------------------------------------------
  # Definir posição do evento
  #--------------------------------------------------------------------------
  def command_203
    lune_lag_command_203
   
SceneManager.scene.call_position_event($get_new_ids.index(@event_id))
  end
end
#==============================================================================
# ** Game_Map
#------------------------------------------------------------------------------
#  Esta classe gerencia o mapa. Inclui funções de rolagem e definição de 
# passagens. A instância desta classe é referenciada por $game_map.
#==============================================================================
 
class Game_Map
  #--------------------------------------------------------------------------
  # * Atualização dos comandos dos eventos
  #--------------------------------------------------------------------------
  def update_events
   
@events.each_value {|event| event.update if event.need_to_update?}
    @common_events.each {|event| event.update}
  end
end
 
 
$get_new_ids
= Array.new
#==============================================================================
# ** Spriteset_Map
#------------------------------------------------------------------------------
#  Esta classe reune os sprites da tela de mapa e tilesets. Esta classe é
# usada internamente pela classe Scene_Map. 
#==============================================================================
class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Atualização dos personagens
  #--------------------------------------------------------------------------
  def update_characters
    refresh_characters
if @map_id != $game_map.map_id
   
@character_sprites.each {|sprite| sprite.update if sprite.near_the_screen? }
  end
  #--------------------------------------------------------------------------
  # * Atualização de algum personagem remoto
  #--------------------------------------------------------------------------
  def update_one_event(id)
    @character_sprites[id].update
 
end

end

 

 

Bug: Questo script presenta un bug molto strano, in poche parole il gioco crasha solo se si ha la risoluzione 640x480 ed è nella linea "191" nella classe Time. E inoltre si è sentito che lo script va in crash con altri script e sono:

Tutti gli script di YEA

RE System Weapons II

Quest Journal di modern algebra

 

 

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Script debuggato dall'autore/trice:

 

 

#=======================================================
#         Lune Ultimate Anti-Lag
# Author: Raizen
# Compatible with: RMVXAce
# Comunity: centrorpg.com
# This script allows a very well balanced anti-lag, in which
# considers the own PC of the player, using a smart frame-skipper
# to slow lags,
#========================================================

#To update constantly the event, put a commentary on the first
# command of the script written :update:

module Anti_conf
#==============================================================================
# ** Configurations
#------------------------------------------------------------------------------
#  Configure what is necessary for a better performance.
#==============================================================================
# Choose how the script will act.
# <=====Quality============================Performance=====>
# 1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19 20
# Default = 10
Fr = 10

# Configure the FPS rate (default = 60)
Fps = 60
# Configure the minimum FPS rate (default = 25)
Mini = 25
# Quantity of frames the anti-lag will study,
# the higher the time, the more precise the script, 
# but will take longer to load the anti-lag
Time = 60

end
=begin




Functions on this Anti-Lag

* Common event positioning bug fixed
* Smart Frame Skipper
* updates what is only necessary
* helps to lower lags from visual system/scripts
* Changes its behavior according to the players PC
* Increases the RPG Maker priority over other programs


=end

#=================================================================#
#=================================================================#
#====================  Alias methods =============================#
# command_203          => Game_Interpreter
# start                => Scene_Map
# update               => Scene_Map
# perform_transfer     => Scene_Map
#=================================================================#
#====================  Rewrite methods ===========================#
# update_events        => Game_Map
# update_one_event     => Spriteset_Map
#=================================================================#
#========================  New methods ===========================#
# need_to_update?      => Game_Event
# near_the_screen?     => Sprite_Character
# call_position_event  => Scene_Map
# skip_calculate       => Scene_Map
# update_one_event     => Spriteset_Map
#=================================================================#
#=================================================================#
 
#==============================================================================
#============================  Início do Script!  =============================
#==============================================================================
#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
#  Esta classe executa o processamento da tela de mapa.
#==============================================================================
 
class Scene_Map < Scene_Base
alias lune_skip_start start
alias lune_skip_update update
alias lune_perform perform_transfer
  #--------------------------------------------------------------------------
  # * Inicialização do processo
  #--------------------------------------------------------------------------
  def start
    Graphics.frame_rate = Anti_conf::Fps
    @update_skip = false
    @count_up = 0
    lune_skip_start
  end
  #--------------------------------------------------------------------------
  # * Execução da transferência
  #--------------------------------------------------------------------------
  def perform_transfer
    $get_new_ids = Array.new
    Graphics.frame_rate = Anti_conf::Fps
    lune_perform
    @count_up = 0
    @update_skip = false
  end
  #--------------------------------------------------------------------------
  # * Atualização da tela
  #--------------------------------------------------------------------------
  def update
    @update_skip ? lune_skip_update : skip_calculate
  end
  #--------------------------------------------------------------------------
  # * Atualização de um personagem especifico
  #--------------------------------------------------------------------------
  def call_position_event(id)
    @spriteset.update_one_event(id)
  end
  #--------------------------------------------------------------------------
  # * Calcula o tempo necessário para rodar o update do Scene_Map
  #--------------------------------------------------------------------------  
  def skip_calculate
    @count_up += 1
    return unless @count_up >= Anti_conf::Time
    auto_skip = Time.now
    lune_skip_update
    old_skip = Time.now
    get_skip = old_skip - auto_skip
    Graphics.frame_rate -= (get_skip * Graphics.frame_rate * 2 * Anti_conf::Fr - 1).to_i
    Graphics.frame_rate = [Graphics.frame_rate, Anti_conf::Mini].max
    @update_skip = true
  end
end
 
 
#==============================================================================
# ** Scene_Base
#------------------------------------------------------------------------------
#  Esta é a superclasse de todas as cenas do jogo.
#==============================================================================
class Scene_Base
alias skipper_main main
  #--------------------------------------------------------------------------
  # * Processamento principal
  #--------------------------------------------------------------------------
  def main
    @fr_cont = 0
    skipper_main
  end
  #--------------------------------------------------------------------------
  # * Execução da transição
  #--------------------------------------------------------------------------
  def perform_transition
    Graphics.transition(transition_speed * Graphics.frame_rate / 60)
  end
  #--------------------------------------------------------------------------
  # * Atualização da tela (básico)
  #--------------------------------------------------------------------------
  def update_basic
    if @fr_cont >= 60
      Graphics.update       
      @fr_cont -= 60
    end
    @fr_cont += Graphics.frame_rate
    update_all_windows
    Input.update
  end
end
 
#==============================================================================
# ** Aumento da prioridade do rpg maker
#------------------------------------------------------------------------------
Lune_high = Win32API.new("kernel32", "SetPriorityClass", "pi", "i")
Lune_high.call(-1, 0x90)
#==============================================================================
 
#==============================================================================
# ** Game_Event
#------------------------------------------------------------------------------
#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança
# de páginas de event por condições determinadas, e processos paralelos.
# Esta classe é usada internamente pela classe Game_Map. 
#==============================================================================
 
class Game_Event < Game_Character
  #--------------------------------------------------------------------------
  # * necessário atualizar?
  #--------------------------------------------------------------------------
  def need_to_update?
    return false unless @list
    ax = $game_map.adjust_x(@real_x) - 8
    ay = $game_map.adjust_y(@real_y) - 6
    ax.between?(-9, 9) && ay.between?(-7, 7) || @list[0].parameters.include?(':update:')
  end
end
 
#==============================================================================
# ** Sprite_Character
#------------------------------------------------------------------------------
#  Este sprite é usado para mostrar personagens. Ele observa uma instância
# da classe Game_Character e automaticamente muda as condições do sprite.
#==============================================================================
 
class Sprite_Character < Sprite_Base
  #--------------------------------------------------------------------------
  # * Evento próximo a tela?
  #--------------------------------------------------------------------------
  def near_the_screen?
    ax = $game_map.adjust_x(@character.x) - 8
    ay = $game_map.adjust_y(@character.y) - 6
    ax.between?(-11, 11) && ay.between?(-8, 8)
  end
end
#==============================================================================
# ** Game_Event
#------------------------------------------------------------------------------
#  Esta classe gerencia os eventos. Ela controla funções incluindo a mudança
# de páginas de event por condições determinadas, e processos paralelos.
# Esta classe é usada internamente pela classe Game_Map. 
#==============================================================================
 
class Game_Event < Game_Character
alias lune_ant_initialize initialize
  #--------------------------------------------------------------------------
  # * Inicialização do objeto
  #     event : RPG::Event
  #--------------------------------------------------------------------------
  def initialize(*args, &block)
    lune_ant_initialize(*args, &block)
    $get_new_ids.push(@event.id)
  end
end
 
#==============================================================================
# ** Game_Interpreter
#------------------------------------------------------------------------------
#  Um interpretador para executar os comandos de evento. Esta classe é usada
# internamente pelas classes Game_Map, Game_Troop e Game_Event.
#==============================================================================
 
class Game_Interpreter
alias lune_lag_command_203 command_203
  #--------------------------------------------------------------------------
  # Definir posição do evento
  #--------------------------------------------------------------------------
  def command_203
    lune_lag_command_203
    SceneManager.scene.call_position_event($get_new_ids.index(@event_id))
  end
end
#==============================================================================
# ** Game_Map
#------------------------------------------------------------------------------
#  Esta classe gerencia o mapa. Inclui funções de rolagem e definição de 
# passagens. A instância desta classe é referenciada por $game_map.
#==============================================================================
 
class Game_Map
  #--------------------------------------------------------------------------
  # * Atualização dos comandos dos eventos
  #--------------------------------------------------------------------------
  def update_events
    @events.each_value {|event| event.update if event.need_to_update?}
    @common_events.each {|event| event.update}
  end
end
 
 
$get_new_ids = Array.new
#==============================================================================
# ** Spriteset_Map
#------------------------------------------------------------------------------
#  Esta classe reune os sprites da tela de mapa e tilesets. Esta classe é
# usada internamente pela classe Scene_Map. 
#==============================================================================
class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Atualização dos personagens
  #--------------------------------------------------------------------------
  def update_characters
    refresh_characters if @map_id != $game_map.map_id
    @character_sprites.each {|sprite| sprite.update if sprite.near_the_screen? }
  end
  #--------------------------------------------------------------------------
  # * Atualização de algum personagem remoto
  #--------------------------------------------------------------------------
  def update_one_event(id)
    @character_sprites[id].update
  end
end

 

 

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

You need to be a member in order to leave a comment

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora

  • Contenuti simili

    • Da Waldorf
      2D Áperdam
       
       
       
       

       
       
       
       
       
      Ecco qui, finalmente, la demo del mio primissimo progetto "Serio" ufficiale!
       
       
       
       
       
      Trama:
       
       
      La storia si svolge all'interno di un liceo, la scuola Áperdam, ed ha come centro focale la classe Seconda D.
       
       
      Questi ragazzi devono all'improvviso capire cosa fare di fronte allo strano comportamento dei professori, che li attaccano utilizzando strane tecniche prese dalle loro materie.
       
       
      Allo stesso tempo altri fatti strani si aggiungono, che spinge questi studenti ad indagare sull'accaduto, ma cercando lo stesso di seguire la loro routine scolastica.
       
       
       
       
       
      Gameplay:
       
       
      Come ogni RPG il gameplay è composto da 2 momenti:
       
       
       
       
       
      -Battaglia: Le battaglie, grazie ad un preciso utilizzo degli script di battaglia MOG, sono molto più dinamiche. Varie mosse infatti permettono l'esecuzione di particolari combo per poter eseguire un'altra mossa che complementa quella precedente. Inoltre altre mosse richiedono specifici tasti per essere lanciate. (vedi trailer)
       
       
       
       
       
      -Esplorazione: Una scuola, una sua succursale ed un intero giardino da esplorare, oltre a due bei dungeon da espugnare. Che volete di più?
       
       
      Gli incontri randomici dei mostri, in particolare, avvengono in seguito all'apparizione di un nemico su mappa, che va prontamente schivato con la pressione di una certa freccia direzionale.
       
       
       
       
       
      Difficoltà:
       
       
      La difficoltà nelle battaglie è autoregolata a seconda della vostra bravura nelle combo e nella tattica.
       
       
       
       
       
      Il punteggio va da 1 a 100 ed aumenta:
       
       
      -In seguito ad una combo corretta
       
       
      -Con la sconfitta di un boss
       
       
       
       
       
      Diminuisce:
       
       
      -Subendo gravi danni
       
       
      -Facendo svenire un compagno
       
       
      -Fuggendo
       
       
       
       
       
      Il tema scolastico:
       
       
      Il tema scolastico è rispecchiato su alcuni fattori del gameplay:
       
       
      -Per imparare tecniche, è necessario studiare dal menù, spendendo punti studio.
       
       
      -il KO qui è sostituito dalla bocciatura, l'avvelenamento dalla "Assenza di appunti"
       
       
      -Tutte le tecniche di battaglia provengono dalle materie scolastiche
       
       
      -Il salvataggio si esegue appoggiando il registro di classe su un tavolo
       
       
      -La modalità ricercA, per ritrovare, ehm... oggetti smarriti.
       
       
       
       
       
      Personaggi:
       
       
       
       
       
       
       
       
       
       
       
       
      Trailer:
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
      Download:
       
       
       
       
       
      https://rpgwaldorf.altervista.org/2d-aperdam-demo/
       
       
      Nota: richiede RTP
       
       
         
    • Da NotSuitableBunch
      Salve a tutti, vi presento il mio primo progetto in Rpg maker, realizzato dopo anni di fatiche e incentrato sul mio vecchio gruppo musicale.
      Visto il tempo che ci ho messo a realizzarlo e la lunghezza del gioco in sè, mi sembrava un peccato farlo giocare solo agli altri del gruppo e alcuni amici,
      spero mi possiate dare un pò di feedback al riguardo!
       
      Download:
      https://mega.nz/file/UQR3TT7R#uuB6QaC4rtpsCPO0DCexAypVZKNOeLA3yCcxTG9UxdA
       
       
      Introduzione
       
      Il gioco è innanzi tutto una parodia trash del genere Jrpg mixata con qualche aspetto di Gta.
      Seguirete le peripezie di un gruppo musicale di ubriaconi che cercano di salvare il loro paesello dalla minaccia di un "cattivo generico".
      Aspettatevi una comicità becera e a tratti offensiva, basata su battutacce, citazioni di videogame più belli, tentativi di satira, movimenti di intestino, infrangimento costante della 4a parete e bestemmie.
      (N.B. Il gioco presenta una forte componente anticlericale che potrebbe infastidire alcuni, e ha un paio di sporadiche scene di nudo, è quindi consigliato a un pubblico adulto.)
       
       

       
       
      In secondo luogo è un'opera molto personale che cerca di racchiudere e riassumere un decennio di suonate con un gruppo di amici. Il gioco è quindi costellato di riferimenti e citazioni che ci riguardano direttamente, per quanto poi esagerati a scopi comici. Spero di aver fatto un buon lavoro nel rendere i personaggi interessanti anche a un pubblico esterno.
       
       
       
      Sviluppo
       
      Il videogame è nato come sfondo per i nostri vecchi concerti nel 2015, proiettato mentre suonavamo e un amico lo giocava live.
      La prima parte di gioco (circa 2-4 ore iniziali) è ancora quella rudimentale Demo (ho inserito una scorciatoia per saltarla nel caso risulti troppo ostica a livello di enigmi, vi avvicinerete così alla parte open-world).
      Ho poi continuato ad espandere il gioco negli anni, a periodi alterni, aggiungendo le varie comparse tra amici e spettatori dei concerti e finendo gli "assets" che avevamo accumulato. Verso fine del 2021 ho iniziato la realizzazione delle quest e della trama del gioco principale; sacrificando buona parte del mio tempo libero sono riuscito a finire in poco più di un anno, dopodichè ho fatto testare il gioco agli altri membri del gruppo e ora, finalmente, direi che è finito.
      Inizio sviluppo Demo: Metà 2015 –> Fine gioco completo: Inizio 2023
       

       
       
       
      Grafica e Gameplay
       
      La grafica di gioco è ottenuta mixando (male) i classici asset di rpg maker con foto di persone e cose reali.
      L'ambientazione è quindi moderna, fatta di strade e case, con un approccio openworld che vuole provare a omaggiare Gta.
       
       

       
       
      Ogni personaggio giocabile e le comparse del gioco sono ottenute con delle foto, stessa cosa per le Animazioni delle mosse in battaglia.
      Per il resto, però, il gameplay di gioco è quello di un jrpg molto base.
      La parte interessante del combattimento è vedere le mosse improbabili dei personaggi.
       
       

       
       
      Una costante nel gioco sarà l'uso di alcolici, i quali rappresentano la fonte di cura del Party mentre girate per il paese.
      L'inizio della parte open world potrebbe essere un pò difficile... Non dimenticate di salvare!
       
       

       
       
      Come longevità il gioco è abbastanza lungo se volete finirlo al 100% (io che sono il programmatore ci metto 30 ore), per finire solo la quest principale invece dovrebbero bastare circa 10-15 ore.
       
       

       
       
       
      Sonoro
       
      La OST del gioco è composta dai brani del nostro gruppo, più i brani delle varie formazioni avute negli anni (con lo stesso gruppo di persone abbiamo fatto diversi progetti musicali).
      Quindi ci sono ore di colonna sonora originale, compresa tutta una sezione di pezzi 8-bittosi fatti da uno di noi appositamente per il gioco.
       

    • Da Hufflepoe
      Sto cercando di capire come consentire al giocatore di selezionare solo il corretto item dall'inventario degli oggetti per uno specifico evento. Faccio un esempio: l'eroe incontra un personaggio e deve consegnargli un oggetto selezionandolo tra quelli raccolti fino a quel momento. Ciò che accade ora è che viene consentito al giocatore di selezionare qualsiasi oggetto nell'inventario tra quelli utilizzabili sempre e che tutti quelli consumabili vengono rimossi dall'inventario una volta selezionati. Io invece vorrei che, nel caso in cui l'oggetto consegnato fosse quello sbagliato, gli altri non venissero rimossi dall'inventario, e che se l'oggetto consegnato fosse quello giusto, invece solo questo fosse rimosso. 
      Mi sembra un meccanismo semplice: se il giocatore sceglie tra i vari oggetti quello giusto e lo consegna, l'evento va a buon fine, altrimenti no. Eppure non riesco a trovare il modo per far girare questo meccanismo.
      Grazie in anticipo per l'aiuto!
       
×