Войти на сайт

Авторизация, ждите ...
×
Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.

ТЕМА: генерация мобов

генерация мобов 8 года 6 мес. назад #86099

  • Ezhio Kmit
  • Ezhio Kmit аватар
  • Вне сайта
  • Познающий
  • Сообщений: 14
Народ мне нужна помощь прошу расскажите как создать спавн мобов БЕЗ боёвки просто чтоб заспавнились типо как в зомби сурвавалах типа DAY Z State Of Decay в RPG Maker VX Ace
Последнее редактирование: 8 года 6 мес. назад от Ezhio Kmit.
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86100

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • 2 место УчительДаритель СтимкеяОраторОрганизатор конкурсовПрограммист JavaScript
Ну а как обычно делаются ивенты? Делаешь два кадра, первый пустой, на втором своего моба (который ходит, стоит, кидается или что ты там с ним хочешь). На втором кадре делаешь условие, например по какому-то ключу или переменной, в общем устанавливаешь условие по которому он должен «проснутся». Ну и всё, далее в определённый момент устанавливаешь свой ключ или переменную и вуаля на карте появился моб.

До тех пор пока ключ не активирован, на карте будут пустые ивенты с первым кадром.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: strelokhalfer

генерация мобов 8 года 6 мес. назад #86101

  • Ezhio Kmit
  • Ezhio Kmit аватар
  • Вне сайта
  • Познающий
  • Сообщений: 14
Нет что бы спавнился моб по всей карте или по всей локации
Последнее редактирование: 8 года 6 мес. назад от Ezhio Kmit.
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86102

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • 2 место УчительДаритель СтимкеяОраторОрганизатор конкурсовПрограммист JavaScript
Я не совсем понимаю, что ты хочешь? Сделай 10, 20, 100 ивентов. Хочешь что бы они появлялись в случайном месте, сделай первому кадру движение в случайном направлении. Игрок не будет это видеть, но они будут двигаться. Потом когда включишь ключ они проявятся.

Если же тебе нужно просто как декорации, то есть скрипт «Tile Swap», который позволяет менять тайлы на карте «налету». Но это уже надо знать скрипты.
Последнее редактирование: 8 года 6 мес. назад от Mur.
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86103

  • Ezhio Kmit
  • Ezhio Kmit аватар
  • Вне сайта
  • Познающий
  • Сообщений: 14
всё спасибо я понял тебя) )) но как сделать чтобы эти эвенты сами создавались
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86104

  • Волчонок
  • Волчонок аватар
  • Вне сайта
  • Просветлённый
  • Волчонок
  • Сообщений: 277
  • Спасибо получено: 247
  • 3 место2 место Организатор конкурсов3 место в Кодировке
Ezhio Kmit пишет:
всё спасибо я понял тебя) )) но как сделать чтобы эти эвенты сами создавались

Скриптами. Помниться, был там такой функционал.
Ленивый волчонок с большими амбициями

Рассказ "Рождение мага", периодически обновляется
РПГ История Егеря. Основной текущий проект.

ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86105

  • Ezhio Kmit
  • Ezhio Kmit аватар
  • Вне сайта
  • Познающий
  • Сообщений: 14
окей я поищу но это надо скриптами ?ArgentumVulpus пишет:
Ezhio Kmit пишет:
всё спасибо я понял тебя) )) но как сделать чтобы эти эвенты сами создавались

Скриптами. Помниться, был там такой функционал.
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86106

  • Волчонок
  • Волчонок аватар
  • Вне сайта
  • Просветлённый
  • Волчонок
  • Сообщений: 277
  • Спасибо получено: 247
  • 3 место2 место Организатор конкурсов3 место в Кодировке
Ezhio Kmit пишет:
окей я поищу но это надо скриптами ?

Да, без скриптов ты не сможешь динамически создать событие. И тебе надо для этого иметь настроенный функционал для создаваемого события, так что до спауна противника настрой событие-шаблон, потому что сразу после создания тебе надо будет подать в него все необходимые команды.
И ещё я помню, что динамически созданные ивенты не сохраняются при игре, так что если тебе надо, что бы сохранялись, придётся ещё учесть и это.
Если возникнут трудности (с готовой или почти готовой генерацией, учти =) ) обращай в радел помощи по скриптам. Если у местных скриптеров будут время и возможность, они тебе помогут.
Ленивый волчонок с большими амбициями

Рассказ "Рождение мага", периодически обновляется
РПГ История Егеря. Основной текущий проект.

ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86107

  • Rude
  • Rude аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 56
  • Спасибо получено: 91
  • Писатель 2 местоРазработчикПобедитель конкурсаПроект месяца 2 место
