Pe4en9 (20.08.2014)
2)И не работает FCNPC_SetSpecialAction.
Сделав дебаг, ставиться ему 12 SpecialAction, но он не садится.
3) Как допустим сделать бот дошел до точки( GoTO) и сделать ему обратно чтобы шел?
Последний раз редактировалось Pe4en9; 21.08.2014 в 01:10.
Готовится новая версия, есть какие-нибудь предложения?
Вышла версия 1.0.0.
Новое
- NPC теперь могут быть убиты в транспорте.
- Транспорт теперь получает урон, если на водительском сидении сидит NPC (чтобы отключить это, возвратите 0 в FCNPC_OnVehicleTakeDamage).
- OnPlayerStreamIn/Out теперь не вызываются для FCNPC (используйте FCNPC_OnStreamIn/Out).
- NPC теперь можно прикрепить к транспорту, объекту или объекту игрока (доступно изменение смещение).
- Контроль сирены транспорта NPC.
- Контроль здоровья транспорта NPC.
- Теперь можно контролировать урон, размер магазина, скорость стрельбы и скорость перезарядки оружия для всех или для каждого NPC.
- Контроль WeaponSkill для оружия (с изменением уроня для двойного оружия).
- Теперь можно контролировать силу броска гранаты, с помощью параметра shoot_delay в FCNPC_AimAt.
- Добавлен параметр UseFightstyle в FCNPC_MeleeAttack, с помощью которого NPC могут бить с использованием Fightstyle.
- Добавлено значение delay по умолчанию в FCNPC_MeleeAttack.
- В функции FCNPC_GoTo теперь можно отключить автоматическую установку угла поворота (полезно для использования совместно с FCNPC_SetQuaternion).
- Функция FCNPC_SetSkin теперь не респавнит, а рестримит NPC.
- Новые функции для контроля угла поворота NPC (FCNPC_SetAngleToPos, FCNPC_SetAngleToPlayer).
- Функции неуязвимости (FCNPC_SetInvulnerable, FCNPC_IsInvulnerable).
- Добавлен MOVE_TYPE_AUTO для FCNPC_GoTo (автоматически проверят NPC на нахождение в транспорте).
- Добавлен параметр radius для FCNPC_GoTo (NPC пойдёт к случайным координатам в пределах этого радиуса от точки назначения).
Исправления
- NPC не наносят урона при стрельбе.
- Угол поворота транспорта меняется при посадке в него NPC.
- NPC атакуют после спавна.
- NPC не стреляют после первой перезарядки.
- Валидация скинов из SA-MP 0.3.7.
Внутренние изменения
- Поддержка Windows и Linux SA-MP серверов версии 0.3.7 и 0.3.7 R2-1.
- Добавлена корректная валидация пассажирского места при посадке в транспорт.
- Заместо ZMap встроен MapAndreas 1.2.1 (http://forum.sa-mp.com/showpost.php?...&postcount=153).
- Множество изменений в коде (замена Detours на subhook, переход на CMake, внедрение YSF Structs.h, замена небезопасных функций, оптимизация и другое).
Список новых функций
Список новых автовызываемых функцийPHP код:
native FCNPC_InitMapAndreas(address);
native FCNPC_IsValid(npcid);
native FCNPC_IsStreamedIn(npcid, forplayerid);
native FCNPC_SetAngleToPos(npcid, Float:X, Float:Y);
native FCNPC_SetAngleToPlayer(npcid, playerid);
native FCNPC_SetInvulnerable(npcid, bool:invulnerable = true);
native FCNPC_IsInvulnerable(npcid);
native FCNPC_SetWeaponSkillLevel(npcid, skill, level);
native FCNPC_GetWeaponSkillLevel(npcid, skill);
native FCNPC_SetWeaponState(npcid, weaponstate);
native FCNPC_GetWeaponState(npcid);
native FCNPC_SetWeaponDamage(npcid, weaponid, Float:damage);
native Float:FCNPC_GetWeaponDamage(npcid, weaponid);
native FCNPC_SetWeaponReloadTime(npcid, weaponid, time);
native FCNPC_GetWeaponReloadTime(npcid, weaponid);
native FCNPC_SetWeaponShootTime(npcid, weaponid, time);
native FCNPC_GetWeaponShootTime(npcid, weaponid);
native FCNPC_SetWeaponClipSize(npcid, weaponid, size);
native FCNPC_GetWeaponClipSize(npcid, weaponid);
native FCNPC_SetWeaponInfo(npcid, weaponid, Float:damage = -1.0, reload_time = -1, shoot_time = -1, clip_size = -1);
native FCNPC_GetWeaponInfo(npcid, weaponid, &Float:damage = -1.0, &reload_time = -1, &shoot_time = -1, &clip_size = -1);
native FCNPC_SetWeaponDefaultInfo(weaponid, Float:damage = -1.0, reload_time = -1, shoot_time = -1, clip_size = -1);
native FCNPC_GetWeaponDefaultInfo(weaponid, &Float:damage = -1.0, &reload_time = -1, &shoot_time = -1, &clip_size = -1);
native FCNPC_SetAnimation(npcid, animationid, Float:fDelta = 4.1, loop = 0, lockx = 1, locky = 1, freeze = 0, time = 1);
native FCNPC_GetAnimation(npcid, &animationid = 0, &Float:fDelta = 4.1, &loop = 0, &lockx = 1, &locky = 1, &freeze = 0, &time = 1);
native FCNPC_SetFightingStyle(npcid, style);
native FCNPC_GetFightingStyle(npcid);
native FCNPC_GoTo(npcid, Float:X, Float:Y, Float:Z, type = MOVE_TYPE_AUTO, Float:speed = 0.5, bool:UseMapAndreas = false, Float:radius = 0.0, bool:getangle = true); // updated
native FCNPC_GoToPlayer(npcid, playerid, type = MOVE_TYPE_AUTO, Float:speed = 0.5, bool:UseMapAndreas = false, Float:radius = 0.0, bool:getangle = true);
native FCNPC_AimAt(npcid, Float:X, Float:Y, Float:Z, bool:shoot = false, shoot_delay = 0); // updated
native FCNPC_AimAtPlayer(npcid, playerid, bool:shoot = false, shoot_delay = 0);
native FCNPC_MeleeAttack(npcid, delay = -1, bool:fightstyle = false); // updated
native FCNPC_EnterVehicle(npcid, vehicleid, seatid, type = MOVE_TYPE_WALK); // updated
native FCNPC_SetVehicleSiren(npcid, bool:status);
native FCNPC_IsVehicleSiren(npcid);
native FCNPC_SetVehicleHealth(npcid, Float:health);
native Float:FCNPC_GetVehicleHealth(npcid);
native FCNPC_SetSurfingOffsets(npcid, Float:fX, Float:fY, Float:fZ);
native FCNPC_GetSurfingOffsets(npcid, &Float:fX, &Float:fY, &Float:fZ);
native FCNPC_SetSurfingVehicle(npcid, vehicleid);
native FCNPC_GetSurfingVehicle(npcid);
native FCNPC_SetSurfingObject(npcid, objectid);
native FCNPC_GetSurfingObject(npcid);
native FCNPC_SetSurfingPlayerObject(npcid, objectid);
native FCNPC_GetSurfingPlayerObject(npcid);
СкачатьPHP код:
forward FCNPC_OnVehicleTakeDamage(npcid, damagerid, vehicleid, weaponid, Float:fX, Float:fY, Float:fZ);
forward FCNPC_OnStreamIn(npcid, forplayerid);
forward FCNPC_OnStreamOut(npcid, forplayerid);
- Последнюю версию всегда можно скачать с GitHub: https://github.com/Open-GTO/FCNPC/releases
$continue$ (22.02.2016) Desulaid (22.02.2016) L0ndl3m (22.02.2016) Nexius_Tailer (23.02.2016) Nurick (22.02.2016) Osetin (22.02.2016) Profyan (22.02.2016) [ForD] (22.02.2016)
А я даже и нечего и не менял, включал и выключал MapAndreas, тоже самое...
PHP код:
SA-MP Dedicated Server
----------------------
v0.3.7, (C)2005-2015 SA-MP Team
[12:25:41] filterscripts = "" (string)
[12:25:41]
[12:25:41] Server Plugins
[12:25:41] --------------
[12:25:41] Loading plugin: FCNPC
[12:25:41]
[12:25:41] -------------------------------------------------
[12:25:41] FCNPC - Fully Controllable NPC v1.0.0
[12:25:41]
[12:25:41] - Author: OrMisicL
[12:25:41] - Contributors: ziggi, Neutralneu
[12:25:41] - Server version: 0.3.7
[12:25:41] - Build: Feb 21 2016 at 20:54:30
[12:25:41] -------------------------------------------------
[12:25:41]
[12:25:41] Loading...
[12:25:41] Loaded.
[12:25:41] Loading plugin: MapAndreas
[12:25:41] Loaded.
[12:25:41] Loaded 2 plugins.
[12:25:41]
[12:25:41] Filterscripts
[12:25:41] ---------------
[12:25:41] Loaded 0 filterscripts.
[12:25:41] Script[gamemodes/bg.amx]: Run time error 20: "Invalid index parameter (bad entry point)"
[12:25:41] Number of vehicle models: 0
----------
Loaded log file: "server_log.txt".
----------
SA-MP Dedicated Server
----------------------
v0.3.7, (C)2005-2015 SA-MP Team
[12:25:55] filterscripts = "" (string)
[12:25:55]
[12:25:55] Server Plugins
[12:25:55] --------------
[12:25:55] Loading plugin: FCNPC
[12:25:55]
[12:25:55] -------------------------------------------------
[12:25:55] FCNPC - Fully Controllable NPC v1.0.0
[12:25:55]
[12:25:55] - Author: OrMisicL
[12:25:55] - Contributors: ziggi, Neutralneu
[12:25:55] - Server version: 0.3.7
[12:25:55] - Build: Feb 21 2016 at 20:54:30
[12:25:55] -------------------------------------------------
[12:25:55]
[12:25:55] Loading...
[12:25:55] Loaded.
[12:25:55] Loading plugin: MapAndreas
[12:25:55] Loaded.
[12:25:55] Loaded 2 plugins.
[12:25:55]
[12:25:55] Filterscripts
[12:25:55] ---------------
[12:25:55] Loaded 0 filterscripts.
[12:25:55] Script[gamemodes/FCNPC.amx]: Run time error 20: "Invalid index parameter (bad entry point)"
[12:25:55] Number of vehicle models: 0
Последний раз редактировалось Salik_Davince; 22.02.2016 в 11:29.
Разве нельзя было просто сделать взаимодействие с MapAndreas, как с отдельным плагином, или это бы сильно отразилось на производительности?
Теперь же, если хочешь пользоваться и MapAndreas и FCNPC, серверу придётся держать в памяти сразу два экземпляра карты высот.
Выглядит не совсем кошерно, тем более, что хостеры могут ограничивать макс. объём памяти для сервера.
Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
Стол заказов:
Мои работы:
Salik_Davince (22.02.2016)
Как раз по этой ссылке об этом написано. То есть теперь наоборот, в памяти нужно держать лишь одни экземпляр.
Теперь подключение карты выглядит таким образом:
Все примеры скриптов являются Filterscript и запускать их нужно как Filterscript.PHP код:
MapAndreas_Init(MAP_ANDREAS_MODE_FULL);
FCNPC_InitMapAndreas(MapAndreas_GetAddress());
Salik_Davince (22.02.2016) TheMallard (22.02.2016)
Упс тупо поступил, температура, голова не соброжает в данные дни, извеняюсь незнаю что сомной такое
FCNPC 1.0.6
О версии
- Добавлены аналоговые UD и LR в FCNPC_SetKeys
Исправления
- Исправлено получение урона в скрипте Bodyguard
- Исправлено воскрешение NPC после рестрима
- Установлены корректные клавиши при передвижении игрока
- Исправлен крэш после отключения NPC
- Исправлена причина и killerid при убийстве NPC
Изменённые функции
PHP код:
native FCNPC_SetKeys(npcid, ud_analog, lr_analog, keys);
FCNPC 1.0.7
Изменения
- Исправлены кнопки передвижения (были некоторые проблемы с анимацией передвижения)
- Исправлено исчезновение тела (#15)
- Добавлена проверка на передаваемый адрес MapAndreas (больше не будет крашить, если адрес недействителен)
- Добавлены некоторые проверки на вводимые параметры
- Удалён сброс данных прицеливания из MeleeAttack (теперь вы можете использовать FCNPC_AimAtPlayer совместно с FCNPC_MeleeAttack)
- FCNPC_AimAt(Player) останавливает прицеливание перед началом нового
- Исправлен и оптимизирован перехват автовызываемых функций (теперь это отлично работает с filterscript)
- Исправлено действие по возвращаемому значению из автовызываемой функции (теперь это работает)
- Оптимизация (совсем чуть-чуть)
Скачать
- Скачать со страницы релизов GitHub: https://github.com/Open-GTO/FCNPC/releases
Последний раз редактировалось ziggi; 13.07.2016 в 03:53.
FCNPC 1.1.0
О версии
- Улучшено определение цели в функции FCNPC_AimAt
- Теперь NPC могут наносить урон другому игроку (для предотвращения этого вы можете возвратить 0 в FCNPC_OnTakeDamage)
- Добавлена проверка версии инклуд файла
- Теперь функция FCNPC_GoToPlayer обновляет точку назначения NPC пока игрок двигается
- Добавлены функции для контроля тяги в Hydra
- Добавлены функции для контроля шасси
- shoot_delay по умолчанию изменён на -1 (не важно)
- Оптимизация процесса прицеливания
- Небольшой рефакторинг исходного кода
Исправления
- Исправлен крэш для недействительного транспорта во время проигрывания записи
- Исправлена синхронизация позиции NPC при сёрфинге (прицеплении к транспорту)
- Исправлена стрельба при сёрфинге
- Исправлена работа аргумента speed в функциях FCNPC_GoTo[Player] (теперь он работает для пеших NPC тоже)
- Исправлено направление прицеливания по оси Z
- Сброс клавиш NPC после смерти (исправляет некоторые ошибки с анимациями)
- Исправлена проверка на параметры в функциях информации об оружии
Новые функции
СкачатьPHP код:
native FCNPC_StopSurfing(npcid);
native FCNPC_IsAttacking(npcid);
native FCNPC_IsAimingAtPlayer(npcid, playerid);
native FCNPC_IsMovingAtPlayer(npcid, playerid);
native FCNPC_SetVehicleHydraThrusters(npcid, direction);
native FCNPC_GetVehicleHydraThrusters(npcid);
native FCNPC_SetVehicleGearState(npcid, gear_state);
native FCNPC_GetVehicleGearState(npcid);
- Скачать с GitHub: https://github.com/Open-GTO/FCNPC/releases
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)