Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: rrc2soft en 01 de Enero de 1970, 01:00:00 AM

Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: rrc2soft en 01 de Enero de 1970, 01:00:00 AM
                                Hola a todos!
Desde hace tiempo me ronda una idea por la cabeza, una posible "mejora" para los MMORPG. No se si se ha llegado a probar o implementar (mi experiencia con los MMORPG es mas bien poca), pero no la he visto comentada en ningun sitio/foro.
La idea es la siguiente: Incluir escenas cinematicas dentro de un MMORPG o/y incluir enigmas del estilo de los RPG de 1 jugador.

ENIGMAS
=======

Se que el Ultima Online incluye enigmas en el sentido de que "El Sr X ha perdido su medallon: Esta en NoSeDonde, y si lo recuperas te dara una recompensa", pero me refiero a otro tipo de enigmas. A ver si me explico...
Imaginemos unas ruinas: dentro de esas ruinas hay una torre que solo se puede abrir con cuatro llaves. Pero esas cuatro llaves estan repartidas en todo el mundo. Solo cuando las cuatro se reunan y se usen con la puerta (de forma automatica o manual, y para simplificar, no hace falta que sean todas a la vez), la abriran, dando paso a "otra dimension" (toma topico XD).
Otro ejemplo: Existe un pasillo literamente plagado de enemigos dentro de una piramide. Si alguien entra en el, muere inmediatamente. La unica solucion consiste en entrar completamente desnudo (y sin NADA en el inventario), y asi se puede descubrir que ni mueres ni los enemigos te atacan.
Lo problemas que veo para hacer este tipo de detalles son: Objeto "unico", que puede perderse (al estar en el inventario de un jugador, y ese jugador puede ser eliminado/estar offline); inclusion de una "variable global" que representa un estado dentro del mundo; uso de una maquina virtual para ejecutar programas complejos (¿En cliente => posibilidad de hack / O / En servidor => ¡Sobrecarga!); chequeo de variables del personaje.
Respecto al objeto "unico", podemos hacer que no sea unico mediante soluciones de diseño (la llave en cuestion es energia que vuelve a aparecer pasado X tiempo => el problema de la maquina virtual del servidor / Si un objeto determinado tiene mas de 24h de "vida", desaparece), aunque derivamos el problema.
Respecto a la "variable global", creo que no seria dificil: Son detalles que no varian mucho a lo largo del tiempo, por lo que al cambiar se guardarian en disco duro y en memoria ("cache"), y de esa forma se podria proteger esas variables de una caida del servidor y hacer de su lectura algo posible.
Respecto a la "maquina virtual", la cosa es mas dura (aunque tampoco he pensado mucho en ello). Se podria utilizar un script sencillo y rapido que trabajara en paralelo con una hebra, y/o paralizar al personaje mientras se ejecuta el script, y que haya una cola de "scripts" en el servidor de tal forma que solo ejecute uno (o varios) a la vez.
Y Respecto al acceso de variables (inventario) del personaje... eso depende del MMORPG, aunque tambien habria posibilidad de "hack" si lo leyera del cliente.

CINEMATICA
==========

Respecto a la cinematica, no me refiero a la cinematica a un solo jugador, sino a una especie de "broadcast": Algo importante esta ocurriendo dentro del mundo, y los jugadores deberian saberlo.
Un ejemplo (ooootro topico): Los jugadores estan a lo suyo, y de repente empiezan a caer rayos. Ahora la camara de TODOS los jugadores se centra en un templo: se puede observar como sale de el un inmenso demonio que suelta una parrafada "Ahora el mundo es mio, jajajaja" y los jugadores retoman el control.
Los problemas que surgen aqui son: Deberia haber una forma de "paralizar" a todos los jugadores, y que cuando todos estuviesen "paralizados" el broadcast pudiera comenzar (sincronizacion). Tambien esta el tema de hacer el broadcast de la escena cinematica, y de que el engine soporte que eso se pueda hacer.
Respecto a la paralizacion/sincronia, el asunto seria enviar un mensaje a todos los personajes que esten actualmente jugando (y evitar que entren otros nuevos) para paralizarlos, y tener (quizas) un contador que revise si todos los jugadores estan paralizados. Y cuando esto ocurra, enviar la señal de "comienzo de escena cinematica".
Respecto a la escena cinematica, aparte de que el engine puediera soportar algo asi, podria enviarse la informacion a los jugadores o que los jugadores tuvieran en su disco duro el script para hacer la escena cinematica (previamente bajado gracias al motor de parches del juego). Una vez todos han enviado la señal de "vale, he acabado" (y quizas un contador de tiempo para parar la escena en caso de que no recibiera los suficientes mensajes => cuelgues, fallos de conexion, ...)

