Jump to content
Silence

Trophies and Medals

Recommended Posts

12 минут назад, MIXOH сказал:

Фигушки не фигушки, но все именно так как я вам сказал. Хотя, если очень хочется поиграть в "самого умного" то и разбирайтесь с тем, что вы там накуролесили 

Переустановил по новой, послетали все ачивы что создавал, однако, сейчас создал эту же ачиву на 1000 - полет прошел нормально. Сейчас грузану все ачивы и сообщу как полет будет. Единственное что я сейчас не делал - это не ставил русификацию, хотя по сути она ни на что не влияет же.  

Share this post


Link to post
Share on other sites

Так, даю отчет. Протестировал все и выкладываю подробный мануал по настройке в один пост. Сразу забегу на перед - русский язык - лучше не ставить, ХЗ чего - но с ним косячится приложение. 

Условие выполняется раз в 30 минут, поэтому если вы выставили ачивку и она не пришла - значит еще не прошло 30 минут. Я после выставления запускал вручную, ибо у меня их за 70 штук, заколебался бы ждать. Рекомендую кстати делать так: к примеру, делаете 5 ачивок на 100, 200, 300, 400 и 500 сообщений - запускаете задачу выполнения. После выполнения задачи, делаете другую группу ачивок и так же после ее настроек - запускаете задачу. ХЗ для чего - но в таком варианте все без сбоев работает на ура. В ручную запускаются в Задачах

Теперь к настройкам: 

  • User is administrator - Пользователь является администратором.

  • User is moderator - Пользователь является модератором

  • User uploaded avatar / User not upload avatar - Пользователь загрузил / НЕ загрузил аватар.

  • Registered for - время с момента регистрации. К примеру поставить 365 - ачива придет всем кто зареган год назад.   

  • Group Check - Применение условия получения ачивы только для выбранной группы. 
  • User created at least X content - Публикуемый пользователем контент в который входит: комментирование и создание постов, загрузка файлов, оставление отзывов, загрузка изображений в галерею и т.д. В общем все то, что оставляет след от пользователя на форуме в виде текста, картинки, файла. 

  • User received at least X reputation - Репутация пользователя, при достижении X репутации - выдается награда.

  • User gave at least X reactions - Смена репутации другим пользователям. В учет идет любая реакция - как положительная, так и отрицательная. Наставил пользователь X лайков - получил награду. (Кстати после выставления числа X и сохранения условия - число X исчезает в настройках, однако значение принимается) UPD! исправлено - смотреть ниже.

  • User started at least X topics - Создание тем на форуме. Создал пользователь X тем - получил награду. 

  • User posted at least X posts - Написание сообщений на форуме. Написал пользователь X сообщений в темах - получил награду

  • User has at least X posts marked as best answer - Когда один пользователь оставляет отзыв (например к файлу), то другие пользователи могут оценить его отзыв как полезный или как бред. Вот если этот пользователь собирает со своих отзывов X отметок как "полезный" - он получает награду. 

  • User uploaded at least X files - Загрузка файлов в файловый раздел форума (не в посты, а в раздел загрузки). Загрузил пользователь Х файлов - получил ачиву. 

  • User has a file with at least X downloads - Ачива за скачивание ВАШИХ файлов с раздела "загрузки". Скачал пользователь Х файлов опубликованных вами с раздела "загрузки" - ВЫ получил ачиву.

Edited by Megalex

Share this post


Link to post
Share on other sites
10 минут назад, Megalex сказал:

загрузка и скачивание файлов

Скачивание тут лишнее

18 минут назад, Megalex сказал:

Смена репутации другим пользователям.

Здесь имеется ввиду только полученная пользователем репутация. Что он и кому лайкал не в счет.

19 минут назад, Megalex сказал:

Наставил пользователь X лайков - получил награду

Соответственно не он наставил, а ему наставили

19 минут назад, Megalex сказал:

Кстати после выставления числа X и сохранения условия - число X исчезает в настройках, однако значение принимается

Баг в приложении :D маленькая ошибка в элементе формы

21 минуту назад, Megalex сказал:

Ачива за скачивание фалов с раздела "загрузки". Скачал пользователь Х файлов с раздела "загрузки" - получил ачиву

Немного не так, имеется ввиду если файл пользователя скачало Х человек, он (автор файла) получит ачиву

Share this post


Link to post
Share on other sites
4 минуты назад, MIXOH сказал:

Скачивание тут лишнее

Опечатался. Но суть в последнем предложении (В общем все то, что оставляет след от пользователя на форуме в виде текста, картинки, файла. )

4 минуты назад, MIXOH сказал:

Здесь имеется ввиду только полученная пользователем репутация. Что он и кому лайкал не в счет.

Тут ты не прав

4 минуты назад, MIXOH сказал:

Соответственно не он наставил, а ему наставили

Тут тоже неправ 

4 минуты назад, MIXOH сказал:

Немного не так, имеется ввиду если файл пользователя скачало Х человек, он (автор файла) получит ачиву

И тут не прав. 

ПРОВЕРЕНО! 

Edited by Megalex

Share this post


Link to post
Share on other sites
17 минут назад, Megalex сказал:

Тут ты не прав

Согласен, с репутациями запутался)))

18 минут назад, Megalex сказал:

И тут не прав

А вот с файлами именно так, ибо анализируется количество скачиваний файла у которого автор = пользовательХ

Share this post


Link to post
Share on other sites
1 минуту назад, MIXOH сказал:

А вот с файлами именно так, ибо анализируется количество скачиваний файла у которого автор = пользовательХ

Я вчера загрузил 100 файлов - получил награду
Я вчера скачал 100 файлов - получил награду

Несомненно, написано что якобы за скачанный ОДИН файл (т.е. нужно чтобы один файл скачало Х людей), однако у меня ачивка чекнулась за скачку разных. Опять же, возможно баг, версия у меня 1.3.2. Сегодня будет еще одна массовая загрузка, перепроверю на всякий случай.  

Share this post


Link to post
Share on other sites
3 минуты назад, Megalex сказал:

Несомненно, написано что якобы за скачанный ОДИН файл

Оно не просто написано, оно так и сделано, вот запрос на проверку этого условия:

select( 'count(*)', 'downloads_files', [ 'file_submitter=? AND file_downloads>?', $member->member_id, $trophy->crdata['downloadfiles_downloads'] ] )

Я думаю что иначе оно и работать не может. Другой вопрос что вы загрузили 100 файлов (автор вы) и потом сами их же и скачали, то почему бы не сработать ачивке :D

Share this post


Link to post
Share on other sites
1 минуту назад, MIXOH сказал:

Оно не просто написано, оно так и сделано, вот запрос на проверку этого условия:

select( 'count(*)', 'downloads_files', [ 'file_submitter=? AND file_downloads>?', $member->member_id, $trophy->crdata['downloadfiles_downloads'] ] )

Я думаю что иначе оно и работать не может. Другой вопрос что вы загрузили 100 файлов (автор вы) и потом сами их же и скачали, то почему бы не сработать ачивке :D

Стоп, оно учитывает не конкретный один файл а все? 

Share this post


Link to post
Share on other sites
Только что, Megalex сказал:

Стоп, оно учитывает не конкретный один файл а все? 

А как оно может учитывать один конкретный файл? Вы что его где-то в настройках задаете? Конечно все. Но это не значит что если таких файлов у него несколько он получит ачивку за каждый. Поиск до первого попадания.

Share this post


Link to post
Share on other sites

Можно без приложения как это сделано в стиле afkzone

{{if in_array($comment->author()->member_group_id, array( 4 ,6 ) )}}
           <div style="width: 50px;
height: 50px;
position: relative;
background: #1b1d29 !important;
display:inline-block;
top: 5px;line-height: 50px;
text-align: center;" data-ipsTooltip data-ipsMenu title='Награжден за участие в нашем команде'><img style="height: 35px;" src="{setting='base_url'}hgkdesigns/awards/defense.svg" /></div>
           {{endif}}
         {{if $comment->author()->pp_reputation_points >= 50}}
         <div style="width: 50px;
height: 50px;
position: relative;
background: #1b1d29 !important;
display:inline-block;
top: 5px;line-height: 50px;
text-align: center;" data-ipsTooltip data-ipsMenu title='Награжден за популярность'><img style="height: 35px;" src="{setting='base_url'}hgkdesigns/awards/network.svg" /></div>
        

 

Share this post


Link to post
Share on other sites
3 минуты назад, MIXOH сказал:

А как оно может учитывать один конкретный файл? Вы что его где-то в настройках задаете? Конечно все. Но это не значит что если таких файлов у него несколько он получит ачивку за каждый. Поиск до первого попадания.

А вот оно что... Все теперь въехал) Сообщение поправил. 

Edited by Megalex

Share this post


Link to post
Share on other sites

Кстати по поводу:

1 час назад, Megalex сказал:

после выставления числа X и сохранения условия - число X исчезает в настройках, однако значение принимается

В \applications\trophies\extensions\trophies\TrophyCriteria\Core.php

line #95

$form->add( new \IPS\Helpers\Form\Number( 'trophy_repgiven', isset( $trophy->id, $trophy->crdata['trophy_repgiven'] ) ? $trophy->crdata['trophy_repgiven'] : NULL ) );

должно быть:

$form->add( new \IPS\Helpers\Form\Number( 'trophy_repgiven', isset( $trophy->id, $trophy->crdata['repgiven'] ) ? $trophy->crdata['repgiven'] : NULL ) );
Edited by MIXOH

Share this post


Link to post
Share on other sites
11 минут назад, wasder12 сказал:

Можно без приложения как это сделано в стиле afkzone

Ну можно и без движка IPS тоже обойтись и руками его самому написать. Но ведь это не удобно, не так ли? Так и тут, довольно удобней когда работает приложение и не надо лопатить каждый раз весь код. 

MIXOH Спасибо! Помогло. Отображается теперь все четко в панели. 

Share this post


Link to post
Share on other sites
1 час назад, wasder12 сказал:

Можно без приложения как это сделано в стиле afkzone

Спасибо) Искал что-то подобное.

Share this post


Link to post
Share on other sites
17 минут назад, Dusty сказал:

ПОЧИТАЙ И УЗНАЕШЬ В ЧЕМ РАЗНИЦА

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

Share this post


Link to post
Share on other sites
3 часа назад, ZeRik сказал:

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

тебе почитать разницу между этим и тем просто а хочешь готовый ответ.

Share this post


Link to post
Share on other sites

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

Цитата

Error: Undefined constant 'IPS\HTMLENTITIES' (0)
#0 /var/www/s177023/data/www/belairsoft.by/system/Helpers/Table/Db.php(418): IPS\trophies\modules\admin\trophies\_medals->IPS\trophies\modules\admin\trophies\{closure}(3, Array)
#1 /var/www/s177023/data/www/belairsoft.by/system/Helpers/Table/Table.php(489): IPS\Helpers\Table\_Db->getRows(Array)
#2 /var/www/s177023/data/www/belairsoft.by/system/Theme/Theme.php(847) : eval()'d code(1854): IPS\Helpers\Table\_Table->__toString()
#3 /var/www/s177023/data/www/belairsoft.by/system/Theme/SandboxedTemplate.php(61): IPS\Theme\class_core_admin_global->globalTemplate('9d098803a62e4e5...', Object(IPS\Helpers\Table\Db), Array)
#4 /var/www/s177023/data/www/belairsoft.by/system/Dispatcher/Dispatcher.php(172): IPS\Theme\_SandboxedTemplate->__call('globalTemplate', Array)
#5 /var/www/s177023/data/www/belairsoft.by/system/Dispatcher/Standard.php(112): IPS\_Dispatcher->finish()
#6 /var/www/s177023/data/www/belairsoft.by/system/Dispatcher/Dispatcher.php(154): IPS\Dispatcher\_Standard->finish()
#7 /var/www/s177023/data/www/belairsoft.by/admin/index.php(14): IPS\_Dispatcher->run()
#8 {main}

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Ваша ссылка была автоматически строена.   Отображать как обычную ссылку

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...