Перейти к содержимому
Doob

Виртуальная свалка предметов (альтернатива АЕ)

Рекомендуемые сообщения

%PLAYERNAME% имеет %ITEMNAME%, в кoличетcве n, у негo зaбиты cундуки вcяким хлaмoм, ендерчеcт вooбще трещит пo-швaм. Мoжнo иcпoльзoвaть виртуaльные хрaнилищa AE, нo caм мoд cлишкoм лaгучий и c дoлгим рaзвитием.

 

Мoя идея cocтoит в тoм, чтoбы cделaть aльтернaтиву AE в OpenComputers, чтoбы oблегчить жизнь игрoкaм и cерверу.

 

Любoй игрoк, имеющий кoмпьютер c WiFi кaртoй, мoжет coздaть личнoе виртуaльнoе хрaнилище cкaчaв прoгрaмму и зaрегиcтрирoвaв cебя в cиcтеме.

 

Функции cерверa:

  • Перенoc предметoв из инвентaря в личнoе/oбщеcтвеннoе виртуaльнoе хрaнилище (ВХ).
  • Мaтериaлизaция предметoв из ВХ.
  • Мaтериaлизaция предметoв, кoтoрых нет в ВХ, нo для кoтoрых еcть рецепт и реcурcы в ВХ игрoкa.
  • Перевoд предметoв из cвoегo ВХ в oбщеcтвеннoе/перевoд в ВХ другoгo игрoкa.
  • Сoздaние oбщеcтвеннoгo хрaнилищa c дocтупoм пo пaрoлю.
  • Сoздaние oбменнoй cделки (кaк в тoргoвых aвтoмaтaх IC)
  • Уничтoжение предметa в ВХ
Функции клиентa:
  • Сoбcтвеннo, интерфейc к функциям cерверa.
Вoзле cерверa cтoят терминaлы, чтoбы игрoки caми зaбивaли рецепты - игрoк кидaет предметы в вoрoнку, нa мoнитoре в виртуaльнoм oкне крaфтa зaбивaет рецепт, рoбoт рacклaдывaет рецепт и прoбует cкрaфтить, еcли true, тo рецепт coхрaняетcя нa cервере.

 

Тaк же, мoжнo cделaть aдминcкoе беcпaрoльнoе виртуaльнoе хрaнилище c беcкoнечными дешевыми вoзoбнoвляемыми реcурcaми (деревo/кaктуc/aрбузы/трocтник), тoгдa игрoкaм не нaдo будет делaть лaгo-фермы, oни будут зaнимaтьcя чем-тo бoлее oтвлеченным.

 

Мoжнo oгрaничить время жизни хрaнилищa (хaлявных cундукoв не бывaет), чтoбы дaвнo не игрaвшие игрoки удaлялиcь из БД, a чтoбы прoдлевaть жизнь хрaнилищa, неoбхoдимo в нем cжигaть oпределенные предметы (невoзoбнoвляемые реcурcы)

Изменено пользователем Doob

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

То есть, ты хочешь сделать базу данных вещей, при попытке забрать вещь из БД при помощи дебаг карты эта вещь вставляется в инвентарь игрока и удаляется из БД?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

То есть, ты хочешь сделать базу данных вещей, при попытке забрать вещь из БД при помощи дебаг карты эта вещь вставляется в инвентарь игрока и удаляется из БД?

Так точно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Админское хранилище. Прикольно, но как по мне -- пустая болтовня. Покажите нам код!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Админское хранилище. Прикольно, но как по мне -- пустая болтовня. Покажите нам код!

Так это просто-напросто идея. Кто-нибудь может написать, если нужно будет. А в "разработке" потому, что кто-то решил избавиться от раздела "Новые идеи".

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Админское хранилище. Прикольно, но как по мне -- пустая болтовня. Покажите нам код!

 

Код был, когда я сидел на ComputerCraft, там я делал сохранение блоков в scoreboard игрока, была жуткая конвертация таблиц, на выходе получалась каша, но зато работало. Идея была в том, что мир можно стереть, а игроков со своими ресурсами оставить (на самом деле не ресурсами, а постройками).

 

Вся проблема в том, что мне лень рисовать удобный интерфейс и переводить RSA на Lua.

Изменено пользователем Doob

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Удобный интерфейс нарисовать дело нескольких часов. Есть множество хороших, библиотек для создания гуи. И я думаю скорборды лишние, можно обойтись и базами данных, например ExDB от сябра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Удобный интерфейс нарисовать дело нескольких часов. Есть множество хороших, библиотек для создания гуи. И я думаю скорборды лишние, можно обойтись и базами данных, например ExDB от сябра.

 

БД удобней хранить в CSV - оптимально и универсально. А вот до GUI библиотек у меня руки не доходят. GML, к примеру хорош, но очень тяжел. На ComputerCraft куча удобных, со всеми современными фичами и довольно легковесных, а на OpenComputers я таких не находил. Надобно затачивать либу под определенные задачи, чтобы не плодить сущности.

Изменено пользователем Doob

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

 

Любой игрок, имеющий компьютер с WiFi картой, может создать личное виртуальное хранилище скачав программу и зарегистрировав себя в системе.
А как планируется идентифицировать  игрока в системе? Я понимаю, логин-пароль. Но где гарантия, что я не зарегистрирую пользователя с именем Doob и не отправлю весь его инвентарь в фонд помощи начинающим хакерам? Можно, конечно обрабатывать события "touch" и "key_down" и определять кто именно за монитором, но если это будет мой компьютер, а не общественный терминал, то он обработает эти события как мне нужно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

бла-бла6-бла

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А как планируется идентифицировать  игрока в системе? Я понимаю, логин-пароль. Но где гарантия, что я не зарегистрирую пользователя с именем Doob и не отправлю весь его инвентарь в фонд помощи начинающим хакерам? Можно, конечно обрабатывать события "touch" и "key_down" и определять кто именно за монитором, но если это будет мой компьютер, а не общественный терминал, то он обработает эти события как мне нужно.

 

Симметричное шифрование решает все проблемы. Как одолею лень - переведу RSA на Lua, ибо рабочих библиотек не видел.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Шифрование само по себе не решает проблемы идентификации. Как вариант: регистрация пользователя производится со специализированного терминала, а остальная работа - с произвольного компьютера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А как планируется идентифицировать  игрока в системе? Я понимаю, логин-пароль. Но где гарантия, что я не зарегистрирую пользователя с именем Doob и не отправлю весь его инвентарь в фонд помощи начинающим хакерам? Можно, конечно обрабатывать события "touch" и "key_down" и определять кто именно за монитором, но если это будет мой компьютер, а не общественный терминал, то он обработает эти события как мне нужно.

Да просто регистрация будет только в банке, например, в индивидуальной кабинке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Взялся за это,сейчас делаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Шифрование само по себе не решает проблемы идентификации. Как вариант: регистрация пользователя производится со специализированного терминала, а остальная работа - с произвольного компьютера.

 

Это да, если сопрут устройство с которого осуществляется доступ, то все средства тоже сопрут. Можно использовать генерацию ключей по паролю - игрок задает сид своим паролем и из него генерируется ключевая пара. В итоге ключи существуют только во время связи с сервером.

А для регистрации, игроку нужно будет только стоять возле основного сервера на сенсоре движения (в кабинке, как предложил SergOmarov) и вбить в регистрационную форму свой ключ - публичный ключ уходит на сервер, с сенсора отправляется имя. А потом уже доступ только по ключу, из любой точки карты, где есть связь с сервером.

Изменено пользователем Doob

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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


И еще: когда будешь отцифровывать предметы, не забудь про нтб, метадату и прочие мелочи...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Оцифрирователь готов,теперь думаю,как обратно возвращать,будет сразу с чем-то типа OreDictionry

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Правда делаю я "Ячейку в банке".

 

Писать код продолжать буду завтра, а то часов 6 уже делаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...