elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Foro Libre
| | |-+  Sobre proyectos que tuvimos en 2023 y probablemente aún tengamos.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Sobre proyectos que tuvimos en 2023 y probablemente aún tengamos.  (Leído 1,700 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.460


Hackentifiko!


Ver Perfil
Sobre proyectos que tuvimos en 2023 y probablemente aún tengamos.
« en: 1 Enero 2024, 13:33 pm »

Tema para que muestren cosas que han hecho en 2023 o que no han podido terminar, cuenten sus avances, sus obstáculos, etc. Se admiten sugerencias.

Luego de años dejé de discutir con los locos o tontos de cierto foro de "Filosofía" y empecé a dedicarme más a hacer mis cosas. Pensé que Reddit sería útil pero me insultaron bastante y me banearon sin explicarme por qué. Quora en cambio ha resultado bastante útil. Pensé que hallaría algún foro de videojuegos pero por A o por B no pude usar los que encontré. Hay páginas que debo probar aún...

Me dedicaba digamos randomicamente a mis proyectos, es decir, podía estar varios días con uno, sin avanzar en otros. El resultado era que al retomar otro no recordaba bien por qué hacía lo que hacía, digamos subproyectos. Así, empecé a hacer listas de cosas que me interesa hacer y seguirlas como si fuese una rutina. También anoto en qué me quedé, qué debo corregir o mejorar. Se pierde algo de tiempo escribiendo, pero ayuda a escribir mejor supongo, y por supuesto me ayuda a recordar más fácil lo relativo a mis proyectos. Me entretengo, cambiar de proyecto a cada rato es más divertido y menos cansador que estar "media vida" con alguno que puede ser interminable o casi.

Proyecto 1: Escribir un libro para gente como yo era.
La idea es que lo pueda entender CUALQUIERA, por ejemplo un mosquito, pero luego de muchas vueltas, teniendo en cuenta que esto:
https://www.pictocuentos.com/el-patito-feo/4
...se entiende bastante bien sin necesidad de que enseñen desde 0, y considerando que no sabía qué enseñar 1ero, decidí simplemente hacer una autobiografía. En la 1er versión escribo un año o varios, mi edad en él o ellos, una palabra que lo/s resuma o represente lo más relevante de él y una imagen que también. En próximas versiones pondría más hechos, relatados con más palabras, y más imágenes. Decidir la palabra más adecuada no me resulta siempre fácil, pero lo que me tranca más es encontrar las imágenes. Por ejemplo aún busco una de alguien llorando sintiéndose estúpido. Pensé en Shinji Ikari pero lo suyo es más amplio, en Gady de Rescue Rangers del episodio "The Case of the Cola Cult" pero como es mujer no pega mucho, me dijeron cierto episodio de Friends pero nada que ver... Las imágenes que generé con IA no me han gustado así que no uso eso. Básicamente voy por el año 2000, no llegué ni a la mitad de años. He aquí una parte:

...obviamente no se puede entender detalladamente qué ocurrió en esos años pero será ampliado y se agregará fondo y otras cosas a la imagen de lanzador.

2: Hacer programas que resuelvan dudas.
Esto lo intenté más o menos desde 2008 hasta 2019, y aunque muchas veces lo que intenté fue escribir sobre eso y entender cuales son los tipos de dudas, no tanto "hacer...", lo cierto es que no he logrado mucho. Eso y que mi amor platónico y los psiquiatras me trataran de loco me llevó a dejarlo. Debido en parte a que luego se puso de moda la IA decidí continuar, aunque lo mío es búsqueda mediante fuerza bruta y creo que backtracking, no hago redes neuronales ni cosas de moda. No avancé en cuanto a la complejidad de dudas a resolver, sólo a partir de programas que tenía mejoré los nombres de sus variables, las descripciones e intento que muestren grafos de las situaciones o estados a l@s que van llegado, cosa que antes me pareció que sería demasiado difícil, y lo sigue siendo para mí, pero parece que va bien, gracias a ayudas, aunque quedan cosas que hacer.
Lista incompleta de las variables de las dudas (hay palabras cortadas para que entre en 1 línea en el archivo donde las tengo):
Citar
- Mínima cantidad de Variables de la situación.
- Máxima cantidad de Variables de la situación.
- Posibles cantidades de Variables de la situación.
- Mínima complejidad de las Variables de la situación.
- Máxima complejidad de las Variables de la situación.
- Posibles cantidades de complejidades de Variables de la sit.
- Mínimo rango de valores de los Variables de la situación.
- Máximo rango de valores de los Variables de la situación.

- Mínima cantidad de Candidatos.
- Máxima cantidad de Candidatos.
- Posibles cantidades de Candidatos.
- Mínima complejidad de Candidatos.
- Máxima complejidad de Candidatos.
- Posibles cantidades de complejidades de Candidatos.
- Mínimo rango de valores de los Candidatos.
- Máximo rango de valores de los Candidatos.

- Modo en que varían los Candidatos.

- Mínima cantidad de modificaciones al aplicar al Candidato.
- Máxima cantidad de modificaciones al aplicar al Candidato.
- Posibles cantidades de modificaciones al aplicar el Candidato.
- Mínima complejidad de las modificaciones al aplicar al Cand.
- Máxima complejidad de las modificaciones al aplicar al Cand.
- Posibles cantidades de complejidades de mods al aplic al Cand.

- Mínima cantid de Aplicaciones requeridas para resolver la duda.

- Mínima cantidad de Condiciones que los Cands deben cumplir.
- Máxima cantidad de Condiciones que los Cands deben cumplir.
- Posibles cantidades de Condiciones que los Cands deben cumplir.
- Mínima complejidad de las Conds que los Cands deben cumplir.
- Máxima complejidad de las Conds que los Cands deben cumplir.
- Posibles cants de complejs d las Conds q los Cands deben cmplr.

Muestra de un grafo generado por un programa habiendo establecido que hay 5 acciones posibles (obviamente lo relativo a las flechas debe mejorarse, pero los nodos aparecen donde quiero, bien, cualquiera sea el nro de acciones posibles):

"Vencer al enemigo mediante acciones, el enemigo tiene 11 HP. Se recomienda la serie... 1 5 5" (significa que el método más rápido hallado es usar el ataque 1 que quita 1HP, y luego el 5 dos veces).
El código debería poder mejorarse especialmente en el aspecto de las referencias (ver SAquedebeActualizarse), pero intentaré que los nodos hijos, en vez de mostrarse cada vez que surge uno de un mismo padre, se muestren recién cuando hayan surgido todos, con lo cual por ahora no será necesario hacer referencias, creo.
Código
  1.   actions for fotograma 1
  2.      function InsertarNodo () {
  3.         Imagenes = Imagenes+1;
  4.         Nodos = Nodos+1;
  5.         Grafo.attachMovie("mNodo", "Nodo"+Nodos, Imagenes);
  6.         // Especificar la situación que representa:
  7.         set ("Grafo.Nodo"+Nodos+".EnHP", EnHP);
  8.         // Insertar flecha:
  9.         Imagenes = Imagenes+1;
  10.         Grafo.attachMovie("mFlecha", "Flecha"+Nodos, Imagenes);
  11.         // Especificar el sitio donde se insertan:
  12.         PosicionY = PadrePosicionY+33;
  13.         setProperty ("Grafo.Nodo"+Nodos, _y, PosicionY);
  14.         setProperty ("Grafo.Flecha"+Nodos, _x, PadrePosicionX);
  15.         setProperty ("Grafo.Flecha"+Nodos, _y, PadrePosicionY+6.5);
  16.         Hijos = Hijos+1;
  17.         if (Hijos == 1) {
  18.            PosicionX = PadrePosicionX;
  19.            setProperty ("Grafo.Nodo"+Nodos, _x, PosicionX);
  20.         } else {
  21.            Hijo = 0;
  22.            MinPosicionX = PadrePosicionX-16.5*(Hijos-1);
  23.            SAquedebeActualizarse = SAs-Hijos;
  24.            do {
  25.               Hijo = Hijo+1;
  26.               PosicionX = (Hijo-1)*33+MinPosicionX;
  27.               setProperty ("Grafo.Nodo"+(Nodos-Hijos+Hijo), _x, PosicionX);
  28.               // Actualizar datos de las posiciones guardadas:
  29.               SAquedebeActualizarse = SAquedebeActualizarse+1;
  30.               set ("SA"+SAquedebeActualizarse+"PosicionX", PosicionX);
  31.               // Rotación y tamaño de flecha.
  32.               DistanciaXPadreHijo = Math.abs(PosicionX);
  33.               setProperty ("Grafo.Flecha"+(Nodos-Hijos+Hijo), _height, Math.sqrt(Math.pow(DistanciaXPadreHijo, 2)+20*20));
  34.               Rotacion = 180/Math.PI*Math.atan(DistanciaXPadreHijo/20*-1);
  35.               if (PosicionX<0) {
  36.                  Rotacion = Rotacion*-1;
  37.               }
  38.               setProperty ("Grafo.Flecha"+(Nodos-Hijos+Hijo), _rotation, Rotacion);
  39.            } while (Hijo<Hijos);
  40.         }
  41.      }
  42.      Respuesta = "Vencer al enemigo mediante acciones, el enemigo tiene 11 HP. Se recomienda la serie... ";
  43.      // Situación inicial:
  44.      // HP inicial del enemigo:
  45.      EnBaseHP = 33;
  46.      trace ("EnBaseHP: "+EnBaseHP);
  47.      // Guardar situación y cómo se produjo:
  48.      // Parte inicial del nombre de los datos (en este caso S11):
  49.      SitID = "S"+EnBaseHP;
  50.      trace ("SitID: "+SitID);
  51.      // Acción realizada en la situación anterior (en este caso ninguna):
  52.      set (SitID+"ActionAnterior", "Ninguna");
  53.      trace (SitID+"ActionAnterior: "+eval(SitID+"ActionAnterior"));
  54.      // En este caso la variable es S11Action y su valor es "Ninguna".
  55.      // Posición X e Y del nodo que representa la situación desde la cual se originó la que será representada por otro nodo...
  56.      // ...pero en este caso es la posición del 1er nodo.
  57.      PadrePosicionX = 0;
  58.      trace ("PadrePosicionX: "+PadrePosicionX);
  59.      PadrePosicionY = 0;
  60.      trace ("PadrePosicionY: "+PadrePosicionY);
  61.      // Cantidad de imágenes insertadas:
  62.      Imagenes = 1;
  63.      trace ("Imágenes: "+Imagenes);
  64.      // Cantidad de nodos del grafo a mostrar:
  65.      Nodos = 1;
  66.      trace ("Nodos: "+Nodos);
  67.      // Insertar nodo inicial:
  68.      Grafo.attachMovie("mNodo", "Nodo1", 1);
  69.      // Especificar la situación que representa:
  70.      Grafo.Nodo1.EnHP = EnBaseHP;
  71.      // Hijos del nodo de la situación que se está analizando:
  72.      Hijos = 0;
  73.      trace ("Hijos: "+Hijos);
  74.      // Acción que será usada 1ero:
  75.      Action = 1;
  76.      trace ("Action: "+Action);
  77.      // Variables sobre situaciones anotadas:
  78.      // Total de situaciones anotadas:
  79.      SAs = 0;
  80.      trace ("Situaciones anotadas: "+SAs);
  81.      // Situación anotada que será investigada 1ero:
  82.      SiguienteSAaInvestigar = 0;
  83.      trace ("ID de la situación anotada a investigar cuando se comience a investigar las anotadas: "+SiguienteSAaInvestigar);
  84.   actions for fotograma 2
  85.      trace ("Reset de la situación, aplicación de la acción, la situación ahora es:");
  86.      EnHP = EnBaseHP-Action;
  87.      trace ("EnHP: "+EnHP);
  88.      // ¿Se logró el objetivo?
  89.      if (EnHP<=0) {
  90.         // Sí, iniciar muestra de serie de acciones que la causan:
  91.         Serie = Action;
  92.         trace ("Solución hallada, iniciando proceso para mostrar respuesta.");
  93.         InsertarNodo();
  94.         gotoAndPlay (5);
  95.      } else {
  96.         trace ("No se logró el objetivo.");
  97.         // ¿La situación producida está anotada?
  98.         if (eval("S"+EnHP+"ActionAnterior") == undefined) {
  99.            // No, anotarla y cómo se logró:
  100.            trace ("La situación producida no está anotada.");
  101.            SitID = "S"+EnHP;
  102.            set (SitID+"EnHPAnterior", EnBaseHP);
  103.            set (SitID+"ActionAnterior", Action);
  104.            trace ("Ahora está anotada: "+SitID);
  105.            trace ("Su antecedente fue ("+SitID+"EnHPAnterior): "+EnBaseHP);
  106.            trace ("y la acción fue ("+SitID+"ActionAnterior): "+Action);
  107.            // También se agrega como situación a investigar y se anota en qué consiste:
  108.            SAs = SAs+1;
  109.            SitID = "SA"+SAs;
  110.            set (SitID+"EnHP", EnHP);
  111.            trace ("Situaciones anotadas: "+SAs);
  112.            trace ("La última consiste en (EnHP): "+eval(SitID+"EnHP"));
  113.            // Se inserta el nodo que la representa y se guarda su posición:
  114.            InsertarNodo();
  115.            set (SitID+"PosicionX", PosicionX);
  116.            trace (SitID+"PosicionX: "+PosicionX);
  117.            set (SitID+"PosicionY", PosicionY);
  118.         } else {
  119.            trace ("La situación producida ya está anotada.");
  120.         }
  121.      }
  122.   actions for fotograma 3
  123.      // La situación está anotada. ¿Modificar acción es posible?
  124.      if (Action<25) {
  125.         // Sí, modificarla:
  126.         trace ("Es posible modificar acción.");
  127.         Action = Action+1;
  128.         trace ("Action fue modificada, es: "+Action);
  129.         gotoAndPlay (2);
  130.      } else {
  131.         trace ("No es posible modificar la acción.");
  132.         if (SiguienteSAaInvestigar<SAs) {
  133.            // Aún hay situaciones anotadas sin investigar, investigar una (probablemente lo ideal sería investigar la más diferente a las investigadas, pero me es difícil programar eso):
  134.            trace ("Aún hay situaciones anotadas sin investigar.");
  135.            SiguienteSAaInvestigar = SiguienteSAaInvestigar+1;
  136.            EnBaseHP = eval("SA"+SiguienteSAaInvestigar+"EnHP");
  137.            trace ("Se investigará la situación anotada nro: "+SiguienteSAaInvestigar);
  138.            trace ("Consiste en EnBaseHP: "+EnBaseHP);
  139.            // Guardar su posición para saber dónde poner a sus posibles hijos:
  140.            PadrePosicionX = eval("SA"+SiguienteSAaInvestigar+"PosicionX");
  141.            trace ("Nuevo PadrePosicionX: "+PadrePosicionX);
  142.            PadrePosicionY = eval("SA"+SiguienteSAaInvestigar+"PosicionY");
  143.            Hijos = 0;
  144.            // Reset de la acción a usar:
  145.            Action = 1;
  146.            trace ("Reset de la acción a usar, es: "+Action);
  147.            gotoAndPlay (2);
  148.         } else {
  149.            trace ("No hay situaciones anotadas sin investigar ni es posible lograr el objetivo.");
  150.            Respuesta = "No es posible lograr el objetivo.";
  151.            stop ();
  152.         }
  153.      }
  154.   actions for fotograma 5
  155.      // Obtener acción anterior:
  156.      ActionAnterior = eval("S"+EnBaseHP+"ActionAnterior");
  157.      trace ("La acción anterior fue: "+ActionAnterior);
  158.      // ¿Hubo?
  159.      if (ActionAnterior != "Ninguna") {
  160.         // Sí, agregarla en la lista:
  161.         Serie = ActionAnterior+" "+Serie;
  162.         trace ("Acción agregada en la serie.");
  163.         // Averiguar cual fue la situación anterior:
  164.         EnBaseHP = eval("S"+EnBaseHP+"EnHPAnterior");
  165.         trace ("Se realizó en la situación: S"+EnBaseHP);
  166.         // Repetir este frame.
  167.         gotoAndPlay (4);
  168.      } else {
  169.         // No hubo una acción anterior, mostrar la serie:
  170.         Respuesta = Respuesta+Serie;
  171.         stop ();
  172.      }

3: Graficar y mejorar programas que resuelvan dudas.
Ah, sí, son proyectos separados, pero arriba me confundí y los mezclé xP

4: Aprender Química.
Fui a un curso pero lo dejé porque era más hacer cálculos que hacer cosas, útiles, además casi nada entendía. Similarmente me ocurrió con un curso que empecé a ver en Youtube. Un curso que leía también lo dejé porque me pareció que definían las cosas como el traste. Otro resultó ser lo que debí suponer, lo que decía el título, un megaresúmen que no enseña mucho. Lo que hice más bien fueron preguntas por ahí, y algo aprendí. Uno de mis objetivos es hacer una lista de las posibles moléculas. Según una noticia, que no sé si es cierta, una niña jugando con un juego de Química representó una molécula desconocida, y hubo un tío que inventó un material ultraresistente al fuego pero no quiso decir cómo se hace, así que creo que aún es un secreto. A mí me interesan los RPGs, entender en qué se basarían los HPs y demás si fuesen realistas, así que la Química y Física me interesan también por eso. Por ahora mi "lista" es esta:

Las moléculas son las que tiene 2 colores de fondo. Lo demás es para usarlo "de base" en posteriores filas.
Átomos de gases nobles no incluyo porque me dijeron que es casi imposible que formen enlaces con algo.
En una versión anterior cuando había 3 posibles enlaces yo ponía 2 para el costado y uno hacia arriba por ejemplo, pero según vi eso no es así y tuve que corregirlo :/
Obviamente sería cool que esto lo haga un programa, pero no creo ser capaz de hacer uno así, al menos aún.

5: Aprender cuales son los posibles juegos de Flash 5 para 1 humano.
No es que me quiera limitar a eso, pero no le veo sentido a pensar en un juego que no pueda programarse ahí que es donde más sé, así que me limito a eso. En esto estoy muy liado y es una de las cosas en que más me cuesta avanzar, estoy haciendo una lista de posibles modificaciones a juegos, es mejor que esta:

...pero esa está más compacta, la otra tiene descripciones de lo que hace cada cosa; lo que debo hacer es pensar qué cosas que puse en el colaborador, y otras que no puse, se podrían poner en el desafiante (humano) y hacer que estén mejor ordenadas @_@

Tengo más, luego sigo.
« Última modificación: 1 Enero 2024, 14:01 pm por Tachikomaia » En línea

Tachikomaia


Desconectado Desconectado

Mensajes: 1.460


Hackentifiko!


Ver Perfil
Re: Sobre proyectos que tuvimos en 2023 y probablemente aún tengamos.
« Respuesta #1 en: 1 Enero 2024, 17:56 pm »

6: Hacer juegos.
La idea es empezar por juegos sencillos y parecía ir bien:
Juego 1: Se gana si tras cierto tiempo no se hizo algo.
2: Se gana por mover el mouse.
3: Se gana por hacer clic.
4: Se gana por hacer clac (presionar una tecla).
Luego los iría complicando. Pero ocurrieron 3 cosas.
1era: Quería justificar los juegos, poner un escenario. Pasé bastante tiempo pensando en eso, luego algo buscando cierta imagen, y finalmente decidí no justificarlos, no poner escenarios, porque quiero programar, no dibujar o animar.
2nda: El aparentemente más sencillo era el más complicado de esos, porque en el 2, 3 y 4 alcanza con chequear una cosa, pero en el 1 debe chequearse cada una y además hay tiempo. Mi error >___< Que un juego sea fácil de ganar o jugar que otro no implica que sea más fácil programarlo.
3ero: Al pensar en posibles modificaciones pensé en desclics, cliqueando durante cierto tiempo, etc, ya ni recuerdo bien qué pasó (tendría que revisar mis anotaciones) pero básicamente esto quedó en espera hasta que aclare algunas cosas que muestro más adelante. Los juegos estos que hice son tan simples que no vale la pena que los suba, pero Flash es un poco "terco" así que programarlos no fue tan fácil. Al comienzo por algún motivo se asume que el mouse se mueve aunque no sea el caso, así que debe ponerse un parche. También, al entrar al juego usando el teclado es casi seguro que no se suelte el Enter suficientemente rápido, por lo que el programa captará que se presionó una tecla, por lo que debe ponerse otro parche.

7: Hacer videojuego de tenis.
Lo intenté hace años de un modo no realista (la fuerza del personaje se usaba en los ejes XY y luego se agregaba de la nada fuerza al eje Z, por lo que se podía aplicar 2 veces la misma fuerza) hasta que cansado por el complejo y desordenado código me tomé un descanso, lo dejé porque luego me pareció muy complicado retomarlo. Este año lo hice pero parece que hubiera retrocedido en vez de avanzar :/ Sin el programa Eureqa ya no puedo averiguar rápido las fórmulas que necesite. Me estoy acercando a averiguar más sobre todo eso pero difícilmente sea pronto. Más de una persona me ayudó pero sea por el motivo que sea fue más un gasto de tiempo y energía que otra cosa, porque no me sirvieron las cosas que me dijeron, o no las supe usar, no sé. De momento lo que quiero es averiguar cómo las variables Velocidad Z y Z, en lo que sería la columna T0, determinan la variable Tarda.

Debo agregar más casos manualmente como hice ahí y luego no sé bien xP Pero faltan muchas cosas... Por lo menos, ideas más definidas y mejores (creo) sí he tenido.
Diagrama incompleto y no probado sobre averiguar velocidades de un tiro:


8: Aprender a construir cosas.
Tampoco avancé mucho en esto. Intenté empezar por lo que creí más fácil, los 1eros inventos, las herramientas de piedra, pero no son tan fáciles de hacer ni baratas. O quizá soy demasiado vago como para estar horas afilando una piedra con otras, pero no parece buena idea. Me inrteresó hacer un molino de piedra giratorio manual pero tampoco es tan sencillo. Al menos gracias a explicaciones y dibujos logré más o menos entender cómo funciona. Luego intenté otras cosas, un reloj solar (la sombra de una barra apunta a una hora, si se orienta al norte), un bebedero, casa para pájaros... Hice un semicirculo de papel usando un video xD Si bien nada de eso es muy estimulante de hacerlo, muchas veces el problema es la falta de materiales, esperaba poder encontrar o comprar un espumaplaz medio grueso pero no fue el caso, me faltaba alambre, las botellas estaban mojadas por la lluvia así que lo posponía... No conozco quien me pueda y quiera ayudar a hacer el bebedero, corté la botella pero quedó mal xP
Este quiero hacer:
https://www.youtube.com/watch?v=YbHTNfPPf0A
...aunque sólo usando botellas y sin usar herramientas, sólo cuchillo y cosas básicas. No sé cómo cortarla bien verticalmente, la botella tiene muchas subidas y bajadas.
El reloj de Sol lo haré en algún momento, ya tengo lo que quería.
La casa para pájaros la hice pero por algún motivo no entran xP Quizá no es la época, quizá está muy baja, no sé. Me falta agujerear el fondo de la botella pero no creo que sea fácil con clavos y martillazos.

9: Hacer videos de experimentos/competencias en videojuegos.
No pensé que sería tan complicado. Simplemente ver juegos, elegir uno en que fuera interesante hacer experimentos en él, y lo mismo sobre otro juego pero esta vez intentar establecer un record en algo (speedrun no me interesa mucho). Pero estoy pensando en cuales son las posibles competencias, o más bien qué es contable en juegos, lo cual es mucho incluso en juegos sencillos. Para eso intenté clasificar las posibilidades pero me entreveré una y otra vez. De momento tengo esto:

Parece que todo lo contable tiene que ver con el tiempo. Al inicio no me di cuenta. Pero puse clics y clacs como si no dependieran del tiempo. También, eso depende de "Nada", es decir, para que haya un clic tiene que haber un fin (sino es "cliqueando"), una "Nada". Pero para poder contar la "Nada" también debe tenerse en cuenta los posibles cambios. Así, no parece que los eventos puedan clasificarse como muestra el dibujo, pero estoy considerando lo más relevante de las mezclas y listo... Aunque la tarea no acabaría ahí, luego hay que pensar en qué es prohibible (jugar sin usar ciertos poderes por ejemplo), modificable mediante códigos, y otras cosas.

10: Percibir cuales son las posibles competencias en juegos.
Muy relacionado con lo anterior. Soy un poco entreverado, no sé cómo hacerlo mejor. Aquí la idea era profundizar para aplicarlo a juegos más complejos. Hace mucho que no analizo esto, pero una competencia puede ser por ejemplo "llega al final de modo que la experiencia de tu personaje tenga la mayor cantidad de 3s posibles" (3333333... cuanto sea, sería lo ideal), lo cual es obtener un número a partir de otro (cantidad de 3s en un número). Hacer una lista de todas las posibilidades es difícil, en parte porque algunas cosas no tienen sentido o son imposibles. Para facilitarme eso intento hacer un programa que, dado cierta "transformación" a hacérsele a un número, busque uno que dé ciertos resultados. Esta es la tabla que hace tiempo no miro:

Para hacer ese programa hice otros más sencillos y los mezclaré:
1: Genera 0, 1, -1, 2, -2... Es decir no genera decimales y cada nuevo número es muy parecido a los anteriores.
2: Genera 0, 1, 10, 2, 11, 100... Crecimiento un poco más rápido, pero no decimales ni negativos.
3: Genera 0, 1, 0.1, 2, 0.2, 0.01... Decimales, pero no negativos y crecimiento muy lento.
4: Dado un número mínimo y otro máximo, genera "distantes", que en teoría son los más diferentes de los anteriores, dentro del rango. En ese sentido me parece mejor que los anteriores programas, pero no produce negativos, ni decimales, y tiene un rango limitado.
Todos los códigos de eso creo que los puse en distintas consultas en este foro.

11: Percibir dibujos.
Usando un generador de dibujos, también ya mostré eso. Lo complicado es evitar que muestre dibujos repetidos, lo estoy pensando.

Y bueno, otras cosas que no viene mucho al caso, como comprender ciertos anime.
« Última modificación: 1 Enero 2024, 18:00 pm por Tachikomaia » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Nuevo caso Megaupload? Kim Dotcom pide que guardemos lo que tengamos en Mega
Noticias
wolfbcn 0 4,125 Último mensaje 21 Abril 2016, 14:51 pm
por wolfbcn
Necesitaremos tarifas de al menos 100GB cuando tengamos 5G
Noticias
wolfbcn 0 1,169 Último mensaje 8 Febrero 2018, 02:14 am
por wolfbcn
Cuatro curiosidades sobre el WiFi que probablemente no conocías
Noticias
wolfbcn 0 1,136 Último mensaje 26 Marzo 2018, 01:57 am
por wolfbcn
Duda sobre Raspberry Pi y proyectos de investigación distribuida
Unix/Unix-Like
crazykenny 4 8,515 Último mensaje 10 Octubre 2022, 09:31 am
por crazykenny
BurpSuite pro 2023.10.2.4
Software
ehn@ 1 3,463 Último mensaje 8 Noviembre 2023, 22:18 pm
por ehn@
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines