|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Support::Windows Servers Support forum for Windows EQEMu users. |
01-19-2013, 11:47 PM
|
|
Dragon
|
|
Join Date: Dec 2009
Posts: 719
|
|
the rule itself is optional, i believe. if you were to take it out and that fixes it, it would probably confirm the aforementioned boolean issue.
__________________
I muck about @ The Forge.
say(rand 99>49?'try '.('0x'.join '',map{unpack 'H*',chr rand 256}1..2):'incoherent nonsense')while our $Noport=1;
|
01-20-2013, 12:22 AM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
I'll give it a shot then
|
01-20-2013, 12:33 AM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
With the Bots:BotQuest rule removed and the bot_spawn_limit entry removed the server gives me the "You cannot spawn any bots" message.
|
01-20-2013, 12:37 AM
|
Demi-God
|
|
Join Date: Aug 2010
Posts: 1,742
|
|
Make sure you completely rebuilt after switching to bots as well. Try 'make clean' then 'make' to force everything to be rebuilt.
I haven't really looked at it, but KLS mentioned that part of the source is built into a library. If that library didn't get rebuilt and any of the rule stuff is in it then maybe there's an issue with the rule arrays and the data is being read from the wrong place. Long shot, but worth a try.
|
01-20-2013, 02:59 AM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
my most recent rebuild is of r2432 in a fresh build directory (i.e. it was empty prior to copying the source files in). Builds can't get much cleaner than that, but I still run "make clean" prior to running "make" out of habit.
So far in the various db changes, it appears that my server only cares what's in quest_globals bot_spawn_limit. As long as that exists and is non-0, then it will allow me to spawn my bots regardless of what's in rule_values > Bots:BotQuest, even if Bots:BotQuest is missing.
As far as the library file(s) goes, my previous builds (prior to cmake change) didn't have a libCommon.a file (in addition to the libEMuShareMem.so file). I've included this file in the server directory a long with the other Binary files, but it doesn't seem to make a difference (bot spawning wise) whether or not its there.
|
01-20-2013, 06:18 AM
|
Demi-God
|
|
Join Date: Aug 2010
Posts: 1,742
|
|
The libCommon.a library doesn't need to be in the server directory, it is created/used when compiling. I just wanted to make sure it had been rebuilt in case that might be the issue.
What does it say when you type #rules values bots in the game? Do the values agree with the corresponding values in the database?
|
01-20-2013, 02:34 PM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
hmmm
it says "Failed to list rules!" O_o
The plot thickens. To help narrow this down, I ran the '#rules values' command for other categories to make sure it's working, and all of the ones I tried returned accurate information. I ran '#rules values aa' '#rules values adventure' '#rules values bazaar' '#rules values character' '#rules values water' etc, and all of them returned information that matched what's in the db.
Just, running '#rules values bots' returns "Failed to list rules!"
|
01-20-2013, 03:45 PM
|
Administrator
|
|
Join Date: Sep 2006
Posts: 1,348
|
|
I did make a fix to bots in the cmake script, it wasn't -DBOTS on the common lib. Though I question why common needs bots related stuff in it.
|
01-20-2013, 04:20 PM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
roger that!
I'll grab the new source and give it a go!
|
01-20-2013, 05:07 PM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
I just had a couple of runs at it. With r2433 unmodified, world would repeated core dump (crash) on me.
So, I removed the EQEMU_ENABLE_BOTS lines from the common/CMakeList.txt file and recompiled. So, common back to the way it was and world appears to be running normally again.
Unfortunately, bots are still the way they were before
I'll keep plugging away at this to see if i can figure something out
|
01-20-2013, 05:30 PM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
I think i found the sticking point. In the old system we had to modify the world/makefile and add -DBOTS to it. I was just looking that the current world/CMakeLists.txt file and found that it doesn't have the "EQEMU_ENABLE_BOTS" conditional. I've added it to mine and recompiled, but the object files don't seem to be getting compiled right. I think i'm missing something else...
still digging
|
01-20-2013, 05:41 PM
|
Developer
|
|
Join Date: Feb 2004
Location: UK
Posts: 1,540
|
|
Try this patch:
Code:
Index: world/CMakeLists.txt
===================================================================
--- world/CMakeLists.txt (revision 2433)
+++ world/CMakeLists.txt (working copy)
@@ -67,6 +67,10 @@
ADD_DEFINITIONS(-DWORLD)
+IF(EQEMU_ENABLE_BOTS)
+ ADD_DEFINITIONS(-DBOTS)
+ENDIF(EQEMU_ENABLE_BOTS)
+
TARGET_LINK_LIBRARIES(world Common ${PERL_LIBRARY} debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE})
IF(MSVC)
i.e.
Add:
Code:
IF(EQEMU_ENABLE_BOTS)
ADD_DEFINITIONS(-DBOTS)
ENDIF(EQEMU_ENABLE_BOTS)
After ADD_DEFINITIONS(-DWORLD) in the world/CMakeLists.txt file
|
01-20-2013, 06:17 PM
|
Hill Giant
|
|
Join Date: Sep 2009
Posts: 147
|
|
yeah... I just finished doing that with world/CMakelists.txt and was just about to post up my diff patch file. You beat me to it though.
That patch + Rev 2433 has bots working like it was before the change to CMake now. "#rules values bots" now pulls up all of the Bots:*** settings and I don't need anything in quest_globals to spawn my bots
for the record here's the diff I made on that file:
Code:
--- world/CMakeLists.txt (Rev 2433)
+++ world/CMakeLists.txt (working copy)
@@ -67,6 +67,10 @@ ADD_EXECUTABLE(world ${world_sources} ${
ADD_DEFINITIONS(-DWORLD)
+IF(EQEMU_ENABLE_BOTS)
+ ADD_DEFINITIONS(-DBOTS)
+ENDIF(EQEMU_ENABLE_BOTS)
+
TARGET_LINK_LIBRARIES(world Common ${PERL_LIBRARY} debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE})
IF(MSVC)
Thanks again for all the help and hard work everyone
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 12:45 AM.
|
|
|
|
|
|
|
|
|
|
|
|
|