The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Коммерческий софт"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [Проследить за развитием треда]

"Коммерческий софт"  
Сообщение от Seyonn email(ok) on 07-Апр-07, 19:47 
Я долго пользовался поиском по форуму, и нашел немало сведений к нему относящихся. Но четкого ясного ответа так и не обнаружил. Поэтому все же задаю, и если вы знаете, где конкретно обсуждался именно этот топик, пожалуйста напишите. Это важно.

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

//-------------

Причина: мы пишем онлайновую игру, в стиле MMORPG. Необходимо чтобы закрытым был как сам проект (чтобы никто не создал "нелегального" сервера, чем испортил нам бизнес), ни его внутренняя структура (для безопасности, защиты от "обмана" игры, а так же от копирования далеких от чистого кодирования вещей - внутренней логики, метаструктуры, которая в отличие от своей реализации представляет большую ценность).

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

Пока что мы решаем это разными интересными способами типа метаязыка отображающегося на Си, так чтобы получалась абсолютно платформонезависимая вещь. Пока что на Windows и Linux код работает одинаково хорошо. Но гораздо спокойней было бы писать под Линукс, зная что ты создаешь гарантированно СВОЮ вещь, за которую никто не прицепится к тебе с лицензиями и прочей фигней.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Коммерческий софт"  
Сообщение от Anonymous on 07-Апр-07, 23:15 
>Я долго пользовался поиском по форуму, и нашел немало сведений к нему
>относящихся. Но четкого ясного ответа так и не обнаружил. Поэтому все
>же задаю, и если вы знаете, где конкретно обсуждался именно этот
>топик, пожалуйста напишите. Это важно.
>
>Вопрос звучит так.
>Какие конкретно требвания мне нужно соблюсти при написании программы, чтобы не открывать
>ее исходный код. Ни под какими предлогами и никому.
Не использовать в своих наработках код лицензия которого запрещает закрытие исходников.Со _своим_ кодом вы как автор вольны делать что хотите.

Возможные тонкости: динамическая линковка с библиотеками и подобное.Например есть мнение что модули ядра не могут быть с закрытыми сорцами, т.к. заменяют или расширяют GPLный код ядра.Аналогично с библиотеками.Если библиотека не под LGPL а под GPL, динамическая линковка закрытых программ с ней невозможна.Самый известный из примеров - Trolltech`евская Qt.Они ее раздают под GPL а не типичной для библиотек LGPL (которая в отличие от GPL разрешает линковку библиотеки и с коммерческими программами), по этому де факто Qt бесплатна только для тех кто выпускает программы пол GPL.А чтобы пользоваться Qt не давая исходников - покупается коммерческая лицензия у Trolltech. Если вы не используете подобных библиотек, никаких особых проблем в общем то нет.

> (чтобы никто не создал "нелегального" сервера, чем испортил нам бизнес)
Обычно те кто создали сервер первыми имеют крупный плюс: число пользователей на нем.Те кто запускает новый сервер сталкивается с проблемой снежного кома: пустой сервер никому неинтересен.Кроме того, если скажем, ВАШ игровой сервер жестко hardcoded в программе (например забит список ваших айпи и прога ходит только туда и это не настраивается через конфиги и тем более GUI), 95% леммингов (особенно буржуев) будут испытывать затруднения с сменой сервера на что-то другое и предпочтут заплатить несколько зеленых тугриков в месяц чем возиться с малопонятными сущностями.

А больше всего проблем у желающих спереть идею обычно с реализацией логики сервера аналогичной оригиналу.Протокол - изучат, клиента - расковыряют дизассемблером и даже если вы VM используете, ну неужели вы всерьез думаете что хакеры все поголовно тупее вас?Закрытость сорцев вас не спасет.А вот сервер для изучения недругами недоступен и является для всех кроме вас "черным ящиком" что можно очень неслабо использовать.Поэтому если грамотно реализовать на нем рассчет сложных алгоритмов и хитрой логики - клоны сервака будут очень длительное время просто кривыми поделками страдающими кучей глюков, неточно реализующими свойства объектов, etc что будет очень напрягать игроков.Что до читеров, т.к. если ваша гамеза вдруг окажется дельной и популярной - клиент расковыряют и обманут к такой-то фене любые защиты.Поэтому не допускать откровенного читерства должен сервер, например не доверяя клиенту сильно много критичных рассчетов.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Коммерческий софт"  
Сообщение от Seyonn email(ok) on 07-Апр-07, 23:29 

>Не использовать в своих наработках код лицензия которого запрещает закрытие исходников.Со _своим_
>кодом вы как автор вольны делать что хотите.
>
>Возможные тонкости: динамическая линковка с библиотеками и подобное.Например есть мнение что модули
>ядра не могут быть с закрытыми сорцами, т.к. заменяют или расширяют
>GPLный код ядра.Аналогично с библиотеками

Ну, прочитав GPL я убоялся следующего. Допустим код собран на Си (чистом, или С++), и компилируется с помощью gcc (скажем, v4). Когда я пишу #include <stdio.h> это означает что я подулючаю библиотеку, так? А библиотека является частью либо компилятора, либо ядра, либо и того и того вместе... А если они (компилятор, ядро) написаны под GPL, получается что я должен открывать исходники всего что использует stdio? Надеюсь, что это не так.

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

Ога. Аднако если в соответствие с лицензией нас заставят открыть исходный код сервера... Логика может быть такая: игра есть технология, т.е. единая система. И пользователь, играя в игру, пользуется ВСЕЙ ТЕХНОЛОГИЕЙ - как клиентской частью, так и опосредованно - серверной. Следовательно, нужно открывать код не только клиента, но и сервера. А расковырять код "хитрого алгоритма" имея его исходник - это недоступно только что ленивому. Искусство писать код так, чтобы его никто не понял - это приятно надосуге, но никак не при разработке чего-нибудь важного.

Клиентам кстати и так ничего критичного не отдается. Предполагается что их будет много и разных. Как например сейчас творится с Линейкой (да, это тоже с натяжкой до небес можно назвать игрой, и даже мморпг =).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру