Totoro
Гуру-
Публикации
1 950 -
Зарегистрирован
-
Посещение
-
Победитель дней
289
Тип публикации
Блоги
Профили
Форум
Багтрекер
Магазин
Все публикации пользователя Totoro
-
Мне кажется многовато. Периодически собираемые команды "воскрешения OpenNet" это забавная часть нашей истории.
-
Видимо это подполное анонимное тайное сообщество возрождателей OpenNET. Мы их не видим и не слышим, но они где-то там. Ждут своего часа. А ProShow - их пресс-секретарь. Он ведёт свою работу по подготовке общественности.
-
OPENNET! OPENNET! OPENNET! OPENNET! OPENNET! OPENNET!
-
Окей :P А ещё: 1) Писать modem.send() короче и проще, чем SecurityControl.SendPort(Port,Mess). 2) Слово "mess" с английского означает "бардак", "путаница", "беспорядок". 3) Тащить кучу зависимостей и графический установщик, ради того, чтобы потом послать сообщение через модем - нонсенс. И это я до кода не добрался. Однако, хвалю за храбрость.
- 16 ответов
-
- 4
-
-
- Server
- OpenComputers
-
(и ещё 1 )
Теги:
-
Да, всё так же как и в обычной.
-
Максимальная дистанция на которой работает плата задана конфигом мода. Там по дефолту стоит 400. И оно по моему сломано и не перенастраивается на другое значение. (Во всяком случае, когда я пробовал так было.) =) Ещё ты можешь задать силу сигнала для передачи командой: setStrength(value: number): number Это, как я понимаю, повлияет на максимальное расстояние, на которое будет слышно сообщение, и на количество энергии необходимое на передачу. Впрочем, это делать не обязательно. "Из коробки" плата передаёт сообщения на полную мощность.
-
http://minecraft-ru.gamepedia.com/OpenComputers/%D0%91%D0%B5%D1%81%D0%BF%D1%80%D0%BE%D0%B2%D0%BE%D0%B4%D0%BD%D0%B0%D1%8F_%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%B0%D1%8F_%D0%BF%D0%BB%D0%B0%D1%82%D0%B0
-
можно-ли запускать мониторы через RedNet в CC
Totoro ответил в вопрос MrAbad в Разные (отсортировать)
Нет, это я сам оффтоплю. А по теме - я писал на CC в такие давние времена, что ничего уже не помню. Надо ждать гуру СС. Или читать доки :P -
можно-ли запускать мониторы через RedNet в CC
Totoro ответил в вопрос MrAbad в Разные (отсортировать)
[offtop] Кто-то ещё пишет на СС? [/offtop] -
Подзаглох проект что-то. Он будет ещё воскрешаться, или уже R.I.P.?
- 64 ответа
-
- 2
-
-
- Многопоточность
- LunaOS
- (и ещё 3 )
-
Я хз как именно ты его стартуешь, но судя по всему, эта хрень у тебя запускается ДО того как загружена OpenOS. Функцию require задаёт именно OpenOS, поэтому очевидно программа не может её найти и крашится. Почему же работают первые строки, спросишь ты? А это происходит по двум причинам. Во-первых, компьютеру всегда и везде доступны глобальные объекты computer и components. Их можно использовать даже из EEPROM. Во вторых, конструкции типа A or B вычисляются лениво. Это значит, что если компьютер рассчитал левую половину выражения (A) и она "истинна", то он не будет считать правую половину. Потому что true or <что-то> всегда даст "истину", и считать вторую половину смысла никакого нет, т.к. на неё пофиг. Поэтому, несмотря на то что в правой половине ты вызываешь несуществующую функцию require, компьютер не кидает ошибку - он даже не пытался выполнить этот вызов. А вот на третьей строке, левая половина (event) оказывается "ложной", потому что глобального объекта event не существует. Компьютер пробует рассчитать правую половину выражения, и сталкивается с тем, что у тебя там идет вызов несуществующей функции.
-
ивент Unreal Tournament: Resurrection -- Этап #2
Totoro ответил в тему Fingercomp в Ивенты и конкурсы
Забегай в ирку, обсудим технические детали, чтобы тут не флудить.- 123 ответа
-
- opencomputers
- robot
- (и ещё 2 )
-
fill - адекватная замена. А вот в случае со string.rep появляется лишнее действие. Каждый раз при заливке, компьютер вынужден провести конкатенацию 20 с лишним пробелов в одну строку. Поэтому это не обязательно лучший вариант.
- 7 ответов
-
- сохранение картинок
- Рисовалка
- (и ещё 1 )
-
Мой вариант: function parse(json) return { id = '2', name = 'Яблоко', item_name = 'minecraft:apple', item_meta = 0, nbt = '{Some NBT Tags}', cost_uu = 0.01, stat = 1, total_sales = 152, mods = 'Vanilla' } end local data = parse( '[{"id":"2","name":"Яблоко","item_name":"minecraft:apple",' .. '"item_meta":"0","nbt":"{Some NBT Tags}","cost_uu":"0.01",' .. '"stat":"1","total_sales":"152","mods":"Vanilla"}]')
-
Я полностью с тобой согласен. Только надо учесть ещё один момент. Компьютер в ОС не даёт использовать в полную мощь даже те фейковые "немногопоточные" потоки, которые он выделяет. Ведь там есть ещё одно искусственное ограничение - на количество команд / тик для одного процессора. Если же распределить задачу на два процессора, мы уменьшим этот кап вдвое.
-
Ну да. Просто кучка компьютеров, которые работают сами по себе, и решают каждый свою задачу. Ты раскусил нашу идею. (Ещё можно было внимательно прочесть первые посты.) Идея состоит в том, чтобы написать библиотеку-менеджер для кластера из компьютеров, соединённых вместе и готовых выполнять задачи. Использовать эту штуку можно будет по разному. - вычислять что-то параллельно, разбив задачу на части, - запустить несколько разных задач одновременно, - запилить публичный сервис, который предоставляет вычислительные ресурсы всем желающим, балансируя полученные задачи и нагрузку по кластеру Зачем стягивать себя рамками определений?
-
А какая принципиальная разница? Я же уже ответил Квертику - мы не будем решать конкретных задач. Мы напишем либу, которая позволит организовать параллельное вычисление. Мультипоточность. Кто сказал, что потоки обязаны обрабатывать похожие задачи?
