[ Обновленные темы · Новые сообщения · Участники · Поиск · RSS ]
Результаты поиска
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Что бы получить эту возможность, нужно раскодировать все контейнеры, ведь для каждого контейнера нужен строковой ресурс, а при изменении таблицы строк, меняются все адреса строковых ресурсов, что приведет к неминуемой ошибки.

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
создаёшь копию текущего состояния... ну ну.... копию чего? карты целиком? вместе с текстурными данными. и с hmap данными...

К примеру я редактирую слои, и потянул не так. По твоему прога должна будет сохранить всю карту при каждом моем клике? Тем более вернуть состояние это значит загрузить все с такими же параметрами что сложно.

Есть другой вариант, создать Сотни классов состояний... сохранять их в стек... что по моему равносильно написанию нового редактора....


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Не майтесь ерундой. Есть форум, есть разделы форума, и раздел Флудилка. где будет хоть тысячи сообщений. Какое вам дело до них? Все что не по делу кидайте в этот раздел и нет проблем.

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
хммм хорошая идея, я вкурил cool

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
хммм странно, видно я где-то намудрил... вообще удаление вокселей там по цветовой палитре используется. У тебя режим экрана в 32 bit?

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Все ясно, забыл предупредить что поксель имеет предел объема.

Т.е. максимальный куб можно создать 25x25x25
Плоскость же можно создавать 30x1x30

Но нельзя создавать 30x25x30 так как игра не рассчитана на такие размеры


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Ну-с продолжим!!!
Quote (AlexBond)
Одна лишь проблема, нужно придумать способ перехвата. Или это сделать прямо в игре, через вируальный процесс. Или сделать перехватывающую msvcr71.dll, которая и будет обрабатывать это дело...

Так как множества exe версий имеют защиту или разный код, то нужно поискать способ подгрузки моего перехватчика через msvcr71.dll...

Пока других идей нет...

Все желающие помочь проекту, пишите какие карты добавить в следующую версию.

Список карт:

List of maps v1.085:

1. Alien Juice Suckers( by W3D)
2. Atlantis Training Facility( by W3D)
3. A Bridge To Far( by Armageddon)
4. A Good Nights Sleep( by W3D)
5. A Leek in a Vegetable( by W3D)
6. A Quick Fix( by W3D)
7. Alien Invasion( by Martin)
8. ALPHA353 B( by GrenadeX)
9. Arctic Roper( by AlexBond)
10. Bad BnG Roper 6( by GrenadeX)
11. Banana Cup BnG( by GrenadeX)
12. Beefcake Breakfast Brawl( by W3D)
13. BiG Mega Tower( by GrenadeX)
14. BIG TREE Lands ( by GrenadeX)
15. Check Mate( by AlexBond)
16. Chess( by AlexBond)
17. Christmas Tree( by AlexBond)
18. Cocons( by AlexBond)
19. Costa Del Danges( by W3D)
20. Crate Britain( by W3D)
21. Crazy Roads( by AlexBond)
22. Crop Circle( by W3D)
23. Cubos 3( by AlexBond)
24. Cubos 5( by AlexBond)
25. D-Day( by W3D)
26. Death Staff( by AlexBond)
27. Earn Your Crust( by W3D)
28. Eiffel Tower( by AlexBond)
29. Falling For You( by W3D)
30. Farm Trouble( by Flamar)
31. Final War( by AlexGT)
32. Find Fox( by AlexBond)
33. Forest( by AlexBond)
34. Gold Island( by AlexGT)
35. Grave Danger( by W3D)
36. Hell Coming RoperX( by GrenadeX)
37. Helter Skelter( by W3D)
38. Hide and Peek( by W3D)
39. High Stakes( by W3D)
40. Ice, Ice, Maybe( by W3D)
41. In Space No-One Can Hear You Clean( by W3D)
42. Island Vilage 2( by AlexBond)
43. JetPack Challenge 1( by W3D)
44. JetPack Challenge 2( by W3D)
45. Lunar Stemps 6( by GrenadeX)
46. Motorbike( by AlexBond)
47. Mountains( by AlexBond)
48. Movie Mayhem( by W3D)
49. Nobody Rides For Free( by W3D)
50. Orange Island( by GrenadeX)
51. Pirates Seawar( by FinnishWorm)
52. Plaice Holder( by W3D)
53. Pleace Not More Island( by W3D)
54. Psyduck Island( by AlexBond)
55. Ragnarok and Roll( by W3D)
56. Remagen( by Lucas)
57. Return to Chateau Assassin( by W3D)
58. Roping Stadium( by AlexBond)
59. Sahara( by AlexBond)
60. Schools In For Summer( by W3D)
61. Shiver Me Timbers( by W3D)
62. Shotgun Callenge 3( by W3D)
63. Showdown at the OK( by W3D)
64. Snooker( by AlexBond)
65. Snow( by AlexBond)
66. South Park( by AlexBond)
67. Space Stations 2b( by GrenadeX)
68. Spiders( by AlexBond)
69. Stars( by AlexBond)
70. Statue Of Liberty( by AlexBond)
71. Submission( by W3D)
72. Super Sheep Challenge( by Remake)
73. Take My Cherry( by W3D)
74. The Driving Range( by W3D)
75. The Mighty Kong( by W3D)
76. Thee Village Trouble( by W3D)
77. Titanic( by W3D)
78. Titanic 2( by GrenadeX)
79. T-Rex( by AlexBond)
80. Trial Of The Damned( by W3D)
81. TriBanana Holly( by AlexBond)
82. Victory Or Death( by Nezon)
83. When Annelids Collide( by W3D)
84. Worms Monkey Island( by GrenadeX)
85. Zodd( by AlexBond)

