Игра "The Game"

04.06.21

Задачи пользователя - Игры

Движок RPG игры на языке 1С.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
Конфигурация "The Game"
.cf 13,56Mb ver:1.0.0.1
210
210 Скачать бесплатно
Первая версия обработки "The Game"
.epf 18,06Kb ver:1.0.0.1
36
36 Скачать бесплатно
Последняя версия обработки "The Game"
.epf 103,01Kb ver:1.0.0.1
129
129 Скачать бесплатно

Вдохновившись недавней публикацией игры ""King's Bounty", я решил тоже рискнуть и выложить свои наработки в области гейм дизайна в среде 1С.

Игра представляет собой намёк на РПГ, с кастомизацией персонажа, распределением очков, свободой действий, открытым миром, взаимодействием с НПС.

 

Основная причина того, что это конфигурация, а не обработка - расширенные возможности в хранении данных.

 

По пунктам.

1. Кастомизация персонажа

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

2. Свобода действий

Есть возможность исследовать мир.

3. Открытый мир

Мир представлен в виде большого острова, который генерируется методом фрактальной генерации ландшафтов. Каждая клетка мира является отдельной локацией. Присутствует бесшовная подгрузка локаций фоновыми заданиями.

4. Взаимодействие с НПС

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

5. Сюжет

Изначально есть 5 настроек сюжета, каждая из которых определяет начальный текст игры.

 

Изначальная задумка состояла в том, можно ли на 1С сделать какую-нибудь игру.

