Go to Page... |
Thread Tools | Display Modes |
07-02-2012, 12:18 PM | #1 |
Modding Flash in The Secret World
This post contains information regarding changing the Flash GUI of "The Secret World" (TSW).
Sections Last edited by Cairenn : 07-02-2012 at 12:57 PM. |
|
07-02-2012, 12:19 PM | #2 |
FILE LOCATIONS
Client folder (default for Windows 7): C:\Program Files (x86)\Funcom\The Secret WorldDefault Flash GUI files <Client Folder>\Data\Gui\Default\FlashFolder for customized Flash GUI files <Client Folder>\Data\Gui\Customized\FlashSource code for Flash GUI <Client Folder>\Data\Gui\Customized\Flash\Sources Last edited by Cairenn : 07-02-2012 at 12:42 PM. |
|
07-02-2012, 12:20 PM | #3 |
INTRODUCTION
The original TSW Flash GUI is located inside your game client installation folder. Typically, in Windows 7, it would be:
Those files will be loaded in case no customized UI is found. To override the original files with your own version, you will need to publish your own SWF files and place them in:
For example, to override Crafting UI, your file should be:
Sources Folder Inside the Sources folder you will find the following:
Last edited by Cairenn : 07-02-2012 at 01:13 PM. |
|
07-02-2012, 12:20 PM | #4 |
USEFUL SHORTCUTS/COMMANDS
Last edited by Cairenn : 07-02-2012 at 01:18 PM. |
|
07-02-2012, 12:21 PM | #5 |
HOW TO ADD A NEW UI:
Step 1 Create a Modules.xml file (or edit if one already exists) in the Customized folder. Step 2 Add your own module by adding the info below (if Modules.xml already exists, just add the Module section to the existing file): Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <Root> <Module name="Test01" movie = "Test01.swf" flags = "GMF_CLOSE_ON_ESCAPE" depth_layer = "Middle" sub_depth = "0" variable = "test01_module" criteria = "test01_module && (guimode & GUIMODEFLAGS_INPLAY)" /> </Root> Step 3 Register your module in the preferences
Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <Root> <Value name="test01_module" value="true"/> </Root>
Load and see you UI in the game client by copying your Test01.swf into the Customized/Flash folder. You can use the following commands to see your UI in game:
NOTE: Please note that you will need to embed the fonts you use into the flash file. Last edited by Cairenn : 07-02-2012 at 01:26 PM. |
|
07-02-2012, 12:22 PM | #6 |
ADDITIONAL INFO
depth_layer "depth_layer" values map to an enum in CPP code. Here is the mapping: Code:
enum ViewLayer_e { e_ViewLayerDebugBack, // "DebugBack" e_ViewLayerBack, // "Back" e_ViewLayerMiddle, // "Middle" e_ViewLayerTop, // "Top" e_ViewLayerOptions, // "Options" e_ViewLayerDialogs, // "Dialogs" e_ViewLayerTooltip, // "Tooltip" e_ViewLayerDragAndDrop, // "DragAndDrop" e_ViewLayerOnScreenMessage, // "OnScreenMessage" e_ViewLayerSplashScreen, // "SplashScreen" e_ViewLayerSplashScreenTop, // "SplashScreenTop" e_ViewLayerDebugTop // "DebugTop" }; Last edited by Cairenn : 07-02-2012 at 01:29 PM. |
|
07-02-2012, 12:22 PM | #7 |
sub_depth
"sub_depth" sorts the UIs within a depth_layer. If you have all UIs in a layer to have a sub_depth of 0, then the framework will sort by the last clicked. Last edited by Cairenn : 07-02-2012 at 01:29 PM. |
|
07-02-2012, 12:23 PM | #8 |
flags
Module flags define certain behaviours. See the list below. Code:
GMF_DONT_UNLOAD = 0x0020, // Loaded at first use and kept forever GMF_PRELOAD = 0x0040, // Loaded at client startup and it is kept forever GMF_CLOSE_ON_ESCAPE = 0x0080, // Closes when pressen ESC key Last edited by Cairenn : 07-02-2012 at 01:29 PM. |
|
07-02-2012, 12:23 PM | #9 |
criteria
Defines an expression that will determine when your UI can be opened. The start of your expression should always be the variable you defined. In our example: test01_module. Then you should usually only allow the UI to open while your character is in play. This prevents the UI from showing while on the loading screen or cinematics, etc. This is achieved by adding the section: Code:
&& (guimode & GUIMODEFLAGS_INPLAY) Last edited by Cairenn : 07-02-2012 at 01:30 PM. |
|
07-02-2012, 12:25 PM | #10 |
Scaleform CLIK
Funcom uses the Scaleform middleware in our GUI framework. Scaleform has their own set of basic components called CLIK. Please note that you will not be able to reuse/edit/improve Funcom's flash files that use CLIK components unless you own a license yourself. You may, however, build your own components (buttons, lists, etc) from scratch. Last edited by Cairenn : 07-02-2012 at 01:31 PM. |
|
07-02-2012, 12:25 PM | #11 |
Example File
You can find a very simple example UI made following this guide in the Customized folder. It is called Test01.swf Last edited by Cairenn : 07-02-2012 at 01:31 PM. |
|
SecretUI » Developer Discussions » Tutorials & Other Helpful Info » Modding Flash in The Secret World |
«
Previous Thread
|
Next Thread
»
|
Display Modes |
Linear Mode |
Switch to Hybrid Mode |
Switch to Threaded Mode |
|
|