Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Simple File Manager [v0.1.1]

Статус пользователя MaJlou
сообщение 2.9.2008, 16:12
Сообщение #1


Стаж: 18 лет

Сообщений: 151
Благодарностей: 53
Полезность: < 0

Simple File Manager [v0.1.1]
Вступление:
Ситуация, например, такая. У провайдера есть игровой CS сервер, у нас есть rcon от этого сервера или amxx админка и возможность поставить хотябы 1 единственный палагин как-нибудь. Больше ничего. FTP доступа к папке с сервером игры нету. А управлять хочется, и на должном уровне. Для этого же нужно самому заливать плагины в папку plugins, прописывать их в plugins.ini только как без ftp? А вот так! При помощи этого маленького плагина.

Описание:
Плагин с минимально необходимым набором функций для работы с файлами и конфигами в папке cstrike сервера и в подкаталогах.

Требования:
* CS 1.6
* AMXMODX v1.76d (или другой версии)

Установка:
* скачайте плагин. разархивируйте.
* расположите file_manager.amxx в ...\cstrike\addons\amxmodx\plugins
* разместите строку "file_manager.amxx" в файле ...\cstrike\addons\amxmodx\configs\plugins.ini

Возможности:
Плагин может: проверить существует ли файл, выдать размер файла, переименовать файл, переместить файл, прочесть содержимое файла, удалить файл, записать строчку в файл, показать содержимое папки, создать папку, удалить папку - всё это в пределах папки cstrike и её подкаталогов. Также плагин может скачать файл с http адреса на сервер (карты, плагины). Скорость скачки ~ 4kb/sec. По завершению закачки пользователь стартовавший закачку будет извещен, если он не отсоединялся от сервера во время неё.
Также, можно при помощи этого плагина обновить сам AMXMODX или METAMOD на сервере (нужно только качать не поверх, а рядом, затем "поменять файлы местами" переименовав их. вообще, рискованная затея).

Переменные:
amx_fcutlen <n> (по-умолчанию=3) - устанавливает, сколько знаков в конце строки обрезать перед вводом в файл посредством amx_fwrite. минимум рекомендуется 2, ибо плагин в результате своей работы последний 2 символа строки делает лишними. Переменная была введена потому, что при чтении строчек из файла отформатированного по разному, каждый раз остаются\обрезаются ненужные\нужные символы. например, для чтения строчек из текстового файла созданного в среде linux рекомендуется значение 2, для win 3. В общем, стоит поэксперементировать и нужное значеним подобрать самому.
amx_fsilent <0|1> (по-умолчанию=0) - выкл|вкл ответ на ввод команд.

Команды:
amx_f - показать текущий путь и имя файла.
amx_fdef - установить путь "addons/amxmodx/configs".
amx_fdef0 - установить путь "".
amx_fup - установить путь на 1 папку выше.
amx_fex - проверить, существует ли файл.
amx_fsize - показать размер файла.
amx_fread - показать содержимое файла.
amx_fdir - показать содержимое папки.

amx_fcd - добавить папку в путь.
Usage: amx_fcd <folder>
Example: amx_fcd configs

amx_fpath - установить путь.
Usage: amx_fpath <path>
Example: amx_fpath addons/amxmodx/configs

amx_fname - установить имя файла.
Usage: amx_fname <filename>
Example: amx_fname plugins.ini

amx_fdelete - удалить файл (предварительно дополнительно указав его в amx_fname).
Usage: amx_fdelete <filename>
Example: amx_fdelete conmotd.txt

amx_fwrite - записать строку в файл.
Usage: amx_fwrite ~"<string>"
Example: amx_fwrite ~"sys_ticrate 100"

