Управление роботом. Миниконкурс.
|
|
PBPROG | Дата: Среда, 04 Января 2012, 13:32 | Сообщение # 21 |
постоянный участник
Сейчас нет на сайте
| Quote (-Mikle-) залей на нормальный хостинг Залил http://rghost.ru/35733531
Quote (-Mikle-) На GameDev, вроде как, побили порог 50к. Там составлена таблица констант движения робота и к тому же, не запускается.
Сообщение отредактировал PBPROG - Среда, 04 Января 2012, 13:33 |
|
| |
|
PBPROG | Дата: Среда, 04 Января 2012, 14:34 | Сообщение # 23 |
постоянный участник
Сейчас нет на сайте
| Quote (vicu2010) Народ а чем редактировать? Hex Editor'ом? Что редактировать? DLL? Нет, dll нужно написать на любом языке программирования для которого есть компилятор для Windows x86 и создающий нативные DLLки.
-Mikle-, об этом написал в первом посте темы. Quote (-Mikle-) Естественно, писать dll можно на любом удобном языке.
Сообщение отредактировал PBPROG - Среда, 04 Января 2012, 14:36 |
|
| |
WTALKER | Дата: Среда, 04 Января 2012, 18:39 | Сообщение # 24 |
постоянный участник
Сейчас нет на сайте
| Самый лучший на данный момент: http://www.gamedev.ru/files/?id=74520 от Suslik = 51942
Вообще приятно что есть такой конкурс. Необычно как-то. Но я борьбу за счёт не осилю.
Если организатор точно -Mikle-, то ему лично благодарности и всем участникам.
-Mikle-, постарайся сделать screensaver на лучшем DLL
Раз уж занялся игростроем, то умей и имей: 1) знание иностранного языка и понимание того, что делаешь 2) программы для игростроя, а так же для обработки текстур, моделей, звуков 3) много свободного времени
Сообщение отредактировал WTALKER - Среда, 04 Января 2012, 18:45 |
|
| |
PBPROG | Дата: Среда, 04 Января 2012, 20:59 | Сообщение # 25 |
постоянный участник
Сейчас нет на сайте
| Новый рекорд этого форма - 50470. DLL. http://rghost.ru/35740373
|
|
| |
-Mikle- | Дата: Среда, 04 Января 2012, 22:15 | Сообщение # 26 |
Изобретатель велосипедов
Сейчас нет на сайте
| PBPROG, ты чуть раньше успел переступить порог 50000. Но рекорд теперь мой - 53053: http://www.gamedev.ru/files/?id=74548
|
|
| |
WTALKER | Дата: Среда, 04 Января 2012, 22:30 | Сообщение # 27 |
постоянный участник
Сейчас нет на сайте
| Quote (-Mikle-) PBPROG, ты чуть раньше успел переступить порог 50000. Но рекорд теперь мой - 53053: http://www.gamedev.ru/files/?id=74548 А что если ещё после толчка - придать силу притяжения вперёд? Т.е. когда колёсико недавно отталкивающее, после переворота на 180 градусов ещё и вытягивало вперёд.
Раз уж занялся игростроем, то умей и имей: 1) знание иностранного языка и понимание того, что делаешь 2) программы для игростроя, а так же для обработки текстур, моделей, звуков 3) много свободного времени
|
|
| |
PBPROG | Дата: Среда, 18 Января 2012, 21:30 | Сообщение # 28 |
постоянный участник
Сейчас нет на сайте
| Вижу что желающих немного. Выкладываю исходник предыдущей версии DLLки (42595). Может этот код поможет создать свой алгоритм, который побьет все текущие рекорды. Code Structure vec2 x.f y.f EndStructure
Structure robot Pos.vec2[3] Spd.vec2[3] Frc.f[3] EndStructure
#Plus = 2.9999970 #Minus = -3
Procedure.b Min(a.f, b.f, c.f) Result.b = -1 If a < b And a < c Result = 0 ElseIf b < a And b < c Result = 1 ElseIf c < a And c < b Result = 2 EndIf ProcedureReturn Result EndProcedure
ProcedureDLL RTICK(*R.robot) Count = 0
For i=0 To 2 If *R\Pos[i]\y <= 5 Count+1 If Count=2 Select Min(*R\Pos[0]\x, *R\Pos[1]\x , *R\Pos[2]\x) Case 0 *R\Frc[0] = #Plus *R\Frc[1] = #Minus *R\Frc[2] = #Plus Case 1 *R\Frc[0] = #Plus *R\Frc[1] = #Plus *R\Frc[2] = #Minus Case 2 *R\Frc[0] = #Minus *R\Frc[1] = #Plus *R\Frc[2] = #Plus EndSelect Break EndIf EndIf Next i If Count=0 *R\Frc[0] = #Minus *R\Frc[1] = #Minus *R\Frc[2] = #Minus EndIf EndProcedure
Исходник и DLL. http://depositfiles.com/files/t128zt4w4Добавлено (18.01.2012, 21:30) --------------------------------------------- А когда будут подводится результаты конкурса? Ведь конкурс объявлен, а потом все заброшено!
|
|
| |
-Mikle- | Дата: Пятница, 20 Января 2012, 10:53 | Сообщение # 29 |
Изобретатель велосипедов
Сейчас нет на сайте
| Quote А когда будут подводится результаты конкурса? Ведь конкурс объявлен, а потом все заброшено! Мне как-то неудобно себя победителем объявлять :), да и конкурс из тех, которые можно не заканчивать. У тебя, кстати, второе место, даже если учитывать многочисленные работы на GameDev.ru. Моя DLL, кстати, тоже на бейсике, только это VB6.
|
|
| |
alex13sh | Дата: Воскресенье, 26 Августа 2012, 13:07 | Сообщение # 30 |
был не раз
Сейчас нет на сайте
| Оч жалко то что опоздал(( ну всё равно хочится побить рекорд алгоритм придумал но немогу начать сделать по примеру делфи наачало но прога невидет функцию в длл название функции RTICK , название класса Robot и название длл robot.dll Что нетак?? вот ошибка
разработчик онлайн игр
|
|
| |
TimKruz | Дата: Воскресенье, 26 Августа 2012, 13:14 | Сообщение # 31 |
старожил
Сейчас нет на сайте
| Quote (alex13sh) но прога невидет функцию в длл Возможно, ты забываешь экспортировать функцию, она по-умолчанию скрыта (используется только внутри DLL). Вот шаблон для Delphi: Code library robot;
type fVect=record x,y:single; end;
Robo=record Pos:array[0..2]of fVect; Spd:array[0..2]of fVect; Frc:array[0..2]of single; end;
procedure RTICK(var R:Robo); StdCall; begin //Основной код end;
exports RTICK;
begin end.
|
|
| |
alex13sh | Дата: Воскресенье, 26 Августа 2012, 14:20 | Сообщение # 32 |
был не раз
Сейчас нет на сайте
| экспортировать это же значит публиковать?? и делфи мне оч трудно понять тут в твоём пример тока 2 типа которых я уже с другого примера написал
разработчик онлайн игр
|
|
| |
TimKruz | Дата: Воскресенье, 26 Августа 2012, 15:22 | Сообщение # 33 |
старожил
Сейчас нет на сайте
| Quote (alex13sh) экспортировать это же значит публиковать?? Ну в принципе да, а в программе происходит импорт необходимых функций из библиотеки. Нет, это разные понятия. Quote (alex13sh) тут в твоём пример тока 2 типа которых я уже с другого примера написал Других типов и не нужно. В программе используется только одна запись - типа Robo, вот с ней и нужно производить все операции.
*** Quote (alex13sh) и делфи мне оч трудно понять Там же вместе с программой исходники примера на C++ есть...
Сообщение отредактировал TimKruz - Воскресенье, 26 Августа 2012, 15:40 |
|
| |
alex13sh | Дата: Воскресенье, 26 Августа 2012, 15:28 | Сообщение # 34 |
был не раз
Сейчас нет на сайте
| если что я на vb6 пишу вот я написал (это для начало , что бы проверить)
Code Private Type fvec x As Single: y As Single End Type Private Type robo pos(2) As fvec spd(2) As fvec frc(2) As Single End Type
Dim r As robo
Public Function RTICK() r.frc(0) = r.frc(0) - 0.007 r.frc((1)) = r.frc(1) - 0.007 r.frc(2) = r.frc(2) + 0.007 If r.frc(2) > 0.8 Then r.frc(0) = 0.8 r.frc(1) = 0.8 r.frc(2) = -0.8 End If End Function непойму что может вызвать ошибку??
разработчик онлайн игр
Сообщение отредактировал alex13sh - Воскресенье, 26 Августа 2012, 15:29 |
|
| |
TimKruz | Дата: Воскресенье, 26 Августа 2012, 15:32 | Сообщение # 35 |
старожил
Сейчас нет на сайте
| Quote (alex13sh) Dim r As robo Public Function RTICK() Переменная R должна передаваться как аргумент функции rtick, и она должна возвращать новые значения в неё же... А у тебя, по-моему, получается так, что r - общая переменная для всей библиотеки, и ниоткуда не берётся.
*** Вот, нашёл. В VB6 вроде бы нужно писать директиву export после описания функции для её экспорта.
Сообщение отредактировал TimKruz - Воскресенье, 26 Августа 2012, 15:42 |
|
| |
alex13sh | Дата: Воскресенье, 26 Августа 2012, 15:56 | Сообщение # 36 |
был не раз
Сейчас нет на сайте
| я прост длл - ки неписал (ну 2 мелких для изучение и всё) вот проблема в том что я немогу так написать Code Public Function RTICK() As robo RTICK.frc(0) = RTICK.frc(0) - 0.007 RTICK.frc((1)) = RTICK.frc(1) - 0.007 RTICK.frc(2) = RTICK.frc(2) + 0.007 If r.frc(2) > 0.8 Then RTICK.frc(0) = 0.8 RTICK.frc(1) = 0.8 RTICK.frc(2) = -0.8 End If End Function публиковать тип нельзя почему то а вот привать тип можно ( а толку) вот и непонимаю Майкле написал на вб6 длл-ку ток он пропал на 5 дней (( и пока тут спрашиваю Quote (TimKruz) Вот, нашёл. В VB6 вроде бы нужно писать директиву export после описания функции для её экспорта. не слышал щас попробую
разработчик онлайн игр
Сообщение отредактировал alex13sh - Воскресенье, 26 Августа 2012, 16:02 |
|
| |
-Mikle- | Дата: Вторник, 28 Августа 2012, 22:29 | Сообщение # 37 |
Изобретатель велосипедов
Сейчас нет на сайте
| Я вернулся На VB6 обычную не ActiveX dll написать нельзя... по идее, а на самом деле можно: Тема
|
|
| |