Jump to content

AD-Blocker detected, please disable your ad-blocker when surfing in makerando.com - There is no invasive Ad.

 

  • Chatbox

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

MMORpgmaker 3.1

Recommended Posts

Io seguo sempre questo topic

si chiama MMORpgmaker perchè può creare anche MMORPG? se è cosi me ne sono accorto solo ora :D

 

Si esatto. Si possono creare giochi MMORPG.

Inizialmente era stato concepito unicamente per quell'aspetto tecnico.

Poi negli anni, gli MMO sono sempre calati.

Ed ora è tornato di moda il Single Player.

 

Sicuramente farò una versione anche per mobile.

Prima però, voglio effettuare un lavoro stabile per Windows.

Successivamente penserò per le altre piattaforme.

come Android o iOS.

 

Se vuoi posso aiutare per controllare lo script e testare il programma

 

Certo Lx32 se stato sempre il benvenuto nel team di sviluppo.

Se ritorni mi farebbe molto piacere :D

Share this post


Link to post
Share on other sites

Certo avvio io quando scaricare.

 

Nel frattempo, porto un'altra invenzione che spero possa piacere a tutti.

 

Scartata la visualizzare delle mappe come il classico Rpgmaker.

 

Ho aggiungo un contenitore di mappe dove si può visualizzarne l'anteprima, prima ancora di aprirla.

 

1° Aggiunta.

 

cattura.jpg

 

E' possibile aprire qualsiasi mappa salvata anche di un'altro progetto creato ed importala nel progetto attuale.

Come vedete, prima di caricarla vi mostra cosa state aprendo

 

Successivamente,

La mappa verrà caricata nella lista.

Ed ecco che la vediamo comparire nel nuovo visualizzatore di mappe.

 

cattura.jpg

 

Può capitare che non ricordiamo come si chiamava una certa mappa

e senza sbatterci per ore a trovarla.

 

Con questo nuovo brevetto XD possiamo ritrovarla molto più facilmente avendo una bella miniatura della mappa

 

La lista delle mappe si può facilmente chiudere ed aprire con una combinazione di tasti esempio

CTRL+M

 

Chiudendola così abbiamo un ampio spazio di lavoro senza preoccuparci di altro

ed avere un ambiente più pulito per il nostro disegno.

 

Oltre al fatto che la finestrina è semi-trasparente

quindi non ci darà tanto fastidio visibilmente.

Ma nel caso desse fastidio la si può chiudere e riaprire.

 

 

Speriamo che Yoji non mi rubi anche questa idea >_>

 

Share this post


Link to post
Share on other sites

non saprei i cosa sei più ferrato? XD

 

Mi servirebbe anche qualcuno volenteroso che provi ad imparare a scriptare.

 

Riesci ad interpretarlo?

E' molto facile

--> ################################################
--> # MMORPGMAKER Script -  Scene GAME             #
--> ################################################
--> # Modulo del Scene Game
--> # Descrizione Linea 2
--> ################################################

package.path = ";Content\\data\\Script\\?.lua"

require "Std_Lib" --> Graphic Library
-- require "actor" --> Libreria degli attori   -- DA ABILITARE
require "Scene_Menu"
require "Scene_Item"
require "Scene_Equip"
require "Scene_Tecnic"
require "Scene_Quit"
require "Bitmap"

require "Actors"
require "gui"

require "Scene_Debug" -- Scena per il Debug

Scene_Game = {}

--> Variabili Globali
local key = "null" --> Gestore dei Tasti
menu = "false" --> Abilita / Disabilita Menu (Globale)
local initialized = "false"; --> Primo Caricamento delle risorse Effettuato
local attori = 0 --> Numero degli attori presenti nel party
index = 0 --> Oggetto Item nella finestra Selezionato
item_max = 8 --> numero di elementi nella finestra di selezione
menu_state = "null" --> Indica l'oggetto scelto nel menu per il caricamento della nuova scena (Var Globale)

local dialogs = false



--> Inizializzazione dello script
function Scene_Game.Initialize()

    
    -----------------------------------------------
    
    Scene_Debug.Show()
    
    menu_state = "null"
    key = "null"
    
    --> Creazione e Abilitazione dell'Attore
     if initialized == "false"  then

     Actors.Initialize() -- Inizializzo tutti gli attori
     Actors.Enable() -- Abilito il Rendering dell'attore principale
     Actors.Controls(true) -- Attivo i controlli
                                 
     
        initialized = "true"   
    end
end





--> Update della scena
function Scene_Game.Update()
    key = "null"
    key = Keyboard_State.Get_Key()
    
    
    
    
    