В качестве игры была выбрана "Чепуха", как наиболее простая в реализации. После пришла идея генерации рассказа на основе действий персонажа (примерно как в RimWorld'е). Сперва всё это реализовывалось посредством обработки, постепенно наращивались возможности, прикручивались фишки типа глобальной карты, в которой были маленькие локальные карты. Хранилось всё в структурах, работало медленно, особенно первоначальная генерация карты. Перешел на конфигурацию после того, как не смог реализовать крафт вещей. 

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

Основные фишки, которые я смог реализовать в конфигурации:

1. Фрактальная генерация ландшафта. Ссылка

Используется для генерации мира.

2. Алгоритм А* Ссылка

Используется для прокладки дорог между городами и деревнями.

3. Бесшовная подгрузка локаций.

Реализована посредством фоновых заданий, когда игрок перемещается в новую локацию. При этом происходит загрузка 4 соседних локаций.

4. Динамическая смена дня и ночи.

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

 

Помимо прочего, в конфигурации реализованы:

  • Тетрис
  • Игра "Жизнь"
  • Крестики-нолики (сетевые)

 

Режим совместимости выставлен на 8.3.16, но я её разрабатывал на 8.3.9, так что думаю и на ней пойдет.

 

UPD. Обнаружил некорректное заполнение первоначальных данных.

В новой версии регулируется константой "Начальное заполнение прошло". Если Ложь, то выполняется начальное заполнение базы. 

В старой версии регулируется константой "Начальное заполнение". Если Истина, то выполняется начальное заполнение базы. 

Конфигурация Игра

См. также

Игры Платформа 1С v8.3 Бесплатно (free)

Знакомы с серией игр Football Manager? Вся суть подобных симуляторов состоит в том, чтобы путем грамотного управления и контроля за спортивным, инфраструктурным и финансовым учетом привести свой футбольный клуб к успехам. Это ли не задача для платформы 1С - помочь в контроле учета предприятия (читай футбольного клуба)?

10.01.2025    3656    86    KamranV21    4    

32

Игры Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Бесплатно (free)

Вариация классической игры Линес в честь года змеи 2025 на шестиугольном поле, с препятствиями, для сборки змейки из 7 шаров.

29.12.2024    546    30    miniogn    0    

6

Игры Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Я Федор, ведущий разработчик 1С. На хакатоне компании команда под моим руководством перенесла игру «Герои меча и магии III» на платформу 1С. Расскажу, как устроена конфигурация «1С: Герои меча и магии» с технической точки зрения.

10.10.2024    49882    PROSTO-1C    55    

166

Игры Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия 1С:Бухгалтерия 3.0 Россия Бесплатно (free)

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

29.07.2024    1386    82    user1693438    3    

8

Игры Платформа 1С v8.3 1C:Бухгалтерия Россия Бесплатно (free)

Простейшие крестики-нолики с маленьким полем.

24.07.2024    1400    99    user2015123    0    

7

Игры Платформа 1С v8.3 1C:Бухгалтерия 1С:Бухгалтерия 3.0 Бесплатно (free)

Классическая игра пасьянс Паук, на платформе 1С.

15.04.2024    2035    99    user1693438    3    

18

Игры Пользователь Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Бесплатно (free)

Игра "Змейка" в классическом варианте на управляемых формах в 1С. Собирайте яблоки и ставьте рекорд!

09.02.2024    5211    309    emilyabochkova    15    

31

Игры Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Создавайте новые ключворды или разгадывайте существующие.

1 стартмани

05.02.2024    2403    1    alexpvs    0    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. moiseeves 200 04.06.21 17:28 Сейчас в теме
Не понял, как делать бесплатные файлы.
Прикрепленные файлы:
161209_Tale.epf
170316_TheGame.epf
shard; vulli; by_1Cnik; +3 Ответить
2. alexey_kurdyukov 168 05.06.21 04:10 Сейчас в теме
Нужно поработать над графикой!
15. chg 09.06.21 06:52 Сейчас в теме
(2)сделать Unreal на 1С?
EugeneSemyonov; +1 Ответить
16. alexey_kurdyukov 168 09.06.21 06:53 Сейчас в теме
(15) Ну изометрию-то например можно попробовать запилить
3. пользователь 05.06.21 18:55
Сообщение было скрыто модератором.
...
4. пользователь 07.06.21 01:14
Сообщение было скрыто модератором.
...
5. FatPanzer 07.06.21 08:56 Сейчас в теме
А слабо написать бухучет на AutoLISP`е???
6. Parsec1C 96 07.06.21 09:41 Сейчас в теме
Прикольная идея! Красава!
7. Nubsdale 07.06.21 09:49 Сейчас в теме
8. BackinSoda 07.06.21 23:15 Сейчас в теме
Скачал конфиг, не смог поиграть :( большинство пунктов вываливается на
ХранилищеОбщихНастроек.Загрузить("...").Получить();
9. moiseeves 200 08.06.21 07:13 Сейчас в теме
(8)
ХранилищеОбщихНастроек.Загрузить

Хм. База файловая? Возможно не отработали фоновые задания по первоначальному наполнению БД.
Можно попробовать выполнить процедуру наполнения
ОбщийМодульСервер.ПервоначальныйЗапускСистемы()
BackinSoda; +1 Ответить
10. Albert_2008 08.06.21 09:28 Сейчас в теме
Спасибо. Будем смотреть. Волшебное слово ШАРА)
11. Albert_2008 08.06.21 09:39 Сейчас в теме
Работает в файловой версии. Спасибо)
12. moiseeves 200 08.06.21 10:14 Сейчас в теме
(11) Да, был косяк в константе. Она работала наоборот.
13. sinichenko_alex 212 08.06.21 10:29 Сейчас в теме
Довольно необычно. Поставлю плюс! По идее можно и WEB-версию организовать без труда.
14. SeiOkami 3538 08.06.21 14:26 Сейчас в теме
Крутилась в голове идея сделать нечто подобное.
Но так и не взялся за это гиблое дело.
Респект за труды ! 👍👏💪
serverstar; php5; +2 Ответить
17. anchar007 10.06.21 09:13 Сейчас в теме
В игре можно платёжку создать, чтобы оплатить новый меч для перса?
vlrkpz; serverstar; +2 Ответить
18. moiseeves 200 10.06.21 09:50 Сейчас в теме
(17) Оружие может выпасть в бою из соперника, как лут или можно сторговаться с жителем деревни или города.
Была у меня идея сделать магазины, но руки не добрались.
19. serverstar 69 10.06.21 15:06 Сейчас в теме
Плюс за интересную идею )
20. Dempingator 162 10.06.21 15:51 Сейчас в теме
Я в шоке, и так толком бухи не работают (косынку мусолят), вы еще им это НА!
ГеймДев тут явно лишен ) ?!
21. user1129453 11.06.21 06:49 Сейчас в теме
22. mafioznic 15.07.21 14:40 Сейчас в теме
Вопрос, а как использовать инструменты?
23. moiseeves 200 15.07.21 15:27 Сейчас в теме
(22) Первоначально хотел сделать рубку деревьев, и крафт с помощью инструментов. А потом забросил.
В планах было реализовать еще голод.
Вообще можно добавить, например, молоты в рецепты крафта оружия.
24. mafioznic 16.07.21 10:18 Сейчас в теме
Поиграл минут 5 хотел сохраниться, по получил ошибку

Ошибка отображения типов:
Отсутствует отображение для типа 'РисунокТабличногоДокумента'
{ОбщаяФорма.TheGame.Форма(2192)}: СохранитьИгруНаСервере();

по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'v':
форма: Элемент
имя: {http://v8.1c.ru/8.2/uobjects}v
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'Value':
форма: Элемент
имя: {http://v8.1c.ru/8.1/data/core}Value
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа 'РисунокТабличногоДокумента'

Не могу понять как решить эту проблему
25. Xershi 1564 07.06.23 12:55 Сейчас в теме
(24) толстый клиент или переписать код.
26. Xershi 1564 07.06.23 18:40 Сейчас в теме
(0)
(24) Поправил ошибки. Автор надеюсь не против.
Исправил сохранение. Сейчас тип "ДанныеФормыКоллекция" нужно выгрузить в ТЗ, а затем загрузить, на автомате оно не работает. И получалась ошибка.
Текст сделал с обратным выводом, когда его много листать не нужно.
Добавил генерацию золота НПЦ от 1000 до 10000, фиксированное значение в 100 очень мало.
Заметил дикий рост цен на экипировку. Для чего это не понятно.
Нет регенерации, есть пару предметов на лечение, но где их брать?
Исправил ошибки, взятия предмета и нападения. Не очищались переменные, что вызывало сбой.
Закоментил код, который добавлял 10 хп при входе в инвентарь. Чтобы хоть как-то продержаться.
Добавил в магазин вывод атаки, защиты и лечения. Не понятно вообще как было что купить.
Прикрепленные файлы:
TheGame_1_0_0_2.cf
moiseeves; +1 Ответить
27. moiseeves 200 08.06.23 07:19 Сейчас в теме
(26) Спасибо. Я за свободное ПО, поэтому рад видеть, что кого-то заинтересовала эта разработка и она каким-то образом развивается.

По поводу цен:
Я сделал своеобразную экономику, когда чем более редкий предмет - тем более он ценен. Цены устанавливаются следующим образом: при открытии нового фрагмента карты, на нем генерируются новые вещи. Далее мы собираем список этих предметов, сортируем по количеству, определяем коэффициенты стоимости и всё это записывается в регистр "КурсЦенНаВещи". Процедура "ОбщийМодульСервер.УстановитьЦены".

По поводу регенерации:
Есть возможность сделать свой рецепт крафта, тогда можно будет создавать аптечки. Я пытался сделать игру, в которой можно добавлять свой контент. Новые предметы (не предопределенные) я не пробовал добавлять, но думаю, что это вполне реально.
Оставьте свое сообщение