Лучший метод для хранения различной статистики в базе данных - PullRequest
2 голосов
/ 18 января 2011

Я разрабатываю игру, в которой я буду хранить все действия, которые пользователь выполняет со своим персонажем, в качестве статистики.Если игрок решает атаковать своего персонажа оружием ближнего боя.Мы увеличиваем счетчик, который подсчитывает количество раз, когда персонаж выполнял рукопашную атаку.Мы также увеличиваем счетчик, который подсчитывает, сколько раз они атаковали этим конкретным оружием.Кроме того, персонаж может увеличиваться в уровне, и все эти статистические данные должны быть записаны на уровне для персонажа.Персонаж также будет иметь атрибуты.Например, скорость, стойкость и т. Д. При каждом обращении к одному из значений этого атрибута я буду увеличивать счетчик для каждого уровня.

У меня ограниченный бюджет, поэтому я использую SQL Server Express для этого проекта.,Я знаю, как справиться с этой задачей, используя только свой опыт работы с базами данных, но, по общему признанию, я никогда не записывал этот тип данных и до такой степени.Может ли кто-нибудь предложить какие-либо советы или рекомендации, которые могут показаться необычными для тех, кто имеет опыт работы с базами данных бизнес-приложений?

Когда все сделано, данные должны быть легко объединены и выбраны для использования в различных необходимых вычислениях как в игре, так икак часть статистической панели, которая будет частью игры.

Если у кого-то есть какие-либо конкретные предложения по схеме, это будет полезно.

Спасибо

1 Ответ

1 голос
/ 18 января 2011

Это действительно так же просто, как привязать некоторый код к действию для обновления статистики.

Абсолютно самый быстрый способ - с триггером, потому что он сокращает количество обращений к серверу и фактическичертовски приятно "инкапсуляция" кода и данных.Но триггеры SQL Server немного причудливы, они только на уровне операторов, поэтому вы также можете делать это в коде.

В коде у вас такая же идея, предположительно, некоторый код класса отвечает за действие с элементом,Когда предпринимаются какие-либо действия, которые должны быть записаны, вызовите подпрограмму обновления статистики, в которой указаны игрок, предмет и другие параметры, достаточно, чтобы средство обновления статистики могло выяснить, к какой таблице / столбцу / строке перейти и какую статистику обновить.*

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...