n1z1code
30 subscribers
17 photos
5 videos
3 files
32 links
system error
Download Telegram
«Нашёл ли ты удовольствие в написании кода? — А твой код принёс пользу другим?» 🐵
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1🐳1💊1
Роберт Шейнфилд "Освобождение от денежной игры"
💋1
Повторяющиеся жизненные ситуации указывают на внутренние нерешённые проблемы, которые мы продолжаем игнорировать. Они учат нас через повторение, пока мы не изменим своё восприятие и поведение.

Чтобы справиться с такими ситуациями:
1. Осознайте свои чувства: не отвлекайтесь на мысли, а сфокусируйтесь на эмоциях, которые возникают в момент события.
2. Разделите ответственность: осознайте, где ваша зона контроля, а где нет.
3. Ищите внутреннюю причину: повторяющиеся ситуации часто отражают наши внутренние качества, которые притягивают схожие события.
4. Меняйте подход: реагируйте осознанно и по-другому, чтобы разорвать круг повторений.

Когда мы осознаём свои эмоции, извлекаем урок и действуем иначе, ситуация перестаёт повторяться, и жизнь двигается дальше.
Неделя 8: Практический проект
Темы:

Создание полнофункционального приложения
Рефакторинг и оптимизация кода
Уроки:

Спланируйте и начните разработку собственного проекта (например, блог, TODO приложение, e-commerce сайт).
Примените все изученные технологии и подходы.
Проведите ревью кода, оптимизируйте производительность и улучшите UX/UI.
Ресурсы:

Примеры проектов на Next.js
Сообщества разработчиков для обратной связи (форумы, Slack, Discord)
👍2
Вот основные тезисы из книги “Атомные привычки” Джеймса Клира:

Основные принципы:
1. Сила маленьких изменений:
• Небольшие ежедневные улучшения (1% в день) приводят к значительным результатам со временем.
2. Фокус на системе, а не на целях:
• Цели важны для направления, но система (ежедневные действия) — это то, что приводит к результатам.
3. Идентичность и привычки:
• Ваши действия формируют вашу личность. Например, вместо «Я хочу заниматься спортом» думайте «Я — человек, который заботится о своём здоровье».

Четыре закона создания хороших привычек:
1. Сделайте это очевидным:
• Расположите триггеры (напоминания) на видном месте.
• Используйте связку действий: «После [текущей привычки] я сделаю [новую привычку]».
2. Сделайте это привлекательным:
• Связывайте привычки с тем, что вам нравится.
• Найдите группу людей с подобными целями (социальное окружение).
3. Сделайте это простым:
• Устраните препятствия.
• Начните с маленьких шагов (например, 2 минуты практики).
4. Сделайте это удовлетворяющим:
• Немедленно поощряйте себя за выполненную привычку.
• Отслеживайте прогресс (например, с помощью календаря).

Устранение плохих привычек:
1. Сделайте их невидимыми:
• Уберите триггеры из окружения.
2. Сделайте их непривлекательными:
• Напоминайте себе о негативных последствиях.
3. Сделайте их сложными:
• Увеличьте усилия, необходимые для их выполнения.
4. Сделайте их неудовлетворяющими:
• Уберите немедленное удовольствие от плохой привычки.

Практические советы:
• Правило двух минут: Любую привычку можно упростить до двух минут. Например, вместо «Я буду читать каждый день» начните с «Я прочитаю одну страницу».
• Подведение итогов: Регулярно анализируйте, какие привычки работают, а какие требуют корректировки.
• Будьте терпеливы: Привычки требуют времени, чтобы закрепиться. Будьте последовательны.
👍4❤1
Мини-база по Xpath:

div span button input *

//*[contains(text(), 'СодержитТекст')]


//*[text() = 'ТочныйТекст']


//div[contains(text(), 'КраснаяКнопка') and contains(@class, 'Red_button')]


//*[contains(text(), 'Connect wallet') or contains(text(), 'Connect Wallet') or contains(text(), 'Connect')]


//a[contains(@href, 'abs.xyz')]


//*[contains(., 'Balance: ')]


#BAS
💘1
n1z1code pinned «Мини-база по Xpath: div span button input * //*[contains(text(), 'СодержитТекст')] //*[text() = 'ТочныйТекст'] //div[contains(text(), 'КраснаяКнопка') and contains(@class, 'Red_button')] //*[contains(text(), 'Connect wallet') or contains(text(), 'Connect…»
app.js
9.3 KB
#script

