siempre me pregunté como podria hacerse algo realmente aleatorio en programacion y no algo pseudo aleatorio y vamos, no esperaba el elemento radiactivo, me tomo por sorpresa xd
tecnicamente es imposible ya que la programacion esta diseñada para basarse en acciones logicas, cosa que la aleatoriedad representa todo lo contrario, lo cual nos insita a crear funciones/algoritmos logicos para imitar la aleatoriedad, siendo un algoritmo muy complejo a fin de cuentas
Yo no se nada de programacion, pero tus videos estan hechos de una forma que hace que cualquier persona pueda entender de que se quiere hablar, y eso no es facil... ademas de que son nuy interesantes. Te felicito.
Yo cuando jugaba Mario Party hacia trampa, guardando y luego cargando la partida para controlar el resultado del dado. Y gracias a eso me di cuenta de algo. En Mario party 2 y 3 los numeros son completamente aleatorios, pues siempre que guardo y cargo el resultado del dado es diferente. Pero en Mario Party 1 no importa cuanto guarde o carge el juego, siempre sale el mismo numero cuando tiro el dado, es decir, que los numeros que te salen estan todos ya elegidos con antelacion. Curioso cuanto menos.
Ningún juego es completamente aleatorio, porque las computadoras están diseñadas para ser predecibles. Lo más probable es que los programadores hayan notado lo mismo que tú notaste en MP1, e hicieron fórmulas mucho más complicadas con seeds que cambiaran con la perturbación mínima (Un sistema más complejo)
Hola. Me gustan mucho tus videos. Mi novia y yo somos matemáticos y estudiantes de posgrado en ciencias matemáticas. Durante nuestros estudios aprendimos programación en C++ y estudiamos bastes cosas que tu comentas a lo largo de tus videos, pero es muy interesante ver el uso que se le da en los videojuegos y las variaciones al código que se desprenden de cosas que generalmente nosotros como matemáticos no utilizamos, ya que las aplicaciones que le damos van en el sentido de crear calculadoras o ejecuciones de códigos de otra naturaleza. Por ejemplo, que puedas crear números aleatorios a partir de la posición de los personajes era algo que nunca habia visto. Me gusta que tus videos son de carácter divulgativo y permiten a las personas entender conceptos que pueden llegar a ser complicados. Saludos.
Yo soy la novia. Estudio maestría en ciencias matemáticas en la Universidad de Sonora, en México, para formarme en el área de probabilidad (quiero ser probabilista). Respecto a los otros comentarios en respuesta del mensaje de Arturo, me reservo el derecho a opinar. Ya dicen que cuando no tienes nada bueno que decir de alguien, mejor es no decir nada. Saludos.
Vaya, como se nota todo lo que ha crecido este canal... recuerdo recibir alguna notificación de un video y llegar lo suficientemente temprano como para ver la caja de comentarios vacía... Y ahora llegas y ya hay 15 comentarios. Haces un excelente trabajo, Guinxu. Sigue asi!
@@Guinxu Mi meta es convertirme en desarrollador algún día, y tu eres uno de mis "ejemplos a seguir" por así decirlo. Gracias a ti, por seguir haciendo videos en esta plataforma!
El usuario RetroGamesMechanic en uno de sus videos mostro una replica hecha en java de como la snes generaba numeros aleatorios. En el mostraba que los numeros aleatorios se generaban de tal manera que despues de x cantidad de numeros generados este vuelve a su valor inicial y siempre en los mismos intervalos. Gracias a eso jugadores de fire emblem pueden manipular estos datos para siempre hacer ataques criticos y terminar los juegos en muchisimo menos tiempo del que inviertirias en una partida sin conocer esos datos.
En Doom usaban un array de 100 números predeterminados por el desarrollador, que el programa iba ciclando cada vez que requería una llamada "aleatoria". De manera que si iniciabas el juego y disparabas una sola vez, la reacción de los NPC era exactamente la misma en todos los casos.
Excelente video Guinxu! Sólo para complementar un poco el tema, en caso de que a alguien le haya interesado: En la seguridad informática, es importante que los números sean realmente aleatorios, pues estos son usados en metodos como hasheo y salteo (Que nos ayudan a almacenar de manera privada y segura información sensible en bases de datos, como contraseñas). Si los números usados son pseudo-aleatorios, cualquier persona u organización con acceso a la fórmula podría manipularla para hacer lo que quisieran. Por eso, existen servicios especializados en la obtención de números aleatorios, como random.org, una página que genera números a partir del ruido atmosférico (El cual es impredecible), o Cloudflare, usando lamparas de lava (Pueden leer sobre esto en su blog, o en un video que hizo Tom Scott al respecto). A pesar de la gran eficacia de estos "proveedores de números", no tiene mucho sentido que un videojuego tenga que estar conectado a internet todo el rato para cada acción de azar, así que los pseudo-aleatorios son la mejor opción aquí.
@@SALITAS48 El registro e inicio de sesión en definitiva requieren de números aleatorios reales, porque trabajan con información sensible, así que esos *probablemente* sí que llaman a un servidor (Enfásis en probablemente, porque han ocurrido casos en los que hackers obtienen contraseñas e información desde las bases de datos de juegos online pequeños y sin la suficiente seguridad, demasiadas personas usan la misma contraseña para todo). Para cualquier otra cosa, se usan pseudoaleatorios, pues es mucho más barato hacer una operación matemática que llamar a un servidor externo.
Dios, ahora necesito que corras el pokemon en 2 emuladores diferentes y controlado con el mismo mando para comprobar lo que has contado 100% rial no feik XD
Acabo de leer esto y justo ahora lo estaba haciendo pero uno de los 2 emuladores en un momento dado ha ido más rápido que el otro y han pasado a mostrar pantallas diferentes (en una estaba la intro con el profe, y en la otra ya me estaba pidiendo el nombre). Miraré si puedo hacer un TAS y repetirlo muchas veces.
Yo siempre pensé que en "Terraria" cuando los mundos los creabas y ponían la pantalla de carga Pensaba que un montón de gente hacía el mundo mientras cargaba el mundo xD
Una pequeña corrección: en el minuto 2:50, el resultado de la operación 7×5+8 no es igual a 38, sino a 56. Aclaro que hago esta corrección no a modo de hater ni hacer quedar mal a nadie, soy seguidor de este canal desde hace mucho tiempo. Saludos.
Me encanta tu contendido, la manera que tienes de explicar consigue que cualquiera pueda comprender un concepto, por muy complicado que sea. ¿Nadie más quiere a Guinxu de profesor?
[4:30] En si casi tienes el concepto completo, solo hay que programar como extra que cada objeto tiene una posibilidad diferente de salir. Por ejemplo: Tiene más posibilidades de aparecer una concha azul a los 4 últimos y otra posibilidad de aparecer una cañón bala a los 2 últimos. En resumen: Hay que añadir a la ecuación la posición actual en la que uno se encuentra. Nota: El objeto se calcula una vez cojas el objeto con la [?] Al Nº1 de la posición, es imposible que le de un caparazón azul... Sin embargo puedes atravesar la [?] y mientras de da el objeto colocarte en la primera posición y darte el caparazón azul.
Aunque lo vea en 2019 este video es de gran ayuda y explica muy bien cada detalle del mundo de la informatica, y aunque tenga 15 es muy fascinante el desarrollo y las propiedades de cada programa que se da para realizar una accion, me gusto su video y incluso explica muy bien lo que da a entender el tema, siga asi ;)
Me he dado cuenta que en Mario Party 1, el número del dado es elegido desde que el dado aparece en pantalla, o sea que no importa cuanto tiempo pase, el número siempre va a ser el mismo. En cambio en los demás Mario Party es diferente, luego que sale el dado, el número que te salga del dado depende de cuanto te pongas a esperar.
Te sigo desde hace tiempo pero con otra cuenta, en la cual no comento (con esta si), y decirte que no me estoy formando como diseñador de videojuegos ni nada, pero encuentro tus vídeos sumamente interesantes para los amantes de estos. Muy curioso cómo los programadores se las ingenian para brindar la mejor experiencia. Nada más que darte mi apoyo! 😌👍
Cada vez que veo tus vídeos la programación de videojuegos se me hace cada vez más interesante!!! Me encantó como explicaste este tema,cada vez ando más interesado y eso me encanta
Muchas gracias Guinxu, esa es una duda que tenía desde chico, cuando ponía música de chico y me preguntaba cómo se lograba esa "aleatoriedad" y si me imaginaba que era alguna fórmula que su variable fuera el tiempo para que fuera distinta cada vez. Pero lo curioso es que muchas veces en alguna versión de itunes se generaba la misma lista aún estando "al azar", así que me imagino que la seed no dependía del tiempo. Ánimo, me gustó mucho el vídeo, te agradezco ;D
También supongo que, si fuera 100% aleatorio, cundiria el caos y no sería divertido jugar. Por ejemplo, que en Mario Kart, al que va primero o tercero, le salga la estrella o el cohete... ¡Mira tú que gracia! xD
cierto, me he dado cuenta que en Mario Kart siempre en los ultimos lugares aparecen objetos "aleatoriamente" de gran ayuda como los que mencionaste (la estrella, el cohete e incluso el caparazon azul), pero cuando el pj se encuentra en los primeros lugares es demasiado improbable (quiza hasta nulo) que te salgan unos de estos objetos
Excelente vídeo de verdad me encanta cómo explicas todo, es que sin lugar a dudas no hay cómo no entenderte, deberías ser profesor... Piensatelo en caso de que un día te canses de programar, aunque quien se cansaria de algo tan maravilloso...
12:14 ESE JUEGO ME ENCANTA, ME VICIABA MAZO, y oye, un buen clon que te ha quedao (ahora me has dao ganas de volver a jugarlo xD). Btw, super guay el video, no tenia ni idea de como iba la "aleatoriedad" en los videjuegos (aunque creo que se aplica a todo, hasta el modo aleatorio de spotify)
Ahora me he dado cuenta, si han jugado Empire Earth, podran ver que al momento ir al editor de mapas y originar un mapa aleatorio, estan catalogados por semillas, son muchos digitos y cada semilla/mapa son distintas segun el tipo de mapa, tamaño, etc, son demasiados, demasiada aleatoriedad
11:30 "Lo siento mucho y ya está." hahahah Estuvo bastante interesante para mí ver ambas perspectivas ya que me gustan los videojuegos y estudio informática.
Excelente video. Podrías en otro video explicar las inteligencias artificiales de los personajes de un videojuego? Sé que muchos utilizan algoritmos de redes neuronales. Pero existen juegos que con IA sencilla con acciones aleatorias.
De hecho, hay speedruns de pokemon que usan "RNG manipulation" para hacer que no les salgan pokemon en una ruta concreta o para que les salga un legendario de los que merodea libremente por el mapa. He visto como se ayudan de un aparato externo que les avisa en que frame presionar el botón. Es flipante hasta donde llegan para las runs.
Muchas gracias Sr.Guinxu, por enseñarnos tanto como a los programadores como a los que les interesa el tema, a mi me encanta tu canal gracias por enseñarnos tanto, saludos desde Venezuela :)
Justo me había surgido la incognita de cómo se generaban los numeros aleatorios utilizando un metodo en java, gracias, muy interesante el video, saludos!
Muy buen vídeo, muy instructivo, especialmente a odiadores de las matemáticas como yo, nos viene genial una explicación clara, amena y práctica de este tipo de conceptos. Gracias a ti he podido comprender como funciona el dichoso "seed" que en tantos juegos he visto ✅
hay otra manera extra, que es usar una secuencia aleatoria pregenerada (representa ruido) y la semilla define el valor del que se comienza. Es similar a lande la formula pero no hay formula, si no resultados ya generados y ordenados.
el video se entiende muy bien, de hecho, a parte de la radiación los humanos, la vida misma somos tan distintos que se podría decir que también es un factor aleatorio, otra cosa el juego ese de los coches al final, ¿Dónde lo sacaste? es que se ve muy interesante y no me avía topado con el aun, me gustaría jugarlo. saludos
Los de Mario kart es mas obvio porque si estas primero te tocan puras cáscaras de platano o objetos "malos" pero si estas casi último te dan los mejores como el caparazon azul, el cual sirve para atacar al primero, si fuera aleatorio al primero le podría dar un caparazon azul
Otra fuente de semillas que tiene un buen nivel de aleatoriedad es medir el ruido en la alimentación eléctrica. En sistemas embebidos se hace, es bastante seguro y gratis. Es famosa también la pared de lámparas de lava que usa cloudflare para generar números aleatorios. Más allá de meter entropia al usuario, es fundamental tener números aleatorios para garantizar la seguridad de un sistema.
En realidad en C++ (y creo que también en c) hay una función de la librería de time.h y stdlib.h que genera números aleatorios según los parámetros que uno le ponga Int Dato; srand(time(NULL)); Dato = rand + 1() % (100); En este caso los parámetros van de uno al 100, así eliges qué tipo de cosas aparecen en el juego según esos datos, y si eres un poco más ingenioso puedes llegar a manejar probabilidades usando condicionales etc etc
Los que jugamos mucho al fire emblem conocíamos algo similar a lo que explicas, dado a que la semilla en este tipo de este juegos es la hora y fecha, y manipulando la hora y fecha, se puede conseguir crítico en cada ataque, (aunque hacer las predicciones toma mucho tiempo
Me había leído al respecto; leí que otra opción era que esa semilla tenga cierta dependencia del usuario, como por ejemplo (Y aquí sería utilizar tanto la generación pseudoaleatoria más el comportamiento humano) con un número aleatorio generado por la computadora (Usando cualquier método convencional) elegir algún archivo del computador y leer los primeros 100 Bites de éste; así se está dependiendo de, primero, un número pseudo aleatorio que elige un archivo que solo esa persona podría tener en esa "ubicación" de la computadora. Así habría que tener dos computadoras exactamente iguales (Ni las imágenes son idénticas) y que se genere ese número pseudo aleatorio bajo las mismas condiciones).
No digas eso. Si a alguien no le gusta que le den. Hace unos meses que te sigo, no me interesa hacer juegos pero es muy interesante y por eso te veo. Saludos amigo, y perdona que primer comentario sea en un video del año 18 jajajajaj :)
Que buen video Guinxu! Estoy en primero de Ingeniería en Sistemas y siempre tuve la duda de como se hacían este tipo de cosas, pero no me enteraba bien. Ahora voy a intentar hacer algunos generadores de estos, a ver si me sale algo decente xD. Ah y por cierto, ese generador de Pokémon como lo conseguiste? Se que andan algunas roms desensambladas por ahí pero no encuentro un cagao cuando las busco.
Muchas gracias Guinxu. Así que cuando puse dos emuladores a la vez de PS2 para ver si podía jugar a un mismo juego un en inglés y el otro en español, para coger soltura con el idioma mientras jugaba, en efecto como dices la aleatoriedad me impedía o costaba manejar al personaje en ambas partidas. Te ánimo a que lo pruebes!! P.d ahora que estoy estudiando programación me viene de perlas lo que enseñas :)
EN Unity usando C# se puede crear aleatoriedad sin usar una Seed como tu dices, usando "Random.range", se asigna un mínimo y un máximo y el resultado siempre es un número diferente, si haces 100 veces la misma llamada y el rango es de 0 a 200 por ejemplo, las 100 veces te va a dar un número diferente. En un típico Space Shooter, los enemigos se spawnean en la parte superior de la pantalla entre el rango A y B del eje X y esos A y B son Float, eso es aleatoriedad, no Pseudoaleatoriedad y no necesitas usar una Seed.
Todos los lenguajes tienen sus librerías random que están construidas de forma parecida a la que he mencionado en el vídeo. Siguen siendo pseudo-aleatorias y usan una seed aunque no la veas. Si miras el manual de Unity verás que fija una seed con esta función: docs.unity3d.com/ScriptReference/Random.InitState.html
desde ahora en adelante vamos a jugar con trajes anti radiación
Por dios como no se me ocurrio antes
666 likes
200 de iQ
Si sans
También lo usas cuando comes bananas o sales al sol? porque también emiten radiación
siempre me pregunté como podria hacerse algo realmente aleatorio en programacion y no algo pseudo aleatorio y vamos, no esperaba el elemento radiactivo, me tomo por sorpresa xd
De hecho existen muchas formas, existen servicios que utilizan datos climaticos para generar numeros aleatorios.
tecnicamente es imposible ya que la programacion esta diseñada para basarse en acciones logicas, cosa que la aleatoriedad representa todo lo contrario, lo cual nos insita a crear funciones/algoritmos logicos para imitar la aleatoriedad, siendo un algoritmo muy complejo a fin de cuentas
@@juancarlosacunacanto8458 ¿Eso no sería semi aleatorio?
@@doncoria9505 Pero puedes basar la semilla en sucesos que son naturalmente aleatorios
@@miguelangelramafernandez5873 si, no lo puedo negar, pero eso solo deja en claro que un algoritmo no puede hacerlo por cuenta propia
La pantalla de carga de Schrödinger.
Mi pana que haces aqui,soy sub tuyo
@@mrsalami8352 ;)
XDDD
Wtf es raro encontrar a Mr P aqui 🤔
Jaja mal
Yo no se nada de programacion, pero tus videos estan hechos de una forma que hace que cualquier persona pueda entender de que se quiere hablar, y eso no es facil... ademas de que son nuy interesantes. Te felicito.
Yo cuando jugaba Mario Party hacia trampa, guardando y luego cargando la partida para controlar el resultado del dado. Y gracias a eso me di cuenta de algo.
En Mario party 2 y 3 los numeros son completamente aleatorios, pues siempre que guardo y cargo el resultado del dado es diferente.
Pero en Mario Party 1 no importa cuanto guarde o carge el juego, siempre sale el mismo numero cuando tiro el dado, es decir, que los numeros que te salen estan todos ya elegidos con antelacion.
Curioso cuanto menos.
Ningún juego es completamente aleatorio, porque las computadoras están diseñadas para ser predecibles. Lo más probable es que los programadores hayan notado lo mismo que tú notaste en MP1, e hicieron fórmulas mucho más complicadas con seeds que cambiaran con la perturbación mínima (Un sistema más complejo)
nooooooooo por qué comentas TODOS los vídeos que veo??
Piña kawaii tienes mis mismos gustos :3
Piña Kawai, nos parecemos tanto... Ahora vete. :3
Esta no es la piña real, la real tiene un punto a la derecha de ''kawaii''
Hola. Me gustan mucho tus videos. Mi novia y yo somos matemáticos y estudiantes de posgrado en ciencias matemáticas. Durante nuestros estudios aprendimos programación en C++ y estudiamos bastes cosas que tu comentas a lo largo de tus videos, pero es muy interesante ver el uso que se le da en los videojuegos y las variaciones al código que se desprenden de cosas que generalmente nosotros como matemáticos no utilizamos, ya que las aplicaciones que le damos van en el sentido de crear calculadoras o ejecuciones de códigos de otra naturaleza. Por ejemplo, que puedas crear números aleatorios a partir de la posición de los personajes era algo que nunca habia visto.
Me gusta que tus videos son de carácter divulgativo y permiten a las personas entender conceptos que pueden llegar a ser complicados.
Saludos.
No se rick parece falso
Yo soy la novia. Estudio maestría en ciencias matemáticas en la Universidad de Sonora, en México, para formarme en el área de probabilidad (quiero ser probabilista). Respecto a los otros comentarios en respuesta del mensaje de Arturo, me reservo el derecho a opinar. Ya dicen que cuando no tienes nada bueno que decir de alguien, mejor es no decir nada. Saludos.
@@choroiii-y ruclips.net/video/TBEIOcLNQpo/видео.html
@@choroiii-y Habia estado ocupada, por eso no te respondía. Saludos desde México :) .
Vaya, como se nota todo lo que ha crecido este canal... recuerdo recibir alguna notificación de un video y llegar lo suficientemente temprano como para ver la caja de comentarios vacía... Y ahora llegas y ya hay 15 comentarios.
Haces un excelente trabajo, Guinxu. Sigue asi!
Gracias por seguirme después de tanto tiempo :)
@@Guinxu
Mi meta es convertirme en desarrollador algún día, y tu eres uno de mis "ejemplos a seguir" por así decirlo. Gracias a ti, por seguir haciendo videos en esta plataforma!
@@ZaritaZg
Vaya, mi comentario es popular? entonces así se siente la fama...
huh...
@@mechacode8527 Felicitaciones ahora eres influencer xD
PD: alguien sabe si el juego que mostró al final esta publico? me gusto bastante el juego
hola guinxu
Cada like es un minuto mas de vida para guinxu.
Wwwwoooo
Gooool
Baby baby yeeeeeaaaa
Ooohhh
Yyoooo
El usuario RetroGamesMechanic en uno de sus videos mostro una replica hecha en java de como la snes generaba numeros aleatorios. En el mostraba que los numeros aleatorios se generaban de tal manera que despues de x cantidad de numeros generados este vuelve a su valor inicial y siempre en los mismos intervalos.
Gracias a eso jugadores de fire emblem pueden manipular estos datos para siempre hacer ataques criticos y terminar los juegos en muchisimo menos tiempo del que inviertirias en una partida sin conocer esos datos.
La aleatoriedad no está bien implementada en ese caso. Me refiero por supuesto a la fórmula.
En Doom usaban un array de 100 números predeterminados por el desarrollador, que el programa iba ciclando cada vez que requería una llamada "aleatoria". De manera que si iniciabas el juego y disparabas una sola vez, la reacción de los NPC era exactamente la misma en todos los casos.
@@gustavosantos106 jaja muy genio y todo pero se mando tremenda marranada
Excelente video Guinxu! Sólo para complementar un poco el tema, en caso de que a alguien le haya interesado:
En la seguridad informática, es importante que los números sean
realmente aleatorios, pues estos son usados en metodos como hasheo y salteo (Que nos ayudan a almacenar de manera privada y segura información sensible en bases de datos, como contraseñas). Si los números usados son pseudo-aleatorios, cualquier persona u organización con acceso a la fórmula podría manipularla para hacer lo que quisieran. Por eso, existen servicios especializados en la obtención de números aleatorios, como random.org, una página que genera números a partir del ruido atmosférico (El cual es impredecible), o Cloudflare, usando lamparas de lava (Pueden leer sobre esto en su blog, o en un video que hizo Tom Scott al respecto). A pesar de la gran eficacia de estos "proveedores de números", no tiene mucho sentido que un videojuego tenga que estar conectado a internet todo el rato para cada acción de azar, así que los pseudo-aleatorios son la mejor opción aquí.
K ?🤔
Gran explicación, y gracias por la información
eso es basicamente lo que hizo Alan Touring
¿y si es un juego completamente online?
@@SALITAS48 El registro e inicio de sesión en definitiva requieren de números aleatorios reales, porque trabajan con información sensible, así que esos *probablemente* sí que llaman a un servidor (Enfásis en probablemente, porque han ocurrido casos en los que hackers obtienen contraseñas e información desde las bases de datos de juegos online pequeños y sin la suficiente seguridad, demasiadas personas usan la misma contraseña para todo). Para cualquier otra cosa, se usan pseudoaleatorios, pues es mucho más barato hacer una operación matemática que llamar a un servidor externo.
No dura mucho la fórmula"
Dura medio video:v
Es un bromomento
a muchas gracias
xD
Me encanta como algo tan complejo lo explicas tan sensillo, sigue asi guinxu
Dios, ahora necesito que corras el pokemon en 2 emuladores diferentes y controlado con el mismo mando para comprobar lo que has contado 100% rial no feik XD
Acabo de leer esto y justo ahora lo estaba haciendo pero uno de los 2 emuladores en un momento dado ha ido más rápido que el otro y han pasado a mostrar pantallas diferentes (en una estaba la intro con el profe, y en la otra ya me estaba pidiendo el nombre). Miraré si puedo hacer un TAS y repetirlo muchas veces.
@@Guinxu usando pokémon rojo fuego/verde hoja de ejemplo mientras yo lo jugaba (Pikachu :o)
Men Solo tu sabes como explicar tan facil que hasta me dan ganas de hacer un videojuego eres una persona muy buena para explicar
Te admiro
El mejor RUclipsr vuelve !!!!!!!!!!!!!! ♥️♥️♥️♥️♥️♥️♥️♥️
No se había ido
Qué gran vídeo, no sé cómo puedes decir "lo siento si os parece un rollo" es súper interesante
Yo siempre pensé que en "Terraria" cuando los mundos los creabas y ponían la pantalla de carga
Pensaba que un montón de gente hacía el mundo mientras cargaba el mundo xD
xd
Grande TerraGod
Ternurita xd
que pendejo xd
Me alegro de haber descubierto este gran canal 🙂 buen vídeo ❤️
Más vídeos más técnicos como este pls, a muchos que somos programadores nos interesa mucho
Guinxu matemático no existe, no puede hacerte daño
Guinxu matemático : 2:00
buena explicacion, siempre me preguntaba como se creaban mundos aleatorios en minecraft :)
No es por hacer spam, pero creo que vale mucho la pena ver el video de Jaime Altozano sobre Minecraft ruclips.net/video/9rLc_brC8DY/видео.html
@@candianatan Si es spam.
Una pequeña corrección: en el minuto 2:50, el resultado de la operación 7×5+8 no es igual a 38, sino a 56.
Aclaro que hago esta corrección no a modo de hater ni hacer quedar mal a nadie, soy seguidor de este canal desde hace mucho tiempo. Saludos.
5:38 me imagino a guinxu hablando solo mirando al techo como un enfatizador fluorescente sin la voz xd
xdxd
Me encanta tu contendido, la manera que tienes de explicar consigue que cualquiera pueda comprender un concepto, por muy complicado que sea.
¿Nadie más quiere a Guinxu de profesor?
Se que es un video serio explicando cosas, pero me reí en esta parte jajaja un montón de cosas! 5:01
Lo bueno de tener la campanita es que puedo ver este tipo de vídeos instantaneamente
Guinxu gracias a ti mí juego será terminado. Espero que sigas creciendo.
Mucho ánimo con el proyecto!
@@Guinxu gracias guinxu
[4:30]
En si casi tienes el concepto completo, solo hay que programar como extra que cada objeto tiene una posibilidad diferente de salir.
Por ejemplo: Tiene más posibilidades de aparecer una concha azul a los 4 últimos
y otra posibilidad de aparecer una cañón bala a los 2 últimos.
En resumen: Hay que añadir a la ecuación la posición actual en la que uno se encuentra.
Nota: El objeto se calcula una vez cojas el objeto con la [?]
Al Nº1 de la posición, es imposible que le de un caparazón azul...
Sin embargo puedes atravesar la [?] y mientras de da el objeto colocarte en la primera posición y darte el caparazón azul.
Que buena técnica!!
Yo me hice una formula para sacar porcentajes aleatorios, pero esto me lo apunto para otros menesteres :D
Tengo 12 años y estaba interesado por este tema hace tiempo.
Muchas gracias, lo he entendido todo.
Suerte con tu canal
Yo uso el comando "Random.Range"
TipoDeSalto = Random.Range (1, 3);
en este ejemplo una sola accion puede tener diferentes animaciones
Genial, ahora tengo que buscar el mismo numero de semilla que spiderman y ser spiderman en mi multiverso... Grande GINCHU!
Guinxu preguntando si el video estará bien y gustará a la gente y después te das cuenta de que tiene casi 100 likes y 0 dislikes... Grande Guinxu!!
Siempre quise saber como los juegos generaban cosas aleatorias y tambien como hacen inteligencia artificial. buen video. Feliz Navidad Guinxu.
¡Muy útil! Se agradece mucho este tipo de vídeos 🙂
Llevo unos 5 videos tuyos vistos y te puedo decir que te has ganado mi suscripción a pulso
No puede ser aleatorio si usas un numero por ejemplo, pi
Este número tiene decimales que no sabemos cuáles son todos
Aunque lo vea en 2019 este video es de gran ayuda y explica muy bien cada detalle del mundo de la informatica, y aunque tenga 15 es muy fascinante el desarrollo y las propiedades de cada programa que se da para realizar una accion, me gusto su video y incluso explica muy bien lo que da a entender el tema, siga asi ;)
Me he dado cuenta que en Mario Party 1, el número del dado es elegido desde que el dado aparece en pantalla, o sea que no importa cuanto tiempo pase, el número siempre va a ser el mismo. En cambio en los demás Mario Party es diferente, luego que sale el dado, el número que te salga del dado depende de cuanto te pongas a esperar.
He encontrado un canal cojonudo.
Te sigo desde hace tiempo pero con otra cuenta, en la cual no comento (con esta si), y decirte que no me estoy formando como diseñador de videojuegos ni nada, pero encuentro tus vídeos sumamente interesantes para los amantes de estos. Muy curioso cómo los programadores se las ingenian para brindar la mejor experiencia. Nada más que darte mi apoyo! 😌👍
Muy buen video
Cada vez que veo tus vídeos la programación de videojuegos se me hace cada vez más interesante!!!
Me encantó como explicaste este tema,cada vez ando más interesado y eso me encanta
¿Desde cuando WilliRex es programador? :v
Alan Adrian Castillo Coriche willirex del 2012 xd
Muchas gracias Guinxu, esa es una duda que tenía desde chico, cuando ponía música de chico y me preguntaba cómo se lograba esa "aleatoriedad" y si me imaginaba que era alguna fórmula que su variable fuera el tiempo para que fuera distinta cada vez.
Pero lo curioso es que muchas veces en alguna versión de itunes se generaba la misma lista aún estando "al azar", así que me imagino que la seed no dependía del tiempo.
Ánimo, me gustó mucho el vídeo, te agradezco ;D
3:35 "y al final te quedas en 69" .-. tengo que probar esto :v
Hay que programar con pareja 😊
No sé nada de desarrollo de videojuegos pero me gusta mucho cómo explicas.
Es el video con mas Likes y menos Dislikes que e visto en mi vida, y un Like en mio ;)
He esperado mucho tiempo por un vídeo así! Siempre quise saber cómo se generaba lo "random", gracias por el excelente video!
También supongo que, si fuera 100% aleatorio, cundiria el caos y no sería divertido jugar. Por ejemplo, que en Mario Kart, al que va primero o tercero, le salga la estrella o el cohete... ¡Mira tú que gracia! xD
cierto, me he dado cuenta que en Mario Kart siempre en los ultimos lugares aparecen objetos "aleatoriamente" de gran ayuda como los que mencionaste (la estrella, el cohete e incluso el caparazon azul), pero cuando el pj se encuentra en los primeros lugares es demasiado improbable (quiza hasta nulo) que te salgan unos de estos objetos
Que bien hombre, que facil se aprende contigo, tus videos son unicos, te mereces todo lo bueno del mundo hermano
Hola me gustan tus vídeos yo también soy programador
No soy programador pero me gusta mucho este canal
1.3k likes VS 6 dislikes
Excelente vídeo de verdad me encanta cómo explicas todo, es que sin lugar a dudas no hay cómo no entenderte, deberías ser profesor... Piensatelo en caso de que un día te canses de programar, aunque quien se cansaria de algo tan maravilloso...
Cómo funciona su corazon :'v?
12:14 ESE JUEGO ME ENCANTA, ME VICIABA MAZO, y oye, un buen clon que te ha quedao (ahora me has dao ganas de volver a jugarlo xD). Btw, super guay el video, no tenia ni idea de como iba la "aleatoriedad" en los videjuegos (aunque creo que se aplica a todo, hasta el modo aleatorio de spotify)
Vaya, es bastante interesante el tema, me gustó la explicación de las seed
Increible, ahora entiendo mejor como funcionan las cosas aleatorias en videojuegos, guinxu eres genial
Como siempre, genial video! Eres muy didáctico hombre! Da mucho gusto ver tus videos y aprender un poco más de estos temas
Ahora me he dado cuenta, si han jugado Empire Earth, podran ver que al momento ir al editor de mapas y originar un mapa aleatorio, estan catalogados por semillas, son muchos digitos y cada semilla/mapa son distintas segun el tipo de mapa, tamaño, etc, son demasiados, demasiada aleatoriedad
Es bastante el tiempo que paso desde que se grabo este video, pero aun asi no me aburre jajaja, Saludos Guinxu!!
Buen video y bien explicado, siempre me había preguntado cómo funciona la aleatoriedad en los videojuegos.
11:30 "Lo siento mucho y ya está." hahahah Estuvo bastante interesante para mí ver ambas perspectivas ya que me gustan los videojuegos y estudio informática.
Uno de mis vídeos favoritos, creo que un remake vendría bien
Teniendo conocimiento de esto sumando a la creatividad de cada persona es un universo de posibilidades, gran vídeo.
Excelente video. Podrías en otro video explicar las inteligencias artificiales de los personajes de un videojuego? Sé que muchos utilizan algoritmos de redes neuronales. Pero existen juegos que con IA sencilla con acciones aleatorias.
De hecho, hay speedruns de pokemon que usan "RNG manipulation" para hacer que no les salgan pokemon en una ruta concreta o para que les salga un legendario de los que merodea libremente por el mapa. He visto como se ayudan de un aparato externo que les avisa en que frame presionar el botón. Es flipante hasta donde llegan para las runs.
Muchas gracias Sr.Guinxu, por enseñarnos tanto como a los programadores como a los que les interesa el tema, a mi me encanta tu canal gracias por enseñarnos tanto, saludos desde Venezuela :)
tu canal es una preciosidad. es muy disfrutable.
Justo me había surgido la incognita de cómo se generaban los numeros aleatorios utilizando un metodo en java, gracias, muy interesante el video, saludos!
Wooow el contenido de este video fue muy bueno, ya que no sabía de como funcionaban las semillas y los números pseudo aleatorios.
Me encantan tus videos te conoci hace muy poco, y de verdad te agradezco mucho por brindarnos tu conocimiento en tu tiempo libre GRACIAS!
Maravilloso trabajo Guinxu me gustó mucho el vídeo, quién diría que toda esa fórmula está detrás de la aleatoriedad.
Muy buen vídeo, muy instructivo, especialmente a odiadores de las matemáticas como yo, nos viene genial una explicación clara, amena y práctica de este tipo de conceptos.
Gracias a ti he podido comprender como funciona el dichoso "seed" que en tantos juegos he visto ✅
Gran explicacion Guinxu, muchas gracias por tomarte la molestia de hacer toda esta investigacion para nosotros!
Se te agradece mucho! :')
Me ha encantado este vídeo, sobre todo porque explicas todo más a fondo
hay otra manera extra, que es usar una secuencia aleatoria pregenerada (representa ruido) y la semilla define el valor del que se comienza. Es similar a lande la formula pero no hay formula, si no resultados ya generados y ordenados.
Me encanta ver como son los juegos por dentro. Estoy lejos de ser programador pero me parece muy interesante
el video se entiende muy bien, de hecho, a parte de la radiación los humanos, la vida misma somos tan distintos que se podría decir que también es un factor aleatorio, otra cosa el juego ese de los coches al final, ¿Dónde lo sacaste? es que se ve muy interesante y no me avía topado con el aun, me gustaría jugarlo. saludos
Los de Mario kart es mas obvio porque si estas primero te tocan puras cáscaras de platano o objetos "malos" pero si estas casi último te dan los mejores como el caparazon azul, el cual sirve para atacar al primero, si fuera aleatorio al primero le podría dar un caparazon azul
Muchas gracias Guinxu! Es algo que siempre me ha dado curiosidad para usarlo en proyectos
Otra fuente de semillas que tiene un buen nivel de aleatoriedad es medir el ruido en la alimentación eléctrica. En sistemas embebidos se hace, es bastante seguro y gratis.
Es famosa también la pared de lámparas de lava que usa cloudflare para generar números aleatorios.
Más allá de meter entropia al usuario, es fundamental tener números aleatorios para garantizar la seguridad de un sistema.
En realidad en C++ (y creo que también en c) hay una función de la librería de time.h y stdlib.h que genera números aleatorios según los parámetros que uno le ponga
Int Dato;
srand(time(NULL));
Dato = rand + 1() % (100);
En este caso los parámetros van de uno al 100, así eliges qué tipo de cosas aparecen en el juego según esos datos, y si eres un poco más ingenioso puedes llegar a manejar probabilidades usando condicionales etc etc
Los que jugamos mucho al fire emblem conocíamos algo similar a lo que explicas, dado a que la semilla en este tipo de este juegos es la hora y fecha, y manipulando la hora y fecha, se puede conseguir crítico en cada ataque, (aunque hacer las predicciones toma mucho tiempo
Me había leído al respecto; leí que otra opción era que esa semilla tenga cierta dependencia del usuario, como por ejemplo (Y aquí sería utilizar tanto la generación pseudoaleatoria más el comportamiento humano) con un número aleatorio generado por la computadora (Usando cualquier método convencional) elegir algún archivo del computador y leer los primeros 100 Bites de éste; así se está dependiendo de, primero, un número pseudo aleatorio que elige un archivo que solo esa persona podría tener en esa "ubicación" de la computadora. Así habría que tener dos computadoras exactamente iguales (Ni las imágenes son idénticas) y que se genere ese número pseudo aleatorio bajo las mismas condiciones).
No digas eso. Si a alguien no le gusta que le den. Hace unos meses que te sigo, no me interesa hacer juegos pero es muy interesante y por eso te veo. Saludos amigo, y perdona que primer comentario sea en un video del año 18 jajajajaj :)
Felicidades Guinxu por los 150k!!!!!
Woow. Has pensado en escribir un libro sobre todo esto? Sería genial!
Me agrada que ayas suvido mas el nivel asi creo te explicas mejor y comprendemos mejor el funcionamiento interno
Que buen video Guinxu! Estoy en primero de Ingeniería en Sistemas y siempre tuve la duda de como se hacían este tipo de cosas, pero no me enteraba bien. Ahora voy a intentar hacer algunos generadores de estos, a ver si me sale algo decente xD. Ah y por cierto, ese generador de Pokémon como lo conseguiste? Se que andan algunas roms desensambladas por ahí pero no encuentro un cagao cuando las busco.
te amo guinxu, flor y nata de youtube
Gracias por explicar este complejo tema, ten un buen día
Buenissimo, justo HOY llevaba pensado en como funcionaba esto., de como se hacia la aleatoriedad.
Gracias por tomarte el tiempo para explicarnos el detrasd e cámaras de los videojuegso!
Muchas gracias Guinxu. Así que cuando puse dos emuladores a la vez de PS2 para ver si podía jugar a un mismo juego un en inglés y el otro en español, para coger soltura con el idioma mientras jugaba, en efecto como dices la aleatoriedad me impedía o costaba manejar al personaje en ambas partidas. Te ánimo a que lo pruebes!! P.d ahora que estoy estudiando programación me viene de perlas lo que enseñas :)
Siempre quise saber si en verdad eran aleatorios los resultados, buen vídeo :)
Que gran descubrimiento de canal, me encanta todas estas curiosidades en los videojuegos. Un saludo, sigue así.
EN Unity usando C# se puede crear aleatoriedad sin usar una Seed como tu dices, usando "Random.range", se asigna un mínimo y un máximo y el resultado siempre es un número diferente, si haces 100 veces la misma llamada y el rango es de 0 a 200 por ejemplo, las 100 veces te va a dar un número diferente. En un típico Space Shooter, los enemigos se spawnean en la parte superior de la pantalla entre el rango A y B del eje X y esos A y B son Float, eso es aleatoriedad, no Pseudoaleatoriedad y no necesitas usar una Seed.
Todos los lenguajes tienen sus librerías random que están construidas de forma parecida a la que he mencionado en el vídeo. Siguen siendo pseudo-aleatorias y usan una seed aunque no la veas. Si miras el manual de Unity verás que fija una seed con esta función: docs.unity3d.com/ScriptReference/Random.InitState.html
no entiendo nada de programacion pero me parece muy entretenido como explicas las cosas