The real movement refactor (#9645)

* The real movement refactor

* ref events

* Jetpack cleanup

* a

* Vehicles partially working

* Balance tweaks

* Restore some shitcode

* AAAAAAAA

* Even more prediction

* ECS compstate trying to fix this

* yml

* vehicles kill me

* Don't lock keys

* a

* Fix problem

* Fix sounds

* shuttle inputs

* Shuttle controls

* space brakes

* Keybinds

* Fix merge

* Handle shutdown

* Fix keys

* Bump friction

* fix buckle offset

* Fix relay and friction

* Fix jetpack turning

* contexts amirite
This commit is contained in:
metalgearsloth
2022-07-16 13:51:52 +10:00
committed by GitHub
parent e0b7b48cae
commit b9e876ca92
109 changed files with 1752 additions and 1584 deletions

View File

@@ -1,4 +1,2 @@
action-name-honk = Honk
action-desc-honk = Honk!
action-name-siren = Toggle Siren
action-desc-siren = Wee-woo.

View File

@@ -70,6 +70,7 @@ ui-options-header-interaction-adv = Advanced Interaction
ui-options-header-ui = User Interface
ui-options-header-misc = Miscellaneous
ui-options-header-hotbar = Hotbar
ui-options-header-shuttle = Shuttle
ui-options-header-map-editor = Map Editor
ui-options-header-dev = Development
ui-options-header-general = General
@@ -157,6 +158,14 @@ ui-options-function-loadout7 = Hotbar Loadout 7
ui-options-function-loadout8 = Hotbar Loadout 8
ui-options-function-loadout9 = Hotbar Loadout 9
ui-options-function-shuttle-strafe-up = Strafe up
ui-options-function-shuttle-strafe-right = Strafe right
ui-options-function-shuttle-strafe-left = Strafe left
ui-options-function-shuttle-strafe-down = Strafe down
ui-options-function-shuttle-rotate-left = Rotate left
ui-options-function-shuttle-rotate-right = Rotate right
ui-options-function-shuttle-brake = Brake
## Network menu
ui-options-net-interp-ratio = Network Smoothing

View File

@@ -30,7 +30,10 @@
compatibility: Biological
- type: Input
context: "ghost"
- type: DummyInputMover
- type: InputMover
- type: MovementSpeedModifier
baseWalkSpeed: 0
baseSprintSpeed: 0
- type: GhostOnMove
- type: Brain

View File

@@ -58,7 +58,10 @@
# deadThreshold: 120
- type: Input
context: "ghost"
- type: DummyInputMover
- type: MovementSpeedModifier
baseWalkSpeed: 0
baseSprintSpeed: 0
- type: InputMover
- type: GhostOnMove
- type: entity

View File

@@ -58,7 +58,10 @@
# deadThreshold: 120
- type: Input
context: "ghost"
- type: DummyInputMover
- type: MovementSpeedModifier
baseWalkSpeed: 0
baseSprintSpeed: 0
- type: InputMover
- type: GhostOnMove
- type: entity

View File

@@ -51,7 +51,10 @@
# deadThreshold: 120
- type: Input
context: "ghost"
- type: DummyInputMover
- type: MovementSpeedModifier
baseWalkSpeed: 0
baseSprintSpeed: 0
- type: InputMover
- type: GhostOnMove
- type: entity

View File

@@ -59,7 +59,10 @@
# deadThreshold: 120
- type: Input
context: "ghost"
- type: DummyInputMover
- type: MovementSpeedModifier
baseWalkSpeed: 0
baseSprintSpeed: 0
- type: InputMover
- type: GhostOnMove
- type: entity

View File

@@ -137,8 +137,8 @@
types:
Poison: 2
Piercing: 1
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- UnarmedAttackHostiles
@@ -668,8 +668,8 @@
damage:
types:
Blunt: 10
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- UnarmedAttackHostiles
@@ -1149,8 +1149,8 @@
- type: MovementSpeedModifier
baseWalkSpeed : 7
baseSprintSpeed : 7
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- UnarmedAttackHostiles
@@ -1317,8 +1317,8 @@
- type: AiFactionTag
factions:
- Xeno
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -4,8 +4,8 @@
parent: SimpleSpaceMobBase
description: It looks friendly. Why don't you give it a hug?
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -4,8 +4,8 @@
parent: SimpleSpaceMobBase
description: It's a space carp.
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -6,8 +6,8 @@
description: A miserable pile of secrets.
suffix: AI
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
startingGear: PassengerGear
behaviorSets:

View File

@@ -4,8 +4,8 @@
id: MobCivilian
description: A miserable pile of secrets.
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Clothing
@@ -24,8 +24,8 @@
id: MobSpirate
description: Yarr!
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Clothing

View File

@@ -7,8 +7,8 @@
- type: Tag
tags:
- FootstepSound
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- UnarmedAttackHostiles

View File

@@ -82,8 +82,8 @@
types:
Piercing: 5
Slash: 5
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- UnarmedAttackHostiles

View File

@@ -8,8 +8,8 @@
- type: MovementSpeedModifier
baseWalkSpeed : 3.75
baseSprintSpeed : 3.75
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: Reactive
groups:
Flammable: [Touch]
@@ -123,8 +123,8 @@
- type: MovementSpeedModifier
baseWalkSpeed : 3.5
baseSprintSpeed : 3.5
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -87,8 +87,8 @@
acts: [ "Destruction" ]
- type: Input
context: "human"
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: entity
parent: MobSiliconBase

View File

@@ -12,8 +12,8 @@
Flammable: [Touch]
Extinguish: [Touch]
Acidic: [Touch, Ingestion]
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
# - Clothing
@@ -157,8 +157,8 @@
parent: SimpleSpaceMobBase
suffix: AI
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -4,8 +4,8 @@
parent: SimpleSpaceMobBase
description: It's a space tick, watch out for its nasty bite. Centcomm reports that 90 percent of cargo leg amputations are due to space tick bites.
components:
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -10,8 +10,8 @@
protection: 1
- type: CombatMode
canDisarm: true
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle
@@ -349,8 +349,8 @@
attributes:
proper: true
gender: male
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -16,7 +16,7 @@
- type: DoAfter
- type: CombatMode
- type: Actions
- type: PlayerInputMover
- type: InputMover
- type: MovementSpeedModifier
baseSprintSpeed: 12
baseWalkSpeed: 8

View File

@@ -15,8 +15,8 @@
enabled: false
autoPopulate: false
name: action-name-disarm
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: MovementSpeedModifier
baseWalkSpeed : 5
baseSprintSpeed : 5

View File

@@ -16,8 +16,8 @@
showExamineInfo: true
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: Alerts
- type: Actions
- type: Eye

View File

@@ -43,8 +43,8 @@
types:
Piercing: 8
Slash: 7
- type: PlayerInputMover
- type: PlayerMobMover
- type: InputMover
- type: MobMover
- type: UtilityAI
behaviorSets:
- Idle

View File

@@ -11,8 +11,8 @@
description: Listen to your owner. Don't tank damage. Punch people hard.
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: MovementSpeedModifier
baseWalkSpeed : 7
baseSprintSpeed : 7

View File

@@ -16,8 +16,8 @@
showExamineInfo: true
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: Respirator
damage:
types:

View File

@@ -20,7 +20,7 @@
mass: 5
mask:
- GhostImpassable
- type: PlayerInputMover
- type: InputMover
- type: Appearance
- type: Eye
drawFov: false

View File

@@ -16,8 +16,8 @@
showExamineInfo: true
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: Vocal
maleScream: /Audio/Voice/Reptilian/reptilian_scream.ogg
femaleScream: /Audio/Voice/Reptilian/reptilian_scream.ogg

View File

@@ -12,8 +12,8 @@
showExamineInfo: true
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: Vocal
maleScream: /Audio/Voice/Skeleton/skeleton_scream.ogg
femaleScream: /Audio/Voice/Skeleton/skeleton_scream.ogg

View File

@@ -14,8 +14,8 @@
showExamineInfo: true
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: Alerts
- type: Actions
- type: Eye

View File

@@ -15,8 +15,8 @@
showExamineInfo: true
- type: Input
context: "human"
- type: PlayerMobMover
- type: PlayerInputMover
- type: MobMover
- type: InputMover
- type: Vocal
maleScream: /Audio/Voice/Vox/shriek1.ogg
femaleScream: /Audio/Voice/Vox/shriek1.ogg

View File

@@ -23,6 +23,12 @@
name: Jetpack
description: It's a jetpack.
components:
- type: InputMover
toParent: true
- type: MovementSpeedModifier
weightlessAcceleration: 1
weightlessFriction: 0.3
weightlessModifier: 1.2
- type: Sprite
sprite: Objects/Tanks/Jetpacks/blue.rsi
state: icon

View File

@@ -1,5 +1,5 @@
- type: entity
id: VehicleBase
id: BaseVehicle
save: false
abstract: true
name: Vehicle
@@ -10,13 +10,18 @@
- type: AmbientSound
sound: "/Audio/Effects/Vehicle/vehicleengineidle.ogg"
range: 10
volume: -1
- type: PlayerInputMover
volume: -5
enabled: false
- type: InputMover
- type: InteractionOutline
- type: Vehicle
- type: MovementSpeedModifier
baseWalkSpeed : 7
baseSprintSpeed : 7
weightlessModifier: 0
acceleration: 2
friction: 2
frictionNoInput: 6
baseWalkSpeed: 4.5
baseSprintSpeed: 6
- type: Eye
- type: Tag
- type: Pullable
@@ -62,13 +67,16 @@
requireAll: true
tags:
- VehicleKey
insertSound: /Audio/Effects/Vehicle/vehiclestartup.ogg
insertSound:
path: /Audio/Effects/Vehicle/vehiclestartup.ogg
params:
volume: -3
- type: StaticPrice
price: 750 # Grand Theft Auto.
- type: entity
id: VehiclePussyWagon
parent: VehicleBase
parent: BaseVehicle
name: janicart
description: The janitor's trusty steed.
components:
@@ -125,7 +133,10 @@
tags:
- VehicleKey
- PussyWagonKeys
insertSound: /Audio/Effects/Vehicle/vehiclestartup.ogg
insertSound:
path: /Audio/Effects/Vehicle/vehiclestartup.ogg
params:
volume: -3
trashbag_slot:
name: Bag
whitelist:
@@ -155,7 +166,7 @@
- type: entity
id: VehicleSecway
parent: VehicleBase
parent: BaseVehicle
name: secway
description: The future of transportation. Popularized by St. James, the patron saint of security officers and internet forum moderators.
components:
@@ -165,13 +176,6 @@
southOverride: 0.1
hornSound:
path: /Audio/Effects/Vehicle/policesiren.ogg
hornAction:
name: action-name-siren
description: action-desc-siren
icon: Objects/Fun/bikehorn.rsi/icon.png
iconOn: Objects/Fun/bikehorn.rsi/icon.png
event: !type:ToggleActionEvent
hornIsSiren: true
- type: Sprite
sprite: Objects/Vehicles/secway.rsi
layers:
@@ -189,8 +193,10 @@
buckleOffset: "0.15, -0.05"
maxBuckleDistance: 1
- type: MovementSpeedModifier
baseWalkSpeed : 8
baseSprintSpeed : 8
acceleration: 1
friction: 1
baseWalkSpeed: 4.5
baseSprintSpeed: 6
- type: Armor
modifiers:
coeffecients:
@@ -206,10 +212,13 @@
tags:
- VehicleKey
- SecwayKeys
insertSound: /Audio/Effects/Vehicle/vehiclestartup.ogg
insertSound:
path: /Audio/Effects/Vehicle/vehiclestartup.ogg
params:
volume: -3
- type: entity
parent: VehicleBase
parent: BaseVehicle
id: VehicleATV
name: ATV
description: All-Tile Vehicle.
@@ -231,8 +240,10 @@
- type: RandomMetadata
descriptionSet: ATVDescriptions
- type: MovementSpeedModifier
baseWalkSpeed : 8
baseSprintSpeed : 8
acceleration: 1
friction: 1
baseWalkSpeed: 4.5
baseSprintSpeed: 7
- type: Strap
buckleOffset: "0.1, -0.05"
maxBuckleDistance: 1
@@ -258,11 +269,14 @@
tags:
- VehicleKey
- ATVKeys
insertSound: /Audio/Effects/Vehicle/vehiclestartup.ogg
insertSound:
path: /Audio/Effects/Vehicle/vehiclestartup.ogg
params:
volume: -3
- type: entity
id: VehicleSyndicateSegway
parent: VehicleBase
parent: BaseVehicle
name: syndicate segway
description: Be an enemy of the corporation, in style.
components:
@@ -272,13 +286,6 @@
southOverride: 0.1
hornSound:
path: /Audio/Effects/Vehicle/policesiren.ogg
hornAction:
name: action-name-siren
description: action-desc-siren
icon: Objects/Fun/bikehorn.rsi/icon.png
iconOn: Objects/Fun/bikehorn.rsi/icon.png
event: !type:ToggleActionEvent
hornIsSiren: true
- type: Sprite
sprite: Objects/Vehicles/syndicatesegway.rsi
layers:
@@ -293,9 +300,6 @@
- type: Strap
buckleOffset: "0.15, -0.05"
maxBuckleDistance: 1
- type: MovementSpeedModifier
baseWalkSpeed : 8
baseSprintSpeed : 8
- type: Armor
modifiers:
coeffecients:
@@ -311,4 +315,7 @@
tags:
- VehicleKey
- SyndicateSegwayKeys
insertSound: /Audio/Effects/Vehicle/vehiclestartup.ogg
insertSound:
path: /Audio/Effects/Vehicle/vehiclestartup.ogg
params:
volume: -3

View File

@@ -39,6 +39,29 @@ binds:
- function: Walk
type: State
key: Shift
# Shuttle
- function: ShuttleStrafeUp
type: State
key: W
- function: ShuttleStrafeLeft
type: State
key: Q
- function: ShuttleStrafeRight
type: State
key: E
- function: ShuttleStrafeDown
type: State
key: S
- function: ShuttleRotateLeft
type: State
key: A
- function: ShuttleRotateRight
type: State
key: D
- function: ShuttleBrake
type: State
key: Space
- function: CameraRotateLeft
type: State
key: NumpadNum7