[HELP]How make a perfect lapisia?

05/01/2015 13:06 AxelMac#1
Hi all, if i want make a perfect lapisia with 100% of success how can ?
i want make this without quest :)
05/03/2015 14:55 AxelMac#2
UP, Pls if anyone know how create one lapisia with 100% pls write here
05/03/2015 22:04 SkuulCandy#3
Quote:
Originally Posted by AxelMac View Post
UP, Pls if anyone know how create one lapisia with 100% pls write here
Without quest ? So, in blacksmith ?
Use speed enchant, but modify when you enchant itīs not @enchant +1 -> +20
05/03/2015 22:18 AxelMac#4
Quote:
Originally Posted by SkuulCandy View Post
Without quest ? So, in blacksmith ?
Use speed enchant, but modify when you enchant itīs not @enchant +1 -> +20
i want make a lapisia with 100% of enchant, i not need a lapisia +20 with speed enchant or other program
05/08/2015 04:59 Mark.Teal1982#5
the only way I know how to do this is to do a sell activated version this means you would sell the perfect lapisia to a npc while having the item you wish to enchant in the first slot of the first bag of the char inv the only problems you run into with this that the item has to be saved into the database before doing this that mean you have to login get the item then move the item into the the right places then log out to char screen so the database saved the location info then log back in and sell the item to the npc after doing so you can then relog and the enchant will then be shown

there are types of examples of this here like the faction change rune and others that will give you the general idea of how it works just change the name and the part of the database you like to edit
05/11/2015 19:35 AxelMac#6
UP
05/12/2015 18:58 bulgaria#7
there is a .txt file somewhere at your database ...
05/12/2015 22:41 kalib.32#8
All those comes dirrectly from the ps_game.exe which means you need brain.exe to do it. Ask Nubness ,Juuf or philipe because only they can help you .
05/13/2015 19:19 SnickQ#9
Quote:
Originally Posted by kalib.32 View Post
All those comes dirrectly from the ps_game.exe which means you need brain.exe to do it. Ask Nubness ,Juuf or philipe because only they can help you .
Very helpfull answer , but what if my brain.exe is hacked?! I dont have money for fix this ;/

Alex try thix
Code:
USE [PS_GameData]
GO
/****** Object:  StoredProcedure [dbo].[usp_Read_Char_Items_Simple_R]    Script Date: 2015-05-13 18:14:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

/****** 개체: 저장 프로시저 dbo.usp_Read_Char_Items_Simple_R    스크립트 날짜: 2006-05-29 오후 7:00:09 ******/



ALTER  Proc [dbo].[usp_Read_Char_Items_Simple_R]

@CharID int,
@Slot int,
@Bag int = 0

AS

SET NOCOUNT ON

SELECT Slot,Type,TypeID,Gem1,Gem2,Gem3,Gem4,Gem5,Gem6 FROM CharItems WHERE CharID=@CharID AND Del=0 AND Bag=0 

----Test1------
If exists (Select ItemID From PS_gameData.dbo.charitems where ItemID='25070' and bag='1' and slot='1' and CharID=@CharID)--Armor Lapasia as for me 25070
Begin
DECLARE @Enchant TINYINT = (SELECT CAST(SUBSTRING(Craftname, 19, 2) AS TINYINT) FROM CharItems WHERE CharID = @CharID AND Bag = '1' AND Slot = '0')

SET @Enchant += 1 -- this will increase the enchant by 1

IF @Enchant > 70 
	SET @Enchant = 50
ELSE IF @Enchant > 20 AND @Enchant < 50
	SET @Enchant = 20

DECLARE @EnchantString CHAR(2) = @Enchant

IF LEN(@EnchantString) = 1
	SET @EnchantString= '5' + @EnchantString

UPDATE CharItems
SET Craftname = SUBSTRING(Craftname, 1, 18) + @EnchantString
WHERE CharID = @CharID AND Bag = '1' AND Slot = '0' and Type in (16,17,18,19,20,21,31,32,33,34,35,36)
UPDATE CharItems
SET Count -= 1
WHERE CharID = @CharID AND Bag = '1' AND Slot = '1'
end

If exists (Select ItemID From PS_gameData.dbo.charitems where ItemID='25069' and bag='1' and slot='1' and CharID=@CharID) --Weap Lapasia as for me 25069
Begin
DECLARE @Enchant2 TINYINT = (SELECT CAST(SUBSTRING(Craftname, 19, 2) AS TINYINT) FROM CharItems WHERE CharID = @CharID AND Bag = '1' AND Slot = '0')

