Quiz Memorial Forum

Welcome Guest ( Log In | Register )

> Внимание!

Напоминаем, по причине завершения работы зеленоградской IRC-сети, проект IRC-игры "Викторина" перемещен в IRC-сеть irc.dalnet.ru.

 
Reply to this topicStart new topic
> Предложения
Kreon
post Apr 8 2006, 08:32 AM
Post #1


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



Любые предложения по модернизации движка игры и их обсуждение здесь.

Я тут подумываю о том, чтобы сделать суперигру доступной только при количестве активных игроков больше одного, а если играет один человек - то играющий просто не будет получать право на суперигры. Что думаете?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Anonymous
post Apr 11 2006, 09:25 AM
Post #2


Unregistered









и все-таки надо увеличить время ответа на суперигру..так как за такое короткое время ответ может дать только тот игрок который выучил все ответы... надо дать время игроку на обдумывание вопроса...а за 30 сек можно тоже успеть в яндекс заглянуть очень шустрым игрокам
Go to the top of the page
+Quote Post
KuKu-2
post Apr 11 2006, 07:47 PM
Post #3


Посетитель
*

Group: Members
Posts: 3
Joined: --
Member No.: 19



Да! Она права, 30 сек это приговор ваще. И так супер игра без хинтов, а тут еще время уменьшено в 2 раза...не пойдет! И еще хочу предложить: результат команды !топ вынести в приват, так как инфа по ней большая выскакивает, но бесполезная для других игроков и тока глаза мозолит да еще пикает все и мигает из-за нее каждый раз))) команды !место !вон в принципе тож можно в приват вынести. Ну вот пока все у меня.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Apr 12 2006, 07:07 PM
Post #4


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



QUOTE(Ona)
и все-таки надо увеличить время ответа на суперигру..так как за такое короткое время ответ может дать только тот игрок который выучил все ответы... надо дать время игроку  на обдумывание  вопроса...а за 30 сек можно  тоже успеть в яндекс заглянуть очень шустрым игрокам


А когда мы поставим 60 секунд, то тогда заглянуть могут не только шустрые, а вообще все. (смайл)

QUOTE(KuKu-2)
Да! Она права, 30 сек это приговор ваще. И так супер игра без хинтов, а тут еще время уменьшено в 2 раза...не пойдет! И еще хочу предложить: результат команды !топ вынести в приват, так как инфа по ней большая выскакивает, но бесполезная для других игроков и тока глаза мозолит да еще пикает все и мигает из-за нее каждый раз))) команды !место !вон в принципе тож можно в приват вынести. Ну вот пока все у меня.

Насчет результата команды !топ - это ещё большой вопрос, стоит ли её туда выносить. Потому как команда эта достаточно ресурсоемкая, и сейчас на неё установлено ограничение по использованию. Соответственно если её вынести в приваты - то тогда придется убирать и ограничения, и пользоваться ей будут чаще - потому как тогда каждый будет её набирать самостоятельно, а не воспользуется тем, что кто-то раньше уже смотрел топ. Что насчет того, что там пикает - решения два: либо не находиться в десятке лидеров (смайл), либо настроить свой IRC-клиент, чтобы он не выкидывал хайлайт на ник игрового бота. Впрочем, если многие будут за убирание топа в приват - то значит уберу.
По поводу убирания в приват команды !вон я уже думал, возможно это будет. И будет расширение выводимой по этой команде информации.
Команда !место компактная, и поэтому останется как и была, в канале.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Scorpion2
post Apr 8 2007, 11:19 AM
Post #5


Посетитель
*

Group: Members
Posts: 2
Joined: 8-April 07
Member No.: 83



Возможно"кривые руки" у меня но хотелось бы чтобы викторина выключалась если никто не играет в неё. smile.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Apr 8 2007, 10:32 PM
Post #6


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



Это было реализовано несколько лет назад.


--------------------
Не понял сам - не дай понять другому
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
username
post Aug 19 2007, 07:39 AM
Post #7


Новичок
**

Group: Members
Posts: 20
Joined: --
Member No.: 10



Можно добавить систему праздников. Задается список дней вида
QUOTE
1 Jan Новый Год
7 Jan Рождество Христово

При старте игры, при переходе в новый день идет проверка наступил ли праздник, и если наступил то что-то делать. У меня начальные очки возрастают с 3х до 5 и за ответы подряд даются призовые очки.
Получилось довольно забавно.

Еще появилась довольно бредовая идея, чтобы количество очков за вопрос зависило от количества игроков на канале. Чем игроков больше тем и очков больше.
Жара дает о себе знать.


--------------------
Всероссийская IRC сеть IrcNet.ru
http://ircnet.su/
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
username
post Sep 16 2007, 09:23 AM
Post #8


Новичок
**

Group: Members
Posts: 20
Joined: --
Member No.: 10



Попробуй переделать скрипт как написано в этом посте. Я у себя так сделал, вроде стало быстрее работать, а вроде и нет.


--------------------
Всероссийская IRC сеть IrcNet.ru
http://ircnet.su/
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Sep 16 2007, 10:40 AM
Post #9


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



Я это уже читал. smile.gif И если сравнивать непосредственно выполнение
CODE
set result [expr 1000 + 1000]

и
CODE
set result [expr {1000 + 1000}]

то ощутимого прироста производительности это не даст, разница слишком мала. Другое дело - при более сложных рассчетах. Но в игре таких очень мало.

А так та статья на egghelp'e очень даже интересна. И если ею руководясь повносить изменения - улучшить производительность можно. В частности, я нисколько не сомневаюсь, что игра очень грешит на использование неверных типов переменных - строк в качестве списков, и списков в качестве строк. Также в случае выборки вопросов из текстового файла может быть интересен описываемый там k-комбинатор.


--------------------
Не понял сам - не дай понять другому
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
username
post Sep 16 2007, 10:52 AM
Post #10


Новичок
**

Group: Members
Posts: 20
Joined: --
Member No.: 10



Ну тогда вот что.
Часто бывает что на канале присутствует приличное количество игроков но игра не идет, все как будто стесьняются ее начать и сидят молча(у меня так). Можно сделать чтобы при заходе человека на канал игра автоматически запускалась, но только в том случае если на канале количество человек превышает какую-либо цифру. Или например при заходе каждого третьего или как-то иначе, вобщем постараться избежать молчания неудобного.
Хотя для твоего канала это не очень актуально наверно.


--------------------
Всероссийская IRC сеть IrcNet.ru
http://ircnet.su/
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Sep 16 2007, 11:16 AM
Post #11


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



Идея как таковая неплохая. Но.
Есть несколько "но". Сколько бы на канале не было человек, совсем не факт, что все они находятся около компьютера и хотят играть. Проверять по whois'у каждого на предмет показателя счетчика idle можно, но неудобно. С другой стороны - достаточно странным это будет смотреться как факт, самозапускающаяся игра. С последней стороны - не очень здорово задавать в никуда вопросы, если никто играть не будет. Так как вопросы эти повторятся очень нескоро, только при истощении их кэша.
Как бы то ни было, можно реализовать такую фунцию опционально отключаемой в конфиге. А лучше - написать напоминание в случае неактивности раз в n минут выводить на канал предложение запустить игру.


--------------------
Не понял сам - не дай понять другому
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
username
post Sep 18 2007, 09:29 AM
Post #12


Новичок
**

Group: Members
Posts: 20
Joined: --
Member No.: 10



Можно сделать статистику по пингам. Типо того:
QUOTE
<Nick> !пинг
<Bot> Пинг от Bot к Nick: 2.09 секунд. Всего 14 проверок пинга, средний результат: 0.2325 миллисекунд.

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


--------------------
Всероссийская IRC сеть IrcNet.ru
http://ircnet.su/
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Sep 18 2007, 10:35 AM
Post #13


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



И считать статы пингов индивидуально для каждого игрока?
Вообще говоря, помимо !пинга надо бы ещё сделать команду !лаг - для определения задержки между ботом и сервером. Ибо лаг этот иногда бывает больше пинга пользователя..)
Благодарю за идею, что-нибудь из этого на днях добавлю.


--------------------
Не понял сам - не дай понять другому
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
username
post Sep 18 2007, 10:53 AM
Post #14


Новичок
**

Group: Members
Posts: 20
Joined: --
Member No.: 10



