|
|
 |
View previous topic :: View next topic |
 |
|
|
|
|
Author |
Message |
|
|
|
|
|
Cycrow Moderator (Script&Mod)


Joined: 15 Nov 2004 Posts: 19848 on topic Location: London

 |
Posted: Tue, 31. Jul 07, 14:30 Post subject: [BETA] Custom Gui V0.8 - Update: 23/08/2007 |
|
|
This is a fully customizable Direct3D Overlay for the game that is controlled via included scripts.
Introduction
Displays can either be a fixed message, or a completly custom GUI created by an external script
There are various examples include on how to create the external scripts as well as using them in the game and sending varibles to them
Downloading and Using
Download Site 1
Download Site 2
Download Site 3
To use it, simply extract the files to the X3 directory. Most of the files are found in the Overlay directory, this includes sprites, textures, sounds and external scripts.
The includes exe, X3_Gui.exe is what you need to run instead of the normal X3.exe. This allows hooking the Direct3D DLL to use the Custom Gui.
Screen Shot
http://homepage.ntlworld.com/cycrow/addons/gui/gui.jpg
Features
- Allows creation of Custom Dialog to overlay the game
- Includes Animated Sprites
- Fully Programmable Custom Dialogs
- Ability to get variables from the game to setup the GUI
- Includes Time-Based animation sequences for each object
- Can display text, textures and sprites
- Includes playing of sound files at set times, both wav and mp3
- Fully Customisable Gui Border
- Capture and control the mouse
- Can close on mouse click
- Move Over Event to change gui when highlighted
- Allows playing of external sound and voice files directly from scripts
- Can play full videos in the GUI Window
- Includes Cut Scene mode for playing of full screen videos
Sprites
Sprites are a custom file (stx) that allows for animated textures.
To create stx files, use the SpriteCreator program
Examples
Example1: Basic display, same as the screen shot, shows text and a texture
Example2: Shows no border, and use of animated sprites
Example3: Shows how to use a custom border, and varibles
Example4: Shows animation sequences
Example5: Shows the new animation sequences for sprites, using sounds and Close Events.
Example6: Menu System, shows use of mouse cursor and the MouseOver event
Example7: Menu System, shows functions, OnClick event, and script callbacks
_________________ My Scripts | MY X3TC Scripts | X3 Plugin Manager | Custom Gui
Last edited by Cycrow on Tue, 15. Jan 08, 16:36; edited 11 times in total |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
defiant1

Joined: 07 May 2006 Posts: 1137 on topic

|
Posted: Tue, 31. Jul 07, 14:46 Post subject: |
|
|
CY check PM...sent u one related to this
_________________ Teladi Next Minute Shipping®
 |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
Diskun

Joined: 15 Jul 2007 Posts: 33 on topic Location: Asturias, Spain

|
Posted: Tue, 31. Jul 07, 14:49 Post subject: |
|
|
Holy cow! This is an awesome innovation!
I'm interested in custom overlay GUI design too. Send me a PM if you want a tester and translator
Greets
_________________
 |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
defiant1

Joined: 07 May 2006 Posts: 1137 on topic

|
Posted: Tue, 31. Jul 07, 14:52 Post subject: |
|
|
same...and i will have another way of putting it through the gauntlet...hehehe
_________________ Teladi Next Minute Shipping®
 |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
dragonsblade71uk

Joined: 08 Jul 2006 Posts: 236 on topic Location: Bournemouth UK

|
Posted: Tue, 31. Jul 07, 15:35 Post subject: |
|
|
Man looks like someone might get EGOSOFT to hire him for the next version.
Definately some great work here!
GO go Cycrow!
|
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
sphr
Joined: 15 Aug 2006 Posts: 112 on topic Location: inbetween

|
Posted: Tue, 31. Jul 07, 15:51 Post subject: |
|
|
hmmm... did you do this by creating a directx surface and bind it as a child over the x3 game surface? any input or performance issues?
perhaps could open up a whole new realm of possibilities.... e.g. work around the limited ui currently in the game 
|
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
Cycrow Moderator (Script&Mod)


Joined: 15 Nov 2004 Posts: 19848 on topic Location: London

|
Posted: Tue, 31. Jul 07, 15:55 Post subject: |
|
|
i did it by hooking the directx dll and adding to the rendering cycle to render on top of the current display.
then it jsut uses ingame scripts to control whats displays on the gui
im currently working on making it fully customizable so you can design the display how you want.
it also hooks directinput so you can get key presses as well
_________________ My Scripts | MY X3TC Scripts | X3 Plugin Manager | Custom Gui |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
sphr
Joined: 15 Aug 2006 Posts: 112 on topic Location: inbetween

|
Posted: Tue, 31. Jul 07, 16:44 Post subject: |
|
|
| Cycrow wrote: |
it also hooks directinput so you can get key presses as well |
ahhh.. possibilities.... 
|
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
defiant1

Joined: 07 May 2006 Posts: 1137 on topic

|
Posted: Tue, 31. Jul 07, 17:06 Post subject: |
|
|
and lots of em....and now i see even more...hehe
_________________ Teladi Next Minute Shipping®
 |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
B-O'F
Joined: 21 Feb 2004 Posts: 719 on topic

|
Posted: Tue, 31. Jul 07, 17:27 Post subject: |
|
|
Hi Cycrow,
Sounds as though it could be useful....
The above is probably one of the greatest understatements ever......
Boron - Ol Fh'art
_________________ Public Service announcement
Growing old is not a disease - it is a delayed symptom of birth trauma. |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
ninjitsumonk

Joined: 01 Mar 2007 Posts: 1309 on topic Location: Yardley wood/warstock planetary defence base.

|
Posted: Tue, 31. Jul 07, 19:54 Post subject: |
|
|
I think I'm in love..... With the gui of course
WOW! Can't wait to see this in full! I'd gladly help test! Pm me or whatever with a link.
You rule cycrow!
|
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
Bunny

Joined: 01 Dec 2003 Posts: 1138 on topic

|
Posted: Tue, 31. Jul 07, 21:03 Post subject: |
|
|
It's official
Cycrow frightens me 
|
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
Cycrow Moderator (Script&Mod)


Joined: 15 Nov 2004 Posts: 19848 on topic Location: London

|
Posted: Tue, 31. Jul 07, 23:27 Post subject: |
|
|
ok, i have a first test for you all to play with
http://x3.ircwhore.co.uk/Gui.rar
Files Include
Direct3d-Hook.dll - Main dll file to control the gui
X3_Gui.exe - The launcher application, it hooks the dll and launches x3
scripts/plugin.plugman.displaymessage.xml - script to display a message, has heading and main text as well as the size of the gui to display.
scripts/plugin.plugman.displaycustom.xml - displays a custom gui, reads a text file with settings in
scripts/example.showgui1.xml - First example to show a custom gui
scripts/example.showgui2.xml - displays the 2nd custom gui
Overlay/border.png - The border gfx
Overlay/face.png - Texture file used for first example
Overlay/explosion.stx - Sprite file used for 2nd example
Overlay/customgui1.txt - scripts for first gui display
Overlay/customgui2.txt - scripts for second gui display
Overlay/spriteCreator.exe - Program to create stx files for animated textures
========================
The custom displays requires a script file that lays out the display. You can add text, textures or sprites into the display, you can use the whole screen or just part it, it will automatically center to the screen.
Sprites are a custom file (stx) that allows for animated textures.
To create stx files, use the SpriteCreator program
_________________ My Scripts | MY X3TC Scripts | X3 Plugin Manager | Custom Gui |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
eladan
Joined: 07 Jan 2006 Posts: 5274 on topic Location: Sunshine Coast, Australia

|
Posted: Wed, 1. Aug 07, 04:07 Post subject: |
|
|
This has to be your best innovation yet, Cycrow. <shakes head> You continue to astound me with what you manage to come up with.
| dragonsblade71uk wrote: |
| Man looks like someone might get EGOSOFT to hire him for the next version. |
I find I've got mixed feelings on this... Iit would be great for Cycrow, and would benefit the X games, and from that point of view I hope it happens. But there's a small selfish part of me that says that he wouldn't be given the creative freedom he has now if he's part of ES, and also, he wouldn't be able to be part of the modding community anymore, which would be a huge loss.
_________________ My X3:Reunion Scripts |
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
sphr
Joined: 15 Aug 2006 Posts: 112 on topic Location: inbetween

|
Posted: Wed, 1. Aug 07, 04:59 Post subject: |
|
|
@Cycrow, don't mind if I ask some more questions... please correct me if I'm wrong
1) Currently, it is mostly a statically templated GUI, meaning that the number of "UI components" is fixed in each GUI set but can switch between them, though each "component" can be dynamically driven by script. E.g. say you set a "text area" component, I can change the content of the text area dynamically, but I can't say create 3 text areas this time and 5 text areas the next time.
2) Is it possible to use that as a secondary command menu (launched after a command slot is invoked) that displays a secondary menu system using this? menu data can be script driven (e.g. putting things in an input Array in particular order) and menu input handling can also be script handled (e.g. returns a number representing which item is chosen, and let script decides what it does).
If 2) is not directly possible due to need to hardcode script calls (or is there a script command that can call a generic script specified by string variable and generic input variables?), would it be more possible if say I create a hard-coded dispatcher that takes in a string_script, value1, value2, ....,
and internally dispatches it to stuff like
| Code: |
if $string_script == "!move.whatever"
$result = call script "!move.whatever": arg1=value1
return $result
else if $string_script == "!move.somwherer"
$result = call script "!move.somewhere" : arg1=value1, arg2=value2
return $result
else
...
|
so that the "menu" handler can be data-driven by just setting the generic string and values.
If this is feasible, we may have found a real way to get around the Command Slot shortage problem.
|
|
|
|
|
|
|
Back to top |
|
|
|
 |
|
|
|
|
|
|
|
 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You cannot download files in this forum
|
 |
|
|
|
|
|