Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Opiniones sobre arquiectura C/S y editores de mapas.

Iniciado por Ying, 04 de Agosto de 2008, 01:11:33 PM

« anterior - próximo »

Ying

Hola a todos, soy nuevo por aquí asi que aprovecho para presentarme:
Soy Jaime, Ying para los amigos, y estudio en la politecnica de valencia, al tiempo que muevo un poco el mundillo de los videojuegos por mi zona.

Ahora a lo que iba, estamos diseñando un pequeño motorcillo de videojuego 3D  para el curso que viene y probablemente el otro, y queria saber que ideais teniais sobre los temas del título:

- El motor está pensado para ser multiplayer, con arquitectura Cliente/Servidor y usando UDP. Nunca he hecho nada parecido antes y queria saber que ideas, sugerencias o enlaces interesantes podriais tener sobre el tema, sobretodo sobre el servidor y optimizaciones en la transferencia de datos.

- A pesar de haber herramientas de terceros que son estupendos editores de mapas, estamos ilusionados con hacer el nuestro para el motor y querria saber que es lo que más se agradece en un editor de mapas y posibles implementaciones.

Aun estamos escribiendo diseño, así que cualquier idea en cualquiera de los dos temas es bienvenido. Puede que más adelante hable del motor en otro post aparte, así que por ahora solo quiero saber que opina esta comunidad de esos dos temas.

A ver que ideas teneis! Gracias!

Prompt

Cita de: "Ying"Soy Jaime, Ying para los amigos
Hola Jaime........... :P hehehee

Cita de: "Ying"
- El motor está pensado para ser multiplayer, con arquitectura Cliente/Servidor y usando UDP. Nunca he hecho nada parecido antes y queria saber que ideas, sugerencias o enlaces interesantes podriais tener sobre el tema, sobretodo sobre el servidor y optimizaciones en la transferencia de datos.

UDP para que tipo de juego? porque lo mismo es una tontería usar UDP. Si utilizas UDP o reimplementas reordenacion de paquetes y que te lleguen todos o implementas una predinccion con ajuste de la posición y demás del jugador para cuando lleguen los paquetes. Sin más datos poco te puedo decir.

Cita de: "Ying"
- A pesar de haber herramientas de terceros que son estupendos editores de mapas, estamos ilusionados con hacer el nuestro para el motor y querria saber que es lo que más se agradece en un editor de mapas y posibles implementaciones.

No lo hagas... usa cosas tipo photoshop y cosas así aunque tardes mucho más, ya que al ser el primer motor y juego, lo tirareis todo a la basura. Tomaoslo como algo tipo "learning". El desarrollo de una herramienta que haga que el desarrollo de juegos en vuestro motor / modificaciones puede tardar más que el desarrollo del mismo motor!

(que de veces desarrollador...)

He dicho!

Saludos.

fjfnaranjo

¿Qué otras cosas habéis hecho antes de este proyecto?
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Ying

A ver, por partes...

No es el primer motor de juego, auque el anterior que hicimos es en 2D y ese si que fue para aprender, por lo que es bastante patatero. El codigo y demás se puede encontrar aqui:

http://www.assembla.com/wiki/show/insania_caged

aunque no recuerdo si el svn era publico o habia que estar reguistrado, en todo caso, era un rpg clásico, en 2D, visto desde arriba, donde llevavas a tu grupo de personajes e ibas por ahi descubriendo la historia del juego y matando bichos. Lo tipico. Incluia editor de mapas q los guardaba a XML, pero mas como herramienta interna para no tener que editar las miles de lineas de los mapas a mano.

Aparte de ese projecto que es el unico que ha hecho el equipo juntos, pues depende de quien. Yo por ejemplo antes de eso hice un chapuza-juego con allegro que nunca llegue a terminar, pero si que tenia un editor de mapas, en el que descubri lo terrible que es la GUI de allegro si quieres customizarla -.-U. Y también trabajé en un pequeño motor de un amigo de EU llamado ZXgame engine, que aun sigue en proceso aunque yo ya no colaboro.

ESTE juego/motor pues está orientado a un hibrido de acción plataformas. Nada fuera de serie, pero  con un enfasis en el trabajo en equipo y combinaciones de habilidades. Dos equipos de 2 a 8 jugadores juegan en uno de los mapas disponibles y gana el que antes/mejor cumpla los objetivos del mapa. (Los modos tipicos, deathmatch, captura de bandera, ect...).

