Stay out of my shed Обозначения =========== [!] Нововведение или важное изменение/New features or important change [+] Добавлено/New functions [-] Убрано/Removed [~] Изменено/Changed functions [%] Исправление - багфикс/Bugfixes [@] Эта информация будет интересна только админам и/или разработчикам/This information is only for administrators and/or developers [#] Модуль, не входящий в публичную версию [*] ToDo - см. todo.txt & todo.xls [*] Карты на конкретные ауткомы в Экспедициях [*] https://stackoverflow.com/questions/32378953/keep-the-middle-item-centered-when-side-items-have-different-widths https://jsfiddle.net/wqLezyfe/2/ [*] https://myip.ms/info/whois/#w [*] ну вот есть на карте кнопка ракетного залпа.а рядом кнопку Добавить в закладки. и что бы появлялись там координаты и имя игрока. при нажатии автоматом. [*] // TODO Check URL timestamp when checking signature if (INITIAL_PAGE === 'worker' && SN::$gc->request->url->isSigned()) { [*] НАСТРОЙКА - покзаывать в списке планет Обзора луны отдельно от планет [*] В блоке планеты - передвинуть значок входящего флота вниз. Продублировать значок опасности внизу [*] $FIELD_COLOR [*] Опция "Всегда показывать горизонтальный список планет Отцентрировать горизонтальный список для Оперы 2021-06-25 12:18:51 - ERROR array ( 'type' => 1, 'message' => 'Maximum execution time of 300 seconds exceeded', 'file' => '/srv/www/vhosts/alpha.supernova.ws/classes/classCache.php', 'line' => 189, ) NULL 2021-06-25 12:23:55 - ERROR array ( 'type' => 1, 'message' => 'Maximum execution time of 300 seconds exceeded', 'file' => '/srv/www/vhosts/alpha.supernova.ws/classes/classCache.php', 'line' => 189, ) NULL [*] warning: Flying fleet handler works 3 Flying fleet handler works 4.0210 (> 3) seconds - skip rest. Processed 12 events. Last event: mission Экспедиция event Прибытие (1.0681s) Flying fleet handler works 4.7837 (> 3) seconds - skip rest. Processed 4 events. Last event: mission Экспедиция event Прибытие (3.1765s) ? Почему так долго [*] Stat worked too long - watchdog unlocked [*] Duplicate entry ' - когда пытаются ломать. Уменьшить длину поля для УРЛа - всё равно у меня длинного УРЛа не бывает [*] ERROR: Unknown column 'subject.raidswin' in 'field list'
/* tID 439
(DBAL\db_mysql)DBAL\db_mysql->doquery() - 'includes/db.php' Line 115
doquery() - 'includes/db/db_queries.php' Line 171
db_stat_list_statistic() - 'stat.php' Line 109
*/ SELECT @rownum:=@rownum+1 AS rank, subject.blitz_player_id as `id`, @rownum as rank_old, subject.raidswin as points, subject.blitz_name as name, subject.* FROM (SELECT @rownum:=800) r, game_blitz_registrations AS subject WHERE subject.user_as_ally is null ORDER BY subject.raidswin DESC, subject.blitz_player_id LIMIT 800,100;
2023-03-04 15:32:28 SQL Error Deadlock found when trying to get lock; try restarting transaction
/* tID 521
(DBAL\db_mysql)DBAL\db_mysql->doquery() - 'classes/SN.php' Line 336
SN::db_query_select() - 'classes/SN.php' Line 432
SN::db_get_record_list() - 'classes/Planet/DBStaticPlanet.php' Line 39
Planet\DBStaticPlanet::db_planet_by_gspt_safe() - 'classes/Planet/DBStaticPlanet.php' Line 59
Planet\DBStaticPlanet::db_planet_by_vector() - 'includes/functions/eco_planet_update.php' Line 43
sys_o_get_updated() - 'classes/Pages/Deprecated/PageFleet5Gathering.php' Line 57
(Pages\Deprecated\PageFleet5Gathering)Pages\Deprecated\PageFleet5Gathering->flt_build_gathering() - 'classes/Pages/Deprecated/PageFleet5Gathering.php' Line 273
(Pages\Deprecated\PageFleet5Gathering)Pages\Deprecated\PageFleet5Gathering->viewPage5Gathering() - 'fleet.php' Line 240
*/ SELECT * FROM game_planets WHERE game_planets.`galaxy` = 8 AND game_planets.`system` = 250 AND game_planets.`planet` = 11 AND game_planets.`planet_type` = 1 FOR UPDATE
2023-03-04 15:32:29 SQL Error Deadlock found when trying to get lock; try restarting transaction
/* tID 481
(DBAL\db_mysql)DBAL\db_mysql->doquery() - 'classes/SN.php' Line 336
SN::db_query_select() - 'classes/SN.php' Line 432
SN::db_get_record_list() - 'classes/SN.php' Line 631
SN::db_que_list_by_type_location() - 'includes/functions/eco_queue.php' Line 409
que_get() - 'includes/functions/eco_queue.php' Line 546
que_process() - 'includes/functions/eco_planet_update.php' Line 52
sys_o_get_updated() - 'common.php' Line 47
include() - 'buildings.php' Line 17
*/ SELECT * FROM game_que WHERE `que_player_id` = 7240683 AND (`que_planet_id` = 7485628 OR que_planet_id IS NULL) FOR UPDATE
2022-10-23 03:29:11 SQL Error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '{{blitz_alliance}} AS subject ON subject.id = sp.id_ally LEFT JOIN game_blitz_st' at line 1
/* tID 444
(DBAL\db_mysql)DBAL\db_mysql->doquery() - 'includes/db.php' Line 115
doquery() - 'includes/db/db_queries.php' Line 171
db_stat_list_statistic() - 'stat.php' Line 109
*/ SELECT @rownum:=@rownum+1 as rownum, subject.id as `id`, sp.total_rank as rank, sp.total_old_rank as rank_old, sp.total_points as points, subject.ally_name as name, subject.ally_tag, subject.ally_members FROM (SELECT @rownum:=0) r, game_blitz_statpoints AS sp LEFT JOIN {{blitz_alliance}} AS subject ON subject.id = sp.id_ally LEFT JOIN game_blitz_statpoints AS sp_old ON sp_old.id_ally = subject.id AND sp_old.`stat_type` = 2 AND sp_old.`stat_code` = 2 WHERE sp.`stat_type` = 2 AND sp.`stat_code` = 1 ORDER BY sp.`total_rank`, subject.id LIMIT 0,100;
2022-10-25 09:08:37 SQL Error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\"' at line 1
/* tID 465
(DBAL\db_mysql)DBAL\db_mysql->doquery() - 'classes/SN.php' Line 336
SN::db_query_select() - 'classes/SN.php' Line 432
SN::db_get_record_list() - 'classes/SN.php' Line 631
SN::db_que_list_by_type_location() - 'includes/functions/eco_queue.php' Line 409
que_get() - 'includes/includes/eco_bld_structures.php' Line 115
sn_eco_build() - '' Line _UNDEFINED_
call_user_func_array() - 'includes/general/general.php' Line 52
sn_function_call() - 'includes/includes/eco_bld_structures.php' Line 16
eco_build() - 'buildings.php' Line 52
*/ SELECT * FROM game_que WHERE `que_player_id` = 7211448 AND (`que_planet_id` = 7269267) AND `que_type` = 6\"
#wip SELECT * FROM `game_fleets` WHERE ( fleet_start_galaxy = 5 AND fleet_start_system = AND fleet_mess = 1) OR ( fleet_end_galaxy = 5 AND fleet_end_system = AND fleet_mess = 0) => SELECT * FROM `game_fleets` WHERE ( fleet_start_galaxy = 5 AND fleet_start_system = 1 AND fleet_mess = 1) UNION SELECT * FROM `game_fleets` WHERE ( fleet_end_galaxy = 5 AND fleet_end_system = 1 AND fleet_mess = 0) ??? SET profiling = 1; SHOW PROFILES; SET profiling = 0; [*] Bypass auth with secret key - for admins, when auth is failing [*] Flying fleet handler works 3.0368 (> 3) seconds - skip rest. Processed 65 events. Last event: mission Передислокация event Прибытие (0.0887s) Добавить количество оставшихся эвентов? или флотов? Когда берешь флоты/считаешь ивенты изначально - их можно не лочить. Просто потом брать один за другим и считать... наверное Или нет - если кто-то вставил ОЧЕНЬ БЫСТРЫЙ флот Подумать Уменьшить время FFH и уменьшить промежутки между запусками? - Типа, меньше локов? - Надо вообще проверить что там с локами творится * [*] Проблема с бэкграундом в хроме - посмотреть * Запрашивать пароль при выходе в отпуск? [!] Server Instances [*] Use same image/css resources ??? [*] Rid off D_SN_HTTP_AVATAR in templates - pass constants in variables [*] Instancing on google servers [*] Direct physical root in config file [*] Url to server images - something like cdn.supernova.ws/images.supernova.ws Отвязать путь/урл от физического пути - или задавать альтернативно в конфигурации Потому что сейчас supernova.sn.ws указывает на beta.sn.ws и так работает Сервер так же пользует для sn.sn.ws путь beta.sn.ws. Но если убрать каталог sn.sn.ws движок (?) сходит с ума и перекидывает на бету Ну или кто-то сходит с ума * Бан по IP в игре * ИД игрока в чате по навердению курсора * Возможно - дополнительное меню * Переписать кэшер целиком? * track all doquery() and replace with statics * Переписать все запросы через DbQuery::build() * shadowmute - игрок видит свои сообщения, но его никто не видит * Ограничение доступа к чату и ЛС в зависимости от ранга * Интеграция с форумом * Парсинг УРЛов в чате и ЛС - не парсится корректно УРЛы от админа, если УПЛ находится в конце строки и не закрывается пробелом * Очевидно, надо добавить в РЕГЕКП символ окончания строки/линии как признак конка УРЛа * Проверить, что там с CI/CD * !!!!!!!!! 134 элемента грузится на странице чата!!!!!! На 2023-07-03 22:00 * Надо компрессировать элементы * Начать с картинок * Начать с меню - оно грузится всегда и везде * В чате - смайлики пожать * Могут быть проблемы с анимированными гифками * В модулях * картинки ивентов * картинки мидалек * Картинки планет (миниатюрные) * Картинки юнитов (миниатюрные) * Иконки * https://medium.com/@robertcooper_rc/animating-a-sprite-sheet-with-css-ca15e2664 * sprite from animated gifs and generate css * I am very early in experimenting with CSS sprites, but for me the biggest (and so far the only) benefit in using them is to reduce amount of request the client needs to send to server. * I haven't tried, but I assume that for the same end result (in that optimization context anyway), one could add the animated gif to the HTML inline with data URI scheme: https://en.wikipedia.org/wiki/Data_URI_scheme * https://stackoverflow.com/questions/30231943/smooth-and-fast-sprite-animation-css * https://stackoverflow.com/questions/9139386/animated-gif-vs-spritesheet-js-css * https://stackoverflow.com/questions/10186257/why-not-animated-gif-instead-of-animated-css-sprites * https://stackoverflow.com/questions/37222609/sprite-multiple-gif-files-with-css-info * https://www.w3schools.com/css/css_image_sprites.asp * https://www.geeksforgeeks.org/how-to-use-flex-to-shrink-an-image-in-css/ * Offline CSS Sprites Image Generator * 1) Smartsprites 0.3.2 This is a open source PHP CSS sprites Generator Source Code for Download * http://www.tanila.de/smartsprite/index.php * * 2) Open Source Java CSS sprites Generator Source Code * http://smartsprites.osinski.name/cgi-sys/defaultwebpage.cgi * 3) Free PHP Source Code of CCS Sprites Generator from Website-Performace.org * https://linux.softpedia.com/get/Internet/HTTP-WWW-/CSS-Sprite-Generator-39417.shtml * https://stackoverflow.com/questions/2428053/css-sprites-not-only-for-background-images * https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_images/Implementing_image_sprites_in_CSS * WebP * https://web.dev/serve-images-webp/ * Changes * Было: * * Стало: '''html ''' * https://css-tricks.com/using-webp-images/ * Http2 * https://cheapsslsecurity.com/p/how-to-enable-http2/ * https://www.google.com/search?hl=en&q=lighttpd+http%2F2+support&oq=lighttpd+http%2F2+support&sourceid=chrome&ie=UTF-8 * mod-multiserver: дроп-даун для выбора сервера. * объединение очередей, разделение очередей * Роботы-пауки: * Отдельный аккаунт под роботов без логина * Отключать чат * Отключать личку * Отключать вывод галактики * Антимультик: не пускать в игру, если залогинен аккаунт с того же АйПи/с той же сетки. * Режим "Королевская битва" * Игроки наачинают в разных частях вселенных * Вселенная уменьшается каждые сутки * Кто последний - тот и выиграл * С разрушением планет, включая столицу ? * Вопросы * Что делать с флотом без планеты? Удалять? Или "Флот последней надежды" - долетает и делает, что делает? Или можно перенаправить? * Реклама проекта - послать какую-нибудь мелочь блоггерам зарубеж с письмом * Флоты в полёте - добавить попап/надпись на "откуда" и "куда" с названием планеты * Добавить в статистику метки "слабый/сильный игрок" # WiP BEFORE PUTTING IT ON GITHUB!!!! Check for module version - die() if it's not compatible with v46a46+ TODO: Если пересчёт статы идёт раньше, чем положено - сохранять предыдущие значения и сравнивать с ними новый расчёт, а не с предыдущим расчётом * Не масштабируются попапы от размера фонта! I have solved this problem using img tags and using the object-fit and object-position properties in my css. Here's a sample of the html and css I used:- HTML CSS .sprite-icon { height: 20px; width: 20px; object-fit: none; } .sprite-icon-1 { object-position: 0 0; } .sprite-icon-2 { object-position: -20px 0; } * Чат моргает, если в Хроме выставлено обнуление кэша - он каждый раз перезапрашивает иконки * Режим сканирования - без таблиц, без картинок, совсем просто * Пираты? * Застримлайнить UBE * TODO * Remove unused menu image icons * NB! Do not forget to copy them to use later as source in Spritify * Switches to disable merging CSS and JS (javascript) * Replace $sn_mvc with class in SN * $sn_mvc['css_filenames'] - for modules to utilize * Skin names should be used as BODY/HTML class names - including parents - to trigger CSS override * Same for templates * Replace navbar items with sprites * Delete unused navbar images * NB! Do not forget to copy them to use later as source in Spritify * Replace smiles with sprites * В чате не показываются смайлики неактивных ивентов. А должны https://www.percona.com/software/database-tools/percona-toolkit config - index is hash @see changelog.dev.todo.txt @see changelog_todo_nocommit.md * Переделать интерфейс МО на планеты в колонках * По-максимуму избавится от полей BLOB/TEXT - особенно в `config` * Дропнуть во `fleets` индексы: * `fleet_both` * `I_test` * `fleet_id` ALTER TABLE `ogame`.`game_fleets` DROP INDEX `fleet_id`, DROP INDEX `fleet_both`, DROP INDEX `I_test`; * Если нет конфигов модулей - сыпится куча ошибок * Переделать в UNION * SELECT * FROM `game_fleets` WHERE ( fleet_start_galaxy = ? AND fleet_start_system = ? AND fleet_start_planet = 16 AND fleet_start_type = 3 AND fleet_mess = 1) OR ( fleet_end_galaxy = ? AND fleet_end_system = ? AND fleet_end_planet = 16 AND fleet_end_type = 3 AND fleet_mess = 0)\G * WHERE * fleet_start_galaxy = ? * fleet_start_system = ? * fleet_start_planet = 16 * fleet_start_type = 3 * fleet_mess = 1 * OR * fleet_end_galaxy = ? * fleet_end_system = ? * fleet_end_planet = 16 * fleet_end_type = 3 * fleet_mess = 0 * ube_report_unit * decimal 64 -> decimal 32 или даже 16-20 - 32 МАЛО!!! * SELECT max(ube_report_unit_attack) FROM `game_ube_report_unit` * 10154002942728 (14) * SELECT max(ube_report_unit_shield) FROM `game_ube_report_unit` * 4002480000000 (13) МАЛО 32!!! * SELECT max(unit_level) FROM `game_unit` * 2730432019 (10) 2.730.432.019 2 млрд * SELECT max(ube_report_outcome_fleet_resource_lost_metal), max(ube_report_outcome_fleet_resource_lost_crystal), max(ube_report_outcome_fleet_resource_lost_deuterium), max(ube_report_outcome_fleet_resource_dropped_metal), max(ube_report_outcome_fleet_resource_dropped_crystal), max(ube_report_outcome_fleet_resource_dropped_deuterium), max(ube_report_outcome_fleet_resource_loot_metal), max(ube_report_outcome_fleet_resource_loot_crystal), max(ube_report_outcome_fleet_resource_loot_deuterium), max(ube_report_outcome_fleet_resource_lost_in_metal) FROM `game_ube_report_outcome_fleet` * 31929954315500 24344582856500 6892749829600 0 0 0 4230547540717 6539453840652 952727336533 111274170527130 (15) 111.274.170.527.130 111 трлн ube_report_outcome_fleet_resource_lost_in_metal * SELECT max(ube_report_fleet_resource_metal), max(ube_report_fleet_resource_crystal), max(ube_report_fleet_resource_deuterium) FROM `game_ube_report_fleet`; * 10771609702592 25796158896330 1905454673066 (14) 25.796.158.896.330 25 трлн ube_report_fleet_resource_crystal * `confirmation` - чистить * delete FROM `game_confirmations` where create_time < "2024-01-01"; * `unit` - `unit_location_type`/`unit_location_id` - развязать, что бы работали констрейнты? * Экстраординарные (экзотические) ядра - можно только найти. * // if (defined('DEBUG_SQL_ONLINE')) * Get all highspots and activities once at start array ( 0 => 'SELECT * FROM `game_festival_highspot_activity` WHERE `highspot_id` = 1445 ORDER BY `start`, `finish`, `id`', 1 => 'tID 16', 2 => '(DBAL\\db_mysql)DBAL\\db_mysql->doquery() - \'includes/db.php\' Line 81', 3 => 'doquery() - \'modules/core_festival/classes/FestivalHighspot.php\' Line 190', 4 => '(FestivalHighspot)FestivalHighspot->__construct() - \'modules/core_festival/classes/Festival.php\' Line 122', 5 => '(Festival)Festival->build_highspot() - \'modules/core_festival/classes/Festival.php\' Line 102', 6 => '(Festival)Festival->__construct() - \'modules/core_festival/core_festival.php\' Line 108', 7 => '(core_festival)core_festival->__construct() - \'classes/Modules/ModulesManager.php\' Line 119', 8 => '(Modules\\ModulesManager)Modules\\ModulesManager->loadModulesFromDirectory() - \'classes/Modules/ModulesManager.php\' Line 69', 9 => '(Modules\\ModulesManager)Modules\\ModulesManager->loadModules() - \'classes/Modules/ModulesManager.php\' Line 56', 10 => '(Modules\\ModulesManager)Modules\\ModulesManager->__construct() - \'classes/Core/GlobalContainer.php\' Line 210', 11 => '(Core\\GlobalContainer)Core\\GlobalContainer->Core\\{closure}() - \'classes/Common/Pimple/Container.php\' Line 113', 12 => '(Common\\Pimple\\Container)Core\\GlobalContainer->offsetGet() - \'classes/Common/ContainerPlus.php\' Line 21', 13 => '(Common\\ContainerPlus)Core\\GlobalContainer->__get() - \'classes/core_auth.php\' Line 184', 14 => '(core_auth)core_auth->__construct() - \'includes/init.php\' Line 196', 15 => 'require_once() - \'common.php\' Line 10', 16 => 'require_once() - \'time_probe.php\' Line 7', ) * see changelog_todo_festival.txt * see changelog_dev.deadlock.sql * Написать в отчётах боя, что при участии в бое члена(-ов) АД-ии лом не выпадает! #ctv * Удалить из БД module_festival_39_highspot_796_lock * Мигрировать * festival_highspot_puzzle_birthday_698 * festival_highspot_puzzle_christmas_tree_1138 * https://dev.mysql.com/doc/refman/5.7/en/lock-tables.html#lock-tables-and-transactions * The correct way to use LOCK TABLES and UNLOCK TABLES with transactional tables, such as InnoDB tables, is to begin a transaction with SET autocommit = 0 (not START TRANSACTION) followed by LOCK TABLES, and to not call UNLOCK TABLES until you commit the transaction explicitly. For example, if you need to write to table t1 and read from table t2, you can do this: SET autocommit=0; LOCK TABLES t1 WRITE, t2 READ, ...; // FLUSH TABLES WITH READ LOCK; // FLUSH TABLES WITH WRITE LOCK; ... do something with tables t1 and t2 here ... COMMIT; UNLOCK TABLES; https://thushw.blogspot.com/2010/11/mysql-deadlocks-with-concurrent-inserts.html Убрать все unique key - потому что это провоцирует gap_lock? "UNIQUE KEY `I_festival_config_highspot` (`highspot_id`,`festival_id`,`config_name`) USING BTREE", https://www.percona.com/blog/logging-deadlocks-errors/ pt-deadlock-logger u=user,p=password,h=host pt-deadlock-logger --create-dest-table --dest D=test,t=deadlocks u=root,h=127.0.0.1 pt-deadlock-logger --daemonize --run-time=3000 --dest D=test,t=deadlocks u=root,h=127.0.0.1 https://www.percona.com/blog/how-to-deal-with-mysql-deadlocks/ https://rimzy.net/category/pt-deadlock-logger/ https://topic.alibabacloud.com/a/monitoring-deadlocks-with-pt-deadlock-logger_8_8_31094333.html * Analyze all transactions methods AddType application/vnd.ms-fontobject .eot AddType font/ttf .ttf AddType font/otf .otf AddType application/x-font-woff .woff Header set Access-Control-Allow-Origin "*" crowdin.com - переводчик всякого встроенного в ПО * Error in key name - `FK_festival_unit_hispot` instead of `FK_festival_unit_highspot` * $updater->upd_create_table('festival_unit', * "CONSTRAINT `FK_festival_unit_hispot` FOREIGN KEY (`highspot_id`) REFERENCES `{{festival_highspot}}` (`id`) ON DELETE CASCADE ON UPDATE CASCADE", * $updater->upd_create_table('festival_unit_log', * "CONSTRAINT `FK_festival_unit_log_hispot` FOREIGN KEY (`highspot_id`) REFERENCES `{{festival_highspot}}` (`id`) ON DELETE CASCADE ON UPDATE CASCADE", * Версионирование отдельно для модулей * Расписать блокировку во флотах по функциям конкретных миссий * Убрать класс db_mysql_v5.php * Заменить на db_mysql в описаниях * Если стоит в конфигурации - заменить на db_mysql * ВНИМАНИЕ!!! ИЗМЕНЕНИЯ В СИГНАТУРАХ ФУНКЦИЙ НАДО ДЕЛАТЬ НА ВЕТКЕ МОДУЛЕЙ!!! * Пройтись по db_deprecated.php * Разобраться с функциями старта транзакций - вынести их в db_mysql * Перекинуть переменные транзакций в db_mysql.php * И, возможно, в $debug - что бы там было на случай ошибки #765 - код ошибки для 46a147 #832 - код ошибки для 46a147+ 2024-10-23-02-34 * Настройки уровня транзакции в базе (?) * Не, в конфиге * /annonce.php - целая незалинкованная система объявлений! * sys_o_get_updated - перебить все вызовы что бы уже были ИД пользователя и планеты * db_user_by_id() - убрать * SN::db_get_record_by_id - убрать * db_user_list - убрать #ctv 2024-10-23 01:45:56 46a149 [~] Logs * In log text "\n" replaced with "
" on output 2024-10-23 01:09:59 46a148 [@] Code * `$sys_user_logged_in` => `SN::$sys_user_logged_in` * Debug - now prepends sql log filename with current instance DB name * `sys_o_get_updated` - simplified error reporting on empty user * Removed `db_queries_user.php` -> `db_get_user_by_where` * `db_queries_user.php` -> `db_user_by_id` now accepts only userId as first param * Streamlined and formatted code a bit 2024-10-21 21:08:03 46a147 [@] DB * fighting deadlocks * Table `que` - index I_que_planet_id expanded to (`que_planet_id`, `que_player_id`) * Table `planets` - index `id` dropped * Table `users` - index `I_user_id_name` dropped 2024-10-21 18:33:01 46a146 [@] DB * Transaction level for MySQL raised to 'SERIALIZABLE' to reduce deadlocks * Adjusted how SQL queries reported 2024-10-21 18:31:30 46a145 [@] Fleet * Added old fields to Fleet\Fleet to use in low-level functions * Rewrote fleet lock conditions from `?:` to `if` * Replaces some strings with constants * Some code reformatting 2024-10-21 18:25:00 46a144 [@] Code * Now `DEBUG_SQL_XXX` constants ruled by appropriately named records in `config` table: * `DEBUG_SQL_FILE_LOG` replaces `DEBUG_SQL_ONLINE` - implies `DEBUG_SQL_ERROR` and `DEBUG_SQL_COMMENT_LONG` * `DEBUG_SQL_ERROR` - implies `DEBUG_SQL_COMMENT` * `DEBUG_SQL_COMMENT_LONG` - implies `DEBUG_SQL_COMMENT` * `DEBUG_SQL_COMMENT` 2024-10-21 18:21:39 46a143 [@] Code * Added transaction depth counter into `SN` class 2024-10-21 18:16:45 46a142 [~] Admin * Now in log viewer user options stored in `user.options` parsed for better readability [@] Code * User options separator `|` move to constant `USER_OPTIONS_SPLIT` * `EVENT_FLT_XXX` constants now are strings for better debug 2024-05-24 04:56:07 46a134 [%] Language * Fixed not loading module l10n files before user init [@] DB * Dropped unneeded indexes to reduce deadlocks * counter.counter_id * que.que_id * captain.captain_id 2024-05-21 14:41:12 46a131 [@] PHP 7 * More PHP7/MariaDB shenanigans 2024-04-13 13:04:16 46a127 [@] PHP 7 * Added support for `fastcgi_finish_request()` where it supported [@] SQL * Added comments to transaction-related statements - to easier found them later in debug/dump * Added separate table `festival_config` for festival-specific config * Migrated festival config to separate table 2024-04-12 08:13:34 46a124 [~] PHP 7 * Fixed minor issues 2024-04-08 09:08:32 46a122 [~] Admin * Adjusted log detail output 2024-04-07 14:33:41 46a118 [~] PHP 7 * Fixed no que items on building pages * Fixed que for mass-operations * Fixed other PHP 7 compatibility issues 2024-03-26 17:38:51 46a117 [~] Fleets * `fleet_dispatch_max_time` renamed to `fleet_update_dispatch_time` for uniformity 2024-03-26 17:04:00 46a113 [~] Fleets * Now length of each fleet dispatch job can be configured via `fleet_dispatch_max_time` config (float). Default: 3 seconds * `GAME_FLEET_HANDLER_MAX_TIME` is obsolete 2024-01-22 00:39:08 46a110 [%] Navbar * Fixed error reposition que in navbar buttons 2024-01-22 00:32:52 46a108 [%] Navbar * Restored links on some navbar buttons 2024-01-21 19:38:32 46a105 [+] Navbar * Navbar now use sprites * This should speed up page loading due to combining multiple standard navbar buttons into one sprite 2024-01-21 07:04:39 46a104 [@] Tools: Spritify update * Adjusted behavior in case if first frame in A-GIF smaller then largest one 2024-01-21 06:17:01 46a103 [@] Tools: Spritify update * Now Spritify honors offset in first frame of A-GIF 2024-01-21 04:44:55 46a102 [@] Tools: Spritify update * Spritify supports `RESTORE_TO_BACKGROUND_COLOR` disposition method 2024-01-21 03:55:30 46a101 [@] Tools: Spritify update * Now Spritify generates pure CSS animations for extracted A-GIF frames, honoring delay between frames 2024-01-21 02:45:25 46a100 [@] Tools: Spritify update * Animated GIF frame expansion - disposal methods `UNSPECIFIED` and `DO_NOT_DISPOSE` 2024-01-21 01:27:46 46a99 [@] Tools: Spritify update * Basic support for animated GIFs - extract frames into sprite line 2024-01-19 17:51:35 46a98 [@] Tools: Spritify update 2024-01-19 16:04:51 46a97 [@] Tools: Spritify update 2024-01-19 11:34:34 46a95 [@] Modules * Added support for `javascript_filenames` in `sn_mvc`: * Modules' JS now added to new subarray * Now modules' JS can be cached too * This fixed errors with modules' JS loaded too early and not working [@] CSS * Override jQueryUI images in `_template.css` to make it work with CSS caching 2024-01-16 12:28:03 46a91 [~] Units Support for Festival "NY-2024" 2024-01-14 06:52:51 46a88 [@] Tools - `spritify` update 2024-01-14 04:31:34 46a86 [@] HTML JS cacher - merges all JS files into one and caches results 2024-01-14 01:45:52 46a85 [@] Code Streamlined `classConfig` - listed all known config keys with types 2024-01-14 01:07:40 46a84 [@] HTML Rearranged JS code/file include in `_40_js.tpl.html` [@] Code SnTemplate - refactored a bit Basic support for different environments - @see: .env.ini.example 2024-01-12 14:55:46 46a81 [%] HTML Fixed strange jQueryUI behavior on texteareas in new Chrome 2024-01-12 14:09:58 46a80 [%] News Fixed typo in news rendering engine 2024-01-12 03:17:44 46a78 [~] CSS cacher refactored [%] Fixed some template error to be compatible with CSS cacher 2024-01-12 01:42:07 46a75 [!] CSS cacher Internal subsystem to compact several CSS files into one file and cache it Updated skins to accomodate CSS cacher 2024-01-12 00:05:58 46a73 [!] Tools - Spritify New tool to create sprite PNG and CSS for it from set of images [!] Menu Switched to using sprites as menu icons 2024-01-04 02:07:54 46a67 [@] Code `_SnCacheInternal` class removed from code along with caching players/planets Units cached inside `DbStaticUnit` class 2024-01-04 00:58:46 46a65 [@] Code `_SnCacheInternal::$locator` now used only by LOC_UNIT and LOC_UNIT now does not stored in ::$data Simplified cacher code a little 2024-01-03 22:36:43 46a63 [%] News Now announce editing/copying works again in Chrome [@] Code Start moving Unit operations from using `SN` or `_SnCacheInternal` objects Misc speedup 2024-01-03 19:59:46 46a58 [%] News Now non-admin users doesn't see announces 2023-05-31 16:04:19 46a53 [~] Юниты Поддержка Фестиваля "ДР-2023" 2023-05-19 16:17:46 46a49 [@] Code Replaced part of intermediate function sn_db_XXX and db_XXX with direct calls to SN::$db methods 2023-05-18 12:36:49 46a46 [@] Code - added (disabled now) code to bypass SnInternal cache 2023-05-17 11:47:52 46a44 [@] Code - removed SN::$queries 2023-05-14 11:30:37 46a41 [~] FFH - Added total event amount to FFH timeout message 2023-05-13 23:24:17 46a39 [%] Fixed bug with missing closing slash 2023-05-13 19:33:01 46a37 [%] Fixed problems related to `SN_GOOGLE` constant * Another reminder about maintain maximum back-compatibility... 2023-05-13 16:39:53 46a36 [!] Server Instances. Now several servers can work on one copy of SN engine * Instance-specific files located in `/servers/{domainName}[{_port}]/` folders * `_port` part is optional and used only for servers running on ports other then 80 or 443 * {domainName} is SN's domain name * I.e. for `sn.domain.com` folder would be `/servers/sn.domain.com/` * I.e. for `sn.other_domain.com:8080` folder would be `/servers/sn.other_domain.com_8080/` * If SN detects `config.php` file in instance-specific folder it would use it instead of `/config.php` * If SN detectes subfolder `avatars` in instance folder writable by web-server - it would be used for player and Alliance avatars * I.e. if for domain `sn.domain.com` there is folder `/servers/sn.domain.com/avatars` and it writable by web server - it would be used as avatar storage [~] Now SN recognize `/avatars` folder in code root as folder for non-instanced servers and prefers it to use before `/image/avatar` folder * It's recommended to move all avatars to this folder because in future `/image/avatar` folder would be deprecated and unsupported 2023-05-13 13:36:51 46a35 [@] Replaced path to avatars with constants 2023-05-13 12:24:59 46a33 [@] GIT: Fixing versioning problem 2023-05-13 12:24:15 45d16 [@] GIT: Fixing versioning problem 2023-05-13 12:16:55 46a33 [@] GIT: Fixing versioning problem 2023-05-13 12:01:52 45d15 [~] DB Драйвер db_mysql_v4 удалён Для db_mysql_v5 `TRANSACTION ISOLATION LEVEL` установлен в `REPEATABLE READ` 2023-05-13 11:23:47 46a32 [~] Template engine fixes Fixed `error: template->_tpl_load_file()` for module template files loaded on admin page Fixed `error: template->_tpl_load_file()` when module template files tried to load files from core template I.e. alliance manager page tries to load `eco_que` template from core template 2023-05-13 09:42:39 46a23 [@] Code Немного перераспределил функции для флота внутри кода 2023-02-10 19:39:59 45d3 [~] Юниты Поддержка Фестиваля "СНГ-2023" 2022-05-26 07:35:13 46a21 [~] Юниты Поддержка Фестиваля "ДР-2022" 2022-01-20 05:37:05 45d2 [~] Юниты Поддержка Фестиваля "СНГ-2022" 2021-03-03 13:41:05 46a13 [~] Личные сообщения Немного приглушен цвет сообщений от Администрации [#] Модули Поддержка подарков на 8 марта 2021-03-02 08:46:06 46a9 [~] Админка Восстановлено обслуживание таблиц БД, относящихся к безопасности 2021-03-02 08:43:10 46a8 [~] Картинки Немного уменьшены размер некоторых изображений 2020-12-11 11:56:23 46a3 [~] Юниты Поддержка Фестиваля "СНГ-2021" 2020-08-25 08:45:44 45d2 [~] Установка/обновление Обновлены SQL-файлы установки Улучшен процесс установки/обновления 2020-07-27 12:12:06 45d1 [!] Документация Переделана в формат MarkDown: - /README -> /README.MD - /docs/install.txt -> /docs/install.md - /docs/install-en.txt -> /docs/install-en.md [!] Установка/обновление Улучшен процесс установки/обновления Расширен раздел, посвященный проблемам с установкой или обновлением в файлах /docs/install.md и /docs/install-en.md 2020-07-27 10:08:44 45d0 [!] Project "SuperNova.WS" Release 45 "11 years anniversary" Project "SuperNova.WS" Release 45 "11 years anniversary" Обновлен docs/changelog.txt 2020-07-08 10:35:10 45a118 [~] Навбар Поддержка кнопки "Оборона" 2020-06-25 10:30:33 45a113 [@] Код sn_timer.js: исправлена несовместимость со старыми версиями JS 2020-06-21 10:40:09 45a109 [@] Код CSS: - Добавлена возможность отключать наложение скинов на элементы управления (input, button) у всех дочерних элементов сразу Навбар: - Количество ресурсов в ресбаре теперь всегда выравнивается по правой стороне ячейки Меню: - Раскраска пунктов меню теперь снимается через CSS, а не через JS - Вид пунктов меню кнопки/ссылки теперь переключается через CSS, а не через JS - Кнопка показа/скрытия меню теперь привязывается к самому меню, а не к абсолютным координатам sn_timer.js: - Добавлена поддержка human-readable времени в sn_timer.js - Исправлена ошибка, когда длина бара в таймере отсчёта могла быть > 100% 2020-06-18 10:16:27 45a102 [@] Код Немного откорректирован код для поддержки других темплейтов 2020-06-14 09:40:35 45a97 [~] Юниты Поддержка Фестиваля "ДР СН-2020" 2020-05-30 11:22:16 45a95 [%] Чат Исправлена ошибка с утерей фокуса при наборе сообщения дольше 5 секунд 2020-05-21 16:39:55 45a94 [~] Список планет Унифицирован показ статуса планеты (Столица, Луна): - Теперь "Обзоре планеты" и "Империи" статус планеты показывается соответствующим значком; - На страницах, указанных выше, а так же в меню выбора планеты для Луны Столицы показывается оба значка В "Обзоре" теперь название и координаты планеты/луны показываются в самом низу блока планеты [@] Темплейт Список планет: темплейт планеты списка вынесен в отдельный файл Империя: - Темплейт ячейки ресурсов вынесен в отдельный файл; - Уменьшен размер создаваемого файла примерно на 5%. 2020-05-19 08:08:36 45a88 [!] Чат Полностью новый чат Встроенная система команд с поддержкой алиасов команд Встроенная система помощи по командам чата - команда /help Добавлен список игроков в чате с дополнительными иконками статуса и командами управления для админов Возможность игрокам управлять своим состоянием видимости в чате - команда /invisible. Администрация сервера (authlevel > 0) всегда видит невидимок Возможность отправлять приватные сообщения другим игрокам - команда /whisper. Приватные сообщения выделяются специальным образом, видны во всех каналах и сохраняются в истории чата. В приватных сообщенях нельзя употреблять форматирование цветом Администраторы имеют возможность запретить игроку писать в чат на определенный срок или вернуть такую возможность - соответственно, команды /mute и /unmute. Запрет распространяется на все каналы и на возможность писать личные сообщения. Соответствующая иконка в списке игроков лишает его права голоса на 1 час Администраторы имеют возможность блокировать и разблокировать игроков прямо из чата - соответственно, команды /mute и /unmute. Иконка в списке игроков банит его на 1 неделю Системные и приватные сообщения выделяются жирным шрифтом Скорость обновления в AJAX части чата регулируется переменной 'chat_refresh_rate' Игроки из онлайн-списка исчезают сразу после выхода из чата - таймаут попадания в список установлен как удвоенный 'chat_refresh_rate' В чате доступен расширенный функционал BBCode 2020-05-06 10:37:35 45a87 [~] Локализация Немного английской локализации 2020-05-06 10:29:09 45a86 [~] Локализация Немного английской локализации 2020-05-06 10:10:56 45a85 [@] Модули Исправлены ошибки включения отсутствующих общих темплейтов 2020-04-18 17:49:48 45a79 [%] Task/Lock Исправлены ошибки взаимодействия разный воркера диспетчера флотов и ЧЛ/ОвК 2020-04-18 15:36:05 45a77 [@] Темплейты Вынесены кнопки навбара в отдельный файл [@] Код Поддержка Хайспотов Фестиваля ЧЛ/ОвК 2020-02-18 22:18:16 45a74 [%] Флоты Исправлена ошибка 2020-02-18 22:15:57 45a73 [%] Флоты Исправлена ошибка 2020-02-18 22:07:00 45a72 [%] Флоты Исправлена ошибка 2020-02-18 21:00:19 45a71 [!] Код Новая система рабочих процессов Worker [!] Флоты Диспетчер флотов теперь использует системы Task+Worker и является неблокирующим Таким образом, теперь нет визуальных задержек на обсчёт флотов (кому-то из игроков раньше не везло каждые 4 секунды) Так же флоты обсчитываются не кусками по 3 секунды, а в пределах, заданным параметром `fleet_update_max_run_time` (30 секунд по умолчанию) 2020-02-09 21:08:55 45a70 [!] Код Новая система задач и блокировок (Task/Lock) Пока используется только для обсчёта летящих флотов 2020-02-08 09:14:02 45a65 [@] Код Поддержка обновления core_festival 2020-01-15 08:50:14 45a61 [+] Код/Скины Добавлена поддержка формата изображений WebP 2020-01-12 09:43:34 45a56 [@] Код Поддержка НГ-2019/2020 2020-01-01 15:52:15 45a55 [!] Скины/EpicBlue В скине EpicBlue заменены картинки юнитов Добавлен новый скин EpicBlueOld со старыми картинками юнитов 2020-01-01 14:38:28 45a54 [%] Локализация Исправлена очепятка в описании плотностей 2019-10-28 09:31:45 45a50 [%] Платежи Исправлена ошибка, когда установлен только один модуль платежей с одним методом платежа типа Generic 2019-10-27 15:37:15 45a49 [@] Код Поддержка модуля `payment_payu_rest` 2019-10-17 09:28:49 45a45 [%] Интерфейс/Результат операции Исправил сползание блока с результатом операции в случае, если есть другой инлайн-блок ниже "по течению" 2019-10-17 09:18:21 45a44 [+] Интерфейс/Обзор планеты В экспериментальном порядке дизайн страницы "Обзор Планеты" сделан респонзивным. Т.е. на широких экранах элементы страницы - инфа о планете, список планет и список флотов в полете - будут выстроены в три колонки на всю ширину монитора На мобильных устройствах устройствах с узкими дисплеями элементы страницы будут располагаться друг под другом [%] Интерфейс/Результат операции Наконец-то отследил и убрал все задвоения сообщений о результатах операции [%] Интерфейс/Логин Исправлено форматирование Изменена надпись "Имя игрока или е-мейл" на просто "Е-мейл" [%] Интерфейс/Копирайт Исправлен вывод версии патча БД [%] Интерфейс Поправлено форматирование на страницах: - Настройки - Император - Управление Альянсом 2019-10-08 06:28:37 45a43 [%] Интерфейс Исправлены ошибки форматирования на страницах: Император, Квест, Чёрный Рынок и некоторые другие 2019-10-07 16:30:24 45a40 [~] Интерфейс/Обзор планеты Немного переверстана страница 2019-10-07 16:11:55 45a39 [%] Интерфейс/Подсказки Исправлена ошибка рендеринга Подсказок вне враппера контента для темплейтов, рендерящих страницу целиком 2019-09-30 12:46:46 45a36 [%] Интерфейс/Обзор планеты Исправлен визуальный глюк 2019-09-30 12:36:52 45a35 [%] Исследования Исправлена ошибка, позволяющая запустить исследование на одной планете в то время, когда на другой планете строится/исследуется Лаборатория или Нанолаборатория при отключенной настройки сервера "BuildLab" Исследования блокируются даже если Лаборатория или Нанолаборатория сейчас не строятся, а просто находятся в очереди построек [@] Код/Темплейты Из хидера страницы извлечены тематические куски в отдельные файлы; стили, подключение JS итд Общие элементы темплейта страницы (хидер, футер, куски внутри хидера, навбар итд) вынесены в отдельную папку 2019-09-05 12:12:36 45a31 [@] Код JS таймер отчета (например - показ ресурсов псевдо-онлайн) теперь может работать по имени класса, а не только по ИД - т.е. управлять сразу несколькими элементами Бенчмарк теперь старается вставить данные о производительности в , а не после Теперь SnTemplate может выводить страницу целиком. Это даёт возможность объединить хидер и футер в один файл SnTemplate::display() теперь закрывает все существующие буффера вывода 2019-09-03 16:27:40 45a30 [@] Код Удалены неиспользуемые файлы [@] Код/Темплейты Теперь если у темплейта нет родителя или он не существует, то в качестве fallback темплейта используется темплейт по умолчанию 2019-09-03 01:44:27 45a26 [@] Код/Темплейты Добавлена поддержка наследования темплейтов (см. _template.ini): - Поддерживается только один уровень наследования - Поддерживается наследование и дозагрузка _template.css Добавлена поддержка переключения темплейтов (альфа-версия без вывод в интерфейс игроков) Убраны глобальные константы, относящиеся к темплейтам: TEMPLATE_NAME, TEMPLATE_DIR, TEMPLATE_PATH Добавлен метод для добавления JS файлов в темплейт из PHP Класс SnTemplate перенесен в каталог классов и использует автолоадер 2019-09-02 20:54:12 45a23 [~] Платежи/Интерфейс Улучшен вид страниц платежа: - Переработан вывод списков предустановленных валют, методов платежей, списка модулей - Почищен код страниц - Улучшена работа JS - Стили вынесены в файл стилей [~] Планета/Переименование Теперь при переименовании планеты на странице "Обзор" и "Управление планетой" имя планеты меняется сразу, а не после повторного обновления страницы [~] Интерфейс/Результат операции В темплейт заголовка добавлена проверка для избежания двойного вывода Убрано подключение вывода результата на страницах - "Темная Материя"/"Метаматерия" - "Ресурсы" - "Управление планетой" - "Переименование галактики/системы" [~] Интерфейс/Подсказки Подсказка теперь подключается при рендеринге страницы, а не в темплейте В темплейт подсказки добавлена проверка для избежания двойного вывода Убрано подключение подсказки на страницах: - "Переименование галактики/системы" [@] Код/JS Объект language теперь имеет метод addLocale для добавления в него строк локализаций [@] Код/PHP Начат рефакторинг файла includes/template.php: - Создан новый класс SnTemplate, куда перенесена часть функций в виде статических методов 2019-08-22 02:38:16 45a21 [%] Платежи Исправлена ошибка, когда одному платёжному методу соответствует только один модуль [@] Код/Платежи Рефакторинг кода платежей 2019-08-21 20:14:18 45a19 [!] Модули Изменена система версионирования модулей Теперь в качестве версии модуля используется версия билда, в котором были закоммичены изменения [~] Платежи Немного переверстана страница выбора способа оплаты [@] Код/Платежи Рефакторинг кода платежей 2019-08-19 17:21:50 45a16 [~] Альянсы/Рекомендуемые Альянсы Теперь список РА показывается и при простом заходе на страницу Альянса без поиска других Альянсов 2019-08-19 17:03:22 45a15 [+] Альянсы/Поиск В результаты поиска Альянсов и в "Рекомендуемые Альянсы" (см. ниже) добавлены две колонки: - Колонка "Разница в очках" указывает на разницу между количеством очков у игрока и средним количеством очков на одного игрока в Альянсе. Если она отрицательная - средний игрок в Альянсе имеет больше очков, чем текущий игрок - Колонка "Рейт" указывает на соотношение между количеством очков у игрока и средним количеством очков на одного игрока в Альянсе. Если она меньше единицы - средний игрок в Альянсе слабее, чем текущий игрок Для игрока без Альянса на странице поиска Альянса добавлен список "Рекомендуемые Альянсы" (далее - РА): - В РА попадают Альянсы, чьё среднее количество очков на игрока в Альянсе не более чем в 5 раз отличается от количества очков текущего игрока - РА сортируется по убыванию модуля разницы очков между количеством очков игрока и средним количеством очков Альянса Нужно отметить, что для начинающих игроков список РА будет, скорее всего, пуст - почти нет активных Альянсов, в которые входят только начинающие игроки Чем дальше играет и развивается игрок, тем больше Альянсов будет в этом списке. Однако, по мере приближения к Топу сервера, этот список будет очевидным образом сужаться 2019-08-16 08:06:29 45a14 [~] ЛС Добавлена иконка игнора в список сообщений 2019-08-15 21:10:03 45a13 [!] Админка/Редактирование планет Переписана и включена админка редактирования планет. Можно редактировать: - Строения - Флот - Оборону - Ресурсы Можно как добавлять юниты, так и удалять их (вводя значения с минусом) На экране просмотра игрока добавлена вкладка со списком планет, клик на которых открыает экран редактирования планеты [~] Чат/Интерфейс Отключёны автозамена/автокоррекция/итд в строке ввода сообщения [%] Скины/EpicBlue Добавлена подсветка активного таба в списке табов 2019-08-15 18:11:08 45a9 [%] Игрок playerTimeDiff: Исправлена ошибка в strict mode 2019-08-15 00:10:48 45a8 [!] Личные сообщения Переработан вид сообщений Добавлена функция игнора игроков в ЛС: - В личных сообщениях добавлена возможность добавить игрока в игнор-лист - Сообщения от игроков в игнор-листе не видны в списке ЛС - Убрать игрока из игнор-листа можно на соответствующей вкладке в "Настройках" [@] Код Защита от некорректно объявленного класса-потомка RecordV2 2019-08-05 07:28:53 45a3 [@] Код Глобальные константы PlayerTimeDiff перенесены в константы класса 2019-07-30 09:19:03 45a1 [@] Код Весь код, относящийся к замеру разницы времени, внесён в класс PlayerTimeDiff 2019-07-27 08:22:05 44d0 [!] Project "SuperNova.WS" Release 44 "10 years anniversary" Project "SuperNova.WS" Release 44 "10 years anniversary" 2019-07-13 15:40:48 44a109 [~] Платежи Добавлена поддержка отображения приблизительной конечной цены при покупке ММ (не для всех платёжных систем) Немного перевёрстана страница платежей [@] Код PTL: Добавлен подтип `money` в декоратор `numeric` 2019-07-08 10:52:54 44a107 [%] Платежи Исправлена ошибка при выборе платёжной подсистемы в СН 2019-07-08 10:09:17 44a104 [~] Платежи Поддержка модуля payment_unitpay_form 2019-07-04 12:03:06 44a102 [~] Платежи Поддержка модуля payment_interkassa_form 2019-06-25 06:06:10 44a100 [~] Альянсы Добавлена ссылка на страницу статистики Альянсов - список всех Альянсов и их статистика 2019-06-25 05:51:29 44a99 [~] Контакты Добавлена ссылка на ЛС членов администрации сервера Немного переверстана страница 2019-06-07 21:42:31 44a87 [@] Код Поддержка 10-летия СН 2019-05-26 16:46:32 44a84 [%] Юниты Исправлена ошибка в локализации в предыдущем коммите 2019-05-26 16:29:58 44a83 [~] Юниты Добавлена поддержка юнитов, которые игрок не может построить, но может получить в ходе Фестиваля или других активностей - требование UNIT_CAN_NOT_BE_BUILD 2019-03-01 08:56:50 44a73 [@] Код Улучшена работа с метаинформацией о таблицах в БД 2019-03-01 04:44:01 44a71 [@] Апдейтер Отдельный класс Updater для функций апдейтера 2019-02-12 06:34:47 44a41 [~] Безопасность Небольшой апдейт системы безопасности 2019-01-19 13:34:11 44a35 [+] Флоты/САБ Максимальное количество флотов в САБе ограничено 5 Теперь САБ ограничивается по сумме очков игроков: - Ограничение распространяется так же и в большую сторону, т.е. при атаке "слабыми" игроками "сильных" - В остальном - правила и коэфициенты те же, что и при расчёте сильных/слабых игроков (ака "нуб-защита") 2018-12-29 15:53:35 44a32 [@] Код Поддержка СНГ-2019 2018-12-28 12:08:14 44a26 [+] Админка/Активность игрока Красным баром добавлен процент активности в данном часе 2018-12-28 10:46:15 44a25 [!] Админка/Активность игрока Добавлен просмотр активности игрока - Работает только при включённом счётчике посещений - Ссылка - на админской странице просмотра игрока - Просмотреть можно активность с 1 января 2018 года - Интервал просмотра активности - 1 час - Пустой квадратик - активности в этот час не было - Заполненный - была активность. При наведении курсора - указывается час и активность в минутах - Из-за особенностей работы счётчика активность может быть более 1 часа 2018-12-22 11:42:20 44a12 [+] Счётчик Оптимизирована работа счётчика посещений: - Добавлена новая таблица `security_query_strings` для записи параметров запроса - `counter` теперь ссылается на записи в ней, а не на полный URL страницы - Изменена таблица `security_player_entry` - исключён ИД пользователя - `counter` теперь ссылается на записи в ней и не содержит поля с ИД устройства, браузера, IP/прокси 2018-12-22 08:27:16 44a10 [@] Модули Совместимость с модулем 'ad_promo_code' 2018-12-21 14:20:19 44a7 [@] SQL Откат с utf8mb4 к utf8 2018-12-21 14:00:41 44a5 [~] ad_promo_code Поддержка модуля 'ad_promo_code' [@] Код db_mysql::doquery() - убран неиспользуемый параметр $table 2018-11-12 22:51:12 43b2 [~] Апдейтер Исправлен скрипт установки 2018-11-12 08:49:32 43b0 [!] Project "SuperNova.WS" Release 43 "Double Release" Beta Project "SuperNova.WS" Release 43 "Double Release" Beta 2018-11-11 03:12:49 43a19.13 [~] Админка/Альянсы В админке теперь отображается форматирование текстов Альянса 2018-11-11 02:45:45 43a19.12 [~] Админка/Альянсы Ускорено чтение списка Альянсов [@] Код Класс AccessLogged прокрыт тестами на 100% 2018-06-11 20:47:16 43a19.2 [!] Скины Добавлены полноформатные изображения Наёмников 2018-06-11 19:51:26 43a19.1 [!] Скины Новые изображения Наёмников и Губренаторов в скине supernova-ivash Добавлены большие изображения для Губернаторов 2018-06-11 18:58:54 43a19.0 [!] Скины Новые изображения Наёмников и Губренаторов в скине EpicBlue 2018-06-01 06:46:21 43a18.29 [@] Код Поддержка 9-летия СН 2018-05-09 14:34:26 43a18.24 [~] Игроки/Счётчики Упроядочена работа счётчика игроков онлайн и всего 2018-05-04 13:13:49 43a18.23 [%] Флоты/Транспорт Исправлена ошибка невозможности отправить флот в миссию Транспорт 2018-05-04 12:00:45 43a18.22 [~] Флоты/Шпионаж Кардинально уменьшена эффективность sputnik-ов 2018-04-29 19:13:23 43a18.21 [%] Флоты Исправлена ошибка с отправкой перегруженного флота [@] Код Небольшой рефакторинг кода 2018-04-29 07:28:15 43a18.19 [@] Код Рефакторинг кода Новостей 2018-04-27 14:12:00 43a18.11 [@] Код Добавлен метод save() в EntityDB - пока без поддержки удаления Переписана отправка флотов с частичным использованием объектов Planet и Fleet Класс RepoV2 теперь не является имплементацией IController. Соответственно - переписаны магические методы как немагические 2018-04-27 08:49:24 43a18.10 [@] Код Функции из includes/db/db_queries_fleet.php переброшены в класс DbFleetStatic 2018-04-24 16:17:54 43a18.8 [@] Код Работа над EntiyDB, Fleet и новым кодом Экспедиции 2018-04-24 16:12:45 43a18.7 [@] Код В обсчёт статистики добавлена чистка пустых записей ACS 2018-04-24 15:25:25 43a18.6 [@] Код Исправлены почти все "ошибки" phpStorm в includes/db/db_queries_fleet.php 2018-04-24 15:22:08 43a18.5 [@] Код Трейт TContainer теперь поддерживает табличную трансляцию имён свойств объекта в имена свойств контейнера 2018-04-22 13:29:20 43a18.4 [@] Код Добавлена обработка падения игры по таймауту очистки языкового кэша с использованием xcache 2018-04-22 12:43:02 43a18.3 [~] Флоты/Экспедиции Теперь в Экспедиции не могут быть найдены ивентовые или уникальные мировые корабли 2018-04-21 16:19:23 43a18.2 [@] Код Доработки RepoV2 RepoV2 используется на страницах: - Постройки - Ресурсов - Обзор Планеты - Управление Планетой EntityDB: - Шпионаж (через MissionData) 2018-04-21 14:08:21 43a18.1 [@] Код Новые классы для репозитория и хранилища - RepoV2 и StorageV2 2018-04-21 12:10:38 43a18.0 [@] Код Добавлено логгирование фатальных ошибок Работа над новым кодом Экспедиции 2018-04-18 11:29:26 43a17.12 [%] Флоты/Шпионаж Исправлена другая ошибка в вычислении анти-шпионажа 2018-04-16 12:59:11 43a17.8 [+] Админка/Просмотр игрока Добавлена информация об аккаунте игрока Добавлена возможность сменить пароль на аккаунте [@] Админка/Просмотр игрока Рефакторинг страницы просмотра игрока Убраны почти все подсвеченные phpStorm 'ошибки' SQL (из-за отсутствия поддержки префиксов в phpStorm) 2018-04-10 11:29:14 43a17.3 [%] Флоты/Шпионаж Исправлена ошибка в вычислении анти-шпионажа 2018-04-09 09:29:59 43a17.1 [%] Админка/Настройки Слишком маленькое поле для списка спрятанных игроков обрезало этот список 2018-04-08 09:21:12 43a17.0 [-] Поиск В поиске отключён поиск ботов 2018-04-08 09:08:11 43a16.54 [+] ЛС Админитраторам включены BBCode и поддержка ссылок в отправляемых ими сообщениях 2018-04-08 07:50:13 43a16.53 [~] Игроки/Рендер ников Рендерер званий вынесен в отдельный метод для унификации и использования в остальном коде 2018-04-08 06:23:47 43a16.52 [@] Модули Поддержка core_festival 8a18 2018-04-07 14:07:36 43a16.51 [+] Миссии/Шпионаж Добавлена поддержка анти-шпионажа 2018-04-06 07:48:56 43a16.50 [%] Авторизация Исправлена ошибка с невозможностью зарегестрироваться в игре 2018-04-05 21:11:09 43a16.49 [~] Меню Рамка меню изменена на тонкую [@] Код Добавлено возобновление таймаута страницы после отработки диспетчера флотов Добавлен отдельный таймаут для выполнения xcache_unset_by_prefix() db_user_count() теперь не считает ботов 2018-04-05 19:51:19 43a16.48 [+] Скины Добавлены картинки технологий для нового ивента 2018-04-05 17:39:03 43a16.47 [@] Код Теперь можно задавать картинки для планет при создании 2018-04-05 12:20:21 43a16.46 [+] Скины Добавлены картинки кораблей для нового ивента 2018-04-04 16:49:11 43a16.45 [!] Админка Добавлена статистика на страницу платежей 2018-03-27 22:58:34 43a16.41 [@] Тесты Исправлены инклюды 2018-03-27 08:00:28 43a16.39 [@] Код Константы разнесены по файлам в includes/constants 2018-03-25 21:55:44 43a16.25 [@] Код Добавлена поддержка модуля admin_balance 2018-03-25 12:54:26 43a16.23 [@] Код Где возможно - вставлены константы USER_BOT_PLAYER итд Прописаны некоторые недостающие поля в classConfig Переделаны player_create() и uni_create_planet() что бы не использовать глобальные переменные В uni_create_planet() добавлена возможность форсировать выбор имени планеты 2018-03-25 01:46:34 43a16.18 [@] Код Еще упрощена и расшита функция eco_get_build_data() Немного переформатирован и почищен код 2018-03-24 21:31:51 43a16.16 [~] Постройки Теперь пункты в списке требований к постройке являются ссылками на статью Новапедии о соответствующем юните/сущности игры Теперь при сносе здания учитываются наличие Губернатора и статус Столицы - снос при Губернаторе и/или на Столице происходит быстрее Теперь время строительства и сноса округляется вверх, а не математически. Это значит, что в среднем в половине случаев время постройки/сноса увеличится на 1 секунду [@] Код Переработка системы очередей Добавлена таблица для нового хайспота Расшита функция eco_get_build_data(). Часть её функционала вынесена в класс BuildDataStatic, а еще часть сделана хуками 2018-03-24 03:14:48 43a16.11 [@] Код Поддержка изменений в модуле Фестивалей 2018-03-23 03:00:04 43a16.8 [@] Код Поддержка изменений в модуле Фестивалей 2018-03-22 20:49:18 43a16.3 [%] Админка/Добыча игроков Исправлены последствия автозамены по коду. В результате неправильно считало общую добычу. Ручками надо заменять, ручками... 2018-03-22 16:28:33 43a16.1 [~] Админка/Модули Сортировка модулей по активности сделана дефолтной 2018-03-22 16:09:47 43a16.1 [%] Темплейты Принципиально исправлена ошибка, когда скомпилированный код темплейтов не видел $lang - теперь используется доступ к $lang через статик SN 2018-03-22 15:50:22 43a16.0 [-] Темплейты/Меню УБРАНО - Теперь можно добавлять пункты даже в пустое меню 2018-03-22 15:05:34 43a15.30 [!] Вёрстка Сделан более универсальный патч, который снимет потенциальные проблемы с исчезающим скроллом в Сркщьу 65 на любых экранах Соответственно - исправлена ошибка с пропаданием скролла в режиме Сканирования Вселенной на маленьких экранах в Сркщьу [+] Вселенная Перевёрстана панель выбора Галактики/Системы: - Теперь она будет масштабироваться в зависимости от размера экрана - Ну и на вид стала поприятнее Теперь имена Игроков/Альянсов в случае длинных названий не "ломаются" по статусам, а остаются на одной строке 2018-03-22 14:02:10 43a15.29 [!] Админка/Модули Новый экран со списком модулей, доступных в игре и их статусе Есть сортировка по имени модуля и по его активности [+] Админка/Добыча игроков Добавлена колонка с суммарной производительностью в металле На экран добавлены сортировки [~] Темплейты/Меню Теперь можно добавлять пункты даже в пустое меню [~] Админка/Меню Если в админском меню не стоит AUTH_LEVEL - прописывается высший (AUTH_LEVEL_ADMINISTRATOR = 3) 2018-03-22 10:46:30 43a15.27 [@] Код В модулях из манифеста в свойства класса вынесены $active и $installed Почищен неиспользуемый код 2018-03-21 15:06:05 43a15.22 [%] Юнит-тесты Исправлены юнит-тесты 2018-03-21 14:28:18 43a15.20 [@] Код Раскидал часть классов по неймспейсам 2018-03-21 13:09:38 43a15.18 [@] Код Раскидал часть классов по неймспейсам 2018-03-21 12:36:55 43a15.16 [@] Код Рефакторинг кода 2018-03-21 10:24:54 43a15.14 [%] Конфигурация Исправлена очепятка в коде удаления ключа 2018-03-21 09:58:35 43a15.12 [@] Код Рефакторинг кода Исправлен потенциальный E_NOTICE в классе SnBootstrap В класс \classConfig добавлен метод __unset() который удаляет переменную из базы 2018-03-21 04:06:14 43a15.9 [@] Код Рефакторинг кода 2018-03-21 00:06:40 43a15.6 [+] Модули Добавлена поддержка MVC-опций в модулях (подмассив 'mvc' манифеста) [~] Флоты/Интерфейс Теперь при нехватке места в трюме под топливо на странице выбора миссии выводится соответствующее сообщение [~] Вселенная/Планеты Упрощена генерация имени планеты Так же учитывается статус Столицы при генерации имени планеты [@] Код При удалении пользователя теперь: - Удаляются юниты игрока - Не удаляются сообщения, связанные с пользователем - они будут почищены при обслуживании - ВРЕМЕННО не удаляется Альянс, в котором пользователь был последним игроком ВРЕМЕННО При обслуживании не удаляются пустые Альянсы Заменено 'fleet_update_skip' => PAGE_OPTION_FLEET_UPDATE_SKIP Добавлена опция PAGE_OPTION_ADMIN для обозначения страницы как админской до её загрузки Админские страницы теперь не вызывают обсчёт флота (используется опция MVC PAGE_OPTION_ADMIN) Функция DeleteSelectedUser() стала методом в Player\PlayerStatic Метод Universe::fleetsReturn() для отзыва всех флотов с указанной локации 2018-03-20 16:52:45 43a15.4 [@] Код Класс Modules\Modules переименован в Modules\ModulesManager Небольшой рефакторинг предыдущего кода 2018-03-20 01:39:16 43a15.2 [%] Модули Добавлен отсутствующий файл класса Modules\Manager 2018-03-19 23:34:15 43a15.0 - Рефакторинг подсистемы модулей [!] Модули Переписана и отрефакторена подсистема управления модулями Добавлены новые методы в базовый класс модулей sn_module Класс sn_module: - Убрана зависимость от полей манифеста модуля: - 'load_order' => getLoadOrder(), self::M_LOAD_ORDER Класс Modules\Manager: - В этот класс вынесен функционал управления модулями из класса sn_module - Включает в себя так же функционал убраных глобальных переменных $sn_module и $sn_module_list Убрана поддержка модулей из одного файла и модулей без структуры sn_modules sn_sys_load_php_files() - убран блок для $modules = true; [@] Код Индекс 'require' заменен на P_REQUIRE или TPL_BLOCK_REQUIRE - в соответствии с контекстом 2018-03-18 16:14:41 43a14.19 [@] Код Добавлены классы поддержки чейн-коллов Pimp и Hooker, а так же производный класс SnPimp В GlobalContainer добавлено свойство $pimp 2018-03-17 19:32:23 43a14.18 [%] Альянсы/Дипломатия Исправлены и уточнены сообщения, отправляемые в ЛС при принятии предложений об изменении отношений между Альянсами 2018-03-17 18:45:38 43a14.17 [+] Админка/Настройки Добавлена возможность настраивать опции смены имени игроком [~] Игрок/Настройки Теперь если смена имени игрока (ника) запрещена настройками сервера - то так и пишется в Настройках Игрока [~] Квесты Добавлены разделители тысяч к целям и наградам квестов [@] Код Добавлена временная функция декодирования строк JSON с фоллбэком на unserialize для старых строк 2018-03-16 23:58:18 43a14.12 [~] Картинки Еще чутка пережаты картинки [~] Звуки Немного пережаты звуки 2018-03-16 09:19:00 43a14.10 [@] Код Поддержка модулей player_award 0d5 и core_festival 7a3 2018-03-16 09:18:07 43a14.9 core_festival 7a3 [!] Хайспот/8 Марта Полностью переработан код админки и награждения Теперь так же в админке начисляется ММ и выдаются Памятные Знаки Кавалеров 2018-03-16 09:12:57 43a14.8 player_award 0d5 [+] 8 марта Разделены награды за количество ММ и за персон для Кавалеров и Дам Добавлены все нужные изображения медалей 2018-03-14 14:55:23 43a14.5 [@] Код Поддержка player_award 0d4 2018-03-14 14:49:35 43a14.4 player_award 0d4 [+] 8 марта Универсальные медали и памятные знаки для ивента 8 марта 2018-03-13 20:05:09 43a14.3 [!] Настройки Рефакторинг кода и переработка дизайна страницы настроек 2018-03-13 12:12:39 43a14.2 menu_customize 0d9 [%] Настройки Исправлена ошибка, не дающая сохранить настройки 2018-03-12 22:46:54 43a14.1 [@] Код Класс classSupernova переименован в SN 2018-03-12 17:39:41 43a13.39 [~] О сервере В футере и на странице информации о сервере к версии движка теперь добавляется номер патча БД 2018-03-12 17:03:26 43a13.38 [~] Админка/Меню Название уровня члена АД-ии (Модератор, Оператор итд) теперь является ссылкой на возврат в игру 2018-03-12 16:16:59 43a13.36 [~] Экономика/Исследования Изменено название страницы на 'Исследование технологий', что бы не было путаницы между пунктами меню "Исследования" и "Технологии" Добавлена ссылка на закладку списка Технологий в Новапедии 2018-03-12 15:13:17 43a13.35 [~] Новости Цвет ссылки "Подробнее..." изменен на ярко-голубой для лучшей читаемости 2018-03-12 15:05:46 43a13.34 [@] Вёрстка Хак для Google Chrome v65, возвращающий горизонтальную полосу прокрутки на широких экранах (например, "Империя" и "Массовые Операции") 2018-03-12 13:23:10 43a13.33 [@] БД Увеличен размер поля `value` в таблице `player_options` до 16000 символов - перестали влезать настройки меню, гггг 2018-03-11 21:07:04 43a13.32 [@] Код Немного переделан автолоадер 2018-03-11 20:55:53 43a13.31 [@] Код Немного переделан автолоадер 2018-03-11 20:34:00 43a13.29 player_login_token 0a8 - Струя удачи [!] Струя удачи Струя удачи: - Теперь при входе в игру несколько дней подряд количество токенов, получаемых игроком в день, медленно увеличивается - это и называется "струя удачи" - Если игрок не входит в игру хотя бы один - "струя" иссякает и количество токенов в день опять падает до 1 - Максимальное количество токенов, которые можно получить в день - 6 Сильно переработан попап с оповещением о получении токена. Теперь в нём выводится практически вся доступная информация по токену Расширена и переработана подсказка игрока на странице 2018-03-11 17:18:10 43a13.28 [@] Код Автолоадер: - Теперь по одному пути может быть несколько неймспейсов; - Теперь можно загружать классы с любыми неймспейсами из произвольных мест файловой системы: - При регистрации пути в автолоадере задаётся классовый префикс; - Этот префикс игнорируется в неймспейсе класса при генерации имени файла; - Классовый префикс может быть как полным, так и частичным; - Например, при задании префикса "Module" и пути "folder" класс "Module\Test\Sub" будет грузится из каталога "folder\Test\Sub" Опции игрока: - Добавлена возможность форсирования загрузки опций из БД, минуя кэш в памяти Добавлено несколько констант времени и его форматирования Поддержка player_login_token 0a8 2018-03-11 12:08:38 43a13.26 [@] Код Код инициализации автолоадера вынесен в конструктор класса sn_module 2018-03-07 12:00:47 43a13.24 [%] Апдейтер Исправлена ошибка повторного обновления таблицы для core_festival 2018-03-07 09:23:41 43a13.23 [@] Код Поддержка core_festival 7a0 2018-03-07 09:19:00 43a13.21 core_festival 7a0 [#] core_festival 7a0 [!] Хайспот/8 Марта Добавлена возможность Кавалеру открыть свой ник Добавлена возможность добавить текстовое поздравление к подарку В списках подарков у Дам и Кавалеров каждый подарок теперь выводится отдельно В списке полученных подарков у Дам: - Выводится поздравление, если оно есть; - Выводится игровой ник подарившего, если он решил его открыть; В списке отправленных подарков у Кавалеров: - Выводится значок (А) после имени Дамы, если подарок был сделан анонимно, т.е. без раскрытия ника; - Выводится поздравление, если оно есть; Теперь когда Кавалер дарит подарок, Даме отправляется личное сообщение с уведомлением. Сообщение содержит: - Подаренную и начисленную (с учётом подарка от АД-ии) суммы ММ; - Имя Кавалера, если он решил его раскрыть; - Текст поздравления, если он есть 2018-03-05 22:06:27 43a13.20 [@] Код Поддержка player_login_token 0a6 2018-03-05 22:04:24 43a13.19 player_login_token 0a6 [!] Алгоритм Изменён алгоритм генерации таблицы призов: - На порядки увеличено количество получаемых кораблей; - Очень значительно увеличены шансы выпадения Артефактов, а так же доступность Артефактов по уровням игроков; В целом, очень значительно увеличилась средняя ценность приза [%] Артефакты Исправлено неправильное отображение количества Артефактов при выигрыше - они всегда выигрываются по 1 штуке 2018-03-05 13:43:56 43a13.17 [@] Код Класс PlayerLevelHelper теперь всегда выдаёт полную таблицу для всех уровней игроков, а не только для тех, что есть в БД 2018-03-05 13:39:34 43a13.16 [!] Админка/Добыча игроков Страница просмотра общей добычи игроков [@] Код Рендерер ников теперь проверяет наличие соответствующих полей в массиве игрока 2018-03-03 08:43:49 43a13.14 [!] Столица Теперь на Столице скорость строительства зданий, флота и обороны повышена в два раза Теперь на Столице скорость добычи ресурсов повышена в два раза Добавлена индикация Столицы в имени планеты иконкой ♕ ♕ - В списке планет в навбаре - На странице "Обзор планеты" - На странице "Империя" - На странице "Вселенная" [+] Вселенная/Луны Добавлена индикация Луны в имени планеты иконкой ☽ U+263D ☽ - В списке планет в навбаре - На странице "Обзор планеты" - На странице "Империя" 2018-03-01 15:22:32 43a13.13 [@] Дизайн Добавлен стиль для модуля chat_advanced 2018-03-01 15:18:13 43a13.11 chat_advanced 6a4 [+] Респонзивный дизайн Улучшено отображение чата для экранов разных размеров Добавлено автоматическое скрытие правой панели (списка онлайн игроков) на мелких экранах с возможностью показать список онлайн 2018-03-01 11:31:14 43a13.10 [~] Чат Оптимизированы CSS-стили 2018-03-01 10:53:41 43a13.9 [~] Чат Оптимизированы CSS-стили Вынесен JS-код из темплейта 2018-03-01 09:17:46 43a13.8 [@] Дизайн Добавлен стиль для модуля chat_advanced 2018-03-01 09:15:05 43a13.7 [%] Чат Возвёрнуты назад скобки к вставляемому нику при ссылке на ник 2018-03-01 08:15:48 43a13.6 [~] Чат Доработан вид сообщений в чате: - Выровнены время сообщения, ник (и иконки) и само сообщение - Уменьшен размер передаваемых данных для приходящих сообщений - Улучшен генерируемый HTML-код [~] Воинские звания Немного изменены иконки званий младшего офицерского состава (9-11 уровень) 2018-03-01 08:14:09 43a13.5 [%] Вселенная Исправлено задвоение значка "Отпуск" 2018-02-28 09:44:39 43a13.3 [+] Воинские звания Добавлен дополнительный уменьшенный комплект иконок специально для ников - для большей отзывчивости интерфейса На иконки воинских званий в никах добавлены всплывающие подсказки с названиями званийи и уровнем [+] Админка/Список игроков К никам игроков добавлены иконки званий, отпуска, ДР и наград Уменьшен размер страницы 2018-02-28 07:29:37 43a13.2 [~] Картинки Еще немножко уменьшены размеры картинок 2018-02-28 04:51:31 43a13.0 - Воинские звания [!] Воинские звания В игру добавлены уровни игроков и военные звания для каждого уровня Уровни присваиваются в зависимости от общего количества очков игрока Если в настройках сервера отключён показ статистики для команды сервера, то все члены команды имеют 20й уровень и соответствующее звание вне зависимости от реального количества очков Звания показываются перед ником игрока везде, где это имеет смысл Так же картинка звания показывается на странице профиля игрока (ака "Император") Всего в игре 21 звание - от Курсанта (уровень 0) до Генералиссимуса (уровень 20) Посмотреть полный список званий и соответствующих им уровней можно кликнув на картинку звания на странице Император [~] Игроки/Ники Вид ников во всей игре унифицирован с новым видом на странице "Статистика" 2018-02-27 09:33:47 43a12.12 [~] Игроки/Статистика Изменен порядок вывода иконок для имени игрока 2018-02-27 09:31:55 43a12.11 [~] Игроки/Статистика Убрана отдельная колонка для ссылки на страницу игрока. Теперь клик на нике является такой ссылкой Добавлено выделение названия Альянса как ссылки Изменен порядок вывода иконок для имени игрока 2018-02-27 08:58:10 43a12.10 [%] Игроки/Ники Исправлена ошибка некорректного рендеринга ников 2018-02-27 08:32:46 43a12.8 [+] Апдейтер Добавлен механизм патчей: проверка существования патча и его регистрация Отформатирован код [~] Игроки/Ники В рендерере ников функции serialize()/unserialize() заменены на функции json_encode()/json_decode() Добавлена возможность сортировки элементов ника в произвольном порядке 2018-02-18 16:12:58 43a12.7 [@] Код В бутстрап добавлено время на инициализацию игры при холодном кэше 2018-02-18 15:56:13 43a12.6 [%] Игроки Исправлена ошибка расчёта максимального уровня Игрока в игре [@] Код Продолжение разработки нового кода для Экспедиции Новый класс Common\OutcomeManager для выбора одного варианта из массива возможных вариантов с разными шансами на появление 2018-02-17 21:13:29 43a12.5 [+] Симулятор Добавлен чекбокс "Симуляция", отключающий фактор случайности и гарантирующий повторяемость результатов Симулятора 2018-02-15 14:01:10 43a12.4 [+] Симулятор Теперь при создании Луны указывается количество обломков, которое образовалось бы без создания Луны [~] Артефакты Артефакты класса "Крюк" теперь не меняют количество обломков на орбите - т.е. Луна появляется без траты обломков [%] UBE Исправлена ошибка с нулевым размером Луны в отчётах 2018-02-13 12:31:38 43a12.2 [+] Вселенная/Луны Теперь при создании лун учитывается текущая скорость добычи ресурсов: - Например, для сервера со скоростью добычи x10 стоимость создания луны так же удесятеряется - Исправлена древняя ошибка, из-за которой луна после боя могла получится больше, чем на неё потрачено ресурсов Унифицированы алгоритмы создания лун после боя, через Артефакты, через Админку итд [@] Код/UBE Продолжен рефакторинг кода UBE 2018-02-13 09:05:46 43a12.1 [%] UBE Исправлена ошибка 2018-02-13 07:10:16 43a12.0 [@] Код/UBE Сворачивание процедур UBE в классы (UBEv4.1) 2018-02-13 05:18:54 43a11.9 [+] Список планет В списке планет на иконках построек/верфи/обороны добавлено количество активных слотов в очереди 2018-02-05 13:03:26 43a11.8 [!] Темплейты Добавлен класс Ptl\PtlVariableDecorator для форматирования текста в блоках по разметке темплейта - В блоках вызовы prettyNumberStyledDefault() заменены на форматирование внутри темплейтов; 2018-02-01 10:46:35 43a11.7 [@] Код Рефакторинг страницы "Империя" и связанного с ней кода 2018-02-01 09:28:23 43a11.6 [@] Код Рефакторинг страниц "Обзор Планеты" и "Империя" и связанного с ней кода 2018-02-01 08:12:31 43a11.5 [%] Обзор Планеты Исправлена ошибка с неразделением флотов в списке летящих на текущую и другие планеты 2018-02-01 07:41:38 43a11.4 [%] Обзор Планеты Исправлена ошибка с непоявлением количества входящих ресурсов в некоторых случаях 2018-01-25 11:08:40 43a11.3 [@] Код Рефакторинг страницы "Обзор Планеты" и связанного с ней кода 2018-01-25 05:28:57 43a11.2 [@] Код Небольшой рефакторинг Губернаторов 2018-01-08 16:36:57 43a11.0 [@] Код Функционал найма Губернаторов вынесен в отдельный класс 2018-01-01 21:21:28 43a10.23 [%] Флот Исправлена отладка в коде 2017-12-26 19:50:26 43a10.22 [%] Новости Убрана кнопка "Добавить новость" для не-администрации 2017-12-19 00:30:38 43a10.21 [+] BBCode Добавлена поддержка BBCode [news=XXX] для вставки прямой ссылки на Новость Добавлена поддержка сокращённого URL news://XXX для вставки прямой ссылки на Новость [+] Чат Добавлена трансляция в сообщении полного URL с ссылкой на новость в BBCode Добавлена трансляция в сообщении сокращённого URL news://XXX в BBCode 2017-12-18 23:45:31 43a10.19 [+] Новости Добавлена возможность ссылаться на отдельную новость: - Ссылка на новость "прячется" под датой новости; - При открытии - открывается только одна указанная Новость; - Под заголовком страницы добавляется ссылка "Все новости" для возврата к полному списку новостей; 2017-12-18 23:00:28 43a10.17 [+] Новости Добавлена листалка на страницу Новостей. Теперь можно посмотреть Новости за всю историю игры! Добавлен заголовок страницы "Новости" Форма добавления новости спрятана под кнопку "Добавить новость" - что бы не мозолила АД-ии глаза 2017-12-17 13:44:13 43a10.12 [~] Изображения Пережаты изображения без потерь качества 2017-12-13 16:56:27 43a10.0 [@] Код Добавлен хелпер для рассчёта уровней игроков \Player\PlayerLevelHelper 2017-12-13 13:35:46 43a9.19 [@] Код Добавлен механизм дополнительного рендеринга элементов страницы через $template_result[TEMPLATE_EXTRA_ARRAY] 2017-12-13 10:37:53 43a9.18 [~] Флоты Теперь статус "Новый игрок" рассчитывается с учётом скорости добычи ресурсов [~] Модули Поддержка player_login_token 0a0 [@] Код Альфа-версия класса MissionExplore 2017-12-06 15:33:17 43a9.15 [@] Код Небольшой рефакторинг и еще один юнит-тест для подсистемы бонусов 2017-12-04 04:02:37 43a9.13 [@] Код Функция sn_module_get_active_count() перемещена в sn_module::sn_module_get_active_count() 2017-12-04 03:48:38 43a9.11 [@] Код Из файла general.php часть функций вынесены в отдельные файлы и классы 2017-12-04 01:18:00 43a9.8 [@] Код Переписана работа BonusAtomXXX и связанных классов 2017-12-03 23:25:54 43a9.7 [@] Код Юнит-тесты для части механизма бонусов 2017-12-03 02:00:47 43a9.5 [@] Код В описании юнитов 'bonus_type' заменено на P_BONUS_TYPE, 'bonus' заменено на P_BONUS_VALUE 2017-12-02 17:29:26 43a9.4 [@] Код Класс BonusDescription развернут в семейство классов BonusAtomXXX Переработан класс BonusListAtom (бывш BonusDescriptionList) 2017-12-02 09:54:39 43a9.3 [@] Код Альфа-версия поддержки авторасчёта бонусов Механизм бонусов используется для расчёта скоростей игры, добычи и флота 2017-12-01 03:13:30 43a9.0 [@] Код Добавлен плейсхолдер Bonus\BonusCatalog 2017-11-28 12:43:36 43a8.8 [+] Админка Доработана админка Альянсов [@] Код AllianceStatic разобран на классы Alliance\* 2017-11-28 03:07:30 43a8.7 [+] Сообщения При просмотре сообщений оставлена лишь кнопка "Удалить отмеченные сообщения" ввиду бессмысленности остальных опций Если нет отмеченных сообщений кнопка "Удалить..." неактивна При просмотре сообщений добавлена кнопка "Показать все" - для показа всех сообщений в категории 2017-11-26 07:11:02 43a8.6 [~] Обучение Обучение по умолчанию отключено 2017-11-26 06:54:14 43a8.5 [~] Награды/Бессмертный Лимит для получения статуса "Бессмертный" увеличен до 200.000 ММ 2017-11-26 06:45:10 43a8.4 [~] Обновление Количество ММ для награды Бессмертного теперь берется из конфигурации 2017-11-26 06:40:25 43a8.3 [+] Награды/Бессмертный Теперь не меняется дата/время установки статуса после повторных начислений ММ Теперь так же при установке статуса начисляется памятный знак Памятный знак будет начислен всем Бессмертным при апдейте 2017-11-26 05:22:37 43a8.2 [+] Платежи В платежи добавлена листалка 2017-11-26 00:07:35 43a8.1 [!] Сообщения Добавлено листание сообщений по страницам. Каждая страница вмещает по 10 сообщений На странице просмотра сообщений в дроп-дауне выделены цветом удаление всех сообщений категории и всех личных сообщений Убрано удаление неотмеченных сообщений. Теперь просто отметить мультигалочкой (галочкой в заголовке) все сообщения на странице и удалить их 2017-11-25 19:30:17 43a8.0 [@] Код Добавлена класс-пейджинатор для текстовых sql-запросов 2017-11-24 05:07:29 43a7.16 [#] Поддержка core_festival 6a8 2017-11-04 20:30:11 43a7.11 [%] Вселенная Исправлена ошибка неудаления проэкспайрившихся лун 2017-10-31 00:52:03 43a7.0 [@] Код Из класса classSupernova в отдельный класс _SnCacheInternal вынесены все операции с внутренним кэшем 2017-10-30 20:33:48 43a6.18 [+] Админка Добавлен емейл игрока в список игроков (для auth_level 3) Добавлен статус отпуска игрока в список игроков (для auth_level 3) и сортировка по этому полю [~] Обслуживание Обслуживание теперь так же не удаляет админские сообщения [%] Миссии/Шпионаж Исправлена ошибка, если не найдена игрок-отправитель флота или цель/хозяин цели Шпионажа [%] Код Скорректировано несколько инклюдов для вызова из Админки - пути к файлам расширены до полных 2017-10-24 06:15:11 43a6.15 [~] Навбар Добавлена поддержка изменения ТМ/ММ во время работы страницы 2017-10-20 05:23:19 43a6.6 [~] Чат Поддержка модуля чата 2017-10-19 20:26:27 43a6.5 [~] Админка/Перепаковка счётчиков посещений (СП) Теперь выводится результат перепаковки Теперь считается количество обработанных записей Теперь неизменённые записи не записываются в БД Добавлен счётчик обработанных и пропущенных записей Добавлено новое условие прерывания обработки - если разница между ID обработанных записей меньше размера пакета Добавлено дополнительное время на операцию удаления записей 2017-10-18 09:27:27 43a6.1 [~] Админка/Перепаковка счётчиков посещений (СП) Теперь не пакуются хиты свежее трёх недель Теперь так же считаются общие хиты за визит Теперь записи удаляются и обновляются пакетом Теперь корректно обрабатываются визиты, находящиеся на стыке пакетов 2017-10-17 09:49:24 43a6.0 [!] Админка/Перепаковка счётчиков посещений (СП) См. страницу "Утилиты". Работает на машинах с 2Gb+ под PHP [~] Админка/Обслуживание Очистка СП от записей несуществующих пользователей [@] Код \DBAL\DbMysqliResultIterator и метод db_mysql->selectIterator() 2017-10-16 08:00:38 43a5.3 [%] Интерфейс/Строительство В подсказке по изменению производительности шахт убрано смещение в строке с текущим уровнем шахты Изменена индикация бонусов за уровни Астрокартографии 2017-10-15 11:54:26 43a5.0 [@] Код Рефакторинг /includes/functions/eco_get_planet_caps.php -> \Meta\Economic\ResourceCalculations 2017-10-13 00:55:41 43a4.9 [@] Код Рассчитываемое поле 'caps' планеты теперь нигде не используется 2017-10-12 23:07:52 43a4.7 [%] Миссии/Шпионаж Исправлена ошибка обнаружения флота при вероятности 0% Удалён неиспользуемый код 2017-10-12 16:18:03 43a4.6 - Переработка шпионажа [~] Миссии/Шпионаж Миссия переписана с нуля Теперь в таблице `messages` сохраняются данные, а не HTML-код: - Значительно уменьшен объем данных, сохраняемых в БД; - Увеличено количество информации в БД; - Рендеринг сообщения осуществляется непосредственно при просмотре, а не при сканировании; - Уменьшено время на обсчёт миссии (см.пред.пункт); Исправлена ошибка, при которой флоты с шансом обнаружения выше 100% не уничтожались Теперь на электронную почту не отправляются полные шпионские отчёты, а лишь уведомление о сообщении типа "шпионаж" (без различия входящих и исходящих) 2017-10-12 12:07:40 43a4.5 [@] Код Рефакторинг \Fleet\MissionEspionage 2017-10-12 10:03:45 43a4.4 [@] Код Рефакторинг /includes/includes/flt_mission_spy.php -> \Fleet\MissionEspionage 2017-10-11 12:51:50 43a4.3 [@] БД Добавлен признак json-кодирования `message_json` в таблице `messages` 2017-10-10 11:21:44 43a4.2 [~] Сообщения Добавлены разделители тысяч в количестве юнитов в шпионском отчёте 2017-10-08 17:34:41 43a4.0 [@] Код ЛС - рефакторинг: \messages.php -> \Deprecated\PageMessages 2017-10-04 08:44:41 43a3.15 [%] Админка/Альянсы Исправлена передача Альянса 2017-10-04 08:37:41 43a3.14 [@] Код Рефакторинг ActiveRecordAbstract 2017-10-04 02:57:26 43a3.12 [@] Код Функция pretty_number() убрана из кода 2017-10-04 01:59:42 43a3.9 [@] Код Вызов pretty_number() убран из базового кода 2017-10-04 01:39:39 43a3.8 [@] Код Вызов pretty_number() убран почти отовсюду 2017-10-04 01:21:05 43a3.6 [%] Интерфейс/Ресурсы Исправлена невозможность смены ядра планеты [@] Код Вызов pretty_number() заменён на prettyNumberStyledCompare() 2017-10-04 00:30:00 43a3.5 [@] Код Вызов pretty_number() заменён на prettyNumberStyledDefault() там, где было простое стилизирование чисел от 0 2017-10-03 23:58:20 43a3.4 [@] Код Вызов pretty_number() заменён на HelperString::numberFloorAndFormat() там, где было простое форматирование чисел 2017-10-02 22:47:16 43a2.26 [@] Код PTL: - Добавлен класс \phpbb_hook из phpBB3 для поддержки работы PTL (из phpBB3 /includes/hooks/index.php) - Прописан phpDoc для хинтов класса 2017-10-02 22:36:38 43a2.25 [@] Код PTL - Вызов eval() инкапсулирован в отдельный метод \template()->evaluate() для облегчения игнора предупреждений в code sniffers 2017-10-02 22:13:00 43a2.24 [@] Код PTL - Исправлена ошибка неправильного ре-рендера при отключённом минификаторе 2017-10-01 17:43:27 43a2.22 [~] Империя Добавлен новый уровень цветового кодирования процентов производства. Теперь схема выглядит так: - Голубой - 100% производства - Зеленый - 90-80%%; - Жёлтый - 70-50%%; - Оранжевый - 40-10%%; - Красный - 0%; Теперь фон дроп-дауна так же подсвечивается в зависимости от процента производства по вышеописанной схеме Добавлено цветовое кодирование для процентов в дропдауне - см. выше. Цвет букв более яркий для лучшего чтения на фоне текущего производства [@] Код /includes/pages/imperium.php -> \Deprecated\PageImperium с оптимизацией и рефакторингом 2017-10-01 13:51:33 43a2.18 [@] Git Отладка хуков 2017-10-01 13:25:49 43a2.16 [@] Код Добавлен класс \Meta\Economic\EconomicHelper - Метод ::getResourcesExchange() - бывш. general.php::get_resource_exchange() - Юнит-тесты 2017-10-01 11:45:30 43a2.15 [~] Проверка верcии движка - /ajax_version_check.php преобразован в класс \Tools\VersionCheckerDeprecated - В init.php переделан вызов версион-чекера 2017-09-30 10:41:09 43a2.10 [@] Код Флоты/Своз ресурсов: - /includes/includes/flt_page5.inc - преобразован в класс \Deprecated\PageFleet5Gathering.php - Из темплейта fleet5.tpl.html извлечён JS-код - Рефакторинг 2017-09-30 07:56:16 43a2.8 [~] Интерфейс/Наёмники+Планы Добавлен список требований при покупке перманентных Наёмников Отключены элементы покупки при неудовлетворённых требованиях по юнитам (в случае перманентных Наёмников) Убрано дублирование сообщения об ошибках 2017-09-30 05:53:35 43a2.4 [@] Код \Deprecated\PageMercenary - рефакторинг 2017-09-30 05:42:07 43a2.3 [@] Код /includes/includes/mrc_mercenary.php - преобразован в класс \Deprecated\PageMercenary 2017-09-30 05:13:36 43a2.2 [@] Код /galaxy.php - Еще упрощён код /includes/functions/qst_quest.php - Рефакторинг кода 2017-09-25 11:11:39 43a2.0 - Улучшение Обзора Империи [+] Империя В тайтл страницы (заголовок окна браузера) добавлено название страницы "Обзор Империи" Добавлены разделители тысяч ко всем количествам юнитов: имеющихся на планете, стоящих в очереди, летящих с флотами К количеству ресурсов на планете и производству добавлена индикация ресурсов на летящих на планету флотах 2017-09-25 04:15:45 43a1.33 [@] Код /galaxy.php - Убраны все замечания от IDE; - Оптимизирована работа с Лунами; - Оптимизирована работа с обломками; - Уменьшено количество холостых циклов; /includes/pages/imperium.php - Рефакторинг /overview.php - Небольшой рефакторинг для лучшей совместимости с Империей 2017-09-24 23:52:53 43a1.28 [@] Код Флоты: - serialize/unserialize для usedfleet заменено на пару json_encode/json_decode - /includes/include/flt_page1.php:127 - закомментирована как неиспользуемая //'ships' => str_rot13(base64_encode(serialize($ships))), 2017-09-24 22:50:09 43a1.26 [@] Код /admin/admin_metamatter.php:81 - Исправлена ошибка сравнения вместо использования empty() 2017-09-24 22:35:54 43a1.25 [@] Код /admin/admin_locale.php:122 - more strict string sanitizing //fwrite($file_handler, "'" . str_replace(array("\\", "'"), array('\\\\', "\\'"), $string_value[$lang_id]) . "',"); fwrite($file_handler, "'" . addslashes($string_value[$lang_id]) . "',"); ActiveRecordAbstract - Fixed phpDoc - Replaced direct field name 'id' with aliased class constant - :273 //$recordId = $this->id; $recordId = $this->{self::ID_PROPERTY_NAME}; - :310 //$this->id = $this->dbLastInsertId(); $this->{self::ID_PROPERTY_NAME} = $this->dbLastInsertId(); - :460 - Fixed loose comparsion HelperString: removed debug code 2017-09-24 19:31:43 43a1.24 [%] Статистика/Обсчёт Исправлено неправильное определение длительности последней операции 2017-09-24 19:15:32 43a1.23 [%] Код Добавил отсутствующие файлы 2017-09-24 19:12:30 43a1.22 [~] Интерфейс/Окно сообщений Теперь при отключении сервера не показывается навбар - не производится лишних расчётов/обращений к БД [~] Бенчмарк Добавлена дата и время начала операции, для которой проводится бенчмарк [~] Статистика/Обновление Теперь при сбое всех стандартных способов уведомления о занятости сервера выдаётся стандартная простая заглушка [@] Код classConfig: В аннотацию добавлены некоторые переменные для поддержки со стороны IDE classPersistent: Немного документации для метода pass() /includes/db/db_queries.php: Удалена часть запросов, относящихся исключительно к подсчёту статы Статистика: - Дефолтное минимальное время между запусками статы вынесено в константу STATS_RUN_INTERVAL_MINIMUM; - Функции по обработке статистики вынесены в классы: - Статический класс StatUpdateLauncher, который управляет запуском обновления; - Статический класс StatCalculator - расчёт статистики 2017-09-24 12:57:56 43a1.21 [@] Код ActiveRecords: - Переупорядочены расположения методов в классах - Добавлены юнит-тесты на базовую функциональность ActiveRecords 2017-09-24 12:54:26 43a1.20 [@] Код Отладка - исправлена невозможность сохранения дампа при наличии closure в любом уровне аргументов бэктрейса 2017-07-12 05:26:44 43a1.18 [@] Код Работа над ActiveRecords 2017-06-28 09:17:53 43a1.17 [@] Код Класс AccessLogged и тесты для него 2017-06-24 07:46:31 43a1.15 [@] Код Простенькая глобальная шина событий EventBus 2017-06-19 17:03:45 43a1.13 [@] Код ActiveRecord->defaultValues(): - Выставляет для отсутствюущих полей значения по умолчанию; - Значения по умолчанию берутся из схемы таблицы в БД; - Поддерживает CURRENT_TIMESTAMP для типа поля `timestamp` - будет установлено в SN_TIME_SQL; - Поля со свойством auto_increment игнорируются; - Используется в insert(), update() и fromProperties() 2017-06-19 16:09:10 43a1.12 [@] Код Класс TableSсhema - получение схемы таблицы 2017-06-19 12:17:46 43a1.11 [@] Код Работа над ActiveRecord 2017-06-17 15:35:00 43a1.3 [@] Код ActiveRecordStatic переделан в обычный ActiveRecord 2017-06-16 13:20:43 43a1.2 [@] Код Начата переделка ActiveRecordStatic в нормальный ActiveRecord 2017-06-16 13:15:07 43a1.1 [~] Админка/Альянсы Доработано форматирование 2017-06-15 23:18:03 43a1.0 [%] Админка/Альянсы Исправлена очепятка 2017-06-15 21:19:53 43a0.16 [@] Код Патч для устранения в разнице работы basename() под Windows и Linux 2017-06-15 20:48:17 43a0.15 [!] Админка/Альянсы Добавлена страница для просмотра списка Альянсов Добавлена страница для просмотра отдельного Альянса: - Дамп записи Альянса; - Список игроков с рангами, онлайном, отпуском, баном; - Передача Альянса другому игроку; - Цветовое кодирование Главы: - Зеленый - активен на протяжении 30 дней; - Красный - неактивен. 2017-06-15 06:59:23 43a0.13 [@] Код Убрана global $skip_fleet_update 2017-06-15 06:43:59 43a0.11 [@] Код Перенес константы CACHE_xxx в класс кэшера 2017-06-15 06:32:06 43a0.9 [@] Код classPersistent: добавлен метод pass(), заставляющий читать/писать следующую переменную из/в БД 2017-06-15 04:44:57 43a0.8 [@] Код Новый класс FleetDispatcher: инкапсулированы функции FFH Bootstrap: назначения констант вынесены из класса в init.php - для поддержки phpStorm-ом Новый класс Watchdog: набор методов для "слежения" за переменными конфигурации и проверка условий по дельте времени 2017-06-13 12:37:53 43a0.3 [-] Апдейтер Удалены апдейты по релиз 39 включительно [@] Код Класс ActiveRecordStatic: добавлено семейство методов find() \DBAL\DbQuery::insert() теперь является protected. Тесты переписаны соответственно 2017-06-12 14:59:17 43a0.2 [!] PHP Для работы СН требуется PHP не ниже 5.5 [@] Код Убрано использование sys_refresh_tablelist() 2017-06-12 14:32:20 43a0.0 [@] Код Добавлен класс DBAL\Schema() 2017-06-12 09:24:47 42c0 [!] Project "SuperNova.WS" Release 42 "8th anniversary" Release Candidate Обновлён файл docs/changelog.txt 2017-06-11 11:11:21 42a30.0 [@] Код Упорядочена процедура инициализации 2017-06-09 21:51:47 42a29.15 [~] Флоты/Менеджер флотов Ещё расширено диагностическое сообщение в логах 2017-06-09 21:30:37 42a29.14 [~] Флоты/Менеджер флотов Теперь время работы менеджера флотов вычисляется непосредственно с начала его работы, а маскимальное время работы уменьшено до 3 секунд (регулируется константой GAME_FLEET_HANDLER_MAX_TIME) Так же расширено диагностическое сообщение в логах 2017-06-08 17:03:55 42a29.6 [@] Код Поддержка core_festival 5a4.0+ 2017-06-04 19:55:31 42a29.4 [+] Админка/Изменение ММ Полностью переписано начисление ММ Теперь можно изменять ММ так же по ID или имени игрока Теперь перед изменением ММ можно посмотреть, что будет изменено - и лишь потом подтвердить изменения 2017-06-04 17:08:48 42a29.3 [+] Админка/ИзменениеТМ Переписано изменение ТМ [@] Код Класс ExceptionSnLocalized: - Локализует сообщения об эксцепшнах при вызове getMessageLocalized() - использует $lang - Может включать вызов sprintf() для внедрения данных по шаблону. Данные указываются четвертым параметром при вызове конструктора 2017-06-04 14:12:30 42a29.1 [~] Админка Пункт меню "Тёмная материя" стал заголовком 2017-06-04 14:07:27 42a29.0 [~] Админка Теперь при неудачной попытке начислить ТМ/ММ назад в форму возвращается причина начисления 2017-06-04 02:54:37 42a28.42 [@] Код Добавлена функция sign() 2017-06-02 22:51:45 42a28.29 [@] Код Поддержка Хайспота "Чёрная Луна" 2017-05-30 14:18:22 42a28.24 [~] Флоты/САБ Переверстана страница подбора игроков в САБ [~] Вселенная/Переименование Переверстана страница переименования Галактик/систем 2017-04-15 00:47:15 42a28.17 [%] UBE/Боевой отчёт Исправлено отсутствие локализации для BBcode в боевом отчёте 2017-04-14 21:53:31 42a28.16 [~] UBE/Боевой отчёт Добавлен BBCode для вставки в чат ссылки на бой 2017-04-14 14:15:19 42a28.13 [~] Меню Добавлена опция настройки логотипа сервера в меню - опция 'menu_server_logo' в таблице `config`: - Пустое значение - использовать логотип по умолчанию; - В остальных случаях строка трактуется, как относительный путь к картинке (от корня игры), например - 'design/images/supernova.png' - Опция 'menu_server_logo_disabled' позволяет отключить логотип в меню Добавлена опция отключения названия сервера в меню - опция 'menu_server_name_disabled' в таблице `config`: Добавлена опция отключения даты запуска в меню - опция 'menu_launch_date_disabled' в таблице `config`: 2017-04-14 00:53:28 42a28.12 [~] PTL Доббавлены хинты к PHP-коду, выводящему значения в рендерённом темплейте Переменные конфига теперь выводятся через объект свойство classSupernova::$config Для вывода переменных конфига используется ArrayAccess для синтаксически-корректной записи [@] Код classCache теперь реализует интерфейс ArrayAccess [@] Тесты Добавлены PTL-тесты для префикса {C_xxx} 2017-04-13 02:17:19 42a28.9 [#] core_festival v4a4.0 Поддержка core_festival v4a4.0 [@] Код Добавлены методы в HelperArray 2017-04-03 15:28:13 42a28.3 [%] Сообщение Исправлено задвоение информации об отправке сообщения 2017-04-03 14:59:07 42a28.2 [~] Альянсы Добавлены более понятные сообщения об ошибках при попытках сменить имя или тэг Альянса на уже существующие в игре 2017-04-03 14:39:57 42a28.1 [@] Код Теперь при загрузке стандартных CSS проводится проверка на физическое наличие файлов: - Если есть минифицированный CSS - грузится он - В противном случае проверяется наличие оригинального файла - Если файлов вообще нет - соответствующая строка не добавляется в хидер страницы 2017-03-28 14:18:41 42a28.0 [!] Биржа ресурсов Базовая вёрстка страницы + часть JS-функционала [@] Код JS: - Пространство имён "sn" для дальнейшего использования - Базовый функионал объекта локализации sn.l() и sn.l.unitName() - Рекурсивный подсчёт стоимости юнита/пака стэкируемых юнитов - sn.eco.getPriceIn() и sn.eco.getCostIn() - Кэширование результатов для дальнейшего использования - События/обработчики для ainput - ainputEnable и ainputDisable 2017-03-22 16:04:24 42a27.15 [@] Код Рефакторинг messageBox-ов Рефакторинг рендеринга хидера 2017-03-22 10:58:31 42a27.14 [-] Обзор Планеты Отключена ранняя загрузка 2017-03-21 21:26:06 42a27.13 [-] Строительство Отключена ранняя загрузка на странице строительства 2017-03-21 19:55:11 42a27.11 [%] Строительство Исправлена ошибка задвоения юнитов 2017-03-21 18:44:26 42a27.6 [!] Ранняя загрузка Включена на страницах overview.php и buildings.php [@] Код Добавлена возможность выводить стандартные элементы страницы (меню и навбар) перед выполнением основного кода: - Это даёт возможность браузеру начать загрузку остальных элементов страницы во время выполнения основного кода; - Ранний вывод заголовка возможна не всегда и требует поддержки со стороны серверной части; - Буфферизация вывода должна быть отключена как в PHP, так и в настройках веб-сервера; - Должна быть отключена компрессия в PHP; - Метод подключения PHP к веб-серверу должен поддерживать стриминг вывода; - Код страницы не должен менять заголовки. В частности - не делать редиректы средствами PHP; - Title страницы нужно задать заранее в описании через $sn_mvc['pages'][<имя страницы>][PAGE_OPTION_TITLE]; - Для включения - выставить $sn_mvc['pages'][<имя страницы>][PAGE_OPTION_EARLY_HEADER] в true; Теперь _error-404.php возвращает всегда статус 200 2017-03-21 13:08:57 42a27.4 [@] Код Обновлена версия ION Sound до 3.0.8 Добавлена полная версия библиотеки в docs/extra Включено кэширование звуков в браузере 2017-03-21 12:43:36 42a27.3 [@] Код Темплейт _page опять разбит на header и footer Результаты операции в структуре result теперь выводятся стандартными механизмами, а не хаком Вывод ADV_SEO_SCRIPT перенесен выше по коду, что бы он не тормозил дальнешую загрузку - Яндекс и Гугль теперь используют https протокол - их скрипты должны ВСЕГДА грузится с префиксом https:// Звуки теперь загружаются Добавлен служебный файл _error-404.php - на него можно сделать редирект для обработки ошибок 404. Его вывод подходит так же для CSS и JS файлов 2017-03-19 14:11:31 42a27.2 [#] player_award Поддержка player_award v0с7 2017-03-11 20:09:51 42a26.15 [@] Код Добавлено новое поле `skins` в таблицу `users` на замену убраному полю `dpath` 2017-03-06 00:43:16 42a26.4 [#] core_festival Поддержка core_festival v4a0.0 [@] Код Теперь в навбаре можно программно добавлять кнопки в основной ряд кнопок 2017-03-06 00:40:41 42a26.3 [#] core_festival 4a0.0 (!) Highspot "8 Марта" Добавлен Ивент "8 Марта": - При включённом Ивенте в навбаре в конце основного блока кнопок появляется новая кнопка, ведущая на страницу Ивента - На странице Ивента игрок с указанным в профиле мужским полом может подарить метаматерию игроку-женщине - Подарок будет снят со счёта игрока-мужчины и зачислен на счёт игрока-женщине - При зачислении игроку-женщине будет начислено на 25% больше ММ - Минимальное количество снимаемой метаматерии - 20.000 ММ - Игрок-мужчина может увидеть кому он делал подарки, сколько было списано со счёта и сколько было начислено (~) Фестивали Фестиваль считается активным только если имеет хоть один активный хайспот 2017-03-05 02:37:20 42a26.2 [~] Квесты В списке квестов к фильтру добавлен вариант "Все, кроме выполненных" 2017-03-04 17:09:11 42a26.1 [+] Квесты На страницу просмотра квестов добавлен фильтр квестов по статусу: - Состояние фильтра запоминается между визитами на страницу квестов [@] Код Квесты: - CSS-код вынесен в _template.css Добавлен интерфейс IPage Добавлена проверка на разрешенные экшны на страницах 2017-03-04 13:03:43 42a26.0 [!] Квесты Полностью переделан интерфейс квестов 2017-03-04 11:49:35 42a25.26 [+] Квесты Новый статус квеста - "Начат": - Квест отмечается как "Начат", если был построен хоть один юнит из условий квеста; - Отметка выставляется в момент завершения постройки первого юнита - Уже построенные юниты не учитываются - нужно построить хотя бы один юнит, что бы сменить статус квеста - Количество начатых квестов отображаетя в навбаре на кнопке квестов желтым цветом 2017-03-04 10:26:45 42a25.24 [@] Рефакторинг PHP Strict - устранены нотисы вызова AjaxController::view() в /includes/general.php Расшит метод classSupernova::db_query на 4 разных Некоторые устаревшие функции доступа к БД заменены операциями через \DBAL\DbQuery 2017-03-03 21:40:35 42a25.20 [@] Рефакторинг PHP Strict - устранены нотисы в BBCodeParse.php 2017-03-03 14:21:48 42a25.19 [~] Навбар Ресурсбар: - Цветовое кодирование к количеству производимой энергии в ресурсбаре - Цветовое кодирование к попапам в ресурсбаре - Отдельный попап для энергии, выводящий потребление [@] Код В JS добавлены аналоги Tools::fillPercentStyle(): - Number.prototype.spanByValue() - Number.prototype.spanByMaximum() В TPL добавлены аналоги Tools::fillPercentStyle(): - _number_percent_class.tpl.html - _number_color_value.tpl.html - _number_color_maximum.tpl.html 2017-03-01 16:41:39 42a25.18 [%] Навбар Исправлена ошибка отображения производимой энергии 2017-03-01 16:32:18 42a25.17 [~] Навбар В ресурсбаре улучшена индикация заполнения складов: - Если количество ресурсов больше объема склада (> 100%) - размер склада будет выведен красным - Если ресурсов <= 100%, но > 90% - оранжевым - <= 90%, но > 75% - желтым - <= 75%, но > 50% - синим - <= 50% - зеленым - И, наконец, если склада нет и количество ресурсов на планете равно нулю - размер склада будет выведен белым [@] Код Добавлена универсальная функция цветового кодирования Tools::fillPercentStyle() 2017-03-01 11:40:45 42a25.14 [@] Рефакторинг В админке все проверки доступа заменены вызовом AdminCheckLevel() Убраны все упоминания глобальной переменной $parse 2017-03-01 11:27:52 42a25.12 [@] Пакет Отдельный каталог extra в подкаталоге docs для разного 2017-03-01 10:46:46 42a25.11 [@] Рефакторинг Убрана глобальная переменная $phpbb_root_path 2017-02-28 13:09:26 42a25.8 [@] Рефакторинг Еще убраны лишние вызовы функции parsetemplate() Убран неиспользуемый код и соответствующие темплейты - admin/changelog.php - не работал - admin/messall.php - не работал - admin/paneladmina.php - не используется 2017-02-28 12:51:45 42a25.7 [+] Альянсы Включена отключенная ранее опция рассылки сообщений членам Альянса - кнопка "Послать сообщения всему Альянсу" в блоке "Управлеение Альянсом" Переверстаны некоторые страницы [+] Админка Переверстаны страницы: - Администрирование чата - Утилиты [@] Рефакторинг Убраны почти все лишние вызовы функции parsetemplate() Убран неиспользуемый код и соответствующие темплейты - changelog.php - не работал - admin/add_research.php - не работал из-за смены формата хранения юнитов - admin/del_research.php - не работал из-за смены формата хранения юнитов - admin/deletuser.php - просто не работал 2017-02-28 09:39:20 42a25.4 [%] Симулятор В верхней строке теперь не выводится надпись "Код доступа" [@] Рефакторинг Упрощёна сигнатура функции display() до двух параметров. Соотвественно изменены вызовы Объединены файлы темплейта _global_header и _global_footer в _page. Вывод данных производится в общий темплейт Изменены некоторые SQL-запросы для совместимости с подсветкой синтаксиса phpStorm Удалены куски неиспользуемого кода 2017-02-27 21:52:44 42a25.2 [@] Код Добавлен класс-эмулятор текущего пользователя TheUser - для замены $dpath Рендерер ников использует скины для получения иконок ДР, пола и отпуска Из кода убрано использвание $dpath - остался только в базе 2017-02-27 14:26:36 42a25.1 [%] Навбар Исправлена ошибка показа в попапе ресурсбара неправильного объёма склада при ОЧЕНЬ больших складах 2017-02-27 14:15:14 42a25.0 [~] Навбар Теперь в ресурсбаре Альянсов не показывается ненужная строка ёмкости хранилищ 2017-02-25 16:18:54 42a24.10 [@] Код Убран неиспользуемый класс skin 2017-02-25 16:16:02 42a24.9 [!] Админка Рефакторинг страницы просмотра информации об игроке 2017-02-25 14:09:30 42a24.7 [!] Темплейты Класс PTLTag: - Замена элементов темплейта их значением - Формат: {{|[elementID]|...}> - используется для идентификации. Должен быть отрезан перед передачей в PTLTag - - текст - [elementID] - название элемента в квадратных скобках. Поддерживаются следующие элементы: - Корневые значения {VAR} -> [VAR] - Переменные темплейта из $DEFINE - {$VAR} -> [$VAR] - Блоковые переменные на текущем уровне - {block.VAR] -> [block.VAR] - Количество и комбинации текста и названий элементов могут быть любыми: - На примере тэга {I_xxx}: {I_unit_[unit.ID]_red_[UNIT_SIZE]} - Сейчас поддерживается в тэгах {R_xxx} и {I_xxx} - см. примеры ниже Новый тег косвенной адресации {R_[XXX]}: - Позволяет в рантайме выводить значение из элемента, чьё имя генерируется во время исполнения темплейта - Пример: - Пусть у нас в темплейте есть тэг {R_[RENDER]} - Пусть во время исполнения корневой элемент 'VAR' равен 'VALUE'; - Пусть во время исполнения корневой элемент 'RENDER' равен '{VAR}' - Тогда во время компиляции сгенерируется исполнимый код, который во время исполнения темплейта проделает следующее: - Возьмет значение переменной 'RENDER', т.е. '{VAR}' - Динамически скомпилирует код для вывода переменной '{VAR}' - Исполнит его и выведет значение элемента 'VAR', т.е. в нашем конкретном случае - выведет 'VALUE' - Тэг надо использовать с осторожностью, избегай вывода переменных, полученных напрямую от пользователя - Содержимое элемента может быть любым тэгом из поддерживаемых темплейтом: {$VAR}, {block.VAR}, {D_xxx}, {I_xxx} итд Тэг изображения {I_xxx} теперь работает через класс PTLTag - Пример: - Пусть в skin.ini есть записи s_black_moon = "planeten/small/s_black_moon.jpg" black_moon = "planeten/black_moon.jpg" - Пусть в темплейте есть директива - Тогда тэг {I_[$BLACK]} выведет 'planeten/black_moon.jpg' - А вот тэг {I_s_[$BLACK]} выведет 'planeten/small/s_black_moon.jpg' - В квадратных скобках можно использовать любые имена элментов, поддерживаемых PTLTag 2017-02-23 13:56:39 42a24.4 [!] Темплейты Начата переделка темплейтов для поддержки мультитемплейтов 2017-02-22 17:31:05 42a24.1 [!] Вёрстка Перевёрстан базовый темплейт: - Переделан на DIV-ах - Меню, навбар и дополнения (новости, заметки итд) подключаются теперь в _global_header 2017-02-22 12:26:27 42a23.17 [+] Навбар В старом ресурсбаре теперь так же работают всплывающие окна с подсказками [+] Обзор планеты В список ресурсов на планете добавились всплывающие окна с подсказками 2017-02-22 10:53:11 42a23.13 [+] Навбар Полностью переверстан новый ресурсбар Улучшена поддержка IE в старом/новом ресурсбарах 2017-02-22 04:48:50 42a23.10 [@] Код Упрощены CSS-стили набара 2017-02-22 04:02:48 42a23.8 [@] Код В темплейтах навбара настройки планетбара вынесены в темплейтные переменные 2017-02-22 01:46:23 42a23.6 [@] Код Теперь при обмене ресурсов используется код RPG_MARKET_EXCHANGE = 35 вместо RPG_MARKET = 6 2017-02-21 02:05:54 42a23.5 [@] Код Унифицирован код набаровских кнопок с очередями, а так же упрощена вёрстка и CSS 2017-02-21 00:33:30 42a23.4 [@] Код Отформатирован код кнопок навбара 2017-02-21 00:24:49 42a23.3 [@] Код Навбар - Кнопки с очередями (Исследования, Постройки, Верфь) вынесены из темплейта навбара в отдельные файлы - Отформатирован HTML-код навбара 2017-02-20 22:12:58 42a23.1 [%] Строительство Исправлена ошибка на экране исследований при которой не включалась кнопка "Исследовать" на планетах у которых закончилось свободное место 2017-02-20 21:54:36 42a23.0 [~] Навбар Новости навбара вынесены в отдельный темплейт Заметки навбара вынесены в отдельный темплейт 2017-02-19 12:14:23 42a22.4 [~] Админка/Статистика регистраций Добавлено количество аккаунтов - т.е. без учёта чисток Для детализации по дням месяца теперь показывается день недели 2017-02-19 11:44:28 42a22.3 [~] Регистрация Теперь новый игрок начинает игру со всеми прочитанными новостями 2017-02-19 08:33:17 42a22.2 [+] Вселенная В режиме сканирования теперь работают попапы на лунах/планетах/итд [%] Админка Исправлена ошибка при попытке имперсонации в несуществующего пользователя 2017-02-18 21:38:25 42a22.1 [!] Админка Добавлена страница с балансом материи 2017-02-18 17:06:17 42a22.0 [!] Вселенная Добавлен режим сканирования Вселенной: - Вход в режим осуществляется нажатием кнопки "Включить режима сканирования" - Выход - нажатием кнопки "Выйти из режима сканирования" - Вид Вселенной переключается на минималистический - Убираются лишние вертикальные отступы в ячейках - В режиме сканирования отключаются: меню, навбар, подсказки - Так же в режиме сканирования отключаются рамки вокруг таблиц, если они были включены в Настройках 2017-02-18 15:14:37 42a21.13 [~] Навбар По умолчанию показ ёмкости в ресубаре теперь включен. Опция в настройках отключает показ ресурсов 2017-02-18 15:05:57 42a21.12 [+] Навбар В настройках добавлена опция показа ёмкости складов в ресурсбаре. Опция действует как в новом, так и в старом ресурсбарах 2017-02-18 13:33:58 42a21.11 [@] Код Убран неиспользуемый класс userOptionsOld 2017-02-18 09:54:34 42a21.10 [%] Флоты В отправке флотов на странице выбора точки назначения переписан JS - изменения в ресурс-баре почему-то дали кидать тут ошибку [@] Код Объявления функций classSupernova::db_changeset_xxx сделаны static - убраны лишние notice 2017-02-18 01:46:46 42a21.9 [+] Интерфейс Теперь так же работает перетаскивание элементов тапом на тач-скринах В частности - теперь можно поменять положение окна Советника на мобильных устройствах 2017-02-18 01:36:03 42a21.8 [%] Новости Исправлена сломанная кнопка "Показать текст новости" 2017-02-18 00:56:33 42a21.7 [+] Навбар Вместо букв-маркеров ресурсов (М, К, Д итд) используются иконки Новый планетбар используется по умолчанию В "Настройки" добавлена опция включения старого планетбара 2017-02-17 12:47:37 42a21.6 [+] Навбар В новый планетбар добавлена поддержка вертикального расположения в навбаре Добавлены разделители тысяч в попапе нового планетбара Включен стандартный попап для энергии в новом планетбаре 2017-02-17 11:11:55 42a21.5 [+] Навбар Верстка: металл+кристалл и дейтерий+энергия/тм объединены в блоки - так красивее работает адаптивный дизайн CSS и JS из темплейта вынесены в соответствующие файлы 2017-02-17 09:26:42 42a21.4 [%] Флоты На странице флотов в полёте исправлена ошибка, когда в таблице флотов вместо общего количества показывался список активных экспедиций 2017-02-17 09:25:10 42a21.3 [+] Навбар Добавлена обратная совместимость со старыми ресурсбарами (вертикальным и горизонтальным) Добавлена поддержка показа ресурсов Альянса 2017-02-16 06:41:04 42a21.0 [!] Навбар Новый ресурсбар (количество ресурсов на планете/в Альянсе) - теперь встроенный в навбар Выводится количество ресурсов на планете, а для электроэнергии - баланс (т.е. производство минус потребление) При наведении курсора мыши на ячейку с ресурсом (металл, кристалл, дейтерий) появляется попап, в котором указывается: - Полное название ресурса; - Количество ресурсов на складе; - Размер склада; - Заполнение склада в процентах При открытом попапе клик на ячейку закроет попап Так же попап открывается при клике/тапе на ячейке - для мобильных устройств Планетбар переверстан с использованием flex и поддерживает адаптивный дизайн [@] Код Заменена библиотека jQuery UI - добавлены виджеты Menu и ToolTip 2017-02-15 23:19:01 42a20.21 [!] Админка Небольшой тест функиональности phpBB Template Engine в "Утилитах" [~] PTL Теперь PTL при отсутствии переменных LA_xxx выводит полное название переменной с префиксом, т.е. 'LA_xxx' вместо 'xxx' [%] Админка Исправлена работа форсированного обновления с нуля [@] Код Теперь заголовок окна может передаваться в переменной темплейта PAGE_TITLE 2017-02-15 13:13:35 42a20.19 [~] Обучение Теперь окно обучения при перезагрузке страницы не "прыгает" из правого нижнего угла, а сразу открывается в нужном месте 2017-02-15 12:33:27 42a20.17 [!] bbCode Переписана работа с bbCode Класс BBCodeParser переделан в динамический Работа со списком смайликов и bbCode вынесены в новый класс Design Из класса classSupernova убран теперь неиспользуемый массив $design Базовые смайлики и bbCode вынесены в vars.php 2017-02-15 09:50:16 42a20.16 [%] bbCode Исправлена ошибка с нерабочими bbCode в чате у обычных игроков 2017-02-14 19:37:02 42a20.13 [%] bbCode Исправлена ошибка с неинициализацией bbCodeParser 2017-02-14 17:13:45 42a20.11 [~] Обновление Пересоздана таблица `text` 2017-02-14 16:30:41 42a20.9 [+] Обучение Текст и заголовок Обучения теперь могут использовать bbCode 2017-02-14 15:42:59 42a20.8 [%] Документация Добавлен утерянный readme.html 2017-02-14 13:55:31 42a20.7 [%] Обучение Исправлена ошибка показа блока при полном отсутствии туториала 2017-02-14 13:43:06 42a20.5 [@] Код Убрано использование функции cht_message_parse() в модулях Убрано использование функции sys_bbcodeParse() 2017-02-14 13:17:28 42a20.3 [@] Код Убрано использование функции cht_message_parse() в основном коде 2017-02-14 12:49:40 42a20.2 [+] bbCode Новый bbCode - [urlw=URL]text[/urlw] - разворачивается в активную ссылку, которая переодит по URL в текущем окне Новый префикс "faq://link.html" - разворачивается в активную ссылку на "link.html" в ЧаВо (FAQ) - если ЧаВо сконфигурировано в настройках сервера Активная ссылка на боевой отчёт теперь открывается в текущем окне Для bbCode [c] появилась полная версия [color] Теперь URL боевого отчёта с текущего сервера автоматически преобразуется в активную ссылку на боевой отчёт Теперь ссылки bbCode, открывающиеся в новом окне, подчёркиваются двойной линией [@] Код Добавлена автоинициализация статической части класса через статический метод _constructorStatic() (с ОДНИМ подчёркиванием!) Добавлен класс BBCodeParser 2017-02-14 10:39:35 42a20.1 [~] Новости Переделан вывод результатов опроса для того, что бы не перекрывать всплывающие окна 2017-02-14 10:21:32 42a18 [~] Обучение Локализованы строки в JS Обучения Убран доступ к опции PLAYER_OPTION_TUTORIAL_WINDOWED - статус хранится на стороне игрока 2017-02-13 13:44:18 42a17 [+] Обучение Теперь обучение можно открыть в окне - По умолчанию окно открывается в правом нижнем углу страницы - Окно прилеплено и не меняет местоположение при скролле - Окно можно перемещать по странице, таская его за заголовок - Статус обучения (на странице в навбаре или в окне), а так же положение окна на экране сохраняется в куках отдельно на каждом устройстве Теперь можно задать ID первого текста из таблицы `text` в обучаловке - опция 'tutorial_first_item' в таблице `config` Теперь при сбросе обучения так же сбрасывается статус "обучение завершено" [+] Лицензия Добавлен файл docs/credits.txt для списка используемых материалов и соответствующих копирайтов [@] Код Добавлена библиотека JS для поддержки кукесов 2017-02-13 09:31:36 42a16 [~] Обучение Добавлены локализации кнопок - ru, en 2017-02-12 19:11:37 42a15 [+] Обучение Первая рабочая версия Обучения Работающие кнопки "Вперед", "Назад", "Закончить" Подгрузка новых текстов через AJAX [@] Код Базовый контроллер AjaxController Скелетные классы Storage и Repository Первая итерация класса PageTutorial Первая итерация классов для энтити Text Вынесена часть кода из рендера навбара в отдельные функции 2017-02-10 04:46:42 42a12 [@] Код Добавлены классы AccessAccessors 2017-02-10 01:27:02 42a11 [@] Код Добавлен интерфейс IContainer Добавлены классы Invoker, AccessorMagic и AccessorsV2 с тестами 2017-02-08 23:00:13 42a10 [!] Обучение Добавлен блок "Обучение" в навбар: - Заголовок с кнопкой "Закрыть" (действует только на текущей странице) - Основной текстовой блок с картинкой Советника - Блок с кнопками - Футер В "Настройки" добавлены опции: - Новые опции располагаются на вкладке "Интерфейс", подвкладка "Обучение" - Опция отключения Обучения - Опция показа Обучения во всплывающем окне (popup) [~] Новости Переделана кнопка "Закрыть" в блоке новостей - вынесены стили в CSS, а обработчик нажатия - в JS 2017-02-07 16:57:17 42a8 [@] Код Добавлены классы: DBAL\DbQuery, HelperArray и Validators, а так же тесты для них и для Pimple 2017-02-07 13:34:05 42a6 [#] Модули {~} Документация Файлы с документацией переименованы в соответствии с нзваниями модулей {%} misc_radio 2c4 Исправлена ошибка незагрузки минифицированного дизайна {@} Код Модули переписаны на использование $manifest['mvc']['pages'] Во все модули добавлено свойство $versionCommitted - автозаменяемое значение, указывающее на версии, в которой был сделан коммит модуля [@] Код Добавлен код для отдельной регистрации страниц модулей 2017-02-07 12:25:29 42a2 [@] Код Данные страниц перенесены из $sn_data в $sn_mvc Из файлов страниц описания MVC занесены в vars.php 2017-02-07 09:43:45 42a0 [~] Новости На обзоре страницы теперь можно ограничивать показываемые новости так же по времени публикации: - Настройка game_news_overview_show в таблице config устанавливает давность новости; - Задаётся в секундах. По умолчанию - новости давнее 2 недель (1209600 секунд) не показываются; - При установке в 0 показывает все новости; 2017-02-07 08:08:51 41d0 Project "SuperNova.WS" Release 41 [!] Project "SuperNova.WS" Release 41 "Festival batch fleet navbar" 2017-02-03 18:05:28 41b2 [~] Инсталляция Обновлены SQL-файлы до версии 41 2017-02-03 16:10:49 41b1 [-] Апгрейд Апгрейд с очень старый версий движка (СН версии 36 и ниже) больше не поддерживается 2017-02-03 15:52:44 41b0 Project "SuperNova.WS" Release 41 Beta [!] Project "SuperNova.WS" Release 41 "Festival batch fleet navbar" Beta Обновлён файл docs/changelog.txt [~] Друзья Теперь можно отправлять пустой запрос на дружбу (хотя кому и зачем это может понадобиться - непонятно) [~] МПР Теперь можно атаковать ракетами свои же планеты. Таким образом можно избавится от излишних ракет или перехватчиков в шахтах, а так же уничтожать свои защитные сооружения [~] Флоты Время возвращения флота из САБа теперь равно времени полёта на САБ, а не чистому времени полёта флота 2016-10-29 10:43:27 41a60.19 [@] Код Папка с классами перемещена в корень движка - автолоадер изменен соответствующим образом Переименованы файлы с классами для полной поддержки PSR-4 автолоадера 2016-10-08 19:18:12 41a60.5 [@] Код Поддержка модуля interface_batch_operations 2016-09-26 09:33:39 41a9.7 [%] Строительство Исправлены ошибка с иногда не срабатывающей кнопкой "Уничтожить строение" 2016-09-25 19:26:24 41a9.5 [%] Авторизация Исправлена очепятка в запросе автогенерации имени [@] Код/JS Обновлена библиотеека Ion Sound до версии 3.0.7 2016-09-18 20:55:05 41a9.3 [%] Строительство Исправлена ошибка с неправильным отображением характеристики кораблей/обороны на страницах постройки 2016-09-18 18:02:18 41a9.2 [+] Дизайн Снова оптимизированы картинки более совершенной версией оптимизатора 2016-09-18 11:32:58 41a8.31 [%] Строительство Исправлена ошибка с неизменяемыми остатками в таблице ресурсов при постройке флота/обороны 2016-09-18 10:22:47 41a8.30 [%] Строительство Исправлены нерабочие кнопки "+" и "-" в интерфейсе строительства 2016-09-17 23:32:18 41a8.29 [%] Заметки/Закладки Исправлена невозможность редактирования текста Заметки в новых версиях Хрома 2016-09-09 01:23:12 41a52.88 [~] Постройка Немного переработан темплейт построек для соответствия изменениям в JS (см. ниже) Так же для уменьшения количества "ошибок" - формально некорректный синтаксис из-за использования PTL [@] Код/JavaScript В основном коде заменены deprecated функции jQuery: - bind(), live() и delegate() на on(); - unbind() - на off(); - В этот раз - честно-честно! В класс Math добавлены функции-аналоги PHP-шных intval() и floatval() и функции округлений - Эти функции всегда возвращают только числовые значения, а NaN преобразуют в 0 - В некоторых местах parseFloat() и parseInt() заменены на новые функции; sn_format_number(): - Функция оптимизирована и разбита на две части - Первая - считает вид числа; - Вторая - выдаёт соответствующий cssClass для расцветки; - При сохранении обратной совместимости (deprecated по факту) теперь можно менять сразу класс элемента, без вставки в DOMик; - Добавлена соотвествующая функция-враппер elementPrettyNumber(). Постройка: - Все значения от PHP теперь пропускаются через новые функции; - Оптимизирована работа разных кусков JS и улучшен код; - Убрано обращение к document; ...а так же всякие мелкие оптимизации. 2016-06-05 20:07:31 41a8.2 [~] Модули Поддержка Хайспота "День Рождения СуперНовы" 2016-03-17 21:40:22 41a6.4 [@] Константы Поддержка медалей и мемориалий на ивент 8 марта 2016 года 2016-01-26 21:56:35 41a3.4 [%] Вселенная Исправлено именование/переименовывание Галактики/Вселенной, когда они отличаются от текущих 2016-01-25 22:41:42 41a3.3 [+] Заметки/Закладки Исправлена ошибка, делающая удаление Закладок невозможным при выборе некоторых диапазонов Изменения на основной странице Закладок: - Заголовок и текст закладки выделяется цветом важности. Отдельный словесный маркер важности убран за ненадобностью; - Название объекта в космосе, на который указывает закладка, отображается сокращённо - (П) для Планеты, (Л) для Луны и (О) для Поля обломков - Статус "прилепленной" закладки показывается иконкой, а не надписью "Прилеплена"; - Дата в списке закладок перенесена в заголовок; - Увеличена максимальная ширина таблицы с закладками - для обладателей широкоформатных мониторов; - На маленьких экранах если заголовок не влазит по ширине - он будет разнесен на нужное количество строк; - Диапазоны выбора какие закладки удалять в верхней и нижней части синхронизированы. Т.е. выбор диапазона в верхнем элементе приводит к изменению диапазона в нижнем элементе - и наоборот Редактирование/создание закладки: - При выборе важности закладки меняется цвет заголовка, текста и самого выбранного элемента; - Если в закладке пустой текст и заголовок, но указана хотя бы одна координата (галактика, система или планета) - закладка будет сохранена; 2016-01-23 19:52:52 41a3.2 [+] Флоты/Подбор флота Названия характерстик на миниатюрах кораблей заменены иконками Название корабля теперь выделяется голубым цветом Добавлены настройки (пункт меню "Настройки", вкладка "Интерфейс", подвкладка "Флоты"), на которых можно: - Включить "старый режим" - без картинок и с выводом количества кораблей в отдельном столбце; - Отключить показ каждой характеристики корабля отдельно: т.е. скорости, ёмкости трюмов, потреблении; 2016-01-22 23:38:06 41a3.1 [~] Флоты/Подбор флота Выделены цветом названия кораблей (желтый) и количество на орбите (зеленый 2016-01-22 22:49:10 41a3.0 - Страница подборки флота [!] Флоты/Подбор флота Переверстана страница подбора кораблей во флот: - Уменьшена ширина списка кораблей для удобства мобильных пользователей; - Миниатюра корабля: - Вместо названия корабля и скорости полёта поставлена миниатюра корабля; - Клик или тап на миниатюре переадресует на страницу о подробной информации корабля; - Миниатюра корабля приведена к общему стандарту - название корабля в верхней строке и количество кораблей на орбите в нижней строке (вместо отдельной колонки); - Так же на миниатюре корабля выводится: скорость полёта, расход топлива и ёмкость трюмов; - Если корабль не может покинуть орбиту планеты/луны (Солнечный Спутнки, ТОП итд), то вместо характеристик выводится надпись "Спутник"; - В верхней части списка кораблей продублированы все кнопки. Теперь не обязательно листать до низа страницы, что бы быстро поднять все корабли или свезти ресурсы; - Настройки сортировки перенесены в самое начало страницы - по аналогии с другими страницами; Теперь при отсутствии свободных слотов для нового флота: - Скрываются кнопки массового выбора кораблей, перехода на следующую страницу и своза ресурсов (поскольку слотов под своз всё равно нету); - Скрывается мультиэлемент выбора кораблей; - Миниатюры кораблей выводятся в большем размере - что бы легче читались характеристики. 2016-01-17 15:43:49 41a2.0 - Новая страница настроек сервера [!] Админка/Настройки Полностью переверстана таблица настроек сервера - со вкладками и на div-ах! 2016-01-14 09:57:12 41a1.0 - Изоляция таблицы `fleets` [!] Код Изолирован код, обращающийся к таблице `fleets` [~] Флоты/Минифлот Доработан заголовок минифлота 2015-12-26 00:54:08 41a0.45 [%] Дизайн Исправлены "скачки" вертикального скроллера при скролле до самого низа страницы Исправлен черный фон на экране логина в некоторых браузерах 2015-12-24 12:54:12 41a0.43 [!] Дизайн Общий responsive бэкграуд Блица для всех скинов Responsive бэкграунд при входе в игру в обоих режимах (СН/Блиц) 2015-12-24 09:36:20 41a0.42 [~] Навбар Твик, который должен решить проблемы в некоторых мобильных Хромах 2015-12-23 21:11:30 41a0.37 [+] Навбар Поддержка добавочных кнопок вверху навбара 2015-12-22 23:03:44 41a0.33 [%] Навбар Исправлена ошибка "прыжков" ресурс-навбара в вертикальной ориентации 2015-12-22 15:30:58 41a0.31 [+] Навбар Ресурсный навбар: - Теперь ресурсный навбар может быть сделан вертикальным - "Настройки", раздел "Интерфейс", вкладка "Панель навигации", опция "Вертикальная панель ресурсов" - При этом ресурсный навбар "прижимается" сбоку от основного навбара - полезно игрокам с широкими мониторами Добавлены поясняющие надписи к кнопкам Немного переделан навбар - больше флексбоксов богу флексбоксов! 2015-12-22 12:25:50 41a0.26 [~] Император Улучшена читаемость страницы, немного уменьшена HTML-выдача [@] Код Теперь модули могут добавлять свои CSS-файлы и конструкции в заголовок 2015-12-22 01:22:18 41a0.20 [~] Дизайн Опять сделан прозрачным основной фон навбара Скин supernova-ivash: добавлены стили для TD/TH Реформат: - Страница партнерской программы; - Страница управления Альянсом; 2015-12-22 00:00:32 41a0.17 [+] core_festival Еще поддержка хайспота Gather 2015-12-21 06:06:09 41a0.12 [+] core_festival Добавлено больше поддержки хайспота Gather 2015-12-21 03:41:22 41a0.10 [+] core_festival Добавлена поддержка хайспота Gather [@] Код Исправлен двойной вызов MVC('model', '') 2015-12-20 02:12:59 41a0.7 [@] Код Унифицирован вызов MVC-хуков. Теперь их потенциально можно роутить в базовом варианте Вьюшки с IN_ADMIN в модулях теперь корректно выдают страницу с обрамлением админки 2015-12-19 04:12:25 41a0.5 [~] Навбар Добавлена поддержка ивента ЁГ 2015-12-19 04:03:10 41a0.4 [@] БД Добавлена поддержка ивентов типа Puzzle - сбор целого по кусочкам 2015-12-18 06:43:00 41a0.3 [%] Дизайн Исправлена очепятка в EpicBlue/skin.ini 2015-12-18 05:01:09 41a0.1 [@] БД Добавлена поддержка фестивалей 2015-12-18 01:35:35 41a0.0 [%] Настройки Исправлена ошибка появления подвкладки с настройками интерфейса при первом открытии страницы 2015-12-18 00:32:57 40d0 Project "SuperNova.WS" Release 40 [!] Project "SuperNova.WS" Release 40 "RD auth planet universe que sn_timer" Release 2015-12-17 23:51:12 40c1.3 [!] Планета Прогресс застройки: - Код рендеринга застройки планеты унифицирован с кодом страницы Планета/Управление - Изменено цветовое кодирование прогресса застройки: - Зеленый цвет - свободно не менее 50% секторов; - Желтый цвет - свободно меньше 50%, но не меньше 25% секторов; - Оранжевый цвет - свободно меньше 25%, но не меньше 10% секторов; - Красный цвет - свобдно менее 10% секторов - стоит подумать о постройке Терраформера или расширении планеты Теперь отображаются бонусные и максимальные уровни текущего Губернатора (если они есть) Добавлена кнопка "Улучшить или сменить Губернатора" если Губернатор уже есть на планете JS-код вынесен в отдельный файл Вынесены CSS-стили [+] Планета/Управление Теперь отображаются бонусные и максимальные уровни текущего и нанимаемых Губернаторов (если они есть) Добавлена иконка помощи для каждого из нанимаемых Губернаторов Вынесены CSS-стили [+] Дизайн/Картинки Иконка информации (чёрная буква "i" в синем круге) заменена на иконку помощи (белый вопрос в синем круге с белой окантовкой) [+] Строительство В подробном описании юнита добавлена ссылка на статью в Новапедии - иконка помощи на изображении юнита [@] Код CSS: - Добавлены классы абсолютного позиционирования - Добавлены флекс-контейнеры 2015-12-17 02:10:53 40c1.0 [!] Планета/Управление Страница переверстана Разделены формы смены типа ядра, переноса Столицы, телепортации и покидания колонии что бы исключить любое возможное ложное срабатывание Добавлены подтверждения на перенос Столицы, Телепортацию и покидание колонии 2015-12-14 08:18:40 40c0.4 [+] Наемники/Чертежи Изображение юнита: - Название юнита перенесено на саму картинку - Добавлен текущий и бонусный уровни - теперь бонусы к Наемникам/Чертежам видны и без найма - Для юнитов, покупаемых на время, под уровень подложен прогресс-бар, ширина которого указывает на количество оставшегося времени действия юнита - Прогресс-бар имеет цветовое кодирование: - Зеленый цвет - >= 50% общего времени найма; - Желтый цвет - < 50%, но >= 25% общего времени найма; - Оранжевый цвет - < 25%, но >= 10% общего времени найма; - Красный цвет - < 10% общего времени найма 2015-12-14 05:20:24 40c0.3 [@] Платежи Получение курса теперь производится через функцию get_exchange_rate() в которой предусмотрено получение стоимости ММ через перекрываемую функцию get_mm_cost() Класс платежей для получения курса использует get_exchange_rate() 2015-12-14 04:20:27 40c0.2 [@] Отладка Добавлен подсчёт времени, затраченный движком на query и fetch_assoc Добавлен вывод точки вызова в pdump - для лучшей отладки и поиска, кто же это срёт в вывод 2015-12-06 16:05:00 40c0.0 Project "SuperNova.WS" Release Candidate 40RC0 [!] Project "SuperNova.WS" Release Candidate 40RC0 "RD auth planet universe que sn_timer" Обновлён файл docs/changelog.txt 2015-12-06 15:26:44 40b1.2 [%] Апдейтер Исправлены ошибки апдейта 2015-12-06 15:10:58 40b1.0 [!] Апдейтер Обновлен файл docs/supernova.sql Обновлен файл docs/supernova-data.sql Добавлено удаление лишних индексов из таблицы `planets` Версия БД увеличена до 40-й Версия релиза увеличена до 40-й 2015-12-04 23:07:47 40b0.36 [#] skins/immi (%) Исправлены ошибки в скине 2015-12-04 23:04:18 40b0.35 [%] Скины Исправлена ссылка supernova-ivash на самого себя Исправлены неправильные пути к иконкам навбара 2015-12-04 22:45:41 40b0.34 [!] Скины supernova-ivash: удалены дубликаты картинок, которые есть в родительском скине EpicBlue: удалены дубликаты картинок 2015-12-04 22:42:58 40b0.33 [#] skins/immi (!) Скин-предок для immi - теперь supernova-ivash Удалены картинки-дубликаты, имеющиеся в родителе 2015-12-04 20:56:20 40b0.32 [+] Скин/supernova-ivash Пережаты изображения планет малого размера в стандартное для них разрешение 88x88 2015-12-04 17:04:32 40b0.30 [~] Очередь построек На общей панели постройки количество юнитов/уровень в текущем слоте отображается на новой строке 2015-12-04 16:28:03 40b0.29 [~] Дизайн/Изображения Добавлены новогодние смайлики 2015-12-04 16:25:43 40b0.28 [~] Дизайн/Изображения Еще немного пожаты некоторые глобальные изображения 2015-12-04 15:46:39 40b0.27 [@] Класс skin Оптимизация-2 2015-12-04 14:46:52 40b0.26 [@] Класс skin Оптимизация-2 Заглушка _NO_IMAGE компилируется однократно при инициализации скина Теперь каждый скин может иметь собственную заглушку _NO_IMAGE 2015-12-04 12:21:12 40b0.24 [+] BBCode Добавлен новый макрос 'faq://' - разворачивается в УРЛ ЧаВо, если он прописан в 'url_faq' конфигурации [@] Класс skin Оптимизация-1 2015-12-04 10:49:47 40b0.23 [@] Класс skin Теперь в контейнере вдобавок к HTTP-пути к картинке хранится и скомпилированная строка при указании параметров; При запросе параметризированного тэга у родителя запрашивается только HTTP-путь к файлу, а параметры применяются по правилам скина; Теперь всегда корректно применяются параметры тэга {I_xxx|yyy} Проверки file_exists() заменены на is_file() Добавлено изображение-заглушка _NO_IMAGE в случае отсутствия изображений Переписана логика компиляции изображения 2015-12-04 08:41:53 40b0.22 [@] Класс skin Добавлена проверка на физическое существование картинки. Если её не существует - идёт откат на родительские данные 2015-12-04 07:36:04 40b0.21 [!] Скин/supernova-ivash Добавлены цветные кнопки в навбар. Большое спасибо Ivash@Alpha 2015-12-04 07:00:25 40b0.20 [@] Код На странице Построек и в Очереди используются изображения юнитов, назначенные в skin.ini Минифицирован build_unit.js - размер уменьшен на 30% 2015-12-03 20:32:42 40b0.19 [!] Дизайн Минифицированы CSSы: глобальные и в скинах EB и SN-I [@] JS Минифицированы глобальные JS-файлы. Оригинальные версии лежат рядом 2015-12-03 20:22:13 40b0.18 [#] skins/immi (!) Оптимизированы изображения Минифицирован CSS 2015-12-03 18:35:26 40b0.16 [!] Дизайн/Изображения Оптимизированы изображения в скинах EP и SN-I. Как и раньше - средний выигрыш более 20% 2015-12-03 12:22:00 40b0.15 [~] Дизайн/Скины В скинах 'EpicBlue' и 'supernova-ivash' расширения файлов-картинок приведены в соответствие с их реальным типом 2015-12-03 10:52:55 40b0.14 [!] Дизайн/Изображения Оптимизированы изображения в каталоге design/ - в среднем размеры изображений уменьшены на 20% 2015-12-02 17:04:58 40b0.11 [+] Настройки Вкладка "Интерфейс" теперь содержит подвкладки "Общие", "Настройки меню" (бывашя вкладка), "Панель навигации" и "Вселенная" 2015-12-02 14:36:17 40b0.10 [+] Навбар Теперь в настройках навбара (пункт меню "Настройки", вкладка "Интерфейс", раздел "Панель навигации (вверху экрана)") можно так же отключить кнопку метаматерии 2015-12-02 13:32:16 40b0.9 [%] Метаматерия Исправлена ошибка, когда при покупке Альянсовских плюшек (Чертежи, Наёмники итд) списывалась ММ с аккаунта покупающего 2015-12-01 10:20:15 40b0.7 [+] Дизайн/Скины supernova-ivash: Добавлена плашка навбара ММ 2015-12-01 09:25:55 40b0.6 [+] Дизайн/Скины EpicBlue: Прописаны пути для плашек в навбаре supernova-ivash: Плашки в навбаре заменены на подходящие по тону (кроме плашки ММ) [+] skin.ini Добавлена поддержка HTTP-пути от корня СН, например - '/design/images/navbar_hangar.png' станет 'http://localhost/supernova/design/images/navbar_hangar.png' если HTTP-корень СН в 'http://localhost/supernova/' [~] Дизайн/Вёрстка Навбар: Адреса картинок (src) заменены с путей на имена {I_xxx} 2015-11-30 21:16:51 40b0.4 [~] Страница постройки Добавлено разрежение ячеек в подтаблицы цены и допинформации о юните Добавлено выделение четных рядов другим фоном в подтаблице допинформации [~] Навбар Увеличена прозрачность фонов под цифрами-индикаторами 2015-11-30 13:41:19 40b0.3 [~] Новости Добавлен отступ от предыдущего элемента при выводе новостей на страницах игры При выводе на страницах игры используется тонкая рамка 2015-11-30 13:32:07 40b0.2 [~] Новости Кнопки действия над новостью (для Администрации) перенесены из отдельных колонок под саму новость Толстая рамка вокруг опроса заменена тонкой 2015-11-30 13:03:10 40b0.1 [!] Навбар Настройки навбара (пункт меню "Настройки", вкладка "Интерфейс", раздел "Панель навигации (вверху экрана)"): - Теперь можно так же отключить: - Кнопку исследований - Кнопку флотов в полёте - Кнопку экспедиций - По умолчанию кнопка исследований теперь имеет стандартную ширину. Вернуть старый вид можно включив опцию "Широкая кнопка исследований (старый вид)" Если на планете есть очередь зданий она выводится на кнопке планеты аналогично Исследованиям и Ангару. При этом количество занятых и свободных слотов не выводится Имена планет в дропдауне переключения приведены к стандартному виду [координаты] (тип) Имя Навбар переверстан под flex-box - теперь корректно переносятся кнопки на маленьких экранах Все инлайн-стили вынесены в _template.css 2015-11-30 10:01:14 40b0.0 Project "SuperNova.WS" Release 40 Beta [!] Project "SuperNova.WS" Release 40 Beta "RD auth planet universe que sn_timer" Бета-версия 40-го релиза доступна для тестирования В changelog.txt внесены все изменения по коммит "2015-11-29 05:07:31 40a19.24", включительно Не забываем после обновления чистить папку 'cache' Взять бету можно по ссылке https://github.com/supernova-ws/SuperNova/archive/master.zip За новыми версиями модулей обращаться по личным каналам. Лучше всего - в скайп supernova.ws. Изменений в модулях до релиза не будут и текущие модули так же пойдут на релизе 2015-11-29 05:07:31 40a19.24 [~] Админка/Обслуживание Добавлена чистка очередей на покинутых и удалённых планетах [%] Админка/Обслуживание Исправлено сохранение боевых отчётов из списка "Лучшие бои" при чистке таблицы `ube_report` Исправлено отсутствие отчёта при выполнении обслуживания 2015-11-29 01:09:13 40a19.22 [~] Меню Добавлена иконка для пункта меню "Лучшие бои" 2015-11-28 06:30:27 40a19.21 [#] info_best_battles 1b0 (!) Модуль "Лучшие бои" Добавляет в меню новый пункт "Лучшие бои", который открывает соответствующую страницу Для каждого боя выводится: - Порядковый номер в таблице; - Дата и время боя; - Общее количество обломков в пересчете на металл; - Ссылка на просмотр соответствующего боевого отчёта; На странице выводится 50 лучших боёв Бои сравниваются по общему количеству обломков в пересчете на металл В таблицу попадают только бои, которые произошли не ранее 2-х суток от текущей даты, т.е.: - 2015-11-28 в 00:11:30 будут доступны бои, произошедшие до 2015-11-26 00:00:00 (не включая полуночь); - Бои, происшедшие 2015-11-26 появятся в списке лучших боёв 2015-11-29 ровно в 00:00:00 (если, конечно, образовалось больше обломков, чем у худшего из лучших боёв); - Это сделано специально, что бы дать всем заинтересованным сторонам собрать лом с орбиты; Лучшие бои не удаляются из базы данных во время процедуры технического обслуживания [~] Боевой отчёт Добавлен заголовок на страницу Ссылки на планеты приведены к стандартному виду - [координаты] (тип) Имя Улучшена вёрстка 2015-11-26 13:31:33 40a19.20 [!] Акции Теперь на странице информации "О сервере" выводится стандартное значение рейтов и значение рейтов в рамках акции Теперь во время акций с увеличением скорости добычи ресурсов: - Размеры хранилищ не увеличиваются - это вызывало много вопросов у новичков - Добыча И потребление энергии НЕ ИЗМЕНЯЮТСЯ - т.е. не надо строить дополнительные энергомощности или хранить избыток - Добыча в экспедиции не изменяется, как и было задумано [@] Код Немного форматирования 2015-11-26 12:16:05 40a19.19 [~] Платежи Немного доработана страница платежей [~] Вселенная В обеих вариантах вселенной относительные ссылки на иконки действий заменены абсолютными - может это поможет решить проблему на некоторых мобильных телефонах 2015-11-24 20:15:52 40a19.18 [~] Реклама Изменены условия показа рекламного блока: - Реклама не показывается игрокам, которые играют меньше недели - Реклама не показывается игрокам, которые взяли Премиум-аккаунт [@] Код Переформатирован файл vars_menu.php Добавлен фейковый файл констант для поддержки в phpStorm констант из модулей - их теперь можно вынести из основного кода 2015-11-24 00:12:16 40a19.17 [~] Дизайн/Темплейты/OpenGame Максимальная ширина таблицы юнитов установлена в 100em 2015-11-23 04:24:40 40a19.13 [@] Код Добавлены phpDoc в includes/template.php 2015-11-19 22:02:27 40a19.12 [+] Очередь постройки Добавлено диалоговое окно с подтверждением при полной очистке очереди Добавлено диалоговое окно с подтверждением при использовании Артефакта 2015-11-19 16:31:53 40a19.11 [+] Очередь постройки Прогресс-бары теперь можно отключить - пункт меню "Настройки", вкладка "Интерфейс", опция "Отключить прогресс-бары" Теперь не рендерится очередь постройки, если контейнер для неё невидим - например, в навбаре [+] Планета Добавлены прогресс-бары к общей информации об очередях [+] Навбар Добавлены прогресс-бары к плашке исследований 2015-11-19 14:09:41 40a19.10 [!] Очередь постройки Список юнитов в очереди переверстан на дивах с использованием flex-box В очередь постройки добавились прогресс-бары: - Прогресс-бар постройки текущего юнита в текущем слоте очереди: - Цвет - зеленый - Выводится под таймером обратного отсчёта постройки текущего юнита - Учитывается ПОЛНОЕ время постройки юнита - т.е. при перезагрузке страницы время продолжит идти - Показывает процент завершения постройки текущего юнита - т.е. увеличивается со временем - Виден во всех очередях постройки на первом слоте в очереди и в навбаре в плашке верфи - Прогресс-бар постройки всех юнитов в текущем слоте: - Цвет - синий - Выводится под количеством юнитов в текущем слоте (для зданий, очевидно, выводится всегда - здания строятся поштучно) - Показывает оставшееся количество юнитов к постройке в текущем слоте - т.е. уменьшается со временем - Виден во всех очередях постройки на всех слотах - Общий прогресс-бар очереди: - Цвет - болотный; - Выводится под общим таймером обратного отсчёта всей очереди - Учитывается ОСТАВШЕЕСЯ время всех слотов в очереди - т.е. при перезагрузке страницы отсчёт стартует с начала - Показывает поставшееся время до завершения всей очереди - т.е. уменьшается со временем - Виден на странице постройки и в навбаре в плашке верфи Оптимизирована работа таймера очередей, так что новые прогресс-бары не должны сказаться на быстродействии [+] Страница постройки Превьюшки юнитов теперь занимают максимум ширины - на широкоформатных мониторах станет меньше вертикального скроллинга Улучшилось отображение вертикальной очереди при включенных рамках Крайне рекомендуется использовать вертикальную очередь на широкоформатных мониторах - пункт меню "Настройки", вкладка "Интерфейс", опция "Вертикальные очереди" [+] Дизайн/Скины/EpicBlue Заменены изображения Терраформера и Большого Планетарного Шита Изображения для Нанолаборатории, МИС, Астрокартографии, Гордыни, ТОПа, ПЗ, Малого Планетарного Щита, МПР и Перехватчика приведены к стилю остальных картинок За проделанную работу - особая благодарность игроку 4apaeff@Alpha 2015-11-16 10:17:40 40a19.9 [+] Страница постройки Настройки сортировки внесены в основную таблицу Таблица стоимости постройки всегда выровнена по левому краю - так уменьшается количество "скачков" при переходе между юнитами В Верфи/Обороне галочка "Автоконвертация" перенесена над количеством юнитов - так исключена вероятность нежелательного нажатия при игре на устройствах с тач-интерфейсом В очереди построек ссылки "Очистить очередь", ссылка Артефакта ("Наностроитель"/"Эвристический чип") и "Отменить последнее" сделаны кнопками. Это выделит данные элементы, а так же уменьшит количество ложных нажатий [~] Юниты "Хранилища" переименованы в "склады" - так короче. Уточнено и расширено описание хранилищ 2015-11-16 08:46:37 40a19.8 [~] Обзор Планеты Добавлены координаты и название планеты в виде заголовка страницы Убрано уведомление "У вас Х новых сообщений" [~] Заметки Продублирована группа элементов для удаления заметок в самом верху страницы [@] Код Убрано предупреждение при пустом списке JS-файлов на странице Немного подчищен код 2015-10-30 23:11:23 40a19.7 [!] Хэлоуин Поддержка ивента "Хэллоуин-2015" 2015-10-30 21:43:22 40a19.6 [!] Хэлоуин Поддержка ивента "Хэллоуин-2015" 2015-10-30 19:09:01 40a19.5 [!] Хэлоуин Поддержка ивента "Хэллоуин-2015" [+] Темплейты Поддержка централизованного добавления JS-файлов и кода в заголовок страницы Поддержка global_override.css для всего сервера 2015-10-29 00:16:48 40a19.4 - Дизайн v2 - Phase 20 [!] Дизайн Переделаны картинки ВебМани на странице платежей при выборе метода платежа Скин supernova-ivash: доработан CSS для перекрытия наследованных цветов 2015-10-28 21:58:26 40a19.1 - Дизайн v2 - Phase 19 [!] Дизайн Выделены скинозависимые цвета в _template.css 2015-10-28 21:01:55 40a19.0 - Дизайн v2 - Phase 18 [!] Дизайн body font-size установлен в 1em вместо 1rem - это должно устранить проблему с превым открытием странице в Хроме с его долбанутой системой кэширования CSS OpenGame/_template.css: - Из скинов вынесены стили для стандартной рамки; - Добавлены правила для обработки заголовков основной части страницы через [table_title]::before (то, что сейчас является PAGE_TITLE); - Часть skin-related цветов вынесена в "подвал"; 2015-10-27 20:41:51 40a18.15 [~] Отправка флотов Выбор точки назначения: рамки вокруг точек назначения заменены на тонкие 2015-10-27 19:04:14 40a18.11 - Редизайн страницы "Технологии" [!] Технологии Редизайн страницы: - Вкладки на каждый вид технологий; - Блочная, а не табличная вёрстка; - Гибкая вёрстка в зависимости от размера экрана - Добавлены картинки юнитов; - Списки "Требуется" и "Предоставляет" теперь являются ссылками - можно сразу перейти на просмотр описания требуемых/предоставляемых технологий; Новый дизайн страницы должен подойти любому игроку - начиная от мобильных пользователей и заканчивая владельцами широкоформатных экранов: он динамичен, масштабируем, информация организована удобнее и сама страница занимает меньше экранного пространства Табличный дизайн можно включить в "Настройках" вкладка "Интерфейс" опция "Страница Технологий в виде таблицы (старый вид)" [~] Настройки Настройки, которые имеют только один чекбокс приведены к общему виду: сначала идёт чекбокс, затем - описание. Это улучшает читаемость и удобство таблицы, а в некоторых случаях - уменьшает вертикальный размер страницы "Настроек" [~] Дизайн/Скины EpicBlue: Добавлено изображение для ресурса "Метаматерия". Соответственно - оно появилось и во всех остальных скинах; supernova-ivash: - Выставлен цвет заполненной части у слайдера; - Добавлены рамки-изображения к попапам; - Исправлена ошибка непоказа в некоторых случаях изображения Эсминца; 2015-10-25 23:06:39 40a18.10 [%] Скины/supernova-ivash Исправлен индекс картинки Ракетной шахты в Постройках 2015-10-25 22:40:58 40a18.9 [%] Планета/Управление Исправлена ошибка покидания колонии 2015-10-25 21:23:43 40a18.8 [+] Планета/Управление Добавлено подтверждение на покупку сектора 2015-10-25 20:00:49 40a18.7 [+] Вселенная В новой Вселенной добавилось выделение поля обломков цветной рамкой в зависимости от количества ресурсов В обоих видах Вселенной (старый и новый) изменилась цветовая кодировка обломков: добавились новые градации и изменились границы переключения цветов на более интуитивные: - Без фона/рамочки - менее 1.000 единиц обломков; - Зеленый фон/рамочка - не менее 1.000 и не более 1.000.000 единиц; - Желтый - не менее 1.000.000 и не более 1.000.000.000 единиц; - Оранжевый - не менее 1.000.000.000 и не более 1.000.000.000.000 единиц; - Красный - не менее 1.000.000.000.000 единиц; [~] Постройки/Исследования Немного увеличены размеры иконок на превьюшках юнитов. Так же сами иконки масштабируются при изменении размеров шрифта как внутренними методами СН, так и средствами браузера 2015-10-25 17:00:13 40a18.6 - Дизайн v2 - Phase 17 [!] Дизайн Добавлено подтверждение на покупку сектора Оптимизированы CSS-файлы Попапы обзавелись тонкими рамочками (там где их не было и при включенных рамках) Отмеченные чекбоксы теперь подсвечиваются зеленым - в старой Опере и браузерах на основе WebKit Перекрашены псевдокнопки - теперь они не отличаются по стилю от конопк jQuery-UI В новом виде Вселенной убраны подчеркивания на кнопках Игрока и Альянса Исправлена ошибка переименования планеты, когда к спецсимовлам добавлялся слэш 2015-10-24 19:34:00 40a18.2 - Дизайн v2 - Phase 16 [!] Дизайн/Скины/skin.ini Поддержка позднего связывания в темплейтах для PTL-структуры DEFINE, например {I_[$PLANET_GOVERNOR_ID]} Поддержка skin.ini: - gebaeude - DEFINE в Обзоре Планеты и Управлении Планетой - planeten - Список планет (Империя и Планета); - Вселенная (старая, новая и общий блок, включая попапы) - Навбар - кнопка текущей планеты - menu_empire_emperor.png - {dpath}icons/menu_empire_emperor.png - Настройки - Поиск - Статистика - Вселенная (везде) - Меню - Все иконки, включая иконки с путями Замена большой рамки маленькой: - Управление планетой (вокруг Губернаторов); - Вселенная - все попапы. Рамка сделана полупрозрачной; 2015-10-24 17:22:34 40a18.1 - Дизайн v2 - Phase 15 [!] Дизайн/Скины/skin.ini Поддержка skin.ini: - gebaeude - Артефакты; - Наёмники; - Отправка флотов - миниатюры кораблей во флоте; - Список планет (Империя и Планета); - Управление планетой (Губернаторы); Замена большой рамки маленькой: - Управление планетой (вокруг Губернаторов); [@] Код Удалён каталог ".unused" вместе с содержимым 2015-10-24 17:08:58 40a18.0 - Дизайн v2 - Phase 14 [!] Дизайн/Скины/skin.ini В подсистему скинов добавлена поддержка файла конфигурации "skin.ini" Постройки/исследования (buildings_build) поддерживает "skin.ini": - В превьюшках юнитов; - В большом изображении юнита; Очередь юнитов (eco_queue) поддерживает "skin.ini" в иконках очереди Новапедия (novapedia) поддерживает "skin.ini" в изображениях юнита 2015-10-23 18:04:40 40a17.16 [%] Дизайн Исправлена ошибка из-за которой в некоторых конфигурациях сбрасывается внутренний размер шрифта 2015-10-23 00:44:20 40a17.14 - Дизайн v2 - Phase 13 [!] Дизайн Обновлены рамки в скинах "EpicBlue" и "immi" Добавлена поддержка тонких рамок в скин "supernova-ivash" 2015-10-22 22:27:24 40a17.10 - Дизайн v2 - Phase 12 [!] Дизайн Добавлена возможность отключения рамки в скин "immi" 2015-10-22 22:21:49 40a17.9 - Дизайн v2 - Phase 11 [!] Дизайн Исправлена ошибка с размером лун в списке планет на странице "Обзор Планеты" Добавлена возможность отключения рамок в скин "supernova-ivash" 2015-10-22 21:43:30 40a17.8 - Дизайн v2 - Phase 10 [!] Дизайн Страница строительства корректно масштабируется с рамками и без Отправка флотов: - Страница выбора миссии при отправке флотов корректно масштабируется с рамками и без - Миниатюры кораблей теперь масштабируются вплоть до 1700 пикселов по ширине - на больших экранах в одну строку влазит больше кораблей - Корявый указатель направления миссии "=>" заменен на красивую стрелочку с подписью типа миссии В скине EpicBlue добавлены тонкие рамки к планет-бару (количество ресурсов на планете сразу под навбаром) и на страницу строительства - вокруг сортировки, блока дополнительной информации и блока стоимости строительства 2015-10-22 18:55:04 40a17.7 - Дизайн v2 - Phase 9 [!] Дизайн Переработано встроенное масштабирование страницы 2015-10-22 17:47:44 40a17.6 - Дизайн v2 - Phase 8 [!] Дизайн Элементы ввода (строки и текстовые области) теперь не "прыгают" при нажатии клавиши "пробел" во время набора В "Настройки" на вкладке "Интерфейс" добавлена опция "Отключить рамки у таблиц", которая убирает рамки-изображения у элементов дизайна Слайдер: - Увеличен размер слайдера, ручки слайдера и отступ - для облегчения использования мобильными пользователями - Ручка слайдера теперь не "прыгает" при нажатии на неё курсором мыши 2015-10-22 14:37:58 40a17.5 - Дизайн/Скины v2 - Phase 7 [!] Дизайн В global.css оставлен только boilerplate. Все остальные стили перенесены в _template.css Первичное упорядочивание _template.css Везде, где имеет смысл, "px" заменены на "em" При увеличении масштаба средствами СН иконки-спрайты нормально центрируются Восстановлено выделение цветом отпускника Восстановлен жолтый цвет заполненной части слайдера Перенарезана рамка с более точными позициями [~] Локализация Кэширование локализаций теперь может быть отключено в таблице 'config' установкой параметра 'locale_cache_disable' в 1 Апдейтер теперь сбрасывает кэш языков при обновлении [~] Флоты/Выбор миссии Теперь при выборе миссии вместо "=>" меняется иконка 2015-10-21 22:58:01 40a17.3 - Locale v3 - Phase 2 [!] Локализация Языковой фоллбэк на уровне строк - откат на другую локализацию, если не найдена строка в текущей 2015-10-21 19:28:56 40a17.2 - Locale v3 - Phase 1 [!] Локализация Все файлы локализации в модулях работают через $a_lang_array [@] Код Добавлены константы для рас 2015-10-21 18:18:16 40a17.0 - Locale v3 - Phase 0 [!] Локализация Добавлена поддержка кэширования строк локализации во внешнем кэше. Это позволило уменьшить объем процесса на пользователя примерно на 300кб минимум Все файлы локализации в базовом движке работают через $a_lang_array Класс locale: - Конструктор теперь грузить дефолтный язык на старте; - Многалогав; [~] Меню Отключен фрагмент JS-кода, относящийся к модулю [~] Настройки Улучшено поведение игры при переключении языков 2015-10-20 16:58:02 40a16.14 [~] Дизайн Скин EpicBlue - добавлена рамка Скин supernova-ivash - улучшена работа с рамками 2015-10-20 15:53:00 40a16.12 [~] Дизайн/Скины/supernova-ivash Добавлено обрамление (рамка) ко всем элементам 2015-10-20 10:57:53 40a16.11 [~] Дизайн/Темплейты/OpenGame Улучшена разметка 2015-10-19 18:37:54 40a16.8 [%] Обзор Вселенной Исправлена неработа ракетной атаки при вызове через кнопку быстрого действия 2015-10-19 18:24:57 40a16.7 [~] Меню Ускорена работа меню в приложениях [%] Обзор Вселенной Исправлена неработа фаланги при вызове через кнопку-название планеты 2015-10-19 16:28:51 40a16.6 [+] Обзор Вселенной В "Настройках" на вкладке "Интерфейс" в разделе "Вселенная" добавлена возможность отключить кнопку "Послать колонизатор для основания колонии на позиции номер Х" 2015-10-19 16:17:29 40a16.5 [%] Список планет Исправлена неработающая кнопка "Свезти ресурсы" в списке планет (страницы "Планета" и "Империя") 2015-10-19 16:06:08 40a16.4 [%] Обзор Вселенной Исправлена ошибка отображения кнопки колонизации 2015-10-19 15:52:41 40a16.2 - Вселенная - Phase 3 [!] Обзор Вселенной Полный редизайн вида Обзора Вселенной. Изменений настолько много, что нет смысла их тут описывать все - проще посмотреть самому Те, кому не нравится новый вид - могут включить старый вид в "Настройках", вкладка "Интерфейс", галочка 'Использовать старый вид "Обзора Вселенной"' Изменения в обоих видах "Вселенной": - При выборе "Ракетной атаки" страница скроллируется на форму запуска ракет. Ей добавлена толстая красная рамка, что бы визуально выделить среди остальных элментов; - После анализа востребованности фишек, убраны быстрые действия "Просмотреть место игрока в статитстике" и "Добавить игрока в друзья". Действия по-прежнему доступны в попапе игрока, однако быстрые кнопки использовались настолько мало, что было принято решение убрать эти опции; Изменения в старом виде Вселенной: - Быстрые действия на планету/аккаунт сделаны кнопками для облегчения судьбы наших мобильных друзей; 2015-10-19 10:42:39 40a16.0 - Вселенная - Phase 0 [!] Вселенная Возможность выбора старого и нового вида Вселенной Доработки старого интерфейса 2015-10-18 22:42:01 40a15.13 [+] Вселенная Переработаны попапы игрока и Альянса аналогично кнопкам миссий [~] Верфь/Оборона Чекбокс автоконвертации больше не скиннится как кнопка 2015-10-18 21:12:08 40a15.12 [+] Вселенная Добавлена кнопка ракетной атаки в планетарные попапы Кнопки в планетарных попапах выглядят аккуратнее При выборе ракетной атаки страница автоматически скроллируется на форму ракетной атаки При активации AJAX-действия (отправка ракеты, отправка шпионов итд) в центре экрана пишется результат совершения действия Значительно уменьшен размер генерируемой страницы Вселенной: - С иконок ракетной атаки убран код onclick и перенесен в jQuery-обработчики - Кнопки миссий в планетарном попапе переделаны на button_pseudo, a onclick-код вынесен в jQuery-обработчики [+] JS Существенно расширены возможности обработчика HTML-аттрибута "go". Теперь он может отправлять флоты с миссиями и открывать УРЛ-ы в новом окне 2015-10-18 18:23:45 40a15.11 [~] Вселенная Изменен вывод названия планеты/луны в попапе 2015-10-18 17:33:14 40a15.10 [%] Новости Исправлена ошибка двойного экранирования служебных символов в вопросах опроса 2015-10-18 17:17:07 40a15.8 [~] Навбар На кнопку очереди верфи добавлена индикация количества оставшихся в очереди слотов [~] JS Оптимизирована работа функции popup_show() Убрано слежение за позицией курсора. Это должно улучшить работу страницы на слабых машинах 2015-10-17 14:49:34 40a15.6 [~] Админка/Обзор Первыми в списке всегда выводятся игроки и только потом - Альянсы 2015-10-17 14:46:32 40a15.5 [+] Админка/Обзор Пункт меню "Обзор" в админке теперь использует тот же код, что и список пользователей - за исключением того, что "Обзор" показывает только игроков онлайн и показывает Альянсы Таким образом теперь в пункте меню "Обзор" можно использовать весь функционал страницы "Список пользователей": сортировку, просмотр информации о пользователе, имперсонейт итд [@] Код Увеличино дефолтное значение размера системы до 16 планет 2015-10-17 10:47:46 40a15.3 [%] Верфь/Оборона Исправлена ошибка невозможности постройки чего-либо на Верфи/Обороне при отключенной в Настройках кнопке автоконвертации 2015-10-17 09:47:57 40a15.1 [%] Новости Исправлен вывод дробного количества процентов проголосовавших 2015-10-17 09:41:46 40a15.0 [!] Новости Общий редизайн блока новостей Добавлена индикация общего количества проголосовавших Результаты опроса: - Бар, показывающий процент проголосовавших, выводится под самим ответом - К каждому варианту ответа добавилась индикация процента проголосовавших [~] Скины/supernova-ivash Добавлен нормальный промежуточный цвет фона между TH и TD. В частности, активно используется в новостях Для новостей выставлены цвета скина [~] Оборона/Верфь На кнопкочекбокс автоконвертации так же распространяется действие опции "Скрыть кнопку автоконвертации" в "Настройках" [%] Чёрный Рынок/Обмен ресурсов Исправлена ошибка невозможности обмена, когда количество ТМ на аккаунте было менее двухкратной стоимости обмена 2015-10-17 06:52:57 40a14.11 [~] Меню Восстановлен прогресс-бар исчерпания премиума в соответствующем пункте меню В стандартном режиме обычный пункт меню занимает всю площадь строки - как и меню-заголовок Улучшено отображение метки "Свежие" в пункте меню "Новости" Режим "низкие пункты меню": - Восстановлен функционал подсветки пункта, на котором сейчас находится курсор мышки - Подсвечивается весь пункт меню, а не только ссылка - Клик срабатывает на всей площади пункта меню, а не только на ссылке 2015-10-16 19:20:05 40a14.9 [~] Планета Исправлена ошибка позиционирования попапа с летящими флотами 2015-10-16 14:55:04 40a14.8 - Скины v2 - Phase 6 [~] Скины Вид элемента