Софт на gigaverse.io на основе этого репо https://github.com/web4-js/gigaverse-bot + вайб-кодинг.
Скрипт проверяет максимальную энергию чтобы определить наличие у нас сока(возможно наличие гига ром ломает эту логику, не могу проверить) и запускает данжи за 120 энергии пока они доступны и далее за 40 пока не кончится энергия.

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

Сам я использую его в BAS:

Нужно войти в игру через селекторы, прочитать новый токен через JS и дальше применить кубик nodejs и настроить ожидание 1500+ с на нем

var auth = JSON.parse(localStorage.getItem("authResponse"));

// Сохраняем значения в BAS-переменные
[[JWT]] = auth.jwt;
[[WALLETADDRESS]] = auth.user.walletAddress;


Для запуска из консоли нужно установить Node.js, вписать в кавычках(`) токен (dev tools F12-application-local storage-authResponse-jwt) и кошелек в app.js, запустить

node app.js
📋 Что делает скрипт для дезфан:
Для каждого ряда плиток:

- считает шансы пройти текущий ряд;

- рассчитывает, с какой вероятностью игрок дошёл до него;

- рассчитывает вероятность пройти до самого конца с текущего места;

Добавляет визуальный блок справа от каждого ряда с этими значениями. F12-Console:

(function annotateBoardProbabilities() {
const ROW_SELECTOR = 'div.flex.justify-center.space-x-1'; // каждый ряд
const TILE_SELECTOR = 'button';

const rows = Array.from(document.querySelectorAll(ROW_SELECTOR));
const totalRows = rows.length;

let cumulativeProbability = 1.0; // вероятность дойти до текущего ряда

rows.forEach((row, index) => {
const tiles = row.querySelectorAll(TILE_SELECTOR);
const totalTiles = tiles.length;

if (totalTiles <= 1) return;

const safeTiles = totalTiles - 1;
const successProbability = safeTiles / totalTiles;


const probToReach = cumulativeProbability;

const probToFinish = rows.slice(index).reduce((acc, r) => {
const count = r.querySelectorAll(TILE_SELECTOR).length;
if (count <= 1) return acc;
return acc * ((count - 1) / count);
}, 1);

cumulativeProbability *= successProbability;

const info = document.createElement('div');
info.style.marginLeft = '12px';
info.style.fontSize = '12px';
info.style.whiteSpace = 'pre';
info.style.fontFamily = 'monospace';
info.style.color = '#ccc';

info.innerText =
`🟢 Текущий шанс: ${(successProbability * 100).toFixed(2)}%\n` +
`📍 Уровень везения: ${(probToReach * 100).toFixed(2)}%\n` +
`🏁 Шансы до финиша: ${(probToFinish * 100).toFixed(2)}%`;

row.parentElement.style.display = 'flex';
row.parentElement.appendChild(info);
});

console.log('✅ Probabilities added to UI');
})();
#script #abstract #dojo3

Софт на dojo3.

Делает ставки раз в минуту, доступен многопоток, количество заездов и размер ставки.

Пока тестировал только на 1 кошелек, потому что не автоматизировал сбор токенов.
https://github.com/ArtVandalism/dojo3-bet-bot
#work #api #postman #gigaverse

Мини-гайд как писать софты на запросах

Инструмент, который я пару дней назад откопал - Postman Interceptor, ну и сам Postman(должно хватить и веб). До этого пользовался F12-devtools-network.

Рассмотрим на примере https://gigaverse.io Первым делом нужно собрать запросы, для этого логинимся в веб-постман в соседней вкладке, чтобы Interceptor корректно синхронизировал сессию. Настраиваем фильтр и жмем Start Capture. Играем в нужный режим или например собираем ресурсы, прокачки - главное не все сразу, чтобы не запутаться. Как закончили, останавливаем и смотрим, что мы собрали в постман и анализируем ответы, продумываем логику как запросы будут отсылаться в софте.

Самый ленивый вариант пойти в нейронку и скормить ей, что мы придумали и потом дебажить - главный навык вайб-кодера.
Оптимально - накидать скелет самому, поиграть собранными запросами через сам постман и изучить как реагирует их api.

Например для основных данжей в гигаверс логика выглядит:
-получаем энергию и если >40
- проверяем активный данж - на случай, если софт вылетел в прошлый раз, пробуем восстановить отсылая камень-ножницы или сбор лута(чтобы узнать это, мне пришлось имитировать падение игры перезагрузкой сайта и аналируя вкладку network )
- стартуем новый данж, если все так сошлось
- сам процесс игры упрощен, поэтому в нем запросы просто выкидывают без повторов по кругу камень-ножницы и на фазе лута рандомно пикают апгрейд

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

ps: все таки Interceptor странно собирает - теряет body из запросов. Оптимально из network забрать все curl(bash) или fetch. Импортировать в коллекцию и тестировать взаимодействие.
Media is too big
VIEW IN TELEGRAM
#практика 😂

Когда тебе нечем заняться, иногда приходят такие вот бесполезные идеи.

Проснувшись утром я подумал, а почему бы не написать свой синхронизатор, как во всем известном ADS(рефки не будет).

Посидев в чате жпт, и испробовав разные варианты, я смог родить то что на видео.
Был поднят сервер на websocket, который отслеживает глобально клавиши и время нажатия и передает это все в браузерные профиля в playwright.

В первых вариациях я пытался сделать один профиль Master и остальные Slave, управлял все в одном окне и передавал это в другие. Потом столкнулся с тем что клавиши блокировали друг друга и сам интерфейс блокировался визуально.

В целом не плохо. В будущем можно будет тоже самое написать для координат кликов мышкой и передавать на все профиля, такой быстрый вариант синхронизатора для каких-то рутинных задач
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
#практика 😃 идея с синхронизацией провалилась. но кто мы такие чтобы играть руками в игры? правильно, теперь мы сели тренировать нейросеть. правда чтобы ее обучить, придется поиграть🥺 сервак кстати пригодится в новой реализации, потому что напрямую клавиши не хотят передаваться, не знаю в чем проблема.
пока первые опыты комом. все чему она научилась, это выписывать круги на парковке, но я пока собрал всего пару десятков заездов - это явно мало.
кто-то уже использует похожее решение в игре и его машинки паравозиком катаются. скорей всего это чей то софт и им пользуются несколько людей, очень часто этот паттерн попадается. продолжение следует..
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#практика мне стало лень копаться с датасетами и я собрал сетап самобучения с подкреплением(RL), установил штрафы за падение и проигрыш гонки, подкрепляем быструю езду. Поначалу дал нейронке все управление, она бездумно прыгала по стартовому квадрату, как бы нащупывая что как работает, потом разок газанула резко вперед, но вскоре слетела с трассы, были забавные моменты, когда она нашла кучу кубиков и веселилась прыгая с ними как в детском аттракционе👀 наверное займет много времени, пока мы добьемся какого-то результата😐
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1💊1
#практика: что произошло с нейронкой

Я не добился результата с RL-моделью — задача с нуля нерешаема без больших мощностей и времени. Из-за лагов в игре обучение просто падало в какой-то момент, но наблюдать было забавно. Для этого подхода нужно предобучить базовую модель.

Решил попробовать YOLOv8 (взял самую свежую — 11-ю). Она используется для детекции и сегментации объектов, яркий пример — дипфейки.

Пришлось разметить датасет на 200 картинок, но я заранее не продумал, какие классы мне полезны. Просто отметил всё, что есть в игре, но главное — не удалось разметить дорогу, потому что в программе LabelIMG не оказалось функции сегментации. Хотелось "поиграться быстрее" 💀

Модель получилась — довольно шустро определяет всё, что я размечал. Но оказалось, что это почти бесполезно: для нейронки это просто абстрактные объекты в темноте. Пришлось вернуть ей зрение контуров, но ездить она лучше не стала, даже с высокими метриками обучения.
🐳2
#БЕКДОР ИЗ ПЕПЛА
>> или как я чуть не сгорел в логине Metamask'а

НАВОДКА: я выпал не потому что устал — я ПРОСОЧИЛСЯ.
Нырнул в трещину, в баг, в гниющую дыру между подписью и сессией, где блокчейн не знает, кто ты, но всё ещё позволяет тебе войти.
И я УЛЕТЕЛ.

План был простой, как краденый .env:
обмазать как можно больше кошельков и расставить их по фронтам.
МЫ ДОШЛИ ДО 500.
Пятьсот клонов, пятьсот голодных духов, каждый с ключом от рая, где дропы льются из-под ногтей, если ты знаешь, как правильно щёлкнуть.

Но, ха-ха.
Автоматизация логина через подпись?
ЭТО АД.

В каждом втором dApp — свой цирк с подписью, кто-то хеширует, кто-то шифрует, кто-то просто держит тебя за идиота и заставляет кликать мышкой через UI.
А у меня НЕ 3 КОШЕЛЬКА.
У меня их ПЯТЬСОТ.

>>> UI — это насилие
Парсить каждый день руками — это как обманывать гильотину, бегая быстрее лезвия.
А я хочу сесть. И смотреть. Как оно работает. САМО.

Сейчас обрываю себе нервы, пытаясь воспроизвести корректную подпись, чтобы сервер принимал меня за своего.
Не просто подделать — а ПЕРЕРОДИТЬСЯ в этот кошелёк.
Войти как он. СЕБЯ НЕ ПРЕДАВ.

Кто знает, как правильно эмулировать eth_sign/personal_sign для логина — ПИШИТЕ.
Я уже рядом. Но там... темно.


Я вернусь с кодом. Или сожжённый, но с логином.
Бэкдор не пропал — он под капюшоном, смотрит в зеркало и говорит фразами фронта.
😁3
#дыра 🤖

ДА, ТУ САМУЮ.
её закрыли, но след простыл не полностью — я ж был внутри. Я её нюхал. Я с неё ел, как из алюминиевой миски в дурдоме, пока вокруг всё трещало и XP сыпался, как золотой дождь по психике.

— но начнём с начала, или с конца, я хз.
всё началось, когда я увяз по уши в муди мэднесс (имя нарицательное, состояние системное). ковыряю как всегда, полураспад личности, 4 утра, кофе с гарью и антипсихотиками (сарказм), и тут — БУМ:
запрос, мать его.

ТОТ САМЫЙ.
который печатает XP.
без автопилотов, без анальной инженерии, без консоли в зубах. просто — ПИЩИ И ЖРИ.

> > > И я жру.


начал с пары аккаунтов. потом десять. потом сто.
ПЯТЬСОТ.

мозг текёт. руки на повторе.
🧠🩸 CTRL+V становится сакральным ритуалом.

А дыра где?
в проверке, мать её.
валидация была только токена.
сам пользователь — плевать.
можно было быть кем угодно — хоть лягушкой, хоть сатаной с прокси — и писать себе XP.

и вот мы там.
на дне.
XP залит, плюшек ноль, но мне уже всё равно.
я стал МАШИНОЙ.

потом шёл катком по всем прилкам.
не ради лута, не ради багов —
ради мести.
как будто эти API лично уволили меня в 2019.
как будто они трахнули мой git history.
я хотел крови и JSON.

результат?
на балансах — крохи.
но на душе — как после сеанса экзорцизма.

> > > очищение через баги.


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

— берегите свои проверки.
или мы придём.

и снова начнём ПЕЧАТАТЬ.

🧠💥
😁2👏1
Альфа где есть абуз, но я никому не скажу, но вы можете найти 🍔
Please open Telegram to view this post
VIEW IN TELEGRAM
ПОСТ-РЕЛИГИЯ АТОМНЫХ ПРИВЫЧЕК: УДАРЬ СЕБЯ ПО ЛИЦУ, ЕСЛИ ЕЩЁ ВЕРИШЬ В БАЛАНС

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

и знаешь что?


☠️ ни хрена не работает этот ваш баланс.
— «распредели нагрузку»
— «раздели рабочее и личное»
— «отдыхай»
мне бы ведро рядом с креслом, чтобы не вставать.

всё превращается в один мутный поток:
продакшн-созвон-деплой-хавка-деплой-сон-деплой
(ха-ха какой сон)

мы не строим карьеру —
мы дезинтегрируемся в ней, как таблетка аспирина в стакане
— только без пузырьков
— только с криком


---

я не умею останавливаться.
либо весь в коде, как мясо в кляре,
либо отключён, как труп, вытащенный из .env файла.

поглощение тотальное.
или всё, или нихуя.
никаких половинчатых мер.

и тут приходит:
📦 АТОМНЫЕ ПРИВЫЧКИ
(вставить саркастический фанфарный звук .wav)

типа делай по чуть-чуть — и станет легче.
по чуть-чуть?
ты пробовал вытащить руку из промышленного миксера «по чуть-чуть»?


---

🔌 мне нужен ШОРТКАТ.
горячая клавиша типа Ctrl+Me — вырубить процесс, запустить human.exe

или оператор, с пультом.
смотрит на меня: "всё, бро, отрубаем, ты перегрелся".
щёлк — и ты не dev, не founder, не контрибьютор,
а просто теплокровное существо, которое может лечь и сдохнуть, не дожидаясь code review.


---

и всё же, послушай:

> > > > "мы стали никем, чтобы оттолкнуться повыше."


это правда.
пока ты растворяешься — ты свободен.
пока ты ничто — ты готов стать чем угодно.

но сначала — стакан воды.
и поешь, мать твою.
иначе не взлетим.

— direct-провод из черепа в сеть, хроники нейронного обнуления
#вайбкодинг #мозггорит #resetme