Skip to content

[Feature] Parse .w3d for model specific lsp features #21

Description

@ViTeXFTW

Problem

When defining Draw modules it requires to know the model and bone names of the model which requires external tools. Additionally, there are no feedback if the model or bone is incorrect.

Proposal

Make the user point to the game folder and have ZeroSyntax extract the model and bone data from the models and store them for completions. And additionally to ensure that the bone written is also a bone which exist in the model specified.

Examples

Object Boss_VehicleSupplyTruck
  Draw = W3DTruckDraw ModuleTag_01
    DefaultConditionState
      Model = NVSSUPPLYTK
      ;        ^^^^^^^^^ should be cheked agains game assests
      HideSubObject = Cargo01
      ;                ^^^^^^ Should be checked against the model bones
    End

    ConditionState = REALLYDAMAGED
      Model = NVSSUPPLYTK_D
    End

    ConditionState = RUBBLE
      Model = NVSSUPPLYTK_D
    End

    ConditionState = CARRYING
      ShowSubObject = Cargo01
    End

    ConditionState = REALLYDAMAGED CARRYING
      Model = NVSSUPPLYTK_D
      ShowSubObject = Cargo01
    End

    ConditionState = RUBBLE CARRYING
      Model = NVSSUPPLYTK_D
      ShowSubObject = Cargo01
    End
    OkToChangeModelColor = YES

    TrackMarks = EXTireTrack.tga
     ;              ^^^^^^^^^^ Should be checked against the game assets.
    Dust = RocketBuggyDust
    DirtSpray = RocketBuggyDirtSpray
    PowerslideSpray = RocketBuggyDirtPowerSlide

    LeftFrontTireBone = Tire01
    ;                   ^^^^ Should be checked against the model bones
    RightFrontTireBone = Tire02
    LeftRearTireBone = Tire05
    RightRearTireBone = Tire06
    MidLeftRearTireBone = Tire03
    MidRightRearTireBone = Tire04
    TireRotationMultiplier = 0.2 ; this * speed = rotation.
    PowerslideRotationAddition = 2.5 ; This speed is added to the rotation speed when power-sliding.
  End
End

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureNew feature or requestfixed-in-next-versionA fix has been implemented and has been merged into staging branch

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions