forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Готовые проекты сообщества boolean (http://forum.boolean.name/forumdisplay.php?f=140)
-   -   РобоКот (http://forum.boolean.name/showthread.php?t=14085)

baton4ik 24.02.2011 10:09

Ответ: РобоКот
 
Цитата:

Сообщение от Костян (Сообщение 180304)
А чо в РобаКот нельзя свои варки создавать?????И почему так мало функций...?

Какие "варки"? Переменные, что-ли? Статью на википедии не читал! Переменную сделать проще простого:
Код:

if not SomeVariable then SomeVariable=0 end
Дальше переменную можно эксплуатировать как угодно:
Код:

SomeVariable=SuperUniVariable
Text(SomeVariable)

Каких тебе функций не хватает? Предлагай, если идея хорошая, я введу.

RegIon 24.02.2011 10:46

Ответ: РобоКот
 
Цитата:

Каких тебе функций не хватает? Предлагай, если идея хорошая, я введу.
Ну например:переменую сколько ботов осталось,Бонусы в код(супер мяу, пополнение жизни),ПОДДЕРЖКУ РУССКОГО..желательно..Дебигер кода..а то написал в Noterpad++,а не раница, и не могу найти ошибку..
поддержкой обоих регистров букв(а то если написал MEOW() kak meow() не работает)
БАГИ::
когда несколько мрут,нет победителя(уже говорили)..поставь счётчик ударов на каждого..а потом и выбирай победителя (из тех кто помер вместе) по нему.
бывает баг, когда рандомный генератор ставит котов друг на друга...быстро мрут..так, как считается коллизия..

А какие ещё можно функции LUA использовать..

moka 24.02.2011 13:54

Ответ: РобоКот
 
Регистр не трогать! Это наоборот плюс в языках, если есть чувствительность к регистру.
Дебаггер кода? Вы хоть понимаете технические аспекты? (хз если нет такой вьючеры в самом модуле lua, не думаю что это будет простая идея).

RegIon 24.02.2011 13:57

Ответ: РобоКот
 
Цитата:

Регистр не трогать! Это наоборот плюс в языках, если есть чувствительность к регистру.
а вы попробуйте в NOTERPAD++ в ТАКОМ написать.
Цитата:

Дебаггер кода? Вы хоть понимаете технические аспекты? (хз если нет такой вьючеры в самом модуле lua, не думаю что это будет простая идея).
...Но как-то же отбрасывает интерпретатор неверные скрипты,и не чихае..если нет такого..то примитивный...

moka 24.02.2011 13:59

Ответ: РобоКот
 
Цитата:

Сообщение от Костян (Сообщение 180340)
а вы попробуйте в NOTERPAD++ в ТАКОМ написать.

Не вижу никаких проблем. Всегда использовал удобства с регистром. Что если у тебя есть переменная name, и функция Name? Без учёта регистра, будет ошибка компиляции.

RegIon 24.02.2011 14:12

Ответ: РобоКот
 
Обычно компилятор сразу забивает компилировать...Одинаковые названия...Всегда так у мя было..Ладно..Но для постоянных функций его можно общим сделать...для того же MEOW()

RegIon 24.02.2011 14:18

Ответ: РобоКот
 
Код:

Initialize(2,255,125,0,"Supper bot")
SetSpeed(2)

if SCANNED==1 or scanned==2 or E_COLLIDE==1 then
MEOW()
GetInfo()
if EN_HP<HP then
MoveForward()
MEOW()
else
MEOW()
MoveForward()
if HP<15 then
MoveBackward()
MEOW()
end
end
else
MoveForward()
Turn(45)
end

ожу примитивный код моего бота...с Angle так и на разобрался..косячно он не глобальный..кстати..он победил раз пять подряд всех стандартных ботов..бывала ничья.

Reizel 24.02.2011 16:02

Ответ: РобоКот
 
Офигенно!!! Шедеврально!!!
Бэлиссимо!!!!
Батон, супер!!!
Скочал, посмотрел, понравилось. Идея хороша. Поле давайте побольше, скроллинг, несколько видов оружия уничтожения вражеских кораблей, возможность их прокачки за деньги, которые будут рандомно падать с небес(мечта жизни :))
Возможность таскать до 4-х пушек одновременно. Настраиваемый внешний вид. Возможность ремонтить корабль. Ждеееем!!!! Гранаты, мины, растяжки!!! Дым, огонь, мясоссо!!!! Батон, вперед!!!

Reizel 24.02.2011 16:14

Ответ: РобоКот
 
А еще чтоб ENEMY можно было выбирать, самому выбирать угол ходьбы и угол стрельбы.

2)Массивы поддерживаются LUA?? если да, то кул. Имеем в массиве всех видимых ботов (которые в поле зрения и недалеко)

moka 24.02.2011 17:37

Ответ: РобоКот
 
Что-то у меня перед обедом потянуло на мысли, РобоКот побудил :)
Кратно типо такого:
Код:

Vector2 {
  int x
  int y
}