Список карт из w3d:
**********************
50 new Maps...
************

1. Aliens Planet (by AlexBond)
2. Atoms (by Mambaczarna)
3. Aztec Temple (by PlaiceHolder)
4. Boeing 747-400 (by PlaiceHolder)
5. Business Jets (by PlaiceHolder)
6. Church of The Hell (by FinnishWorm)
7. Crazy Roads (by AlexBond)
8. Cubos 9 (by PlaiceHolder)
9. Deathmatch CS (by Konter)
10. Dinos Island (by GrenadeX)
11. DNA (by AlexBond)
12. Earthworm Jim (by AlexBond)
13. F-15 Eagle (War) (by PlaiceHolder)
14. Fall of the Warlords (by AlexBond)
15. Fruits (by AlexBond)
16. Giant's Garden (by FinnishWorm)
17. Gorillaz Island (by AlexBond)
18. Hell Zombies (by AlexBond)
19. Hiroshima Disaster (by PlaiceHolder)
20. House (by FinnishWorm)
21. Kill monkey 4 (by GrenadeX)
22. LAPUTA (by PlaiceHolder)
23. Lunar Stemps X12 (by GrenadeX)
24. Lunar Stemps X13 (by GrenadeX)
25. Lunar Stemps X14 (by GrenadeX)
26. Lunar Stemps X15 (by GrenadeX)
27. Lunar Stemps X16 (by GrenadeX)
28. Lunar Stemps X17 (by GrenadeX)
29. Lunar Stemps X18 (by GrenadeX)
30. Lunar Stemps X19 (by GrenadeX)
31. Lunar Stemps X20 (by GrenadeX)
32. Lunar Stemps X21 (by GrenadeX)
33. Oh My Tetris (by FinnishWorm)
34. Pirate Castle (by PlaiceHolder)
35. Seekery Maybe (by GrenadeX)
36. Skatepark (by FinnishWorm)
37. Ski Jump (by FinnishWorm)
38. Skyscraper (by FinnishWorm)
39. Sonic The Hedgehog (by AlexBond)
40. Star Wars (by Mambaczarna)
41. The Army of the Dead (by AlexBond)
42. They Sphinx It's All Over (by AlexBond)
43. Tree ICE Trouble (by FinnishWorm)
44. Turtle Island (by FinnishWorm)
45. Veranda (by PlaiceHolder)
46. War of the Hotels (by FinnishWorm)
47. Wild West (by FinnishWorm)
48. World On Three Turtles (by FinnishWorm)
49. Worm Temple 4 (by FinnishWorm)
50. XX Palm island XX (by GrenadeX)


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Что происходит после нажатия кнопки run
1. создаем папку Data/Temp/
2. копируем /Data/MapPacks/Scripts_W3Dv1085.xml -> /Data/Temp/Scripts.xml
3. обновляем файл launcher.cfg
4. записываем данные в реестр
5. запускаем \WORMS 4 MAYHEM.EXE через CreateProcess
6. если был аспект, то:
ждем 10 секунд, выделяем память в процессе
VirtualAllocEx. Записываем туда асемблерный код вычесления аспекта WriteProcessMemory.
Меняем адресс функции glLoadMatrixf(вроде бы) на мой адресс через WriteProcessMemory
код ассемблера такой
var asmcode: array[0..25] of byte = (
($8b),($44),($24),($04), //mov eax,[esp+4]
($d9),($40),($14), //fld [eax+14]
($c7),($00),($cd),($cc),($cc),($3f), //mov [eax],$3fcccccd
($d8),($30), //fdiv [eax]
($d9),($18), //fstp [eax]
($50), //push eax
($ff),($15),($18),($64),($77),($00), //call dword ptr [$00776418]
($c2),($04)); //ret $0004

7. Если включены w3d текстуры, то:
проверяем наличие библиотеки w3dmapper.dll
Выделяем память в процессе для подгрузки этой библиотеки.
Записываем имя нашей библиотеки в память процесса.
Узнаем адресс LoadLibraryA в процессе через GetProcAddress
Создаем ветвь в процессе CreateRemoteThread
Ветвь загружает библиотеку в процесс.
ждем 5 секунд
Получаем базовый адресс загруженной библиотеки через GetModuleAdress
Узнаем абсолютный адресс нашей функции обработчика TextureLoader. И прописываем его на вызов функции fopen библиотеки msvcr71.dll в процессе.
Ждем секунду.
8. Завершаем процесс.

