Por qué Flash/ActionScript:
Intenté algunos otros entornos, IDES o como se llame y lenguajes pero no me gustaron o no me funcionaron tan rápido.
RPG maker nunca lo probé, en aquella época estaba enganchado con Flash y cada vez que intentaba hacer algo (principalmente dibujos o animaciones estilo novela visual pero como parte de RPGs) era con eso. Luego es que, pasaron muchas cosas, pero oí que algunos programas no te daban suficiente libertad, y a su vez quise aprender a usar esto, por curiosidad. Pero como digo no es que sea curioso en el sentido de probar cada alternativa, hay muchísimas que no probé.
Últimamente he estado deprimido o enojado por los ruidos y el humo, así que no he avanzado mucho en estas cuestiones.
Signos en línea:
Estoy practicando hacer IAs cada vez más complejas. Por un lado tengo una "tabla de IAs" que no sirve de mucho. Por otro lado tengo una IA muy básica:
Código
La idea es agregarle la posibilidad de empate, un aliado que siempre haga lo mismo, optimizar el código, en fin, tengo anotadas cosas, ahora no recuerdo.
// Situaciones a investigar: S1 = ""; S2 = "0"; S3 = "1"; // Investigar S3 y S2: SInvestigandose = 3; do { BaseS = eval("S"+SInvestigandose); trace(BaseS); Action = 0; BestAction = 0; // Usando BestAction: BestChanceOfWin = 0; // Considerando todas las acciones: Wins = 0; Loses = 0; do { S = BaseS+Action; if (S == "11") { Wins++; BestAction = Action; BestChanceOfWin = 100; } else { Loses++; } Action++; } while (Action<2); // Guardar datos descubiertos de las situaciones: set ("S"+BaseS+"BestAction", BestAction); // Usando BestAction: set ("S"+BaseS+"BestChanceOfWin", BestChanceOfWin); // Considerando todas las acciones: set ("S"+BaseS+"Wins", Wins); set ("S"+BaseS+"Loses", Loses); set ("S"+BaseS+"ChanceOfWin", Wins*100/(Wins+Loses)); // Investigar la situación anterior de la lista: SInvestigandose--; } while (SInvestigandose>1); // Investigar S1: BaseS = eval("S"+SInvestigandose); trace(BaseS); Action = 0; BestAction = ""; // Usando BestAction: BestChanceOfWin = 0; // Considerando todas las acciones: Wins = 0; Loses = 0; do { S = BaseS+Action; NewS_ = "S"+S; NextBestChanceOfWin = eval(NewS_+"BestChanceOfWin"); // La NewS da más chance de ganar, se sustituyen datos sobre qué hacer en esta y por qué: if (NextBestChanceOfWin>BestChanceOfWin) { BestAction = Action; BestChanceOfWin = NextBestChanceOfWin; } // Se agregan datos de la NewS: Wins = Wins+eval(NewS_+"Wins"); Loses = Loses+eval(NewS_+"Loses"); Action++; } while (Action<2); // Guardar datos descubiertos de la situación: set ("S"+BaseS+"BestAction", BestAction); // Usando BestAction: set ("S"+BaseS+"BestChanceOfWin", BestChanceOfWin); // Considerando todas las acciones: set ("S"+BaseS+"Wins", Wins); set ("S"+BaseS+"Loses", Loses); set ("S"+BaseS+"ChanceOfWin", Wins*100/(Wins+Loses));
Dibujante:
Estoy mejorando el código y agregando opciones. Es posible generar:
- Dibujos totalmente al azar (con los colores que se especifique, esto es siempre).
- Simétricos (como si tuvieran un espejo vertical).
- Cuadrados.
- Rectángulos.
Y sí, la idea es agregar más, pero es un proceso lento...
Pong:
Puse que el rival tarde en reaccionar más según la diferencia de puntos y estoy mejorando la velocidad de los tiros, por ejemplo para que nunca sean tan lentos. También tengo varias ideas a aplicar.
Black Jack:
Ya se muestran bien todos los signos, salvo cuando hay muchos, digamos 50 (o sea muchas cartas también), no sé el motivo, pero lo que intento hacer por ahora es que al pedir otra carta (puede ser más de una vez) se reacomoden bien en la pantalla.
Cartas simple:
Esto lo dejé porque iba a seguir agregando cartas pero seguiría siendo un juego de demasiado azar así que me pareció que no tenía mucho sentido, decidí enfocarme en los demás proyectos.
DK:
Ya se muestra la animación de saltando, intento que pueda quedar encima de plataformas si cae en una.
La película:
No avancé hasta algo significativo.
Algo nuevo (aunque ya lo había intentado) es que con una tabla intento percibir juegos. Pero spn sólo cantidades de variables, no incluye situaciones o diferencias específicas como que debe rescatar a alguien o huir de algo, etc.




