С Новым годом! Форум программистов, компьютерный форум, киберфорум
ActionScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/16: Рейтинг темы: голосов - 16, средняя оценка - 4.88
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
1
AS 3.0

Индикатор здоровья персонажа

13.06.2011, 12:15. Показов 3300. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как сделать индикатор здоровья персонажа?думаю,либо в процентном составе либо полоску.ну,попробую в процентном составе поскольку кажется что проще(если неверно кажется - пожалуйста критикуйте,поскольку я новичёк в этом деле).Итак,скажем в БД MySQL хранится 2 значения: health_min и health_max .И вот, с health_min - это здоровье на текущий момент времени.Как сделать чтобы допустим в каждую минуту прибавлялось 15% к здоровью и заносилось новое значение в БД MySQL причём с точностью до секунды?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.06.2011, 12:15
Ответы с готовыми решениями:

Индикатор здоровья
Проблема заключаеться в следующем: Решил создать игру 5ти минутку ) ну так просто чтобы навык...

Движение персонажа
Здравствуйте! У меня возникла такая проблема: Есть два мувиклипа на шкале времени. Один клип когда...

Прыжок персонажа
Привет:) Как сделать плавный прыжок персонажу? Из имеющегося кода выходит, что он может ходить...

При запуске МФУ epson l210 поочередно маргает индикатор кнопки включения и индикатор чернил
при запуске МФУ epson l210 поочередно маргает индикатор кнопки включения и индикатор чернил при...

18
214 / 80 / 2
Регистрация: 31.05.2011
Сообщений: 258
13.06.2011, 16:57 2
Цитата Сообщение от linked3234 Посмотреть сообщение
Как сделать индикатор здоровья персонажа?думаю,либо в процентном составе либо полоску.ну,попробую в процентном составе поскольку кажется что проще(если неверно кажется - пожалуйста критикуйте,поскольку я новичёк в этом деле).Итак,скажем в БД MySQL хранится 2 значения: health_min и health_max .И вот, с health_min - это здоровье на текущий момент времени.Как сделать чтобы допустим в каждую минуту прибавлялось 15% к здоровью и заносилось новое значение в БД MySQL причём с точностью до секунды?
зачем вам все это хранить в MySQL? вообще что за приложение вы хотите сделать? может есть решение проще, что в итоге должно получиться?
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
13.06.2011, 23:28  [ТС] 3
движок браузерной онлайн игры пишу)вот и стало интересно.пишу - для личного опыта.
0
214 / 80 / 2
Регистрация: 31.05.2011
Сообщений: 258
13.06.2011, 23:47 4
вот оно что)
я не думаю что здоровье персонажа нужно постоянно извлекать из MySQL и вновь туда записывать новое значение, уж слишком тяжко может быть вашему серверу, если вы постоянно будете его грузить... вы знаете, MySQL лучше использовать при сохранении, ну или достижении чекпоинтов допустим...
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
14.06.2011, 01:04  [ТС] 5
хм...а что если скажем в каждые 5 минут обновлять значение в БД скажем на +5?А если персонаж сбросил,всё заново ждать ему?
0
214 / 80 / 2
Регистрация: 31.05.2011
Сообщений: 258
14.06.2011, 01:17 6
Цитата Сообщение от linked3234 Посмотреть сообщение
хм...а что если скажем в каждые 5 минут обновлять значение в БД скажем на +5?А если персонаж сбросил,всё заново ждать ему?
это сильно будет тяжковато, представьте что у вас одновременно играет 100 человек, и у каждого обращение к бд через 5 минут, и это только здоровье, а если записывать в бд постоянно еще и оружие, всякие зелья и т.д. - ваш сервак будет ужасно тупить и врядли кто-то захочет играть в такую игру... здесь нужно например таймер создавать и по истечению 5 мин, прямо во флэшке увеличивать это здоровье, а вот когда игрок захочет сохраниться - тогда и запишите состояние его здоровья на момент сохранения, и с остальных так же... в этом случае использование бд будет логичным...
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
14.06.2011, 23:56  [ТС] 7
а как например индекатор здоровья в героях войны и денег?весьма интересно!15000 человек,и...мб и серв мощный,но,мне всёже кажется что они нашли какой-то способ!
0
Модератор
2911 / 1770 / 179
Регистрация: 19.02.2011
Сообщений: 6,505
15.06.2011, 22:20 8
Секьюрные данные лучше хранить на серваке. И храняться они в определенном формате (зависит от ситуации), чтоб не нужно было обновлять каждые n секунд. К примеру дата и то, сколько здоровья было на тот момент, а скорость его восстановления константа. Исходя из таких данных можно вычислить здоровья в любой момент. При снижении этого показатели данные в БД обновляются.
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
16.06.2011, 22:10  [ТС] 9
стоп,а это не тригеры в MySQL ли?я работаю с MySQL.Как можно реализовать то,о чём вы сейчас говорите?можете привести маленький кусок php кода как пример?ну скажем:
PHP
1
2
3
$health_min = ... //Здесь здоровье на данный момент
$health_max = ...//Здесь максимальное здоровье персонажа(скажем,пусть до этой цифры он будет восстанавливать $health_min)
$period = ... //Здесь пусть возьмём период,за который восстанавливается скажем 5% здоровья.
ну вот.Допустим этот код если дописать,то во флеше уже безопасней будет хранить данную информацию?т.е. имею в виду просто отображать сколько здоровья и отображать там за счёт php(т.е. как js,подделал - не прошёл проверку на php)?или,лучше сделать какую-либо проерку,что если там здоровье восстановилось скажем заранее,чем назначено,то отвергнуть запрос?или как ещё можно?
0
Модератор
2911 / 1770 / 179
Регистрация: 19.02.2011
Сообщений: 6,505
16.06.2011, 23:11 10
На php не кодил уже 100 лет.
Необходимы следующие переменные:
1) последняя дата измерения здоровья (последний раз, когда настучали по шапке, последний раз когда после этого юзер зашел в приложение и потребовалось вывести его показатели здоровья и пр.)
2) последнее значение здоровья персонажа
3) максимальное значение здоровья (логично менять его только при глобальных событиях: повышение уровня персонажа) - необходимо больше для проверки валидности отправленных серверу данных
4) Как вариант (если это не константа, общая для всех пользователей) - скорость роста здоровья персонажа.
Исходя из этого параметры здоровья можно вычислить в любой момент. Конечно могут возникнуть ситуации, когда, скажем, на персонаже некое заклинание, которое изменяет скорость восстановления здоровья, и его (заклинание) окончание произойдет не обязательно в то время, когда пользователь заходит в игру для обновления данных. В таких ситуациях нужно немного пошевелить мозгой, чтоб сообразить красивое решение. Хотя, не так сложно, как может показаться.

