Jump to content
Rpg²S Forum

mikb89

Utenti
  • Posts

    655
  • Joined

  • Last visited

Posts posted by mikb89

  1. Allora tu vuoi fare tipo che uno COMPLETA il gioco e se lo ricomincia scegliendo il file di salvataggio, ha gli stessi soldi, gli stessi oggetti tipo curativi e armi, lo stesso livello dell'ultimo salvataggio e si mette uno switch on che poi tu userai nel gioco per fare fare cose in più dall'altra volta?
  2. Certo, hai ragione, per me va bene perchè prendi solo oggetti curativi di tanto in tanto e basta. questo è il codice da mettere in un nuovo script sopra Main, il codice non fa un granchè, serve solo a dire all'evento comune qual'è l'oggetto e la probabilità a seconda del nemico selezionato, ma è l'evento comune che calcola il caso, ti comunica l'avvenuto furto e aggiunge l'oggetto.

     

    class Scene_Battle
     
     alias ruba_make_skill_action_result make_skill_action_result
     
     def make_skill_action_result
    ruba_make_skill_action_result
    for target in @target_battlers
      if target.is_a?(Game_Enemy)
    	$eventually_robbed = 0, 0, 100
    	#$eventually_robbed[0] contiene l'oggetto
    	#$eventually_robbed[1] contiene il tipo
    	#$eventually_robbed[2] contiene la percentuale di probabilità
    	$eventually_robbed[0] = target.item_id
    	if $eventually_robbed[0] == 0
    	  $eventually_robbed[0] = target.weapon_id
    	  if $eventually_robbed[0] == 0
    		$eventually_robbed[0] = target.armor_id
    		if $eventually_robbed[0] == 0
    		  $eventually_robbed[1] = 0
    		else
    		  $eventually_robbed[1] = 3
    		  if target.treasure_prob == 0
    			$eventually_robbed[2] = 100
    		  else
    			$eventually_robbed[2] = target.treasure_prob
    		  end	
    		end
    	  else
    		$eventually_robbed[1] = 2
    		if target.treasure_prob == 0
    		  $eventually_robbed[2] = 100
    		else
    		  $eventually_robbed[2] = target.treasure_prob
    		end	
    	  end
    	else
    	  $eventually_robbed[1] = 1
    	  if target.treasure_prob == 0
    		$eventually_robbed[2] = 100
    	  else
    		$eventually_robbed[2] = target.treasure_prob
    	  end	
    	end
      end
    end
     end
     
    end

     

    per gli oggetti non prendibili puoi fare direttamente dall'evento (se il numero è il numero pelle di drago allora non aggiungere, mostra messaggio: "non puoi rubare")

     

    per i più oggetti puoi usare un accorgimento sfruttabile sempre dall'evento, puoi mettere tipo al nemico un oggetto che si chiama PozionePV1-PozionePV2-PozionePM1 e fai dall'evento che se c'è quell'oggetto setta una variabile casuale da 1 a 3 e a seconda del numero aggiungi l'oggetto

     

    ovviamente devi fare le condizioni se per tutti gli oggetti di questo tipo, pena: ritrovarsi nel menu oggetti cose con nomi strani che non servono a niente XD

     

    Istruzioni per l'evento:

     

    Crea una condizione se con script e scrivi:$eventually_robbed[0] != 0

    Mettici il caso else

    Nell'else metti un messaggio che dice che il nemico non possiede niente

    Dentro la condizione, invece fai una variabile a caso da 1 a 100 che chiamiamo C (sostituisci C col numero che usi la var)

    Poi metti un'altra condizione script (sempre dentro la prima) con: $game_variables[C] <= $eventually_robbed[2]

    Mettici il caso else

    Nel caso else, non sei riuscito a rubare, fai fare quello che + ti aggrada

    dentro la condizione metti uno script (dovrebbe essere nell'ultima pag) con: $game_variables[17] = $eventually_robbed[0]

    sostituisci 17 con una variabile da te scelta. se la cambi cambiala anche nei successivi 17

    LA VARIABILE 17 CONTIENE IL NUMERO DELL'OGGETTO, vabè?

    sempre dentro la condizione fai un'altra condizione con script: $eventually_robbed[1] == 1

    Non mettere else case

    Dentro la condizione crea uno script e metti:

    $game_party.gain_item(
    $game_variables[17], 1)

    Poi io uso lo script a impressione lettera per lettera del messaggio che mette anche la funzione che ti fa mettere oggetti nel messaggio, quindi mi basta mettere: \v[i\v[17]] e mi spunta l'oggetto completo di icona, tu non so...

    fuori da questa condizione ne metti un altra con script: $eventually_robbed[1] == 2 senza else

    Dentro la condizione crea uno script e metti:

    $game_party.gain_weapon(
    $game_variables[17], 1)

    fuori da questa condizione ne metti un ultima con script: $eventually_robbed[1] == 3 senza else

    Dentro la condizione crea uno script e metti:

    $game_party.gain_armor(
    $game_variables[17], 1)

    E basta.

    se vuoi fare più oggetti, prima dello script

    $game_party.gain_item(
    $game_variables[17], 1)

    o weapon o armor (che indicano rispettivamente oggetti, armi, e armature)

    una condizione che se la variabile 17 tipo è uguale a 5 (mettiamo il caso sia il numero dell'oggetto pelle di drago) metti un messaggio che dice che non puoi rubare e un erase event,

    se la variabile 17 invece è uguale a 188, che corrisponde all'oggetto PozionePV1-PozionePV2-PozionePM1 metti una variabile a caso da 1 a 3 e poi tre condizioni che se fa la prima metti la variabile 17 uguale al vero numero della PozionePV1 , il secondo al secondo e il terzo al terzo. ovviamente devi girare pagine e sapere quali sono i numeri degli oggetti per metterli.

     

     

    forse ho scritto un pò confusionalmente... spero cmq di essere stato chiaro ^^

  3. Personaggi animati nel menu

    Descrizione

    Questo script permette di fare in modo che i charaset 'camminino' nei menu invece di stare fermi com'è di predefinito

     

    Autore

    mikb89

     

    Istruzioni per l'uso

    Create uno script sopra Main e inseritegli què

     

     

    class Window_Base < Window
     
     def draw_actor_graphic(actor, x, y, im = 0, am = 0, draw = false)
    if draw == true
      bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
      cw = bitmap.width / 4
      ch = bitmap.height / 4
      src_rect = Rect.new(cw * im, ch * am, cw, ch)
      self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
    end
     end
     
    end
    
    class Window_MenuStatus < Window_Selectable
     
     alias animated_initialize initialize
     alias animated_refresh refresh
     
     def initialize
    @im = 0
    @am = 0
    @om = 0
    animated_initialize
     end
     
     def refresh
    animated_refresh
    @sec = Graphics.frame_count / (Graphics.frame_rate/4)
    for i in 0...$game_party.actors.size
      x = 64
      y = i * 116
      actor = $game_party.actors[i]
      draw_actor_graphic(actor, x - 40, y + 80, @im, @am, true)
    end
     end
     
     def update
    super
    if Graphics.frame_count / (Graphics.frame_rate/4) != @sec
      @im +=1
      if @im == 4
    	@im = 0
    	@om += 1
    	if @om == 3
    	  @om = 0
    	  @am += 1
    	  if @am == 4
    		@am = 0
    	  end
    	end
      end
      refresh
    end
     end
     
    end
    
    class Window_Status < Window_Base
     
     alias animated_initialize initialize
     alias animated_refresh refresh
     
     def initialize(actor)
    @im = 0
    @am = 0
    @om = 0
    animated_initialize(actor)
     end
     
     def refresh
    animated_refresh
    @sec = Graphics.frame_count / (Graphics.frame_rate/4)
    draw_actor_graphic(@actor, 40, 112, @im, @am, true)
     end
     
     def update
    super
    if Graphics.frame_count / (Graphics.frame_rate/4) != @sec
      @im +=1
      if @im == 4
    	@im = 0
    	@om += 1
    	if @om == 3
    	  @om = 0
    	  @am += 1
    	  if @am == 4
    		@am = 0
    	  end
    	end
      end
      refresh
    end
     end
     
    end
    
    class Window_SaveFile < Window_Base
     
     alias animated_initialize initialize
     
     def initialize(file_index, filename)
    @im = 0
    @am = 0
    @om = 0
    animated_initialize(file_index, filename)
     end
     
     def refresh
    self.contents.clear
    @sec = Graphics.frame_count / (Graphics.frame_rate/4)
    self.contents.font.color = normal_color
    name = "File #{@file_index + 1}"
    self.contents.draw_text(4, 0, 600, 32, name)
    @name_width = contents.text_size(name).width
    if @file_exist
      for i in 0...@characters.size
    	bitmap = RPG::Cache.character(@characters[i][0], @characters[i][1])
    	cw = bitmap.rect.width / 4
    	ch = bitmap.rect.height / 4
    	src_rect = Rect.new(cw * @im, ch * @am, cw, ch)
    	x = 300 - @characters.size * 32 + i * 64 - cw / 2
    	self.contents.blt(x, 68 - ch, bitmap, src_rect)
      end
      hour = @total_sec / 60 / 60
      min = @total_sec / 60 % 60
      sec = @total_sec % 60
      time_string = sprintf("%02d:%02d:%02d", hour, min, sec)
      self.contents.font.color = normal_color
      self.contents.draw_text(4, 8, 600, 32, time_string, 2)
      self.contents.font.color = normal_color
      time_string = @time_stamp.strftime("%Y/%m/%d %H:%M")
      self.contents.draw_text(4, 40, 600, 32, time_string, 2)
    end
     end
     
     def update
    super
    if Graphics.frame_count / (Graphics.frame_rate/4) != @sec
      @im +=1
      if @im == 4
    	@im = 0
    	@om += 1
    	if @om == 3
    	  @om = 0
    	  @am += 1
    	  if @am == 4
    		@am = 0
    	  end
    	end
      end
      refresh
    end
     end
     
    end
    
    class Window_NameEdit < Window_Base
     
     alias animated_initialize initialize
     alias animated_refresh refresh
     
     def initialize(actor, max_char)
    @im = 0
    @am = 0
    @om = 0
    animated_initialize(actor, max_char)
     end
     
     def refresh
    animated_refresh
    @sec = Graphics.frame_count / (Graphics.frame_rate/4)
    draw_actor_graphic(@actor, 320 - @max_char * 14 - 40, 80, @im, @am, true)
     end
     
     def update
    super
    if Graphics.frame_count / (Graphics.frame_rate/4) != @sec
      @im +=1
      if @im == 4
    	@im = 0
    	@om += 1
    	if @om == 3
    	  @om = 0
    	  @am += 1
    	  if @am == 4
    		@am = 0
    	  end
    	end
      end
      refresh
    end
     end
     
    end
    
    class Scene_Status
    
     alias animated_update update
     
     def update
    animated_update
    @status_window.update
     end
     
    end

     

     

  4. gps.call(section, key, "", val, 256, GAME_INI_FILE)
    
    (che si trova in def Resolution.GetPrivateProfileString(section, key))

     

    Questa è la linea in cui arriva il codice (almeno da me), dopodichè il programma si chiude, non come fa di solito con un messaggio e il tasto ok, ma si chiude direttamente e spunta il coso di windows 'invia segnalazione errori'... il che mi fa intendere sia un problema di chiamate API... non so dove mettere le mani, però le API vanno gestite con cura, un piccolo errore non fa funzionare niente.

     

    un altro errore è per la linea da aggiungere in Main dopo begin. nel commento dice di mettere 'Resolution.Maximize' mentre non si deve mettere Maximize ma maximize... quindi

    Resolution.maximize

    sembra una stupidaggine ma rpgmaker xp fa differenza fra maiuscole e minuscole

  5. io ho fatto uno script però ruba quello che il nemico ha come oggetto di vittoria, quindi solo un oggetto...

     

    poi ho fatto anche che la percentuale di probabilità di furto è quella della percentuale di probabilità di vittoria e se codesta percentuale è zero, l'oggetto non lo puoi prendere quando vinci, ma lo rubi sicuro.

     

    per fare un furto di più oggetti intendi che ti spunta una lista che ti dice cosa preferisci rubare o un furto a caso tra una lista che il giocatore non può vedere?

  6. Come dice il titolo, qualcuno ha o sa dove trovare script per creare un sistema di tecniche combo in stile Chrono Trigger?

     

    per sistema combo stile CT intendo che tu fai tecniche e poi oltre quelle normali ci sono quelle combo che le usano più pg tipo il 1° e il 3° nel party, ad entrambi scalano i pm e se la skill è usata in batt entrambi utilizzano il proprio turno

  7. Certo un programma esterno sarebbe un idea, non ci avevo pensato

     

    Comunque io volevo fare un rpg maker migliorato rispetto a quello che esiste già e aggiungere il supporto per lavorare anche online mentre c'ero...

     

    Si potrebbe fare provvisoriamente un programma esterno e se la cosa funziona sviluppare un rpg maker intero

     

    per i problemi dei tempi di lavoro che sono diversi io credo di non potermi pronunciare perchè non ho mai fatto una prova insieme a qualcuno che mentre io facevo qualcosa lui ne faceva un altra, posso capire che il tempo per fare una mappa è diverso da quello per farci gli eventi, però non perforza i tempi devono essere uguali, magari uno si riposa mentre aspetta l'altro... XD oppure rivede le cose fatte precedentemente

     

    EDIT:

    Sto cominciando a fare il programma, però se uno aggiorna una mappa e l'altro la riceve non la può vedere perchè l'rpgmaker oltre alle mappe ha un file (RPG_RT.lmd mi sembra per 2000/2003 e Mapqualcosa.rxdata per xp) che gli dice l'ordine, il numero, e il nome delle mappe, aggiungere una mappa in una cartella non significa averla nel maker, ciò comporta l'invio anche di questo file che sostituisce il precedentequindi se tutti e due hanna cambiato cose nelle mappe si sballa tutto :sisi:

     

    che dite lo faccio per xp o 2000/2003?

  8. Vuol dire che l'aggiornamento non sarà proprio in tempo reale, ma comunque la modifica del progetto è online

     

    magari quando uno finisce di fare una mappa clicca sul tasto UPLOAD e a tutti gli altri spunta in qualke barra: Tizio ha aggionto al progetto la mappa x clicca qui per scaricarla

     

    e poi non ho aperto questo post per fare criticare il progetto, se capite che una situazione potrebbe presentare problemi ditelo e provate a dare una soluzione, non dite che è impossibile

     

     

    l'utilizzo del programma dovrebbe essere in questo modo:

    io creo una mappa

     

    a tutti gli altri appare la mappa creata da me

     

    la persona addetta agli eventi (che io conosco, con cui ho deciso i ruoli, e abbiamo stabilito a che ora lavorare al progetto) crea gli eventi nella mappa che io ho creato

     

    in contemporanea, io sto lavorando alla mappa successiva

     

    comunque tutti e due ci rifacciamo allo storyboard scritto in precedenza visibile a lato, sotto la finestra della chat e che l'addetto allo storyboard va aggiornando.

     

    continuiamo a creare mappe ed eventi fino a quando abbiamo completato quanto scritto nello storyboard

     

    a quel punto clicchiamo aggiorna nello storyboard in modo da avere tutti e due lo stesso punto di riferimento

     

    in caso di discordie o incertezze, c'è sempre una finestra a lato che serve per stabilire cose e mettersi d'accordo, o per dire uno sviluppatore all'altro se può cambiare una data cosa in una mappa o in un evento se non quadra con quello che pensava di fare

     

     

     

     

    anche io penso che se in un progetto lavorano persone che non si conoscono e si trovano casualmente non uscirebbe niente, ovviamente chi usa il programma deve organizzarsi

  9. lo so che è difficile, appunto chiedo aiuto

     

    direi di utilizzare plugin in c++ per invio e ricezione dati, salvataggio e lettura file, e varie ed eventuali, perchè nella gestione dei file il visual basic è lentissimo, però per creare il programma come struttura è più facile e veloce il visual basic, quindi dobbiamo fondere i due

  10. Pensavo di mettere a lato della finestra principale anche un messenger (senza emoticon e cose che rallentano ovviamente) che serve per parlarsi, non c'è il programma lasciato a come adderè, certo, si deve sapere cosa stanno facendo gli altri...

     

    ha da un pò che ci penso, non l'ho fatto perchè "fisicamente" non mi aiuta nessuno, a un certo punto mi sono detto: "ma se io lo chiedo in un forum magari qualcuno partecipa" e così l'ho fatto. questo indica che non è un progetto utopico, ma già so come si potrebbe fare... supergiù

  11. Ecco la definizione che mi serviva:

    Stiamo parlando di un programma tipo rpg maker il cui progetto può essere modificato in tempo reale da più persone che possiedono il programma e sono collegate

     

     

    Per dax:

     

    aspettavo prima qualcuno che lo chiedesse... XD

     

    gamemaker serve per creare giochi in generale, non per rpg in particolare e non si uniscono i giochi durante il lavoro...

     

    io volevo fare un programma che serve per creare rpg (ovviamente come succede con l'rpg maker, c'è chi lo estende per farci altre cose, ma io pensavo a un programma per rpg) e mentre tu lavori al tuo computer facendo un evento, magari un altro che collabora con te e lavora allo stesso progetto fa le mappe o quello che è il suo compito nel gruppo. Istantaneamente (velocità rete permettendo) nel tuo progetto, quando l'altro finisce la mappa, tu la vedi, o anche mentre la fa.

     

    per codice preferisco visual basic 6 e se necessario qualche plugin in c++, poi possiamo passare a ciò che conviene di più

     

    Per Ziel van Brand:

     

    Certo, ovviamente il programma può essere usato sia da persone che si conoscono online, sia da un gruppo di amici che non possono fare insieme un rpg in un computer perchè c'è un solo mouse, per dire.

     

    Quello che mi ispira di più personalmente è quello di creare un rpg con i miei amici a distanza, cioè lo faccio già, ma farlo contemporaneamente sarebbe tutta un altra cosa... fino ad adesso invece abbiamo fatto che tipo un mese ci lavoro io, poi glielo passo e ci lavora un altro e cose del genere

  12. Cmq la mia idea è un PROGRAMMA per realizzare rpg utilizzabile tramite internet da più persone, non un rpg giocabile online

     

    cerco collaborazione per realizzare il programma, non un rpg

     

     

    Ziel belli i pupilli dell'rpg maker xp che hai in firma dove li hai presi?

  13. Ciao a tutti volevo fare un rpg maker (ovviamente chiamato in modo diverso) utilizzabile insieme a qualcun altro...

    tipo che mentro io faccio una mappa di un rpg, un altro sta creando un evento nella stessa mappa dello stesso rpg e un altro sta facendo il database, in modo che un gruppo può lavorare contemporaneamente nello stesso progetto, perchè com'è rpg maker si può fare che uno fa il db, uno gli script (nell'xp), ma le mappe e gli eventi non possono farli più di una persona anche separati perchè poi non si possono unire, almeno facilmente

     

    non so se sono stato chiaro, spero di si...

     

    secondo me è un idea buona così si velocizza lo sviluppo di rpg in gruppo, altrimenti si deve fare ogni due e tre scambio di file e suddii vari

     

    vedete come vi sembra e se siete d'accordo aderite!

  14. wow nn avevo mai ricevuto commenti così d 1 mio gioco... grazie

     

    allora commento il commento

     

    sa un po' di antefatto tipo Tales of phantasia
    in effetti qnd l'ho cominciato avevo giocato solo a TOP... XD

     

    Il mapping è assolutamente da rivedere, senza offesa ma ho visto solo una mappa decente fin dove sono arrivato: quella del magazzino del negozio di Luchan. Le altre sono tutte identiche, prova avariare le misure o cmq restringi ad esempio il ballatoio tra la stanza di Maul e quella della madre (è grande come la stanza!!).

    mmh... non sn bravo x niente cn le mappe, devo farmi aiutare

     

    Detto questo... la scena della morte della madre è stata esilarante.
    beh l'intenzione d fare ridere c'è...

    cmq l'ho detto, nessuno m aveva mai detto niente

     

    nn si spiega perchè grazia Maul e Luchan

    si spiegherà dopo... forse...

     

    Oppure scene del tipo:

    - che ci fai qui?

    - mah sai, mia madre è stata assassinata

    - ah ok allora vengo con te

    Dai... nn fino a qst punto...

     

    posti in cui puoi tagliare passando attraverso la cornice

    qst nn ce l'ho presente... m puoi fare un esempio?

     

    Ok mi metto al lavoro e sistemo tutto

  15. Pociotosi

     

    presenta

     

    Dreaming another day

     

    Storia

    Dreaming another day è un gdr che vi accompagna nell'avventura di Maul e dei suoi amici.

    Un tranquillo giorno Maul si sveglia un pò affamato e va da sua madre per chiedergli cosa stesse preparando. Mentre parlavano all'improvviso viene assassinata di fronte ai suoi occhi da un ninja, senza nessun motivo apparente. Subito dopo Maul scoprirà

    che quasi tutti gli abitanti del piccolo villaggio Cubu sono stati barbaramente uccisi...

    Gli unici sopravvissuti sono lui e il suo migliore amico di infanzia Luchan.

    Essi giurano vendetta contro questo assassinio e con l'aiuto di un amica di Luchan di nome Dicembe si mettono in viaggio per trovare il ninja e capire il motivo di quel gesto.

    Avrà forse avuto a che fare col misterioso passato degli abitanti di Cubu?

    Tra magici mondi, viaggi nel tempo e strani personaggi accompagna Maul e Luchan in questa

    avventura da non perdere!!!!!

     

    Personaggi

    Maul: personaggio principale che rimarrà sempre nel gruppo, la sua grafica è presa da Chrono di Chrono trigger per SNES. Pensieroso, un pò critico, ma simpatico e dal cuore buono.

     

    Luchan: amico di Maul dalla nascita e sostegno morale, senza di lui Maul si trova un pò spaesato e triste (vabbè ci mancherebbe...). La grafica è di qualche personaggio di qualche altro gioco ma non so quale.

     

    Dicembe: terzo personaggio per ordine cronologico, amica di Luchan che aiuterà i personaggi a trovare la strada da seguire e poi tornerà alle sue cose e non entrerà più nel gruppo. Le sue azioni in battaglia sono controllate dal pc e la grafica è quella di Lenna di Chrono Trigger.

     

    Tra gli altri personaggi che arriveranno e andranno (non mi piace anticiparli, quando di un gdr so già che personaggi incontrerò e che non ne incontrerò altri non mi viene di continuarlo) ci saranno personaggi forti per situazioni difficili e personaggi che aggiungeranno un pò di comicità alle situazioni. Il numero massimo di personaggi che saranno insieme nel gruppo per questa demo è di 5 (mi sembra).

     

    Caratteristiche Tecniche/Gameplay

    Non ci sono cose molto particolari, battaglia e menu sono standard, ho solo aggiunto un sistema per il cambio gruppo, uno per utilizzare oggetti particolari nella mappa stessa (non dal menu oggetti), che tengono conto della posizione in cui si trova il personaggio per funzionare o meno, un minigame nascosto in vari punti del gioco che ti consente di aumentare il livello dei personaggi e un sistema per viaggiare tra i vari pianeti. Per il resto il gioco è del normale stile di rpg maker con possibilità di salvataggio sulla worldmap e in rari savepoint.

     

    Screenshot

    http://pociotosi.altervista.org/Dati/Giochi/dad.jpg

     

    Demo/Link alla versione giocabile

     

    Crediti Vari

    Ciò che c'è è preso da vari siti, qualcosa l'abbiamo disegnata anche noi, qualche immagine è presa da una rivista con lo scanner e qualcosa rippata da altri giochi

  16. vabbè nn è spam, lì c'è la recensione quindi si può leggere in cosa consiste il gdr...

     

    boh cmq va bene, aggiusto il bug, lo aggiorno e metto il link diretto!

     

     

    se nell'inirizzo del link c'è il sito ci fa qlcs? lo metto su cose tipo megaupload e simili o va bene col link diretto al gioco dentro il sito?

×
×
  • Create New...