Привет от Бернулли

Копаясь в коде Былин случайно наткнулся на вычисления вероятности по формуле распределения Бернулли и восхитился этим. А покопавшись, выяснил, что так по научному называется обычное моделирование кидания кубика.

Ну вот допустим у нас есть кубик-процентовик, у которого сто граней от нуля до 99. И вероятность уворота у данного игрока, скажем 5 процентов. Мы кидаем кубик, если выпадает меньше пяти, мы увернулись, если больше, то нет. Читаем Википедию:

Распределе́ние Берну́лли в теории вероятностей и математической статистикедискретное распределение вероятностей, моделирующее случайный эксперимент произвольной природы, при заранее известной вероятности успеха или неудачи.

Случайная величина X имеет распределение Бернулли, если она принимает всего два значения: 1 и 0 с вероятностями p и q = 1 − p соответственно.

Дальше начинается сложный матан (на самом деле не матан, а теорвер), который заинтересует только Шелдона Купера.

Я кстати в институте не любил теорию верояностей и матстатистику и получил на экзамене по ним тройку (по пятибалльной шкале), одну из немногих за все время учебы. Остальные были четверки и пятерки.

История Былин

На форуме Былин Снежич (Ележор) выложил ссылку на исходники своего старого сайта по истории Былин (mudhistory.nm.ru). Сайт лежал на бесплатном хостинге и хостинг давно протух. Я временно выложил это у себя.

http://muds.kharkov.org/mudhistory/

Ответить на форуме не смог, у меня там прав нету, но проанонсировал выложенный сайт в Былинах на канале оффтопик. Заниматься обновлениями сайта не смогу, у меня мало свободного времени, да и не в теме я, разве что смогу выложить, если кто пришлет свою статью. Кстати, кроме истории там есть полезные статьи для начинающих билдеров

Код свежих Былин, собранный для 32-разрядной Винды

Современные Былины рассчитаны на 64-разрядные платформы, например 64-разрядную Ubuntu или 64-разрядный cygwin (то есть Windows). Но мне удалось собрать код Былин под 32-разрядную Винду 🙂

Вот оно http://mud.kharkov.org/files/zerkalo/zerkalo.win32.zip

Это мое Зеркало, то есть немного модифицированный код Былин, но оригинальные Былины собираются аналогично. Там два места – в первом пришлось заменить 64-разрядную хеш-функцию на 32-разрядную, а во втором поменять int на unsigned int модификации помечены комментарием prool for win32

Открытое письмо игрокам и билдерам мада Новое Зеркало

Версия 0.3. Последние изменения внесены 25 ноября 2020 г, 12:35 UKR

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

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

Адрес мада zerkalo.kharkov.org 4000

Игрокам я много говорить не буду: играйте, изучайте мир и так далее. Если вас кто-то будет обижать, жалуйтесь директору, то есть мне. Я имею ввиду неигровую обиду, например, ругань, которой в мире не должно быть. А если вас обижает сильный монстр, это часть игрового процесса.

А вот билдерам инструкция будет длинее:

Первое правило билдера – не навреди игре, поэтому если каких-то параметров вы не знаете, не меняйте их. Кроме того, нельзя создавать билдерской командой load много сильных шмоток (оружия и доспехов) и раздавать их друзьям или своим персонажам-игрокам. Нельзя увеличивать уровень и другие параметры игроков. И уменьшать нелья! И нельзя делать сильных мобы слабыми, чтобы упростить себе игру. Вообще, чужих зон, то есть не ваших, трогать нельзя. У каждого билдера есть свои номера зон, где он может слегка экспериментировать и билдить.

В коде Былин (а Новое Зеркало это кривое зекало Былин) есть многоуровневая система защиты и уровни разных богов, но мне лень и нет времени разбираться, поэтому если вы увидели, что вам доступны сильные опасные команды типа остановить сервер, не надо с ними играться. Все логи ведутся и злостные хулиганы будут отключены.

Теперь о хорошем. Каждый билдер должен иметь собственный локальный сервер, на котором можно играться, устраивать креши, абьюзы, перезагружать его, экспериментировать с триггерами. Это никак не повредит основному серверу мада, а на основном сервере вы потом сможете билдить аккуратно и осторожно, уже имея опыт.