В отношении секьюрности: все необходимые данные отсылаются игроку с сервака, а все что идет серваку от клиента проверяется на валидность (и шифруется при необходимости)
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
17.06.2011, 01:03  [ТС] 11
шифруется?как например?
0
Модератор
2911 / 1770 / 179
Регистрация: 19.02.2011
Сообщений: 6,505
17.06.2011, 21:25 12
Да как угодно. На эту тему не одна книжка написана. Есть к примеру библиотеки для MD5-шифрования, в т.ч. под флеш.
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
20.06.2011, 23:16  [ТС] 13
хм,а md5 так надёжен?или,прсото надо несколько раз хешировать в md5?
0
214 / 80 / 2
Регистрация: 31.05.2011
Сообщений: 258
20.06.2011, 23:37 14
есть куча методов кодирования, и защиты информации... это отдельная наука))) так что если вам уж сильно необходимо обеспечить железную защиту информации от чужих глаз, тогда придется учиться-учиться и еще раз учиться)))

Цитата Сообщение от linked3234 Посмотреть сообщение
хм,а md5 так надёжен?или,прсото надо несколько раз хешировать в md5?
З.Ы.: насколько я знаю, вполне надежная защита...
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
21.06.2011, 16:31  [ТС] 15
хм...а можете привести пример восстановление здоровья персонажа допустим в AS3?ну,пополнение,или таймер и т.п.,ну по сути темы.
0
214 / 80 / 2
Регистрация: 31.05.2011
Сообщений: 258
21.06.2011, 16:50 16
Цитата Сообщение от linked3234 Посмотреть сообщение
хм...а можете привести пример восстановление здоровья персонажа допустим в AS3?ну,пополнение,или таймер и т.п.,ну по сути темы.
можно, только пример, где здоровье будет восстанавливаться через определенное время на определенный процент...
З.Ы.: послезавтра напишу обязательно, т.к. завтра защита диплома у меня, сегодня хочу поготовиться)
1
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
22.06.2011, 14:08  [ТС] 17
хорошо,буду ждать, удачной защиты)
0
21 / 21 / 6
Регистрация: 12.12.2010
Сообщений: 677
15.10.2013, 17:28  [ТС] 18
Nuff, ну и где?!
0
254 / 238 / 50
Регистрация: 20.12.2011
Сообщений: 707
16.10.2013, 08:11 19
Цитата Сообщение от Nuff Посмотреть сообщение
хм,а md5 так надёжен?или,прсото надо несколько раз хешировать в md5?
MD5 был скомпрометирован уже давно, но вся суть заключается в том, что его все равно вполне достаточно для таких задач, как защита некоторых данных в игре, так как взломать можно абсолютно любую защиту. Задача защиты максимально увеличить время, необходимое для взлома, с чем в данном случае MD5 отлично справится.

По поводу темы - в базе нужно будет хранить еще одно значение - время последнего обновления здоровья. При заходе на клиент текущее здоровье автоматически пересчитается до нужного. На клиенте же вы запускаете таймер, который каждый тик делает то, что Вам нужно.
0
16.10.2013, 08:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2013, 08:11
Помогаю со студенческими работами здесь

Ремонт ПММ Miele G1023 U, Световой индикатор Код = мойка, сушка и индикатор конца мигают одновре
Здравствуйте ! Кто не будь сталкивался с такой проблемой. Пять секунд после старта высвечивается...

Ногти - зеркало здоровья.
Обсуждаем здесь состояние своих ногтей а также недуги, на которые указывают изменение цвета, формы,...

Феминизм вреден для здоровья
С тех пор как Мэри Уолстонкрафт написала свое эссе "Защита прав женщины" в 1792 году, ее активные...

Kingston c момента покупки 98% здоровья
Доброе время суток !! SSD покупался в проверенном магазине и с момента покупки было 98 % здоровья,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru