Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Конкурс от Topface. (https://javascript.ru/forum/offtopic/32140-konkurs-ot-topface.html)

dmitry111 08.10.2012 22:53

Что-то о конкурсе не совсем понятно

Если это конкурс, то кому будут принадлежать работы занявшие призовые места? Конкурсантам или организаторам?

Если конкурсантам я бы поучаствовал:) А если организаторам, для личных нужд, то мне обидно за участников очередного МММ!

Никто не уточнял?

melky 08.10.2012 23:00

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

не более :)

melky 01.11.2012 06:42

Ну вот и всё, вроде бы. Работы больше не принимают, а это значит, что я могу показать, что у меня получилось.

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

собственно, вот :
http://mazktest.ucoz.ru/Topface/index.html

(там используется скомпилированная несжатая версия скрипта)

dmitry111 01.11.2012 08:00

melky,

а какое место занял?

Tim 01.11.2012 08:00

melky,
мне кажется они у тебя задохнутся - спускаютсяи начинают плавать влево - вправо

dmitry111 01.11.2012 08:02

спасибо за код, сечас как раз изучаю ООП. Буду постигать азы с вашего скрипта :)

Riim 01.11.2012 08:24

Цитата:

Сообщение от melky
http://mazktest.ucoz.ru/Topface/index.html

http://images.devs-on.net/Image/M3ElFSYfZJRNqT6T-.png

melky 01.11.2012 11:00

Цитата:

Сообщение от dmitry111 (Сообщение 213400)
melky,

а какое место занял?

вряд ли я вообще какое-то место займу с такими багами :)

Цитата:

Сообщение от Tim (Сообщение 213401)
melky,
мне кажется они у тебя задохнутся - спускаютсяи начинают плавать влево - вправо

^_^ контроля за кислородом нет. тьфу, забыл про это :haha:

вот оно вылезло - я не использовал список задач, которые надо сделать, и это просто выпало из головы. учту эту ошибку с следующий раз.

ну и ещё совмещение с учёбой дало своё.


Цитата:

Сообщение от Riim (Сообщение 213404)

а вот это уже интересно. как воспроизводить такое?

и вообще непонятен этот баг - они должны двигаться горизонтально до верёвки, и только после этого двигаться вверх.
я ловил похожий, как на скрине, но точную причину установить не удалось.

Riim 01.11.2012 12:36

Цитата:

Сообщение от melky
как воспроизводить такое?

когда много водолазов минуты через 3-5 появляется.

dmitriymar 01.11.2012 12:50

Цитата:

Сообщение от melky
а вот это уже интересно. как воспроизводить такое?

у меня появилось когда водолазов было около 10 и звёзд столько же браузер фф 16 . винда

bzx 01.11.2012 15:49

А вот моё приложение: https://dl.dropbox.com/u/71423496/TopFaceGame/Game.html

Можно ресайзить окно и есть небольшое смещение по оси Z, в остальном ничего необычного, алгоритм сбора оценок простой(как я понял ТЗ на нём акцента и нет).

PS: сайтом пользуюсь давно, но не регистрировался =)

dmitriymar 01.11.2012 15:55

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

bzx 01.11.2012 15:59

Цитата:

Сообщение от dmitriymar (Сообщение 213497)
а я вот реально не вижу толку от этого конкурса и приложения. никакой функциональной нагрузки. просто фигня какая то . контора с таким т.з наводит на размышления о соответствии работников не то что проф. навыкам , а и об адекватности их вообще

Лично для меня был смысл разобраться с canvas, да и призы тоже прибавили плюс к мотивации.

Интересно, какой конкурс сделали бы Вы? Вопрос, чтобы лучше понять Вашу точку зрения.

melky 01.11.2012 16:01

Цитата:

Сообщение от bzx (Сообщение 213496)
А вот моё приложение: https://dl.dropbox.com/u/71423496/TopFaceGame/Game.html
PS: сайтом пользуюсь давно, но не регистрировался =)

о , нифига - тут больше трудов вложено, чем у меня )
я тоже хотел сделать, чтобы все части поля загружались по-отдельности (вода, корабль, песок и т.д), но опять таки, времени не хватило :)
я заметил в вашей реализации, что они звёзды не роняют .. не успел сделать?)
Цитата:

Сообщение от dmitriymar (Сообщение 213497)
а я вот реально не вижу толку от этого конкурса и приложения. никакой функциональной нагрузки. просто фигня какая то . контора с таким т.з наводит на размышления о соответствии работников не то что проф. навыкам , а и об адекватности их вообще

бр-р-р. да, никакой, ну и что? это своеобразный такой способ поиска работников - по-моему, вполне логичный
ставка делалась не на саму игру, а на её код - всё-таки они же программистов ищут :)
Цитата:

