March 28, 2024, 09:53:09 AM

Username
Password

Pages: [1] 2 3   Go Down
Print
Author Topic: New Campaigns: Questions and suggestions  (Read 40820 times)
0 Members and 1 Guest are viewing this topic.
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« on: April 06, 2017, 09:06:31 AM »

I'm considering to create new campaings, most for the fun of doing it, but also to give others "new food to eat"

I will ask againg for your patience and kindness with some question

I want to create a first simple campaign, with no more than 5-6 battles plus 2-3 optional battles. New conversation, new plots and brand new story. This will be my "make experience" campaign, before creating the big one I've got in mind.
For now I'm not considering to create new maps... I've got enough of them from the original game and wood elf campaign. I  more or less undestood the "not battle" part (the "whmtg.txt" file)
I won't create new units too, because I can use all the units from the wood elf campaign, more than enough by now

What I need is this

How to create a battle from the beginning, that means:
1) Add a unit to a map (and eventually remove all units present on the map if copied by another campaign)
2) Add hidden units that appear on conditions (like those hidden in the trees or those zombies that come out from the ground)
3) Add conditional units (units that can be added depending on the plot choices, like black grail in the final battle if you do not kill them in the previous mission)
4) Enemy AI

These are the first issues I will like to learn. Thus, if someone can point me out in the right direction (suggestions, tutorials, an interesting battle from another mod that is the right one to learn because of the way it's done and so on) I will appreciate it a lot

Thanks
« Last Edit: April 06, 2017, 10:08:01 AM by olly » Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2268



View Profile
« Reply #1 on: April 06, 2017, 10:08:07 AM »

http://forum.dark-omen.org/campaigns/how-to-create-new-mods-and-campaigns-t1251.0.html
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)
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #2 on: April 06, 2017, 01:25:24 PM »

Thanks for the link. Started to study. Hoped it could be easy as the whmtg file, but sadly it's not, but it surely helped to put me on the correct path.

When you wrote "Scroll to bottom and add in new SUBCHUNK using BTB to XML converter" I unzipped the btbxml.zip file and found two files. "btbxml.py" and "xmlbtb.py"... How do I'm supposed to use those files to make the conversion?

By the way
I choosed to open the Original Game files, because I know very well the campaign and thus I kmnow what to look for
I opened the B101NME.arm and B101MRC.arm with Wh2Edit
I opened B01_01.BTB with the BTB editor
Btb file is very hard to undestand. There are A LOT of 503 subchunk. I would like to change most of the units in the map and do not want to delete things that I should not.
1) Some 503 subchunk with the "<5>INTEGER = 16387" value but with an unknown id in the <12> value (example "<12>INTEGER=258" and I do not have any troup with that id in the B101NME and B101MRC files). What's the meaning of these subchunks?
2) What's the meaning of 503 subchunks with "<5>INTEGER=1" (or =3 and =5)?
3) How do I change the deploy zone for the player?
4) What's the meaning of this "and remember to increase the 6000 header by 1. "? What's the 6000 header?
5) How do I add to a unit a different banner taken from new mod Banner folder?
6) The B102NME file (Undead and Skaven mod), I looked at "Stormvermin" and found "Sprite 340"... where do I find that sprite? And how about banners? In the dropdown menu I see only the Orig Campaign banners and not all the mod added banners. How do I select them?
7) Is there any ".arm" file with ALL the troups of the game (players troups can be found in PLYR_ALL.ARM, but enemy troups don't) to make it easier to make copypaste on wh2Edit? I can find them in all BTB files, but if there is a "ENEMY_ALL.ARM" it could be easyer

I'm stuck with this part by now and trying to understand on my own (but help will be appreciated)... I will start with CTL and AI when I'm able to make all units deploy correctly.

There isn't any need to be quick in this, thus replay when you want and can, without pressure Wink

Thanks
« Last Edit: April 06, 2017, 01:58:32 PM by Leilond » Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2268



View Profile
« Reply #3 on: April 06, 2017, 02:32:26 PM »

http://wiki.dark-omen.org/do/DO/Modding/Tools/BTBXML

http://wiki.dark-omen.org/do/Special:AllPages
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)
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #4 on: April 06, 2017, 03:29:27 PM »

Quote

This was EXACTLY was I was looking for...
I already found tons of things that clarified most of my doubt.

As always, you point directly to the right place instead of loosing time in unnecessary words. GREAT!

Thanks
Logged
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #5 on: April 06, 2017, 10:46:59 PM »

Things are goint pretty well by now.
I managed to change the deploy zone of battle 1 (trading post) to the upside. In my new campaign, the enemies will defend the village they conquered and you have to recapture it, thus, the deploys are reversed: empire up, enemies defend the village

By now I've got only two problems.
1) Troups facing wrong way at deploy
All my troups, when deployed, face the wrong way (the face the same direction as they were placed in the old deploy zone), no matter the value I try to put in the "type=7 node. Not a big issue till now, because I can face them another way but it's annoying. This is the Grudgebringer Cavallry node
Code:
        <SUBRECORD type="503">
             <INT type="5"> 16387 </INT>
             <INT type="1"> 1050 </INT>
             <INT type="2"> 1400 </INT>
             <INT type="6"> 48 </INT>
             <INT type="7"> 259 </INT>
             <INT type="11"> 0 </INT>
             <INT type="12"> 1 </INT>
             <INT type="13"> 100 </INT>
         </SUBRECORD>
259 is a value I copied from a goblin unit in original campaing, hoping to make my unit face that way, but it doesn't work