Ezhio Kmit пишет:
но как сделать чтобы эти эвенты сами создавались
Можно таким скриптом. Используя параллельное событие, проверять количество мобов на карте (к примеру записывать его в определенную переменную) и если оно не превышает нужного - выполнить скрипт на спавн.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Mur

генерация мобов 8 года 6 мес. назад #86108

  • Волчонок
  • Волчонок аватар
  • Вне сайта
  • Просветлённый
  • Волчонок
  • Сообщений: 277
  • Спасибо получено: 247
  • 3 место2 место Организатор конкурсов3 место в Кодировке
Rude пишет:
Можно таким скриптом. Используя параллельное событие, проверять количество мобов на карте (к примеру записывать его в определенную переменную) и если оно не превышает нужного - выполнить скрипт на спавн.

Вот, готовое решение =)
Ленивый волчонок с большими амбициями

Рассказ "Рождение мага", периодически обновляется
РПГ История Егеря. Основной текущий проект.

ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86109

  • Ezhio Kmit
  • Ezhio Kmit аватар
  • Вне сайта
  • Познающий
  • Сообщений: 14
можешь кинуть сам скрипт )
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86110

  • Волчонок
  • Волчонок аватар
  • Вне сайта
  • Просветлённый
  • Волчонок
  • Сообщений: 277
  • Спасибо получено: 247
  • 3 место2 место Организатор конкурсов3 место в Кодировке
Ezhio Kmit пишет:
можешь кинуть сам скрипт )

Кмит, не тупи =) Там на странице же есть аж две ссылки на скачивание =)
Ленивый волчонок с большими амбициями

Рассказ "Рождение мага", периодически обновляется
РПГ История Егеря. Основной текущий проект.

ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86111

  • Rude
  • Rude аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 56
  • Спасибо получено: 91
  • Писатель 2 местоРазработчикПобедитель конкурсаПроект месяца 2 место
Ссылка или
#==============================================================================
# 
# ▼ Yanfly Engine Ace - Spawn Event v1.00
# -- Last Updated: 2012.02.08
# -- Level: Normal, Hard
# -- Requires: n/a
# 
#==============================================================================
 
$imported = {} if $imported.nil?
$imported["YEA-SpawnEvent"] = true
 
#==============================================================================
# ▼ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2012.02.08 - Started Script and Finished.
# 
#==============================================================================
# ▼ Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# For those who would like to spawn pre-made events from the current map or
# even other maps, this script allows you to do so. With the option of spawning
# the events at specific locations or a random spot marked by a certain region,
# you can have events spawn using simple script calls. The events remain until
# a map change.
# 
#==============================================================================
# ▼ Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ▼ Materials/素材 but above ▼ Main. Remember to save.
# 
# -----------------------------------------------------------------------------
# Script Calls - These commands are used with script calls.
# -----------------------------------------------------------------------------
# spawn_event_location(x, y, event_id)
# spawn_event_location(x, y, event_id, map_id)
# This causes a new event to be created at location x and y on the current map.
# The event to be created will use the event data from event_id. If no map_id
# is used, then the current map's event will be used to spawn the new event.
# The event cannot spawn on top of another event or vehicle. If there is an
# event or vehicle in place, then no event will be spawned at all.
# 
# spawn_event_region(region_id, event_id)
# spawn_event_region(region_id, event_id, map_id)
# This causes a new event to be created at a random location with a matching
# region_id. The event to be created will use the event data from event_id. If
# no map_id is used, then the current map's event will be used to spawn the
# new event. If the region_id does not exist on the current map, then no event
# will be spawned. The event will not spawn on top of another event nor on top
# of a vehicle. If there is not enough room to spawn an event, then no event
# will be spawned at all. This process takes slightly longer on larger maps.
# 
#==============================================================================
# ▼ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
# 
#==============================================================================
 
#==============================================================================
# ■ Game_Map
#==============================================================================
 