(спец символ '~' используется для того, чтобы игнорировать последующий за ним знак " и сдвинуть всю строку на 2 символа влево, ибо иначе встречающиеся в строке знаки ";" обрывают ввод строки)

amx_fwrite2 - записать строку в буфер (max 10).
Usage: amx_fwrite2 ~"<string>"
Example: amx_fwrite2 ~"sys_ticrate 100"

amx_fwrite3 - склеить все строки из буфера + вводную строку и записать результат в файл.
Usage: amx_fwrite3 ~"<string>"
Example: amx_fwrite3 ~"sys_ticrate 100"

amx_fcreatedir - создать папку.
Usage: amx_fcreatedir <folder>
Example: amx_fcreatedir my_folder

amx_fdeletedir - удалить папку.
Usage: amx_fdeletedir <folder>
Example: amx_fdeletedir my_folder

amx_frename - переименовать файл.
Usage: amx_frename <newname>
Example: amx_frename plugins.ini.bak

amx_fmove - переместить файл.
Usage: amx_fmove <path>
Example: amx_fmove addons/amxmodx/configs

amx_fsetsource - установить источник закачки.
Usage (HTTP only!): amx_fsetsource <http_link>
Example: amx_fsetsource http://src.ucoz.net/img/fr/ic/9/online.gif

amx_fsetdest - установить путь закачки.
Usage: amx_fsetdest <path/filename>
Example: amx_fsetdest addons/amxmodx/online.gif

amx_fstart - начать закачку.

Примечания:

команды amx_fread и amx_fdir при использовании через консоль игры часто выдаёт ошибку overflowed. чтобы этого избежать, нужно использовать amx_fread через rcon, например из hlsw.
----------
для заливки на сервер конфигов при помощи команды amx_fwrite удобно составлять "загрузочные" конфиги, которые загружаются с консоли командой exec и составляются примерно так:

Код
//exec scripts/server/configs/plugins.cfg

alias "w1" "wait"
alias "w2" "w1;w1"
alias "w4" "w2;w2"
alias "w8" "w4;w4"

w8;amx_fdef
w8;amx_fname plugins.ini
w8;amx_fdelete plugins.ini
//-----------------------------------------------------------------
w8;amx_fwrite ~"; AMX Mod X plugins
w8;amx_fwrite ~"
w8;amx_fwrite ~"; Admin Base - Always one has to be activated
w8;amx_fwrite ~";admin.amxx; admin base (required for any admin-related)
w8;amx_fwrite ~"admin_sql.amxx debug; admin base - SQL version (comment admin.amxx)
w8;amx_fwrite ~"amxbans.amxx
w8;amx_fwrite ~"
w8;amx_fwrite ~"; Basic
w8;amx_fwrite ~"admincmd.amxx; basic admin console commands
w8;amx_fwrite ~"adminhelp.amxx; help comma

если входная строчка длинее 116 символов, то нужно её разбить на несколько строчек и грузить на сервер при помощи команд amx_fwrite2 и amx_fwrite3.

выглядит это так:

Код
w8;amx_fwrite ~"// Set in seconds how fast players can chat (chat-flood protection)
w8;amx_fwrite ~"amx_flood_time 0.75
w8;amx_fwrite ~"
w8;amx_fwrite2 ~"// Amount of reserved slots, amx_hideslots must be 1 to use this cvar (for more details see comments in plugi
w8;amx_fwrite3 ~"n source)
w8;amx_fwrite ~"amx_reservation 4


в результате получим это:

Код
// Set in seconds how fast players can chat (chat-flood protection)
amx_flood_time 0.75

// Amount of reserved slots, amx_hideslots must be 1 to use this cvar (for more details see comments in plugin source)
amx_reservation 4

Строница откудо взят этот чудный плагин:
Downloader v1.0 http://forums.alliedmods.net/showthread.php?p=551998

Отредактировал: MaJlou, - 2.9.2008, 16:13
Прикрепленные файлы:
Прикрепленный файл  file_manager.rar ( 28,54 килобайт ) Кол-во скачиваний: 35
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   Цитировать сообщение
Статус пользователя NoiSS
сообщение 29.12.2009, 15:19
Сообщение #2


Стаж: 19 лет

Сообщений: 42
Благодарностей: 2
Полезность: 39

отличный плагин,очень удобный.
но есть проблемка!
когда прописываю amx_fdef (указываю путь к файлу) amx_fname (имя) amx_fwrite "Tonik" "88" "abcdefghijklmnopqrstu" "a"
получается пропись в файле "Tonik" "88" "abcdefghijklmnopqrstu" "a (тобишь в конце нету ") как этот знак поставить в конец?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Ser_UFL
сообщение 29.12.2009, 15:25
Сообщение #3


Стаж: 19 лет

Сообщений: 1632
Благодарностей: 637
Полезность: 819

NoiSS, попробуй так:
Код
amx_fwrite '"Tonik" "88" "abcdefghijklmnopqrstu" "a"'


Отредактировал: Ser_UFL, - 29.12.2009, 15:28
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя NoiSS
сообщение 29.12.2009, 20:28
Сообщение #4


Стаж: 19 лет

Сообщений: 42
Благодарностей: 2
Полезность: 39

[quote name='Ser_UFL' date
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя NoiSS
сообщение 29.12.2009, 21:14
Сообщение #5


Стаж: 19 лет

Сообщений: 42
Благодарностей: 2
Полезность: 39

тоже самое получается...
пробовал скачать фаил с http источника,он как бы скачивается в задонное мной место,но весит 0кб и когда пытаешся его открыть не открывается...в общем плагин не доработан...ИМХО...а было бы очень даже удобно им пользоваться в моём случае!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Argus
сообщение 9.1.2010, 22:05
Сообщение #6
Стаж: 18 лет

Сообщений: 6
Благодарностей: 5
Полезность: 0

Цитата(NoiSS @ 29.12.2009, 13:19) *
отличный плагин,очень удобный.
но есть проблемка!
когда прописываю amx_fdef (указываю путь к файлу) amx_fname (имя) amx_fwrite "Tonik" "88" "abcdefghijklmnopqrstu" "a"
получается пропись в файле "Tonik" "88" "abcdefghijklmnopqrstu" "a (тобишь в конце нету ") как этот знак поставить в конец?


плагин обрезает несколько символов в конце строки. если бы ты не поленился и прочитал бы первое сообщение, то ты бы понял это. соответственно простой выход из ситуации - дописать пробел.

Цитата(NoiSS @ 29.12.2009, 19:14) *
тоже самое получается...
пробовал скачать фаил с http источника,он как бы скачивается в задонное мной место,но весит 0кб и когда пытаешся его открыть не открывается...в общем плагин не доработан...ИМХО...а было бы очень даже удобно им пользоваться в моём случае!


всё отлично качает. если размер 0 - это значит что этот http сервер лагает. этот плагин устанавливает соединение 1 раз. если неудача - повторений не будет. так что если http хоть немного тормозит, то этот плагин ждать ответа от сервера не будет, как делает это браузер.

кстати автор стырил этот плагин отсюда - http://amxmodx.ucoz.ru/forum/4-2291-1
там же можно последнюю версию скачать.

Отредактировал: Argus, - 9.1.2010, 22:12
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: