Giter VIP home page Giter VIP logo

wog's Introduction

Heroes 3.5: In the Wake of Gods 3.59 alpha.

About

This is Alpha, so anything may change in the future.
Team interaction would happen via Skype: sergroj_(my GitHub nickname). Everyone's welcome! WoG 3.59 is going to be a platform hosting different mods, somewhat like Era II in that sense, but different.
Alpha version executable is called WogT1.exe for historic reasons. Executable of final version will be called h3wog.exe as usual. WogDialogs.dll source code can be found in MMExtension source code archive: https://www.dropbox.com/s/91xvgzbchx3h1bc/MMExtensionSrc.rar?dl=1

Installing a release

Extract contents to WoG home folder. Using a folder with clean WoG 3.58 install is preferable. Make sure Data folder doesn't contain these files:
ARTEVENT.TXT
ARTRAITS.TXT
CRANIM.txt
CRTRAITS.TXT
SpTraits.txt
ZCRTRAIT.TXT
ZELP.TXT

Note: If you're building WoG from sources, the only things you'll need from a release is Data\p\ folder and dbghelp.dll file, plus you must get rid of text files mentioned above.

Testing

'info' folder contains descriptions of new 3.59 stuff (and t1.map file for my own debugging convenience). Mods folder contains all scripts, Data\s\ isn't used anymore.
An intermediate version of ERM help is available at https://www.dropbox.com/s/uxoqylpuyh96iei/erm_help_1_Mar_2006.zip?dl=1
Currently no-one is taking care of it.

Saved games from 3.58 are incompatible. From one version of 3.59a to another saves compatibility may break as well.

If WoG happens to hang, don't kill the process. Instead, use this program: https://www.dropbox.com/s/zhf5sdq2e0e7m9t/WindowMan.rar?dl=1
Run it, then switch to WoG window and switch back to the program. It should pick up the window name of WoG. When you see it's correct, press the "Crash" button. This will make WoG create WOGCRASHDUMP.DMP, WOGCRASHLOG.TXT and WOGERMLOG.TXT files. The program itself will create CrashEIP.txt file in its own folder. Send me all 4 files.

In addition to sending WOGCRASHDUMP.DMP, WOGCRASHLOG.TXT and WOGERMLOG.TXT don't forget to describe what exactly you did that lead to the issue and send the saved game and map if they're relevant.

At some point you may find UnclosedStackLevels.txt file in your WoG folder. Send it to me if you do.

Also, setting No32Bit=0 in [Common] of WoG.ini will let you run WoG windowed in 32-bit screen mode. However, 10-60 minutes into the game it will hang. That's ok, 32 bit mode code is temporary. Baratorch's HD Mod does it much better, so it should be the base of future proper 32 bit mode support.

Building

[Common]
DeveloperPath=(path to the repository)
AllowMultipleCopies=1

Done! Now you can build and run the project. Use "Dll" configugation for debugging. "Release" configuratin is used for deployment. The t1.map file found in Build folder can help you debug it.

About Code

