EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Support::Windows Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=587)
-   -   random loot generator (not understanding) (https://www.eqemulator.org/forums/showthread.php?t=38580)

Xenerox 08-06-2014 06:08 PM

random loot generator (not understanding)
 
http://wiki.eqemulator.org/p?Diablo_...ster_Reference im sorry but could someone please explain this one to me a little better ? how do i use it where do i put it ?

Akkadius 08-06-2014 06:21 PM

Quote:

Originally Posted by Xenerox (Post 232601)
http://wiki.eqemulator.org/p?Diablo_...ster_Reference im sorry but could someone please explain this one to me a little better ? how do i use it where do i put it ?

I don't know how the page doesn't explain it better, both the questions you just answered are clearly in the page:

"Run the script in your server directory as 'DiabloLoot.pl'"

"Example of how you run the script: perl DiabloLoot.pl all - does a complete cycle of the script, deletes old entries and creates all new - You should probably just run this option if you don't know what you're doing"

And I go into the detail of the pre-requisites on the page.

?

Xenerox 08-06-2014 07:11 PM

its just it says open it just opens a black screen and closes idk what im doing incorrectly

Kingly_Krab 08-06-2014 07:22 PM

Ah, I see your issue, you open this with the command prompt. You can run them from the command prompt. So suppose you had the file in C:\EQ\Scripts you would open the command prompt, type cd C:\EQ\Scripts then hit enter then type perl DiabloLoot.pl all.

Xenerox 08-06-2014 07:34 PM

okay i tried its not connecting for some odd reason so i download the georges tools diablo tool and it keeps giving me runtime errors after installing the ODBC drivers

Xenerox 08-06-2014 07:45 PM

C:\PEQ RIP\EQ\EQEmuServer>DiabloLoot.pl all
DBI connect(':localhost:3306','',...) failed: Access denied for user 'ODBC'@'lo
alhost' (using password: NO) at C:\PEQ RIP\EQ\EQEmuServer\DiabloLoot.pl line 35
DBI connect(':localhost:3306','',...) failed: Access denied for user 'ODBC'@'lo
alhost' (using password: NO) at C:\PEQ RIP\EQ\EQEmuServer\DiabloLoot.pl line 36
Can't call method "prepare" on an undefined value at C:\PEQ RIP\EQ\EQEmuServer\
iabloLoot.pl line 54.
Loading Loot Definitions...
C:\PEQ RIP\EQ\EQEmuServer>

Akkadius 08-06-2014 08:04 PM

It's not getting a valid database connection.

It uses your database credentials from eqemu_config.xml, if that is not correct then the script is going to have trouble making a successful connection to your database.

Xenerox 08-06-2014 08:50 PM

idk i tried everything

Mill3nia 08-25-2014 04:27 AM

also having the same issues, perhaps we're not completely understanding how to run it. my config file is fine, when I try to run the script I get no database is selected error

Akkadius 08-25-2014 12:10 PM

Quote:

Originally Posted by Mill3nia (Post 233262)
also having the same issues, perhaps we're not completely understanding how to run it. my config file is fine, when I try to run the script I get no database is selected error

Can you post a screenshot or something else?

Mill3nia 08-25-2014 01:44 PM

here is a screenshot of what happens when I try to load it http://imgur.com/UCwTyLG
any help getting this running would be awesome, been wanting to run another random loot drop server, the old diablo loot tool I used no longer works, this seems to be the only option I have left. thanks in advance!

Akkadius 08-25-2014 02:26 PM

Quote:

Originally Posted by Mill3nia (Post 233269)
here is a screenshot of what happens when I try to load it http://imgur.com/UCwTyLG
any help getting this running would be awesome, been wanting to run another random loot drop server, the old diablo loot tool I used no longer works, this seems to be the only option I have left. thanks in advance!

Need to make sure that your database configuration in your eqemu_config.xml is valid and that you can actually connect to your DB using it.

Mill3nia 08-25-2014 02:40 PM

yeah the configuration is fine, I'm able to run the server, connect, and play no problems. perhaps the format is wrong of my configuration?
and if I turn off mysql, I receive a Cannot Connect error in place of what I posted previously.
Code:

<?xml version="1.0"?>
<server>
        <world>
                <shortname>Roxor</shortname>
                <longname>Roxor</longname>

                <!-- Only specify these two if you really think you need to.  (read: You don't) -->
                <!-- <address>some.server.com</address> -->
                <!-- <localaddress>24.247.126.26</localaddress> -->

                <!-- Loginserver information.  Defaults shown -->
                <loginserver>
                        <host>login.eqemulator.net</host>
                        <port>5998</port>
                        <account></account>
                        <password></password>
                </loginserver>

                <!-- Server status.  Default is unlocked -->
                <!--<locked/>-->
                <!-- <unlocked/> -->

                <!-- Sets the ip/port for the tcp connections.  Both zones and console (if enabled).  Defaults are shown -->
                <tcp ip="127.0.0.1" port="9000" telnet="disable"/>

                <!-- Sets the shared key used by zone/launcher to connect to world -->
                <key>some long random string</key>

                <!-- Enable and set the port for the HTTP service.  Defaults are shown -->
                <http port="9080" enabled="false" mimefile="mime.types" />
        </world>

        <!-- Chatserver (channels) information.  Defaults shown -->
        <chatserver>
                <host>channels.eqemulator.net</host>
                <port>7778</port>
        </chatserver>

        <!-- Mailserver (in-game mail) information.  Defaults shown -->
        <mailserver>
                <host>channels.eqemulator.net</host>
                <port>7778</port>
        </mailserver>

        <zones>
                <defaultstatus>20</defaultstatus>

                <!-- Sets port range for world to use to auto configure zones -->
                <ports low="7000" high="7100"/>
        </zones>

        <!-- Database configuration, replaces db.ini.  Defaults shown -->
        <database>
                <host>127.0.0.1</host>
                <port>3306</port>
                <username>root</username>
                <password>PASSWORD</password>
                <db>peq</db>
        </database>

        <qsdatabase>
                <host>127.0.0.1</host>
                <port>3306</port>
                <username>root</username>
                <password>PASSWORD</password>
                <db>peq</db>
        </qsdatabase>

        <!-- Launcher Configuration -->
        <launcher>
                <!-- <logprefix>logs/zone-</logprefix> -->
                <!-- <logsuffix>.log</logsuffix> -->
                <!-- <exe>zone.exe or ./zone</exe> -->
                <!-- <timers restart="10000" reterminate="10000"> -->
        </launcher>

        <!-- File locations.  Defaults shown -->
        <files>
                <!-- <spells>spells_us.txt</spells> -->
                <!-- <opcodes>opcodes.conf</opcodes> -->
                <!-- <logsettings>log.ini</logsettings> -->
                <!-- <eqtime>eqtime.cfg</eqtime> -->
        </files>
        <!-- Directory locations.  Defaults shown -->
        <directories>
                <!-- <maps>Maps</maps> -->
                <!-- <quests>quests</quests> -->
                <!-- <plugins>plugins</plugins> -->
        </directories>
</server>


Mill3nia 08-26-2014 11:17 AM

any possibly answers? really looking forward to using this =\

looks like the code to go in and read config is wonky, seems to work by bypassing it.

wolfwalkereci 08-26-2014 02:41 PM

Ok random question, do you have the correct modules installed?

Akkadius 08-26-2014 09:49 PM

Quote:

Originally Posted by Mill3nia (Post 233289)
any possibly answers? really looking forward to using this =\

looks like the code to go in and read config is wonky, seems to work by bypassing it.

The code works just fine, I used it for years.

Make sure you have DBI installed correctly.

http://wiki.eqemulator.org/p?Install...ster_Reference

pennywse 08-29-2014 02:38 AM

I am having the same issue.
 
I am having the same issue.. I have went over the instructions at least 30 times and checked to make sure I did everything right. Still get the following error. I can start my server up, and log in and play so I know my eqemu_config settings are okay (at least I hope).

Code:

DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 95.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 97.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 99.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 105.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 107.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 109.
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 133.
Generating General Loot... Please wait...
DBD::mysql::st fetchrow_array failed: fetch() without execute() at DiabloLoot.pl
 line 137.
Items Processed: 0
DBD::mysql::st execute failed: No database selected at DiabloLoot.pl line 186.
Generating Augments Loot... Please wait...
DBD::mysql::st fetchrow_array failed: fetch() without execute() at DiabloLoot.pl
 line 189.

 Loot has been successfully generated
Items Processed: 0


Job took 1 seconds

C:\EQ\EQEmuserver>


pennywse 08-30-2014 02:36 AM

I came up with a solution.
 
I came up with a solution and it might help others that are having the same problem. Change the mysql values to your own and it should execute properly.

Code:

###########################################################
#::: Akka's Diablo Loot
#::: This script is designed to generate thousands of lootdrop entries to be dynamically assigned on top of an NPC's original loot.
#::: This script is ran pre-server-up once, or as many times as you wish until you feel like you have your loot the way you want it.
#::: This script has been designed to be ran as many times as you wish as it will purge all of the created entries each time you run it, only to create loads of new entries based on the new criteria that you have fed it.
#::: All criteria that this script uses is strictly specified in the table `cust_npc_loot_scale` that is shown below
#::: Example: perl DiabloLoot.pl
###########################################################
 
if(!$ARGV[0]) { print "Usage create - creates entries, delete - deletes entries, all - does a complete cycle"; }
else{
    use DBI;
    use DBD::mysql;
    my $start_run = time();
 
    my $Debug = 1;
   
    # CONFIG VARIABLES - Parsed from eqemu_config.xml
    my $confile = "eqemu_config.xml"; #default
    open(F, "<$confile") or die "Unable to open config: $confile\n";
    my $indb = 0;
    while(<f>) {
        s/\r//g;
        if(/<database>/i) { $indb = 1; }
        next unless($indb == 1);
        if(/<\/database>/i) { $indb = 0; last; }
        if(/<host>(.*)<\/host>/i) { $host = $1; }
        elsif(/<username>(.*)<\/username>/i) { $user = $1; }
        elsif(/<password>(.*)<\/password>/i) { $pass = $1; }
        elsif(/<db>(.*)<\/db>/i) { $db = $1; }
    }
   
      # CHANGE THESE VALUES
        $db=your_db;
        $user=your_username;
        $pass=your_password;
       
    # PERL DBI CONNECT
    $dsn = "dbi:mysql:$db:localhost:3306";
    if(!$connect){ $connect = DBI->connect($dsn, $user, $pass); }
    if(!$connect2){ $connect2 = DBI->connect($dsn, $user, $pass); }
    #####################################################
 
    $n = 0;
    while($ARGV[$n]){ if($ARGV[$n] eq "debug"){ $Debug = " " ; } else{ $Debug = ""; } $n++; }
 
    #::: Script Options :::#
    $MaxLevel = 110;
    $BaseLoottableID = 200000;
    $BaseLoottableIDAugs = 210000;
    $TypeMultiplier = 1000;
    $GenName = "Akkas_Diablo_Loot";
    $GenNameAugs = "Akkas_Diablo_Loot_Augs";
 
    ####################
   
    ###  Load Loot Definitions into Memory so it can be quickly iterated through
    print "Loading Loot Definitions...";
    $query_handle = $connect->prepare("SELECT level, type, hp_min, hp_max, drop_chance, loottable_multiplier, min_plat, max_plat, aug_hp_min, aug_hp_max, aug_ac_max, aug_drop_chance, aug_drop_multiplier FROM `cust_npc_loot_scale` ORDER BY `type`, `level`"); $query_handle->execute();
    while(@row = $query_handle->fetchrow_array()){ $LootDefs[$row[0]][$row[1]] = [@row]; }
    print " Done\n\n";
   
    if($ARGV[0] eq "delete" || $ARGV[0] eq "all"){
        for($i = 0; $i <= 1; $i++){
            if($i == 0){ $ID = $BaseLoottableID; $LT = "'General Loot'"; }
            elsif($i == 1) { $ID = $BaseLoottableIDAugs; $LT = "'Aug Loot'"; }
            print "Creating Loot Table ID's\n" if $Debug;
            $query = "DELETE FROM `lootdrop_entries` WHERE `lootdrop_id` >= " . $ID . " AND `lootdrop_id` <= " . ($ID + 3000) . ";";
            $query_handle = $connect->prepare($query);
            my $row = $query_handle->execute(); if($row eq "0E0"){ $row = 0; }
            print "Purging Diablo lootdrop_entries... " . $LT . " rows affected ". $row . "\n";
           
            $query = "DELETE FROM `lootdrop` WHERE `id` >= " . $ID . " AND `id` <= " . ($ID + 3000) . ";"; 
            $query_handle = $connect->prepare($query);
            my $row = $query_handle->execute(); if($row eq "0E0"){ $row = 0; }
            print "Purging Diablo lootdrop... " . $LT . " rows affected ". $row . "\n";
           
            $query = "DELETE FROM `loottable_entries` WHERE `lootdrop_id` >= " . $ID . " AND `lootdrop_id` <= " . ($ID + 3000) . ";";
            $query_handle = $connect->prepare($query);
            my $row = $query_handle->execute(); if($row eq "0E0"){ $row = 0; }
            print "Purging Diablo loottable_entries... " . $LT . " rows affected ". $row . "\n";
           
            $query = "DELETE FROM `loottable` WHERE `id` >= " . $ID . " AND `id` <= " . ($ID + 3000) . ";"; 
            $query_handle = $connect->prepare($query);
            my $row = $query_handle->execute(); if($row eq "0E0"){ $row = 0; }
            print "Purging Diablo loottable... " . $LT . " rows affected ". $row . "\n";
           
        }
        if($ARGV[0] eq "delete"){ return; }
    }
 
    if($ARGV[0] eq "create" || $ARGV[0] eq "all"){
        print "Creating Loot Table ID's\n" if $Debug;
        for($t = 0; $t <= 2; $t++){
            for($i = 1; $i < $MaxLevel; $i++){
           
                ### Create General Loot Tables ###
                $ID = ($BaseLoottableID + ($TypeMultiplier * $t) + $i);
                $query_handle = $connect->prepare("REPLACE INTO `loottable` (id, name, mincash, maxcash, avgcoin) VALUES (?, ?, ?, ?, ?)");
                $query_handle->execute($ID, $ID . "_" . $GenName, ($LootDefs[$i][$t][6] * 1000),($LootDefs[$i][$t][7] * 1000), 0);
                $query_handle = $connect->prepare("REPLACE INTO `lootdrop` (id, name) VALUES (?, ?)");
                $query_handle->execute($ID, $ID . "_" . $GenName);
                $query_handle = $connect->prepare("REPLACE INTO `loottable_entries` (loottable_id, lootdrop_id, multiplier, droplimit, mindrop, probability) VALUES (?, ?, ?, ?, ?, ?)");
                $query_handle->execute($ID, $ID, $LootDefs[$i][$t][5], 1, 0, 100);
                #sprint $LootDefs[$i][$t][5] . "\n";
               
                ### Create Augment Tables ###
                $ID = ($BaseLoottableIDAugs + ($TypeMultiplier * $t) + $i);
                $query_handle = $connect->prepare("REPLACE INTO `loottable` (id, name, mincash, maxcash, avgcoin) VALUES (?, ?, ?, ?, ?)");
                $query_handle->execute($ID, $ID . "_" . $GenNameAugs, 0, 0, 0);
                $query_handle = $connect->prepare("REPLACE INTO `lootdrop` (id, name) VALUES (?, ?)");
                $query_handle->execute($ID, $ID . "_" . $GenNameAugs);
                $query_handle = $connect->prepare("REPLACE INTO `loottable_entries` (loottable_id, lootdrop_id, multiplier, droplimit, mindrop, probability) VALUES (?, ?, ?, ?, ?, ?)");
                $query_handle->execute($ID, $ID, $LootDefs[$i][$t][12], 1, 0, 100);
            }
        }
        if($ARGV[0] eq "create"){ return; }
    }
   
    $query_handle = $connect->prepare("SELECT
        items.id,
        items.minstatus,
        items.`Name`,
        items.augtype,
        items.hp,
        items.mana,
        items.ac,
        items.price,
        items.reclevel,
        items.reqlevel,
        items.itemtype
        FROM
        items
        WHERE hp > 0
        AND augtype = 0
        AND minstatus = 0
        AND hp > " . $LootDefs[1][0][3] . "
        ORDER by hp"); $query_handle->execute();
    print "Generating General Loot... Please wait...\n";
   
    $n = 0;
    while(@row = $query_handle->fetchrow_array()){
        my ($id, $MinStatus, $Name, $AugType, $hp, $mana, $ac, $price, $reclevel, $reqlevel, $itemtype) = ($row[0], $row[1], $row[2], $row[3], $row[4], $row[5], $row[6], $row[7], $row[8],  $row[9], $row[10]);
        print "Loop: $n HP: " . $row[4] . " ID: " .  $row[0] . " NAME: " . $row[2] . " "  . "\n" if $Debug;
       
        $TypeCycle = 0;
        while($TypeCycle <= 2){
            $InRange = 0;
            $LevIter = 1;
            while($LevIter < 250){
                $Mult = 1;
                if($itemtype == 1 || $itemtype == 4 || $itemtype == 35){ $Mult = 1.79 } ### We use a multiplier for 2 handed weapons...
                $HPMIN = $LootDefs[$LevIter][$TypeCycle][2] * $Mult;
                $HPMAX = $LootDefs[$LevIter][$TypeCycle][3] * $Mult;
                if($hp > $HPMIN && $hp < $HPMAX){
                    print "(($BaseLoottableID + ($TypeMultiplier * $TypeCycle)) + $LevIter);\n" if $Debug;
                    $ID = (($BaseLoottableID + ($TypeMultiplier * $TypeCycle)) + $LevIter);
                    if($TypeCycle == 1){ print "INSERTING REG - ITEM ID: " . $id . " HP " . $hp . " "  . $ID . " LVL " . $LevIter . " Type " . $TypeCycle . "\n" if $Debug; }
                    $query_handle2 = $connect2->prepare("INSERT INTO `lootdrop_entries` (lootdrop_id, item_id, item_charges, equip_item, chance, minlevel, maxlevel, multiplier) VALUES (?, ?, ?, ?, ?, ?, ?, ?)");
                    $query_handle2->execute($ID, $id, 1, 1, $LootDefs[$LevIter][$TypeCycle][4], 0, 250, 1);
                    $InRange = 1;
                }
                elsif($InRange == 1){ last; }
                $LevIter++;
            }
            #if($TypeCycle > 0){ print $TypeCycle . "\n"; }
            $TypeCycle++;
        }
        $n++;
    }
   
    print "Items Processed: " . $n . "\n";
   
    ### Process Augment Items ###
    $query_handle = $connect->prepare("SELECT
        items.id,
        items.minstatus,
        items.`Name`,
        items.augtype,
        items.hp,
        items.mana,
        items.ac,
        items.price,
        items.reclevel,
        items.reqlevel
        FROM
        items
        WHERE hp > 0
        AND augtype > 0
        AND minstatus = 0
        ORDER by hp"); $query_handle->execute();
    print "Generating Augments Loot... Please wait...\n";
   
    while(@row = $query_handle->fetchrow_array()){
        my ($id, $MinStatus, $Name, $AugType, $hp, $mana, $ac, $price, $reclevel, $reqlevel) = ($row[0], $row[1], $row[2], $row[3], $row[4], $row[5], $row[6], $row[7], $row[8],  $row[9]);
        print "Loop: $n HP: " . $row[4] . " ID: " .  $row[0] . " NAME: " . $row[2] . " "  . "\n" if $Debug;
        $TypeCycle = 0;
        while($TypeCycle <= 2){
            $InRange = 0;
            $LevIter = 1;
            while($LevIter < 250){
                ### Make sure the definitions fall within the stat ranges specified
                if($hp > $LootDefs[$LevIter][$TypeCycle][8] && $hp < $LootDefs[$LevIter][$TypeCycle][9]){
                    $ID = (($BaseLoottableIDAugs + ($TypeMultiplier * $TypeCycle)) + $LevIter);
                    $query_handle2 = $connect2->prepare("INSERT INTO `lootdrop_entries` (lootdrop_id, item_id, item_charges, equip_item, chance, minlevel, maxlevel, multiplier) VALUES (?, ?, ?, ?, ?, ?, ?, ?)");
                    $query_handle2->execute($ID, $id, 1, 1, $LootDefs[$LevIter][$TypeCycle][11], 0, 250, 1);
                    $InRange = 1;
                }
                elsif($InRange == 1){ last; }
                $LevIter++;
            }
            #if($TypeCycle > 0){ print $TypeCycle . "\n"; }
            $TypeCycle++;
        }
        $n++;
    }
 
    print "\n Loot has been successfully generated\n";
    print "Items Processed: " . $n . "\n";
   
    my $end_run = time();
    my $run_time = $end_run - $start_run;
    print "\n\nJob took $run_time seconds\n";
 
}


Akkadius 08-30-2014 03:13 AM

The problem is that you're not running the script in the directory of the server.

The script needs to be in the root directory of the server and your command line needs to be CD'ed to it as the working directory.

pennywse 08-30-2014 12:36 PM

I was running it in the server directory. I was also running the cmd from the server directory via shift+right click "open command window here".

http://i1035.photobucket.com/albums/...psdef7e1ec.jpg

cleramsey 08-30-2014 03:44 PM

Try opening the command window with the start menu then navigating over to your server directory instead of opening the command window there. I've had to do it that way on a couple things to get them to take my commands properly.


All times are GMT -4. The time now is 09:33 PM.

Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.