--> Abilitazione / Disabilitazione del Menu
    if key == "escape" and menu_state == "null" then
        System_Audio.Accept()
        key = "null"
        
        menu_state = "open"
        
        Scene_Manager.Create("Scene_Menu")
        Screen.Window_Name(string.format("Stato menu: %s",menu_state))
        
       
    end
    
    
    
    
    

----------------------------------------------------
-- # Prova di un dialogo
----------------------------------------------------

    --Se il dialogo è aperto, mostra il messaggio
    if dialogs == true then
    
    --Window.Dialog("Benvenuto Giocatore\nQuesto e' un dialogo di esempio")
    call_event("event_0") --> Richiamo un evento dal database

    end

    
  
    --se premo f1 ed il dialogo e chiuso allora attiva il dialogo
    if key == "f1" and dialogs == false then
        System_Audio.Accept()
        key = "null"
        Actors.Controls(false) -- Disabilito i movimenti durante il dialogo
        dialogs = true
    end 
    
    -- se premo f1 ed il dialogo e aperto disattivo il dialogo
    if key == "f1" and dialogs == true then
        System_Audio.Cancel()
        Actors.Controls(true) -- riattivo i movimenti
        dialogs = false
    end
    

 end
 -------------------------------------------------------------------------
   
     
 Scene_Game.Initialize()
 

Share this post


Link to post
Share on other sites

 

non saprei i cosa sei più ferrato? XD

 

 

boh XD alla fine non avendo collaboratori mi occhupo di un po di tutto, script, grafica, audio, etc XD

 

Per quanto riguarda lo script non ho mai masticato il lua, però a colpo d'occhio direi:

 

- hai caricato una serie di moduli dal percorso "package.path";

 

- Scene_Game = {} boh XD (forse hai richiamato o inizializzato Scene_Game);

 

- Inizializzato e dichiarato una manciata di variabili;

 

- nella funzione initialize:

 

       -Scene_Debug.Show() (forse un test?)

       - assegnato null a menu_state e key

       - inizializzazione e visualizzazione del personaggio se non è gia stato fatto;

fine initialize.

 

-nella funzione Update:

 

-controlla se viene premuto qualsiasi tasto e lo assegna a key

 

- se il tasto premuto è esc e il menu non è aperto allora suona SE, resetta key, assegna menu_state come "open", richiama la scena "Scene_Menu", cambia formattazione della stringa in modo che appaia il suo valore a schermo.

 

- Se dialogs è true mostra il testo di esempio e richiama event_0;

 

- Se dialogs è false ed f1 è premuto suona SE, azzera key, disabilita movimenti e pone dialogs true;

 

- Se dialogs è true ed è premuto f1 suona SE, abilita movimenti e pone dialogs false;

 

fine update

 

richiamo la funzione initialize (anche se non ho ben capito in che contesto sia inserito questo richiamo)

      

 

Mi perdonerai se non sono stato proprio ordinato XD

Share this post


Link to post
Share on other sites

Si 

 

si parte da una base molto semplice

 

I require  includono eventuali librerie che servono

Esempio la libreria Bitmap permette di disegnare immgini a video o testo.

 

quindi si fà esempio

require "Bitmap" -- Includo la libreria Bitmap

Si dichiara una classe e le due funzioni principali che l'engine chiama

 

Qui dichiaro una classe

Mia_Classe = {} 

Initialize lo chiama l'engine per inizializzare la classe

function Mia_Classe.Initialize()  

-- questo è un commento

end

Questo è il metodo update

ovvero il draw

function Mia_Classe.Update()

--  codice

end

Il Metodo initialize viene sfruttato solo all'avvio dello script

mentre il metodo update viene chiamato continuamente dal motore.

 

quini in update esempio puoi metterci

Bitmap.Draw_Text(10,10,"Ciao Jean")

Che scriverebbe a 10 Pixel su X e 10 su Y  Ciao Jean.

 

Semplice no?

 

Il tutto diverrebbe così

require "Bitmap"


Mia_Classe = {}


function Mia_Classe.Initialize()


end


function Mia_Classe.Update()

Bitmap.Draw_Text(10,10,"Ciao Jean")

end

Share this post


Link to post
Share on other sites

Tutto l'editor ed il suo comportamento.

 

Nella versione precedente non si potevano selezionare tileset ma creare porzioni ed aggiungerli ad una lista di tileset

salvati.

 

Successivamente si doveva compilare la mappa prima di poterla usare in gioco.

 

Ora basta cliccare su Salva Progetto che parte la compilazione in background tutto in automatico

e ti permette di usare il programma senza bloccarti il lavoro.

 