Сообщение от bzx
Лично для меня был смысл разобраться с canvas

надо же, ну хоть я не один такой.

dmitriymar 01.11.2012 16:07

Цитата:

Сообщение от melky
вполне логичный

не логичный , получив несколько десятков реализаций , оплатив реализации победительницы -и не использовать их?
Цитата:

Сообщение от melky
суть игры

игрой это назвать нельзя -по т.з хрень какаято . контора какая грузит программиста хренью-неадекват -деньги на хрень

bzx 01.11.2012 16:18

Цитата:

Сообщение от melky
я заметил в вашей реализации, что они звёзды не роняют .. не успел сделать?)

Да, времени уже оставалась мало и я не стал добавлять это, тем более в моём алгоритме бросание оценки - очень редкая ситуация, т.к. водолазы начинают всплывать, если не хватает газа для поднятия оценки в 10 баллов. И в ТЗ написано "может", потому решил, что это не критичный момент.

melky, а как у Вас реализована отрисовка? интересно было бы сравнить FPS. У меня сделано два слоя: первый - статичный, второй - прозрачный и каждый кадр полностью(если есть падающие звёзды) либо частично очищается.

edit: хотя времени на отпускание звёзд было не только мало, но и жалко его тратить ещё на это приложение =)

melky 01.11.2012 16:30

Цитата:

Сообщение от bzx
melky, а как у Вас реализована отрисовка? интересно было бы сравнить FPS. У меня сделано два слоя: первый - статичный, второй - прозрачный и каждый кадр полностью(если есть падающие звёзды) либо частично очищается.

т.к. у меня нет растягивания по ширине, то задний фон висит как background-image. Всё рисуется на одном canvas'е, где с помощью костыля-многомерного массива реализованы слои отрисовки - поэтому звёзды никогда не перекрывают водолазов.

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

как у вас работает механизм "поднятия" звезды? что с ней дальше происходит, когда её берут?

было бы интересно на ещё какие-нибудь реализации глянуть. надеюсь, участники конкурса найдут этот тред :)

bzx 01.11.2012 16:37

Цитата:

Сообщение от dmitriymar (Сообщение 213497)
игрой это назвать нельзя -по т.з хрень какаято . контора какая грузит программиста хренью-неадекват -деньги на хрень

Деньги были потрачены не на работу программистов, а на их поиск. Странно считать, что нужно не только найти работников, но и тут же что-то с них поиметь.

dmitry111 01.11.2012 16:38

bzx,

у вас там в 365 строчке маленький недочет (запятая).

melky 01.11.2012 16:40

Цитата:

Сообщение от dmitry111
у вас там в 365 строчке ошибка (запятая).

Render.SHIP = {
    X: -4,
    Y: 432,
    DRAW_DIVERS: 30*!*,*/!*
};


нет, это не ошибка. на хабре даже обсуждали, помню... сейчас поищу
http://habrahabr.ru/post/141350/

dmitry111 01.11.2012 16:44

melky,

да, это не ошибка. в "Шаблонах" говорится что ставить запятую можно, но в ие она приводит к сбоям, поэтому делать это не рекомендуется.

bzx 01.11.2012 16:48

Цитата:

Сообщение от melky
при каждом кадре проходимся по слоям и фигурам, очищаем область каждой фигуры, т.е. частично. После этого изменяем её состояние (координаты, к примеру), а после этого - отрисовываем.

Т.е. при определённом количестве водолазов и звёзд суммарная область очистки может быть больше площади игрового поля? Или уже учитывается очищенная область?

Я кстати столкнулся с тем, что в IE9 очистка двух областей работает чуть медленнее, чем сразу всей области.

Цитата:

Сообщение от melky
как у вас работает механизм "поднятия" звезды? что с ней дальше происходит, когда её берут?

У каждого водолаза есть массив stars, я добавляю звезду в него и всё.

melky 01.11.2012 16:57

Цитата:

Сообщение от bzx
Т.е. при определённом количестве водолазов и звёзд суммарная область очистки может быть больше площади игрового поля?

Нет, не учитывается, так что - да, может. Особенно скверно это будет выглядеть, когда все звёзды лежат на песке, и их там ~1000. Как-то я об этом во время разработки не задумался ...

Цитата:

Сообщение от bzx
У каждого водолаза есть массив stars, я добавляю звезду в него и всё.

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

bzx 01.11.2012 17:08

Цитата:

Сообщение от melky
т.е. звезда, будучи в руках, будет дальше отрисовываться. У меня она вынимается из очереди отрисовки, и прикрепляется к картинке водолаза - именно от этого при поворотах вверх \ влево номер на звезде искажается.

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


Часовой пояс GMT +3, время: 16:29.