Перейти к публикации
Форум - ComputerCraft
RccHD

network Сильно улучшенная версия ender-net

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

Раннее я уже делал обзор того, как можно пересылать данные по сундуку из EnderStorage
Получилось неплохо: 12 байт в секунду
Но в какой-то момент стало понятно, что 12 байт в секунду - это очень маленькая скорость передачи, поэтому я решил попробовать увеличить это значение

И у меня получилось! Теперь ender-net передает данные в 42666 раз быстрее(на самом деле можно увеличить скорость передачи до космических значений, можно сделать в 42666*27 раз быстрее, но мне лень). Неплохая прибавка к скорости, я считаю!

Я бы уже давно реализовал систему именно с такой скоростью передачи данных, если бы я мог видеть очевидные вещи сразу.
А очевидная вещь вот какая: зачем кодировать данные стаками блоков если есть ДИСКЕТЫ!!! Это настолько очевидно! Дискеты вмещают 512КБ данных, поэтому я решил использовать их для отправки сообщений.

В обновленной версии ender-net теперь понадобится дисковод для считывания данных

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

9cN17xy.png





Вот так выглядят компы, подключенные к одной сети

1DRyiA3.png


 

*ДЕМКА*

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

Я написал демо-скрипт test-ender-net.lua, который осуществляет пересылку сообщений между участниками сети.

Пусть у нас есть 3 компа:

1DRyiA3.png



Запустим на одном из них скрипт test-ender-net.lua
rpDwfix.png

Сеть определила адрес КОМПА -- 4

Теперь пойдем к другим двум компам и на каждом запустим этот же  скрипт.
Для двух других компов выбраны адреса 6 и 8

Пойдем к компу 4 и напишем с этого компа сообщение на комп 8
EOGc2Lp.png

 

Потом пойдем к компу 6 и тоже что-нибудь напишем компу под номером 8 (пикчи нет)

Теперь пойдем к компу номер 8 и ответим компу номер 6 "хватит спамить!"

je9bz8g.png

 

Если подойти к компу номер 6, будет видно что пришло сообщение
owoAVPE.png

 

Получилось что-то вроде чатика.

 

Вот в общем-то и все. Если кого-то заинтересовала эта тема, то я могу постараться допилить библиотеку ender-net чтобы не было никаких багов в работе сети.


Чтобы поближе посмотреть, как работает ender-net через дискеты, скачайте мое сохранение с компами и потестите. (Я там пару подсказок оставил на экранах мониторов). Нужно распокавать архив и положить папку "comp" в папку с сохранениями игры
Ссылка
https://www.dropbox.com/s/0h1kc0dhc6vew78/comp.zip?dl=0

Ссылки на библиотеки и другие скрипты не буду выкладывать, пока не доработаю ender-net



ИТОГИ

Главное отличие ender-net от сети на связанных картах: возможность соединить в одну сеть более чем 2 компа.
Преимущества: почти не тратит энергию, очень быстрая скорость передачи данных.
Недостатки: возможны баги
Забавная особенность: при частом обмене сообщениями дисковод издает просто дьявольские звуки, транспозер пищит, а комп мигает! :)

 

Изменено пользователем RccHD
  • Like 6

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


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

Можно еще реализовать передачу данных через кассеты из computronics и достичь невероятную скорость передачи (больше чем у меня в реальности).

  • Like 1

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


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

это очень маленькая скорость передачи, поэтому я решил попробовать увеличить это значение

3_41450.jpg

Остановись бес, нам еще жить хочется. Пожалей сервера  :smile3:

  • Like 2

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


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

Го так с жесткими дисками :D

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


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

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

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


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

@@RccHD, транспозер и подобные механизмы не могут взаимодействовать с системником? 

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


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

@@RccHD, транспозер и подобные механизмы не могут взаимодействовать с системником? 

Если подключать транспозер к системнику, то придется освобождать слот для диска и как-то следить за тем, чтобы транспозер не начал использовать для работы в сети наш основной диск с ОС

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


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

Без задней мысли. Берем и следим.6 или 7 слот, на выбор.

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

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

  • Like 1

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


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

 

 

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

Имеешь в виду две карты в каждом компьютере, которые ссылаются на соответственно следующий и предыдущий компьютеры в цепочке? Примерно вот так? 

... [2|1] = [1|0] = [0|n] ...

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


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

... [2|1] = [1|0] = [0|n] ...

pict_5_18.PNG

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


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

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

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


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

при кольце, если вылетит 1 комп, вся сетка упадёт

  • Like 3

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


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

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×