billybill wrote:This is a request thread, because I don't recall seeing something like this before. This is no biggie if none exists but would save a lot of time.
I am looking for some kind of windows program that will give me a GUI with all the different types of Controls on the side that I can place onto a makeshift UWindow which I can then export to something usable from within a mod
I've made similar ones (to UWindows) years ago, they are not particulary hard. BUT, the amount of opening the game to test I put something in the right place or got the measurements right it is really time consuming
If nothing exists and you have a good knowledge of a visual language PLEASE do us all a huge favour! Thank you in advance
UWindow maker with GUI
UWindow maker with GUI
- Feralidragon
- Godlike
- Posts: 5493
- Joined: Wed Feb 27, 2008 6:24 pm
- Personal rank: Work In Progress
- Location: Liandri
Re: UWindow maker with GUI
Well... I built something like a new system to make the creation of menus extremely easy for NW3 (1 min it's all it takes to setup one, and even less to add more elements to it), but it's mostly aimed for the Mod menu, although it can be easily cast from anywhere else in the code.
However, instead of a GUI, I build the menus like this there (example):
Main menu container and entry on the Mod menu:
And within the menu, you can add the tabs with the settings:
There are several kinds of element types, all self-explanatory I think:
ST_Checkbox, ST_Input, ST_IntegerInput, ST_FloatInput, ST_Slider, ST_Combo, ST_Color, ST_Profile, ST_Label; (for instance the ST_Color one is a new control altogether with RGB sliders, a combo with preset colors and a customizable icon to see the current color)
And each element has different options:
localized string Description; //Description (or input caption)
localized string HelpTip; //Help tip (the help text that appears when you hover the mouse over a setting)
ESettingType Type; //The type as mention above (ST_Checkbox, ST_Input, etc...)
int MaxChars; //Max chars in case of a text/numeric input (it also auto resizes depending on the number of allowed characters)
float BottomMargin; //Amount of pixels of space before the next element (good to separate sections of settings within the same tab)
int MinSliderVal, MaxSliderVal, SliderStep, SliderSize, SliderTrackSize; //Only used for ST_Slider
texture ColorTex; //Color icon/texture to be used when the type is ST_Color
class<NWProfile> ProfileClass; //Profile class to affect in case of ST_Profile
bool hasAdvanced; //Has advanced button to open another menu
localized string AdvancedText; //Advanced button text
class<NWMainModMenuInfo> AdvancedMenuInfoClass; //Advanced menu class to open when the button is pressed
And finally, the .int entries:
This menu system is highly based on .int entries, so you can add more elements to a tab or more tabs into a menu using .int files alone (let's say you release mod A, and then mod B which is an expansion to mod A and therefore has some extra settings, but you don't want to create a new menu entry, instead you want to add a tab or elements to the mod A existing ones).
This is not GUI based like you're asking, but makes menu creation extremely easy and very very straightforward (I built this menu system exactly because I know the extreme pain to create UWindows, and I wouldn't survive adding all those NW3 settings to menus if I had to deal with UWindows directly)...
I am not sure if you want to look into these, but in case you do, once I finish the documentation part on the menus, I can post a chunk of it here for you to start to explore it, or you can start checking the NWMenuPageInfo and the NWMainModMenuInfo classes and some menus using them (like NWServerGenericSettingsMenuPageInfo, NWServerWeaponSettingsMenuPageInfo and NWClientWeaponSettingsMenuPageInfo), and you can extract the whole set of menu classes to do your own .
I wasn't joking when I said before that the NW3 core can be used like a mini-SDK for new mods... and I am going to extract many of its features into smaller independent packs later on.
However, instead of a GUI, I build the menus like this there (example):
Main menu container and entry on the Mod menu:
Code: Select all
class NWServerSettingsMainModMenuInfo expands NWMainModMenuInfo;
defaultproperties
{
bUniqueMainMenu=True
bSizableMainMenuW=False
bSizableMainMenuH=True
bCenterMainMenu=True
MainMenuCaption="Nali Weapons 3 Gameplay Settings"
MainMenuHelp="Nali Weapons 3 gameplay settings to adjust damage, balance, weapons, etc"
MainMenuTitle="Nali Weapons 3 - Gameplay Settings"
bMainMenuPosPercentageX=False
bMainMenuPosPercentageY=False
bMainMenuSizePercentageW=False
bMainMenuSizePercentageH=True
MainMenuPosX=0.000000
MainMenuPosY=0.000000
MainMenuSizeW=300.000000
MainMenuSizeH=0.750000
MainMenuMinSizeW=300.000000
MainMenuMinSizeH=0.250000
}
Code: Select all
class NWServerGenericSettingsMenuPageInfo expands NWMenuPageInfo;
static function string GetDefaultValue(byte i, optional byte advIndex)
{
if (i == 0)
return String(Class'NaliWeapons'.default.MaxTraceRange);
if (i == 1)
return String(Class'NaliPickups'.default.enableTeamBasedEffect);
return "";
}
static function string ProcessSettingsChange(PlayerPawn P, byte i, string val, optional byte advIndex)
{
if (i == 0)
{
Class'NaliWeapons'.default.MaxTraceRange = Int(val);
Class'NaliWeapons'.static.StaticSaveConfig();
}
else if (i == 1)
{
Class'NaliPickups'.default.enableTeamBasedEffect = Bool(val);
Class'NaliPickups'.static.StaticSaveConfig();
}
return val;
}
defaultproperties
{
ModMenuInfoClass=Class'NWServerSettingsMainModMenuInfo'
PageTitle="Generic"
SettingsList(0)=(Description="Hitscan max range")
SettingsList(0)=(HelpTip="Max range of a hitscan weapon")
SettingsList(0)=(Type=ST_IntegerInput,MaxChars=6)
SettingsList(1)=(Description="Enable pickups team GFX")
SettingsList(1)=(HelpTip="Enable team colored pickup effects")
SettingsList(1)=(Type=ST_Checkbox,BottomMargin=20.000000)
}
ST_Checkbox, ST_Input, ST_IntegerInput, ST_FloatInput, ST_Slider, ST_Combo, ST_Color, ST_Profile, ST_Label; (for instance the ST_Color one is a new control altogether with RGB sliders, a combo with preset colors and a customizable icon to see the current color)
And each element has different options:
localized string Description; //Description (or input caption)
localized string HelpTip; //Help tip (the help text that appears when you hover the mouse over a setting)
ESettingType Type; //The type as mention above (ST_Checkbox, ST_Input, etc...)
int MaxChars; //Max chars in case of a text/numeric input (it also auto resizes depending on the number of allowed characters)
float BottomMargin; //Amount of pixels of space before the next element (good to separate sections of settings within the same tab)
int MinSliderVal, MaxSliderVal, SliderStep, SliderSize, SliderTrackSize; //Only used for ST_Slider
texture ColorTex; //Color icon/texture to be used when the type is ST_Color
class<NWProfile> ProfileClass; //Profile class to affect in case of ST_Profile
bool hasAdvanced; //Has advanced button to open another menu
localized string AdvancedText; //Advanced button text
class<NWMainModMenuInfo> AdvancedMenuInfoClass; //Advanced menu class to open when the button is pressed
And finally, the .int entries:
Code: Select all
Object=(Name=NWCoreV3.NWServerSettingsModMenuItem,Class=Class,MetaClass=UMenu.UMenuModMenuItem)
Object=(Name=NWCoreV3.NWServerGenericSettingsMenuPageInfo,Class=Class,MetaClass=NWCoreV3.NWMenuPageInfo)
This is not GUI based like you're asking, but makes menu creation extremely easy and very very straightforward (I built this menu system exactly because I know the extreme pain to create UWindows, and I wouldn't survive adding all those NW3 settings to menus if I had to deal with UWindows directly)...
I am not sure if you want to look into these, but in case you do, once I finish the documentation part on the menus, I can post a chunk of it here for you to start to explore it, or you can start checking the NWMenuPageInfo and the NWMainModMenuInfo classes and some menus using them (like NWServerGenericSettingsMenuPageInfo, NWServerWeaponSettingsMenuPageInfo and NWClientWeaponSettingsMenuPageInfo), and you can extract the whole set of menu classes to do your own .
I wasn't joking when I said before that the NW3 core can be used like a mini-SDK for new mods... and I am going to extract many of its features into smaller independent packs later on.
-
- Adept
- Posts: 406
- Joined: Fri Apr 20, 2012 6:38 pm
- Personal rank: Master of Coop
- Location: Odessa, Ukraine
Re: UWindow maker with GUI
Wow its interesting:) i'm new to UWindows and with time will need to work with them
Unreal. Alter your reality..forever...
- Dr.Flay
- Godlike
- Posts: 3348
- Joined: Thu Aug 04, 2011 9:26 pm
- Personal rank: Chaos Evangelist
- Location: Kernow, UK
- Contact:
Re: UWindow maker with GUI
UnrealXP110 is part of Wormo's essential UT addons "GUI Extensions" (I can't live without them)
Medor may host the files but not the info.
http://www.koehler-homepage.de/Wormbo/G ... sions.html
Wormbo knows his way around UWindow
Medor may host the files but not the info.
http://www.koehler-homepage.de/Wormbo/G ... sions.html
Wormbo knows his way around UWindow
UT99.org House Rules
ChaosUT https://chaoticdreams.org
Your Unreal resources: https://yourunreal.wordpress.com
The UT99/UnReal Directory: https://forumdirectory.freeforums.org
Find me on Steam and GoG
ChaosUT https://chaoticdreams.org
Your Unreal resources: https://yourunreal.wordpress.com
The UT99/UnReal Directory: https://forumdirectory.freeforums.org
Find me on Steam and GoG
Re: UWindow maker with GUI
medor wrote:I ave it since 2009 http://unrealtournament.99.free.fr/utfi ... xtensions/
I can joint info to the files if you want
Re: UWindow maker with GUI
billybill wrote:This is just the start but tell me how it looks so far. Nothing is perfect but as stated it is a start. The aim is to save people some time and I think it will accomplish this. Once I get the numbers more accurate!
before after
-
- Average
- Posts: 63
- Joined: Wed Apr 30, 2008 9:17 pm
Re: UWindow maker with GUI
Looks great! Are the controls drag and drop or do you position elements using coordinates in the properties browser?
Re: UWindow maker with GUI
billybill wrote:dialog studio is drag and drop lets you re-position, resize, change text as you would expect. I'm really starting from scratch here with UWindows so I am new to the scaling and positioning, took me a while to get the editboxes right now working on checkboxes. So the radio boxes part of UExtensions? If I can add some dll functionality to this it would bring some more life into UWindows. Something like MDX or DCX did for mIRC, I'll bet people would use them a lot more
Re: UWindow maker with GUI
This is an especially interesting topic for me right now. I'm getting very interested in GUI and plan on pumping out a lot of new projects with features similar to UWindows. One goal of mine would be the ability to create a UWindow without actually creating a class for it but rather have it be built at runtime and just have it modify a few configurable variables that can be swapped out (SetPropertyText)I'll keep tuned into this topic! having a visual system for making interfaces would be a great leap for UT Devs.
Re: UWindow maker with GUI
billybill wrote:I'll try finish it this month. I probably should have used the visual basic windows that you can construct within microsoft office programs words etc. The reason I chose mIRC was that after building a basic window maker (converter code) i could then see if I can make even more features using dlls
What you mention wouldn't be hard at all, making one window class and having the options set by variables. I mean it would be harder if you were trying to change placement of the items within the UWindow but text labels and options that would be child stuff very easy and straight forward. It probably is true that there is a lack of UWindows in mods because a tool like this doesn't exist, I will get a workable release out by finishing what I started although I do want to drop the mIRC part as soon as possible, maybe I should learn a visual language
- UTDeath
- Skilled
- Posts: 248
- Joined: Sat Apr 20, 2013 11:35 pm
- Personal rank: Tournament Champion.
- Location: Mexico.
Re: UWindow maker with GUI
I actually like the original windows and look of UT a lot, the Metal theme at least.
You cannot kill what is already dead.