Где взять собственный сервер: если у вас Виндовс, берите готовую локалку:

http://files.mud.kharkov.org/archive/proolzerkalo/zerkalo-windows/newzerkalo-03-jul-2020.zip

Локалка датирована 3 июля 2010 года. Кстати, из локалки при желании можно сделать свой полноценный мад-сервер, доступный и для других игроков.

Если у вас Линукс или Макбук или БК-0010, обращайтесь ко мне, я помогу сделать сервер. Мои контакты вот.

Теперь о триггерах. Если вы изучили команды red/oed/med и создали несколько комнат, монстров и предметов, это только начало пути. Язык скриптов, на котором пишутся квесты и всякое сложное поведение монстров и NPC не так прост. Я сам знаю его только чуть-чуть. Начните с внимательного изучения статьи

http://files.mud.kharkov.org/articles/triggers-article.html

Далее можно обращаться за справками в справочник по языку скриптов:

http://files.mud.kharkov.org/articles/DGSinfo05.pdf

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

Вот полезная статья: Что нам стоит мир построить

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

А если вы программист и хорошо знаете языки C/C++, то можете вместо скриптов написать “спецпроцедуру” для моба, объекта или комнаты. Я так делал в Виртустан маде, потому что мне проще что-то кодить на C, чем ковыряться в странном для меня скриптовом языке. Для программистов вот ссылка на репозиторий с исходниками Нового Зеркала (он является веткой кода Былин):

https://github.com/prool/mud

А вот ссылка на репозиторий с миром (в нем видно, что и когда менялось или добавлялось):

https://gitlab.com/prool/new-zerkalo-mud-world-utf

Имейте ввиду, что русские буквы в коде и в мире представлены в кодировке koi8-r (все файлы текстовые и их можно просматривать и редактировать текстовым редактором, например Notepad++, vim, mcedit, F4 в оболочке FAR Manager).
Но все изменения заработают только после перезагрузки мада, именно поэтому тренироваться и билдить лучше на своей локалке. Изменения в коде заработают после успешной перекомпиляции мада (и перезагрузки сервера).

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

Сборки мадов для Виндовс

Я сделал свежие сборки мадов для 64-разрядной Виндовс. Компилировал я в среде cygwin, это оказалось достаточно просто, все делается примерно как в Линуксе (то есть cmake с нужными параметрами, потом make, подробнее см. документацию в репозитории кода Былин).

Во-первых, сделал тестовую “локалку” с тремя зонами (движок для проверки зон) Былин (версия кода от 6 ноября 2019 года). Вот она. (Примерно то же самое, но немного более старое лежит на официальном сайте Былин).

А во-вторых, я сделал локалку Нового Зеркала (со всеми зонами). Вот.

Зачем можно использовать локалки: на них можно играть (это полноценный сервер), можно соло, можно с друзьями по сети. А можно использовать их для билдерства: тестировать зоны, изучать OLC и триггеры и т.п.

И снова Былины упали

А на сайте Былин молчание. Случай с Былинами говорит нам о важности PR. PR это не только реклама, PR это public relations, то есть любое общение с публикой. Даже примерно такой ответ “мы дятлы, мы потеряли бекап, поэтому восстановим августовский старый бекап, но единственный человек, которые это умеет, уехал на 3 дня в горы по грибы” лучше, чем никакого ответа.

Потому как мы все дятлы, мады это хобби и редко у какого мада настроен правильный ежесуточный бекап. Но публика (игроки) все-таки желает знать, что происходит. В моих мадах бекапа по графику пока нет, я его пока делаю вручную, когда приходит в голову забекапиться. Последний бекап Зеркала был вчера, Виртустана – очень давно.

UPDATE. 19.10.2017. Проблемы у Былин закончились, вот уже несколько дней они работают стабильно, ура

Новости МПМ Былины

Слухи таковы: никто закрывать Былины не собирается. У хостера, где крутились Былины, серьезная авария с энергопитанием, то есть не работает весь хостер. Команда Былин или подождет починки или если хостер здохнет, перенесет Былины на другого хостера. (Официальной инфы нет)