![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Все жалуются что AI во fheroes2 очень глупый и это действительно так потому что он очень примитивный.
Поэтому я решил что надо сделать для fheroes2 новый AI, но поскольку каким должен AI для Heroes2 я не знаю. Я решил что когда не знаешь как это придумать надо спросить кого-нибудь кто знает как устроен AI в HMM2 рассказать как он устроен. И я попросил Швейка с форума Green Dragon рассказать мне как устоен AI в НMM2 И он мне рассказал следующее Цитата("Швейк") Я открыл Heroes2.exe в IDA сперва нажал сделать анализ, а затем нажал Produce File -> Сreate С file
а потом Produce File -> Сreate C header file И IDA сделала для меня исходники Heroes2 ![]() Вот они. HEROES2W_Debug H.zip HEROES2W_Debug С.zip И первое что я обнаружил в файлах HEROES2W_Debug.h и HEROES2W_Debug.С Это название как называется AI в Heroes2 он называется philAI и в оригинальных исходниках он лежал в в файле PHILAI.CPP и этот AI сделал Phil ![]() не знает что делать, он должен выдавать такое сообщение: Код "AI encountered object type %d and doesn't know how to deal with it. Tell Phil"; Но свои контакты почему то Phil указать забыл ![]() -------------------- |
|
|
![]()
Сообщение
#2
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20602 раза ![]() |
Цитата Но свои контакты почему то Phil указать забыл Потому что в том калифорнийском офисе, я думаю, все и так знали, кто где сидит)Цитата И это очень жаль, потому что если бы он их указал тогда его можно было бы просто спросить какую команду надо куда писать Двадцать лет прошло вообще-т)
|
|
|
![]()
Сообщение
#3
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Хммм...
![]() И он сказал мне что я не совсем понял ![]() Цитата("James Koppel") Anyway, here's the main important thing I can tell you If you look at the decompiled Heroes II source code, you will have to cease all work on fheroes2 Otherwise, fheroes2 will stop being free Because that's how the law around reverse-engineering works The best you can do is get someone else to look at the decompiled code, and then write a description about how it works This is called a "Chinese wall" This isn't me telling you you can't look at our source. It's the law Это про че это он? -------------------- |
|
|
![]()
Сообщение
#4
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20602 раза ![]() |
Условно про то, что использование восстановленных алгоритмов из декомпилированного кода, типа, незаконно.
На самом-то деле это еще надо доказать, учитывая, что вообще-то в героях они не то чтобы ноу-хау. |
|
|
![]()
Сообщение
#5
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Условно про то, что использование восстановленных алгоритмов из декомпилированного кода, типа, незаконно. На самом-то деле это еще надо доказать, учитывая, что вообще-то в героях они не то чтобы ноу-хау. Мда... А еще он мне сказал что-то вроде поскольку fheroes2 GPL то в любой момент Andrey Afledinov может прийти и на меня наругаться и запретить его изменять и делать на нем сборки потому что это он владелец движка. Цитата("James Koppel") Also, fheroes2 is GPL'd, meaning that it is owned by a specific person (not sure who) I work in the same building as Richard Stallman, the founder of GNU and the creator of GPL. I get to hear about this several times a day Это что действительно так? -------------------- |
|
|
![]()
Сообщение
#6
|
|
![]() 😸🧡✊✌️ Сообщений: 16 424 Спасибо сказали: 3294 раза ![]() |
Нет. Я не знаю, как нужно извратить суть GPL, чтобы говорить такое.
-------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#7
|
|
![]() допустим, мяў Сообщений: 24 091 Спасибо сказали: 13396 раз ![]() |
Поэтому я решил что надо сделать для fheroes2 новый AI, но поскольку каким должен AI для Heroes2 я не знаю. Этим сказано чуть больше, чем всё...И IDA сделала для меня исходники Heroes2 Она не сделала исходники - она дизассемблировала код.И первое что я обнаружил в файлах HEROES2W_Debug.h и HEROES2W_Debug.С А, то есть у тебя есть исходники - и ты дизассемблируешь код, чтобы их лучше понять?Это название как называется AI в Heroes2 он называется philAI и в оригинальных исходниках он лежал в в файле PHILAI.CPP и этот AI сделал Phil ![]() Ну что же, как говорят - у каждого додика - своя методика... -------------------- Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская) |
|
|
![]()
Сообщение
#8
|
|
![]() Зануда Сообщений: 2 237 Спасибо сказали: 2895 раз ![]() |
Цитата Also, fheroes2 is GPL'd, meaning that it is owned by a specific person (not sure who) Обладатель любой копии програмы под GPL считается её полноправным владельцем. В этом вся суть GPL. |
|
|
![]()
Сообщение
#9
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Поэтому я решил что надо сделать для fheroes2 новый AI, но поскольку каким должен AI для Heroes2 я не знаю. Этим сказано чуть больше, чем всё...И IDA сделала для меня исходники Heroes2 Она не сделала исходники - она дизассемблировала код.Ну вообще то IDA Швейку создала исходники на С а не на ассемлере только почему то одним файлом. Но зато он понятный, а на ассемблере всякие MOV EAX и с ними Швейку трудно понять что AI делает. -------------------- |
|
|
![]()
Сообщение
#10
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Цитата Also, fheroes2 is GPL'd, meaning that it is owned by a specific person (not sure who) Обладатель любой копии програмы под GPL считается её полноправным владельцем. В этом вся суть GPL. Не знаю вот он мне опять утром написал в Hangouts Цитата("James Koppel") I don't know what DF2 is. What did they say? Here's the story: https://www.eff.org/issues/coders/reverse-engineering-faq Also, FYI: https://en.wikipedia.org/wiki/Richard_Stallman I've told you two separate things: First, fheroes2 is not "owned by everyone", although it is free to modify. Second, if you directly reverse-engineer something and then make something based on that, it becomes a derivative work -------------------- |
|
|
![]()
Сообщение
#11
|
|
![]() 😸🧡✊✌️ Сообщений: 16 424 Спасибо сказали: 3294 раза ![]() |
А на С сразу понял?
-------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#12
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
А на С сразу понял? Ну на С оно понятней, а то с MOV и EAX вообще было не понятно что AI делает. Но меня сейчас не это беспокоит. Просто James Koppel сказал что если я не хочу чтобы fheroes2 стали несвободным надо построить "Китайсткую Стену" и сделать так кто-нибудь другой посмотрел как работает PhilAI и мне рассказал как он работает, а чтобы я сам в файл не смотрел иначе fheroes2 перестанут быть свободными. И поэтому я в файлы который выложил Швейк смотреть даже не стал. -------------------- |
|
|
![]()
Сообщение
#13
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Всё! Проблема решена. На Green Dragon догорился со Швейком который написал что готов полностью разобратся в AI
![]() ![]() -------------------- |
|
|
![]()
Сообщение
#14
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Фух...Совсем запутал меня James.. Сперва говорил чтобы я построил "Китайскую Стену" а теперь написал что мне можно смотреть код
![]() ![]() Цитата("James Koppel") I suspect that the previous people who worked on fheroes2 have already looked at decompilations of HoMM II, meaning that, if you do look at them, it wouldn't be any more more illegal than it already is Ладно оставлю все уж как есть. Пускай стоит "Китайская Стена" раз построили: Швейк смотрит код, пишет об этом статьи на Green Dragon для всех, а я буду делать AI только по подсказкам. ![]() -------------------- |
|
|
![]()
Сообщение
#15
|
|
![]() 😸🧡✊✌️ Сообщений: 16 424 Спасибо сказали: 3294 раза ![]() |
http://studopedia.org/5-4380.html Так что, изучение файловых форматов по декомпилированной части программы допустимо. А распространение результата декомпиляции нет. И сходную программу писать нельзя.
-------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#16
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
http://studopedia.org/5-4380.html Так что, изучение файловых форматов по декомпилированной части программы допустимо. А распространение результата декомпиляции нет. И сходную программу писать нельзя. Ну вроде James так сперва и объяснил. Что надо чтобы один человек декомпилировал и сделал описание как программа работает. И тот кто пишет похожую программу просто прочитал статью. И тогда все нормально. -------------------- |
|
|
![]()
Сообщение
#17
|
|
![]() 😸🧡✊✌️ Сообщений: 16 424 Спасибо сказали: 3294 раза ![]() |
Нет, не всё, потому что распространение информации, полученной путём декомпиляции, незаконно.
-------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#18
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Нет, не всё, потому что распространение информации полученной путём декомпиляции, незаконно. Ну James говорит че ему адвокаты сказали че законно если тот у того кто получает инфу уже есть такая игра. Цитата("James Koppel") I've discussed this with lawyers at the start of the project. I don't want to get into the details. I will say that it is very intentional that Ironfist requires you already have a copy of the game ЗЫ Хотя надо наверное написать Швейку чтобы про это он тоже написал, что читать статью можно только тем у кого уже есть честно приобретенная копия игры. -------------------- |
|
|
![]()
Сообщение
#19
|
|
![]() 😸🧡✊✌️ Сообщений: 16 424 Спасибо сказали: 3294 раза ![]() |
Законна декомпиляция части программы, отвечающей за работу с конкретным файлом или протоколом, для того, чтобы обеспечить взаимодействие другой программы с этим файлом или протоколом. Если информация о структуре файла или протоколе не может быть получена другим способом. Распространение тоже возможно только для обеспечения взаимодействия программ. Но ты же собираешься делать аналог, а это уже незаконно. Также незаконной становится и передача тебе этой информации.
-------------------- Я слежу за тобой!
![]() ![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
![]()
Сообщение
#20
|
|
![]() Разработчик Сообщений: 534 Спасибо сказали: 222 раза ![]() |
Законна декомпиляция части программы, отвечающей за работу с конкретным файлом или протоколом, для того, чтобы обеспечить взаимодействие другой программы с этим файлом или протоколом. Если информация о структуре файла или протоколе не может быть получена другим способом. Распространение тоже возможно только для обеспечения взаимодействия программ. Но ты же собираешься делать аналог, а это уже незаконно. Также незаконной становится и передача тебе этой информации. James сказал что для HMM2 работает американский закон, по американскому закону можно если кто читает статью уже купил игру. Вот -------------------- |
|
|
![]() ![]() |
Текстовая версия | Сейчас: 13 September 2025 - 19:47 |
Copyright by Алексей Крючков
![]() Programming by Degtyarev Dmitry |
|