Bueno, son un cumulo de ideas. Realmente no vamos a hacer nada de esto, pero queria que opinaseis un poco. Y si os sirve de algo u os da una idea para hacer un MMORPG de la ostia, mejor que mejor :ojo:                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: rrc2soft en 02 de Octubre de 2002, 11:30:25 PM
                                Hola otra vez!
Esto de resubir un mensaje no lo he hecho nunca, pero la verdad es que me gustaria que opinaseis sobre el post, ya que me costo un tiempo pensarlo (aunque no lo vaya a utilizar  :ojo: ). Y encima han expuesto en Gamasutra un articulo AQUI al que se le podria aplicar todo lo que escribi (que por cierto iba orientado a conseguir lo de ese articulo, eso me sube la moral  8) )                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: ethernet en 03 de Octubre de 2002, 04:09:55 AM
                                Pienso q un MMORPG es el tipo de juego mas dificil de programar  que hay por el momento, no es por desanimar xD, pero has pensado como implementar todo eso?

Saludos                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: sés en 03 de Octubre de 2002, 09:19:21 AM
                               
Citar
Bueno, son un cumulo de ideas. Realmente no vamos a hacer nada de esto, pero queria que opinaseis un poco. Y si os sirve de algo u os da una idea para hacer un MMORPG de la ostia, mejor que mejor  

 Las ideas están muy bien, con un poco de suerte alguien hará algo de eso algún día.                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: rrc2soft en 03 de Octubre de 2002, 01:03:46 PM
                                Ethernet:
No, no he pensado como implementar todo eso, sobre todo porque realmente mi experiencia como jugador y como programador/diseñador de MMORPGs es de nula para abajo :llorando: , aunque puedo suponer como implementar algunas cosas (siempre desde el punto de vista del diseño):
Los MMORPGs se basan en arquitecturas cliente/servidor y el cliente es un mero interprete (creo) de la informacion que le envia el servidor (muestra PJ dando golpe, muestra dialogo, etc). El cliente envia cierta informacion respecto de su personaje, y recibe la respuesta cuando el servidor actualiza el frame del juego y ve como su personaje actua como el queria.
Ejemplo: supongo que cuando un personaje envia al servidor que quiere moverse, el servidor chequea el movimiento y actualiza la informacion en el servidor de "PJ moviendose a X", por lo que el jugador humano recibe la respuesta de que su personaje se mueve al ir recibiendo el estado del mundo (en el que el personaje se mueve).
En el caso del problema de los enigmas y la maquina virtual (centrandome en el ejemplo de la piramide y los muertos):
...cuando un personaje entra en una zona del mapa que activa un "enigma" (maq. virtual) el servidor deberia recibir un mensaje sobre este hecho (supongo que cuando se cambia de mapa por teletransporte las cosas funcionan igual). Entonces el servidor debera informar al jugador humano que no admitira ningun paquete de movimiento (para evitar que le sobrecargue con paquetes que tenga que desechar, supongo que cuando mueres pasa algo parecido), y lo encolara en una cola de ejecucion de maquina virtual (que ya requeriria un analisis mas detallado sobre si puedo ejecutar varios scripts en paralelo o solo uno hasta el final, esto siempre en una hebra aparte). Esta cola no deberia tener muchos elementos porque no creo que ni el 10% de los jugadores esten ejecutando un script a la vez, asi que deberia ser rapido.
Cuando este ejecutando el script (y obviando los chequeos de inventario y demases, porque para eso si que tendria que saber como esta implementado el manejo de estos elementos dentro del MMORPG), se impone al jugador ciertos gestos/movimientos (igual que en un RPG unijugador), pero sin embargo el jugador humano recibe lo que esta haciendo su personaje gracias a lo que he comentado antes (recibe el estado del mundo y por ende el movimiento u otras cosas que hagga su personaje). Una vez acabe con el, avisara al cliente que puede enviarme otra vez paquetes, y a otra cosa mariposa.
¿Y si el personaje muere durante el script?. no pasaria nada, ya que la muerte seria una de las ultimas instrucciones de esa maquina (esa muerte avisaria al cliente del jugador humano para ejecutar las rutinas asociadas a la muerte, que OJO para que todo funcionara no deberia avisar al servidor que reinicialice su personaje [o si... todo seria analizarlo]), y cuando el jugador pudiera enviar mensajes otra vez seria como si el jugador hubiese muerto luchando contra un bicho.
OJO, que tambien se podria decidir que fuera el cliente el encargado de ejecutar ese script, aunque en este aspecto podriamos esperar un mayor ataque por parte de hackers, y habria que tener muchisimo cuidado (y un analisis de la ostia).
¿Y los objetos unicos?
Los principales problemas que existen con los objetos unicos son los siguientes (que aparecen si los comparamos con los RPGs unijugador):
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Gunder en 07 de Octubre de 2002, 11:42:27 AM
                                Hola rrc2soft,

en los juegos actuales de MMORPG se usan estos tipos de objetos:

- Normal, cualquier tipo de objeto.
- No drop, el objeto no se puede vender ni soltar.
- Lore, solo se puede llevar un objeto de ese tipo.

Con la combinacion de estos tipos se pueden coseguir todas las opciones necesarias.

En el caso de los Quests que tu cuentas, todos los personajes podrian adquirir el juego completo de llaves pero no pasarselas a otros jugadores.
Al tener las x llaves y tocar la puerta, te teletrasporaria inmeidatamente al 'otro plano' o haces que la puerta se abra durante un tiempo, evitando así que otros usuarios que no cumplan el quest entre en el plano.

Tambien, has de tener encuenta que los enigmas suelen estar siempre activos y que se usan testigos para demostrar que has pedido un quest. Hablas con un noble y este te dice que mates al troll que rapto a su hija y metas su cabeza en esa bolsa que te da. Al entregarle la bolsa con la cabeza este te premiara con PX y monedillas. Para evitar que un jugador que no ha hablado con el pnj que manda el quest y resolverlo entregando la cabeza metida en la bolsa, tanto la cabeza como la bolsa seran objetos 'no drop' y así yo como jugador de nivel 15 y que puedo hacer el quest facilmente, no puedo dar la bolsa con la cabeza a un newbe.

Es logico nivelar los quest para que si este esta pensado para persaonajes de nivel bajo, el noble solo te de la bolsa y te cuente el quest si estas entre niveles 1 y 5, por ejemplo.

Ale.
Gunder.                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Jove Chiere en 07 de Octubre de 2002, 02:42:20 PM
                                rrc2soft: pasate por www.Sphereserver.com y mirate los scripts...

Son mas o menos como lo hacen los de OSI ya que lo a programado gente que trabajo para ellos...

Si quieres jugar pasate por el canal #tierras_baldias (del hispano claro esta).

Lo de los chequeos creo que era con una propiedad TIME=XXX y se iba restando en tiempo real por cada objeto del server que caduca... al caducar se borra y empieza otra vez de nuevo la cuenta del SPAM del item, lo mismo con los monstruos para evitar que salgan un numero infinito de ellos, el SPAM no empieza la cuenta atras de un nuevo monstruo hasta que no as matado a su anteriormente creado, tambien existe un valor que es el numero de criaturas que crea ese SPAM y de que tipo (si es solo 1 se pone su numero directamente, si son de varios tipos se a de crear una lista de random's)

Gunder: No jueges tanto a EQ o DAoC...  :jaja:                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Gunder en 07 de Octubre de 2002, 03:30:49 PM
                                Jove, no he jugado en mi vida al EQ ni al DAOC solo he jugado al UOL.
:P                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: rrc2soft en 07 de Octubre de 2002, 06:17:43 PM
                                Gunder:
No sabia yo eso de los tipos de objetos, esta interesante  8) . Asi podria hacerse lo del juego de llaves y las otras cosas...
Aunque lo que estabamos pensando (al menos a donde iban orientados nuestros pensamientos) era a cambios a nivel global en el mundo. Es decir, que lo de las llaves y el portal se mantenga abierto siempre, y que sea una quest pero una quest que afecte a todos los jugadores del mundo: "Un insensato ha abierto las puertas del infierno, a partir de ahora vivir en este mundo sera mas complicado..." (aparecen nuevas clases de bichos, y solo desapareceran cuando alguien entre en ese portal y destruya algo de dentro).
Jove:
Ya me dare un voltio por SphereServer :ojo:. Aunque ahora lo que es tiempo para jugar, casi no tengo...  :llorando:                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Gunder en 07 de Octubre de 2002, 06:23:49 PM
                                Yo no pensaria en hacer cosas que afectan a niovel global al mundo, ya que cuando alguien lo ha hecho, el resto pierde la oportunidad de hacerlo. El juego piede interes.

Ale,
Gunder                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: rrc2soft en 07 de Octubre de 2002, 07:02:08 PM
                                Es por dar al juego una sensacion de evolucion, de mundo cambiante. Puede que la gente no disfrute de la quest en si (aunque habria que arreglarse para que fuera de esa forma...), pero todos ven los resultados, y asi no te da la sensacion de "ya he visto todo lo que tenia que ver"...
Pero vamos, lo suyo seria que todo el mundo disfrutase con estas cosas  :ojo:                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Mars Attacks en 07 de Octubre de 2002, 09:02:35 PM
                                Me vais a matar a pedradas, pero ¿qué es un  MMORPG? Supongo que será algo de Multi M... O.... Rol Play Game (o no).                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Gunder en 07 de Octubre de 2002, 10:50:14 PM
                                Masive Multiplayer Online Rolle Playing Game.

Ale,
Gunder.                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: x-alien en 08 de Octubre de 2002, 02:42:41 AM
                                joder.. pretendes hacer un mmorpg...
aparte de ser super dificil de programar... k tal tu nivel de graficos?... si intentas algo te vas a matar en vida.

yo haria un bomberman, un comecocos, un alleycat, un mundito k carga un escenario como los del UT2003 con un wen sistema de particulas.. pero un mmorpg... es demasiao

mucho trabajo para uno solo o varios...

por cierto si kieres ver un buen mmorpg esperate k salga el world of warcraft, el uo es un juego muy muy malo graficamente, a mi particularmente no me gustan muchos los mmorpg, pienso k pone a la gente algo chala como los k se han suicidado en america, k jugaban al everquest...

son juegos para gente sin vida social si se juega dias , dias y dias...
tengo un amigo viciado al daoc y pa mi k este año no lo veo en la uni ..pork nunca iba a clases y se iba a un ciber a jugar al daoc.

saludos                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Mars Attacks en 08 de Octubre de 2002, 10:38:49 AM
                               
CitarMasive Multiplayer Online Rolle Playing Game.

Ale,
Gunder.

Gracias :D
Puessssssss os recomiendo un libro llamado WYRM que seguramente os gustará bastante. Va de inteligencia artificial, virus... y MUD's. A mí me gustó mucho.

Sobre lo que dice x-alien acerca de este tipo de juegos, es como todo en la vida. Un juego no te vuelve chalado ni una peli te hace ser más agresivo. Si tú estás chalado antes de comenzar probablemente lo potenciará, pero a una mente sana no le va a causar el más mínimo daño. Todo son predisposiciones. Conozco a quakeros o muderos que no consiguen despegarse de la silla y a otros que hacen vida normal (incluso pasan menos tiempo con el ordenador que yo).
Que ese tipo de juegos llamen más a los chalados por algún tema de vida interior pobre o qué se yo (por lo mismo que a algunos les llaman los libros) pues... quizás, puede ser; sin embargo probablemente si no se volvieran chalados con eso, se volverían con cualquier otra cosa.
Pero no hay que generalizar, supongo que también habrá gente que le llame por el espíritu de aventura, de compañerismo, de vivir una historia (también es lo mismo por lo que a algunos les llaman los libros) o simplemente por pasar el rato.                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: rrc2soft en 08 de Octubre de 2002, 11:36:58 AM
                                Mars attacks:
El libro ese de WYRM...¿Donde esta?. ¿Se compra o esta a libre disposicion en algun sitio?  :) .
X-Alien:
No, no pretendo hacer ningun MMORPG, lo mio son los juegos de rol unipersonal en plan consolero 2D (http://www.rrc2soft.com). Pero los viajes en autobus dan mucho que pensar, y ya hace tiempo que tenia la idea esta rondando por la cabeza y queria compartirla  :ojo:                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: Mars Attacks en 08 de Octubre de 2002, 02:07:07 PM
                                Me lo dejó un amigo :) Es de los que se compran (o se dejan), pero igual en alguna biblioteca lo encuentras :)                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: x-alien en 08 de Octubre de 2002, 03:39:42 PM
                                mars attack conozco tambien gente k hacen de su vida el juego...
amigos k tan enganchaos al counter strike, quake3, k hacen ligas y cobran dinero xd, yo soy de esos k juego k me paso ya no juego nunca, un juego es para un rato no para toda una vida(hay gente k lleva jugando aun al diablo2 y juega dias y dias y se acuesta a las tantas).

no pretendo generalizar, lo k si es cierto esk crios de 14- 18 años se vician y solo juegan y no hay otra cosa en su vida k el dichoso juego...
y son el tipo de gente k ves en la tele como los del partido sevilla-betis...
locos

saludos                                
Título: [Diseño]: Escenas cinematicas y enigmas en los MMORPG
Publicado por: NeLo en 08 de Octubre de 2002, 04:23:46 PM
                                Es preferible que un chaval se quede jugando 8 horas al día en su casa, a que salga a la calle a linchar a inocentes.

Y no se que ves de malo en que alguien juegue varias horas a un videojuego. Simplemente es su forma de divertirse. Como los que ven películas, leen libros o comics, dan paseos, juegan a los bolos, etc.

Se trata de pasar el rato haciendo algo que te gusta.

Saludos.