Altra nuovità è scomparso la lista delle mappe a cartelline.

Ora c'è la finestrella che mostra anche le anteprime delle mappe contenute nel progetto.

 

e un bel pò di cose. tante XD

Share this post


Link to post
Share on other sites

Per il database sto pensando a cose molto carine.

 

Devo puntare sulle nuovità gostino.

Le già viste, già fatte non attraggono.

 

Devo realizzare un prodotto dove chiunque lo utilizza avrà voglia di utilizzarlo.

Per la sua semplicità ma sopratutto per la potenza.

 

Punto e sto sempre puntando sulla potenza e sulle prestazioni.

Non voglio che si noti nemmeno un piccolo lag. 

Quindi me le studio ogni giorno le cose da fare con una bella todo list.

 

Ora sono concentrato sull'editor. 

L'engine al 90% è pronto.  l'altro 10% restante riguarda le animazioni e basta.

 

Il lavoro più grande da fare ora e creare un buon editor che offra tante possibilità.

 

Dopo le tante feature e nuovità portate, ci sarà anche la possibilità di scaricare direttamente dalla piattaforma di MakingItalia

tileset aggiuntivi, Animazioni per il database, alcuni eventi più complessi già creati ecc. ecc.

 

Ci sarà una sorta di pulsante Importa in alcune pagine del database dove verrà illustrata una lista di operazioni che gli utenti vogliono condivedere

e che voi potrete importare nel vostro progetto.

del tipo, scaricare alcuni script già fatti direttamente dall'editor cliccando su Importa.

 

Riguardo al BS, sarà laterale.

il frontale non mi è mai piaciuto.

 

Per ora procede molto bene, ripeto chiunque voglia partecipare al progetto anche solo per dare consiglii, pareri, rispondere ai sondaggi

e sempre una mano molto gradita.

L'importante è supportare questo progetto visto che sarà gratuito.

 

se volete, www.makingitalia.net/forum  vi dovete registrare solo con un indirizzo di tipo hotmail o live

gmail è altro genere sono disattivati per via degli spam bot.

Share this post


Link to post
Share on other sites

In effetti non mi dispiacerebbe "dire la mia" (per così dire) quanto a eventi (i tipi di comandi se non altro) e database, sopratutto quest'ultimo, insomma in 17 anni di Making penso di avere una buona idea di come rendere un database cazzuto prendendo il meglio dai vari tool usciti, più qualcosa che a parer mio è sempre mancato.

 

Mi sa che ti mando un bel pm appena organizzo le idee :D

Share this post


Link to post
Share on other sites

Justino si starà pentendo di avermi fatto accedere xD sto sfornando post dopo post con suggerimenti di features da inserire (basandomi sulle cose che reputo più utili dai vari tool);

 

il BS sì, sarà laterale di base :D

Share this post


Link to post
Share on other sites

:ghostrider: mwahaha mwahahah!

 

ormai questa cosa l'ho proposta ovunque, perché non farlo pure qui XDDD a patto che non l'abbia già fatto è l'ho dimenticato :(

Il sacrosanto tile a ponte! in cui puoi passare sopra e sotto e lui capisce in automatico che deve fare!!!!1111!!! U.U/

Share this post


Link to post
Share on other sites

E' un'epoca che non scrivo e questa mi sembra un'occasione buona. Il tool mi sembra davvero ottimo!

La scelta del Lua (per quanto sia un linguaggio che non conosco) mi sembra molto azzeccata dato che già a una prima occhiata risulta molto semplice e intuitivo e credo sia così anche per qualcuno nuovo nell'ambito dello scripting, senza contare che se ricordo bene dai post vecchi (prendetelo con beneficio d'inventario) è un linguaggio compilato, il che lo rende più performante.

 

L'editor di mappe mi piace moltissimo! E se non è già presente ti consiglio di aggiungere opzioni per modificare la dimensione della griglia, così che ciascuno possa usare tiles del formato preferito senza dover modificare i propri per adattarli al tuo standard.

 

Se fossi in te inoltre porrei anche l'attenzione ai character oltre che ai tileset, ma voglio spiegarmi: non dico di includere un character generator, non è quella l'idea, ma dare la libertà a un utente di usare il formato di character che preferisce. Per esempio, capita spesso a un maker di non avere risorse e voler utilizzarne alcune da un gioco famoso che però sul web sono reperibili solo in un formato che non coincide con quello che ci serve (non formato di file, intendo come sono disposti i vari frame nell'immagine, quali frame usa, che dimensione hanno... esempio principe: la differenza tra i charset di rpgmk xp e quelli di vx).

Ora sarebbe interessante usare il nostro formato preferito senza dover affrontare un lavoro esagerato per convertire un formato all'altro.

Sarebbe improponibile avere un codice che riconosce il formato e si adatta in automatico, meno impossibile sarebbe invece avere un editor, molto simile a un map editor che usa il vecchio formato come tileset e ti permette di collocare le varie immagini in un formato compatibile con quello usato dal tuo tool.

So che l'operazione che ho descritto potrebbe essere banalmente eseguita con un qualunque programma di grafica, sia paint che gimp che photoshop, ma avere un editor incorporato del genere è comunque un valore aggiunto che velocizza il lavoro, inoltre sono sicuro che a tale editor si possano aggiungere un considerevole numero di funzioni (a esempio e questo supportasse più layer si potrebbe ottenere un ottimo character generator).

Comunque capisco benissimo che la cosa possa non interessarti causa mole di lavoro e tempistiche, semplicemente butto un'idea che spero possa interessare.

 

Per il resto che dire? Continua su questa strada! Sono molto interessato al progetto, attendo una versione stabile e a conti fatti se devo rimettermi al lavoro su un gioco utilizzando un nuovo tool sceglierei più volentieri questo che MV per molti motivi! Ti aiuterei molto volentieri Just soprattutto come beta tester o scripter, ma come evidente (vista la mia prolungata assenza dal forum) non ho molto tempo libero per makerare e scriptare per conto mio, spero almeno di fare un salto sul forum più spesso.

Share this post


Link to post
Share on other sites
Ciao ale-gap grazie sopratutto per aver risposto.

 

I tuoi consigli sono preziosissimi come qualunque altra persona possa dare

un parere per migliorare il tool e renderlo perfetto.

 

Ogni idea e sempre ben accetta l'importante e realizzare un qualcosa

che alle persone piaccia, e sfrutta tutto il suo potenziale.

 

Per i charaset attualmente purtroppo si deve utilizzare una misura standard.

perché il detect delle collisioni è basato su un algoritmo che calcola i 32x32

 

Ma volendo si potrebbe tranquillamente fare.

appatto che la risorsa charaset, rispetta tutti i frame.

esempio:

 

dovranno essere tutti 32x32 o  32x64  o 64x64 ecc. ecc.

in pratica una potenza di ^2

 

Ma nulla è impossibile come dico sempre nel campo della programmazione.

 

se vuoi riporre la tua idea c'è proprio il forum di supporto del programma.

purtroppo lo pubblicizzo anche su vari forum.

 

E puoi immaginare che potrebbe essere complicato reperire consigli dai 

svariati forum che supportano il progetto.

 

per questo invito tutti anche per dare solo consigli,

Il chè è un aiuto importantissimo che non và sottovalutato.

Anzi, io prendo molto a cuore i consigli che mi vengono dati.

Purché aiutano a migliorare il motore.

 

Ghostino mi sta dando un grande aiuto per quanto riguarda

l'interfaccia grafica.

 

E di come rendere piacevole l'uso del tool senza stancare l'utente

che lo userà.

 

Ovviamente in tutto questo la semplicità deve essere al primo posto.

 

 

Riguardo al generatore invece sarebbe molto semplice da realizzare.

un pò come hai appena detto.

 

Riconosce la dimensione della risorsa e ne ricrea un template

su cui applicare i vari frame.

 

è una bella idea e molto interessante

sicuramente da prendere in considerazione.

 

Altra innovazione, che non ne ho parlato molto in giro,

E' la possibilità di convertire file audio direttamente dall'editor.

 

esempio convertire un midi in mp3, un mp3 in ogg ecc. ecc.

direttamente dall'editor.

 

Come detto, tra poco iniziamo a lavorare sul database e sugli eventi

ma sopratutto sull'interfaccia grafica del programma.

 

visto che ci troviamo in tema vorrei mostrarvi a cosa sto puntando

magari un vostro parere sarebbe molto utile

 

E meglio un ambiente di lavoro Dark o Light?

 

Il Light lo avete visto anche nel video

 

Ecco una screen dell'ambiente di lavoro in dark

 

 

cattura.jpg

 

cattura2.jpg

 

 

Meglio così o come prima?

 

NB: A sinistra abbiamo delle pagine di navigazione

Share this post


Link to post
Share on other sites

l'opzione di scegliere la grandezza che si vuole per i tileset mi sembra sia gia presente, e a quanto ho capito si può cambiare mappa per mappa, almeno ho notato che quando si crea una nuova mappa nell'editor viene chiesto di impostare la grandezza dei riquadri (32x32 di partenza), anche se non so se è ancora operativa la funzione xD

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

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

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×