Для игры Гонка. Прога (замена машин - rename files - c Откатом замены)
p.s. Сколько будет стОить доделать прогу ? Или проще с нуля написать ?
Вообщем:
Доделать простенькую прожку нужно. (в игре (гонки) - Race Driver GRID ENG 1.3
Временно менять папки Автомобилей - один автомобиль на другой). Чтобы в игре можно было ехать на подменённой машине.
___
В игре есть ограничения - не все машины могут ездить на любых трассах.
Опытным путём выяснилось что - путём замены каталогов (и переименование файлов) - решает эту задачу.
Нужно доделать GUI прожку, чтобы я мог менять авто и Отменять замены - Быстро и наглядно.
Менять нужно будет либо 1 авто на другое, либо чаще - сразу несколько авто на несколько других авто.
К одному из модов к игре, шла прога - гуи. Которая практически выполняет задачу, которая мне нужна.
Прога - временно заменяет файлами мода - оригинальные файлы которые в игре.
Перед заменой оригинальных файлов игры - прога переименовывает их
(как я понял - в конце каждого файла делает дополнительное имя).
Потом когда нажимаешь Отмена - она всё возвращает обратно.
Прога называется:
GENERIC MOD ENABLER V2.6.157 (JSGME) - МЕНЕДЖЕР МОДОВ
https://gamer-mods.ru/forum/5-2120-1
(по ссылке - описание краткое, скрин - там можно скачать её).
Слева помещаются моды (1 мод = 1 папка с файлами).
Когда в проге нажали на стрелку "вправо" - название этого мода переходит вправо, и
сделался беккап оригинальных файлов игры, и заменились файлы игры на файлы - мода.
На гуи интерфейсе - очень удобно видеть, какой мод сейчас активен.
p.s. если слева подвести мышкой на название мода - выскакивает описание текстовое,
которое можно самому сделать, если поместить файл Opisanie.JSGME в папку с модом.
___
Как я понял, на базе этой идеи (этой прожки - JSGME)
Один программер сделал более расширенную прожку:
https://github.com/mguegan/ovgme - OvGME Enhanced Generic game Mod Enabler and manager.
А это значит что можно взять эти "СырцЫ" - и дописать под мои хотелки , и получить денюжку.
Чем не устраивают эти программы сейчас ?
Тем что - они меняют Одноимённые папки и файлы. А мне нужно менять Одну машину, на другую.
Имена файлов там разные.
p.s. Машин около 50 штук.
лежат по такому пути: T:\Games\Auto\Race Driver GRID ENG 1.3\cars\
Здесь я выложил файл из 4 машин, чтобы можно было скачать и на них тренироваться:
(215 мегабайт) https://wdfiles.ru/ba09066
________
Вообщем, вот такие Хотелки от программы требуются:
1) Я запустил прожку с гуи интерфейсом.
2) В проге я создал профиль с названием - Меняю sky (Nissan Skyline GT-R Z-Tune) на 911 (Porsche 911 GT3 RSR) ,
и Меняю bmw (BMW 320SI) на cor (Toyota Corolla GT-S)
3) Зашёл в профиль (как в папочку или что то подобное) - В профиле я вижу список машин (50 штук)
4) Список машин желательно видеть не так: sky , 911 а так: sky (Nissan Skyline GT-R Z-Tune) , 911 (Porsche 911 GT3 RSR) и так далее...
p.s. Вы можете внести пару, тройку названий вручную, а остальные я сам могу вбить - в какой-нить файл, где будут эти записи храниться.
тут были названия: https://ego.fandom.com/wiki/GRID_Vehicles
5) Нужно чтобы я смог навести мышкой на машину в списке машин , и через секунд 5-7 - появлялось автоматом картинка с этой машиной (превьюшка).
ну или маленькая кнопочка рядом с название машины , кликнув на которую - открывается превьюшка (картинка)
Картинку прога может брать отсюда (в каждой папке с машиной): (которые я туда положу сам)
T:\Games\Auto\Race Driver GRID ENG 1.3\MODSZ\[Car] - (911) - Porsche 911 GT3 RSR\cars\911\preview.jpg
T:\Games\Auto\Race Driver GRID ENG 1.3\MODSZ\[Car] - (lac) - Chevrolet Lacetti\cars\lac\preview.jpg
T:\Games\Auto\Race Driver GRID ENG 1.3\MODSZ\[Car] - (nsx) - Honda NSX-R\cars\nsx\preview.jpg
и так далее.
Это не оригинальная папка с машинами. А дублирующая. Это связано с тем что - Так нужно для моей ещё одной проги
в будущем (Скин-Генератор для авто). И Перемещение файлов и папок на одном разделе - Гораздо быстрее, нежели копирование.
6) Потом в профиле (Preset , предустановка) я выбрал (активировал галочкой или ещё как) - машину sky (Nissan Skyline GT-R Z-Tune) и потом выбрал машину,
На Какую я её буду менять - это 911 (Porsche 911 GT3 RSR)
7) Потом я выбрал в этом же профиле ещё одну машину: bmw (BMW 320SI) и потом выбрал машину,
На Какую я её буду менять - это cor (Toyota Corolla GT-S)
8) Всё. В профиле есть 2 задачи. Сохнанил профиль как файл (любой формат - ini, txt , lst и другое...)
Чтобы он в проге был всегда (и после закрытия проги сохранялся).
9) Потом в проге - в этом профиле: Нажал кнопку - Заменить.
10) Прога сначала переименовала вторую (оригинальную - которая в папке с игрой) машину ( 911 ) примерно так:
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\911
на
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\911ORIGINAL
11) Потом прога создала каталог:
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\911
12) Потом ПЕРЕМЕСТИЛА (перемещение занимает доли секунды, нежели копирование) сюда:
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\911
содержимое первой машины (из дублирующего каталога с машинами) , всё что в этом каталоге:
T:\Games\Auto\Race Driver GRID ENG 1.3\MODSZ\[Car] - (sky) - Nissan Skyline GT-R Z-Tune\cars\sky\
10) И потом переименовала все файлы в каталоге:
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\911
(заменяя в именах файлов: sky на 911 )
11) Потом прога создала пустые Флаг файлы: moved.txt в таких папках:
T:\Games\Auto\Race Driver GRID ENG 1.3\MODSZ\[Car] - (sky) - Nissan Skyline GT-R Z-Tune\cars\sky\
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\sky
T:\Games\Auto\Race Driver GRID ENG 1.3\MODSZ\[Car] - (911) - Porsche 911 GT3 RSR\cars\911\
T:\Games\Auto\Race Driver GRID ENG 1.3\cars\911
( эти флаг файлы мне понадобятся для проги Скин-Генератора в будущем - чтобы Скин-Генератор - не работал с этими
машинами, пока они находятся в состоянии Замены )
12) Потом прога делает то же самое с машинами в пуктре "7" , меняет bmw (BMW 320SI) на cor (Toyota Corolla GT-S)
13. В гуи проге я должен видеть - Какая папка (машина) - сейчас на какую заменена.
Желательно в формате таком: sky (Nissan Skyline GT-R Z-Tune) to 911 (Porsche 911 GT3 RSR)
Мне почему то представился вид - Explorer Windows примерно. В виде дерева.
Профиль - это как папка.
А машины - что то типа файлов.
И да. Если будет активно 3, 5 профилей с разными машинами - то очень желательно видеть в гуи прожке ,
сразу - как в Explorer Windows примерно (или ещё как) - В каком профиле, какие машины сейчас заменены.
Это наверное прилично бы экономило время для новых замен.
И да. Про дубликаты (пересечения). Желательно чтобы прога проверяла флаг файл moved.txt (или ещё как)
- перед тем как сделать замену. Если какая либо из двух машин (Та которую хотим заменить. Или та На которую хотим заменить)
- уже используется в замене - то Программа об этом предупреждала бы Ошибкой или В идеале говорила бы что - Эта машина уже Использована в Замене.
14. Если я нажал кнопку - Вернуть Обратно, то прога гуи делает - Обратный процесс.