class Game_Map
 
  #--------------------------------------------------------------------------
  # new method: spawn_event
  #--------------------------------------------------------------------------
  def spawn_event(dx, dy, event_id, map_id)
    return if $game_player.collide_with_characters?(dx, dy)
    return if dx == $game_player.x && dy == $game_player.y
    map_id = @map_id if map_id == 0
    map = load_data(sprintf("Data/Map%03d.rvdata2", map_id))
    event = generated_event(map, event_id)
    return if event.nil?
    key_id = @events.keys.max || -1 + 1
    event = clone_event(event, key_id)
    @events[key_id] = Game_Event.new(@map_id, event)
    @events[key_id].moveto(dx, dy)
    SceneManager.scene.spriteset.refresh_characters
  end
 
  #--------------------------------------------------------------------------
  # new method: generated_event
  #--------------------------------------------------------------------------
  def generated_event(map, event_id)
    for key in map.events
      event = key[1]
      next if event.nil?
      return event if event.id == event_id
    end
    return nil
  end
 
  #--------------------------------------------------------------------------
  # new method: spawn_event_region
  #--------------------------------------------------------------------------
  def spawn_event_region(reg_id, event_id, map_id)
    tile = get_random_region_tile(reg_id)
    return if tile.nil?
    spawn_event(tile[0], tile[1], event_id, map_id)
  end
 
  #--------------------------------------------------------------------------
  # new method: get_random_region_tile
  #--------------------------------------------------------------------------
  def get_random_region_tile(reg_id)
    tiles = []
    for i in 0...width
      for j in 0...height
        next unless region_id(i, j) == reg_id
        next if $game_player.collide_with_characters?(i, j)
        next if i == $game_player.x && j == $game_player.y
        tiles.push([i, j])
      end
    end
    return tiles.sample
  end
 
  private
 
  def clone_event(event, id)	
	  cloned_event = Marshal.load(Marshal.dump(event))
	  cloned_event.id = id
	  return cloned_event
  end
 
end # Game_Map
 
#==============================================================================
# ■ Game_Interpreter
#==============================================================================
 
class Game_Interpreter
 
  #--------------------------------------------------------------------------
  # new method: spawn_event_location
  #--------------------------------------------------------------------------
  def spawn_event_location(dx, dy, event_id, map_id = 0)
    return unless SceneManager.scene_is?(Scene_Map)
    $game_map.spawn_event(dx, dy, event_id, map_id)
  end
 
  #--------------------------------------------------------------------------
  # new method: spawn_event_region
  #--------------------------------------------------------------------------
  def spawn_event_region(region_id, event_id, map_id = 0)
    return unless SceneManager.scene_is?(Scene_Map)
    $game_map.spawn_event_region(region_id, event_id, map_id)
  end
 
end # Game_Interpreter
 
#==============================================================================
# ■ Scene_Map
#==============================================================================
 
class Scene_Map < Scene_Base
 
  #--------------------------------------------------------------------------
  # public instance variables
  #--------------------------------------------------------------------------
  attr_accessor :spriteset
 
end # Scene_Map
 
#==============================================================================
# 
# ▼ End of File
# 
#==============================================================================
Последнее редактирование: 8 года 6 мес. назад от Rude. Причина: Чо это я код под спойлер сую? оО
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Ren310, Ezhio Kmit

генерация мобов 8 года 6 мес. назад #86112

  • Mur
  • Mur аватар
  • Вне сайта
  • Светлый дракон
  • Мур? Мур! Мур.
  • Сообщений: 574
  • Спасибо получено: 1448
  • 2 место УчительДаритель СтимкеяОраторОрганизатор конкурсовПрограммист JavaScript
ArgentumVulpus пишет:
Кмит, не тупи =) Там на странице же есть аж две ссылки на скачивание =)

Предвижу следующий вопрос, «а как его использовать, я не понимаю английский» :blush:
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86113

  • strelokhalfer
  • strelokhalfer аватар
  • Вне сайта
  • Архитектор Миров
  • Знатный грамотей
  • Сообщений: 1640
  • Спасибо получено: 1078
  • Программист Ruby2 место Сбитая кодировкаПереводчикДаритель СтимкеяОрганизатор конкурсов2 место
Так вроде эльф подобный скрипт делал.
"Стрелок, что-то ты неочень похож на свой аватар..."(с)
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86118

  • DeadElf79
  • DeadElf79 аватар
  • Вне сайта
  • Звездный Страж
  • Сообщений: 3147
  • Спасибо получено: 2650
  • Организатор конкурсовВетеранПроект месяца 1 местоПрограммист Ruby3 местоПроект месяца 2 местоПисатель 3 местоУчитель1 место в Готв
Стрелок, скрипт от меня куда сложнее и он в этом случае не нужен.
Администратор запретил публиковать записи гостям.

генерация мобов 8 года 6 мес. назад #86130

  • Ezhio Kmit
  • Ezhio Kmit аватар
  • Вне сайта
  • Познающий
  • Сообщений: 14
спасибо огромное)
Администратор запретил публиковать записи гостям.
Время создания страницы: 0.239 секунд