De lo que hay que hacer para este motor no hay mucho que me pille con los pantalones bajados, por asi decir,  excepto la arquitectura cliente-servidor que nunca he implementado, y aparte quiero hacer un buen editor de mapas esta ronda, ya que cuento con gente que hace mods, pero no tienen idea de programar, asi que proporcionarles una herramienta de editor de mapas me cunde mucho.

Despues de saquear gamedev por manuales de arqutecturas multiplayer y pasarme media campus party leyendolos, queria algunas opiniones de gente real q me dijera que habian implementado ellos, o que pensaban que era mejor y seguir investigando en esa dirección.

Bueno, espero a ver que me decís!

DarkFenix

Cita de: "Ying"Bueno, espero a ver que me decís!

  Pues yo te recomiendo que hagas investigación de campo.

  Coger Quake y machacar la red.

  Y luego, te vas a Sourceforge y te miras unos cuantos proyectos que estén más o menos avanzados... y machacar de nuevo la red.

  Montas las pruebas en red local, con un sniffer y metiendo tráfico para ver qué tal.

  Con eso te harás una idea de por dónde van los tiros.


  Se me olvidaba comentar.. XD

  Por lo que yo he visto por ahí la mayoría de juegos tienen una mezcla. Normalmente se usa TCP para evitar todo el engorro que comentaba Prompt en tareas de control y tal... y luego para tareas menores o no sensibles a la pérdida se usa UDP.

Prompt

Que bruto eres DarkFenix... un sniffer de paquetes y leer codigo de Quake, suena cruel.

Hay muy buenos papers sobre logica de juego a través de red. No tengo enlaces pero hay miles aplicado a cientos de cosas...

DarkFenix

Cita de: "Prompt"Hay muy buenos papers sobre logica de juego a través de red. No tengo enlaces pero hay miles aplicado a cientos de cosas...

  Sin dudas!

  Pero es peligroso y fácil caer en la espiral del manual, por eso recomendaba otro punto de vista complementario... y no es tan bestia, hombre... :)

Ying

Sigo vuestras contestaciones con interés, gracias a todos los que habeis contestado. Que más teneis para mi?

StraT

Wenas, yo sólo hablaré del editor de mapas.

Si de verdad os hace ilusión hacer uno, hacedlo, porque lo cierto es que no conozco ninguno que me convenza demasiado.

Cosas interesantes en un editor de mapas (aparte de la obviedad) es, por ejemplo, un sistema de colisiones. Tan simple como poder leer en el motor qué tiles son "walkables" (es que caminables no queda cool) y cuales no.

Otra cosa que podría ser interesante (aunque me falta madurarla) es poder marcar ciertas casillas con "eventos", esto es, algún tipo de "algo" que le indique al motor que en esa casilla hay un evento, cómo se activa, y en qué consiste.

En fin, espero que te sirva.

Un saludo
quot;Solo hay dos cosas infinitas, el universo y la estupidez humana, aunque de lo primero no estoy muy seguro\\\" Einstein


[EX3]

Cita de: "StraT"Otra cosa que podría ser interesante (aunque me falta madurarla) es poder marcar ciertas casillas con "eventos", esto es, algún tipo de "algo" que le indique al motor que en esa casilla hay un evento, cómo se activa, y en qué consiste.
A esto se le conoce como Triggers. Yo de programar esto tendria implementado o bien triggers especificos por codigo en el juego/motor o bien algo en plan scriptable que se pueda definir mediante un archivo XML o similar. Luego simplemente seria hacer que el editor te mostrara una lista de los triggers disponibles y opciones para indicar sus parametros tales como entidad que vas a activar o accion del juego a ejecutar. Esto lo mejor para comprenderlo, o al menos a mi en su dia me ayudo mucho, fue trastear con el editor de mapas del Half-Life.

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

tewe76

No se si me he perdido algo, pero si ellos dicen que "estamos diseñando un pequeño motorcillo de videojuego 3D ", ¿por qué estáis hablando de editores de mapa 2D? :?
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

Capiflash

Segun he entendido quieren hacer tanto el motor como las herramientas/editores , y les han dado una lluvia de consejos/ideas.

[EX3]

Cita de: "tewe76"No se si me he perdido algo, pero si ellos dicen que "estamos diseñando un pequeño motorcillo de videojuego 3D ", ¿por qué estáis hablando de editores de mapa 2D? :?
3D o 2D que mas da, la filosofia de un editor de niveles siempre es la misma: generar informacion del nivel ya sean tiles o mediante objetos geometricos, indicar informacion de zonas de utiles, ubicar entidades, triggers, etc... :P

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

tewe76

Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.