Object {
  Vector2 location
  int angle (RotationView)
  Vector2 targetMove
  Vector2 targetView
  int health
  int healthMax
}

TypeObject {
  Enemy
}

self - ссылка на свой объект.

(readonly) vector2 Object.Location
(readonly) int Object.RotationMove - возвращает угол направления движения, может быть null
(readonly) int Object.RotationView - возвращает угол направления прицеливания
(readonly) float Object.Speed - возвращает скорость перемещения

(readonly) Object.Health
(readonly) Object.MaxHealth

(get/set) Object.TargetMove(Vector2 / int x, int y) - точка цели назначения движения, может быть null

(get/set) Object.TargetView(Vector2 / int x, int y) - точка на которую смотрит, может быть null

(readonly) Object.InView(Object / Vector2 / int x, int y) - проверяет если объект в радиусе видения, возвращает от 0 до 1 (на сколько виден). 0 если выходит за радиус видиния. 1 если смотрит прямо на объект.

(readonly) Object.ClosestObjects(TypeObject,distance=100,limit=0) - возвращает список ближних объектов по типу, менее указанного растояния, сортируя от самого ближнего до самого дальнего, и ограничивая длину списка (0 - не ограничено). Список может быть пустым.

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

Reizel 24.02.2011 17:43

Ответ: РобоКот
 
Вложений: 1
хех, багу выловил

baton4ik 24.02.2011 20:40

Ответ: РобоКот
 
Цитата:

Сообщение от Костян (Сообщение 180314)
Ну например:переменую сколько ботов осталось,Бонусы в код(супер мяу, пополнение жизни),ПОДДЕРЖКУ РУССКОГО..желательно..Дебигер кода..а то написал в Noterpad++,а не раница, и не могу найти ошибку..
поддержкой обоих регистров букв(а то если написал MEOW() kak meow() не работает)
БАГИ::
когда несколько мрут,нет победителя(уже говорили)..поставь счётчик ударов на каждого..а потом и выбирай победителя (из тех кто помер вместе) по нему.
бывает баг, когда рандомный генератор ставит котов друг на друга...быстро мрут..так, как считается коллизия..

А какие ещё можно функции LUA использовать..

Переменная с количеством живых котов - хорошая идея. Богусы усложнят геймплей, тут они лишние. Программировать на русском? Да ещё и в обучающей игре? Извольте!
Про регистры уже написал МоКа.
Про котов друг на друге знаю, баг не страшный, так что задача не из приоритетных.

Цитата:

Сообщение от Павел (Сообщение 180386)
хех, багу выловил

Интересно, когда возникает?

Цитата:

Сообщение от Костян (Сообщение 180345)
Код:

Initialize(2,255,125,0,"Supper bot")
SetSpeed(2)

if SCANNED==1 or scanned==2 or E_COLLIDE==1 then
MEOW()
GetInfo()
if EN_HP<HP then
MoveForward()
MEOW()
else
MEOW()
MoveForward()
if HP<15 then
MoveBackward()
MEOW()
end
end
else
MoveForward()
Turn(45)
end

ожу примитивный код моего бота...с Angle так и на разобрался..косячно он не глобальный..кстати..он победил раз пять подряд всех стандартных ботов..бывала ничья.

scanned==2 - ошибка. Смени регистр.
Не знаю, что у тебя за проблема с Angle, глянь моих котов. В wall_bot'e, например, Angle используется.
Да, твой кот действительно побеждает, поздравляю! :)

Цитата:

Сообщение от Павел (Сообщение 180370)
Офигенно!!! Шедеврально!!!
Бэлиссимо!!!!
Батон, супер!!!
Скочал, посмотрел, понравилось. Идея хороша. Поле давайте побольше, скроллинг, несколько видов оружия уничтожения вражеских кораблей, возможность их прокачки за деньги, которые будут рандомно падать с небес(мечта жизни :))
Возможность таскать до 4-х пушек одновременно. Настраиваемый внешний вид. Возможность ремонтить корабль. Ждеееем!!!! Гранаты, мины, растяжки!!! Дым, огонь, мясоссо!!!! Батон, вперед!!!

Спасибо за отзыв! Идеи интересны, но, как я писал выше, они усложнят геймплей, а я не уверен, что усложнение уместно.

moka 24.02.2011 21:19

Ответ: РобоКот
 
Визуальный редактор как уже упоминалось всё решит ;)

RegIon 25.02.2011 12:32

Ответ: РобоКот
 
Цитата:

Программировать на русском?
Русский шрифт...а то руские слова не отображает..которые пишешь Text.
Надо бы ешё с помошью GetInfo() возращать дистанцию..как до бота. так и до стены...

RegIon 25.02.2011 12:33

Ответ: РобоКот
 
Цитата:

хех, багу выловил
твой баг...не проги..у мя работает

Кстати...стреляет неправильно..Не по лучу...КривоватоВложение 12804

И надо в настройки добавить цвет Текста над ботом..и "на старт,Внимание,марш"...типо такого..Чтоб не сразу стартовали..


Часовой пояс GMT +4, время: 13:47.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot