metalgearsloth

@metalgearsloth

Joined on Jan 23, 2020

  • Guns Guns should be specialised per category, i.e. all SMGs should feel like SMGs even if their stats are different. Guns are going to be designed around range, with the exception being launchers (typically specialising at area damage) and lasers (specialising at going through glass). This means the MaxAngle for every gun in a class should be the same, with every other lever being able to be tweaked. The reason behind this is to make each class clear at what it does and avoid a gun overstepping its bounds and overshadowing another category. Rifles: Should be the default gun, being accurate enough to shoot a mob anywhere on screen (that is, its max accuracy is never wider than their hitbox). From here: Shotguns: Very short range, being only able to hit all of their pellets up to ~3 tiles away. The exception to this are slugs which should provide the accuracy of a rifle but not the damage, only being used as a last resort.
     Like  Bookmark
  • # General info **Disclaimers:** * The below is subject to change * This is all (currently) sloth's opinion, which can be wrong ¯\\\_(ツ)\_/¯ I've prototyped most of this to some degree. --- # tl;dr Going from bottom to top on implementation: **Operators:** These are what are run every single tick for an NPC that do the actual work. They should only deal with actual world state. **Primitive tasks:** These are wrappers around operators, so there can be many primitives that implement the same
     Like  Bookmark
  • # Pathfinding Pathfinding involves 2 areas: representing the graph and the algorithm to use. For game stability there's also the consideration of timeslicing. **Representing the graph** At a base level there needs to be a general representation that contains: * Collision * Access (for doors) * Other relevant items such as vents Probably easiest to make this tile-based and just listening for changes (i.e. collidable entities moving around) To further optimise you could generate an additional
     Like  Bookmark