Jump to content
Eternal Lands Official Forums
bluap

New client update available 1.9.5.p6

Recommended Posts

" Equipped item swap now tries to move the old item to the slot left by the new. "

 

O M G this is awesome.  Thank you so much!  <3

 

Share this post


Link to post
Share on other sites
4 hours ago, Locuas said:

Hello, please can someone enlight my path :)

The updates just contain the el.exe and .dll files, you need to extract the zip file into the existing directory where you installed the full client.

Share this post


Link to post
Share on other sites

I do not know if it is the right place to put it in, but i have used for years now an adjusted key.ini which sets my quick inventory slots and some of the quickspell slots to the keypad, for faster useage, (really help full for me for fast mixing as i can keep  press down 1 to eat fast toads, then click on mix_all button of inventory to mix without changing much, while i have enough in inventory, and if i get in danger of needing to heal i can press the keypad key 7 and then keypad key 2 to heal and drink an srs , keypad key 3 if i need my antidot and so on) I updated yesterday to the new executable (build from a fresh git clone) and realized today on joules that my keys are not working anymore. and (since they are set in the key.ini, the build in default keys are not working either)

Share this post


Link to post
Share on other sites

I did a bit testing and it seams only the numpad keys seam to be the problem, according to the sdl documentations i saw nothing should have changed with the way key definitions work otherwise. maybe what i have is a problem with the fix for Nogrod problem with numpad

 

Edited by vinoveritas

Share this post


Link to post
Share on other sites

Vino,

 

What comes to my mind is maybe bluap deleted the difference between 1-2 etc numbers and keypad numbers when proceeding to sdl.  It might be the problem

Share this post


Link to post
Share on other sites
51 minutes ago, vinoveritas said:

I did a bit testing and it seams only the numpad keys seam to be the problem, according to the sdl documentations i saw nothing should have changed with the way key definitions work otherwise. maybe what i have is a problem with the fix for Nogrod problem with numpad

 

Well, comparing the header files, there is a difference between handling of keypad codes:

SDL uses fixed values for the codes between 256 and 272 (from SDL_keysym.h) ,

SDL2 derives them from scan codes by an OR with 2^29 (i.e. bit 30 is always set, from SDL_keycode.h).

 

The client code still translates the input to the fixed SDL codes, instead of using the SDL2 symbols (SDL_KP_1 etc. ).

Might that be the cause of the problem?

Share this post


Link to post
Share on other sites

The sdl2 client does use the sdl2 key symbols. I do not know what you are referring to revi. I'm not able to test this right now but you should be able to use the key.ini to use the number keys as normal or the KP_1 symbol if you wish.

Share this post


Link to post
Share on other sites

what i tried was

#K_ITEM1=KP1 //old behaviour worked fine in sdl1 client

//also what is descripte here as right one https://github.com/Tangent128/luasdl2/wiki/Sdl-Key

 

#K_ITEM1=KP_1 //I changed it to this as after the update my key.ini that had the upper text was not working and a fast check gave me this as an answer.

 

#K_ITEM1=SDLK_KP_1 //as the KP_1 solution was not working either i tried this one

 

 

In all 3 cases when i pressed the 1 i got a written 1 in the console. not the item usage, that i did get in the past.

Btw after checking with the docs i am pretty sure the 3rd solution is the wrong one.

 

If i understood the key.c file right, the client uses the SDL.getKeybyName(char* name) funktion to get out of the ini file the key, which by all means means that either KP1 or KP_1 should work.

Edited by vinoveritas

Share this post


Link to post
Share on other sites

I can't fully check this as I'm AFK. It looks like SDL2 uses the key name "keypad 1" which should be what you need in the key.ini file. The problem is that the client code does not support a space in the name. I'll fix that when I'm not AFK.

Share this post


Link to post
Share on other sites

ok, i did made a small test, i changed in the key.c the keys i wanted to use on keypad directly on the hard assignment, and everything worked as i expected it so as far as i see it it should be just something like a problem with the naming in the file

 

Share this post


Link to post
Share on other sites
1 hour ago, bluap said:

The sdl2 client does use the sdl2 key symbols. I do not know what you are referring to revi. I'm not able to test this right now but you should be able to use the key.ini to use the number keys as normal or the KP_1 symbol if you wish.

I was looking at the Uint16 get_key_code(const char *key) funtion in "keys.h" in the client.

As I understand that routine, it gets a char string representing keyboard input, and translates it to an internal key code, using the SDL codes for KP_1 etc. (not the SDL2 symbols).

Share this post


Link to post
Share on other sites

There is no get_key_code() in the client. The real SDL2 codes are used internally for key definitions that are read from the key.ini file.

Share this post


Link to post
Share on other sites
9 minutes ago, bluap said:

There is no get_key_code() in the client. The real SDL2 codes are used internally for key definitions that are read from the key.ini file.

Sorry, my mistake, I was looking at an SDL version of the code, not the SDL2 version.

Edited by revi

Share this post


Link to post
Share on other sites
On 01/02/2020 at 1:54 PM, revi said:

Sorry, my mistake, I was looking at an SDL version of the code, not the SDL2 version.

Thank goodness for that, I thought I'd imagined the whole coding saga for a moment. ?

Edited by bluap

Share this post


Link to post
Share on other sites

I've fixed the issue with not being able to use keypad key in key.ini.  The text to use is the key name from the SDL2 table here: https://wiki.libsdl.org/SDL_Keycode.  To avoid a major code rewrite (I could not think of an easy way to avoid this), you will need to replace space characters in the name with an underscore.  For example, to use the keypad "1" key, you should use the text "keypad_1".

 

Build links in the usual places:

Share this post


Link to post
Share on other sites

Bluap,

 

Thanks for all the work on client updates, but I get a little bit lost sometimes with this and the other two threads in programming.

 

Could you start a fresh thread (here, or there, or somewhere (;  ) that has all the updates in one place for those of us that don't compile our own clients to avoid having to check 3 different spots for different downloads that may or may not be the most current?

 

Thanks again!

Edited by Diealot

Share this post


Link to post
Share on other sites
On 22/02/2020 at 5:10 PM, Diealot said:

Could you start a fresh thread (here, or there, or somewhere (;  ) that has all the updates in one place for those of us that don't compile our own clients to avoid having to check 3 different spots for different downloads that may or may not be the most current?

OK, will do.

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.

×