LINUX.ORG.RU

История изменений

Исправление torvn77, (текущая версия) :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.
Так же в виде DLC можно выкладывать и улучшенные варианты интелекта для типовых неписей.

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

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

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

И ещё важный момент, игра должна запускаться двумя способами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.
Так же в виде DLC можно выкладывать и улучшенные варианты интелекта для типовых неписей.

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

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

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

И ещё важный момент, игра должна запускаться двумя способами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.
Так же в виде DLC можно выкладывать и улучшенные варианты интелекта для типовых неписей.

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

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

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

И ещё важный момент, игра должна запускаться двумя способами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.
Так же в виде DLC можно выкладывать и улучшенные варианты интелекта для типовых неписей.

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

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

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

И ещё важный момент, игра должна запускаться двумя способами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.
Так же в виде DLC можно выкладывать и улучшенные варианты интелекта для типовых неписей.

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

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

И ещё важный момент, игра должна запускаться двумя способами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.
Так же в виде DLC можно выкладывать и улучшенные варианты интелекта для типовых неписей.

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

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

И ещё важный момент, игра должна запускаться двумя способами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.

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

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

И ещё важный момент, игра должна запускаться двумя сособами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер (даже для одиночных) на котором работают игровые скрипты world_script_engine_name.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.

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

Впрочем авторам игр потребуется конструктор на подобие того, что Беседка сделала для своего Моровинда и естественно тоже продавать его за плату.

И ещё важный момент, игра должна запускаться двумя сособами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исправление torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровой сервер(даже для одиночных) на котором работают игровые скриптыscript_engine_name`.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.

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

Впрочем авторам игр потребуется конструктор на подобие того, что Беседка сделала для своего Моровинда и естественно тоже продавать его за плату.

И ещё важный момент, игра должна запускаться двумя сособами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)

Исходная версия torvn77, :

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

Зачем всё это?

Ты выкладываешь в Стиме ресурсы своей игры(потому что она и так твоя) бесплатно, но в технических требованиях пишешь, что игра для своей работы требует графический движок render_engine__name и игровыой сервер(даже для одиночных) на котором работают игровые скриптыscript_engine_name`.

Так вот, этот свой разделённый на две части движок в Стиме ты выкладываешь уже платным и в виде платных DLC выкладываешь улучшенные версии шейдеров.
Вообще ВСЕ шейдеры у тебя должны быть в двух вариантах, стандартный упрощённый в комплекте движка и его улучшенный вариант в виде DLC.

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

Впрочем авторам игр потребуется конструктор на подобие того, что Беседка сделала для своего Моровинда и естественно тоже продавать его за плату.

И ещё важный момент, игра должна запускаться двумя сособами:
Первый способ через скрипт лежащий в корневой директории ресурсов игры буквально вот такого вида:

#!/usr/bin/env bash
# License GPLv3

thisdir=$(dirname `readlink -f "$0"`)
cd "$thisdir"
# Переменная thisdir не должна быть пустой, если пустая то сообщаем о ошибке пользователю и выходим из скрипта.
if [ "x$thisdir" -eq "x" ]; then exit; fi;

# Очистка временных файлов, её надо выполнять перед запуском и после окончания игры.
if   [ ! -e "/tmp/$Game_Name" ]; 
	then 
		mkdir -p --mode=775 "/tmp/$Game_Name";
elif [ -e "/tmp/$Game_Name" ];
	then
		rm -fr "/tmp/$Game_Name";
		mkdir -p --mode=775 "/tmp/$Game_Name";
else
	echo "/tmp/$Game_Name acess or file type error, script exit"
	exit;
fi;

# Проверка наличия движка в каталоге приложений стима и его запуск
# Вообще в Стиме может быть несколько директорий с приложениями инаходящимися в разных местах и 
# тебе надо предусмотреть случай когда ресурсы и движок находятся в разных директориях, 
# может вывести окно для его ручного поиска(с запоминанием пути естественно)
if   [ -x "$thisdir/../$Game_Engine_Name/Launcher.sh"];
	then
		exec "$thisdir/../$Game_Engine_Name/Launcher.sh" --resurce_directory "$thisdir";
else
	echo "Launcher $Game_Engine_Name not found, please go to $Game_Engine_Name Steam Pages, script exit"
    # В общем виде проверь разные типы ошибок, в насности отсутствие прав на запуск и уведоми о них пользователя.	
    exit;
fi;

# Завершение работы
# Тут должен быть код очистки временных файлов, но я его удалил для краткости.
exit;

Второй способ это через таблицу в лаунчере для запуска движка.
(твой движок должен запускаться не напрямую, а через лаунчер в котором будет таблица из названия игр и пути к папке в которой лежит игра)