Gold Piles in TitanFist Mine can't tell dif chars apart

Items currently acknowledged by staff for fixing/further staff discussion (Only staff should put threads here to avoid confusion)

Moderators: Moderator, Quality Control, Developer, DM

Flatted Fifth
Recognized Donor
Posts: 331
Joined: Mon Feb 11, 2019 3:04 am

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Flatted Fifth »

Then does the script that handles the piles in Kros prevent that exploit? If so, just change all gold piles to that one, because that one worked the same as the chests.
User avatar
Moridin
Custom Content
Posts: 583
Joined: Thu Oct 18, 2012 10:14 pm
Location: SK, Canada

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Moridin »

Flatted Fifth wrote: Fri May 20, 2022 8:45 pm Then does the script that handles the piles in Kros prevent that exploit? If so, just change all gold piles to that one, because that one worked the same as the chests.
All the piles have the same script.
Characters:
Lomith Dy'nesen Journal
Tanlaus
Quality Control
Posts: 1218
Joined: Thu Jul 18, 2019 8:15 pm

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Tanlaus »

Flatted Fifth wrote: Fri May 20, 2022 8:45 pm Then does the script that handles the piles in Kros prevent that exploit? If so, just change all gold piles to that one, because that one worked the same as the chests.
No they do not prevent the exploit. They are just flagged wrong if that’s the case. I have not checked it myself. I will try tonight.
Flatted Fifth
Recognized Donor
Posts: 331
Joined: Mon Feb 11, 2019 3:04 am

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Flatted Fifth »

Moridin wrote: Fri May 20, 2022 8:46 pm
Flatted Fifth wrote: Fri May 20, 2022 8:45 pm Then does the script that handles the piles in Kros prevent that exploit? If so, just change all gold piles to that one, because that one worked the same as the chests.
All the piles have the same script.
That cannot be true unless the timer is way shorter than the chest's 6 hours because I have never encountered this anywhere but Titanfist and Blackrock. Kros, Hilltop Ruins, Goblin Caves, everywhere else I can go with multiple characters consecutively and each character is treated individually for loot.

I don't know what this exploit is and I certainly don't expect to be told, but can't you just store the data on the character's token as to whether or not a specific gold pile at a specific area + coordinate has been looted or not, and if so, when?
Tanlaus
Quality Control
Posts: 1218
Joined: Thu Jul 18, 2019 8:15 pm

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Tanlaus »

Flatted Fifth wrote: Fri May 20, 2022 9:40 pm
Moridin wrote: Fri May 20, 2022 8:46 pm
Flatted Fifth wrote: Fri May 20, 2022 8:45 pm Then does the script that handles the piles in Kros prevent that exploit? If so, just change all gold piles to that one, because that one worked the same as the chests.
All the piles have the same script.
That cannot be true unless the timer is way shorter than the chest's 6 hours because I have never encountered this anywhere but Titanfist and Blackrock. Kros, Hilltop Ruins, Goblin Caves, everywhere else I can go with multiple characters consecutively and each character is treated individually for loot.

I don't know what this exploit is and I certainly don't expect to be told, but can't you just store the data on the character's token as to whether or not a specific gold pile at a specific area + coordinate has been looted or not, and if so, when?
IIRC gold pile timers are quite a bit shorter.

Edit: just tested Kro’s back to back with two different characters. The second time I hit the gold piles (first time on character #2) I got the message he had looted there before. Even though he had not.

So I think the shorter timer was throwing you.
Flatted Fifth
Recognized Donor
Posts: 331
Joined: Mon Feb 11, 2019 3:04 am

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Flatted Fifth »

Tanlaus wrote: Fri May 20, 2022 10:13 pm
Flatted Fifth wrote: Fri May 20, 2022 9:40 pm
Moridin wrote: Fri May 20, 2022 8:46 pm

All the piles have the same script.
That cannot be true unless the timer is way shorter than the chest's 6 hours because I have never encountered this anywhere but Titanfist and Blackrock. Kros, Hilltop Ruins, Goblin Caves, everywhere else I can go with multiple characters consecutively and each character is treated individually for loot.

I don't know what this exploit is and I certainly don't expect to be told, but can't you just store the data on the character's token as to whether or not a specific gold pile at a specific area + coordinate has been looted or not, and if so, when?
IIRC gold pile timers are quite a bit shorter.

Edit: just tested Kro’s back to back with two different characters. The second time I hit the gold piles (first time on character #2) I got the message he had looted there before. Even though he had not.

So I think the shorter timer was throwing you.
Good to know! Thank you SO MUCH for testing that and getting back to me. I really appreciate it.
Flatted Fifth
Recognized Donor
Posts: 331
Joined: Mon Feb 11, 2019 3:04 am

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by Flatted Fifth »

There really ought to be a better way to deal with whatever exploit you mean, though. I know in NWN 1 there was a way to create and store variables in non-droppable items like the dmfi tool or status token. Is that a thing in nwn 2? I don't know nw script, sorry, but in Kotlin the logic would be something like the following. I have NO idea if this is even remotely helpful or relevant, but I hope this demonstrates the sort of logic flow I mean. Of course, if you can't create and store variables inside of a character or a "plot" item a character carries, then this was a waste of my time so don't waste yours by reading it. :D

Code: Select all

// idea is to have a variable of type integer stored in the character's token. name of variable is the location of the gold pile
// and the value assigned to the variable be the timestamp, in minutes, of the last time that character clicked on it.
// not looted, mind, click on it.

var clicked: Boolean = true
val mChar = (return of whatever function you would use to get the index of stored variables in the current character's token)
val mArea = (return String of whatever function you would use to get the area name)
val mCoor = (return String of whatever function you would use to get the coordinates of the pile being clicked on)

val mPile = mArea + mCoor // note that here I mean join two strings together, not math
val mTime = (return integer of whatever function you use to get the current timestamp, in minutes)
var mMessage: String = ""
var mReset: Int = 0

if (mChar.contains(mPile){        // if a variable name of area + coordinates of this pile already exists in the stored variables
	if (mChar.mPile < (mTime - 360){
		clicked = false
		}else{
			mReset = (mChar.mPile + 360) - mTime  
			mMessage = "You have already had your fortune here recently, reset in ${mReset}"
		}
}else{  // if the variable name doesn't exist, then character hasn't been here before and create variable with the current timestamp
		clicked = false
		(whatever function you would use to store a variable in the character token, variable name being the area+ coordinates,
		variable value being the current time stamp)
}

if (clicked == false){
	(whatever function to give gold amount to character)
}else{
(display mMessage)
}
EasternCheesE
QC Coordinator
Posts: 1921
Joined: Sat Jul 28, 2018 8:51 am

Re: Gold Piles in TitanFist Mine can't tell dif chars apart

Unread post by EasternCheesE »

Flatted Fifth wrote: Sun May 22, 2022 1:09 pm There really ought to be a better way to deal with whatever exploit you mean, though. I know in NWN 1 there was a way to create and store variables in non-droppable items like the dmfi tool or status token. Is that a thing in nwn 2? I don't know nw script, sorry, but in Kotlin the logic would be something like the following. I have NO idea if this is even remotely helpful or relevant, but I hope this demonstrates the sort of logic flow I mean. Of course, if you can't create and store variables inside of a character or a "plot" item a character carries, then this was a waste of my time so don't waste yours by reading it. :D

Code: Select all

// idea is to have a variable of type integer stored in the character's token. name of variable is the location of the gold pile
// and the value assigned to the variable be the timestamp, in minutes, of the last time that character clicked on it.
// not looted, mind, click on it.

var clicked: Boolean = true
val mChar = (return of whatever function you would use to get the index of stored variables in the current character's token)
val mArea = (return String of whatever function you would use to get the area name)
val mCoor = (return String of whatever function you would use to get the coordinates of the pile being clicked on)

val mPile = mArea + mCoor // note that here I mean join two strings together, not math
val mTime = (return integer of whatever function you use to get the current timestamp, in minutes)
var mMessage: String = ""
var mReset: Int = 0

if (mChar.contains(mPile){        // if a variable name of area + coordinates of this pile already exists in the stored variables
	if (mChar.mPile < (mTime - 360){
		clicked = false
		}else{
			mReset = (mChar.mPile + 360) - mTime  
			mMessage = "You have already had your fortune here recently, reset in ${mReset}"
		}
}else{  // if the variable name doesn't exist, then character hasn't been here before and create variable with the current timestamp
		clicked = false
		(whatever function you would use to store a variable in the character token, variable name being the area+ coordinates,
		variable value being the current time stamp)
}

if (clicked == false){
	(whatever function to give gold amount to character)
}else{
(display mMessage)
}
Hi there. Honestly, i know of the way to make it per char (after all, our chest scripts use it), but it'd require a total rework of gold pile script and delving deep into how chests script works. I know Dae was working on UUID, so if this ever comes to live, it would make things super simple to tie to PC directly, not some CDkey or other mockup to preserve "uniqueness of PC".
So, while your idea is relevant and logical, i'd honestly wait for UUID project being finished or abandoned before doing any changes to it.
Post Reply

Return to “Currently Under Review”