Jump to content
Eternal Lands Official Forums
bluap

Simple improvements to the character creation screen

Recommended Posts

Hm good question. I think putting them in the same position might look good so let's go with that, and make them close to the bottom.

Share this post


Link to post
Share on other sites
Updated patch.

Maybe someone can try it out?

I just compiled patched client with new_new_char_window defined.

Looks good.

I made a dwarf, clicked done and it went to username and password screen, i went back from that and changed the clothes and hit done again and it went back to user/pass screen... all seems to be working great.

All text and the colour scheme seem clear and concise. To me at least it's all very intuitive.

 

Great job.

Share this post


Link to post
Share on other sites

The latest patch is looking great, looks like we're nearly there! :P

I have the "Alpha border" option enabled and with this, the alpha of the right hand window extends over the bottom bar which looks a little messy IMHO. Also the help and error messages at the bottom of the screen still extend over the right hand window at low resolutions; spiting them into multiple lines when needed might be an option. The messages also appear a little out of sync with which step is happening. Now there are again two steps involved we could maybe restore the original messages. It might be useful to remove any error message and restore the help when some user action is taken - maybe after a key press or mouse click? This is a tricky one as we're using the same space for help and error messages.... Finally, I get a few compiler warning, mostly about "warning: ISO C90 forbids mixed declarations and code".

Share this post


Link to post
Share on other sites

Thanks for testing!

Removing the alpha border is a matter of 1 second. I'll edit the lines causing warnings if I find them...

You are right about the messages at lower resolutions. (At least they don't hide anything:) The problem of making the messages be displayed in two lines is that I know no function that displays multilined text adjusted centrally. Doing that yourself is not that easy because you have to takeinto account the special characters for the colored text. So the help/error texts are problematic...

Some thoughts: Put the messages concerning name and password into a box under the controls. Use console messages for the other error messages? Remove the messages at the bottom completely and give the buttons mouseover texts instead?

Edited by Wind_of_Change

Share this post


Link to post
Share on other sites

Can this stuff get put in the CVS so I can test it too?

 

The text doesn't have to be centered, it's ok I think if it's left justified(if easier to make 2 lines).

Share this post


Link to post
Share on other sites

I'll commit the code to CVS in a day or so. Wind_of_Change, let me know if you are about to update the patch and I'll wait for you to do that.

 

put_small_text_in_box() in text.c may help with the splitting the messages into lines though a loop using is_color() might be easy too.

 

Here are the warning messages:

new_character.c:1553: warning: ISO C90 forbids mixed declarations and code
new_character.c:1807: warning: ISO C90 forbids mixed declarations and code
new_character.c:1867: warning: ISO C90 forbids mixed declarations and code
new_character.c:145: warning: ‘textboxy’ defined but not used

Edited by bluap

Share this post


Link to post
Share on other sites

Uploaded a new patch.

The warnings should hopefully be gone now.

Put the error strings concerning name and password beneath the corresponding controls. Made bluap's help texts be drawn in two lines if necessary. Currently two strings are used. One each for appearance and UN/PW. In my lack of inspiration they are however still the old strings. Do you have any suggestions for them?

Share this post


Link to post
Share on other sites

Thanks Wind_of_Change. I've now committed your patch to CVS. I modified it a bit to completely #def out all the changes. I also changed the start help text to remove the reference to the "person icon".

 

I noticed that once you entered the game with a new character, some of the new character window was still visible and became totally visible if you resize the screen. I've fixed this by adding a hide_window() call before login. I also noticed that some error messages were truncated in the right-hand window so I increased the number of lines displayed. I'm a little confused with what you have done with the console text, console message now appear in the main game window now in addition to the right-hand window. May be this was deliberate so I have not attempted to change that.

 

I hope you forgive me for reformatting the indentation of your #defs. I find it really difficult to spot them when there are indented with the code. It's not the "house style" either. I had to be really careful not to miss any changes out from the being within #defs. That's why I've restore even trivial changes outside the new #defs. We are very close to a release and committing such a large change at this time would be risky without an easy way to hold back the changes.

Edited by bluap

Share this post


Link to post
Share on other sites

Thanks for committing the changes. I'm sorry for having caused you these inconveniences and of course the changes to the #defs don't bother me.

There was already some code for displaying the console text in the window, but it was only displayed if windowed_chat is 0. I thought that this behavior wasn't deliberate... Usually there shouldn't be any text in the console anyway.

Why is actually not the complete new_char_root_window hidden when logging in with the new char? I falsely assumed that...

Share this post


Link to post
Share on other sites

It was not an "inconveniences" I just needed to concentrate a bit too hard :P

Looks like the console stuff needs looking at then. About the new_char_root_window, I knew there was something I meant to check up and now I have. There is code in multiplayer.c for the "case LOG_IN_OK". This destroys new_char_root_window and cleans up the other, original new character windows. Looks like we need to add some NEW_NEW_CHAR_WINDOW goodness in there too and then we can remove my "fix" from login_from_new_char().

Share this post


Link to post
Share on other sites

The hide_window function hides all child windows, but the destroy_window function doesn't destroy all child windows. Interesting...

BTW: Could you move the code which resizes the new window from switch_video() in elconfig.c to resize_all_root_windows() in interface.c. That seems to be the right place for it.

Share this post


Link to post
Share on other sites

The hide_window function hides all child windows, but the destroy_window function doesn't destroy all child windows. Interesting...

BTW: Could you move the code which resizes the new window from switch_video() in elconfig.c to resize_all_root_windows() in interface.c. That seems to be the right place for it.

Agreed. I've also enabled the feature by default in the make.defaults file. Hopefully this will prevent any code rot and get some more testing done so it can be included in the next release. Sorry for the long delay.

Share this post


Link to post
Share on other sites

I finally got to try it out...it looks great! Thank you guys for all the work :)

 

Next thing that would be good to do is make it easier for people to see/know how to do a couple changes if things arent' working right(like everything being all white-turn the shadows off). Everything's buried in that config window, newbies just aren't going to find that stuff or know what to try.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×