Jump to content
Rpg²S Forum

woodok

Utenti
  • Posts

    15
  • Joined

  • Last visited

Posts posted by woodok

  1. Salve a tutti !!! E' da un po di tempo che non posto più nel sito...

     

    Da poco tempo ho portato a termine un mio lavoro con Game Maker, così ho pensato di condividerlo anche con voi

     

    della community di RPG Maker, pur non essendo propriamente un gioco di ruolo. Si tratta di una reinterpretazione del

     

    classico Arkanoid, con 7 livelli per ognuna delle 3 ambientazioni e boss finale alla fine di ciascun mondo.

     

    Che dire... provatelo e buon divertimento !!! :)

    Woodok

    presenta

    BLASTANOID

    http://oi59.tinypic.com/2hsch7t.jpg

    Blastanoid ti riporta alle atmosfere dei videogiochi arcade degli anni '90, in cui venivano messi alla prova i riflessi e la bravura dei giocatori. Immergiti in un mondo virtuale dove potrai selezionare la tua ambientazione preferita fra quelle
    disponibili: esplora i fondali oceanici oppure gettati a capofitto in una giungla impenetrabile, e se tutto ciò non dovesse essere abbastanza puoi partire per lo spazio sconfinato. Supera i livelli cercando di ottenere il punteggio più alto, ma rimani concentrato perché al termine di ogni mondo un boss caratteristico attende di sfidarti nella battaglia finale. Ad accompagnarti nel tuo viaggio ci sarà una brillante colonna sonora elettronica, composta in esclusiva da Sacred Virgo

    ( http://soundcloud.com/sacred-virgo ), e numerosi bonus che ti consentiranno di ottenere vantaggi o penalizzazioni. Blastanoid, un gioco facile da apprendere ma difficile da controllare... sarai all'altezza?

     

     

     

    Screenshots di gioco:

     

     

    http://www.freankexpo.net/Games/690/Screenshots/0.jpg http://www.freankexpo.net/Games/690/Screenshots/1.jpg

     

     

     

     

    http://www.freankexpo.net/Games/690/Screenshots/2.jpg

     

     

     

    Link da cui scaricare:

     

    Il gioco è hostato in due siti:

     

    FreankExpo http://www.freankexpo.net/690/blastanoid

     

     

    Gamejolt http://gamejolt.com/games/arcade/blastanoid/20791/

     

     

    Se vi piace, ricordatevi di lasciare una valutazione positiva nei suddetti siti ;)

     

     

     

     

    Credits:

     

     

    Blastanoid, developed by Woodok in 2013

    with Game Maker 8 by YoYo Games Ltd.

    Game not for commercial use

    All material contained herein belongs to their respective owners.

    Additional scripts:

    Custom highscore script by Noele

    Menu script by Mordi

    Wave motion script by Chris Sanyk

    Pause script by Tiby312, tristiano77

    Shake screen script by Zack

    Animated lives icon script by filulilus

    Caster audio engine script by Marius Utheim

    Scrolling credits script by GMakerPro

    Other tips by the Game Maker community

    Game title graphic:

    generated on cooltext.com

    Icon game graphic:

    generated on xiconeditor.com

    Additional font:

    Saved by Zero by Typodermic Fonts

    Additional background graphic:

    wallpapervortex.com

    wakpaper.com

    wallgc.com

    hdwallpaperstop.com

    flickr.com

    freefever.com

    hdnaturepictures.com

    wallpaper-photo.ru

    jumbowallpaper.com

    1ms.net

    wallike.com

    walldime.com

    linuxeden.com

    youwall.com

    zastavki.com

    byKhryz

    smackfu.com

    Additional game graphic:

    preloaders.net

    animatedgif.net

    Jeff Bartels

    Additional particle effects:

    Particle Designer 2.5.2 by Alert Games.

    Soundtrack composed by Sacred Virgo:

    http://www.youtube.com/user/Shellshaka

    http://soundcloud.com/sacred-virgo

    http://www.reverbnation.com/sacredvirgo

    Ogg Vorbis audio technology used in-game:

    http://www.vorbis.com/

    Audio messages:

    generated on oddcast.com

    Additional audio effects:

    youtube.com

    Beta testers:

    Woodok

    Sacred Virgo

    Demone Bianco

    DjDarth

    Also thank all those who, in some way,

    helped to improve this game.

     

     

     

  2. Ciao shell :)

     

    Sono contento che sia riuscito ad arrivare alla fine e che ti sia piaciuto.

    Per quanto riguarda la battaglia finale con Ogre, l'ho resa un po più facile depotenziandolo,

    perchè pensavo che un boss tosto come l'avevo pensato all'inizio fosse troppo frustrante da

    sconfiggere, specialmente per i neofiti del genere. Gli attacchi sono generati casualmente, perciò

    può capitare a volte che in una partita faccia spesso l'attacco Zero come che attacchi con Bash

    decimando la squadra. Penso che il sistema di randomizzazione degli attacchi sia una pecca

    dell'rpg maker. La pietra Antima serve a rendere la vita un po più facile a quelli che potrebbero

    avere problemi col boss finale, oppure può essere venduta per farci un gruzzoletto. La scelta

    è tutta di chi gioca.

    Per il resto grazie ancora per averlo provato, e tieni in caldo i sintetizzatori per future collaborazioni!!!

  3. Ciao WarioPunk :)

     

    Ho provato il tuo gioco che dalla presentazione mi aveva incuriosito parecchio...

    La grafica è molto buona, si vede che sei del mestiere!!!

    Un piccolo appunto riguarda alcune piattaforme che a volte non si vedono subito e sembrano elementi di sfondo,

    magari prova a renderle un po più evidenti.

    Sono riuscito a finirlo a difficoltà media, il gioco fila abbastanza liscio e mi lagga un po solo all'ultimo livello.

    I boss sono ben caratterizzati e stravaganti al punto giusto, l'unico che mi ha lasciato un po perplesso è il boss

    scimmia che sono riuscito a sconfiggere ma non so come XD

    Anche le musiche sono buone (alcune stile electro jungle come piacciono a me :))

    Avevo visto tempo fa un video di un gioco di metroid sviluppato con rpg maker che sembrava originale per quanto era

    fatto bene, penso che aveva usato gli stessi tuoi script per impostare giochi platform.

     

    Ti faccio ancora complimenti per questo gioco e un augurio per quelli che svilupperai in futuro!!!

  4. ciao wood ti segnalo che nel finale il gioco si impalla...quando si incontra il mercante, si crea un loop in cui il mercante parla ripetendo più volte le stesse frasi e cammina fino a un angolo dello schermo. a quel punto il gioco si blocca e non si può fare niente. puoi sistemarlo, così posso vedere cone finisce? ;)

     

    Ciao Shell :)

    inviami il file di salvataggio via mail, così posso vedere esattamente dov'è il bug. Poi volevo sapere, tu hai

    continuato l'avventura usando un file di salvataggio vecchio nella versione nuova del gioco?

    Perchè in questi casi potrebbe dare problemi (l'ultima versione l'ho pubblicata pochi giorni fa).

     

    Aggiornamento: ho corretto il bug e ricaricato il gioco su mediafire sempre all'indirizzo della presentazione, dopo averlo testato per l'ennesima volta posso affermare che adesso fila tutto liscio. Si trattava di una stupidaggine, per fortuna che me l'hai fatto notare!!!

    Per quanto riguarda i salvataggi, penso che sia possibile usarli sulla nuova versione senza troppi problemi, al massimo ti compariranno

    i personaggi in posizioni diverse nella zona in cui hai salvato. Buon gioco e buona battaglia finale Shell!!! :)

  5. Ho compiuto delle ulteriori modifiche al gioco:

     

    mapping di alcune sezioni migliorato

     

    aggiustamento di alcuni dettagli secondari

     

    inoltre ho aggiunto un link a mediafire sulla presentazione che permette di scaricare il gioco per intero se

     

    non si vuole perdere tempo a scaricare le parti (se doveste avere problemi a scaricare o perchè il

     

    link scade o altro, potete segnalarmelo tranquillamente :smile: )

  6. Ho apportato delle modifiche al gioco come mi è stato suggerito, ecco i cambiamenti:

     

    Grafica migliorata, adesso le sbavature bianche non esistono più. Inoltre ho rifatto le scritte in sovraimpressione che appaiono ora più grandi e più

    leggibili.

     

    I personaggi adesso non rimangono più a gambe aperte ma hanno la loro giusta posizione

     

    Introduzione del Caterpillar system di Trickster, adesso i compagni di squadra seguono perfettamente l'eroe senza movimenti strani.

     

    Sistemate le posizioni dei nemici durante la lotta, ora sono raggruppati più a sinistra e non in posizione centrale allo schermo.

     

    Regolati gli scontri casuali, adesso avvengono meno frequentemente consentendo una esplorazione più agevole della mappa di gioco.

    Inoltre la difficoltà dei boss è stata limata in modo da risultare più accessibile.

     

    Nei bauli dove avvengono le imboscate Zach chiede prima di aprire il baule una conferma, in questo modo se schiattate sarà solo colpa vostra XD

     

    Rifacimento totale di una sezione del dungeon finale, adesso sarà sicuramente più bella.

     

    Rimesse a posto alcune parole dei testi che erano prima in inglese.

     

    La colonna sonora della schermata principale è cambiata, fatta da un amico mio (i credits aggiornati sono contenuti nel manuale di gioco)

     

    Cambiata l'icona degli empori.

     

    Ho aggiunto nei ringraziamenti anche Holy87 per i suoi consigli.

     

    Riguardo il labirinto nel bosco, se avete difficoltà ad uscirne la soluzione è:

     

     

     

    <P>appena entrati nella sezione nebbiosa del bosco, l'uscita giusta si trova

    andando</P>

    <P> </P>

    <P>in alto a sinistra della mappa, una volta che si incontrano i due pini che

    crescono sopra</P>

    <P> </P>

    <P>la strada marroncina seguite la strada che va verso l'alto ed il gioco è

    fatto :)</P>

     

     

     

     

     

     

    Inoltre vorrei spendere due parole circa i personaggi del gioco:

     

    Salazar appartiene alla classe dei guerrieri, questo significa che i suoi attacchi sono principalmente di tipo fisico.

    Inoltre è l'unico che può maneggiare la spada Gladius una volta recuperata, ed equipaggiandola otterrà anche una

    abilità "speciale"

     

    Zach è uno scout, non ha attacchi possenti come quelli di Salazar, ma in compenso ha delle abilità speciali

    che semplificheranno la vita alla squadra: la prima è Spazzata, a livello 3, che consente di colpire più nemici in una sola

    volta, e Difesa a livello 6, che consente di ridurre i danni

     

    Lime è una maga, gli attacchi principali si basano sulla magia come Ghiaccio e Tempesta di Ghiaccio a livello 5, inoltre a livello

    6 apprende Sancta che è un attacco magico basato sull'elemento sacro.

     

    In questo modo penso di aver fatto una squadra sufficientemente equilibrata.

     

    Un altra cosa di cui vorrei parlare sono gli status alterati.

    Come ho scritto anche nel manuale di gioco, alcuni status ne cancellano altri, in questa maniera con un minimo di sperimentazione

    potrete scoprire modi alternativi per cancellare alcuni tipi di status sfruttando le abilità apprese dai vostri personaggi, invece di

    svenarvi all'emporio comprando Panacea (che in qualche caso servirà comunque). In questo modo penso di aver aggiunto anche

    un pizzico di strategia, specialmente negli scontri più avanzati.

     

    Consiglio inoltre di esplorare tutte le località del gioco, così magari potrete scoprire qualcosa di interessante ;)

     

     

    Penso di aver detto tutto, se qualcuno di voi volesse provare il gioco per farmi sapere gliene sarei grato, l'indirizzo è sempre quello riportato

    nel primo post (a proposito, il link di Mediafire di Clyde sarebbe meglio aggiornarlo).

     

    Un saluto!!!!!!

  7. Problema risolto grazie a Holy87!!! :)

    Ma adesso ne sorge un altro :(

    salvo una partita ed esco completamente dal gioco, poi lancio nuovamente il gioco scegliendo di caricare l'ultimo salvataggio

    e se ne esce un errore, nel caterpillar system, in cui dice:

     

    line 147 NoMethodOccourred

     

    undefined method '[]' for nil:NilClass

     

    forse questo script doveva essere testato più a fondo, non ho mai incontrato tutti questi problemi con altri script, e ne ho

    usati molti...

     

    P.S. il caterpillar system è quello postato da Holy87 qualche risposta fa, nel caso avete bisogno di dare un'occhiata allo script

     

    EDIT: problema risolto, ho cambiato il caterpillar system di wora con quello di Trickster's trovato in questo foro e pare

    che non dia più problemi.

  8. ho ancora problemi col caterpillar system, mettendolo sopra o sotto il tileset reader mi da comunque lo stesso problema... a questo punto penso che manterrò

    il mio vecchio sistema per i personaggi che seguono l'eroe, che anche se non è perfetto perlomeno fa il suo lavoro...

  9. lo script è il seguente:

     

    #==============================================================================
    # ** Tileset Reader VX
    #------------------------------------------------------------------------------
    #    by DerVVulfman
    #    version 2.1
    #    08-23-2010
    #    RGSS2
    #------------------------------------------------------------------------------
    #
    #  INTRODUCTION:
    #
    #  This system re-introduces terrain tags and four-directional passage flags
    #  back into your RPGMaker VX system.   This script mimics  many of the lost
    #  features, giving you more control over your project.
    # 
    #------------------------------------------------------------------------------
    #
    #  INSTRUCTIONS:
    #
    #   This script is not for use by itself,  but is used to read data from the
    #   .vxdata file created by the 'Tileset Feature Editor.'
    #
    #
    #   4-Way Direction:
    #   ================
    #   The four-direction passage feature is an enhancement for mappers who may
    #   desire individual tiles  where movement on these tiles  may be  one-way,
    #   two-way or the like.  It restricts the character's movement where normal
    #   'X' and 'O' passage switches cannot suffice.
    #
    #   To retrieve a 4-way directional value from the map,
    #   use the following call:  $game_map.passage_tag(x, y, d)
    #
    #   The passage system holds 4 flags per tile, so it is required to specify
    #   a direction into the call, not just the x and y coordinates.  The value
    #   of 'd'  can be 1 (for down), 2 (for left), 3 (for right) or 4 (for up).
    #   If you do retrieve a value other than 0x00 or '0',  then that tile is a
    #   four-way passable tile.
    #
    #
    #   Terrain Tags:
    #   =============
    #   The reintroduction  of Terrain Tags  is an enhancement  for mappers  and
    #   scripters alike.   This feature does nothing on its own, but the terrain
    #   values stored can be called for reasons of the end user's design.
    #
    #   To retrieve the terrain tag of a select tile from the map,
    #   just use the following call:  $game_map.terrain_tag(x, y) 
    #
    #   Please note that the 'Tileset Feature Editor' supports terrain tag values
    #   up to '201' rather than the paltry '8' of the older RPGMaker systems.
    #
    #
    #   Terrain Tags:
    #   =============
    #   Vehicle systems (boat, ship, airship) ignore the 4-way passable flags and
    #   are still controlled only by the default X O tags used by the game editor.
    #   As such, using the 4 directional arrows in a water autotile to restrict a
    #   boat's direction will not be possible.
    #
    #
    #   Debug Pop-Up:
    #   =============
    #    You can also bring up a 'pop-up' debug window  by pressing a predefined
    #    key (that can be changed) in the script's only configurable line.
    # 
    #------------------------------------------------------------------------------
    #
    #  EDITS AND MODIFICATIONS:
    # 
    #  This system Aliases the following methods:
    #  * move_down					  (Game_Character)
    #  * move_left					  (Game_Character)
    #  * move_right					 (Game_Character)
    #  * move_up					    (Game_Character)
    #  * map_passable?				  (Game_Player)
    #  * update						 (Game_Player)
    #  * load_database				  (Scene_Title)
    #
    #  This system redefines the following methods:
    #  * passable?					  (Game_Character)
    #  * move_lower_left			    (Game_Character)
    #  * move_lower_right			   (Game_Character)
    #  * move_upper_left			    (Game_Character)
    #  * move_upper_right			   (Game_Character)
    #
    #  This system adds the following methods:
    #  * terrain_tag				    (Game_Map)
    #  * passage_tag				    (Game_Map)
    #  * tile_index					 (Game_Map)
    #  * passable_dir?				  (Game_Map)
    #  * bh_read					    (Game_Map)
    #  * map_pass?					  (Game_Character) - Replaces map_passable?
    #  * new_x						  (Game_Character)
    #  * new_y						  (Game_Character)
    #  * tile_debug_popup			   (Game_Player)
    #
    #  This system adds the following module:
    #  * RPG::Tileset
    # 
    #
    #------------------------------------------------------------------------------
    #
    #  CREDITS & THANKS:
    #   First, I like to give thanks to enterbrain (or enterbrainless) for remo-
    #   ving an obviously desirable feature.  Without them, I wouldn't have this
    #   fix to offer.  ^_^ Like sarcasm?
    #
    #   Also, I would like to thank the RMXP/VX community,  including Syvkal and
    #   KGC who's been dilligant on their own separate tileset systems.  Also to
    #   MG4M3R  of Creation Asylum  who noticed  that the system  had previously
    #   blocked any movement with vehicles.
    #
    #------------------------------------------------------------------------------
    #
    #  TERMS AND CONDITIONS:
    #
    #  Free to use, even in commercial projects.  Just note that I need some form
    #  of due credit... even a mere mention in some end titles.
    #
    #==============================================================================
    
     #==========================================================================
     #   ****				  YOUR ONE CONFIGURABLE				    ****   #
     #==========================================================================
     #
     # Identify/set the button used in test mode
       TILESET_DEBUG_KEY = Input::F8
    
    #==============================================================================
    # ** RPG::Tileset
    #------------------------------------------------------------------------------
    #  Data class for imported tileset information.
    #==============================================================================
    class RPG::Tileset
     #--------------------------------------------------------------------------
     # * Public Instance Variables
     #--------------------------------------------------------------------------
     attr_accessor :passages				 # 4-Directional Passage Flags
     attr_accessor :terrain_tags			 # Terrain Tags
     #--------------------------------------------------------------------------
     # * Object initialization
     #--------------------------------------------------------------------------
     def initialize
       @passages = Table.new(8192)
       @terrain_tags = Table.new(8192)
     end
    end
    #==============================================================================
    # ** Game_Map
    #------------------------------------------------------------------------------
    #  This class handles maps. It includes scrolling and passage determination
    # functions. The instance of this class is referenced by $game_map.
    #==============================================================================
    class Game_Map
     #--------------------------------------------------------------------------
     # * Obtain Terrain Tag
     #	 x : X Coordinate
     #	 y : Y Coordinate
     #--------------------------------------------------------------------------
     def terrain_tag(x, y)
       for i in [2, 1, 0]
      tile_id = @map.data[x, y, i]
      return 0 if tile_id == nil								 
      t_tag = $data_tileset.terrain_tags[tile_index(tile_id)]
      return t_tag if t_tag > 0   
       end
       return 0
     end   
     #--------------------------------------------------------------------------
     # * Obtain 4-Directional Passage flag
     #	 x    : x coordinate
     #	 y    : y coordinate
     #	 d    : direction
     #-------------------------------------------------------------------------- 
     def passage_tag(x, y, d)
       for i in [2, 1, 0]
      tile_id = @map.data[x, y, i]
      return 0 if tile_id == nil								 
      passtag = $data_tileset.passages[tile_index(tile_id)]
      passtag = bh_read(passtag, d)
      return 0x00 if passtag == nil
      return passtag if passtag > 0x00   
       end
       return 0x00
     end
     #--------------------------------------------------------------------------
     # * Obtain Tile ID Index
     #	 tile_id : Tile ID
     #-------------------------------------------------------------------------- 
     def tile_index(tile_id)
       # Branch on Tile
       case tile_id
      # Multi-tiled ids in Tileset 'A'
      when 2048..8191 ; return ((tile_id - 2000) / 48) - 1
      # Individual tile ids in Tileset 'A'
      when 1536..1663 ; return(tile_id - 1408)
      # Tilesets 'B' to 'E'
      when 0..1023    ; return (tile_id + 256)	   
       end 
       return 0
     end
     #--------------------------------------------------------------------------
     # * Determine if 4-way Passable
     #	 x    : x coordinate
     #	 y    : y coordinate
     #	 d    : direction
     #--------------------------------------------------------------------------
     def passable_dir?(x, y, d)
       for i in [2, 1, 0]
      tile_id = @map.data[x, y, i]
      return false if tile_id == nil
      pass = $data_tileset.passages[tile_index(tile_id)]
      case d
        when 2  ; return false if pass != 0x00 && bh_read(pass, 1) != 0x01
        when 4  ; return false if pass != 0x00 && bh_read(pass, 2) != 0x02
        when 6  ; return false if pass != 0x00 && bh_read(pass, 3) != 0x04
        when 8  ; return false if pass != 0x00 && bh_read(pass, 4) != 0x08
      end
       end
       return true
     end
     #--------------------------------------------------------------------------
     # * Binary Hexcode Reader
     #	 original value : hexcode flag being read
     #	 direction	  : direction
     #--------------------------------------------------------------------------
     def bh_read(original_value, direction)
       case original_value
       when 0x00
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x00
      when 3 ; result = 0x00
      when 4 ; result = 0x00
      end
       when 0x01
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x00
      when 3 ; result = 0x00
      when 4 ; result = 0x00
      end
       when 0x02
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x02
      when 3 ; result = 0x00
      when 4 ; result = 0x00
      end
       when 0x03 ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x02
      when 3 ; result = 0x00
      when 4 ; result = 0x00
      end
       when 0x04  ;
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x00
      when 3 ; result = 0x04
      when 4 ; result = 0x00
      end
       when 0x05  ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x00
      when 3 ; result = 0x04
      when 4 ; result = 0x00
      end
       when 0x06  ;
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x02
      when 3 ; result = 0x04
      when 4 ; result = 0x00
      end
       when 0x07  ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x02
      when 3 ; result = 0x04
      when 4 ; result = 0x00
      end
       when 0x08  ;
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x00
      when 3 ; result = 0x00
      when 4 ; result = 0x08
      end
       when 0x09  ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x00
      when 3 ; result = 0x00
      when 4 ; result = 0x08
      end
       when 0x0A  ;
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x02
      when 3 ; result = 0x00
      when 4 ; result = 0x08
      end
       when 0x0B ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x02
      when 3 ; result = 0x00
      when 4 ; result = 0x08
      end
       when 0x0C ;
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x00
      when 3 ; result = 0x04
      when 4 ; result = 0x08
      end
       when 0x0D ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x00
      when 3 ; result = 0x04
      when 4 ; result = 0x08
      end
       when 0x0E ;
      case direction
      when 1 ; result = 0x00
      when 2 ; result = 0x02
      when 3 ; result = 0x04
      when 4 ; result = 0x08
      end
       when 0x0F ;
      case direction
      when 1 ; result = 0x01
      when 2 ; result = 0x02
      when 3 ; result = 0x04
      when 4 ; result = 0x08
      end
       end
       return result
     end 
    end
    
    #==============================================================================
    # ** Game_Character
    #------------------------------------------------------------------------------
    #  This class deals with characters. It's used as a superclass of the
    # Game_Player and Game_Event classes.
    #==============================================================================
    class Game_Character
     #--------------------------------------------------------------------------
     # * Alias Listings
     #--------------------------------------------------------------------------
     alias ts_move_down move_down
     alias ts_move_left move_left
     alias ts_move_right move_right
     alias ts_move_up move_up
     #--------------------------------------------------------------------------
     # * Determine if Passable
     #	 x : x-coordinate
     #	 y : y-coordinate
     #	 d : direction
     #--------------------------------------------------------------------------
     def passable?(x, y, d = 10)
       nx = new_x(x, d)
       ny = new_y(y, d)
       nx = $game_map.round_x(nx)
       ny = $game_map.round_y(ny)
       return false  unless $game_map.valid?(nx, ny)
       return true   if @through or debug_through?
       if $game_player.vehicle_type == -1
      return false  unless map_pass?(x, y, d)
      return false  unless map_pass?(nx, ny, d)
       else
      return false  unless map_passable?(x, y)
       end
       return false  if collide_with_characters?(nx, ny)
       return true
     end
     #--------------------------------------------------------------------------
     # * Determine if Map is Passable
     #	 x : x-coordinate
     #	 y : y-coordinate
     #    Gets whether the tile at the designated coordinates is passable.
     #--------------------------------------------------------------------------
     def map_pass?(x, y, d)
       return $game_map.passable?(x, y) && $game_map.passable_dir?(x, y, d)
     end	 
     #--------------------------------------------------------------------------
     # * Obtain the X coordinate after the move
     #	 x : X Coordinate.
     #	 d : Portable direction
     #--------------------------------------------------------------------------
     def new_x(x, d)
       return x + (d == 6 ? 1 : d == 4 ? -1 : 0)
     end
     #--------------------------------------------------------------------------
     # * Obtain the Y coordinate after the move
     #	 y : Y Coordinate.
     #	 d : Portable direction
     #--------------------------------------------------------------------------
     def new_y(y, d)
       return y + (d == 2 ? 1 : d == 8 ? -1 : 0)
     end
     #--------------------------------------------------------------------------
     # * Move Down
     #	 turn_ok : Allows change of direction on the spot
     #--------------------------------------------------------------------------
     def move_down(turn_ok = true)
       if passable?(@x, @y, 2)
      ts_move_down(turn_ok)
       else				  
      turn_down if turn_ok
      check_event_trigger_touch(@x, @y+1)
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Left
     #	 turn_ok : Allows change of direction on the spot
     #--------------------------------------------------------------------------
     def move_left(turn_ok = true)
       if passable?(@x, @y, 4)
      ts_move_left(turn_ok)
       else				 
      turn_left if turn_ok
      check_event_trigger_touch(@x-1, @y)
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Right
     #	 turn_ok : Allows change of direction on the spot
     #--------------------------------------------------------------------------
     def move_right(turn_ok = true)
       if passable?(@x, @y, 6)
      ts_move_right(turn_ok)
       else
      turn_right if turn_ok
      check_event_trigger_touch(@x+1, @y)
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Up
     #	 turn_ok : Allows change of direction on the spot
     #--------------------------------------------------------------------------
     def move_up(turn_ok = true)
       if passable?(@x, @y, 8)
      ts_move_up(turn_ok)
       else								  
      turn_up if turn_ok
      check_event_trigger_touch(@x, @y-1)
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Lower Left
     #--------------------------------------------------------------------------
     def move_lower_left
       unless @direction_fix
      @direction = (@direction == 6 ? 4 : @direction == 8 ? 2 : @direction)
       end
       if (passable?(@x, @y, 2) && passable?(@x, @y+1, 4)) ||
       (passable?(@x, @y, 4) && passable?(@x-1, @y, 2))
      @x -= 1
      @y += 1
      increase_steps
      @move_failed = false
       else
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Lower Right
     #--------------------------------------------------------------------------
     def move_lower_right
       unless @direction_fix
      @direction = (@direction == 4 ? 6 : @direction == 8 ? 2 : @direction)
       end
       if (passable?(@x, @y, 2) && passable?(@x, @y+1, 6)) ||
       (passable?(@x, @y, 6) && passable?(@x+1, @y, 2))
      @x += 1
      @y += 1
      increase_steps
      @move_failed = false
       else
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Upper Left
     #--------------------------------------------------------------------------
     def move_upper_left
       unless @direction_fix
      @direction = (@direction == 6 ? 4 : @direction == 2 ? 8 : @direction)
       end
       if (passable?(@x, @y, 8) && passable?(@x, @y-1, 4)) ||
       (passable?(@x, @y, 4) && passable?(@x-1, @y, 8))
      @x -= 1
      @y -= 1
      increase_steps
      @move_failed = false
       else
      @move_failed = true
       end
     end
     #--------------------------------------------------------------------------
     # * Move Upper Left
     #--------------------------------------------------------------------------
     def move_upper_right
       unless @direction_fix
      @direction = (@direction == 4 ? 6 : @direction == 2 ? 8 : @direction)
       end
       if (passable?(@x, @y, 8) && passable?(@x, @y-1, 6)) ||
       (passable?(@x, @y, 6) && passable?(@x+1, @y, 8))
      @x += 1
      @y -= 1
      increase_steps
      @move_failed = false
       else
      @move_failed = true
       end
     end
    end
    #==============================================================================
    # ** Game_Player
    #------------------------------------------------------------------------------
    #  This class handles maps. It includes event starting determinants and map
    # scrolling functions. The instance of this class is referenced by $game_map.
    #==============================================================================
    class Game_Player < Game_Character
     #--------------------------------------------------------------------------
     # * Alias Listings
     #--------------------------------------------------------------------------
     alias ts_map_passable? map_passable?
     alias ts_update update
     #--------------------------------------------------------------------------
     # * Determine if Map is Passable
     #	 x : x-coordinate
     #	 y : y-coordinate
     #--------------------------------------------------------------------------
     def map_passable?(x, y)
       return false unless ts_map_passable?(x, y)
       return $game_map.passable_dir?(x, y, @direction)
     end 
     #--------------------------------------------------------------------------
     # * Frame Update
     #--------------------------------------------------------------------------
     def update
       # Perform the original call
       ts_update
       # If in debug mode and Info Button pressed
       if $TEST &&  TILESET_DEBUG_KEY != nil
      if Input.trigger?(TILESET_DEBUG_KEY)
        # Show information on tile
        tile_debug_popup
      end
       end
     end
     #--------------------------------------------------------------------------
     # * Show Information on Tile
     #--------------------------------------------------------------------------
     def tile_debug_popup
       t_tag = $game_map.terrain_tag(x, y)
       message   =  "Terrain Tag: #{t_tag}"
       message2  = ""
       for d in 1..4
       pass  = $game_map.passage_tag(x,y,d)
      message2 += "V" if pass == 0x01
      message2 += "<" if pass == 0x02
      message2 += ">" if pass == 0x04
      message2 += "Λ" if pass == 0x08
       end
       message2  = "(none set)" if message2 == ""
       message   += "\n"
       message   += "4-Dir. Passage: "   
       message   += message2
       print message
     end 
    end
    
    #==============================================================================
    # ** Scene_Title
    #------------------------------------------------------------------------------
    #  This class performs the title screen processing.
    #==============================================================================
    class Scene_Title < Scene_Base
     #--------------------------------------------------------------------------
     # * Alias Listings
     #--------------------------------------------------------------------------
     alias ts_load load_database
     #--------------------------------------------------------------------------
     # * Load Database
     #--------------------------------------------------------------------------
     def load_database
       # Perform the original call
       ts_load
       # Add the tileset data
       $data_tileset    = load_data("Data/Tilesets.rvdata")
     end
    end
    

  10. Ho un problema col caterpillar system:

     

    una volta implementato lancio il gioco, ma non appena provo a muovere il personaggio lungo la mappa mi crasha col seguente errore:

     

    Script 'Tileset reader' line 451 : ArgumentError occourred

     

    wrong number of arguments (3 for 2)

     

    In pratica entra in conflitto con un altro script (il Tileset reader VX di derWulfMan).

     

    la linea 451 è :

     

    if passable?(@x, @y, 6)

     

    qualcuno ha idea di come risolverlo?

  11. Ciao Holy,

     

    innanzitutto ti ringrazio per aver provato il mio gioco :),

    poi vorrei rispondere riguardo le tue osservazioni:

     

    -riguardo le sbavature bianche, vorrei sapere esattamente come

    fare per eliminarle. Io ho una scritta arancione su sfondo bianco, ma quando

    la importo sia che dico colore trasparente o traslucido bianco sulla finestra, mi rimane

    sempre un po di bianco dello sfondo. Puoi consigliarmi?

     

    -per quanto riguarda le musiche di Final Fantasy, lo sapevo già dall'inizio che sono

    abusate, ma le ho messe lo stesso perchè mi piacciono parecchio, e comunque penso

    che calzino al gioco.

     

    -il negozio di armature andrebbe visto più che altro come una sorta di emporio, nel quale

    puoi comprare i vari oggetti utili al proseguimento dell'avventura.

     

    -gli NPC si fermano con le gambe aperte perchè ho scelto un frame sbagliato,

    anche se si tratta di un dettaglio, comunque rimedierò velocemente.

     

    -riguardo il personaggio che segue, l'ho programmato usando la creazione eventi,

    se hai uno script che gestisce meglio la cosa dimmelo, altrimenti penso che lo lascerò così.

     

    -riguardo il posizionamento dei mostri, dici che è meglio raggrupparli più a sinistra?

    Le posizioni dei personaggi sono prefissate dal sistema Tankentai, c'è poco da fare.

    Gli sfondi a volte ho dovuto adattarli per farci entrare bene i personaggi, se conosci

    dove prenderne di migliori a livello di grafica, dimmelo.

     

    -il ratto fa una spazzata che è una abilità speciale che apprenderà anche un tuo personaggio

    (spoiler), allora ho deciso di dargli un aspetto "figo" ;)

     

    -I nomi dei mostri ho deciso di metterli in inglese per il fatto che le mie ispirazioni sono

    i giochi stile Final Fantasy, che anche se in italiano mantengono comunque i nomi dei

    mostri ed alcune tecniche in inglese

     

    -I mostri scrigno non sono fatti per essere battuti nelle primissime fasi di gioco, è una

    variazione al gioco che ho aggiunto per spronare il giocatore a salire di qualche livello e sbloccare

    nuove abilità (e un nuovo membro della squadra). Con il party un po più potenziato

    e qualche abilità sbloccata, ti garantisco che lo batterai ad occhi chiusi :)

    Gli scrigni incriminati comunque si trovano solo nella parte nebbiosa...

     

     

    -Gli incontri casuali a quanti passi mi consigli di settarli? Comunque c'è bisogno di livellare i personaggi

    per essere abbastanza potenti contro i boss e sbloccare nuove abilità. (I livelli a cui si sbloccano tutte le

    abilità sono comunque pochi, non c'è bisogno di passare tanto tempo a combattere).

     

    -X ora è a LEVEL 5, grazie per l'osservazione, provvederò al più presto.

     

    -per uscire dal bosco basta fare un semplice ragionamento: le possibili uscite sono 4, ed ogni volta che

    imbocchi la strada sbagliata vieni riportato sempre nella stessa mappa. Tieni a mente le uscite

    imboccate e scartale alla scelta successiva, vedrai che presto ci riuscirai (e troverai anche un punto

    di salvataggio).

    Ho deciso di creare il mini labirinto per rendere il gioco un po meno scontato e lineare.

     

    -Salazar è un guerriero e quindi mena come un fabbro, Zach invece si basa più sulle tecniche speciali.

    Vedrai che una volta sbloccate le tecniche giuste (basta fare un po di scontri, ma nemmeno troppi)

    sarà tutta un'altra storia... ;)

     

    Spero che riprenderai il gioco e che magari riuscirai a finirlo, così magari potrai dare un giudizio più

    globale. (fai anche un salto a Porto Kora, se ne hai voglia;)).

     

    Saluti, e grazie ancora!!!

  12. Aaaarg appena esco dal primo villaggio e affronto il primo combattimento mi crasha >_< mi compare una scritta del tipo "Recover FX" bla bla bla "Stop BGM or simply QUIT". Peccato, l'inizio mi stava prendendo... Mica sapresti darmi una soluzione a riguardo?

     

    Ciao. Postami le specifiche del tuo sistema, poi dimmi se hai già dato un'occhiata al manuale di gioco.

    Lancia il gioco dall'icona a forma di joypad del 360 e non da quella a forma di scacco.

    Ti consiglio anche di controllare se hai installato nel tuo sistema il plugin per Microsoft Visual C++ (scaricabile gratuitamente da Microsoft).

    Prova inoltre a riavviare la partita quando è così, magari si tratta di un crash random.

    Ad un amico mio non si avviava proprio il gioco, ma dopo che ha formattato è andato tutto liscio (evidentemente il suo pc era

    parecchio incasinato).

    Sto aspettando anche l'opinione degli altri che lo stanno provando per sapere se hanno problemi simili ai tuoi.

    Spero di esserti stato utile, ciao :)

  13. Ti ringrazio per l'aiuto, Clyde :). Comunque vorrei dire che l'ho hostato su libero per evitare problemi tipo la

     

    cancellazione di files ed altro. Il gioco è abbastanza leggero, e anche se diviso in 23 parti (a causa delle

     

    limitazioni dell'host che rifiuta files da piu di 3 MB) si scarica velocemente :) .

  14. Woodok

     

     

    presenta

     

    KRATUS ISLAND

    1. Breve Descrizione

     

     

     

     

     

     

     

     

     

     

    Il malvagio Ogre si è risvegliato, e con le sue armate di mostri sta mettendo a ferro e

    fuoco Kratus Island.

    La strenua resistenza organizzata dagli abitanti dell'isola si fa ogni giorno sempre più

    debole, presto arriverà il giorno in cui le difese cadranno e le città verranno spazzate

    via, a meno che...

    ...a meno che qualcuno non prenda in mano la situazione.

    Nei panni di Salazar, uno dei tanti avventurieri in cerca di gloria, dovrai trovare un

    modo per sconfiggere l'Ogre, ma sarà un compito tutt'altro che semplice.

    Assieme al tuo compagno di squadra Zach ti troverai ad affrontare i pericoli mortali

    che l'isola nasconde.

    Riuscirai nell'immane impresa?

    O soccomberai come gli altri gruppi di avventurieri che non sono più tornati?

    Indossa l'armatura ed impugna la spada, forse sarai tu l'eroe che verrà ricordato nelle

    cronache del luogo...

     

    http://i47.tinypic.com/2yv5fgh.jpg

     

     

     

    http://i47.tinypic.com/110m59e.jpg

     

     

     

    http://i49.tinypic.com/etxgcg.jpg

     

     

    http://i47.tinypic.com/2ih3xxl.jpg

     

     

    http://i45.tinypic.com/2r4khs9.jpg

     

    http://i47.tinypic.com/jhxawn.jpg

     

     

    http://i46.tinypic.com/15ekd9j.jpg

     

    2. Link al topic in cui descrivete il progetto

     

     

     

     

     

     

     

     

    Kratus Island è il primo gioco che ho sviluppato. Si basa su una guida

    che ho trovato su internet, la Beginner's guide to RPG maker VX v 0.4 di BenKo, con la

    quale ho iniziato la mia esperienza di programmazione. La guida però era incompleta,

    così ho terminato il progetto usando inventiva e creando nuove situazioni e locations. Ho usato

    prevalentemente la grafica preimpostata dell' RPG Maker, ho creato solo un template apposito

    per alcune zone tagliando altri template scaricati ed incollandoli secondo le mie necessità.

    Per il sonoro mi sono affidato alla serie di Final Fantasy, selezionando le colonne sonore

    che secondo me si addicevano di più alle varie situazioni.

    A livello di script, invece, me ne sono procurati un bel pò per riuscire a ricreare le idee che avevo

    in testa, poi ho usato molto anche l'opzione crea eventi nei modi più disparati.

    Complessivamente, l'esperienza di gioco dura poco (qualche ora al massimo), ma in ogni caso

    ho inserito delle "piccole sorprese", per chi avrà un minimo di pazienza ad esplorare.

    Il sistema di combattimento si basa sul sistema Tankentai, con battaglie basate su turni

    come nei classici Final Fantasy. Ho cercato di rendere i combattimenti variegati, con

    status alterati tipo Chaos o Berserk, e battaglie con i boss piuttosto coriacei (ma comunque

    piuttosto fattibili).

    Inoltre, ho incluso nel gioco anche il manuale, in cui ho cercato di spiegare tutto.

     

     

    3. Demo/Link alla versione giocabile

     

     

    MEDIAFIRE

     

     

    oppure sito originale:

     

     

     

     

     

     

    4. Crediti Vari

     

     

     

     

     

     

     

     

     

    Kratus Island, sviluppato da Woodok nel 2011-2012

    con il programma RPG Maker VX di Enterbrain.

    Basato su Beginner's guide to RPG maker VX v 0.4 di BenKo.

    Gioco non destinato ad uso commerciale.

    Tutto il materiale contenuto appartiene ai rispettivi proprietari.

    Grafica addizionale:

    shadowman33

    DeusExMachina

    Ceieres

    Ryan914

    Omega9999

    RPG LORD

    Shinto

    Font addizionale:

    Space Age by Justin Callaghan

    Colonne sonore addizionali:

    temi della serie Final Fantasy composti da Nobuo Uematsu:

    Menu theme FFX

    Battle theme FF VII

    Find your way FF VIII

    Fisherman's Horizon FF VIII

    Martial law FF VIII

    The Landing FF VIII

    Introduction theme FF VIII

    Breezy FF VIII

    Force your way FF VIII

    Blue fields FFVIII

    Legendary beast FF VIII

    Only a plank between one and perdition FF VIII

    Besaid island theme FFX

     

    jingle introduttivo:

     

    Konami sequence

     

    Script addizionali:

     

    Skills from Equipment by Woratana

     

    Shatter Transitions by Modern algebra

     

    Tileset Reader VX by DerVVulfman

     

    Sprite Reflect by TDS

     

    Mode7 by 2Chan

     

    Thomas Edison VX by BulletXt

     

    Advanced fog script by Shuuchan

     

    Sideview Battle System 2.6 by Tankentai

     

    Battle Backgrounds by Synthesize

     

    Audio Engine XT by BulletXt

     

    Minigame Slot Machine by Shanghai

     

    Monster Collapse VX by Minto

     

    Tankentai SBS patch by Modern algebra

     

    Map Credit by Woratana

     

    Splash Screens by Jet10985

     

    Beta testers:

     

    Coming soon...

     

    Si ringraziano inoltre tutti quelli che, in qualche modo, hanno

     

    contribuito a migliorare questo gioco.

     

    Nessun mostro è stato maltrattato per la creazione del gioco ;)

     

     

     

     

     

     

     

     

    Penso di aver detto tutto. Ringrazio quelli che proveranno il gioco e mi faranno sapere la loro

     

    opinione (inoltre, ditemi se volete comparire nei crediti finali sotto Beta Testers che vi aggiungo

     

    volentieri ;) ).
  15. Salve a tutta la community ;)

     

    Sono un nuovo arrivato, questo forum sembra un posto

     

    ideale per me che ho la passione dell'Rpg maker!!!

     

    Anche se non ho una grande esperienza, ho già

     

    sviluppato un mini rpg partendo da zero (

     

    non mi ero mai messo prima a sviluppare

     

    con rpg maker, anche se l'avevo desiderato).

     

    Lo posterò presto qui così spero che potrete darmi

     

    una vostra opinione!!!

     

    a presto!!! :)

×
×
  • Create New...