www.mudconnector.su https://forum.mudconnector.su/ |
|
О circle и перспективах его использования. https://forum.mudconnector.su/viewtopic.php?f=12&t=653 |
Страница 2 из 5 |
Автор: | Бодрич [ Вт май 08, 2012 7:22 am ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Цитата: #define IS_DARK(room) ((world[room]->gdark > world[room]->glight) || \ (!(world[room]->gdark < world[room]->glight) && \ !(world[room]->light+world[room]->fires) && \ !ROOM_AFFECTED(room, AFF_ROOM_LIGHT) && \ (ROOM_FLAGGED(room, ROOM_DARK) || \ (SECT(room) != SECT_INSIDE && \ SECT(room) != SECT_CITY && \ ( weather_info.sunlight == SUN_SET || \ (weather_info.sunlight == SUN_DARK && \ !IS_MOONLIGHT(room)) )) ) ) ) А можете показать, на какую конструкцию, вы бы заменили этот код ?:) Цитата: Он собирается и работает под 64бит ? Не знаю. Но кто мешает Вам проверить ?:) Цитата: lua Писать мад-движок на lua с нуля ?) Заменить dg_scripts на lua мысль очень хорошая, но писать на нем мад-движок, имхо чуть не то. |
Автор: | KadVar [ Вт май 08, 2012 7:10 pm ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Бодрич писал(а): А можете показать, на какую конструкцию, вы бы заменили этот код ?:) Часовой семинар по ООП и использованию функций обойдется вам в 30$. Книжку я вам по-моему выслал уже год назад, там всё сказано вроде бы... нет ? Вообще яб хотел видеть в самом худшем случае "if (room.isDark())"... Но никак не #define Бодрич писал(а): Цитата: Он собирается и работает под 64бит ? Не знаю. Но кто мешает Вам проверить ?:) А что-то про этот код вы знаете ? Советуя его использовать. Мой циркуль собрался после недельного допила. Однако выяснилось что там чудовищное количество труднообнаружимых багов. Увы, пришлось отказаться от 64 битности. В некоторых местах... люди думали что длина int и char будет одинаковой вовеки, а кое-где использованы magic numbers для определения места в памяти итд итп. Всё это приводит к чумовым багам. Причем редким и труднообнаружимым. Насколько это наследие самого циркуля, а насколько допила сказать трудно. Но уверен... в нём тоже есть. |
Автор: | Харч [ Вт май 08, 2012 9:12 pm ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Цитата: 1. Хотелось бы совета по движку. Существует ли какой нибудь структурированный и не запутанный? С вынесенными из кода системами заклинаний, умений, рас, профессий? Именно такой движок я и собираюсь в конце-концов написать. Цитата: Самописы, действительно хорошие и открытые - это адская редкость. В основном это демы или недоработанные пороекты, типа Шааль мада, так же у америкосов. И потом есть трудность, нет хорошего кодера, руссифицировать и доработать буржуйский движок, или же написать его с ноля. Да, мой мир недоработан и нуждается в полном переписывании всей составляющей, которая не является базой данных и загрузками мира. То есть надо переписывать все функции взаимодействия с игрока с миром. К сожалению, когда я начал писать данный мад, я был, мягко говоря намного более глуп чем сейчас. Но в данный момент я уже представляю, как должен выглядеть правильный код для мада. Этим летом я собираюсь попробовать его переписать. Не знаю, что выйдет P.S. не знал, что кто-то, кроме завсегдатаев этого форума и меня знает о моем маде. Цитата: Часовой семинар по ООП и использованию функций обойдется вам в 30$. +1 Бодрич, еще раз прошу, прочитайте пожалуйста про ООП в C++ и напишите парочку серьезных проектов, ну в каком смысле серьезных, рабочих хотя бы P.S. у меня есть неплохие (по-моему мнению конечно) проекты Landstalker, еще год назад бы я с удовольствием согласился кодить, и кодить много. Сейчас я просто не знаю, что будет. У меня сейчас слишком много дел. Курсовые работы, научная деятельность, статьи для лаборатории, диплом через 2 года писать, там может аспирантура будет. Слишком много дел, чтобы с уверенностью сказать, что будет время на кодинг. Но за лето я все-таки попробую переписать движок своего мада. Для внешних описаний, скорее всего, подключу Lua. Не буду писать свой скриптовый язык. P.S. О своих знаниях я хорошего мнения (сам я студент), но могу и ошибаться Так что полная неопределенность |
Автор: | KadVar [ Ср май 09, 2012 12:03 am ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
У вас, к слову сказать, какой планируется инструментарий ? Язык ? Платформа ? |
Автор: | Бодрич [ Ср май 09, 2012 7:51 am ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Цитата: Часовой семинар по ООП и использованию функций Но если, вы предлагаете весь код сделать состоящим из ООП, процедур, то игрок все равно ничего не заметит. Так зачем что-то менять, если и так работает. Ну и конечно кодер согласится кодить под такой движок. |
Автор: | Харч [ Ср май 09, 2012 11:15 am ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
KadVar писал(а): У вас, к слову сказать, какой планируется инструментарий ? Язык ? Платформа ? Язык - C++, платформа - изначально Unix-подобные системы, но, так как есть Cygwin, то и под Windows тоже будет. Клиент стандартный - telnet. Бодрич писал(а): Но если, вы предлагаете весь код сделать состоящим из ООП, процедур, то игрок все равно ничего не заметит. Так зачем что-то менять, если и так работает. Ну и конечно кодер согласится кодить под такой движок. Почти так я и собираюсь сделать. Игрок не заметит. Но заметит кодер. Он не сможет развивать мад дальше. Он просто запутается в нем... Если хотите, могу Вам предоставить код мада Шааль. Вы увидите, что такое отсутствие ООП. Ну и развивайте мад дальше Если получиться Лично я вижу, что этот путь тупиковый, необходимо вводить классы, процедуры, наследование. Могу даже подробно расписать почему. P.S. а так и хочется сказать: "Учите матчасть" Так что, лучше почитайте про ООП |
Автор: | KadVar [ Ср май 09, 2012 11:52 am ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Бодрич писал(а): Цитата: Часовой семинар по ООП и использованию функций Но если, вы предлагаете весь код сделать состоящим из ООП, процедур, то игрок все равно ничего не заметит. Так зачем что-то менять, если и так работает. Ну и конечно кодер согласится кодить под такой движок. Вы всё-таки не прочитали книжку, которую я вам выслал. Читайте. Но возможно вам надо Г.Буча. Но вряд ли. Объясню примерами "совсем для детей". После написания продукта работа только начинается. Требования к функционированию любого кода как правило меняются. Что-то доделывается. В результате, даже если этим занимаются очень квалифицированные люди мы имеем два момента: 1. Любые доделки в разы "дороже" по времени, чем если бы они были запланированы изначально. Таким образом при некоем объеме доделок ВЫГОДНЕЕ по времени написать с нуля, нежели доделывать имеющееся. 2. Любые доделки нарушают первоначальную архитектуру и "запутывают" код. В результате КАЖДАЯ следующая доделка сложнее предыдущей. В результате, к примеру, через 10 лет работы, любые исправления вдвое дороже чем были 10 лет назад. "Вдвое" - это результат ИДЕАЛЬНОЙ работы ИДЕАЛЬНОЙ команды. Я такой проект знаю. Я знаю много проектов. А такой знаю 1 (ОДИН). Обычный коэффициент через 10 лет доделок лежит в диапазоне 10-100. (от десяти до СТА). Это значит, что любые действия с кодом в СТО раз больше времени занимают, чем будучи сделаны при разработке. По моим оценкам все эти heavy modified circle рубеж в 100 уже очень давно перешагнули. С другой стороны, создание проекта с нуля существенно сложнее допила имеющегося. Но порой просто нет выбора. Именно поэтому я спрашивал у ТС-а, каков объем переделок. При минимальном, вероятно достаточно работать "с тем что есть". При среднем или большом это невыгодно. Никогда вы не доделаете... |
Автор: | KadVar [ Ср май 09, 2012 11:54 am ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Харч писал(а): KadVar писал(а): У вас, к слову сказать, какой планируется инструментарий ? Язык ? Платформа ? Язык - C++, платформа - изначально Unix-подобные системы, но, так как есть Cygwin, то и под Windows тоже будет. Клиент стандартный - telnet. На сегодня яб вплотную о C# подумал. Всё руки не доходят, но думаю mono вполне функционален. Там есть немало преимуществ. Скажем сериализация нормальная одна дорогого стоит. И многое другое тоже неплохо доделано. Он дороже на этапе выполнения, но дешевле на этапе разработки. Сомненье у меня только в том, как дебажить под линуксом, и насколько ущербен сам моно. |
Автор: | KadVar [ Ср май 09, 2012 12:03 pm ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
Спугнули мы ТС-а ЗЫ. ООП итп это не панацея. По-хорошему надо начинать распутывать клубки с другой стороны. Кстати не исключено, что имеет смысл для начала писать не код, а тесты |
Автор: | Харч [ Ср май 09, 2012 12:14 pm ] |
Заголовок сообщения: | Re: Ищу энтузиастов или помогите начать!) |
KadVar писал(а): На сегодня яб вплотную о C# подумал. Всё руки не доходят, но думаю mono вполне функционален. Там есть немало преимуществ. Скажем сериализация нормальная одна дорогого стоит. И многое другое тоже неплохо доделано. Он дороже на этапе выполнения, но дешевле на этапе разработки. Сомненье у меня только в том, как дебажить под линуксом, и насколько ущербен сам моно. Я тоже о нем подумываю, но пока я программирую очень хорошо именно в C++. Так же в C# я не программировал еще. Подозреваю, что он и обычный код C++ скомпилирует. Так что переложить на него проект будет довольно просто. mono - что за зверь? В последнее время я делаю так: я пишу логгер, передаю его движку, а в движке буквально на каждом шагу, где возможно ошибка, делаю проверки и посылаю в логгер ошибки. И дебажить не надо. Не знаю, может это и глупо очень, но я за время работы убедился в том, что этот подход намного удобнее, чем дебаг. А может я просто не умею пользоваться дебаггером KadVar писал(а): Спугнули мы ТС-а ЗЫ. ООП итп это не панацея. По-хорошему надо начинать распутывать клубки с другой стороны. Кстати не исключено, что имеет смысл для начала писать не код, а тесты Я извиняюсь, но по-моему я уже достаточно сведущ, чтобы писать ООП Думаю, что все-таки тут я не последую Вашему совету и буду писать код Так же я не понял что такое тесты А Бодричу, действительно, давно пора сесть и за месяц изучить ООП. P.S. Бодрич, чтобы мои рассуждения об ООП не выглядели голословно, могу показать свою библиотеку первой версии (школьной) и второй (написал на днях) (кстати, она может в принципе использоваться для написания мада с символьной графикой, разумеется, со своим клиентом). Она позволяет создавать динамичную картинку в консоли с наименьшей прорисовкой. |
Страница 2 из 5 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |