fixing enchants for 70 weapons

02/27/2011 06:59 [DEV]Get-R-Done#1
i used the guide to shaiya configuration by ProfNerwosol to get the reqluc code for the 70 weapons so they can be enchanted ty and ty to tall the ppl on elitepvpers.
[upadte] fixed a few typos and its converted to xl.
ty shaiya_knight_fall for the help.
03/03/2011 06:18 Linxis172#2
Sorry im kind of a noob, but whats "reqluc code"? just wondering.
And it doesnt make much difference but heres a txt file xD
03/03/2011 07:41 zargon05#3
ReqLuc is a coloums in Items table which defines the enchantment items needed to enchant a particular item
This is from Prof's guide:
Quote:
You will find the item needed for enhancement in PS_GameDefs.dbo.Items in Reqluc field. The value is ItemID of the item used. You can change the item simply by replacing the current ItemID with new ItemID of the item you chose.
Before you do so you should know that the data type of Reqluc field is smallint signed. What does it mean for you? It means that the values that can be stored are in range between -32768 and 32768. To store ItemID's above 32k you need to know two things. First, smallint is 16bit (16bit is 2 byte value which equals to 65536), second for ItemID's above 32k you need to subtract 65536 from ItemID of selected item.
Example:
‒Let's take Ohgerton – to enhance it you need Black Magician Rune (Type=44, TypeID=068 – ItemID=44068) ... now, 44068 – 65536 = -21468, which is exactly the value of Reqluc.
▪NOTE: you might find your database to have Reqluc values above 32768. This might cause the Game service to stay paused. It won't know how to process the data and throw an error numeric data overflow in logs.
If you are editing the enchantment be sure to also edit the SData on client side.
03/03/2011 11:47 [DEV]Get-R-Done#4
for the sdata the code does not change so lets say your enchant item is 38 36 your code in reqluc in your sdata would be 38036 but in your sql it would be -27500
04/01/2011 06:16 juel#5
which sdata should i change item.sdata in data.saf?
Shaiya Revenge admin
[Only registered and activated users can see links. Click Here To Register...]
04/07/2011 03:39 [DEV]Get-R-Done#6
will be more to come working on the lvl 70 armor enchants.
04/07/2011 04:01 [DEV]Get-R-Done#7
We will be getting every thing set to a grid so that way it will be a one glance set up for all the enchants that will be in the ( - ) sections.
04/15/2011 05:27 juel#8
any can post here Hammer reqluc code here shadow knight use it ,cant find in data.saf/item.sdata where i find reqluc code shaiya revenge Admin[L]
04/15/2011 06:40 Shaiya_Knight_Fall#9
are you asking for the linking hammers % codes ??? i will have to look them up and i ll post a set up for you.



** posted a list for the linking hammer %s to help link.
04/15/2011 08:18 juel#10
shadow knight use hammer as a enhance item i want know hammer reqluc code pls
and ty for info me abt hammer link chance
here is screenshot
[Only registered and activated users can see links. Click Here To Register...]
04/15/2011 15:32 stinka123#11
what is type and typeID of hamer?
Ex: Type = 25, TypeID = 204, ReqLuc = 25204-65536=-40332
So -40332 is reqluc :D
04/15/2011 17:49 juel#12
ty very much
04/15/2011 18:27 castor4878#13
Quote:
Originally Posted by stinka123 View Post
what is type and typeID of hamer?
Ex: Type = 25, TypeID = 204, ReqLuc = 25204-65536=-40332
So -40332 is reqluc :D
hmm ....

25204 is in the range of a signed 16-bits value, it must be stored in DB as 25204.

a few history: computers don't care about signedness of numbers and never compute in base 10.
a 16-bit value (the ReqLuc column is defined as "smallint" meaning 16-bit value) can contain any number ranging 0000000000000000b up to 1111111111111111b or 0000h up to FFFFh
human use to compute in base 10 (not 2 or 16) so we use to say that the range is 0 up to 65535; and because human activities (not computer ones) do require negative values, we split that range to define numbers in -32768 up to 32767.

because SQL server is stupid and doesn't support unsigned int, a value greater than 32767 (in base 10!) can not be written in a smallint field and we have to provide a negative value obtained with a "signed modular shift" ... a substract of 65536, but if and only if the figure is bigger than 32767; and 25204 wasn't a good example.

so to properly enter ReqLuc figures:
- look if they are or aren't bigger than 32676

- or, type-in an Hex value
update Items set Reqluc=0xAC1D where ItemID=1116
does work since "computer uses hexa and doesn't care about signedness"

- or, use shStudio (with the advantage to do the change of sdata & DB from a single place and let you change the description to let the player know which item he/she must use)

[Only registered and activated users can see links. Click Here To Register...]
04/20/2011 07:27 emohardkore#14
.....
04/29/2011 09:57 juel#15
how i change boss reswap time in obesik file and in database