## Game design ### OUTDADED: 4-6 guns, with 1 magazine per gun. Optics can be left out Can only be found in the world Always have a starting pistol available Inventory system + Looting system Boxes all around the map with guns, equipment, ammo. A mix between a battle royale and an extraction looter shooter: All players spawn like an extraction looter shooter, to get out they have to extract, but the map contains loot like a battle royale. Make sure guns are usable with iron sights. Multiplayer # TODOs: - [x] Detach player rotation from character model - [x] Weapon Sway - [ ] Check sensitivity settings, as in other pc with high dpi mouse weapon sways too quickly. - [x] Fixing leaning - [x] Snap back leaning too quick - [x] Issue with moving around quickly - [x] Bring Crouching back - [x] Inspect animation & state (procedural) - [x] Attachment editor system when in inspect mode - [x] remove Start and End optic from Slots, instead make one slot, and have code that checks for the starter slot and the end slot - [x] SightSlot not retaining position when dropped or switched. - [x] High Ready & Low Ready system with state - [x] High ready animation (procedural) - [x] Low ready animation (procedural) - [x] EventCollision system that takes into account more than one type of collider. - [x] Auto Low ready when gun collider hits object OR when player starts sprinting - [ ] (Not a priority) Collision with wall and attempting to Aim can look very twitchy, maybe add a cooldown of 0.1-0.4s on each change from low ready to high ready - [x] Gun colliding with bullet, making it lower on every shot fired. - [x] Optics - [x] All optics implementing a fn/trait that gives a specific gun offset to use the optic correctly - [x] Find some way to implement a shader for the optics (AFTER IMPLEMENTING NEW BULLET SYSTEM) - [x] Optic glass material - [x] Reticle render - [x] Reticle adjustment while on the field - [ ] Parallax effect on reticle - [ ] Weapon Clipping - [x] Make the player's collider bigger towards the front - [ ] Make the weapon's collider cover the firing point - [ ] If possible, create a new gun pose, like pushed back - [ ] Bobbing - [ ] Gun Bob on run - [ ] Gun Bob on walk - [ ] Reload animation (procedural) - [ ] Real world magazines - [x] Rewriting bullet physics to use raycasts & kinematic rigidbodies (logic controlled) - [x] Create a Controls struct that holds mappings to all the game keys and replace them in all the game's code - [x] Gun dropping drops on only one side of player - [x] Gun dropping does not apply impulse for some reason... - [x] Gun colliding with ground and going into low ready - [x] With introduction of floor collision groups now bullets go through floors - [x] Huge bug all attachments get despawned and spawned when gun shoots # Design - Detach player rotation from character model Don't parent the hands to the camera Make the hands move to the camera with a delay + lerp On player movement: WASD -> Translate player parent objetc, everything else follows Mouse movements -> Rotate camera (on all axises) + Player Character (Not parent object) on only the horizontal axis (Z I think) What moves first is the camera, then the entire body moves with a lerp