To find code of a receiver (let's say, 'UX'), search in erm.cpp for its name like this: 'UX'.

Internal numbers of triggers are listed after ERM_Triggers table in erm.cpp. To find code that calls a trigger you need to search for its number (use "Find in Files" in VS).

All new code hooks are in global_hooks.h and global.cpp files as well as Lua files. Old hooks are in _B1.cpp. Don't do hooks the old way!

Note the WogNew project. The reason it's there is because t1b project must be built with optimization turned off, due to functions intermixing C code with Asm. This is also one of the reasons the solution is for VS 2005.

One thing absolutely necessary in coding style is use of tabs, not spaces (set up in Tools -> Options -> Text Editor -> C/C++ -> Tabs -> Keep Tabs).

IDA Database

My database of executable can be found at https://www.dropbox.com/s/wl84icfyxz92ns0/Heroes3f.rar?dl=1
I update it very rarely.

About Git

You may want to hide a local folder from Git. E.g. I have a mod with my test scripts. To do so, create .gitignore file in it containing just this:

/*

wog's People

Contributors

alonefallen avatar grayface avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wog's Issues

Crash/optimal settings

Hi! I made my settings as i tought it'll be the best to play, then player. In every game after a few minutes of gameplay it crashes. Once (i don't know why just once) i checked the error log, and it said 122. script is the problem, and if it is disabled, the game exit.
So my question: is it a bug, or i must use ,,sample" settings to play without crash?

скрипт рыболовный колодец

Немного обсурдна идея рыбалки в колодце. Может переделать скрипт , чтобы рыбалка была на водной поверхности.

"!!BU:O"-incorrect hex number.

Log file: WOGERMLOG.TXT

-----------------------
ERM script Error.
	File: monsters
	Line : 5680
	Reason:
	"!!BU:O"-incorrect hex number.

Save all ERM vars to WOGERMLOG.TXT (may take time)?
-----------------------
Time Stamp: Mon Apr 17 11:56:43 2017

WoG Version: 3 . 59 Alpha 8
Built on Sep  4 2015

Map Saved with: 3 . 59 Alpha 8
Built on Sep  4 2015

ERM stack traceback:

Mods\WoG\erm\script038.erm:125:
Oy3/?y1;     ** check for obstacle: y1=0 if no obstacle
Mods\WoG\erm\script038.erm:110:
Px2/y4; ** find a position with no obstacles: v1
Mods\WoG\erm\script039.erm:368:
Px1/?v430/?v431/?y99/?y100; // get basic attribs (do not use HE:F because it returns sometimes
Mods\WoG\erm\script039.erm:358:
Py-1/3; //refresh monster bonus, if that hero is monster spec

ERM help updated - 2020

Just finished new version of ERM Help. You are welcome:
https://drive.google.com/file/d/1uUdTvsJ6ey9D2bHH1A8aZyMyxtQCCzqk/view (Version 3.00)

EDIT: Version 3.01
Online version: https://azethmeron.github.io/
Source: https://github.com/AzethMeron/AzethMeron.github.io/tree/master

New help covers not only ERM, but also basics of Lua and Mod Support introduced in Alpha.
There are some things that are not yet finished, or must be verified by tests. Those are mostly written in purple.

Создание удобного установщика на SoD

На данный момент альфа 3.59 ставится на 3.58, который всегда был проблемным для установки. Так как WoG является модом в 3.59, то нахождение его в папке data лишнее.
Также надо избавиться от конфликта папки Mods с папкой Mods ERA.

Campaigns menu

  • Campaign menu now includes SoD campaign as well. Campaign buttons should be reorganized somehow.
  • In addition, other mods may have their own campaigns. Though, they will probably have their own menu graphics as well. Still, this is something to discuss. We could even make arrows that would switch between campaign screens - screen with standard campaigns, screen with WoG campaign and other campaigns without their own menu graphics, screen for TMP etc.

В окне города при нажатой кнопке разделения отряда попытка переключиться на другой город приводит к вылету.

EIP 7790D1BC
https://cloud.mail.ru/public/5ed8588e7552/WOGCRASHDUMP.DMP
https://cloud.mail.ru/public/8452e955b7f7/WOGCRASHLOG.TXT
https://cloud.mail.ru/public/f417ef01006f/WOGERMLOG.TXT

Баг исправлен в хд
"[-] оригинальный баг: в окне города при нажатой кнопке разделения отряда попытка переключиться на другой город приводила к вылету."

Просто проверил наличие такого, он есть.

WoG Options enhancements

  • Save/Load options
  • Check/Uncheck all options
  • Option dependencies (for options incompatible with each other)
  • Mods on/off, reordering

Разрушение городов - кривости

[20:41:29] Маэстро: когда разрушаем города и заново отстраиваем...
[20:42:48] Маэстро: если выбрать свой тип города потом, то он по сути остается старым.
т.е. если мы разрушили крепость/цитадель и перестроили их в оплот, некрополь и т.д., то у нас все равно гильдия магов будет максимум 3го уровня! так же часть уникальных строений будет недоступна (портал у инферно, преобразователь нежити и т.д.)

Убрать ограничения объектов в редакторе карт

В редакторе карт полезно было бы убрать ограничения количества таких объектов, как шахты, маяки, жилища, гарнизоны, хижины провидцев. Также устранить ограничения количества обучающих объектов.

How to build on modern PC

Windows 10 user here, using Visual C++ 2005 Express Edition.

I have faced several issues while building solution. Though i'm not sure if i even do it right:
Solution explorer -> Solution 'T1b' (5 projects) -> right click -> Build Solution

Errors:

  • 'windows.h': no such file or directory
  • 'Windows.h': no such file or directory
  • 'winsocket.h': no such file or directory
  • '.\Debug\ai.sbr': no such file or directory
  • several missing ';' before asm/_ams. Never used assembler so I don't know what to do about it.

Can anyone please tell how to fix those errors? Send lacking files, or something.
Yes, i can use C. C++ and ERM quite well, this is serious question for my project.

Thanks

Добавить "плавающие цифры" в бою.

Как в Героях 5, показывалось кол-во убитых при атаке. В идеале, чтоб курсор показывал возможное кол-во убитых при наведении на цель.

Option CommandPoints for Hero / опция КоммандныхОчков героя

Когда включена опция КоммандныхОчков героя (когда герой может вести войско с определённым количеством очков):
во-первых, AI не контролит, что у него превышение и теряет армию
во-вторых, сообщения об этом получает игрок


When Option CommandPoints for Hero is activated AI doesnt control its own hero command points, so

  1. He looses army
  2. A human Player gets AI`s messages of loosing troops

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.