This member has provided no bio about themself...

Report RSS ListObjects Commandlet

Posted by on

I just wrote some commandlet as part of the Revision Framework to dumb the contents of a package called RevisionListObjectsCommandlet.

G:\Development\Revision\System>rfcc listobjects FreeClinic
Package FreeClinic
Package   Brick
Texture     FC_Atrium_A
Texture     FC_AtriumWall
Texture     FC_Wall_05
Palette     Palette1
Palette     Palette3
Package   Concrete
Texture     FC_PlainCeiln
Texture     FC_Wall_01
Texture     FC_Wall_02
Texture     FC_Wall_03
Palette     Palette25
Palette     Palette29
Package   Metal
Texture     FC_Sign_01
Palette     Palette2
Package   Paper
Texture     FC_EyeTest
Texture     FC_poster_A
Texture     FC_Services
Palette     Palette11
Package   Textile
Texture     FC_BedTop_A
Palette     Palette41
Package   Tiles
Texture     FC_MainFloor
Palette     Palette39

In the right column the Object name is displayed while in the first column the Class of the Object is displayed. The indention is to display in which relation the Objects are, e.g. The Texture FC_Atrium_A has the outer object Brick (called group in this case), which in turn has the package FreeClinic as outer, which is the actual texture package. As a minor note: Groups are actually of class Package.

Things get even more interessting when looking at Packages with unreal scripts inside:

Class            RevisionRootWindow
Function           ApplyRootWindowSettings
FloatProperty        InhardcodedHeight
FloatProperty        InhardcodedWidth
FloatProperty        InhMargin0
FloatProperty        InhMargin1
IntProperty          InhMultiplier
FloatProperty        InvMargin0
FloatProperty        InvMargin1
IntProperty          InvMultiplier
ByteProperty         InwinHAlign
ByteProperty         InwinVAlign
FloatProperty        Inx
FloatProperty        Iny
BoolProperty       bMenuMainSinglePlayerOnly
Function           ClampMousePosition
Function           ConditionalBindMultiplayerKeys
StrProperty          Alias
IntProperty          i
StrProperty          keyBuySkills
StrProperty          keyKillDetail
StrProperty          KeyName
StrProperty          keyScores
StrProperty          keyTalk
StrProperty          keyTeamTalk
IntProperty        ForcedMaxScale
FloatProperty      HorizontalDivisor
Function           InitWindow
Function           ModifyNewChild
ObjectProperty       NewKidOnTheBlock
ObjectProperty       NewParent
Function           MutateClientScriptClass
ClassProperty        InClass
ClassProperty        ReturnValue
Function           MutateNewChild
ClassProperty        DesignatedClass
ObjectProperty       NewParent
Function           ResizeRoot
ObjectProperty       Canvas
IntProperty          hMult
IntProperty          vMult
TextBuffer         ScriptText
FloatProperty      VerticalDivisor

It also has commandline switches to change the output, e.g. Björn wants to list all Pawn Classes used inside a map which are displayed by PathName and not just their name, so he would run sth. like:

G:\Development\Revision\System>rfcc listobjects -cp -co 00_Training pawn
DeusEx.Doctor
DeusEx.JaimeReyes
DeusEx.JosephManderley
DeusEx.MedicalBot
DeusEx.MIB
DeusEx.RepairBot
DeusEx.ScientistFemale
DeusEx.ScientistMale
DeusEx.Secretary
DeusEx.UNATCOTroop
DeusEx.WaltonSimons
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: