مكتبة CLEO 4 (4.3.16)



































-
depositfiles.comتحميل
مكتبة CLEO 4 الجديدة من 19 مارس 2014
البرامج النصية
عند استخدام CLEO، يمكن إضافة برامج نصية جديدة إلى اللعبة، مكتوبة في Sanny Builder أو محرر نصوص آخر، دون الحاجة لبدء لعبة جديدة. كل ما تحتاجه لإضافة برنامج نصي إلى اللعبة هو وضعه في مجلد CLEO. سيبدأ البرنامج النصي العمل بعد بدء اللعبة. لإزالة البرنامج النصي من اللعبة، قم بحذف الملف المعني.
جميع البرامج النصية مكتوبة بواسطة معجبي اللعبة وليس لها علاقة بمطوري CLEO. على الرغم من أن مكتبة CLEO نفسها يجب أن تعمل مع إصدارات مختلفة من اللعبة، إلا أن بعض البرامج النصية قد تحتوي على قيود ومتطلبات خاصة بها. للاستفسارات حول تشغيل برنامج نصي معين، يرجى الاتصال بمؤلفه.
أكواد التشغيل
تضيف CLEO 4 إلى اللعبة 100 أمر نصي جديد، مما يسمح بالتعامل مع الملفات الخارجية، وتعديل البيانات في ذاكرة اللعبة، واستدعاء وظائف اللعبة مع معلماتها، بالإضافة إلى الكثير غير ذلك.
في الإصدار الرابع، ظهرت أوامر جديدة للتعامل مع الأصوات، والسلاسل النصية، وتمت إضافة إمكانية عرض النص على الشاشة دون استخدام ملفات خارجية (.gxt، .fxt). لتقدير الإنجازات الجديدة واستخدامها في برامجك النصية، قم بتثبيت أحدث إصدار من مكتبة CLEO 4.
المكونات الإضافية
مكونات CLEO الإضافية هي ملفات DLL عادية، ولكنها تحمل امتداد .CLEO. عند بدء التشغيل، تبحث مكتبة CLEO في مجلد CLEO عن الملفات ذات هذا الامتداد وتحاول تحميلها. في حالة التحميل الناجح، يبدأ المكون الإضافي في العمل وتنفيذ الوظائف التي كتب من أجلها.
تسمح CLEO 4 بإنشاء أكواد تشغيل جديدة باستخدام الشيفرات المصدرية لـ CLEO SDK. يمكنك العثور على ثلاثة أمثلة لمثل هذه المكونات الإضافية في مجموعة بدء المكتبة.
تُثبت المكونات الإضافية وتُحذف بنفس طريقة البرامج النصية. يمكنك العثور على قائمة بالمكونات الإضافية المتاحة على هذه الصفحة.
التثبيت
توزع CLEO 4 على شكل مثبت تلقائي. لتثبيت المكتبة، قم بتشغيل المثبت واتبع التعليمات.
تدعم CLEO 4.3 ثلاث إصدارات من لعبة GTA San Andreas: 1.0، 1.01، 3.0 (ستيم).
تتطلب CLEO تثبيت ASI Loader، الذي يأتي مع المكتبة. ASI Loader هو برنامج يقوم تلقائيًا بتحميل الملفات ذات الامتداد .asi عند بدء اللعبة. يستبدل ASI Loader أحد الملفات الأصلية للعبة 'vorbisFile.dll' بملف خاص به، لذا تأكد من أنك قمت بعمل نسخة من هذا الملف.
لا يتم استبدال ملفات اللعبة الأخرى، ولكن تتم إضافة الملفات والمجلدات التالية:
- cleo\ (مجلد CLEO، حيث يتم نسخ جميع البرامج النصية والمكونات الإضافية)
- cleo\FileSystemOperations.cleo (مكون إضافي للتعامل مع الملفات)
- cleo\IniFiles.cleo (مكون إضافي للتعامل مع INI)
- cleo\IntOperations.cleo (مكون إضافي للتعامل مع الأعداد الصحيحة على مستوى البتات)
- cleo\cleo_save\ (مجلد حفظات CLEO)
- cleo.asi (نواة مكتبة CLEO)
- bass.dll (مكتبة للتعامل مع الصوت)
- vorbisHooked.dll (محمل ASI من Silent)
جميع المكونات الإضافية اختيارية، ولكن يمكن استخدام وظائفها بواسطة برامج نصية مختلفة من CLEO.
تتطلب CLEO 4 لـ San Andreas لتشغيل ملفات الصوت تثبيت مكتبة BASS.dll الإصدار 2.4، والتي يمكن تنزيلها من الموقع الرسمي لشركة Un4seen Developments Ltd.
التوافق مع CLEO 3
تتحسن CLEO باستمرار وتتوسع مع مرور الوقت. في حالات نادرة جدًا، قد لا تعمل بعض البرامج النصية المكتوبة لـ CLEO 3 مع CLEO 4. بدءًا من CLEO 4.3، يمكنك تفعيل وضع التوافق الخاص لبرامج نصية CLEO 3. للقيام بذلك، قم بتغيير امتداد ملف البرنامج النصي (عادةً ما يكون '.cs') إلى '.cs3'. ستعمل CLEO 4.3 مع هذه البرامج النصية في وضع خاص، والذي يتضمن تغيير سلوك بعض أوامر البرامج النصية. في الوقت نفسه، في الغالبية العظمى من الحالات، تعمل برامج نصية CLEO 3 مع CLEO 4 دون أي مشاكل، ولا يلزم استخدام وضع التوافق.
Fdnjhs
مؤلف ومطور مكتبة CLEO الأصلي هو Seemann.
لا يرتبط المطورون بـ Take 2 Interactive أو Rockstar Games ولا يتحملون أي مسؤولية عن العواقب السلبية المحتملة الناتجة عن استخدام هذا المنتج أو أي منتجات أخرى يتم توزيعها مع المكتبة. استخدمه على مسؤوليتك الخاصة.
تستخدم CLEO 4.3 ASI Loader من Silent.
يمكنك العثور على معلومات حول التغييرات في الإصدار 4.3 ووصف أكثر تفصيلاً لميزات CLEO في ملفات readme المرفقة مع المكتبة.
الشكر
إلى ستانيسلاف غولوفين (المعروف أيضًا باسم listener) - على جهوده الكبيرة في دراسة ألعاب GTA.
mfisto - لاختبار النسخة الأولية لمكتبة CLEO 4، والنصائح والدعم
NTAuthority و LINK/2012 - للمساعدة في CLEO 4.3.
CLEO 4
--------------------
سجل التغييرات
-- 4.3.15 --
* تحسين إصلاح التوافق لأكواد التشغيل 0AE1، 0AE2 و 0AE3 مع استخدام find_next غير الصحيح
-- 4.3.14 --
* إصلاح 0AAA الذي كان يعيد فقط البرامج النصية المخصصة
* إصلاح العديد من الأشياء التي تستخدم مساحة 'SCM Block' أو 'Mission Local Storage'
* إصلاح تمرير المعلمات إلى تخزين البرامج النصية المحلية بدلاً من تخزين المهمة المحلية عبر 0A94
* إصلاح مشاكل محتملة مع التكرار عبر قوائم البرامج النصية (قد تسبب أخطاء نادرة وصعبة التتبع)
-- 4.3.13 --
* إصلاح تعطل عند بدء لعبة جديدة بعد بدء لعبة بالفعل مع تثبيت برامج نصية CLEO
* ربما تم إصلاح مشكلات أخرى عند بدء لعبة مع تثبيت برامج نصية CLEO
-- 4.3.12 --
* إصلاح تخطي معلمة السلسلة في 'SkipOpcodeParams' المستخدمة بواسطة مكونات CLEO الإضافية
* 0AC8 الآن يعيد قيمة NULL إلى متغير الإخراج إذا فشلت التخصيص (كما كان قبل 4.3a)
* 0AC9 الآن يتحقق من أن الذاكرة تم تخصيصها بواسطة 0AC8 قبل محاولة تحريرها
* مراجع FXT الآن غير حساسة لحالة الأحرف (كما كانت قبل 4.3a)
* عمليات الملفات الآن تتحقق من أن مقبض الإدخال ليس فارغًا (كما يبدو أنه كان الحال قبل 4.3a)
* حالة 'المهمة المحملة' الآن تعاد تعيينها عند بدء لعبة جديدة/محملة (كما كانت قبل 4.3a)
* لم تعد البرامج النصية تُحمّل مسبقًا (كما كان قبل 4.3a)
* تم حل النزاعات مع روابط القوائم الأخرى مثل 'HUME'
* تعديلات طفيفة أخرى
-- 4.3.11 --
* إصلاح تعطل مع 0ADA في البرامج النصية التي تبدأ بأكواد تشغيل تنتهي بـ '00'
-- 4.3.10 --
* تحسينات على أكواد التشغيل 0AE1، 0AE2 و 0AE3 - الآن تدور حول المسبح حتى عندما لا يتم استخدام علامة 'find_next' بشكل صحيح
* إصلاح 0AD2 الذي لم يعد يعيد الأهداف المستهدفة بالماوس، بينما كانت الاستهداف باستخدام وحدة التحكم تعمل
-- 4.3.9 --
* سيكون الآن قادرًا على بدء مهمة CLEO بعد الانتهاء مؤخرًا من مهمة قياسية
* لن يحدث خطأ بعد الآن وينتهي عندما تفشل البرامج النصية في الفتح، بل ستقوم ببساطة بتسجيل الخطأ
* لن تنتهي بعد الآن عند التحذيرات
* لم يعد يتضمن المسارات في أسماء البرامج النصية التي تم إنشاؤها تلقائيًا (على سبيل المثال، cleo\dir\demo.cs الآن تُسمى 'demo.cs' وليس 'dir\dem')
* تحسين التعامل مع أخطاء تحميل البرامج النصية
-- 4.3.8 --
* إصلاح تعطل قد يحدث عند إنهاء المهام باستخدام 004E
-- 4.3.7 --
* المهام المخصصة التي أطلقتها برامج نصية CLEO الآن ترث وضع التوافق الخاص بها - مما قد يصلح عدم التوافق مع التعديلات التي تستخدم مهام مخصصة
* الدليل الحالي الذي تم تعيينه بواسطة 0A99 الآن يعتمد على البرنامج النصي ويؤثر فقط على تشغيل برامج نصية CLEO (وليس اللعبة بأكملها أو main.scm)
* رسم النص والملمس/الرسمات الآن يعتمد على البرنامج النصي (لا يؤثر على برامج main.scm)
-- 4.3 --
* استبدال الشيفرة التي كانت تخصص وتحرر الذاكرة ديناميكيًا لمعلمات البرنامج النصي في كل مرة يتم فيها استدعاء 0AA5-0AA8 بمصفوفات ثابتة
* إزالة حلقة تنفيذ البرنامج النصي التي لم تُستخدم في أي شيء مهم وغريبًا كانت تعمل فقط مع 1.0US مما تسبب في تعطل مع مكونات تسجيل البرامج النصية
* إضافة دعم لإصدارات Steam (v3) من gta_sa.exe
* منع تخزين المهمة المحلية من التهيئة في وظائف SCM عندما يكون البرنامج النصي في وضع توافق CLEO 3 (امتداد '.cs3')
* تحديثات لسلوك الأكواد التشغيلية التالية:
0A99
CHANGE_DIRECTORY يمكن الآن تغيير الدليل إلى دليل البرنامج بشكل صحيح
0A9A
OPEN_FILE الآن يستخدم وضع 'التراث' عند تمرير عدد صحيح كمعلمة وضع للتوافق بين مقبض ملفات CLEO ومقبض ملفات SA
يرجى ملاحظة أنه يجب عليك حقًا عدم تمرير مقبض ملفات CLEO إلى وظائف اللعبة. ومع ذلك، يضمن هذا الوضع التراثي الآن أن المقابض متوافقة.
تم تحديث وظائف الملفات الأخرى أيضًا لضمان تمرير مقابض ملفات اللعبة إلى وظائف اللعبة ذات الصلة.
يوصى بعدم الاعتماد على تمرير الملفات إلى وظائف اللعبة وبدلاً من ذلك استخدام وظائف الملفات المدمجة في CLEO 4 في المستقبل.
0AD1
CALL الآن يقبل إدخال سلسلة، والذي يتم تمريره كمؤشر سلسلة وفقًا لاتفاقية السلاسل
0AD4
SCAN_STRING الآن يعيد نتيجة شرطية
0AE6
FIND_FIRST_FILE الآن يقبل مخرجات مصفوفة سلسلة
0AE3
FIND_ALL_RANDOM_OBJECTS_IN_SPHERE الآن يضمن عدم إرجاع كائنات تتلاشى ويعيد -1 بدلاً من 0 عند الفشل
0AE2
FIND_ALL_RANDOM_CARS_IN_SPHERE الآن يضمن عدم إرجاع مركبات نصية أو مركبات تتلاشى ويعيد -1 بدلاً من 0 عند الفشل
0AE1
FIND_ALL_RANDOM_CHARS_IN_SPHERE الآن يضمن عدم إرجاع شخصيات نصية أو شخصيات تتلاشى ويعيد -1 بدلاً من 0 عند الفشل
0ADF
ADD_TEXT_LABEL الآن يحدث تحديثًا للتسميات النصية الموجودة إذا كانت موجودة بالفعل
0AD6
IS_END_OF_FILE_REACHED الآن يعيد true إذا حدث خطأ في الملف
0AD2
GET_CHAR_PLAYER_IS_TARGETING الآن يعيد -1 بدلاً من 0 عندما لا يتم العثور على هدف
0AB5
STORE_CLOSEST_ENTITIES الآن يضمن عدم إرجاع كيانات نصية أو كيانات تتلاشى ويضمن عدم إرجاع شخصية اللاعب
Новая библиотека CLEO 4 от 19 марта 2014
Скрипты
При использовании CLEO в игру можно добавлять новые скрипты, написанные в Sanny Builder или другом редакторе скриптов, без необходимости начала новой игры. Все, что требуется для добавления такого скрипта в игру, - это поместить его в папку CLEO. Cкрипт начнет работу после начала игры. Для удаления скрипта из игры - удалите соответствующий файл.
Все скрипты написаны фанатами игры и не имеют отношения к разработчикам CLEO. Хотя сама библиотека CLEO должна работать с различными версиями игры, отдельные скрипты могут иметь собственные ограничения и требования к файлам игры. По вопросам работоспособности конкретного скрипта обращайтесь к его автору.
Опкоды
CLEO 4 добавляет в игру 100 новых скриптовых команд, которые позволяют работать с внешними файлами, изменять данные в памяти игры, вызывать игровые функции со своими параметрами, а также многое другое.
В четвертой версии появились новые команды для работы со звуками, строками, была добавлена возможность выводить на экран текст без использования внешних файлов (.gxt, .fxt). Чтобы оценить новые достижения и использовать их в ваших скриптах, установите последнюю версию библиотеки CLEO 4.
Плагины
CLEO-плагины - это обычные DLL-файлы, но имеющие расширение .CLEO. При запуске библиотека CLEO ищет в папке CLEO файлы с данным расширением и пытается загрузить их. В случае удачной загрузки плагин начинает работать и выполнять те функции, для которых он написан.
CLEO 4 позволяет создавать новые опкоды, используя исходные коды CLEO SDK. В стартовом комплекте библиотеки можно найти три примера таких плагинов.
Плагины устанавливаются и удаляются также как и скрипты. Список доступных плагинов можно найти на этой странице.
Установка
СLEO 4 распространяется в виде автоматического инсталлятора. Для установки библиотеки запустите инсталлятор и следуйте его инструкциям.
CLEO 4.3 поддерживает три версии игры GTA San Andreas: 1.0, 1.01, 3.0 (steam).
CLEO требует установки ASI Loader, который идет совместно с библиотекой. ASI Loader - это программа, которая автоматически загружает файлы с расширением .asi при старте игры. ASI Loader заменяет один из оригинальных файлов игры 'vorbisFile.dll' собственным, поэтому убедитесь, что вы сделали копию этого файла.
Другие файлы игры не заменяются, однако добавляются следующие файлы и папки:
- cleo\ (папка CLEO, в которую копируются все скрипты и плагины)
- cleo\FileSystemOperations.cleo (плагин для работы с файлами)
- cleo\IniFiles.cleo (плагин для работы с INI)
- cleo\IntOperations.cleo (плагин для работы с целыми числами на уровне битов)
- cleo\cleo_save\ (папка сохранений CLEO)
- cleo.asi (ядро библиотеки CLEO)
- bass.dll (библиотека для работы с аудио)
- vorbisHooked.dll (Silent's ASI Loader)
Все плагины опциональны, но их функционал может быть использован различными CLEO скриптами.
CLEO 4 для San Andreas для проигрывания звуковых файлов требует установленной библиотеки BASS.dll версии 2.4, которую можно скачать с официального сайта Un4seen Developments Ltd.
Совместимость с CLEO 3
CLEO постоянно улучшается и расширяется с течением времени. В очень редких случаях некоторые скрипты, написанные для CLEO 3, могут не работать с CLEO 4. Начиная с CLEO 4.3, вы можете включить специальный режим совместимости для скриптов CLEO 3. Для этого измените расширение файла скрипта (обычно это '.cs') на '.cs3'. CLEO 4.3 будет работать с такими скриптами в особом режиме, который включает в себя изменение поведения некоторых скриптовых команд. В тоже время в абсолютном большинстве случаев скрипты CLEO 3 работают с CLEO 4 без каких-либо проблем, и использование режима совместимости не требуется.
Fdnjhs
Автор и первоначальный разработчик библиотеки CLEO - Seemann.
Разработчики не имеют отношения к Take 2 Interactive или Rockstar Games и не несут никакой ответственности за возможные негативные последствия, вызванные использованием данного продукта или любых других продуктов, распространяемых вместе с библиотекой. Используйте его на свой страх и риск.
В CLEO 4.3 используется ASI Loader от Silent.
Информацию об изменениях в версии 4.3 и более подробное описание возможностей CLEO можно найти в readme-файлах, которые идут в комплекте с библиотекой.
Благодарности
Станиславу Головину (a.k.a. listener) - за огромный труд в исследовании игр GTA.
mfisto - за альфа-тестинг библиотеки CLEO 4, советы и поддержку
NTAuthority и LINK/2012 - за помощь с CLEO 4.3.
CLEO 4
--------------------
Change Log
-- 4.3.15 --
* Improvemed compatibility fix for opcodes 0AE1, 0AE2 and 0AE3 with incorrect find_next usage
-- 4.3.14 --
* Fixed 0AAA only returning custom scripts
* Fixed many things which use the 'SCM Block' or 'Mission Local Storage' space
* Fixed parameters being passed to script local storage instead of mission local storage through 0A94
* Fixed potential problems with iteration through the script queues (may cause rare and hard to trace bugs)
-- 4.3.13 --
* Fixed crashing when starting a new game after a game has already started with CLEO scripts installed
* Possibly fixed other issues with starting a game with CLEO scripts installed
-- 4.3.12 --
* Fixed string parameter skipping in 'SkipOpcodeParams' used by CLEO plugins
* 0AC8 now returns a NULL value to the output var if allocation failed (as it did before 4.3a)
* 0AC9 now checks the memory was allocated by 0AC8 before attempting to free it
* FXT references are now case insensitive (as they were before 4.3a)
* File operations now check the input handle isn't null (as it seems was the way before 4.3a)
* 'Loaded mission' status now reset on new/loaded game (as it was before 4.3a)
* Scripts no longer load prematurely (like before 4.3a)
* Resolved conflicts with other menu hooks such as 'HUME'
* Other minor tweaks
-- 4.3.11 --
* Fixed crash with 0ADA in scripts beginning with an opcode ending in '00'
-- 4.3.10 --
* Improvements to opcodes 0AE1, 0AE2 and 0AE3 - now loops around the pool even when the 'find_next' flag isn't used correctly
* Fixed 0AD2 not returning peds targetted with the mouse, while targetting with a pad worked
-- 4.3.9 --
* Will now be able to start a CLEO mission after recently finishing a standard mission
* Will no longer error & terminate when scripts fail to open and instead simply log the error
* Will no longer terminate on warnings
* No longer includes paths in automatically generated script names (e.g. cleo\dir\demo.cs is now named 'demo.cs' and not 'dir\dem')
* Improved handling of script load errors
-- 4.3.8 --
* Fixed crash which would occur when missions were ended with 004E
-- 4.3.7 --
* Custom missions launched by CLEO scripts now inherit their compatibility mode - possibly fixing incompatibilities with mods using custom missions
* The current directory set by 0A99 is now script-dependant and only affects running CLEO scripts (not the entire game or the main.scm)
* Text and texture/sprite draws are now script-dependant (doesn't affect main.scm scripts)
-- 4.3 --
* Replaced code which dynamically allocated and deallocated memory for script parameters every time 0AA5-0AA8 were called with static arrays
* Removed a script execution loop replacement which wasn't used for anything important and weirdly only worked with 1.0US that caused crashes with script logging plugins
* Added support for Steam (v3) versions of gta_sa.exe
* Prevented the local storage from being initialized in SCM functions when the script is in CLEO 3 compatibility mode ('.cs3' extension)
* Updates to behaviour of following opcodes:
0A99
CHANGE_DIRECTORY can now correctly change to the program directory
0A9A
OPEN_FILE now uses a 'legacy' mode when passing an integer as the mode parameter for compatibility of CLEO file handles and SA file handles
Note that you should really not pass CLEO file handles to game functions. However, this legacy mode now ensures that the handles are compatible.
Other file functions have also been updated ensuring that game file handles are passed to relevant game functions.
It is recommended to not rely on passing files to game functions and instead use CLEO 4's in-built file functions in future.
0AD1
CALL now accepts string input, which is passed as a string pointer following string convention
0AD4
SCAN_STRING now returns a condition result
0AE6
FIND_FIRST_FILE now accepts string array output
0AE3
FIND_ALL_RANDOM_OBJECTS_IN_SPHERE now ensures no fading objects are returned and returns -1 instead of 0 on failure
0AE2
FIND_ALL_RANDOM_CARS_IN_SPHERE now ensures no script vehicles or fading vehicle are returned and returns -1 instead of 0 on failure
0AE1
FIND_ALL_RANDOM_CHARS_IN_SPHERE now ensures no script characters or fading characters are returned and returns -1 instead of 0 on failure
0ADF
ADD_TEXT_LABEL now updates existing text labels if they already exist
0AD6
IS_END_OF_FILE_REACHED now returns true if a file error occured
0AD2
GET_CHAR_PLAYER_IS_TARGETING now returns -1 instead of 0 when no target is found
0AB5
STORE_CLOSEST_ENTITIES now ensures no script entities or fading entities are returned and ensures the player ped is not returned