Page 1 of 1

New interface

Posted: 04 Jun 2007, 00:18
by Kyor
What do you think about remake the warzone2100 interface?

This one seems to be very simple, and using a single texture for many things.

[Question: The menus are .pies? So where are those .pies?]

Suggestion: Silver and blue interface, with a few Post-apocalyptics scenes in the main menu...

The basic game-interface may be the same...

The problem is: Wz2100 menus only accept 256x256 textures ><)

Re: New interface

Posted: 04 Jun 2007, 07:56
by Kamaze
I quote Watermelon to answer this:
Watermelon2: to add a button in wz,you have to:

1.modify the button table in source
2.create a non-duplicated uid for that new button
3.create a image if needed
4.add string resource for that button
5.add image resource to wrf if needed
6. 100 lines+ of changes in various source files to give this button a functionality
Think positive :)

Re: New interface

Posted: 04 Jun 2007, 12:46
by Giel
Kyor wrote: [Question: The menus are .pies? So where are those .pies?]
[Answer:] (you won't like this answer): there are no .pie files for the menus, no the menus are hardcoded and spread across at least 6 source files (frontend.c being the most important one of those).

Re: New interface

Posted: 04 Jun 2007, 20:43
by Kyor
Holy god... That sounds hard =(

Re: New interface

Posted: 04 Jun 2007, 23:10
by lav_coyote25
would it not be better to have it in one file as opposed to 6... not having coding experience but it seems the easier you make it - the better it should be...right? ???

Re: New interface

Posted: 05 Jun 2007, 00:44
by Giel
lav_coyote25 wrote: would it not be better to have it in one file as opposed to 6... not having coding experience but it seems the easier you make it - the better it should be...right? ???
Entirely correct.

[sarcasm-mode]
Now if you would have told that to the Pumkin coders several years ago (preferably before they wrote that code) then we wouldn't have been sitting on this big pile of code which can probably win the obfuscated C contest at least 5 years in a row.
[/sarcasm-mode]

Well, a bit more serious now, the GUI code is a very, very though piece of code to work with. Every single change can result in a hundred of bugs emerging, without ever being able to find the cause. So currently a complete rewrite of the GUI code seems like the best&cleanest solution (maybe even the fastest), which however would probably still cost several months.

Re: New interface

Posted: 05 Jun 2007, 18:44
by Kyor
Giel wrote: Entirely correct.

[sarcasm-mode]
Now if you would have told that to the Pumkin coders several years ago (preferably before they wrote that code) then we wouldn't have been sitting on this big pile of code which can probably win the obfuscated C contest at least 5 years in a row.
[/sarcasm-mode]

Well, a bit more serious now, the GUI code is a very, very though piece of code to work with. Every single change can result in a hundred of bugs emerging, without ever being able to find the cause. So currently a complete rewrite of the GUI code seems like the best&cleanest solution (maybe even the fastest), which however would probably still cost several months.
I totally agree with you, giel.

I don't have coder experience, but i'm good at texturing and designing

Re: New interface

Posted: 06 Jun 2007, 23:07
by Solitaire
So currently a complete rewrite of the GUI code seems like the best&cleanest solution (maybe even the fastest), which however would probably still cost several months.
Indeed. Or we'll be quoting watermelon to everyone who comes here for the rest of eternity...  ::)

Re: New interface

Posted: 07 Jun 2007, 12:55
by Watermelon
Solitaire wrote: Indeed. Or we'll be quoting watermelon to everyone who comes here for the rest of eternity...  ::)
I just speak from experience.  ;D

The gui code is a bit broken indeed,but there is still hope to fix it,either by adding interface functions or make the widget creation/uid assignment script-accessible,given the gui element its own resource loader will help too.

In my opinion rewriting is not a feasible approach,since there are many great gpl-compliant mature gui libs out there,even if none of methods mentioned above works out.