Jump to content
Eternal Lands Official Forums
Ashee

Wraith and pickpoint bug

Recommended Posts

I just went to the Wraith on my char Dolphine.

 

I had two pickpoint to spend and I was going to get one human nexus (to wear a better sword with) and 1 inorganic (to test some dungharvesting at different levels out).

I open the dialog with Wraith and choose to get a nexus. he gives me the list, I click ONCE on human nexus. He then asks me to confirm that I want to spend one pickpoint on a human nexus and I click ONCE toconfirm it.

Then I try to pick another nexus to get my inorganic for the dung testings.

Somehow, I have TWO human nexuses and 0 pickpoints left!

 

I went through the dialog with the Wraith ONE time, I said yes to ONE human nexus. And yes, I am sure that I did not doubleclick, I did not accidentally pres the 1 key on my keyboard (someone asked me in the help channel if I had done this, but I had one hand on mouse, the other lifting coffeecup to lips).

 

I don't know what happened, don't know what went wrong, but I'm hoping that you guys can find out and hopefully fix it for me.

 

Cheers.

Share this post


Link to post
Share on other sites

Sometimes your fingers could cause a non intentional double click.

As far as i know, you can multiple clicks before the text on NPC changes, allowing you to buy/sell more items without returning to the beggining of the dialogue. This looks like the situation described.

 

#edit: is a good feature for buying cheap wine or leather for eg., but could bring up this other negative issue.

Edited by dipi

Share this post


Link to post
Share on other sites

My mouse is fairly decent and I have to really CLICK click on it to make it click things. So, while it is a good suggestion, it's not what happened here :confused:

Share this post


Link to post
Share on other sites

Just tested what Raytray described on test and confirmed that fast double click on the confirm message gets you 2 human nexi. I tried clicking as fast as possible but only got two :confused:

 

Mixi

Share this post


Link to post
Share on other sites
Just tested what Raytray described on test and confirmed that fast double click on the confirm message gets you 2 human nexi. I tried clicking as fast as possible but only got two :evilgrin:

Mixi

It's fairly easy to reproduce on any NPC dialogue, I've been testing by buying wine (hick!). If you click quickly you can send off multiple server messages before the dialogue is refreshed. I disabled the block on using scroll wheel clicks and managed to buy 4-5 times the amount I selected.

 

A very simple change would prevent this happening. Once a dialogue response has been sent back to the server, don't allow any further responses to be sent until the dialogue window has been refreshed. It's only about 4 lines of code but would need Entropy to approve the change as we're now in a code freeze before the release; could be considered a bug fix though....

 

Here's the code:

Index: dialogues.c
===================================================================
RCS file: /cvsroot/elc/elc/dialogues.c,v
retrieving revision 1.46
diff -a -u -r1.46 dialogues.c
--- dialogues.c	13 Feb 2010 17:04:00 -0000	1.46
+++ dialogues.c	13 Mar 2010 16:06:05 -0000
@@ -43,6 +43,7 @@
static const int str_edge = 5;
#define MAX_MESS_LINES 8
static const int response_y_offset = MAX_MESS_LINES*SMALL_FONT_Y_LEN;
+static int clicked_already = 0;


void build_response_entries (const Uint8 *data, int total_length)
@@ -105,6 +106,7 @@
		x_start+=(len+2)*SMALL_FONT_X_LEN;
		orig_x_start+=(orig_len+2)*SMALL_FONT_X_LEN;
	}
+	clicked_already = 0;
}

int	display_dialogue_handler(window_info *win)
@@ -347,11 +349,12 @@
	// only handle mouse button clicks, not scroll wheels moves
	if ( (flags & ELW_MOUSE_BUTTON) == 0) return 0;

-	for(i=0;i<MAX_RESPONSES;i++)
+	for(i=0;i<MAX_RESPONSES && !clicked_already;i++)
		{
			if(dialogue_responces[i].in_use && dialogue_responces[i].mouse_over)
				{
					send_response(win, i);
+					clicked_already = 1;
					return 1;
				}
		}

 

Edit: I now have a slightly longer version of the patch that includes key presses. It also times-out the block on clicks in case the dialogue text is changed but the responses are not updated (only the server gods will know if that is possible). It's still extremely simple though.

Edited by bluap

Share this post


Link to post
Share on other sites

I consider this a feature, not a bug. It's very rare to do it by accident and it's helpful when buying lots of items from an NPC. I've used it on purpose many times in the past.

Share this post


Link to post
Share on other sites

It's not a feature. As described above: it's a bug.

It's as if Toyota would say: we've built in this great feature where you don't have to do anything to accelerate as the car will do that on its own.

Share this post


Link to post
Share on other sites

I have a very fast internet connection and computer and am not able to double click before the text change but when I visit a friend with a slower connection/computer (not sure if it's both) am I able to do it.

I always thought it was some lag problem.

Share this post


Link to post
Share on other sites

In this example i agree with Ermab, it is a bug.

Even if it is known by the regular EL players and comfy to have when buying loads of stuff from the NPCs it has a down side that can screw things up for newer players not used to this or know about it so it should be fixed.

 

As for the ppl using this to buy loads of items from the NPCs it is a down side but that is a diffrent issue.

Share this post


Link to post
Share on other sites
In this example i agree with Ermab, it is a bug.

(...)

As for the ppl using this to buy loads of items from the NPCs it is a down side but that is a diffrent issue.

 

And if Entropy decides it's a bug, profiting from it could actually be against the rules (rule 19)....

Share this post


Link to post
Share on other sites
In this example i agree with Ermab, it is a bug.

(...)

As for the ppl using this to buy loads of items from the NPCs it is a down side but that is a diffrent issue.

 

And if Entropy decides it's a bug, profiting from it could actually be against the rules (rule 19)....

OH NOEZ.

Some people snuck around some of the tedious, pointlessness that is clicking over and over at NPC's... they should be whipped and hung!!

 

And boiled in oil! :bow_arrow:

Share this post


Link to post
Share on other sites

It's a "thing", I would not describe it as a bug or feature. It has it's uses but it can also cause problems.

So make sure you only click once.

 

Either way, 2 human nexus is not too much anyway.

Share this post


Link to post
Share on other sites

Would it be possible to code wrath to allow you to remove an accidentally placed nexus, but only if that nexus was placed in the time the wraith chat window was open?

 

This way if someone was to accidentally place a nexus they could reverse it quickly but once you closed chat window you can't undo it without nexus removals or #resets.

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

×