MelissaAutumn / MultiEd

QT-based open-source editor for OldUnreal based Unreal Engine 1 games
0 stars 0 forks source link

Document Editor Commands #4

Open MelissaAutumn opened 4 months ago

MelissaAutumn commented 4 months ago

The backend editor library exposes an Exec function which we pass string commands to.

These commands can look like TRANSACTION UNDO to undo an operation, or as complex as FString::Printf(TEXT("LIGHT APPLY SELECTED=%d VISIBLEONLY=%d"), bSelected, bVisibleOnly) to build lighting in the map.

I should map out these commands with their respective functionality so I don't have to keep hunting UnrealEd's main.cpp for the correct command.

This can be a simple markdown file that lives in docs/

SeriousBuggie commented 4 months ago

Not super fresh one, but one time I dig into such stuff: https://ut99.org/ut99.org/viewtopic.php?t=14060

EDCALLBACK
    SURFPROPS
BRUSHCLIP
    FLIP
    DELETE
    SPLIT
    DELMARKERS
EDIT
    CUT
    COPY
    PASTE
    PASTEPOS
PIVOT
    HERE
    SNAPPED
PATHS
    BUILD [LOWOPT|HIGHOPT]
    SHOW
    HIDE
    REMOVE
    UNDEFINE
    DEFINE
BSP
    REBUILD [LAME|GOOD|OPTIMAL] [BALANCE=50] [PORTALBIAS=70] [ZONES] [OPTGEOM]
LIGHT
    APPLY [SELECTED=1|0] [VISIBLEONLY=1|0]
SHOWINV
MAP
    GRID [X= Y= Z=]
    ROTGRID [YAW= PITCH= ROLL=]
    SELECT
        ADDS
        SUBTRACTS
        SEMISOLIDS
        NONSOLIDS
        FIRST
        LAST
    DELETE
    BRUSH
        GET
        PUT
    SENDTO
        FIRST
        LAST
    REBUILD [VISIBLEONLY=1|0]
    NEW
    LOAD FILE=
    SAVE FILE= [AUTOSAVE=]
    IMPORT FILE=
    IMPORTADD FILE=
    EXPORT FILE=
    SETBRUSH [CSGOPER=] [COLOR=] [GROUP=] [SETFLAGS=] [CLEARFLAGS=]
    SAVEPOLYS FILE= [MERGE=1|0]
SELECT
    NONE
DELETE
DUPLICATE
ACTOR
    ADD CLASS= [SNAP=] [TEXTURE=]
    MIRROR [X= Y= Z=]
    HIDE
        SELECTED
        UNSELECTED
        INVERT
    UNHIDE
    APPLYTRANSFORM
    CLIP
        Z
    REPLACE
        BRUSH
        CLASS= [KEEP=1|0]
    SELECT
        NONE
        ALL
        MATCHING
        INSIDE
        INVERT
        OFCLASS CLASS=
        OFSUBCLASS CLASS=
        DELETED
    DELETE
    DUPLICATE
    ALIGN
    SNAPTOGRID
    KEYFRAME NUM=
    RESET
        LOCATION
        PIVOT
        ROTATION
        SCALE
        POLYFLAGS
        ALL
POLY
    SELECT
        NONE
        ALL
        REVERSE
        MATCHING
            GROUPS
            ITEMS
            BRUSH
            TEXTURE
            POLYFLAGS
        ADJACENT
            ALL
            COPLANARS
            WALLS
            FLOORS
            CEILINGS
            SLANTS
        ZONE
        MEMORY
            SET
            RECALL
            UNION
            INTERSECT
            XOR
    TESSELLATE
    RESET
    DEFAULT TEXTURE=
    SETTEXTURE
    SET [TEXTURE=] [SETFLAGS=] [CLEARFLAGS=]
    TEXSCALE [RELATIVE] [UU=] [UV=] [VU=] [VV=]     
    TEXINFO
    UScale
    VScale
    VPan
    UPan
    TEXTURENAME
    TEXMULT
    TEXPAN [RESET] [U=] [V=]
    TEXALIGN
        DEFAULT [TEXELS=]
        FLOOR [TEXELS=]
        WALLDIR [TEXELS=]
        WALLX [TEXELS=]
        WALLY [TEXELS=]
        WALLPAN [TEXELS=]
        WALLCOLUMN [TEXELS=]
        ONETILE [TEXELS=]
        CLAMP [TEXELS=]
Texture
    Clear [NAME=]
    SCALE [DELTA=]
    CULL
    CLEARDETAIL
    SETDETAIL
    APPLYDETAIL [OVERRRIDE]
    REPLACEDETAIL
    BATCHAPPLY [DETAIL=] [PREFIX=] [OVERRIDE=]
    New NAME= CLASS= USIZE= VSIZE= PACKAGE= [GROUP=]
MODE [GRID=1|0] [ROTGRID=1|0] [SNAPVERTEX=1|0] [MAPEXT=] [AFFECTREGION=] [SELECTIONLOCK=] [TEXTURELOCK=] [SPEED=] [SNAPDIST=]
    CAMERAMOVE
    CAMERAZOOM
    BRUSHROTATE
    BRUSHSHEER
    BRUSHSCALE
    BRUSHSTRETCH
    BRUSHSNAP
    TEXTUREPAN
    TEXTUREROTATE
    TEXTURESCALE
    BRUSHCLIP
    FACEDRAG
    VERTEXEDIT
TRANSACTION
    UNDO
    REDO
OBJ
    EXPORT [PACKAGE=] TYPE= FILE= NAME=
    SavePackage Package=
CLASS
    LOAD FILE=*.u
    LOAD FILE=*.uc PACKAGE= NAME=
    NEW PARENT= PACKAGE= NAME=
    SPEW [ALL] [PACKAGE=]
SCRIPT
    MAKE [ALL] [BOOT]
CAMERA 
    {UPDATE|OPEN} [NAME=] [HWND=] [XR=] [YR=] [FLAGS=] [REN=] [MISC1=] [MISC2=] [NAMEFILTER=] [GROUP=] [TEXTURE=|PACKAGE=|MESH=] [X=] [Y=]
    HIDESTANDARD
    CLOSE
        ALL
        FREE
        NAME=
    ALIGN [NAME=]
    SELECT NAME=
BRUSH
    APPLYTRANSFORM
    SET
    RESET
    MIRROR
        X
        Y
        Z
    SCALE 
        RESET
        [X= Y= Z=] [SHEER=] [SHEERAXIS=XY|XZ|YX|YZ|ZX|ZY]
    ROTATETO [YAW= PITCH= ROLL=]
    ROTATEREL [YAW= PITCH= ROLL=]
    MOVETO [X= Y= Z=]
    MOVEREL [X= Y= Z=]
    ADD [FLAGS=]
    ADDMOVER [CLASS=] [MESH=] [MM=1|0]
    SUBTRACT
    FROM
        INTERSECTION
        DEINTERSECTION
    NEW
    LOAD FILE=
    SAVE FILE=
    EXPORT FILE=
    IMPORT FILE= [MERGE=1}0] [FLAGS=]
    MORE
LEVEL
    REDRAW
    LINKS
    VALIDATE
FIX
MAYBEAUTOSAVE
HOOK
    PLAYMAP
    APP SET [PROGRESSBAR=] [PROGRESSTEXT=] [PROGRESSDLG=]
    ACTORPROPERTIES
    PREFERENCES
    LEVELPROPERTIES
    TEXTUREPROPERTIES TEXTURE=
    CLASSPROPERTIES CLASS=
    MESHPROPERTIES MESH=
AUDIO PLAY [NAME=]
SETCURRENTCLASS [CLASS=]
MUSIC PLAY [NAME=]
SELECTNAME [NAME=]
JUMPTO
LSTAT
DUMPINT

MACRO
EXEC
NEW [STANDALONE}PUBLIC|PRIVATE] <name> [Package=] [File=] [ContextClass=] [Context=] [Name=]
LOAD FILE= [Package=]
FONT IMPORT
OBJ
    LOAD
    IMPORT TYPE=
MESHMAP
    SCALE MESHMAP= X= Y= Z=
    SETTEXTURE MESHMAP= TEXTURE= NUM= [TLOD=]
    SETPOLYFLAGS MESHMAP= NUM= [POLYFLAGS=]
ANIM
    IMPORT ANIM= ANIMFILE= [UNMIRROR=1|0] [ZEROTEX=1|0] [IMPORTSEQS=1|0] [UNMIRRORTEX=] [COMPRESS=]
    NOTIFY ANIM= SEQ= TIME= FUNCTION=
    DIGEST ANIM= [VERBOSE]
    SEQUENCE ANIM= SEQ= STARTFRAME= NUMFRAMES= [GROUP=] [RATE=30.0] [TRACKTIME=1.0] [ROOTTRACK] [ROOTONLY] [COMPRESS=] [STARTBONE=] [MAXKEYS=] [COMPSTYLE=]
AUDIO IMPORT [FILE=] [PACKAGE=] [GROUP=] [NAME=]
MUSIC IMPORT [FILE=] [PACKAGE=] [GROUP=] [NAME=]
MESH
    MODELIMPORT MESH= MODELFILE= [UNMIRROR=1|0] [ZEROTEX=1|0] [MLOD=1|0] [LODSTYLE=] [LODFRAME=] [LODNOTEX=1|0] [UNMIRRORTEX=]
    EXPORT MESH= FILENAME=
    DROPFRAMES MESH= STARTFRAME= NUMFRAMES=
    WEAPONATTACH MESH= BONE=
    WEAPONPOSITION MESH= YAW= PITCH= ROLL= [X= Y= Z=]
    LODPARAMS MESH= [MINVERTS=] [STRENGTH=] [MORPH=0.0-1.0] [HYSTERESIS=] [ZDISP=]
    ORIGIN MESH= [X= Y= Z=] [YAW= PITCH= ROLL=]
    BOUNDINGBOX MESH= [XMIN=] [YMIN=] [ZMIN=] [XMAX=] [YMAX=] [ZMAX=]
    BOUNDINGSPHERE MESH= [X= Y= Z= W=]
    SEQUENCE MESH= SEQ= STARTFRAME= NUMFRAMES= [RATE=] [GROUP=]
    NOTIFY MESH= SEQ= TIME= FUNCTION=
    GETPROPERTIES MESH=
    DEFAULTANIM MESH= ANIM=
    IMPORT MESH= ANIVFILE= DATAFILE= [REORDER=] [UNMIRROR=1|0] [ZEROTEX=1|0] [MLOD=1|0] [LODSTYLE=] [LODFRAME=] [LODNOTEX=1|0] [LODOLD=1|0] [UNMIRRORTEX=]
    FLIPFACES MESH=
Texture
    Import {Package=|File=} [Name=] [Mips=1|0] [DXT=] [BTC=] [P8] [GROUP=] [LODSet=] [TexFlags=] [FLAGS=] [DETAIL=] [MTEX=] [NEXT=] [ALPHATRICK=1|0]
    MergeCompressed {Package=|File=} GROUP=
    MergeCompressed {Package=|File=} [NAME=] [Mips=1|0]

+Some commands from Engine, part of them do nothing
BRIGHTNESS
FPS
CRACKURL
FLUSH
DEMOREC
DEMOPLAY
MEM
DUMPNATIVES
GET
SET
OBJ
    GARBAGE
    MARK
    MARKCHECK
    REFS CLASS= NAME=
    HASH
    CLASSES
    DEPENDENCIES PACKAGE= [EXCLUDE0=] ... [EXCLUDE15=]
    LIST [CLASS=] [PACKAGE=] [INSIDE=] [VERBOSE]
    VFHASH
    LINKERS
    GTIME
    GETMD5
    DUMPMD5
    VALIDATEMD5
ShowLog
TakeFocus
EditActor {Class=|Name=}
HideLog
Preferences
MPLAYER
HEAT
STAT [Net] [Fps] [Global] [Mesh] [Actor] [Filter] [Reject] [Span] [Zone] [Light] [Occlusion] [Game] [Soft] [Cache] [PolyV] [PolyC] [Illum] [Hardware] [EARI] [EARIDetail] [Anim]
TLOD
MLOD
MLMODE
MLFIX
REND [LEAK] [BONE] [BLEND|T]
DUMPCACHE