zooks: ну ладно, других-то нет вариантов, т.к. смотреть по часам у пользователя - не самый лучший вариант.... (может быть у него часовой пояс настроен неверно, а время выставлено - верно.... как на Android-прошивках сейчас....)
zooks: ну про json - это Вы про данные (тут как угодно можно), а по теме - отдавайте по левой строке равенства (IP->город->пояс города) - будет гораздо точнее.
PS: и про язык - не забудьте))
Deric: Каждый движок уникален тем, что имеет свою структуру объектов. Для владения движком - Вам нужно знать и понимать структуру реализации приложения на этом движке. Для игр - как правило есть бесконечный цикл обработки одного кадра, который явно указан.
Так вот в crafty - его нет. Все делает библиотека сама внутри! (можете обратиться к кадру - если это Вам необходимо будет: возможность КОНЕЧНО есть!)
Решил попробовать использовать его и не пожалел ни разу.
Все действия - это простые вызовы.
Задумали - сделали: одна функция - одно действие!
Написание своих модулей - легко!
(т.к. заложен изначально базис из нативного JS)
Пробуйте его... если что - готов помочь: выучил почти весь...
(похожих на него - не видел.....)