Skip to content

Releases: George-Ramsay/Military-Industrial-Complex

Communications Update

Choose a tag to compare

@George-Ramsay George-Ramsay released this 13 Sep 06:01

Whats New?

This update introduces voice commands to the game. You can now command units with complex sentences and the game will understand. This is still in its infancy but its designed to handle very complicated sentences.

This update utilizes:

  • GMS2 voice recording and saving as WAV files
  • OpenAI Whisper transcription
  • OpenAI GPT json responses
  • The AI already designed in the game

Why This Update?

This update has 3 purposes:

  1. I'm really interested in AI right now and I thought it would be a neat learning experience
  2. It's in line with the games intended purpose which is to create high level control of the battlefield. We want to not to reward the faster clickers but to push for strategic planners. Due to the new nature and tediousness of talking you have to plan ahead and actually communicate what you want.
  3. Its the first of its kind. I don't know of many games where you command your units RTS style by your voice. It's kinda exciting to experiment and see if it's actually engaging

v2.0.0-alpha Resource Management

Choose a tag to compare

@George-Ramsay George-Ramsay released this 20 May 01:52
bd27e3d

Resource Production Management

This update introduces the resources the player has and different buildings to get them. This will be under further development but this update gets the groundwork through, especially with base building.
#16

Resource Display

Theres a new Resource Display at the top left corner featuring a dynamic chart of resources, costs, and more. I'm quite proud of this one.

Art

I added a lot of reference art we will be using until I feel comfortable asking and paying artists. These tanks look sick and are just begging to have a game use them.

Context Menu Fixes

The context menu needs some love so I fixed some of its most pressing issues and made it more usable. I'm excited for its role in this game.

Renaming

My brother suggested a new name for the game which I really like: Military Industrial Complex. With this new name comes a new identity to shoot for: Lots of explosions and over the top military drills. I expect higher things for this game. But lets see what can be delivered first.

Full Changelog: v1.0.0-alpha...v2.0.0-alpha

UI v2 Update

Choose a tag to compare

@George-Ramsay George-Ramsay released this 22 Jan 06:44
  • Imported Monastary Framework
  • Remade the UI
  • Created in game UI
  • Fixed number groups
  • Cleaned up a lot of old code

Infantry Behavior Update

Choose a tag to compare

@George-Ramsay George-Ramsay released this 11 Jan 23:51

View the Behavior Map for a complete overview.

AI Brain

There will be 3 parts to the brain, as modelled after humans.

  1. Movement States
    • Handles whether its moving, being physically active...
  2. Action States
    • Handles whether its able to shoot, or heal, or use an ability
  3. Behavior States
    • Handles whether it should take aggressive actions, defensive actions...

Behavior Types

  1. [[Aggressive]]
    • Will move toward enemy units and actively engage.
    • Will break formation to pursue enemies.
    • High chance to use special abilities (grenades, suppressive fire, etc.)
  2. [[Defensive]]
    • Will hold position and try to maintain formation.
    • Will engage enemies only when they come into range.
    • Low chance to use special abilities unless outnumbered or overwhelmed.
  3. [[Passive]]
    • Will not engage enemies unless directly attacked.
    • Will maintain position and will not pursue enemies.
    • Will not use special abilities unless ordered to do so.
  4. [[Retreat]]
    • Will actively move away from approaching enemies but engage when at a safe distance.
    • Will try to lead enemies into traps or toward stronger allied units.
    • Moderate chance to use special abilities when retreating.

Combining Behaviors

Another idea would be to allow for combinations of these basic behaviors to create more nuanced unit actions. For instance:

  • Aggressive + Hold Fire
    • Will move toward enemy but will not engage until attacked or ordered to.
  • Defensive + Retreat
    • Will hold position until overwhelmed, then fall back to another defensive position.

Adaptive Behavior

An "Adaptive" behavior could dynamically switch between these basic states based on the context. For instance, if outnumbered, the unit might switch to "Retreat" mode, but when allied units arrive, it could switch to "Aggressive" or "Defensive" based on a set of rules or player preferences.

UI/UX Considerations

How you allow players to control these behaviors is another consideration. A radial menu, hotkeys, or a control panel could all be good interfaces for this. Tooltips or short video clips could explain each behavior so that the player understands what each will do.

State Machine

Movement States

  1. [[Idle]]: The default state when the unit is not performing any tasks.
  2. [[Move]]: The unit is moving to a specific location on the map.
  3. [[Haste]]: The unit is moving fast and cant shoot
  4. [[Engage]]: The unit is moving in attack distance to another unit.
  5. [[Protect]]: The unit will follow another unit and stand in front of attacking units.
  6. [[Follow]]: The unit will follow another unit around.
  7. [[Roam]]: The unit is moving to a random position nearby.
  8. [[Patrol]]: The unit will follow a set path defined by the user.
  9. [[Capture]]: The unit is capturing a building or a resource point.
  10. [[Retreat]]: Quickly leave an area due to incoming artillery, airstrikes, or other hazards.
  11. [[Scout]]: The unit is exploring unknown areas of the map.

Action States

  1. [[Idle]]: The default state when the unit is not performing any tasks.
  2. [[Shoot]]: The unit is shooting at a target.
  3. [[Heal]]: The unit is actively healing or being healed (if it has such capabilities).
  4. [[Sabotage]]: Special action like planting explosives or disrupting enemy structures.
  5. [[Resupply]]: The unit is reloading or acquiring more ammo, possibly going back to a supply point.
  6. [[Assemble]]: The unit is setting up something on the battlefield, like a mortar or a machine gun nest.
  7. [[Embark]]: Entering a transport vehicle or aircraft.
  8. [[Disembark]]: Exiting a transport vehicle or aircraft.
  9. [[Fortify]]: The unit digs in to gain defensive bonuses but becomes immobile.
  10. [[Communicate]]: Contacting other units or HQ for special orders or status updates. Could be a part of other activities but could also be its own state, especially for units with special communication equipment.
  11. [[PerformSkill]]: If the unit has special skills or abilities, this state manages the activation and cooldowns.

Behavior States

  1. [[Passive]]: The default state when the unit is not performing any tasks.
  2. [[Aggressive]]: The unit is actively attacking an enemy unit or structure.
  3. [[Defensive]]: The unit is in a defensive position, possibly behind cover, and prepared to counter any enemy actions.
  4. [[Dead]]: The unit has been eliminated and is awaiting removal from the game map.

Sub-Behavior States

  1. [[Hold_Fire]]: Unit will shoot only when shot at.
  2. [[Hold_Position]]: Unit will not move for any reason.
  3. [[Hold_Formation]]: Unit will not change formations.

Squad Behavior States

  1. [[Free_form]]: The squad is free to move adaptably.
  2. [[Spread_Out]]: The squad is in a free form state but is more spread out.
  3. [[Wedge]]: The squad is in the form of a wedge pointing to a destination or target.
  4. [[Line]]: The squad is in the form of a line perpendicular to the destination or target.
  5. [[Diamond]]: The squad is in the form of a diamond. Optionally while escorting a friendly.

Behavior Map