CPUDecisions
unknown
csharp
4 years ago
3.8 kB
14
Indexable
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public enum CPUStates {
// BUILDUP: pensado para ser estado inicial, hace todo baleanceado (economia, poder militar, y r&d), explorará
// buscando recursos y eliminando scouts del player.
BUILDUP,
// BROKE: recursos criticos
BROKE,
// THREATENED: el estado del jugador representa una amenaza para el estado actual de la CPU
THREATENED,
// ATTACKED: fue atacado
ATTACKED,
// ENDGAME: CPU esta por perder, podrá utilizar al monstruo grande como unidad normal (en terminos prácticos,
// esto no dará vuelta el juego, pero podria ser mas emocionante para el jugador, como el truco de vida baja
// en el doom del 2010+)
ENDGAME
}
public enum CPUEconomyStrats {
// IMPROVE_INCOME: si las cosas que quiere hacer la cpu superan su ingreso, las dejara en espera y se dedicará
// desarrollar tecnologias y a la caza de critters.
// (si encuentra scouts humanos, los perseguira mas lejos)
IMPROVE_INCOME,
// DONT_CARE: no hay problemas economicos
DONT_CARE,
// SAVE_INCOME: mantiene un pozo de recursos, sin llegar a 0
SAVE_INCOME,
// FULLWAR: invierte todo en poder militar
FULLWAR/*,
LOWER_INCOME*/
}
public enum CPUMilitaryStrats {
BALANCED_UNITS, // De todas un poco
FOCUS_AERIAL, // Mayormente hará unidades aereas
FOCUS_FASTPACING, // Mayormente hará unidades rapidas (perritos)
FOCUS_HEAVYDMG // Mayormente hará unidades que peguen fuerte (bola-gons)
}
public enum CPUActionGroupStrats {
SHOCK_AND_PAVOR, // Mitad del grupo ataca de frente, la otra por otra direccion en X tiempo.
BACKSTAB, // Grupo de unidades ataca por detras
DISTRACTION, // Grupo chico de unidades ataca un area lejana al area objetivo.
FAST_RESPONSE, // Grupo de unidades rapidas pequeño o media (BACKSTAB - PAVOR - GUARDIAN)
TURTLE_BIGMONSTER, // Escolta al monstruo gigante
MINERAL_GUARDIAN // Grupo chico campeando minerales.
}
public enum CPUActionGroupCompo {
BIG_GROUP, // Grupo grande de unidades (unas 20?)
MEDIUM_GROUP, // Grupo mediano de unidades (unas 10?)
SMALL_GROUP, // Grupo chico de unidades (unas 5?)
SCOUT_GROUP // Grupo de unidades rapidas (perros o pajaros), de 1 o mas unidades.
}
public enum CPUActionList {
// HUNT_CRITTERS: envia unidades a matar fauna pa conseguir recursos.
HUNT_CRITTERS = 5,
// EXPLORE_SURROUNDINGS: mandará a una unidad a hacer un recorrido a cierto radio del monstruo grande.
EXPLORE_SURROUNDINGS = 1,
// HUNT_EXPLORERS: cazara unidades solitarias, si hay mas de X, se retirará al monstruo grande.
HUNT_EXPLORERS = 8,
// HUNT_BATALLIONS: cazara grupos de unidades, no se retirará, independiente del numero.
HUNT_BATALLIONS = 20,
// SEARCH_HUMANBASE: explorará por la base humana
SEARCH_HUMANBASE = 15,
// HUNT_HUMANBASE: enviará batallones de minions a la base humana
HUNT_HUMANBASE = 20,
// ACCUMULATE_FORCES: acumula poder militar
ACCUMULATE_FORCES = 10,
// ACCUMULATE_RESOURCES: acumula recursos (crea menos unidades militares para mantener un monedero)
ACCUMULATE_RESOURCES = 10,
// SPLIT_ARMY: toma X unidades de un grupo de accion y las pasa a otro.
SPLIT_ARMY = 1,
// GET_TECH: invierte en tecnología, decision puede ser aleatoria o de estancia (agresivo-defensivo-economico) [primeramente aleatorio]
GET_TECH = 15,
// EVOLVE: podria considerarse tecnologia tambien.
// invierte en una evolucion
EVOLVE = 10,
// RETREAT: si el grupo de accion tiene poco hp se retirara
// en la medida que se acerque a la base humana su costo ira aumentando
RETREAT = 5
}
/// <summary>
/// Métodos básicos para determinar la cantidad de unidades o recursos utilizados para las acciones
/// </summary>
public static class CPUDecisions {
}Editor is loading...