SET @Enchant2 += 1 -- this will increase the enchant by 1

IF @Enchant2 > 70 
	SET @Enchant2 = 50
ELSE IF @Enchant2 > 20 AND @Enchant2 < 50
	SET @Enchant2 = 20

DECLARE @EnchantString2 CHAR(2) = @Enchant2

IF LEN(@EnchantString2) = 1
	SET @EnchantString2= '0' + @EnchantString2

UPDATE CharItems
SET Craftname = SUBSTRING(Craftname, 1, 18) + @EnchantString2
WHERE CharID = @CharID AND Bag = '1' AND Slot = '0' and Type in (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)

UPDATE CharItems
SET Count -= 1
WHERE CharID = @CharID AND Bag = '1' AND Slot = '1'

end
SET NOCOUNT OFF
All what you need is put on 1 slot weap/armor and 2 slot "Perfect lapasia" and relog

All credits for Nubness
05/14/2015 10:02 SkuulCandy#10
This is the same script to enchant his items. Without the condition of the quest:

Code:
USE [PS_GameData]
GO

/****** Object: Trigger [dbo].[GM_Enchant] Script Date: 08/07/2014 22:49:59 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO


CREATE TRIGGER [dbo].[GM_Enchant]
ON [dbo].[CharQuests]
AFTER INSERT
AS 
BEGIN

SET NOCOUNT ON;

DECLARE @QuestID INT = (SELECT QuestID FROM inserted)

IF @QuestID = 1720 -- QuestID
BEGIN

DECLARE @CharID INT = (SELECT CharID FROM inserted)
DECLARE @UserUID INT = (SELECT UserUID FROM Chars WHERE CharID = @CharID)

DECLARE @ItemType TINYINT,
@EnchantItemId INT

DECLARE @EnchantItem TABLE (EnchantID INT)
DECLARE @GearTypes TABLE (GearTypes TINYINT)

SET @ItemType = (SELECT Type FROM UserStoredItems WHERE UserUID = @UserUID AND Slot = 0)
SET @EnchantItemId = (SELECT ItemID FROM UserStoredItems WHERE UserUID = @UserUID AND Slot = 1)
-- the perfect lapisia itemid, change it for you needs
INSERT INTO @EnchantItem VALUES (100230)
-- add all the gear types you want to use here
INSERT INTO @GearTypes VALUES (16),(17),(18),(19),(20),(21),(24),(31),(32),(33), (34),(35),(36),(39),(58) ,(1),(2),(3),
(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),( 15),(22),(23),(40)

IF ((@ItemType IN (SELECT GearTypes FROM @GearTypes)) AND (@EnchantItemID IN (SELECT EnchantID FROM @EnchantItem)))

BEGIN
DECLARE @Enchant TINYINT = (SELECT CAST(SUBSTRING(Craftname, 19, 2) AS TINYINT) FROM UserStoredItems WHERE UserUID = @UserUID AND Slot = 0)
--- max enchant its [10]
IF @Enchant > = 60 
GOTO FAIL
ELSE IF @Enchant > = 10 AND @Enchant < 50
GOTO FAIL

SET @Enchant += 1 -- this will increase the enchant by 1

DECLARE @EnchantString CHAR(2) = @Enchant

IF LEN(@EnchantString) = 1
SET @EnchantString = '0' + @EnchantString

UPDATE UserStoredItems
SET Craftname = SUBSTRING(Craftname, 1, 18) + @EnchantString
WHERE UserUID = @UserUID AND Slot = 0

END
ELSE GOTO FAIL
UPDATE UserStoredItems
SET Count -= 1
WHERE UserUID = @UserUID AND Slot = 1

DELETE FROM UserStoredItems
WHERE UserUID = @UserUID AND Slot = 1 AND Count = 0

FAIL:
DELETEQUEST:
DELETE FROM CharQuests
WHERE CharID = @CharID AND QuestID = @QuestID
END
END
GO
??
05/14/2015 13:04 SnickQ#11
Code:
DECLARE @QuestID INT = (SELECT QuestID FROM inserted)

IF @QuestID = 1720 -- QuestID
BEGIN
As you see in this part in you script quest is necessary
05/20/2015 20:51 Mark.Teal1982#12
Quote:
Originally Posted by SkuulCandy View Post
This is the same script to enchant his items. Without the condition of the quest:

Code:
USE [PS_GameData]
GO

/****** Object: Trigger [dbo].[GM_Enchant] Script Date: 08/07/2014 22:49:59 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO


CREATE TRIGGER [dbo].[GM_Enchant]
ON [dbo].[CharQuests]
AFTER INSERT
AS 
BEGIN

SET NOCOUNT ON;

DECLARE @QuestID INT = (SELECT QuestID FROM inserted)

IF @QuestID = 1720 -- QuestID
BEGIN

DECLARE @CharID INT = (SELECT CharID FROM inserted)
DECLARE @UserUID INT = (SELECT UserUID FROM Chars WHERE CharID = @CharID)

DECLARE @ItemType TINYINT,
@EnchantItemId INT

DECLARE @EnchantItem TABLE (EnchantID INT)
DECLARE @GearTypes TABLE (GearTypes TINYINT)

SET @ItemType = (SELECT Type FROM UserStoredItems WHERE UserUID = @UserUID AND Slot = 0)
SET @EnchantItemId = (SELECT ItemID FROM UserStoredItems WHERE UserUID = @UserUID AND Slot = 1)
-- the perfect lapisia itemid, change it for you needs
INSERT INTO @EnchantItem VALUES (100230)
-- add all the gear types you want to use here
INSERT INTO @GearTypes VALUES (16),(17),(18),(19),(20),(21),(24),(31),(32),(33), (34),(35),(36),(39),(58) ,(1),(2),(3),
(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),( 15),(22),(23),(40)

IF ((@ItemType IN (SELECT GearTypes FROM @GearTypes)) AND (@EnchantItemID IN (SELECT EnchantID FROM @EnchantItem)))

BEGIN
DECLARE @Enchant TINYINT = (SELECT CAST(SUBSTRING(Craftname, 19, 2) AS TINYINT) FROM UserStoredItems WHERE UserUID = @UserUID AND Slot = 0)
--- max enchant its [10]
IF @Enchant > = 60 
GOTO FAIL
ELSE IF @Enchant > = 10 AND @Enchant < 50
GOTO FAIL

SET @Enchant += 1 -- this will increase the enchant by 1

DECLARE @EnchantString CHAR(2) = @Enchant

IF LEN(@EnchantString) = 1
SET @EnchantString = '0' + @EnchantString

UPDATE UserStoredItems
SET Craftname = SUBSTRING(Craftname, 1, 18) + @EnchantString
WHERE UserUID = @UserUID AND Slot = 0

END
ELSE GOTO FAIL
UPDATE UserStoredItems
SET Count -= 1
WHERE UserUID = @UserUID AND Slot = 1

DELETE FROM UserStoredItems
WHERE UserUID = @UserUID AND Slot = 1 AND Count = 0

FAIL:
DELETEQUEST:
DELETE FROM CharQuests
WHERE CharID = @CharID AND QuestID = @QuestID
END
END
GO
??
this version of is incorrect

this is the problem
---------------------------------------------------------------------
--- max enchant its [10]
IF @Enchant > = 60
GOTO FAIL
ELSE IF @Enchant > = 10 AND @Enchant < 50
GOTO FAIL

SET @Enchant += 1 -- this will increase the enchant by 1
---------------------------------------------------------------------
all craftnames start with enchants at 00 and when you add 1 enchant to a armor it goes from 00 to 51 on the first enchant so right now if a armor was at 00 enchants and you used this to enchant system for first time you will then have put power enchants on the item instead of abs

plus the insert into functions here aren't needed and puts extra work on the database and that's never good I see where this came from its a edited version of nubness's perfect reroll system there it was needed so that it could call stats by there true names here it is just a waste and can be harmful to your database if lots of people are doing enchants at the same time its kinda like trying to pull a car with the breaks on it much easier if the breaks was released

also both versions listed in this thread are missing all the new types of gears,weapons that was release after ep4 so if someone is running a ep5 or above they could only enchant about 1/2 the gears that are currently in the game

I added my own working version to the release mine can handle stacks of lapisias and it can also do more then 1 enchant at one time plus it don't added power enchants to armor
05/24/2015 11:56 AxelMac#13
All write a query with quest, but noone know how make a item with enchant 100%?
05/25/2015 00:42 SnickQ#14
Quote:
Originally Posted by AxelMac View Post
All write a query with quest, but noone know how make a item with enchant 100%?
[Only registered and activated users can see links. Click Here To Register...]
05/25/2015 19:27 Mark.Teal1982#15
I believe your talking about a perfect lapis from ep6 as to where the item is places in the blacksmith so that it can be added to the item the problem you run into here is ep5 and below doesn't have these items and unless the ep has the items in coded in the programs files they wont work in the same way that is why people are building quest version of the items and or a sell version or something like that a actual perfect lapisia isn't available in lower EPs