|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Support::Linux Servers Support forum for Linux EQEMu users. |
08-25-2010, 06:50 PM
|
Fire Beetle
|
|
Join Date: Aug 2010
Posts: 14
|
|
Everything is looking good; I have inventory, and things appear to be running smoothly. Thanks for the help amraist!
Looking over erde's BSD patches, I see I did almost exactly what erde did, except instead of switching up to an equivalent abs function, I opted to simply flip the sign of the integers, given they're all known to be below 0 and there's no even-root calls.
|
08-26-2010, 08:40 AM
|
Fire Beetle
|
|
Join Date: Aug 2005
Posts: 29
|
|
Glad to hear its working for you. I have a startup script I wrote if you are interested. It works except on startup it seems(last time my jail started, my launcher didn't startup), and I haven't gotten around to tracking that down.
|
08-26-2010, 08:39 PM
|
Fire Beetle
|
|
Join Date: Aug 2010
Posts: 14
|
|
I certainly won't turn down free startup scripts
It seems I may have spoken too soon about everything working great. In my last post, I logged in, saw I had inventory, figured everything was great, logged out and went to sleep. Since, I have discovered I am now unable to move, or if I can move there's no gravity. And no sky. I suspect something is up with the zone launch script.
|
08-27-2010, 09:43 AM
|
Fire Beetle
|
|
Join Date: Aug 2005
Posts: 29
|
|
Did download the maps?
|
08-27-2010, 12:09 PM
|
Fire Beetle
|
|
Join Date: Aug 2010
Posts: 14
|
|
OK, I think I'm starting to understand the correlation between DB and EQEmu revisions here, perhaps you can confirm?
Even when doing a brand-new install, simply installing the base peqdb as obtained via CVS is not sufficient. The super-mega DB, peqdb_rev1589.sql, is applied. Then, any sql file with a revision number listing in the utils/sql/svn directory of the source is applied? I just want to make sure I understand this going forward.
Thank you for the help!
|
|
|
|
08-27-2010, 01:04 PM
|
Developer
|
|
Join Date: Feb 2004
Location: UK
Posts: 1,540
|
|
When Cavedude releases a version of the PEQ database, it is generally compatible with the current version of the server source code on the day he releases it.
As a new PEQ database is only generally released every month or two, any source code changes that are made in between PEQ DB releases, that require a database change,
will require you to source in the changes from the source code SVN, utils/sql/svn directory.
E.g. July 9th, CD releases PEQ DB Rev 1589, compatible with the latest available source code on that date, Rev 1589.
Source code developers commit changes over the following days and weeks, some of which require database changes, e.g. I commit source
Rev 1618 on 8th August which requires a change to the zone table structure.
If you upgrade from Rev 1589 to Rev 1618 of the source (or are a new user who has just installed the Rev1589 DB and compiled the Rev1618 source),
then you will need to apply any SQL changes that have have prefixes betwen 1590 and 1618 from the source code SVN.
|
|
|
|
08-27-2010, 02:05 PM
|
|
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
You only want to apply any SQL from that folder for revisions that came AFTER the db revision you are running. So, in your case that would be any SQL higher than 1589. Also, if there are any SQL files for a revision LATER than the actual source code revision you are running, you do not want to apply those.
|
08-28-2010, 03:17 AM
|
Fire Beetle
|
|
Join Date: Aug 2010
Posts: 14
|
|
Thanks, both of those explanations make a lot of sense.
With those sql updates applied, the world and zones are now running properly.
I can move.
I can interact with NPC's.
I have inventory.
There is gravity.
There is sky.
There is combat.
There is a brass key.
> get key
|
|
|
|
08-29-2010, 09:44 AM
|
Fire Beetle
|
|
Join Date: Aug 2005
Posts: 29
|
|
Here is my startup script. It will start world, ucs, eqlogin(login server) and will use eqlauncher to start up zones. So you will need to have one setup in the database. If you notice any bugs, please let me know.
Code:
#!/bin/sh
# PROVIDE: eqemu
# REQUIRE: LOGIN
# KEYWORD: shutdown
. /etc/rc.subr
name="eqemu"
start_cmd="${name}_start $2"
stop_cmd="${name}_stop $2"
restart_cmd="${name}_restart $2"
status_cmd="${name}_status $2"
extra_commands="status cleanipc"
determine_procs_cmd="eqemu_determine_procs"
cleanipc_cmd="${name}_cleanipc"
eqemu_enable=${eqemu_enable:-"YES"}
eqemu_home=${eqemu_home:-"/usr/local/eqemu"}
eqemu_user=${eqemu_user:-"eqemu"}
eqemu_group=${eqemu_group:-"eqemu"}
eqemu_world=${eqemu_world:-"NO"}
eqemu_eqlaunch=${eqemu_eqlaunch:-"NO"}
eqemu_eqlaunch_args=${eqemu_eqlaunch_args:-"zone"}
eqemu_ucs=${eqemu_ucs:-"NO"}
eqemu_eqlogin=${eqemu_eqlogin:-"NO"}
eqemu_world_args=${eqemu_world_args:-""}
eqemu_eqlogin_args=${eqemu_eqlogin_args:-""}
eqemu_ucs_args=${eqemu_ucs_args:-""}
rcvar=`set_rcvar`
load_rc_config $name
eqemu_determine_procs()
{
unset "eqemu_procs"
if [ "${_rc_prefix}" = "one" ] ; then
case "$1" in
eqlogin)
eqemu_procs=$1
;;
world)
eqemu_procs=$1
;;
eqlaunch)
eqemu_procs=$1
;;
ucs)
eqemu_procs=$1
;;
*)
echo "Usage: ./eqemu one(start|stop|restart) (world|eqlaunch|ucs|eqlogin) you must also specify a valid daemon."
;;
esac
else
if checkyesno eqemu_eqlogin ; then
eqemu_procs="${eqemu_procs}eqlogin "
fi
if checkyesno eqemu_world ; then
eqemu_procs="${eqemu_procs}world "
fi
if checkyesno eqemu_eqlaunch ; then
eqemu_procs="${eqemu_procs}eqlaunch "
fi
if checkyesno eqemu_ucs ; then
eqemu_procs="${eqemu_procs}ucs "
fi
fi
}
eqemu_cleanipc()
{
eqemu_procs="world eqlaunch zone"
for proc in ${eqemu_procs}; do
if [ "`check_pidfile /var/run/eqemu${proc}.pid $eqemu_home/$proc`" != "" ] ; then
echo "Processes running; skipping cleanipc..."
return
fi
done
echo "Cleaning IPC..."
${eqemu_home}/cleanipc > /dev/null 2>&1
}
eqemu_start()
{
eqemu_determine_procs $1
for name in ${eqemu_procs}; do
echo "Starting EQEmu ${name}..."
cd ${eqemu_home}
eval eqprocargs=\$eqemu_${name}_args
if ! [ -e /var/run/eqemu_${name}.pid ]; then
touch /var/run/eqemu_${name}.pid
chown $eqemu_user:$eqemu_user /var/run/eqemu_${name}.pid
fi
/usr/sbin/daemon -f -p /var/run/eqemu_${name}.pid -u $eqemu_user $eqemu_home/$name $eqprocargs
done
}
eqemu_stop()
{
unset "stop_cmd"
eqemu_determine_procs $1
eqemu_procs=$(reverse_list ${eqemu_procs})
for name in ${eqemu_procs}; do
command=$eqemu_home/$name
run_rc_command stop
done
}
eqemu_restart()
{
eqemu_restart_prefix=${_rc_prefix}
run_rc_command ${eqemu_restart_prefix}stop $1
if [ "${eqemu_restart_prefix}" != "one" ] ; then run_rc_command ${_rc_prefix}cleanipc $1; fi
run_rc_command ${eqemu_restart_prefix}start $1
}
eqemu_status()
{
unset "status_cmd"
eqemu_determine_procs $1
for name in ${eqemu_procs}; do
command=$eqemu_home/$name
run_rc_command status
done
}
run_rc_command "$1"
|
|
|
|
09-07-2010, 07:27 AM
|
Fire Beetle
|
|
Join Date: Oct 2003
Posts: 4
|
|
Quote:
Originally Posted by Posix
Found it! zone/perl_object.cpp was not being compiled. Added an entry into the Makefile (and the Makefile.in and Makefile.am in the parent zone directory for future proofing) for perl_object and now it compiles and runs as expected.
|
and exactly how did you do that? im haveing the same problem.
|
09-07-2010, 09:38 AM
|
Fire Beetle
|
|
Join Date: Aug 2005
Posts: 29
|
|
I use grep to find where the missing function is defined, and then add that file to the makefiles. You can also figure it out if you are paying attention to the svn logs. If you are using erde's autobuild, here is a patch you can apply after extracting and before running any of his autobuild commands:
Code:
Index: zone/Makefile.am
===================================================================
--- zone/Makefile.am (revision 33)
+++ zone/Makefile.am (revision 63)
@@ -221,6 +221,7 @@
perl_mob.h \
perl_npc.cpp \
perl_npc.h \
+ perl_object.cpp \
perl_perlpacket.cpp \
perl_perlpacket.h \
perl_PlayerCorpse.cpp \
|
Thread Tools |
|
Display Modes |
Linear Mode
|
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 10:41 PM.
|
|
|
|
|
|
|
|
|
|
|
|
|