Я имел ввиду не идивидуально для каждого а для всех сразу, хотя индивидуально это как раз то что нужно, мне это сложнее сделать т.к. для пинга у меня отдельный скрипт.
А как определать лаг от бота до сервера?


--------------------
Всероссийская IRC сеть IrcNet.ru
http://ircnet.su/
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Sep 18 2007, 02:02 PM
Post #15


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



Так встрой этот отдельный скрипт в код викторины. И заодно проверку на то, чтоб ответ PING Reply был только цифрами, убери оттуда нафиг - смысла в этом никакого. А дальше легко. На запросе проверяешь, существует ли такой пользователь, если существует - создаешь ему два новых поля - количество запросов и сумму значений времени откликов - и работаешь с ними. Если не существует - просто выводишь ответ на пинг без всякой доп. статистики.
Лаг от бота до сервера - вопрос, в общем, интересный. Я так понимаю, это есть ни что иное, как пинг ботом самого себя, деленный на два. smile.gif
Надо бы посмотреть, как измерение лага во всяких IRC-клиентах сделано.


--------------------
Не понял сам - не дай понять другому
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Invisible
post Jun 9 2008, 02:17 PM
Post #16


Посетитель
*

Group: Members
Posts: 1
Joined: 21-March 08
From: RF
Member No.: 205



Никит, что же касается блицов, а ты не думал, чтобы очки за ответ на последующий вопрос увеличивались в геометрической прогрессии, а не в 2 раза после каждого ответа на вопрос?)


--------------------
Could you believe I’m waiting for someone
Could you believe I’m holding the night with my hands
Alone in the night on my own
I feel the pain inside me
Only you can heal me
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Kreon
post Jun 9 2008, 02:52 PM
Post #17


Developer
******

Group: Root Admin
Posts: 396
Joined: --
From: Внешние пределы
Member No.: 2



Я думал сделать, чтобы число как блиц-вопросов, на которые необходимо ответить для прохождения раунда, так и число призовых очков зависело от уровня реморта игрока. Но нужны какие-то конкретные цифры. То, как есть сейчас - это безусловно не конечный вариант реализации блиц-раундов. Будут изменения. Вполне вероятно, что для вычисления призовых очков будет использоваться некая экспоненциальная функция.
Либо предлагайте более конкретные варианты. С числами.

Кстати к вопросу о лаге от бота до сервера, хотя он и был задан много месяцев назад, я все же скажу.
Я был не прав. На самом деле необходимо засечь время, отправить серверу raw-команду ping $botnick, и затем ловить отклик с помощью bind raw - PONG. Результаты, надо заметить, при этом получаются намного точнее, чем при пинговании других пользователей.


--------------------
Не понял сам - не дай понять другому
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
username
post Jun 10 2008, 09:41 AM
Post #18


Новичок
**

Group: Members
Posts: 20
Joined: --
Member No.: 10



QUOTE(Kreon @ Jun 9 2008, 09:52 PM) *

Кстати к вопросу о лаге от бота до сервера, хотя он и был задан много месяцев назад, я все же скажу.
Я был не прав. На самом деле необходимо засечь время, отправить серверу raw-команду ping $botnick, и затем ловить отклик с помощью bind raw - PONG. Результаты, надо заметить, при этом получаются намного точнее, чем при пинговании других пользователей.

CODE
bind pub - !lagcheck lagcheck
      proc lagcheck {n u h c t} {
      global server botnick
          set ::laganswer([set ticks [clock clicks -milliseconds]]) $c
          putserv "$ticks"
      }
      bind raw - 421 laganswer
      proc laganswer {f k t} {
      global server botnick
          if {[info exists ::laganswer([set ticks [lindex [split $t] 1]])]} {
              putserv "PRIVMSG $::laganswer($ticks) :$botnick <-> [lindex [split $server :] 0] \=\= [expr [clock clicks -milliseconds] - $ticks]"
          }
      }

(с) tclhelp.net


--------------------
Всероссийская IRC сеть IrcNet.ru
http://ircnet.su/
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
6 User(s) are reading this topic (6 Guests and 0 Anonymous Users)
0 Members:

 



Lo-Fi Version Time is now: 28th March 2024 - 11:10 PM
Design by GPF © 2006