Golddrop

05/22/2010 13:06 Shaiya Xtreme#1
Hello,

I would like to increase gladly my drop of gold rate those am on my test server still rather measure.

How and/or where can I that change please?

Thanks:rtfm:
05/22/2010 17:46 13latrix#2
You can eother do it manualy per mob in dbo.mobs via money1 and money2 or the easier way is to find the procedure (forget which hence Im not at my server) and add the "*1.2" or something similiar to it and execute. Possum wrote in e*pvp how to do but it was a little unclear. If you rightclick on gamedata and look at "dependencies" you can get a list of all procedures writing to it.

~Phish
05/22/2010 18:01 Shaiya Xtreme#3
Wish post from Possum ?
05/22/2010 18:21 13latrix#4
[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]

By using them 2 and combining them you should be able to easily and quickly mod the correct procedures.
05/24/2010 11:23 Polypropylen#5
#moved
05/24/2010 12:32 Possum09#6
From the read Mobs stored procedure you can slightly increase the gold rates.

Money1 is the base gold drop rate, Money2 is the random range.

Say the SP (Stored Proc) has "..., Money1, Money2, ..." etc you can double the base by doing "..., Money1 (Money1 * 2), Money2, ...".

Take note that some values are high and increasing them will cause an overflow error. Then you will need to use a switch statement to take into account overflow errors.

Code:
...,
		(
		   CASE
				WHEN (Money1 * 2) > 32767 THEN 32767
				ELSE (Money1 * 2)
		   END
		) AS Money1,
...
05/24/2010 13:07 adamkoolkid2#7
soo could we do a gold drop thats 100x or would that cause the overflow error?
05/24/2010 15:53 Possum09#8
You could make it so all Mobs drop 65,534k each time. Put high gold-rate drops is a bad idea. From our observations any more even 7x gold drop multipliers with Evo as the total Gold Player Reserves was steadily increasing which is a very bad thing despite the extra Gold Sinks we used. 5x is a nice amount I guess but even then I would recommend adding more/larger gold sinks from the default in order to take gold out of the game.
05/25/2010 09:04 NocturnalSniper#9
Question My usp_Read_Mobs_R Shows

Quote:
CREATE Proc usp_Read_Mobs_R
/* Created by [Only registered and activated users can see links. Click Here To Register...], 2004-08-11
??? ??? ???? */
AS
SELECT MobID, MobName, [Level], [Exp], AI, Money1, Money2, QuestItemID,
HP, SP, MP, Dex, Wis, Luc, [Day], [Size], Attrib, Defense, Magic,
ResistState1, ResistState2, ResistState3, ResistState4, ResistState5, ResistState6, ResistState7, ResistState8,
ResistState9, ResistState10, ResistState11, ResistState12, ResistState13, ResistState14, ResistState15,
ResistSkill1, ResistSkill2, ResistSkill3, ResistSkill4, ResistSkill5, ResistSkill6,
NormalTime, NormalStep, ChaseTime, ChaseStep, ChaseRange,
AttackType1, AttackTime1, Attackrange1, Attack1, Attackplus1, Attackattrib1, Attackspecial1, Attackok1,
Attacktype2, Attacktime2, Attackrange2, Attack2, Attackplus2, Attackattrib2, Attackspecial2, Attackok2,
Attacktype3, Attacktime3, Attackrange3, Attack3, Attackplus3, Attackattrib3, Attackspecial3, Attackok3
FROM Mobs
ORDER BY MobID ASC
GO
what do i change in that to make the increase i cannot see how your switch would go in there

any help would be appreciated
05/25/2010 11:49 Possum09#10
In the display for Column fields Money1 and Money2.

More info and examples on SQL "CASE" reference here:
[Only registered and activated users can see links. Click Here To Register...]
05/25/2010 16:19 adamkoolkid2#11
ok so i right click mobs table and go to view dependencies but when it comes up it just shows the table and no procedures =/
05/25/2010 16:45 13latrix#12
Quote:
Originally Posted by Possum09 View Post
From the read Mobs stored procedure you can slightly increase the gold rates.

Money1 is the base gold drop rate, Money2 is the random range.

Say the SP (Stored Proc) has "..., Money1, Money2, ..." etc you can double the base by doing "..., Money1 (Money1 * 2), Money2, ...".

Take note that some values are high and increasing them will cause an overflow error. Then you will need to use a switch statement to take into account overflow errors.

Code:
...,
		(
		   CASE
				WHEN (Money1 * 2) > 32767 THEN 32767
				ELSE (Money1 * 2)
		   END
		) AS Money1,
...
Dependemces was just so you know what procedures write to the table. You actualy have to go into the procedure as possum described here to make the altercations. "Read Mob stored procedure".
05/25/2010 17:16 adamkoolkid2#13
ok any idea where procedures are stored? sorry bit new to procedures :P
05/26/2010 15:28 13latrix#14
Quote:
Originally Posted by adamkoolkid2 View Post
ok any idea where procedures are stored? sorry bit new to procedures :P
PS_ ~ > Programmability > Stored Procedures

~Phish
05/26/2010 16:02 Possum09#15
I know I am probably going to get probably a few people saying I'm rude but I believe in being up-front and questions seem to be going in a circle and people asking the same questions over and over again.

Your trying to get running and manage, and even customize a fairly complex Database structure without doing enough basic tutorials in learning the SQL language.
Whenever you want to make some customizations or apply fixes on the database side it often requires changes to the stored procedures, and perhaps even the Table structures (Not referring to the data records here).

Rather than trying to learn from a complex DB like a private Server I suggest you start with the basics and work from the bottom up.

My Recommendations:
Step1. Learn the basic SQL syntax. Learn how to write SELECT, UPDATE, and DELETE statements from your memory. The EXECUTE command is very useful here too.

ref:
[Only registered and activated users can see links. Click Here To Register...]

Step2. Learn about Creating/Modifying Table Structures. You will pass this hurdle when you have a good idea on how to create, and modify tables and what different data-types there are and perhaps some of the MIN, MAX ranges, and a rough understanding of Primary and Foreign Keys (Shaiya pServers do not use PKs,FKs much, not in MSSQL's native way at least anyway).


Step3. Learn about creating Stored Procedures and User Custom Functions. You will pass this when you can comfortably program a Stored-Procedure to implement a piece of business Logic that you want to do from Scratch. You will also be comfortable in Modify pre-existing SP's.


Final Note:
Google has a multitude of resources. Granted I did learn some SQL in a business Environment for a year or so but the majority of my learning and experience came from Internet Resources, and the most important "Practising" what you are doing. This knowledge you can directly apply to pServers and not just Shaiya, almost all MMO's use DB's, this forum uses a DB, they are all over the Web, in finance, business, nearly everywhere where organised data storage has become a necessity. And the beauty of this gained knowledge is the syntax hasn't changed in a large number of years once you learn it's like riding a bike and I would almost consider it an essential skill in Computing.

/end rant

Best of luck. ^-^