Перейти к содержимому



Добро пожаловать на пользовательский форум CR-MP.RU
Зарегистрируйтесь или авторизуйтесь на нашем форуме, чтобы получить доступ ко всем функциям.
Если у Вас уже имеется аккаунт, нажмите, чтобы войти.
Если у Вас нет аккаунта на нашем форуме, нажмите, чтобы перейти к регистрации. Возникли проблемы с регистрацией ? Обратитесь на почту admin@cr-mp.ru с вашей проблемой.
Фотография

Пишем мод с 0 (Урок 1)

- - - - - Урок

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1
Maks_Pilipenko

Житель


Репутация: 10

Кратко о том что мы будем делать. 
Данные уроки будут посвящены написанию игрового мода crmp с new.pwn. Мод будет жанра РП, написан на файловой системе с использованием инклуда mxINI.

Краткий план разработки на ближайшее время:

Основа Мода.
- Система Регистрации
- Загрузка сохранения аккаунта.
- Система Домов
- Система Бизнесов
- Система Транспорта
- Система Банка.

Это план на написание основы. После этого мод начнет заполнятся фракциями, работами и т.п.

Данный урок, будет посвящен началу разработки, и написанию системы регистрации, и загрузки сохранения аккаунта.
Пожалуй начнём.

Действие Первое. Нужные файлы, и настройка сервера:

Качаем последнюю версию сервера sa-mp с офф. сайта.
Распаковываем сервер в любую удобную для вас папку.
Открываем server.cfg, и меняем rcon_password changename, на свой пароль, из строки filterscripts, убираем все FS которые включены. Меняем gamemode, на new.
Качаем последнюю версию инклуда mxINI.
Открываем папку pawno, в папке с вашим сервером, папку include, и ложем инклуд mxINI, в эту папку.
Заходи в папку gamemodes, и удаляем все моды которые там есть ( для удобства ).
Заходим в папку pawno, и открываем программу pawno.exe.
Слева, в углу, нажимаем на кнопку new.
Пред вами то, что в ближайшее время, будет нашим модом.
Нажимаем F5, и нам предлагают выбрать папку, и имя будущего мода. Выбираем папку gamemodes, в папке с вашим сервером, и имя файла задаём new .
Пробуем запустить мод, зайдя в папку с сервером, и запустим файл samp-server.exe .
Если сервер запустился, мы всё сделали правильно, настройка сервера закончена.

Действие второе. Удаление лишнего из мода:

Открываем наш мод. Первое что бросается нам в глаза, это

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Вот это нам не нужно. Удаляем.
Находим паблик

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

И после него, вставляем

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

В самом начале мода, мы можем видеть такую строку.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Если подумать головой, то можно понять что это подгрузка инклудов в мод. После него добавим наш инклуд:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Нажимаем F5, и компилируем мод, если всё прошло без ошибок, значит вы всё сделали правильно.

Находим строку

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Эта строка, устанавливает название мода, которое будет видно в клиенте. Меняем его на своё.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Компилируем мод, и.. мы закончили с подготовкой мода. Теперь нас ждёт система регистрации.

 

Действие Третье. Сохранение аккаунта.

 

Переходим к созданию того, чем мы будет пользоваться постоянно. Это данные о аккаунте.

После строки с добавлением нашего инклуда, создаём масив, с информацией о игроке.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Теперь мы можем записать пароль, определённого игрока, чем мы сейчас и займёмся.

Опускаемся в самый конец мода, и создаём там, вот это:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Нажимаем F5, и мод компилируется. Если ошибок нет, то вы сделали всё правильно.
Теперь нам надо зайти в папку с сервером, открыть папку scriptfiles, и в ней добавить папку players.
Сохранение готово.

Действие Четвёртое. Создание регистрации и загрузки игрока.

Для создания регистрации, надо узнать, есть ли игрок с таким именем на сервере, для начала нужно после объявления нашего инклуда, вставить следующее:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Далее ищем паблик OnPlayerConnect. И в него добавляем:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Теперь ищем паблик, OnPlayerRequestClass, он покажет нам диалог с логином, или регистрацией, в него добавляем.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Диалоги мы показали, но теперь надо заставить его работать. Для этого нам надо сделать функцию загрузки и регистрации игрока.
Этим мы и займёмся. В конец мода, вставляем.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Функция которая зарегистрирует игрока, готова, теперь функция логина. В конец мода, добавляем.

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Функция регистрации есть, логина есть, осталось заставить их работать, для этого находим паблик OnDialogResponse и вставляем в него:

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

Конец первой части.
Полезные ссылки:

mxINI - 

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

 

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытый текст

  78,79К   Количество загрузок: 52

 

Автор урока: Vovan228 


Сообщение отредактировал Maks_Pilipenko: 05 Февраль 2016 - 17:01


#2
EgasVegas

3D моделлер


Репутация: 730

Хоть бы изменил что-нибудь.

А то взял с другого портала и просто вставил, думая что люди "+" закидают.

CTRL+C    CTRL+V



#3
SHOROOP

URM:RP Administrator.


Репутация: 607
Описание используемых функций где? Нету, есть только "вставьте сюда вот это"? Не урок. В " Готовые решения".

#4
dadadd

Гражданин


Репутация: 0

Maks_Pilipenko ,Куча варнингов 



#5
Даниил1231444

Гражданин


Репутация: 0

я не знаю как создать масив,подскажите пожалуйста и как вставлять после паблика



#6
k0st9_ez

Гражданин


Репутация: 1

Можете кинуть, уже готовый мод, то есть этот, со вставленным скриптом, а то у меня не получается, пишет постоянно какую то ошибку.



#7
SCRIPTMAN

Мотоскриптер


Репутация: 325

k0st9_ez ,ошибку в студию. 







Темы с аналогичным тегами Урок

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных