PDA

View Full Version : cant create guilds


eqemuross
09-13-2009, 04:50 AM
I am having this same exact issue:

"We are unable to get guilds working properly. When I try to #guildcreate it does not put the character in the guild, but does create it. I have to actually go into the database to put the character into the guild, it does not work via commands.

Also when a person is in the guild, as the leader, when they try to invite someone else it gives them the error that the database may be inconsistent...

Does anyone know how to fix this problem? I have even updated to a newer database and I am still having this issue. We are currently using Rev946."

http://www.projecteq.net/phpBB2/viewtopic.php?t=8431&highlight=

I've had it with 946 and 973. I have all the right tables in my database... the guild gets created in the 'guilds' table but it wont put the members in the guild under 'guild_members'.

Any help would greatly be appreciated!

-ross

eqemuross
09-13-2009, 06:33 PM
The other person who has this issue (Grim from the Order of Sin server) also has a PvP server... could this be the problem? My server has PvP enabled as well.

leslamarch
09-13-2009, 07:33 PM
This is just a wild guess and I have never played with a PVP server but add these tables to your DB if you dont have them...

DROP TABLE IF EXISTS `guild_alliances`;

CREATE TABLE `guild_alliances` (
`id` int(11) NOT NULL auto_increment,
`guildone` int(11) NOT NULL default '0',
`guildtwo` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;


DROP TABLE IF EXISTS `guild_controllers`;

CREATE TABLE `guild_controllers` (
`id` int(11) NOT NULL auto_increment,
`npc_id` int(11) NOT NULL default '0',
`owned_guild_id` int(11) NOT NULL default '0',
`zoneid` int(11) NOT NULL default '0',
`terrainarea` varchar(64) character set utf8 NOT NULL default '',
PRIMARY KEY (`id`),
UNIQUE KEY `npc_id` (`npc_id`),
UNIQUE KEY `zoneid` (`zoneid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;

trevius
09-13-2009, 07:49 PM
You can make guilds by doing the following command:

#guild create <leadername> <guildname>

Without the < and > of course and also no quotes needed or anything like that for guildnames.

jimm0thy
09-13-2009, 08:36 PM
I get the same errors running a pve server.

eqemuross
09-13-2009, 10:09 PM
You can make guilds by doing the following command:

#guild create <leadername> <guildname>

Without the < and > of course and also no quotes needed or anything like that for guildnames.


Like I said, I've used all of these commands... the guild gets created in the database, but the leader/members don't get added. If I manually add a guild leader and he tries to invite someone, there is an error as well.

eqemuross
09-14-2009, 04:09 AM
This is just a wild guess and I have never played with a PVP server but add these tables to your DB if you dont have them...

DROP TABLE IF EXISTS `guild_alliances`;

CREATE TABLE `guild_alliances` (
`id` int(11) NOT NULL auto_increment,
`guildone` int(11) NOT NULL default '0',
`guildtwo` int(11) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;


DROP TABLE IF EXISTS `guild_controllers`;

CREATE TABLE `guild_controllers` (
`id` int(11) NOT NULL auto_increment,
`npc_id` int(11) NOT NULL default '0',
`owned_guild_id` int(11) NOT NULL default '0',
`zoneid` int(11) NOT NULL default '0',
`terrainarea` varchar(64) character set utf8 NOT NULL default '',
PRIMARY KEY (`id`),
UNIQUE KEY `npc_id` (`npc_id`),
UNIQUE KEY `zoneid` (`zoneid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC;


added this table.... same errors.

anyone have any ideas? looks like a few of us have these issues.. it's really hurting my server w/ out having guilds implemented :(

trevius
09-14-2009, 08:18 AM
We are unable to get guilds working properly. When I try to #guildcreate it does not put the character in the guild, but does create it.

Technically, you said that you tried using the #guildcreate command, which is not the same as using #guild with the "create" option like I showed above.

eqemuross
09-14-2009, 02:13 PM
Technically, you said that you tried using the #guildcreate command, which is not the same as using #guild with the "create" option like I showed above.

Unable to set the guild leader's guild in the database. Your going to have to run #guild set.


I run #guild set charname guildid and:

Error putting 'X' into guild 1

Capheus
09-14-2009, 07:26 PM
I am running 946 also and having the exact same problems, This is not an operator #guild create error. What worked for me before (535 I think) doesn't work now.

eqemuross
09-14-2009, 08:18 PM
Is everyone thats having this issue hosting their server on Windows 64bit? It's the only thing another person and I with this problem have in common.

eqemuross
09-14-2009, 08:18 PM
I am running 946 also and having the exact same problems, This is not an operator #guild create error. What worked for me before (535 I think) doesn't work now.

I had the problem with 946 and 973... only two sources/dbs I've touched.

Tharkun
09-14-2009, 09:07 PM
i had an issue with this using #guildcreate, i dont know if that command should no longer be used or what... but i ended up deleting that entry and using #guild create <leadername> <guildname>, and everything was fine after that.

jimm0thy
09-14-2009, 11:33 PM
Is everyone thats having this issue hosting their server on Windows 64bit? It's the only thing another person and I with this problem have in common.

I am, Vista 64bit

eqemuross
09-15-2009, 12:32 AM
I am, Vista 64bit

this has to be the issue.... its the only thing 3 of us have had in common

Capheus
09-15-2009, 07:59 PM
I am using Vista 32bit with EMU946 and PEQ946

eqemuross
09-15-2009, 08:31 PM
I am using Vista 32bit with EMU946 and PEQ946

weird... i wonder what is causing this :(

trevius
09-15-2009, 09:43 PM
i had an issue with this using #guildcreate, i dont know if that command should no longer be used or what... but i ended up deleting that entry and using #guild create <leadername> <guildname>, and everything was fine after that.

Did any of you guys try this?

eqemuross
09-15-2009, 10:13 PM
Did any of you guys try this?

yeah.. here is what happens though:

it creates the guild, but does not put the leader in the guild. i had to manually put the char in the guild through the database and then i couldn't invite anyone new.

trevius
09-16-2009, 02:45 AM
Probably the combination of you using "#guildcreate" instead of "#guild create" along with you manually changing stuff in your tables is what is causing your problems. You should try changing it back and removing all guilds in the table and then do "#guild create yourname Test" and see what happens.

eqemuross
09-16-2009, 03:11 AM
Probably the combination of you using "#guildcreate" instead of "#guild create" along with you manually changing stuff in your tables is what is causing your problems. You should try changing it back and removing all guilds in the table and then do "#guild create yourname Test" and see what happens.

Erased all data in guild tables...

Unable to set guild leader's guild in database. Your going to have to run #guild set.

I run #guild set...

Error putting 'charactername' into guild 1

Capheus
09-16-2009, 05:11 PM
Ya thats the same thing I am getting here too.

eqemuross
09-16-2009, 07:24 PM
Ya thats the same thing I am getting here too.

this is frustrating

Wesell
09-16-2009, 10:21 PM
Could one of you post the log entries that are generated when you try to set a character's guild?

nightsta69
09-17-2009, 01:47 PM
[09.17. - 12:39:18] [GUILDS__ERROR] Error Changing char 1 to guild 1 'REPLACE INTO guild_members (char_id,guild_id,rank) VALUES(1,1,0)': #1364: Field 'public_note' doesn't have a default value


I believe this is the problem. manually setting a character into the guild, with a value in public_note sets that character into the guild.

nightsta69
09-17-2009, 02:14 PM
DROP TABLE IF EXISTS `guild_members`;
CREATE TABLE `guild_members` (
`char_id` int(11) NOT NULL default '0',
`guild_id` mediumint(8) unsigned NOT NULL default '0',
`rank` tinyint(3) unsigned NOT NULL default '0',
`tribute_enable` tinyint(3) unsigned NOT NULL default '0',
`total_tribute` int(10) unsigned NOT NULL default '0',
`last_tribute` int(10) unsigned NOT NULL default '0',
`banker` tinyint(3) unsigned NOT NULL default '0',
`public_note` text NOT NULL default '',
PRIMARY KEY (`char_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

that fixes the guild creation problem. I just did it this way, cause my mysql isn't the best. i'm sure one of the other folks will just show you how to update the table that is currently there. hope that helps.

eqemuross
09-17-2009, 03:44 PM
1101 BLOB/TEXT column 'public_note' can't have a default value is what I get when I run that query

nightsta69
09-17-2009, 04:06 PM
hmm, thats weird. again my mysql isn't all that great. here is my guild_members.sql that i used to make it work. maybe there is somethin extra in it that made it work.

guild_members.rar (ftp://bondsofstrength.com/guild_members.rar)

eqemuross
09-17-2009, 04:15 PM
thank you.

i imported it... going to test it out

eqemuross
09-17-2009, 04:17 PM
same error. where can i find the log?

eqemuross
09-17-2009, 04:19 PM
only thing i could find:

[09.17. - 16:08:42] [GUILDS__ERROR] Found rank 2 for non-existent guild 1, skipping.
[09.17. - 16:08:42] [GUILDS__ERROR] Found rank 2 for non-existent guild 2, skipping.
[09.17. - 16:08:42] [GUILDS__ERROR] Found rank 1 for non-existent guild 2, skipping.
[09.17. - 16:08:42] [GUILDS__ERROR] Found rank 0 for non-existent guild 2, skipping.
[09.17. - 16:08:42] [GUILDS__ERROR] Found rank 1 for non-existent guild 1, skipping.
[09.17. - 16:08:42] [GUILDS__ERROR] Found rank 0 for non-existent guild 1, skipping.

nightsta69
09-17-2009, 04:32 PM
I found those errors in the zones log file. and I really don't know why its not working, I use navicat to source most of my stuff as its easier to understand hehe.

Wesell
09-17-2009, 04:57 PM
Change the sql-mode setting in my.ini to a blank string. MySQL defaults this setting to STRICT_TRANS_TABLES on Windows and blank on Linux so the behavior of the storage engine is slightly different (disallowing default values on Blob and Text type fields).

Wesell
09-17-2009, 05:00 PM
Also the MySQL documentation indicates that not allowing default values on these types is the correct behavior so it would probably be better to fix up the source to insert a value into these fields (even if that value is just a blank string).

lich2594
09-17-2009, 05:17 PM
So has anyone figured this issue out? I just ordered a 32 bit system, installed and I am still having this issue...

We are on the newest revision, I just compiled it.
ActivePearl 5.10
MySQL 5.1
Windows XP 32bit



<-- GRIM From "The Order of Sin" server.

lich2594
09-17-2009, 05:33 PM
hmm, thats weird. again my mysql isn't all that great. here is my guild_members.sql that i used to make it work. maybe there is somethin extra in it that made it work.

guild_members.rar (ftp://bondsofstrength.com/guild_members.rar)

THANK YOU! This fixed guild creation!

However we are still not able to see guild members in the roster. Would you mind uploading the other guild fields for me?

Wesell
09-17-2009, 05:36 PM
So has anyone figured this issue out? I just ordered a 32 bit system, installed and I am still having this issue...

Yeah you could use the suggestions posted or you could use a hack like this to get guild membership working.


Index: EQEmuServer/common/guild_base.cpp
================================================== =================
--- EQEmuServer/common/guild_base.cpp (revision 978)
+++ EQEmuServer/common/guild_base.cpp (working copy)
@@ -651,7 +651,7 @@

if(guild_id != GUILD_NONE) {
if (!m_db->RunQuery(query, MakeAnyLenString(&query,
- "REPLACE INTO guild_members (char_id,guild_id,rank) VALUES(%d,%d,%d)",
+ "REPLACE INTO guild_members (char_id,guild_id,rank,public_note) VALUES(%d,%d,%d,'')",
charid, guild_id, rank), errbuf))
{
_log(GUILDS__ERROR, "Error Changing char %d to guild %d '%s': %s", charid, guild_id, query, errbuf);

That's not really a proper fix. Whatever public_note is supposed to be doing might get screwed up if you did this, but at least you would be able to add characters to guilds again.

eqemuross
09-17-2009, 07:16 PM
Change the sql-mode setting in my.ini to a blank string. MySQL defaults this setting to STRICT_TRANS_TABLES on Windows and blank on Linux so the behavior of the storage engine is slightly different (disallowing default values on Blob and Text type fields).

so this would be correct?

# Set the SQL mode to strict
sql-mode=

eqemuross
09-17-2009, 07:45 PM
nightsta69's table ended up working for me. thank you all.

nightsta69
09-17-2009, 07:56 PM
nightsta69's table ended up working for me. thank you all.

glad I could help :D

eqemuross
09-17-2009, 08:21 PM
glad I could help :D

thanks again... EQEmu community has been more than helpful with me on my project.

thank you everyone!