Далее уже работает сам обработчик TextureLoader библиотеки w3dmapper.dll:
1. Берем имя файла
2. Если режим ReDirect Сверяем имя с .txt
2.1. Если он txt, то подменяем имя файла на Data/Temp/w3dt.txt
3. открываем файл через fopen библиотекой msvcr71.dll
3.1. Если он открылся то проверяем есть ли такой .xml
3.2. Если есть то проверяем есть ли такой .xan
3.3. Узнаем что грузится карта.
3.3.1. Очищаем папки Data/Temp/Custom/ и Data/Temp/ThemeCamelot/
3.3.2. Проверяем есть ли файл .w3dt
3.3.2.1. Создаем папки Data/Temp/Custom/ , Data/Temp/Custom/Bank01 и Data/Temp/ThemeCamelot/
3.3.2.2. Вызываем функцию MakeTextures . которая копирует текстуры во временные папки по связным именам и создает файл Data/Temp/w3dt.txt
3.3.2.3. Включаем режим ReDirect.


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Итак, нужно как-то создать клон-пересылку библиотеки msvcr71.dll в которой будет моя функция TextureLoader вместо fopen

...

Спрошу на WASM.ru может помогут люди...


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Quote (Герыч)
Вопрос, что такое аспект?

Аспект это соотношение ширины к высоте.

Вот наглядный пример

Quote (SW_Krash)
Эм... у меня один вопрос я так понимаю что прогу считывающую заданные перменные из памяти игры и записывающая их в txt не так уж сложно??? или тут малость не то???

прогу ...щую и ...щая не так уж сложно ...
Где ж ты учился мальчик =) Русский язык совсем хромает...


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Я тут вспомнил, я уже делал пересылку библиотеки. Ее просто создаешь в fasm как пустышку с адрессами. И можно заменить оригинальную. Вопрос лишь в том, создать две библиотеки, или одну...

Вариант первый

Worms 4 -> fopen -> msvcr71.dll -> TextureLoader -> w3dmapper.dll -> fopen -> msvcr72.dll

Все это может замедлить процесс...

Вариант два

Worms 4 -> fopen -> msvcr71.dll -> TextureLoader -> fopen -> msvcr72.dll

Нынешний вариант

Worms 4 -> fopen -> TextureLoader -> w3dmapper.dll -> fopen -> msvcr71.dll

Оригинал

Worms 4 -> fopen -> msvcr71.dll


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Череп появляется во всех случаях когда эмиттер не верно создан. Имени его библиотеки нету в базе данных

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Делать это никто не будет, я бы взялся. лишь если ты найдешь толковую модель человека в разрезе. Но вот проблема в том что "кишки" сделать не получится. тунельи делать с покселей очень сложно...

У меня была такая идея, сделать хотя бы череп, даже модель нашел, но так и не сделал....


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Большой так что? увеличивать и уменьшать не умеем? Выделяем корень модели, держим ctrl и изменяем размер мышкой

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Пришел... почитал... открыл исходники.... порылся... вспомнил почему бросил... закрыл... ушел...

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Всем привет, есть идея сделать карточные карты. Я лично никогда не делаю карты для w4 только для w3d, но тут такое дело, в w3d текстуры нельзя вставлять свои, а в w4 можно, вот и решил сделать карту или несколько.

Ищу команду которая проявит инициативу в помощи создания текстур для карт.
Хотелось бы сделать карты под стиль worms было бы прикольно. ну а общий вид карты будет такого плана:



Я думаю идея очень даже прикольная. Правда нужно сделать 55 текстур или 35.
Если мастера Фотошопа не найду, сделаю стандартные карты

Кто ЗА?

Для разработки придется улучшать редактор карт, =) чтобы можно было подгружать папку W3DT


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Quote (firsacho)
Алекс... А как можно подтянуть текстуры под поксель?

Это просто делается, я даже вроде тутариалку делал
http://w3d.wiki-site.com/index.p....0.B3_15


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Потому что редактор еще не имеет этой возможности, я в скором времени добавлю эту функцию.

 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8

Видео моего друга фина. Мощное оружие =)


 
AlexBond
Админы
Сообщений: 1042
Реп: 106 / Инв: 8
Quote (Vlad)
Текстура чтобы наносилась на весь объект кроме тех покселей которые были покрашены на текстуру 0
Потому что как мы будем красить объект по одному покселю это же очень долго!!!

Это делается командой через Replacer

(Texture=21>>13)

меняет 21-ю текстуру на 13-ю во всех покселях

Quote (Sergey)
Я предлагаю:
1)добавить инструмент "стёрка" а то каждый раз приходится лазить и сбрасывать нужную текстуру, и прописывать пустую строку
2)Увеличить максимальное число покселей с 30 до хотя бы 50
3)Возможность создания круглых объектах(отдельная кнопка, в сглажке)

1)Стерка... хорошая идея, подумаю
2)Увеличить нельзя, игра вылетает
3) процесс сложен, круглые объекты создаются лишь с полной сглажкой, и размером покселя 2x2


 
Поиск: