October 17, 2019, 11:43:57 PM

Username
Password

Pages: 1 ... 4 5 [6]   Go Down
Print
Author Topic: Mod Selector  (Read 50980 times)
0 Members and 1 Guest are viewing this topic.
Ghabry
Developer
*
Offline Offline

Posts: 1015



View Profile
« Reply #75 on: June 01, 2017, 12:22:28 AM »

Do you also see entries of ".CUR" or ".ANI" files in "Dark Omen\Graphics\Cursors" redirected? FindFirstFile is usually part of the "Your DO install is incomplete" check.

Looks like Cursors are created with "LoadCursorFromFileA" and if this doesn't go indirectly through CreateFile or MapViewOfFile it's not redirected.

And looks like the cursors are only initialized on Dark Omen startup, so changing the mod would not change them back.

Actually I like that they aren't redirected because this is imo a user decision which kind of cursors they want.
« Last Edit: June 01, 2017, 12:27:08 PM by Ghabry » Logged

olly
Global Spokesperson
*
Offline Offline

Posts: 1941



View Profile
« Reply #76 on: June 01, 2017, 06:01:04 PM »

Thanks for investigating and no I don't get any .CUR  or .ANI appearing just the .bmp files in Trace.txt and sounds like its not worth pursuing if only loaded on startup, and as Evgen reminded me that it used to cause lag for a few players, when I recently dug the coloured cursors mod out the archives for DOR project. I'm tempted to include them in the Mod Pack as an optional extra but I fear someone may inadvertently end up turning on coloured cursors from the Main Options which will crash the game etc.

Smiley
Logged

and back in Nuln, the ageing Graf Berhardt smiled his secret smile of pride whenever he heard the latest tales of his eldest son's ever growing chain of glorious victories -(sothr manual)
Malus
Campaign Creator
*
Offline Offline

Posts: 95



View Profile
« Reply #77 on: June 08, 2019, 10:26:42 AM »

I kindly request the following features for WHMTG scripting


A) Increase var_xx up to 32 (or more)
It's currently maxed at 24 total, var_00 to var_23. Very easy to run out of vars in more advanced mods.

B) CaseSwitch for var_xx
I only tested var values up to 32 but this already leaves so many possible values that the simple var check
Code:
ReadVariable var_00
IF == 0
<do this>
ENDIF
IF == 1
<do this>
ENDIF
and so on
Takes forever to do if vars are used greater than binary.

C) Add/Sub value to/from var_xx
There is currently only SetVariable var_xx Y.
This means that to add a value, like 22+1, currently all possible values need to be checked first, to then set the var one greater/smaller.


D) Unit deploy limit
PC default is 10, ps1 uses 8. Would be nice to have this flexible for certain battles.
I know its possible to do this with CTL script but it would be much better used here for easy modding.

E) Remove x-gold with check for 0/overflow
Current max gold is 2^16-1, to subtract gold we have to add 2^16-1-"value to subtract".
There is no check for 0/overflow.
Would also be nice so that if gold is added over the cap it's to be "ignored", or lots of gold is lost.

F) Modify some basic unit stats
Would be nice if we could change current/max number, alive/dead, armour, stats M,WS,etc
For example SOTHR has a mission where units with armour below 3 get +1 armour

G) Add exp to unit

I feel bad for asking so much  Tongue


Logged

"We are the most civilised race in the world. We have more exquisite ways to kill than any other."
Lord Vraneth the Cruel, master of Har Ganeth
olly
Global Spokesperson
*
Offline Offline

Posts: 1941



View Profile
« Reply #78 on: June 08, 2019, 10:55:56 PM »

Would be great but not sure if it's all possible but will investigate.

Smiley
Logged

and back in Nuln, the ageing Graf Berhardt smiled his secret smile of pride whenever he heard the latest tales of his eldest son's ever growing chain of glorious victories -(sothr manual)
Ghabry
Developer
*
Offline Offline

Posts: 1015



View Profile
« Reply #79 on: June 28, 2019, 10:08:01 AM »

It's summer so I'm highly unmotivated but I like the ideas.

I kindly request the following features for WHMTG scripting

Right, new features for WHMTG scripting are also possible.

A) Increase var_xx up to 32 (or more)
It's currently maxed at 24 total, var_00 to var_23. Very easy to run out of vars in more advanced mods.

If you just use them for flags (0 or 1): You can store 32 flags in one variable (think binary, 1, 2, 4, 8, etc.) but there are no good function to handle bitflags.

Well extending them is possible, just have to relocate where it is stored in memory like I did to fix the multiplayer map list.

B) CaseSwitch for var_xx
I only tested var values up to 32 but this already leaves so many possible values that the simple var check
Code:
ReadVariable var_00
IF == 0
<do this>
ENDIF
IF == 1
<do this>
ENDIF
and so on

This is complecated because this is a new code-flow feature in the WHMTG interpreter. Wasn't <= and >= also supported as operators?


C) Add/Sub value to/from var_xx
There is currently only SetVariable var_xx Y.
This means that to add a value, like 22+1, currently all possible values need to be checked first, to then set the var one greater/smaller.

That sounds easy


D) Unit deploy limit
PC default is 10, ps1 uses 8. Would be nice to have this flexible for certain battles.
I know its possible to do this with CTL script but it would be much better used here for easy modding.

The problem is that this will be incompatible with the current code because currently I reset the deployment limit when the battle begins loading.
Maybe I can move it to the battle end handler, then this problem is solved.

What I could also propose is a "Read WHMTG Variable" function which reads a WHMTG variable into a CTL global variable and then using this to set the deployment limit.


E) Remove x-gold with check for 0/overflow
Current max gold is 2^16-1, to subtract gold we have to add 2^16-1-"value to subtract".
There is no check for 0/overflow.
Would also be nice so that if gold is added over the cap it's to be "ignored", or lots of gold is lost.

Sounds good

F) Modify some basic unit stats
Would be nice if we could change current/max number, alive/dead, armour, stats M,WS,etc
For example SOTHR has a mission where units with armour below 3 get +1 armour

That's also a WHMTG feature I guess? Otherwise this would be chaos when possible in live battle Cheesy

G) Add exp to unit

Well basicly the same as the feature before.
Logged

Malus
Campaign Creator
*
Offline Offline

Posts: 95



View Profile
« Reply #80 on: June 29, 2019, 02:05:33 PM »

There is no hurry, enjoy the summer  Smiley

Was mere ideas/problems is struggled with in the Enhanced Edition mod.
It's all WHMTG script related which is already awesome but could really use more functions.
Its kinda feature incomplete atm.
Especially if we ever want to have SOTHR ported to Dark Omen.
The campaign there can go so many different ways.

Checking a variable for all possible values can easy bloat the WHMTG file. Like i do atm to check time passed before most missions to process different events and dialogues. File size is quite close to the size cap which is 3 times the original size i believe.

Operators "=<" and "=>" are not supported i think. At least i never saw those used in the original which rarely uses logic and variables.

Quote
What I could also propose is a "Read WHMTG Variable" function which reads a WHMTG variable into a CTL global variable and then using this to set the deployment limit.


Sure, whatever works best/easy to implement. I tried to make the feature requests close to existing functions which could use some extensions like.

"GetUnitStatus unitID" function checks if unit is alive/dead (offset 0 size 2 in regiment data block).
Maybe this could be used to make a "SetUnitByte unitID value" function to set specific bytes. Like leader attributes @offset 127 size 9.

from Wiki:
http://wiki.dark-omen.org/do/ARM

Also one other feature came into my mind:

H) "multiple choice" in dialogues

There is currently only a binary choice "yes"/"no" with var_23 set 0 or 1.
"PlaySFX "Choice one" "Choice two" 29 1 "H_KZ001" 0"
Which can be used to build a binary tree but it gets confusing very fast and looks cheap.

SOTHR got i think up to 5 mission choices.


Thanks for reading  Wink
Logged

"We are the most civilised race in the world. We have more exquisite ways to kill than any other."
Lord Vraneth the Cruel, master of Har Ganeth
Pages: 1 ... 4 5 [6]   Go Up
Print
Jump to: