Current time: 23.11.2024, 17:19 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Python-скрипты для Героев
Author Message
Sav Offline

Posts: 2180
Post: #1

Некоторое время назад, после того как я узнал о существовании Boost.python, у меня появилась мысль - прикрутить к Героям интерпретатор Питона, чтобы была возможность писать на нём скрипты, в качестве альтернативы и, в идеале, замены ERM.

На данный момент, фактически, получилось выполнить из игры python-скрипт вообще (т. е. практического значения этот результат почти не имеет, только исследовательское-творческое).
http://dl.dropbox.com/u/21241104/WoG/H3Py.zip

Архив распаковывать в папку с игрой.
В архиве:
- Папка "Lib" - стандартные библиотеки python.
- "boost_python-vc90-mt-1_47.dll" - библиотека boost.python, обеспечивающая связь python с программой.
- "H3Py.era" в "EraPlugins" - собственно, написанная мной dll`ка, из которой и выполняется скрипт.
- "script.py" в "Data\py" - скрипт, который будет выполняться из игры.

В результате работы плагина должно наблюдаться следующее:
При нажатии на ЛКМ на карте приключений выполняется "Data\py\script.py". Потом из результата работы скрипта берётся переменная k (если она не была объявлена в скрипте, то будет вылет с ошибкой), преобразуется в C-шный int и записывается в ERM-переменную v2. После этого выполняется ERM-команда "IF:M^%V2^;", т. е. v2 выводится на экран.

script.py, естественно, можно изменять, в т. ч. и в процессе игры.


Было бы хорошо, если бы кто-нибудь, у кого не установлены Python и Boost.python, протестировал, работает ли это у него так, как я описал. Вроде должно, но я не вполне уверен.


В принципе, не вижу каких-то абсолютно нерешаемых препятствий тому, чтобы постепенно делать замену ERM. В конце концов, в скрипт можно передать функцию ExecErmCmd для выполнения нереализованных функций.


P.S. Исходники не выкладываю, т. к. особо нечего. Sm Но если кому-то хочется - дам.


P.P.S. Забыл совсем, - естественно, всё для Эры 1.9.
(This post was last modified: 19.10.2011 22:32 by Sav.)
18.10.2011 23:41
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Messages In This Thread
Python-скрипты для Героев - Sav - 18.10.2011 23:41
RE: Python-скрипты для Героев - etoprostoya - 18.10.2011, 23:59
RE: Python-скрипты для Героев - Sav - 19.10.2011, 00:20
RE: Python-скрипты для Героев - Berserker - 19.10.2011, 00:24
RE: Python-скрипты для Героев - etoprostoya - 19.10.2011, 00:32
RE: Python-скрипты для Героев - Sav - 19.10.2011, 00:58
RE: Python-скрипты для Героев - fireman - 19.10.2011, 16:11
RE: Python-скрипты для Героев - Sav - 19.10.2011, 22:38
RE: Python-скрипты для Героев - etoprostoya - 20.10.2011, 00:02
RE: Python-скрипты для Героев - Sav - 20.10.2011, 00:52
RE: Python-скрипты для Героев - Berserker - 20.10.2011, 15:30
RE: Python-скрипты для Героев - Sav - 21.10.2011, 23:51
RE: Python-скрипты для Героев - GhostManSD - 27.10.2011, 16:17
RE: Python-скрипты для Героев - etoprostoya - 27.10.2011, 17:27
RE: Python-скрипты для Героев - Sav - 27.10.2011, 17:55
RE: Python-скрипты для Героев - Sav - 29.10.2011, 00:11
RE: Python-скрипты для Героев - GhostManSD - 29.10.2011, 00:18
RE: Python-скрипты для Героев - Sav - 29.10.2011, 00:37
RE: Python-скрипты для Героев - fireman - 29.10.2011, 03:51
RE: Python-скрипты для Героев - Sav - 29.10.2011, 09:54
RE: Python-скрипты для Героев - fireman - 29.10.2011, 12:32
RE: Python-скрипты для Героев - Sav - 29.10.2011, 12:39
RE: Python-скрипты для Героев - fireman - 29.10.2011, 12:41
RE: Python-скрипты для Героев - Sav - 29.10.2011, 14:27
RE: Python-скрипты для Героев - fireman - 30.10.2011, 01:58
RE: Python-скрипты для Героев - etoprostoya - 30.10.2011, 01:59
RE: Python-скрипты для Героев - fireman - 30.10.2011, 02:22
RE: Python-скрипты для Героев - Sav - 30.10.2011, 10:25
RE: Python-скрипты для Героев - fireman - 30.10.2011, 14:23
RE: Python-скрипты для Героев - Sav - 31.10.2011, 01:13
RE: Python-скрипты для Героев - GhostManSD - 31.10.2011, 14:17
RE: Python-скрипты для Героев - Sav - 31.10.2011, 18:54
RE: Python-скрипты для Героев - GhostManSD - 01.11.2011, 01:45
RE: Python-скрипты для Героев - Sav - 01.11.2011, 10:04
RE: Python-скрипты для Героев - Berserker - 01.11.2011, 15:54
RE: Python-скрипты для Героев - Sav - 01.11.2011, 20:03
RE: Python-скрипты для Героев - Berserker - 01.11.2011, 21:08
RE: Python-скрипты для Героев - Sav - 01.11.2011, 22:16
RE: Python-скрипты для Героев - Sav - 01.11.2011, 23:00
RE: Python-скрипты для Героев - Berserker - 01.11.2011, 23:01
RE: Python-скрипты для Героев - Sav - 02.11.2011, 17:59
RE: Python-скрипты для Героев - Berserker - 02.11.2011, 18:14
RE: Python-скрипты для Героев - Sav - 19.11.2011, 20:57
RE: Python-скрипты для Героев - Berserker - 19.11.2011, 21:03
RE: Python-скрипты для Героев - etoprostoya - 19.11.2011, 21:33
RE: Python-скрипты для Героев - Sav - 20.11.2011, 00:31
RE: Python-скрипты для Героев - GhostManSD - 09.03.2012, 23:22
RE: Python-скрипты для Героев - Sav - 09.03.2012, 23:26
RE: Python-скрипты для Героев - fireman - 03.01.2013, 00:21
RE: Python-скрипты для Героев - Sav - 03.01.2013, 00:42

Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group