Всем доброго здравия.
Предлагаю вашему вниманию программу для редактирования магазинов RF Online v2.2.3.2.
Сразу предвижу вопрос про велосипеды и отвечаю на него, зацените мой велосипед.
Написана:
#язык С++;
#IDE Rad Stuio 10.2.3
#требование по ОС: Windows Vista не ниже
#Вся логика программы лежит в dll "Proccess.dll"
#Требует инсталляции
Перед работой с программой прочитайте Справку.
В программе доступно 2 языка Англ, Рус
Используйте директории те что есть рядом с екзе-файлом дабы исключить вылеты, хотя такие не наблюдались.
Главная работа с программой сводиться только к редактированию серверного StoreList.dat после сохранения сгенерируется клиентский файл Store.new.dat. переменуйте в Store.dat закриптуйте и закиньте в клиент.
Также существует поиск Ctr+А, Jump Ctrl+G, добавление и удаление новых блоков и многое другое что описано в хелпе.
Доступные файлы для редактирования
StoreList.dat
Store.dat
NDStore.dat
MonsterCharacter.dat
Более полный функционал Описан в хэлпе с картинками на рус и англ языке.
для любителей хардкора выкладываю синхронизированные структуры клиент сервер в которой клиент расшифрован на 99,9%. думаю не составить труда подготовить их для классического DatEdit.
struct stStore
{
int m_dwIndex;
int xModel;
byte byRace;
char m_strStore_ShopName[32];
char m_strStore_Name[32];
char m_strStore_NPCcode[32];
byte m_nStore_trade;
WORD wUnk1;
float m_nStore_NPCangle;
int m_bSet_NPCangle;
float fNpcSize;
int m_nStore_LISTcount;
int nClientListID0;
int xClinetItemCode0;
int nClientListID1;
int xClinetItemCode1;
int nClientListID2;
int xClinetItemCode2;
int nClientListID3;
int xClinetItemCode3;
int nClientListID4;
int xClinetItemCode4;
int nClientListID5;
int xClinetItemCode5;
int nClientListID6;
int xClinetItemCode6;
int nClientListID7;
int xClinetItemCode7;
int nClientListID8;
int xClinetItemCode8;
int nClientListID9;
int xClinetItemCode9;
int nClientListID10;
int xClinetItemCode10;
int nClientListID11;
int xClinetItemCode11;
int nClientListID12;
int xClinetItemCode12;
int nClientListID13;
int xClinetItemCode13;
int nClientListID14;
int xClinetItemCode14;
int nClientListID15;
int xClinetItemCode15;
int nClientListID16;
int xClinetItemCode16;
int nClientListID17;
int xClinetItemCode17;
int nClientListID18;
int xClinetItemCode18;
int nClientListID19;
int xClinetItemCode19;
int nClientListID20;
int xClinetItemCode20;
int nClientListID21;
int xClinetItemCode21;
int nClientListID22;
int xClinetItemCode22;
int nClientListID23;
int xClinetItemCode23;
int nClientListID24;
int xClinetItemCode24;
int nClientListID25;
int xClinetItemCode25;
int nClientListID26;
int xClinetItemCode26;
int nClientListID27;
int xClinetItemCode27;
int nClientListID28;
int xClinetItemCode28;
int nClientListID29;
int xClinetItemCode29;
int nClientListID30;
int xClinetItemCode30;
int nClientListID31;
int xClinetItemCode31;
int nClientListID32;
int xClinetItemCode32;
int nClientListID33;
int xClinetItemCode33;
int nClientListID34;
int xClinetItemCode34;
int nClientListID35;
int xClinetItemCode35;
int nClientListID36;
int xClinetItemCode36;
int nClientListID37;
int xClinetItemCode37;
int nClientListID38;
int xClinetItemCode38;
int nClientListID39;
int xClinetItemCode39;
int nClientListID40;
int xClinetItemCode40;
int nClientListID41;
int xClinetItemCode41;
int nClientListID42;
int xClinetItemCode42;
int nClientListID43;
int xClinetItemCode43;
int nClientListID44;
int xClinetItemCode44;
int nClientListID45;
int xClinetItemCode45;
int nClientListID46;
int xClinetItemCode46;
int nClientListID47;
int xClinetItemCode47;
int nClientListID48;
int xClinetItemCode48;
int nClientListID49;
int xClinetItemCode49;
int nClientListID50;
int xClinetItemCode50;
int nClientListID51;
int xClinetItemCode51;
int nClientListID52;
int xClinetItemCode52;
int nClientListID53;
int xClinetItemCode53;
int nClientListID54;
int xClinetItemCode54;
int nClientListID55;
int xClinetItemCode55;
int nClientListID56;
int xClinetItemCode56;
int nClientListID57;
int xClinetItemCode57;
int nClientListID58;
int xClinetItemCode58;
int nClientListID59;
int xClinetItemCode59;
int nClientListID60;
int xClinetItemCode60;
int nClientListID61;
int xClinetItemCode61;
int nClientListID62;
int xClinetItemCode62;
int nClientListID63;
int xClinetItemCode63;
int nClientListID64;
int xClinetItemCode64;
int nClientListID65;
int xClinetItemCode65;
int nClientListID66;
int xClinetItemCode66;
int nClientListID67;
int xClinetItemCode67;
int nClientListID68;
int xClinetItemCode68;
int nClientListID69;
int xClinetItemCode69;
int nClientListID70;
int xClinetItemCode70;
int nClientListID71;
int xClinetItemCode71;
int nClientListID72;
int xClinetItemCode72;
int nClientListID73;
int xClinetItemCode73;
int nClientListID74;
int xClinetItemCode74;
int nClientListID75;
int xClinetItemCode75;
int nClientListID76;
int xClinetItemCode76;
int nClientListID77;
int xClinetItemCode77;
int nClientListID78;
int xClinetItemCode78;
int nClientListID79;
int xClinetItemCode79;
int nClientListID80;
int xClinetItemCode80;
int nClientListID81;
int xClinetItemCode81;
int nClientListID82;
int xClinetItemCode82;
int nClientListID83;
int xClinetItemCode83;
int nClientListID84;
int xClinetItemCode84;
int nClientListID85;
int xClinetItemCode85;
int nClientListID86;
int xClinetItemCode86;
int nClientListID87;
int xClinetItemCode87;
int nClientListID88;
int xClinetItemCode88;
int nClientListID89;
int xClinetItemCode89;
int nClientListID90;
int xClinetItemCode90;
int nClientListID91;
int xClinetItemCode91;
int nClientListID92;
int xClinetItemCode92;
int nClientListID93;
int xClinetItemCode93;
int nClientListID94;
int xClinetItemCode94;
int nClientListID95;
int xClinetItemCode95;
int nClientListID96;
int xClinetItemCode96;
int nClientListID97;
int xClinetItemCode97;
int nClientListID98;
int xClinetItemCode98;
int nClientListID99;
int xClinetItemCode99;
int nClientListID100;
int xClinetItemCode100;
int nClientListID101;
int xClinetItemCode101;
int nClientListID102;
int xClinetItemCode102;
int nClientListID103;
int xClinetItemCode103;
int nClientListID104;
int xClinetItemCode104;
int nClientListID105;
int xClinetItemCode105;
int nClientListID106;
int xClinetItemCode106;
int nClientListID107;
int xClinetItemCode107;
int nClientListID108;
int xClinetItemCode108;
int nClientListID109;
int xClinetItemCode109;
int nClientListID110;
int xClinetItemCode110;
int nClientListID111;
int xClinetItemCode111;
int nClientListID112;
int xClinetItemCode112;
int nClientListID113;
int xClinetItemCode113;
int nClientListID114;
int xClinetItemCode114;
int nClientListID115;
int xClinetItemCode115;
int nClientListID116;
int xClinetItemCode116;
int nClientListID117;
int xClinetItemCode117;
int nClientListID118;
int xClinetItemCode118;
int nClientListID119;
int xClinetItemCode119;
int nClientListID120;
int xClinetItemCode120;
int nClientListID121;
int xClinetItemCode121;
int nClientListID122;
int xClinetItemCode122;
int nClientListID123;
int xClinetItemCode123;
int nClientListID124;
int xClinetItemCode124;
int nClientListID125;
int xClinetItemCode125;
int nClientListID126;
int xClinetItemCode126;
int nClientListID127;
int xClinetItemCode127;
int nClientListID128;
int xClinetItemCode128;
int nClientListID129;
int xClinetItemCode129;
int nClientListID130;
int xClinetItemCode130;
int nClientListID131;
int xClinetItemCode131;
int nClientListID132;
int xClinetItemCode132;
int nClientListID133;
int xClinetItemCode133;
int nClientListID134;
int xClinetItemCode134;
int nClientListID135;
int xClinetItemCode135;
int nClientListID136;
int xClinetItemCode136;
int nClientListID137;
int xClinetItemCode137;
int nClientListID138;
int xClinetItemCode138;
int nClientListID139;
int xClinetItemCode139;
int nClientListID140;
int xClinetItemCode140;
int nClientListID141;
int xClinetItemCode141;
int nClientListID142;
int xClinetItemCode142;
int nClientListID143;
int xClinetItemCode143;
int nClientListID144;
int xClinetItemCode144;
int nClientListID145;
int xClinetItemCode145;
int nClientListID146;
int xClinetItemCode146;
int nClientListID147;
int xClinetItemCode147;
int nClientListID148;
int xClinetItemCode148;
int nClientListID149;
int xClinetItemCode149;
int nClientListID150;
int xClinetItemCode150;
int nClientListID151;
int xClinetItemCode151;
int nClientListID152;
int xClinetItemCode152;
int nClientListID153;
int xClinetItemCode153;
int nClientListID154;
int xClinetItemCode154;
int nClientListID155;
int xClinetItemCode155;
int nClientListID156;
int xClinetItemCode156;
int nClientListID157;
int xClinetItemCode157;
int nClientListID158;
int xClinetItemCode158;
int nClientListID159;
int xClinetItemCode159;
int nClientListID160;
int xClinetItemCode160;
int nClientListID161;
int xClinetItemCode161;
int nClientListID162;
int xClinetItemCode162;
int nClientListID163;
int xClinetItemCode163;
int nClientListID164;
int xClinetItemCode164;
int nClientListID165;
int xClinetItemCode165;
int nClientListID166;
int xClinetItemCode166;
int nClientListID167;
int xClinetItemCode167;
int nClientListID168;
int xClinetItemCode168;
int nClientListID169;
int xClinetItemCode169;
int nClientListID170;
int xClinetItemCode170;
int nClientListID171;
int xClinetItemCode171;
int nClientListID172;
int xClinetItemCode172;
int nClientListID173;
int xClinetItemCode173;
int nClientListID174;
int xClinetItemCode174;
int nClientListID175;
int xClinetItemCode175;
int nClientListID176;
int xClinetItemCode176;
int nClientListID177;
int xClinetItemCode177;
int nClientListID178;
int xClinetItemCode178;
int nClientListID179;
int xClinetItemCode179;
int nClientListID180;
int xClinetItemCode180;
int nClientListID181;
int xClinetItemCode181;
int nClientListID182;
int xClinetItemCode182;
int nClientListID183;
int xClinetItemCode183;
int nClientListID184;
int xClinetItemCode184;
int nClientListID185;
int xClinetItemCode185;
int nClientListID186;
int xClinetItemCode186;
int nClientListID187;
int xClinetItemCode187;
int nClientListID188;
int xClinetItemCode188;
int nClientListID189;
int xClinetItemCode189;
int nClientListID190;
int xClinetItemCode190;
int nClientListID191;
int xClinetItemCode191;
int nClientListID192;
int xClinetItemCode192;
int nClientListID193;
int xClinetItemCode193;
int nClientListID194;
int xClinetItemCode194;
int nClientListID195;
int xClinetItemCode195;
int nClientListID196;
int xClinetItemCode196;
int nClientListID197;
int xClinetItemCode197;
int nClientListID198;
int xClinetItemCode198;
int nClientListID199;
int xClinetItemCode199;
byte Npc_Class0;
byte Npc_Class1;
byte Npc_Class2;
byte Npc_Class3;
byte Npc_Class4;
byte Npc_Class5;
byte Npc_Class6;
byte Npc_Class7;
byte Npc_Class8;
byte Npc_Class9;
char szNpcMsg[6];
int m_nPriceSet;
int m_nItemUpCode;
int m_nLimit_Listcount;
int xListID0;
int xItemCode0;
int nCount0;
int xListID1;
int xItemCode1;
int nCount1;
int xListID2;
int xItemCode2;
int nCount2;
int xListID3;
int xItemCode3;
int nCount3;
int xListID4;
int xItemCode4;
int nCount4;
int xListID5;
int xItemCode5;
int nCount5;
int xListID6;
int xItemCode6;
int nCount6;
int xListID7;
int xItemCode7;
int nCount7;
int xListID8;
int xItemCode8;
int nCount8;
int xListID9;
int xItemCode9;
int nCount9;
int xListID10;
int xItemCode10;
int nCount10;
int xListID11;
int xItemCode11;
int nCount11;
int xListID12;
int xItemCode12;
int nCount12;
int xListID13;
int xItemCode13;
int nCount13;
int xListID14;
int xItemCode14;
int nCount14;
int xListID15;
int xItemCode15;
int nCount15;
};
Хороший софт только проблема в актуальности...
Если бы не было парсера тогда этот софт был бы лучшим а так он не даст возможностей exel формул и всех exel преимуществ. ИМХО.
А так ставлю благодарность за старания и потерянное время.
Думаю тебе стоит лучше создать локальную админ панель со всем функционалом...
К примеру создание гильдии в базу.
Редактирование ламп и т.д.
Спс за ответ! Зачем В эксельку? - Весь функционал тут прямо в проге. Прочитайте Хелп там все расписано и разжевано, в проге есть даже выгрузка отдельных столбцов и загрузкой обратно, к примеру для загрузки для удобства наименований прямо в сторе.дат ну и т д.
пример:
Запусти два экземпляра программы отновременно.
в 1й открой (Открыть как) ndstore выбери столбец и сохрани его чере меню или контекстное меню.
во 2й открой (Открыть как) store выдели столбец и тем же меню загрузи затем сохрани.
пc: Описывать весь функцинал тут не имеет смысла все есть в встроенном хелпе с картинками и пояснениями
Добавлено через 3 часа 6 минут
Прошу прощения опечатка в главном посте.
Цитата:
Также существует поиск Ctr+А
так верно
Цитата:
Также существует поиск Ctr+F
Приношу извинения.
Да и в догонку @Simple Dream на счет парсера, как ни крути это комерческий продукт хоть и в шаре есть, мой продукт имеет лицензию free и разработан специально для www.rf-cheats.ru.
Последний раз редактировалось skymd; 13.12.2020 в 10:47.
Причина: Добавлено сообщение
Да и в догонку @Simple Dream на счет парсера, как ни крути это комерческий продукт хоть и в шаре есть, мой продукт имеет лицензию free и разработан специально для www.rf-cheats.ru.
у phpшной версии парсера наступил end of sale и трирог собственноручно выложил это на своём же форуме