E:Plugin
Всем ку, я тут делаю новый плагин Вот вам небольшой сник пик что там будет
Это все кстати кастомизируется
🥰9❤4
E:Plugin
Всем ку, я тут делаю новый плагин Вот вам небольшой сник пик что там будет
customcrash.plugin
43.6 KB
Custom Crash v1.0.0
Плагин для кастомизации краш лога етг/аю
Использование: пассивное (при краше приложения будет видно кастомный крашлог)
Настройки: ✅
Как всегда если нашли баги, то не стесняйтесь писать сюда в комментарии :)
Плагин для кастомизации краш лога етг/аю
Использование: пассивное (при краше приложения будет видно кастомный крашлог)
Настройки: ✅
Как всегда если нашли баги, то не стесняйтесь писать сюда в комментарии :)
❤🔥5❤1
E:Plugin
customcrash.plugin
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<style>
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body {
height: 100%;
background: #0078D7;
color: #fff;
font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
font-weight: 300;
}
.extera-only { display: block; }
.ayu-only { display: none; }
body[data-ayugram="true"] .extera-only { display: none; }
body[data-ayugram="true"] .ayu-only { display: block; }
.screen {
display: flex;
flex-direction: column;
height: 100vh;
padding: 12% 10% 6%;
}
.sad {
font-size: 80px;
font-weight: 300;
line-height: 1;
margin-bottom: 28px;
letter-spacing: -4px;
}
.title {
font-size: 20px;
font-weight: 300;
line-height: 1.55;
margin-bottom: 24px;
}
@property --p {
syntax: '<integer>';
initial-value: 0;
inherits: false;
}
.progress-text {
font-size: 20px;
font-weight: 300;
--p: 0;
counter-reset: pct var(--p);
animation: bsod-count 7s forwards;
animation-timing-function: steps(1, end);
}
.progress-text::before {
content: counter(pct) "% complete";
}
@keyframes bsod-count {
0% { --p: 0; }
8% { --p: 12; }
19% { --p: 23; }
31% { --p: 37; }
44% { --p: 48; }
55% { --p: 61; }
66% { --p: 74; }
76% { --p: 83; }
85% { --p: 91; }
93% { --p: 96; }
100% { --p: 100; }
}
.spacer { flex: 1; max-height: 80px; }
.bottom { width: 100%; margin-top: auto; }
.info {
font-size: 11.5px;
line-height: 1.9;
color: rgba(255,255,255,0.85);
}
.info b { font-weight: 500; color: #fff; }
.stop-code-row {
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.stop-code-log {
font-weight: 500;
color: #fff;
white-space: nowrap;
}
.actions {
display: flex;
gap: 10px;
margin-top: 16px;
}
.btn {
flex: 1;
padding: 10px 8px;
border: 1.5px solid rgba(255,255,255,0.6);
background: transparent;
color: #fff;
font-size: 13px;
font-family: inherit;
font-weight: 300;
cursor: pointer;
text-decoration: none;
display: inline-flex;
align-items: center;
justify-content: center;
white-space: nowrap;
letter-spacing: 0.02em;
}
.btn-primary { background: rgba(255,255,255,0.15); border-color: #fff; }
</style>
</head>
<body data-ayugram="{is_ayugram}">
<div class="screen">
<div class="sad">:(</div>
<div class="title">
<span class="extera-only">Your exteraGram ran into a problem and needs to restart. We're just collecting some error info, and then we'll restart for you.</span>
<span class="ayu-only">Your AyuGram ran into a problem and needs to restart. We're just collecting some error info, and then we'll restart for you.</span>
</div>
<div class="progress-text"></div>
<div class="spacer"></div>
<div class="bottom">
<div class="info">
For more information about this crash, contact the developer.<br/>
If you call a support person, give them this info:<br/>
<span class="stop-code-row">Stop code: <span class="stop-code-log">{log}</span></span>
Thread: <b>{thread}</b> · {app} {version}<br/>
Time: <b>{time}</b>
</div>
<div class="actions">
<a class="btn btn-primary" href="crashaction://copy">Copy log</a>
<a class="btn" href="crashaction://restart">Restart app</a>
<a class="btn" href="crashaction://exit">Exit</a>
</div>
</div>
</div>
</body>
</html>
моя bsod тема если кому то надо
❤1
E:Plugin
gifts_plugin.plugin
Всем ку, чуть переделал плагин, у кого были проблемы со стабильностью (подарки пропадали) - можете поставить новую версию плагина
Сейчас оно работает так же, как я сделал в твике на ios (скоро так же займусь им)
Сейчас оно работает так же, как я сделал в твике на ios (скоро так же займусь им)
❤7
E:Plugin
Ух ебать, марио в экстераграме (взял идею с exteradoom)
NesEMU.plugin
227.1 KB
NesEMU v1.0.0
NES (Dendy) эмулятор для экстераграм
Использование: нажать на любой файл .nes в любом чате / канале
Настройки: ❌
За идею + основу для реализации огромное спасибо @itsv1eds и плагину https://t.me/exteraPluginsSup/817
За фиксы вылетов на coloros и хуки открытия файлов в тг спасибо @itskotovski / @mishabotov
NES (Dendy) эмулятор для экстераграм
Использование: нажать на любой файл .nes в любом чате / канале
Настройки: ❌
За идею + основу для реализации огромное спасибо @itsv1eds и плагину https://t.me/exteraPluginsSup/817
За фиксы вылетов на coloros и хуки открытия файлов в тг спасибо @itskotovski / @mishabotov
❤6❤🔥1
E:Plugin
NesEMU.plugin
❤🔥4⚡1
E:Plugin
NesEMU.plugin
pack.py
444 B
Библиотеки эмуляции NES так же являются взаимозаменяемыми: если нужен более точный эмулятор, то его можно взять Nestopia или Mesen, самому скомпилировать и заменить в плагине
FceUMM тоже можете попробовать, но вероятнее всего работать он не будет (я изначально базировал свой плагин на нем)
Для упаковки билда в b64 используйте прикрепленный скрипт (ну или можно сделать свой, не принципиально)
Если кому нужен гайд для компиляции отпишите мне в ЛС, помогу
FceUMM тоже можете попробовать, но вероятнее всего работать он не будет (я изначально базировал свой плагин на нем)
Для упаковки билда в b64 используйте прикрепленный скрипт (ну или можно сделать свой, не принципиально)
Если кому нужен гайд для компиляции отпишите мне в ЛС, помогу
E:Plugin
pack.py
Если есть проблемы с тем, что там моя prebuilt .so - можно собрать ее самому
Для этого:
Нужен git и установленный ndk в path
Если все это есть, тогда достаточно:
если есть ошибки:
нужно изменить файл в папке
после чего нужно упаковать библиотеку по пути libs/arm64-v8a/libretro.so в lzma level 9 и b64 (это уже делает скрипт выше, достаточно просто передать ему путь к собранному .so), вычислить хеш и заменить все переменные в плагине
Для этого:
Нужен git и установленный ndk в path
Если все это есть, тогда достаточно:
git clone https://github.com/libretro/QuickNES_Core.git
cd QuickNES_Core
ndk-build APP_ABI=arm64-v8a V=1
если есть ошибки:
Android NDK: APP_PLATFORM not set. Defaulting to minimum supported version android-21.
Android NDK: Your APP_BUILD_SCRIPT points to an unknown file: jni/Android.mk нужно изменить файл в папке
jni/Android.mk на:LOCAL_PATH := $(call my-dir)
CORE_DIR := $(abspath $(LOCAL_PATH)/..)
include $(CORE_DIR)/Makefile.common
COREFLAGS := -DANDROID -D__LIBRETRO__ -Wall -Wno-multichar -Wno-unused-variable -Wno-sign-compare $(INCFLAGS) -DNO_UNALIGNED_ACCESS
GIT_VERSION := " $(shell git rev-parse --short HEAD || echo unknown)"
ifneq ($(GIT_VERSION)," unknown")
COREFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"
endif
include $(CLEAR_VARS)
LOCAL_MODULE := retro
LOCAL_SRC_FILES := $(SOURCES_CXX)
LOCAL_CXXFLAGS := $(COREFLAGS)
LOCAL_LDFLAGS := -Wl,-version-script=$(CORE_DIR)/link.T
include $(BUILD_SHARED_LIBRARY)после чего нужно упаковать библиотеку по пути libs/arm64-v8a/libretro.so в lzma level 9 и b64 (это уже делает скрипт выше, достаточно просто передать ему путь к собранному .so), вычислить хеш и заменить все переменные в плагине
❤2❤🔥2
E:Plugin
Если есть проблемы с тем, что там моя prebuilt .so - можно собрать ее самому Для этого: Нужен git и установленный ndk в path Если все это есть, тогда достаточно: git clone https://github.com/libretro/QuickNES_Core.git cd QuickNES_Core ndk-build APP_ABI=arm64…
Так же уточню, если у вас есть ошибка
вам в любом случае прийдется собирать самому по этому гайду, только команду
нужно поменять на
и в плагине на строке 517 заменить
в целом это должно помочь, но вряд ли эту ошибку вы вообще встретите (только если к примеру очень старый телефон)
embedded core is arm64-v8a only, device ABI: ...
вам в любом случае прийдется собирать самому по этому гайду, только команду
ndk-build APP_ABI=arm64-v8a V=1нужно поменять на
ndk-build APP_ABI=armeabi-v7a V=1и в плагине на строке 517 заменить
if "arm64-v8a" not in abis: на if "armeabi-v7a" not in abis:в целом это должно помочь, но вряд ли эту ошибку вы вообще встретите (только если к примеру очень старый телефон)
❤4❤🔥1
E:Plugin
NesEMU.plugin
Кста интересный факт: на этой основе можно написать эмуляторы вплоть до ps1/n64
То есть snes, gb, gbc, gba, sega megadrive и тд
Но надо ли оно вам?
То есть snes, gb, gbc, gba, sega megadrive и тд
Но надо ли оно вам?
👍9❤3🔥3❤🔥1
E:Plugin
А вот и gameboy color
Но вообще куча плагинов для разных эмуляторов такое себе, поэтому...
А не объединить ли мне все в один плагин?
Оставьте свое мнение насчет этого в коммах
А не объединить ли мне все в один плагин?
Оставьте свое мнение насчет этого в коммах
❤7❤🔥2👍2👎1
E:Plugin
NesEMU.plugin
Короче доведу его до ума, и сделаю поддержку:
NES
SNES
GBA
GB/GBC
Sega MegaDrive
А так же завезу сохранения и настройки
NES
SNES
GBA
GB/GBC
Sega MegaDrive
А так же завезу сохранения и настройки
🙏8❤2❤🔥2
E:Plugin
Короче доведу его до ума, и сделаю поддержку: NES SNES GBA GB/GBC Sega MegaDrive А так же завезу сохранения и настройки
Ладно, извините но у меня сил работать уже нет, сейчас результаты такие:
Nes - идеально
Gb/gbc - идеально
Sega megadrive - идеально
Snes - отлично
Gba - подлагивает, в целом играть можно
К сожалению сохранения я пока не реализовал, поэтому после выхода из эмулятора весь прогресс пропадает
Если хотите могу выпустить ещё сырую версию, но на слабых устройствах может лагать
Nes - идеально
Gb/gbc - идеально
Sega megadrive - идеально
Snes - отлично
Gba - подлагивает, в целом играть можно
К сожалению сохранения я пока не реализовал, поэтому после выхода из эмулятора весь прогресс пропадает
Если хотите могу выпустить ещё сырую версию, но на слабых устройствах может лагать
🙏8❤🔥2