2) When the battle start, the camera finally stop at the old deploy zone, even if it's not there anymore. It's not a "blocking" problem, but annoying too, like the first problem. This is the deployment zone node
Code:
    <CHUNK type="4">
         <STR type="1006"> Mercdeploy </STR>
         <INT type="5"> 259 </INT>
          <TUP2 type="10"> (960, 1560) </TUP2>
         <TUP4 type="502"> (960, 1560, 1008, 1440) </TUP4>
         <TUP4 type="502"> (1008, 1440, 984, 1320) </TUP4>
         <TUP4 type="502"> (984, 1320, 1280, 1320) </TUP4>
         <TUP4 type="502"> (1280, 1320, 1264, 1432) </TUP4>
         <TUP4 type="502"> (1264, 1432, 1272, 1560) </TUP4>
         <TUP4 type="502"> (1272, 1560, 960, 1560) </TUP4>
     </CHUNK>

I can continue my job right know, but I'll have to solve those before or then, or I'll have to change my mind on this battle I've got in mind
Logged
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #6 on: April 08, 2017, 01:45:51 PM »

Didn't solved the troup facing issue nor the camera stopping at old deploy zone, but I can live with it
-
I understood a good part of CTL part, expecially the difference between teleport_to2 and teleport_to3 that are not documented on the wiki page, because in standard battle 01_03, teleport_to2 is used when zombies coum out from the ground, while tleport_to3 is used when troups appear near map border
Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2268



View Profile
« Reply #7 on: April 08, 2017, 01:48:45 PM »

Good discoveries and you won't be able to alter the camera track to old deployment zone, until we can Edit the TRAC section of .PRJ

http://wiki.dark-omen.org/do/DO/PRJ

The troops facing direction should work as I use it a lot when testing line of sight etc..

Goblin ID 131 direction now facing 90


* GoboDirectionBTB.jpg (351.4 KB. 2000x500 - viewed 866 times.)

« Last Edit: April 08, 2017, 02:30:13 PM by olly » 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)
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #8 on: April 08, 2017, 03:14:00 PM »

It works with enemies (I tried to put 90 in the 131 troup, and the goblins changed facing exactly as in your example)
It doesn't work if I try to put the same value (or any other value) on my cavallry
Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2268



View Profile
« Reply #9 on: April 08, 2017, 03:59:37 PM »

This would be a good problem to trace in IDA since the engine source code must be setting their direction. However CTL does have

set_unit_r_direction (DD)
arg1: unit id arg2: register where direction of arg1 is written to.
Useful in the tutorial only.

http://wiki.dark-omen.org/do/DO/CTL/OpCodes

So maybe it could be used somehow to set direction perhaps.
« Last Edit: April 08, 2017, 05:54:54 PM by olly » 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)
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #10 on: April 08, 2017, 09:12:43 PM »

Perfect, I will try and let you know if it work

By now I'm trying to figure out some unit way of moving basing on events (like the first goblin archers unit that retreat to a safer positino when suffer some damage and so on). There are too many event id that are not on the page http://wiki.dark-omen.org/do/DO/CTL/Events and I'm trying to see if I can undestand some

Also all those play_self make me curious
« Last Edit: April 08, 2017, 09:20:12 PM by Leilond » Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2268



View Profile
« Reply #11 on: April 08, 2017, 09:51:29 PM »

Here are more useful CTL discussions, if I haven't already linked you to them ->

http://forum.dark-omen.org/singleplayer/further-ctl-investigation-t1105.0.html

http://forum.dark-omen.org/singleplayer/enemy-units-in-campaign-t1094.0.html

and updated BTBXML script

http://forum.dark-omen.org/tools/btb-and-ctl-files-t1277.0.html;msg13043#msg13043

Also all the map pictures for you to plan new strategies

http://forum.dark-omen.org/maps/all-maps-t155.0.html
« Last Edit: April 08, 2017, 10:45:02 PM by olly » 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)
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #12 on: April 09, 2017, 10:25:36 AM »

Thanks. That helped.

I will have to play around with CTL to better discover events ids and playself ids.

It,going on very well thanks again
Logged
Leilond
Ghoul
*
Offline Offline

Posts: 52


View Profile
« Reply #13 on: April 10, 2017, 09:31:37 AM »

This would be a good problem to trace in IDA since the engine source code must be setting their direction. However CTL does have

set_unit_r_direction (DD)
arg1: unit id arg2: register where direction of arg1 is written to.
Useful in the tutorial only.

http://wiki.dark-omen.org/do/DO/CTL/OpCodes

So maybe it could be used somehow to set direction perhaps.

Tried to add "set_unit_r_direction 1,X" with some different values to X, but it look like nothing changed at all

Well, I think I've got to live with it
Logged
olly
Global Spokesperson
*
Offline Offline

Posts: 2268



View Profile
« Reply #14 on: April 10, 2017, 01:41:07 PM »

Unfortunately it is only a simple register that is only used in the Tutorial mission, to ensure you have moved your troops to face the correct direction. It's not setting a direction function that can be changed to a new direction, or checked anywhere else.

Therefore, it requires more IDA analysis to see if direction is used anywhere else and can then be set to a new direction.

I've been examining Ghabry's/Rob's IDA sub discoveries and also Aqrit's sub IDA discoveries and combining them into 1, in an attempt to explain it more clearly for us lesser mortals. However, as Ghabry mentions all the easy to discover subs have already been found.

The other issue with IDA is that the free version doesn't provide pseudo code compared with the paid for versions, so I'm copying all the pseudo code and documenting it against the free versions, to make it more accessible.



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)
Pages: [1] 2 3   Go Up
Print
Jump to: