Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

build new user interface / GUI

Status
Not open for further replies.
Newbie Spellweaver
Joined
Jan 22, 2009
Messages
6
Reaction score
0
so im doing Rose GUI and need guidance on XML coz i honestly know nothing on codes.
thanks to purpleyouko for guide me on related stuffs to work on it, big thumbs to him for always helping a noob like me.
i just copy paste codes, analyze the codes and give a try on it.

so if anyone here can help on reading and building the XML that would be a huge help for me.

u can read the detail in the pic below

Untitled-1 - build new user interface / GUI - RaGEZONE Forums

so i got a few questions here :

1. the xml code is something like this :
<BUTTON ID="10" NAME="" X="0" Y="0" WIDTH="269" HEIGHT="30" OFFSETX="0" OFFSETY="0" MODULEID="11" NORMALGID="AVATAINFO_CAPTION" OVERGID="AVATAINFO_CAPTION" DOWNGID="AVATAINFO_CAPTION" BLINKGID="" DISABLEGID="" OVERSID="0" CLICKSID="0" NOIMAGE="0" />
*. how do they put value on button ID?
*. whats the exact different from X Y and OFFSETXY
*. what is module ID and what value to put in there?

2. as u read the information in the image i attached, where can i find the position for char name and map name as i couldnt find it anywhere, is it stored on trose or what?

3. is there a way to change the font for text? coz rev4 use custom font with value 100010 for it.
so is it on trose as well or what?
 

Attachments

You must be registered for see attachments list
Last edited:
Newbie Spellweaver
Joined
May 29, 2014
Messages
81
Reaction score
5
Hello,

I'm not really used to EVO client, but I think it works the same way, correct me if I'm wrong.

First of all let me try to explain a bit how XML works.

The XMLs work with the complete 3DDATA/RES/ folder, where all User Interface informations are stored,

like .DDS files (Textures),

.TSI , where the DDS textures are stored and listed each with their specific height/width and ID.
they are linked to .ID, or _STR.ID files too that have IDs stored too.
The _STR.ID file has to be in 3DDATA/CONTROL/XML folder too.

About the XML itself:

Code:
< XML file start

[B]BUTTON ID="10" 
[/B]This is an important part of the XML you're building. The button ID is read client sided, and its instructions are given by IDs.

What I mean is, here the button 10 if often for , close, or minimize buttons most of time.

It means that for a newly created button, TRose.exe has to be modified to be able to read XML (if its a new one ) or to add new buttons to an existing interface after editing your XML. Otherwise your button wont work. You will be able to click it, it will appear, but do nothing.

Thats how it works in iRose. It might be different in EVO.


NAME="" 

The name you want to associate to your button, image, or whatever.

X="0" 

X Position taken in account if the button isn't in a "DIV" like Pane, or tabbed pane or whatsover..

Y="0" 

Same as above for Y coordinates.

WIDTH="269" 

Nothing much to explain here. The image width.

HEIGHT="30" 

Nothing much to explain here. The image height.

OFFSETX="0" 

X Position taken in account if the button [B]IS [/B]in a "DIV" like Pane, or tabbed pane or whatsover..

OFFSETY="0" 

Same as above for Y coordinates.

MODULEID="11"

The moduleid parameter is still a bit obscure to me as most of time it is set as blank. So I would not be able to explain it to you properly.

NORMALGID="AVATAINFO_CAPTION"  

AVATAINFO_CAPTION is the name of the resource you're loading in .TSI (and _str.id) for the normal state of the button.

OVERGID="AVATAINFO_CAPTION2" 

AVATAINFO_CAPTION2 is the name of the resource you're loading in .TSI (and _str.id) for the Over state of the button. ( When the mouse goes over, it changes ).

DOWNGID="AVATAINFO_CAPTION3" BLINKGID="" 

AVATAINFO_CAPTION3 is the name of the resource you're loading in .TSI  (and _str.id) for the Over state of the button. ( When the mouse clicks on it, it changes ).

DISABLEGID="" 

This is if you enable or not a disalbe option for your button.
Like if you give the intruction: "Button useable only if X > 0" Else ShowDisableCodeHere."
Again, it is client sided. At least in iRose it is.

OVERSID="0" 

Never used this parameter.

CLICKSID="0" 

Never used this parameter.

NOIMAGE="0" 

Never used this parameter. probably to show no image if set to 1?


/> xml file end


2. as u read the information in the image i attached, where can i find the position for char name and map name as i couldnt find it anywhere, is it stored on trose or what?

