[VIP] Core
N

NiGaByte

Argonavt, Кому-то не достаточно мне например, хочу по нику+стим_ид, я даже больше скажу, если он этого не сделает, то его разорвут просьбами, чтобы он это сделал.

Как уже обнова выйдет?
 

Argonavt

Участник
Сообщения
34
Реакции
8
Argonavt, Кому-то не достаточно мне например, хочу по нику+стим_ид, я даже больше скажу, если он этого не сделает, то его разорвут просьбами, чтобы он это сделал.

Есть другие причины кроме "хочу"? Это же усложняет использование випа, для чего это нужно?
 
N

NiGaByte

Argonavt, усложняет использование? пфф, ну не юзайте...
Если по теме, мне будет удобнее общаться с випами когда они не могут сменить ник, ну вот надо мне именно так, не вижу смысла в объяснениях. Мне так проще, понимаешь? Тебе вот легче когда без этого, а мне !на оборот, понимаешь?

P.S Система будет модульная верно? В чём проблема? Не напрягай побратский, не в обиду сказано, будет не нужно отключишь модуль...
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #44
Решил оставить все 3 типа авторизации, просто чуток изменю бд. Админ-флаги и группы будут модулем.
Как уже обнова выйдет?
Тест версию я дал. По немногу переделываю, исправляю баги ветки 1.1.Х
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #45
Так что, делать так?
Как вариант, группу, пароль (+ ключ) и время перенести в таблицу vip_users_overrides.
Тогда можно будет указывать разные группы, пароли и время на разные сервера.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #46
Короче время и группу перенес в таблицу `vip_overrides`. Как быть с паролем? 1 пароль на все сервера или на каждом свой ?
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #48
Just-Skill, не буду делать я квар т.к. это нужно сделать и забыть, не будут же зря столбцы в бд гулять
 

Arthur Don

Участник
Сообщения
1,696
Реакции
256
R1KO, пусть будет один пароль на все сервера
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #51
Такс, дела такие. В тестовом вип и в будующем модуле выдачи VIP по флагам/группам игроки при входе получают вип статус. Но этот статус временный, его нет в бд, хотя он может иметь время окончания.
В общем при выдаче випки (через меню, по ключу) я могу проверять временный вип или нет. Но тогда с флагами будет заморочка. Прийдется проверять еще его тип авторизации. Но тут возникает такая фигня что випу у которого права по флагу/группе или можно выдать випку или нельзя (через админку/по ключу).
Как бытЬ?
 

Argonavt

Участник
Сообщения
34
Реакции
8
Не совсем понял логику. Зачем тестовому випу присваивать временный статус мимо бд?
Если игрок получает тестовый вип, пусть сразу попадает в бд.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #53
Argonavt, людям не нравилось что тест випы мешаются с другими.
 
Последнее редактирование:

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #54
Хочу вместо удалить игрока, изменить игрока, список игроков сделать 1 пункт.
Тоесть так:
1. Добавить VIP-игрока
2. Список VIP-игроков
3. Перезагрузить VIP-игроков
4. Перезагрузить настройки VIP.

При входе в список будет выводиться список. При выборе игрока уже буду кнопки: удалить, изменить время, группу, пароль (как сейчас в изменить игрока).

Еще думаю сделать чтобы сначала выводились игроки которые онлайн и в после них кнопка "Показать всех" и тогда уже из бд будут выводиться все игроки (по 20 человек, затем идет кнопка "Показать еще").

Типы авторизации будут показываться как было оговорено ранее.

Еще такие ньюансы при работе с MySQL:
При работе с вип игроками доступны только игроки текущего сервера.
При удалении игрока он удаляется только с текущего сервера. Если после удаление у него нет прав на других серверах - он удаляется полностью.
Пароль и ключ пароля 1 на все сервера.



Вот текущая структура бд:
PHP:
if (g_bDBMySQL)
	{
		SQL_TQuery(g_hDatabase, SQL_Callback_ErrorCheck,	"CREATE TABLE IF NOT EXISTS `vip_users` (\
																		`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,\
																		`auth` VARCHAR(64) UNIQUE NULL default NULL,\
																		`name` VARCHAR(64) NOT NULL default 'unknown',\
																		`auth_type` TINYINT(2) UNSIGNED NOT NULL default '0',\
																		`pass_key` VARCHAR(64) default NULL,\
																		`password` VARCHAR(64) default NULL,\
																		PRIMARY KEY (`id`)) ENGINE=InnoDB default CHARSET=utf8 AUTO_INCREMENT=1;");

		SQL_TQuery(g_hDatabase, SQL_Callback_ErrorCheck,	"CREATE TABLE IF NOT EXISTS `vip_overrides` (\
																		`index_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,\
																		`user_id` INT(10) UNSIGNED NOT NULL,\
																		`server_id` INT(10) UNSIGNED NOT NULL,\
																		`group` VARCHAR(64) default NULL,\
																		`expires` INT(10) UNSIGNED NOT NULL default '0',\
																		PRIMARY KEY  (`index_id`)) ENGINE=InnoDB default CHARSET=utf8 AUTO_INCREMENT=1;");
	}
	else
	{
		SQL_TQuery(g_hDatabase, SQL_Callback_ErrorCheck,	"CREATE TABLE IF NOT EXISTS `vip_users` (\
																		`id` INTEGER PRIMARY KEY AUTOINCREMENT,\
																		`auth` VARCHAR(32) UNIQUE NULL default NULL,\
																		`name` VARCHAR(64) NOT NULL default 'unknown',\
																		`ip` VARCHAR(32) default NULL,\
																		`auth_type` INTEGER UNSIGNED NOT NULL default '0',\
																		`pass_key` VARCHAR(64) default NULL,\
																		`password` VARCHAR(64) default NULL,\
																		`group` VARCHAR(64) default NULL,\
																		`expires` INTEGER UNSIGNED NOT NULL default '0');");
	}
В MySQL хочу убрать `index_id` и сделать связку `user_id` + `server_id` но хз как правильно сделать (думаю через CONSTRAINT). Кто подскажет?
 

Argonavt

Участник
Сообщения
34
Реакции
8
CREATE TABLE IF NOT EXISTS `vip_overrides` (
`user_id` int(10) unsigned NOT NULL,
`server_id` int(10) unsigned NOT NULL,
`group` varchar(64) DEFAULT NULL,
`expires` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`user_id`,`server_id`),
CONSTRAINT `vip_overrides_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `vip_users` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #56
Argonavt, а вообще с этого будет смысл? Нужно ли оно?
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #58
Argonavt, каким образом?
 

Argonavt

Участник
Сообщения
34
Реакции
8
Например, невозможно будет удалить юзера, из vip_users, без удаления этих же юзеров с таблицы vip_overrides. То есть, юзер, в обеих таблицах рассматривается как один объект. Та и наглядности больше придает, сразу видно на что ссылается запись
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • Автор ресурса
  • #60
Argonavt, А как это сделать? Я с этим еще не работал.
 
Сверху Снизу