Технологии Чайника
42 subscribers
288 photos
15 videos
177 files
69 links
Отчаянные технологии...

> https://t.me/teaspot500
Download Telegram
Технологии Чайника
PoopyTool.py
В версии 2.0 вас ждёт калибровка голоса, сохранение данных, изменение имени и возможность режима ручного ввода при возникновении ошибок или при отсутствии микрофона, а так же сам код из "Спагетти" станет более понятным и простым, не говоря уже про добавление новых команд

Только вопрос в том: а когда мне будет не лень заняться 2.0? Надо просто принять, что это проект не одного дня, а недели или больше, если нужно ещё качественнее
🎉1🤝1
Как вы знаете - это канал не по программированию, но как будто мы стали это забывать, поэтому разбавлю недавней находкой

Я думаю многие знают игру Kerbal Space Program - не смотря на то, что случилось со второй частью, я продолжаю играть в первую, просто ради своего удовольствия и могу сказать, что меня давно интересовал вопрос ещё большего масштаба управления или реализма и я подумал о том, что ведь я программист.. Так может использовать это?

В общем, нашёл я мод под названием kRPC (kerbal remote procedure call) - это грубо говоря API для KSP, который есть для разных языков, а том числе и моего CPython

Как я понял мод позволяет создать локальный сервер грубо говоря, чтобы к нему подключиться через скрипт, а уже он в свою очередь даёт возможности: управления спутниками, получения телеметрии, создания автоматических систем и так далее, - то есть как по мне это идеальный вариант для создания какого-то цикла и автоматизации запуска космических аппаратов, ведь убирает человеческий фактор если это нужно, а так же, если речь не про запуски, то тем более просто представьте как будет выглядеть получение данных в консоли в виде списка с названием спутника и его данными на тот момент времени.. это же полное погружение, словно в реальный ЦУП!

А вот пример кода:
import krpc
import time

# Подключаемся к серверу в игре
conn = krpc.connect(name='Hello_World')
vessel = conn.space_center.active_vessel

# Делаем скриншот (мне это понравилось после вдохновения от реальных фото со спутников)
conn.space_center.take_screenshot()

# Управляем спутником, а точнее включаем полный газ и меняем ступень
vessel.control.throttle = 1.0
vessel.control.activate_next_stage()

# Читаем телеметрию
print(f"Высота: {vessel.flight().mean_altitude} метров")
print(f"Скорость: {vessel.flight(vessel.orbit.body.reference_frame).speed} м/с")

# Пример цикла для мониторинга нескольких спутников
satellites = conn.space_center.vessels
for sat in satellites:
if 'спутник' in sat.name.lower(): # Ищем все аппараты с "спутник" в имени
print(f"{sat.name}: Высота {sat.flight().mean_altitude:.0f} м")


Есть ещё и условный мод kOS, но он добавляет внутриигровой блок программируемый со своим языком, однако думаю он не оперирует спутником пока игрок не управляет им (по аналогии с выравниванием на центр планеты когда игрок в ЦУПе, а не за спутником)

А так же есть Telemachus - это мод для открытия в игре веб-сервера с целью просматривать телеметрию через браузер с любого устройства, условно с телефоном куда-то отойти пока ваш спутник долго летит и через телефон следить за скоростью спутника


В общем думаю что-то попробовать, меня продолжает интересовать KSP)
❤2
Наглядный пример почему я использую моржей в виде присваивания:
b = "Hello World!" 
print(b)

По крайней мере это ощущается так, вместо того, чтобы сразу выводить строку
RussianPython.py
568 B
Маленький эксперимент
🎉1🤝1
Технологии Чайника
RussianPython.py
RussianPython.py
890 B
Модернизировал: теперь, если вам не лень, то вы можете сделать этот скрипт внутри этого же скрипта.. Слабо?
🎉1🤝1
RussianPython.py
1.9 KB
Возрадуйтесь: Вот вам нормальная версия, со всей поддержкой сохранений. загрузок, базовых функций, без неправильного определения и так далее
Минусы: нет обработки экранирования и строк в кавычках, вряд ли мне будет не лень исправлять, но иначе бы использовал модуль re
Технологии Чайника
RussianPython.py
Нынешняя замена слов:
вывести - print
если - if
иначе - else
иначе если - elif
постоянно - while
Верно - True
Ложно - False
строка - str
число - int
список - list
словарь - dict
булево - bool
плавающее - float
количество - len
в - in
для - for
диапазон - range
ввод - input
лямбда - lambda
импорт - import
прервать - break
вернуть - return
пропустить - pass
продолжить - continue
и - and
или - or
не - not
Технологии Чайника
RussianPython.py
Вот более страшная вариация кода.. Уга буга...

Ну а ещё заметил, что в шутку добавленное добавление к числовой переменной булевого значения случайно дошло до последней версии

|||||
VVVVV
😁1
Утро начинается с кофе и с понимания о том, что оказывается уже есть на просторах интернета библиотека с названием "russianpy" (забавно, что я наоборот округлил "russian" и оставил "python", но в любом случае это что-то вроде условностей, так как название было сделано на скорую руку), но она полностью заменяет функции в питоне:
from russianpy import переопределить_синтаксис

с russianpy.синтаксис:
функция добавить(а, б):
вернуть а + б
🤝1
Пострадал ерундой и ещё доработал.. Появились идеи в голове
❤1🤝1
За какую вы типизацию?
Anonymous Poll
70%
Динамическая
30%
Статическая
❤1
Технологии Чайника
FirstGame.c
А тем временем: пока вы спали я продолжаю изучать язык Си и сделал свою первую игру: нужно угадать число от 0 до 100! На удивление Си простое, если не ломать голову над IDE и попытками запуска там...
#include <stdint.h>
#include <time.h>

int main() {
srand(time(NULL));
int num = rand() % 101;
printf("Это первая сделанная мной игра на C!\nАвтор MichiTheCat\nТГ: https://t.me/TeaTechnology\nЗагадано число от 0 до 100!\n");

while (1) {
int usr;
printf("\nВведите предполагаемое число: ");
scanf("%d", &usr);
if (usr == num) {
printf("\nВы угадали!");
break;
} else if (num < usr) {
printf("\nЗагадано число меньше");
} else if (num > usr) {
printf("\nЗагадано число больше!");
}
}

return 0;
}
❤3
Вот и моя вторая игра на C.. Это была дань памяти и уважения одной из моих самых первых и самой первой по масштабности игре на новом (на тот момент) для меня языке python - TRG или же Test Random Game, где вы должны были драться с врагами со случайным здоровьем, где уже после появились предметы, ачивки и прочее, что я писал на тот момент, хоть и не особо понимая что пишу в контексте того, что написав с нуля сегодня - игра была бы лучше)

Так и с Си версией игры - пишу как могу и познаю новое, чтобы в дальнейшем написать игры/проекты получше)
❤2