#960 Joder y tanto, era muy ruin tener que tirar the control+rueda del raton para empequeñecer o agrandar la pagina entera xD
#960 Joder y tanto, era muy ruin tener que tirar the control+rueda del raton para empequeñecer o agrandar la pagina entera xD
EDIT: He subido a youtube un video de un nivel que hice en mi juego hace unos dias: http://www.youtube.com/watch?v=bZ1iF-xN2x8
Estoy pensando como implementar los niveles infinitos, y quiero pediros vuestra opinión. Van a estar divididos en chunks, pero no se si hacer que el juego se descarge todos los chunks de un nivel desde el server al cargar ese nivel y tenerlos en la memoria (no creo que sea muy buena idea, porque para niveles muy grandes tardaría mucho, y chuparia mucha memoria), o ir pidiendo los chunks al server segun te acercas a ellos (lo malo de esto es que tendría que estar mandando las modificaciones de los chunks al server cada vez que salen de la pantalla, porque sino al volver a ellos se volverian a descargar los viejos desde el server y nada habria cambiado). Vosotros que solucion pensais que es la mejor? Si se os ocurre alguna solución mejor decidla por favor
EDIT2: Fuck, en ved de editar el mensaje lo he duplicado xD
#895 Muy guapo el juego te picas que no veas...
Solo un apunte, no puedes poner el saltar tambien en el cursor de arriba? Es que estoy acostumbrao a saltar ahí y voy a rebentar esa tecla xD
#953 Es interesante el tema de hackear juegos. Dices: "sólo hay una forma de evitar hacks: no hacer el juego multiplayer"
Si la logica del juego está en el lado del servidor y cada accion es comprobada por este es posible evitar el hack no?
El problema viene cuando el juego es single player como el de GreyShock y el cliente tiene que enviar la puntuacion. Dificil solucion xD
#963 en su día programé hacks para el CS (que tiene servidor autoritativo.)
Los hacks en juegos MP tiran más a dar ventaja que a engañar al servidor. Por ejemplo: paredes transparentes. El wallhack no es más que ponerte una función entre el juego y el driver de la gráfica y activar el alpha blending para las paredes (y desactivarlo para el resto de gráficos.)
O el aimbot: buscas en el cliente la lista de "huesos" en el modelo de los enemigos y apuntas automáticamente al de la cabeza.
O hackear el sistema de sonido del juego y mostrar etiquetas en cada fuente de emisión sonido... O hackear el sistema de entidades del juego y mostrar un cuadrado con la posición exacta. Mil posibilidades.
Vale, era una exageración de que sólo un juego singleplayer es inhackeable... pero sin embargo, a bote pronto sólo se me ocurre un tipo de juego multiplayer inmune a los hacks: juegos por turnos (es decir, en los que no influya la rapidez de respuesta) y en los que toda la información que sabe el cliente EN CUALQUIER MOMENTO DE LA PARTIDA también sea conocida por el jugador (véase poker, mus, Frozen Synapse, etc.)
Incluso se podría argumentar que los bots o programas estadísticos en este tipo de juegos son hacks (véase los motores de ajedrez, que ganan fácilmente a humanos.)
#965 Es justamente eso lo que queria que me dijeras, que los juegos por turnos si son inhackeables
En cuanto a juegos shooters, no tenia ni idea de como planteaban la seguridad. Pero por lógica es imposible que calculen toda la fisica en el servidor por cada cliente, sería una carga insostenible de cpu para el server. De ahí que hayan infinitos chetos en el CS jeje.
Por suerte mi juego es por turnos y no deberia tener problemas si se hacen bien las cosas.
Ahora un poco de offtopic para ver si alguien sabe del tema. Estoy jugando mucho a un juego que se llama League of Legends, y tuve una discusion con un amigo que tambien es programador y jugamos juntos a este juego.
El tema es que este juego tiene 1.3 millones de jugadores jugando de forma simultanea (http://static.betazeta.com/www.niubie.com/up/2011/11/riotlolinfographicfull.jpg) una barbaridad. Y la discusion venia por que no sabiamos si todos esos usuarios los soporta la flota de servidores de Riot o los propios jugadores hacen de hosting de sus partidas. Las partidas son de 10 players cada una.
Yo votaba que es todo en servidores de ellos. Y mi amigo que nosotros de vez en cuando haciamos de host para los 10 players. Pero esto es muy arriesgado no? Si el host se cae o tiene el jdownloader a tope los otros tendrian mucha latencia... y se joderia la partida para todos.
Que opinais? Como pueden soportar tal cantidad de players al mismo tiempo?
#966 Uf.. esas cosas técnicas me sobrepasan. Pero por puro instinto diría que usar jugadores de host es una locura. A no ser que tú hayas notado que en según qué partidas va bien o mal, y te lleve a pensar eso, tiene más sentido alojar el tráfico en los servers de la empresa, digo yo...
#962 Lo que dices de ir generando y guardando mapa... a no ser que estés haciendo un Terraria y sea ENORME yo lo haría todo de golpe al terminar la partida o cuando el jugador le de a "guardar". Realmente no hay tanto que manejar en el estilo de niveles que te he visto crear. ImpactJS es bastante eficiente, yo he hehco algunas pruebas de rendimiento y es difícil ralentizarlo (también depende del navegador y el PC, claro), en Brutal Collage lo puse a prueba porque tiene mucha resolución y muchísimos elementos por pantalla, y raras veces da parones en momentos extremos. Así que para enviar tochacos al server no tendría que haber problema, y al server no creo que le cueste demasiado procesar un nivel entero si lo optimizas medio bien.
#895 Y yo pido WASD! xD
Chicos, he abierto twitter de Deconstructeam para unirme al consumo de información masivo y porque a mucha gente le es mucho más cómodo seguir novedades por ese canal. No soy muy amigo de twitter, pero hay que adaptarse. Además, he dejado un regalito dentro
#966 El LOL no tengo ni idea, pero me juego el cuello a q 1 jugador hace de host.
Warcraft (en consecuencia DOTA) funcionaba así. Starcraft lo mismo, incluso me juego el cuello a q Diablo 3 funciona todavía de esta manera. Guild Wars 2, que no es lo mismo, va a tener los servidores alojados por ellos, pero son servidores finitos e incluso permitirán que algunos clanes paguen por ellos para tener uno a su medida.
Sobre el tema de juegos por turnos, no estoy de acuerdo en ser "inhackeables". Entiendo que no tiene sentido algunas inyecciones como las q comentaba elkaoD en el ejemplo del CS, pero todo cliente es susceptible de ser modificable. Otra cosa es que el servidor sea capaz de detectar los hackeos, que ya es otro tema.
Os pongo un ejemplo, el poker online. Es imposible saber las cartas del contrario porque tu cliente no las recibe hasta el final de la mano. Pero eso no significa que no se puedan hacer cosas ilegales (bots que jueguen solos). Tú puedes inyectar en el cliente para hacer determinadas cosas, pero ya es cosa del cliente de póker poder detectarlas.
Por poneros un ejemplo, en Pokerstars son capaces hasta de tomar vuestro ratón y tomar el control de vuestro PC cuando detectan algo ilegal para q veais lo "troyano" que puede llegar a ser un cliente XDD
#963 En tema de servidores/clientes todavía soy un 0 a la izquierda, de hecho en la anterior de Coders on Fire salí con el rabo entre las piernas, pero creo que las partidas del LoL las hostea un usuario, seria una puta locura para Riot, piensa que empezó con LoL como compañía independiente con 4 duros.
#967 Me corono como tu primer seguidor, ese concept es rollo steampunk, ¡dime que si!
A propósito, quería practicar un poco de arte generativo y hoy he empezado un proyecto de videojuego musical para Android, cuando pueda y este mas completo subiré un vídeo, de momento en media hora he hecho esto http://i.imgur.com/vL0wN.png , parto desde 0, siempre me ha flipado el arte generativo pero nunca me he atrevido a meterme.
EDIT: Visto asi parece algo hecho por paint, pero todo lo que sale ahi es de generacion aleatoria y esta en cosntante movimiento, el circulo sin relleno y con borde de color rosa simboliza el dedo.
#969 Generar cosas al vuelo FTW, y si es músical, más molón todavía. Queremos cosas en movimiento YA! xD
Y sí, es Steampunk y el prota es un hacker con un super PC a vapor que funciona con vinilos xD
EDIT: Os dejo un enlace a un artículo que analiza en profundidad todas las físicas de los primeros Sonic. Es un tochaco, pero está muy bien desarrollado.
#968 No entiendo como pueden arriesgar a poner la partida en el pc de un cliente. En el starcraft o warcraft tiene mas sentido, es versus, y si el host se cae ha perdido la partida. Pero en una partida de 10 players si se cae el user host los otros siguen funcionando siempre. Como coño hacen eso entonces?
En cuanto al ejemplo de pstars yo eso no lo considero un hackeo, el hecho de construir un bot que juegue por tí. Para mi un hackeo es informarle al servidor de que tienes dos ases en vez de un 3 7.
#972 En el Warcraft/Starcraft si cae un jugador el host pasa automáticamente a otro, y aquí será lo mismo. Piensa que también son juegos iguales de competitivos y q en estos juegos también hay partidas de 8 jugadores, etc. Es más, las partidas de XBOX Live de Modern Warfare 1 eran hosteadas por los clientes y si se caía el servidor cambiaba el host al siguiente mejor.
Informarle a un servidor que tienes 2 ases es imposible porque el servidor al repartirte conoce tus cartas.
#973 Y en el momento de caerse uno los usuarios no experimentan un super lagazo mientras se hace todo el cambio?
Por eso estaba deacuerdo con elkaoD en que es imposible hackear un juego por turnos
Otra cosa es hacer bots que decidan por tí.
#974 Pues soltrac dice lo contrario. Yo ya no se que pensar... Sigo en mis trece de que es muy arriesgado dejar que hosteen los users.
Como ya ha dicho Soltrac eso se viene haciendo en todos los juegos que no tienen ingresos constantes, como Age2, Aom, Starcraft etc... y en dichos juegos tuvieron/tienen un gran componente competitivo y no se nota el cambio de host ( en Aoc si se notaba ya que paraba la game para esperar a ver si respondía el host antes de cambiar a otro usuario ).
Fijate si es arriesgado que hosteé un usuario que todos los grandes juegos que no tienen subscripciones lo usan, y algunos de ellos han sido o son perlas en el gaming.
Vamos, que existen procedimientos para que la experiencia de juego nunca se vea perjudicada con el cambio de Host, sino los mas grandes no habrían usado este modelo.
Por si queréis mas música para programar:
http://musicforprogramming.net/
aunque a mi solo me llegó a gustar el primer episodio... :s
el lol lo hospedan ellos en sus servers, que cuando se les peta, nos va mal a todos, y en todas las partidas.
El finde pasado empece un proyecto para platafomas moviles. De momento asente un poco las bases, si bien queda decir que el objetivo no es el que se muestra en esta prueba.
http://litosrocco.byethost7.com/Juegos2/BS.html
Un tipo ha estado hablando con los encargados de Steam en Valve y da estos consejos para los que quieren probar suerte a publicar ahi:
http://forums.create.msdn.com/forums/p/104799/619098.aspx#619098
#979 Queda claro que es una prueba, pero es jodido hasta decir basta xDD
¿El modelo de la nave te lo has currado tu o es un prefab?
Me he bajado el primer MP3 y está bastante bien, tranquilito, como a mi me gusta para cuando estoy haciendo cosillas.
Normalmente me pongo algún playlist de Post-Rock, pero esto está muy bien también.
#984 Como ya he dicho esto era una prueba con lo que puede que en este caso no lo necesites pero en otro momento si xD Yo no lo veo tan difícil de pasar xD
#986 Estás seguro de que funciona igual en todos los navegadores? Porque yo tengo que utilizar todo lo que tengo como ser humano al 150% para cruzar los dos primeros obstáculos xD
#985 Qué pereza ni que ocho cuartos xD Pero si ya tienes la lógica hecha, sólo tienes que bindear WAD!
ig.input.bind( ig.KEY.A , 'left');
ig.input.bind( ig.KEY.D , 'right');
ig.input.bind( ig.KEY.W , 'salto');
ig.input.bind( ig.KEY.CTRL , 'disparo');
Piensa en tu público man!
#989 ... 222 intentos, and i win FUCKING NOTHING xD Menudo estrés en el cuerpo.
#988 A mi con chrome y firefox me van igual xD
Si os digo que le baje la velocidad antes de subirlo os motivareis más xD
#988 ya lo tienes, creo que eres la unica persona del mundo que juega juegos de plataformas con la wasd
#989 el juego esta guapo, pero soy demasiado paco, le noto que gira rapidisimo, me la pasaba mas tiempo muerto contra el muro derecho, que los demas jajajaja, aun asi mola mucho
Estoy atascado, queria hacer un bicho volador, con el gravityFactor, pero no detecta colisiones, si le doy velocidad a la pos, al llegar al muro lo atraviesa aunque haya colision, por casualidad nadie sabe como va verdad? xD