Yes it in TRose.exe. There is a function that gathers character's zone ID, Name, and coordinates, and displays them at the top right corner by default.


3. is there a way to change the font for text? coz rev4 use custom font with value 100010 for it.
so is it on trose as well or what?

Again, I'm not used to EVO client or OSrose.

But I think 90% the font size / color / positions are in Trose.

I hope all these informations helped you out.

Good luck !


Hij.
 
Newbie Spellweaver
Joined
Jan 22, 2009
Messages
6
Reaction score
0
well explained, thanks Hij really appreciate that.

so by reading your instruction, we could only edit button id that already stored at trose, unless we can edit the trose?

since i have no knowledge of editing trose i should have follow the trose pattern :(

and once again thanks Hij
 
Last of the OsRose Devs
Loyal Member
Joined
Oct 15, 2006
Messages
2,154
Reaction score
101
TRose just loads what it is told to by STBs or equivalent
No graphical elements are hard coded into it.
 
Newbie Spellweaver
Joined
Jan 22, 2009
Messages
6
Reaction score
0
So the client actually have lines for those things that stored in stb or xml? How about the font?

So i have to find those lines? But according to xml line, how do they put value on module and button id? Isnt that coded in trose? Not the graphic elements but those module and ids also something like font

I noticed that rev4 using different xml format tho
 
Last edited:
Last of the OsRose Devs
Loyal Member
Joined
Oct 15, 2006
Messages
2,154
Reaction score
101
trose has expandable arrays to hold values that are imported from resource files.
The format of these arrays is hard coded but the content is entirely loaded in at run-time.
Each item loaded has an associated action code that defines what kind of thing it does.

I haven't really worked through all the code that loads them to the extant needed to fully understand that part of the client but I have worked through them enough to know that nothing is hard coded.
I've even rewritten a load of those functions to allow the client to load stuff in from file as well as from VFS. Figured it would be easier to edit the client resources if I didn't have to go through the hassle of patching the VFS every time I make the slightest change to an STB or whatever.
Still slowly making my way through all the different file types. Done all the common ones such as STB, STL, ZMS, ZMO, ZMD, EFT, CHR and tons of others. Haven't started on XML loading yet though so my knowledge in that area is a little lacking still.

Not really sure about font. I've never really looked for it. I think I remember seeing an explanation of how it is done once over on osrose but I didn't really pay that much attention since it's not really an area that interests me.
I know some fonts are stored in DDS files
 
Newbie Spellweaver
Joined
Jan 22, 2009
Messages
6
Reaction score
0
Ill search that stuffs both osrose forum and 3ddata files :) thanks PY
So a question here,
Rev4 have custom font for UI which loaded as font 100010 in the xml.
Why is it put as 100010 in value instead of lets say font="arial" and how they put 100010? Cmiiw is it stored somewhere that lets say Arial is code 100010?
If it is a yes, then button id and module also stored somewhere in 3ddata isnt it?
 
Last of the OsRose Devs
Loyal Member
Joined
Oct 15, 2006
Messages
2,154
Reaction score
101
Rev4 doesn't have any fonts. It's a server
The font is in whatever client you choose to use with it.

Just wanted to clear that up

#100010 represents a color in common usage. Could it be that rather than a code for font? I can't find any reference to 6 bit binary numbers being used for fonts. More likely it represents RGB as 3 pairs of Hex characters ranging from 0 to FF (255)
#100010 is a very dark magenta in shade. Almost indistinguishable from black in fact.
 
Newbie Spellweaver
Joined
Jan 22, 2009
Messages
6
Reaction score
0
I found that color is stated as rgb and yes the rgb value is number between 0 to 255. so its weird if the font is color value and they put rgb code either in same line :(

I guess the font is stored somewhere in client data like what u said before :) i will check them out and give a good news when i got that



So ive checked the xml on rev4
if u look up thr char info, char name using font 100010, job and level using font 110009 and hp mp gauge using font 210010

Is it a code like 10 is font type and 0010 is font size or something like that lol
because i found that there are no font size code but the job and level info font is smaller than charname info
 
Newbie Spellweaver
Joined
May 29, 2014
Messages
81
Reaction score
5
I've never worked with EVO.

But thats how it works on iRose clients.

Sorry if I sent you in a wrong way.


Hij.
 
Last of the OsRose Devs
Loyal Member
Joined
Oct 15, 2006
Messages
2,154
Reaction score
101
I think it's handled the same in both irose and evo.
 
Status
Not open for further replies.
Back
Top