Апдейтер Lineage II на Python

не важно как по мне какой язык главное что работает , только один вопрос от языка к примеру скорость загрузки меняется? Если нет то тем более не важен язык
Конечно меняется. Если язык эстонский, то скорость загрузки ниже процентов на 40.
 

главное чтоб работал
 
  • Попкорн
Реакции: raz
не важно как по мне какой язык главное что работает , только один вопрос от языка к примеру скорость загрузки меняется? Если нет то тем более не важен язык

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

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

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

Оба варианта реализуемы, но не в этой публичной версии. Возможно, я добавлю такие функции позже, хотя это не гарантировано, так как версия всё-таки бесплатная.
 
Я имел в виду скорость скачки отличается в зависимости на каком языке написан апдейтер? Если не меняется то роли не играет на каких языках написан он , а шаблон натянуть не проблема для красоты
 
про размер - ну 50 мегов по нашим временам это имхо не то, из-за чего стоит париться.
Для лаунчера, которого функция загрузки файла из интернета это много 😂. Мягко говоря, лаунчер на должен весить больше чем патч в два-три раза 😂😂😂😂.
Если бы мой лаунчер весит 20 мегов в теории, я бы его и не начинал делать, и то у меня (по моим меркам) 12 мб считают много, но у меня он целый веб сервер развертывает под капотом
 
  • Мне нравится
Реакции: raz
Для лаунчера, которого функция загрузки файла из интернета это много
Это было актуально для года так 2000, но не 2025, когда интернет от 100Мб и винты SSD/Nvme.
Разница будет, 1 секунда и 3-5 секунд на скачивание.
Даже если бы он весил и 100 метров.
Естественно разговор только о ВЕСЕ лаунчера, а не функционале в целом.
 
Учитывая, с какой скоростью РКН и тому подобные банят урлы с загрузкой клиента, то сейчас в цене тот лаунчер, который позволит без ребилда с помощью удаленной команды менять чек урлы на апдейтерах клиентов.
 
  • Мне нравится
Реакции: raz
  • Ха-ха-ха
Реакции: raz
Учитывая, с какой скоростью РКН и тому подобные банят урлы с загрузкой клиента, то сейчас в цене тот лаунчер, который позволит без ребилда с помощью удаленной команды менять чек урлы на апдейтерах клиентов.
Можно еще дальше пойти
или
 
Обновление

Изменения в версии:​

  • Улучшена проверка файлов:
    • Заменена стандартная сверка файлов на проверку с использованием контрольной суммы.
  • Обновление генератора списка файлов для патча:
    • Теперь в списке для каждого файла указывается его контрольная сумма (хеш).
  • Снижено количество ложных срабатываний на VirusTotal:
    • Уменьшено с 12 до 5.


СКАЧАТЬ

VirusTotal

 
Я имел в виду скорость скачки отличается в зависимости на каком языке написан апдейтер? Если не меняется то роли не играет на каких языках написан он , а шаблон натянуть не проблема для красоты
Скорость скачивания в апдейтере больше зависит от скорости интернет-соединения, загрузки сервера, и качества реализации сетевого кода, чем от языка программирования. Язык влияет минимально, если используются оптимальные библиотеки и настройки. Например, правильное использование многопоточности и буферизации может ускорить процесс независимо от языка. Так что главное — это грамотная реализация и хорошая связь.
 
Для лаунчера, которого функция загрузки файла из интернета это много 😂. Мягко говоря, лаунчер на должен весить больше чем патч в два-три раза 😂😂😂😂.
Если бы мой лаунчер весит 20 мегов в теории, я бы его и не начинал делать, и то у меня (по моим меркам) 12 мб считают много, но у меня он целый веб сервер развертывает под капотом
Сравнивать навыки человека, который только начинает, с тем, кто уже давно в этом деле, как минимум некорректно. Плюс, как я уже говорил, сильно заморачиваться над оптимизацией веса для бесплатного релиза особого смысла нет.
 
Какой алгоритм контрольной суммы был использован?
SHA256

Пример:
import hashlib

def compute_sha256(file_path):
"Вычисляет контрольную сумму SHA256 для указанного файла."
sha256_hash = hashlib.sha256()
with open(file_path, "rb") as f:
for byte_block in iter(lambda: f.read(4096), b""):
sha256_hash.update(byte_block)
return sha256_hash.hexdigest()

Эта функция compute_sha256 открывает файл в побайтовом режиме, считывает его блоками по 4096 байт и обновляет объект sha256_hash, пока весь файл не будет прочитан. В конце возвращается хэш в виде шестнадцатеричной строки.
 
Для лаунчера, которого функция загрузки файла из интернета это много 😂. Мягко говоря, лаунчер на должен весить больше чем патч в два-три раза 😂😂😂😂.
Если бы мой лаунчер весит 20 мегов в теории, я бы его и не начинал делать, и то у меня (по моим меркам) 12 мб считают много, но у меня он целый веб сервер развертывает под капотом

ну это профессиональное чистоплюйство. когда делаешь топ-проект и ты мастер - грех не сделать. для простого люда и такой лаунчер сойдет. честно, пока он до 100 мегов - ваще пох, это уже мусорные размеры. у меня видосы с рега каждые 4 минуты и то по 300 мегов весят. а их тысячи.
вот дальше вопрос более интересный поднят -


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

вот это было бы актуально. 2 команды. одна на смену айпишников для скачивания, причем желательно с каким-то запасным сервером авторизации, если основной командный заблочат, а вторая на запуск скачки новой версии апдейтера, для обновлений и прочих сюрпризов, если вылезут со временем/ркном и тд
 
так погоди, я тут пытался fastapi ковырять, там всё через async идёт, что значит не асинхронный?
Не асинхронный — значит, работает по порядку, шаг за шагом. Каждая операция завершает выполнение, прежде чем начнётся следующая. В отличие от асинхронного, где можно приостановить задачу и заняться чем-то ещё, пока, например, ждёшь ответа от сервера.
 
Назад
Сверху Снизу