Пишу, точнее, наверное, писал музыку. Всякое желание пропало со сгоревшим хардом который можно было починить, но в сервисном центре решили вместо моей просьбы о восстановлении данных тупо его форматнуть . Пробовался в разных жанрах. Вот наверное и всё. Из остатков всё висит на x-and.pdj.ru PS писалось всё и всегда в Fl 8 и 9 версии. Изучаю Java My new project My old project
Сообщение отредактировал x-and1988 - Суббота, 18 Февраля 2012, 22:48
Я работаю из-под винды, в Eclipse. На форуме lwjgl я получил ответ, что на оракловском рантайме должно работать. Мне проверить негде просто... Изучаю Java My new project My old project
Спасибо, но нет. На форуме движка нашел инфу, что lwjgl апплеты багнуто работают на плагине IcedTea (open jdk). На оракловской яве должно работать, но пока что не проверял.
By default Ubuntu doesn't use the Oracle Java Applet Plugin but instead has IcedTea-Web installed. IcedTea-Web doesn't currently support LWJGL Applet, however such supported is scheduled to be added in the IcedTea-Web 2.0 release (as indicated here).
Доброго времени суток. Пытаюсь осилить апплеты - в win в целом запускается нормально, а в linux мне выдало вот такую ошибку:
Code
Sat Jan 28 21:21:41 EET 2012 INFO:Clear up 'lzma.jar' required for LZMA support! trying files without the lzma extension... 'lzma.jar' required for LZMA support! trying files without the lzma extension... java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.lwjgl.util.applet.AppletLoader$4.getPermissions(AppletLoader.java:1094) at java.security.SecureClassLoader.getProtectionDomain(SecureClassLoader.java:210) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at org.lwjgl.util.applet.AppletLoader.switchApplet(AppletLoader.java:1201) at org.lwjgl.util.applet.AppletLoader$2.run(AppletLoader.java:864) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:216) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:647) at java.awt.EventQueue.access$000(EventQueue.java:96) at java.awt.EventQueue$1.run(EventQueue.java:608) at java.awt.EventQueue$1.run(EventQueue.java:606) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.awt.EventQueue.dispatchEvent(EventQueue.java:617) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138) Caused by: java.lang.NullPointerException at net.sourceforge.jnlp.runtime.JNLPClassLoader.getPermissions(JNLPClassLoader.java:602) ... 30 more java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.lwjgl.util.applet.AppletLoader$4.getPermissions(AppletLoader.java:1094) at java.security.SecureClassLoader.getProtectionDomain(SecureClassLoader.java:210) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:186) at org.newdawn.slick.AppletGameContainer.init(AppletGameContainer.java:124) at org.lwjgl.util.applet.AppletLoader.switchApplet(AppletLoader.java:1212) at org.lwjgl.util.applet.AppletLoader$2.run(AppletLoader.java:864) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:216) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:647) at java.awt.EventQueue.access$000(EventQueue.java:96) at java.awt.EventQueue$1.run(EventQueue.java:608) at java.awt.EventQueue$1.run(EventQueue.java:606) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.awt.EventQueue.dispatchEvent(EventQueue.java:617) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138) Caused by: java.lang.NullPointerException at net.sourceforge.jnlp.runtime.JNLPClassLoader.getPermissions(JNLPClassLoader.java:602) ... 33 more java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.lwjgl.util.applet.AppletLoader$4.getPermissions(AppletLoader.java:1094) at java.security.SecureClassLoader.getProtectionDomain(SecureClassLoader.java:210) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:186) at org.newdawn.slick.AppletGameContainer.init(AppletGameContainer.java:124) at org.lwjgl.util.applet.AppletLoader.switchApplet(AppletLoader.java:1212) at org.lwjgl.util.applet.AppletLoader$2.run(AppletLoader.java:864) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:216) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:647) at java.awt.EventQueue.access$000(EventQueue.java:96) at java.awt.EventQueue$1.run(EventQueue.java:608) at java.awt.EventQueue$1.run(EventQueue.java:606) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.awt.EventQueue.dispatchEvent(EventQueue.java:617) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138) Caused by: java.lang.NullPointerException at net.sourceforge.jnlp.runtime.JNLPClassLoader.getPermissions(JNLPClassLoader.java:602) ... 33 more java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.lwjgl.util.applet.AppletLoader$4.getPermissions(AppletLoader.java:1094) at java.security.SecureClassLoader.getProtectionDomain(SecureClassLoader.java:210) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) at org.newdawn.slick.AppletGameContainer.init(AppletGameContainer.java:126) at org.lwjgl.util.applet.AppletLoader.switchApplet(AppletLoader.java:1212) at org.lwjgl.util.applet.AppletLoader$2.run(AppletLoader.java:864) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:216) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:647) at java.awt.EventQueue.access$000(EventQueue.java:96) at java.awt.EventQueue$1.run(EventQueue.java:608) at java.awt.EventQueue$1.run(EventQueue.java:606) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.awt.EventQueue.dispatchEvent(EventQueue.java:617) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138) Caused by: java.lang.NullPointerException at net.sourceforge.jnlp.runtime.JNLPClassLoader.getPermissions(JNLPClassLoader.java:602) ... 31 more This occurred while 'Initializing real applet' null java.lang.reflect.InvocationTargetException at java.awt.EventQueue.invokeAndWait(EventQueue.java:1045) at org.lwjgl.util.applet.AppletLoader.run(AppletLoader.java:861) at java.lang.Thread.run(Thread.java:679) Caused by: java.lang.ExceptionInInitializerError at org.lwjgl.Sys.createImplementation(Sys.java:124) at org.lwjgl.Sys.<clinit>(Sys.java:111) at org.newdawn.slick.GameContainer.getTime(GameContainer.java:447) at org.newdawn.slick.GameContainer.<init>(GameContainer.java:98) at org.newdawn.slick.AppletGameContainer$Container.<init>(AppletGameContainer.java:249) at org.newdawn.slick.AppletGameContainer.init(AppletGameContainer.java:126) at org.lwjgl.util.applet.AppletLoader.switchApplet(AppletLoader.java:1212) at org.lwjgl.util.applet.AppletLoader$2.run(AppletLoader.java:864) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:216) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:647) at java.awt.EventQueue.access$000(EventQueue.java:96) at java.awt.EventQueue$1.run(EventQueue.java:608) at java.awt.EventQueue$1.run(EventQueue.java:606) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) at java.awt.EventQueue.dispatchEvent(EventQueue.java:617) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138) Caused by: java.lang.NullPointerException at net.sourceforge.jnlp.runtime.JNLPClassLoader.getPermissions(JNLPClassLoader.java:602) at net.sourceforge.jnlp.runtime.JNLPPolicy.getPermissions(JNLPPolicy.java:86) at net.sourceforge.jnlp.runtime.JNLPPolicy.implies(JNLPPolicy.java:182) at java.security.ProtectionDomain.implies(ProtectionDomain.java:240) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:371) at java.security.AccessController.checkPermission(AccessController.java:553) at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) at net.sourceforge.jnlp.runtime.JNLPSecurityManager.checkPermission(JNLPSecurityManager.java:284) at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1302) at java.lang.System.getProperty(System.java:669) at org.lwjgl.LWJGLUtil$2.run(LWJGLUtil.java:406) at org.lwjgl.LWJGLUtil$2.run(LWJGLUtil.java:404) at java.security.AccessController.doPrivileged(Native Method) at org.lwjgl.LWJGLUtil.getPrivilegedProperty(LWJGLUtil.java:404) at org.lwjgl.LWJGLUtil.<clinit>(LWJGLUtil.java:272) ... 22 more
Под рукой всех систем нет. На хр работает, как минимум на двух разных конфигурациях. Смею предположить что виста и 7 справятся с задачей.
Добавлено (14.01.2012, 21:41) --------------------------------------------- ВНИМАНИЕ! Для работы апплета на компьютере должна быть установлена Java ссылка
Добавлено (14.01.2012, 21:54) --------------------------------------------- Сразу же столкнулся с проблемой Если апплет не в фокусе - например, свёрнут, он быстро сжирает всю отведенную ему память и вылетает с ошибкой... Будем фиксить
Добавлено (16.01.2012, 05:44) --------------------------------------------- Список изменений:
-Исправлено: утечка памяти (не очищались из памяти эффекты следы гусениц) -Исправлено: подключение после релога. -Добавлено: иконка уровня (погон с лычками). -Исправлено: система движения (до этого зависела от пинга до клиента - у кого меньше пинг тот быстрее двигался). Теперь управление для всех одно и тоже. -Исправлено: теперь после перезахода, мины, поставленные игроком, не взрываются от движения этого игрока. -Добавлено: ремонт и перезарядка (сделан только клиент\апплет)
Для пробы: Вот сервер + клиент В файле config.ini(папка data) и в клиенте и в сервере вписываем свой ip
Добавлено (27.01.2012, 23:50) --------------------------------------------- Новая версия. В сервер внедрен физ. движок (box2d), так что движения стали интересными Исправлено всего по-немногу, нового контента пока что нет. Добавлен эффект дыма от двигателя. Первым делом добавлю урон от тарана.
P.S. Ищу художника. Нужны тайлы для рисования карт, и картинки для техники \ окружения. Также хотелось бы сменить внешний вид интерфейса. Изучаю Java My new project My old project
Сообщение отредактировал x-and1988 - Пятница, 27 Января 2012, 23:53
Лично меня отпугивает такая разительная разница межде Game maker и CryEngine... Да еще и UDK в планах... Учиться лучше, по моему мнению, чему-то одному - начали Gm, так и изучите от и до. Ну или Cry Изучаю Java My new project My old project
Нарисовал то, на что был способен PS: работа на длительное время (с сентября по январь) была приостановлена, уже возобновлена.
Добавлено (14.01.2012, 19:54) --------------------------------------------- Итак, это можно назвать pre-alfa версией. Список изменений:
-Исправлена миникарта (мины на миникарте появляются и исчезают как и должны.) -Исправлена система авторизации (не пускало, если ты заходил на один и тот аккаунт более 1 раза) -Исправлена отправка некоторых пакетов с сервера. -Исправлен чат при попытке отправить пустое сообщение. -Добавлено сообщение при входе, когда введен неверный пароль, или аккаунт уже в игре. -Добавлена панель с отображением уровня опыта, здоровья и количества патронов. -поправлена ошибка при ошибочном вводе пароля (вешался сервер) -доработано статус-окно (отображение хп, эксп, снарядов) -Исправлено превышение максимальной скорости для танка (ошибка в формуле) -Исправлено подключение клиента к серверу (иногда при коннекте вешался сервер) -Исправлено залипание снарядов -Исправлено отображение полосы оставшихся снарядов -Мелкие работы со сборкой проекта -При вводе неверного пароля, или если логин уже в игре, выдает соответствующее сообщение. -Добавлена возможность релога, удаленного закрытия клиента. -Исправлено подключение к серверу, пока что не глючит. -Исправлена отправка TurreInfo MineInfo всем игрокам (даже не прошедшим авторизацию). -Добавлено: если при отправке логина, такого не существует, сервер автоматически создаёт нового. -Добавлена полоса перезарядки -Подкорректирована отправка всех info-пакетов. - Работа над интерфейсом в клиенте. -Добавлено сервер сохраняет все данные об игроке (опыт, хп, запас снарядов и пр.). -Добавлено отображение полосы опыта до след. уровня. -Добавлено: система уровней и получения опыт за уничтожение противника, а также отображение опыта до след. уровня на панели. -Исправлено: убрано отправление пакетов игрокам, еще не зашедщим на сервер (приводило к криту клиента). -Исправлено: мелкие работы по коду, убраны лишние импорты и тд. -Исправлено: отображение кол-во опыта, нужного для получения уровня -Убрано: ресурсы во внешних папках. -Добавлено: упакованы ресурсы игры внутрь .jar файла. -Добавлено: проект для апплета (игра из браузера) -Добавлен начальный апплет (запускается, полностью совместим с сервером) -Изменены сборочные файлы проектов. -Исправлено:Апплет запускается в опере и файрфоксе (win x86). Остальные системы нужно тестировать. -Мелкие исправления в клиенте и сервере. -Добавлено: кнопка подключения к серверу в апплете и клиенте. -Добавлено: информационные сообщения, касаемые подключения. -Исправлено: свои мины можно разминировать. -Изменено: время отклика изображения на миникарте.
Сама игра перекочевала в браузер (нужны проверки с разных ОС и архитектур) Адрес игры: Сайт будет работать преимущественно по вечерам.
В теории должно быть кросс-платформенным, поэтому прошу всех по возможности протестировать игру. Если не запускается - сообщение в личку, с описанием системы и браузера, если ява-консоль включена - то и её содержимое.
PS карты в игре нету, пока кататься можно по серому пространству PPS в окошке логина можно вписывать любые данные - сервер автоматически создаст аккаунт. Изучаю Java My new project My old project
Сообщение отредактировал x-and1988 - Суббота, 14 Января 2012, 21:41
Хоть и не имею ни малейшего отношения к юнити, но тема заинтересовала, действительно как блог Автору однозначно плюс! Изучаю Java My new project My old project
Rectangle это обычные прямоугольники, тоесть прямоугольники без поворота, на твоем рисунке видно как танк всетаки имеет угол поворота, так что пользоваться Rectangle в твоем случае не коректно.
Посмотрел свой код - при создании объекта генерируется полигон с 4 точками - тот же квадрат, только при повороте с помощью афинных преобразований я его могу поворачивать.
За информацию спасибо, буду лопатить, время для этого дела всегда найдется Изучаю Java My new project My old project
С удовольствием постараюсь объяснить! Собственно само столкновение происходит между препятствием, в виде полигона, и объектом (танком, к примему), в виде квадрата. Стандратными средствами, методом instersects() я проверяю пересекает ли объект препятствие, и принимаю решение - ехать\ не ехать. У меня нет данных в какой именно точке происходит пересечение, и хотя бы какую линию полигона (синим цветом выделено на картике) пересекает объект. Желаемое решение при обработке столкновения - смотреть на угол между объектом и линией препятствия, и принимать решение, "рикошетить" объект от стены, или просто останавливать. Надеюсь, мою писанину возможно понять
PS: Проверка происходит с положением объекта на 1 степ позже нынешнего, правда уже не помню почему... Изучаю Java My new project My old project
Сообщение отредактировал x-and1988 - Воскресенье, 21 Августа 2011, 12:27
noTformaT прошу прощения за неразбериху - тема создавалась после суточной смены на работе. Мозг кипит По сути - я использую геометрические фигуры и их функции для обработки коллизий. Физика - это гордо звучит, но немного не в ту степь. Само определение коллизий есть, и оно работает.
Quote (noTformaT)
Саму физику и поведение тебе надо писать самому.
Вот именно с этим проблемы. Если в точности : На данный момент определяется сам факт пересечения объектов, а мне нужно определять точку пересечения, и угол между объектами, тогда я смогу написать нечто вроде формулы дял поведения объектов, исходя из величины угла, и точки пересечения. PS: какие минусы у бокс2д? зачем вот так недоговаривать Изучаю Java My new project My old project
Моего воображения не хватило, чтобы придумать, зачем интерфейсу афинные преобразования, использование кривых, эллипсов и прочей геометрии... Насчет медленности не могу сказать, ибо не пользовался другим пакетом. Для этого тему и создал - мне не хватает этого пакета, либо я что-то упустил. Изучаю Java My new project My old project