Jump to content

Dune II: Version Discussion


X3M

Recommended Posts

I love Area Guard sandworms. They can be docile even while you're killing them, they can be aggressive right off the bat, or they can change to aggressive when you least expect 'em to. It's awesome :D

Much better than the later game "lure them to the rock and kill them" types.

Yup, I agree, in later levels worms become a routine. It's also a bit more realistic that they crawl around and "guard" their territory (much as described in the books) than when they just pop out of nowhere and chase your units.

The only thing you don't know is that if there is only 1, 2 or 3 worms.

There shouldn't be 3 worms in any level in v1.07, as the max limit per map was reduced to 2.
Link to comment
Share on other sites

I am talking about that rusian version. By Guryanov Aleksander

 

No matter what level, what race. They all just gobble up my units. :D. Must admit, might be accidental in the first missions though since I feed them with fodder anyway. Is there something like a centre of a guard area?

 

Where can I read about the number of worms? Could it be that the android version did not have that change? It went into a "different" evolution path I think. A couple of years ago. So that could mean they updated on open dune, but not on the android? For all I know, I encountered 3 worms in Ordos 7. Damn, I was swearing at the third.

Link to comment
Share on other sites

I encountered 3 worms in Ordos 7.

Shouldn't happen in the original game, 'cause even in v1.0 where 3 worms are possible there's only a few early Atreides scenarios with 3 worms actually placed on the map. I fancy there's a modified scenario file in that "port", or maybe they edited the code so that worms resurface after some time? No idea.
Link to comment
Share on other sites

Maybe it is a bug. I explored the map of Ordos 7, several times. And restarting the scenario after exploring the 2 sides for the worm.

At the sixth try, I once had 3 worms again. But the how...? I don't know. They start in the same field too. Maybe it is the same worm?

And that mission isn't the only one where I had this. Harkonnen 4, had 3 worms too. Although, now with replaying the map, 4 times. Just 2 worms each time.

 

Regarding the Harvester (back to topic). In the first 4 missions, you could use a glitch for getting and keeping a Carry-all. This does not seem to work any more. Correct?

Link to comment
Share on other sites

Regarding the Harvester (back to topic). In the first 4 missions, you could use a glitch for getting and keeping a Carry-all. This does not seem to work any more. Correct?

I think this was "kind of" fixed in v1.07, so it happens less often compared to v1.0. However, the issue had not been completely resolved as there's still a chance in v1.07 that the carryall will not leave the map.

I guess the OpenDUNE guys properly fixed that, along with the other issues of the originl code.

Link to comment
Share on other sites

No... basically, in Dune II, the houses are practically identical. The differences they DO have, which include that siege tank build level (and the fact Ordos can't build Rocket Launchers), serve to actually turn the Houses into difficulty levels, with Harkonnen being Easy; Atreides being Normal, and Ordos being Hard (if I remember correctly).

Link to comment
Share on other sites

Sorry, but I think that Atreides is Easy and Harkonnen Normal :)

 

The Ordos AI indeed doesn't build Siege Tanks in L6.

 

Somehow I recall that as Ordos player, you can't build Siege tanks in 6 either. But I am not so sure. So...

I have to start over from mission 1, if I want to play mission 6 again.

Unless someone else is close to L6 now.

Link to comment
Share on other sites

With my 1.07 I see these differences:

 

On lvl4 Hark vs Ordos, AI can produce Trooper. But on Lvl4 Ord vs Atr, you can't produce Trooper, only on lvl5 (vs Hark)

On lvl5 Ord vs Hark, you can produce trooper, but if you against Ordos with Atreides, AI can produce troopers too.

On lvl6 ordos can't produce Siege tank (even on hark6 vs ordos, AI can't too), but troopers are available here.

Link to comment
Share on other sites

Somehow I recall that as Ordos player, you can't build Siege tanks in 6 either. But I am not so sure. So...

I have to start over from mission 1, if I want to play mission 6 again.

Unless someone else is close to L6 now.

There should be saved games somewhere attached to some post in here.

IIRC you can only get Siege Tanks from the Starport in mission 6 for the Ordos. Everyone else gets to build Siege Tanks from Heavy Factories in mission 6.

 

Yes but in original Dune 2 16bit MS-Dos Ordos can produce Siege Tank on mission 6th.

Are you sure about that? Because I vaguely remember how I tried to fix something related to this (and did not succeed), and IIRC it was to make Ordos build Siege Tanks in level 6 from Heavy Factories.

 

On lvl4 Hark vs Ordos, AI can produce Trooper. But on Lvl4 Ord vs Atr, you can't produce Trooper, only on lvl5 (vs Hark)

On lvl5 Ord vs Hark, you can produce trooper, but if you against Ordos with Atreides, AI can produce troopers too.

On lvl6 ordos can't produce Siege tank (even on hark6 vs ordos, AI can't too), but troopers are available here.

Unlike structures, units in Dune II do not have tech level restrictions, only factory upgrades do. Meaning that you can produce a unit that does not require a factory upgrade in any level, provided that you have the required structure. Same applies for the AI. If you put a WOR in the AI base of whichever House/faction except Atreides in level 2, the AI will build individual Trooper units. Trooper squads on the other hand will only be available when you meet the tech level requirement for WOR upgrade, which by default is level 6 (level 4 for Harkonnens).

[Edit] Okay, found some bits related to the Ordos Siege Tank issue:

Joust wanted to know your opinion about the following issue (it is somewhat indirectly related to the editor, but anyway :)). I have noticed that in the Sega Mega Drive Dune: The Battle for Arrakis, the Ordos get access to Siege tanks on level 6, just like any other House, while in the PC version they only get it on level 7. Although it is possible this was done to make the Ordos more difficult to play, I think there's still chance that it occurred due to an error (taking into account the occasional slips here and there in the code of Dune II). I was able to locate the code responsible for this tech tree alteration, and since it relies on the "previous mission number" variable I think it's a plausible assumption that the developers intended to make the Siege Tank available for the Ordos starting with mission 6 onward, but mistakenly made it available only after it. In the Sega version, this was fixed along some other stuff (looped reinforcements, building decay dependence on slabs etc.) Your ideas?

I'd like to know the general opinion, actually :) It's quite easy to change the code to make the Siege Tank available in Ordos mission 6 (and when I played Dune II for the first time, I had the wrong impression it was available then, as it seemed quite logical), so my question is, bug or not? The Ordos are already disadvantaged by the absence of the Rocket Launcher, but then again, their campaign is supposedly set on "hard" difficulty level.

[Edit] There's yet another side to this, namely the Harkonnen mission 6 is against the Ordos, and the above exception applies to the AI player too, making the Harkonnen mission easier, Siege Tanks against Combat Tanks (there are a few pre-placed Ordos Siege Tanks though). So the question remains, is this an intentional thing designed to make one campaign easier and another more difficult, or a mere oversight?

We have discussed this issue in the past here in some thread, and I think arrived at the conclusion that it wasn't a bug but rather a feature - as Nyer said it's part of the difficulty level thingy. After all, the Deviator the Ordos get at level 7 is a rather specific weapon, so getting the Siege Tank could be seen as an addition to the Ordos firepower.

On the other hand, the absence of the Siege Tank at level 6 makes this level ridiculously easy for the Harkonnens, who get Siege Tanks and the Ordos AI has neither Siege Tanks nor Rocket Launchers. But then again the Harkonnens are the easy difficulty, right? :D

Link to comment
Share on other sites

Yes I tested PC version (v1.07) now, and it's true: it doesn't allow to produce Siege Tanks by Ordos on mission 6th.

I would say instead that it's clearly a bug.

 

Amiga version, Mission 6h:

http://www.youtube.com/watch?feature=player_detailpage&v=XW6M8XmD6DY#t=10630

 

 

...and when produces Siege Tanks:

http://www.youtube.com/watch?feature=player_detailpage&v=XW6M8XmD6DY#t=12005

 

If in Sega & Amiga versions the Siege Tanks can be produced by Ordos in Mission 6th, I guess that PC version has an important bug, that changes significantly the gameplay (also because the MS-Dos version was released before with bugs of v1.0).

Link to comment
Share on other sites

Ordos did get siege tanks in mission 6 with version 1.0. I am sure of it.

Although proving it is rather difficult after 10 years of PC replacement and room cleansing events :(

 

These are the modifications for ordos in dune 1.0, the pc version, compared to other houses:

- troopers in mission 4 (Harkonnen has troopers in 2).

- trooper squads in mission 5, instead of rocket launchers. (Harkonnen has trooper squads in 4).

- siege tanks in mission 6. Not 7.

- starport allows rocket launchers for all houses in mission 6.

- starport allows siege tanks for all houses in mission 7. Not 6.

- starport did not allow ornithopters in the starport for any house. Android does for A and O, I do support that one though :).

- starport allowed ordos to get access to trikes and quads too.

 

Playing as Atreides versus Ordos, mission 5:

- Take over the heavy factory, and you have access to siege tanks.

Mission 5! ladies and gentlemen. Then, I suspected that was a bug too.

 


 

Comparing with Dune2000:

Atreides 5, take over the starport. Damn, siege tanks in 5? Yip, there they are.

Ordos 5, no missile launchers.

Starport in 6 for the ordos; missile launchers! And siege tanks, but you can build them as well in 6.

 

Clearly (in my opinion) Dune2000 is based on V1.0, including the siege tank in mission A5 "bug", which proved at that point to me, it was actual intentional by Westwood.

 


 

Having no siege tanks for Ordos in 6 is clearly a bug?

No, I think it is indeed coded that way.

After all, V1.07 was not made by Westwood, was it?

Just asking, who made V1.07?

 

Lets google...

Nyerguds is the host of the download:

http://forum.dune2k.com/topic/20168-dune-2-v107-fix/

....Ow, that answers me some questions. :D

 

Ok, intentional by someone of that team I guess. Then I want to ask, who decided that Ordos has to be difficult?

Link to comment
Share on other sites

The code is mainly written to skip the launcher tech, rather than to delay Ordos siege tank tech.

You could argue that they intended on both effects in one step though.
In Structure_IsUpgradable:

    if (s->o.houseID == HOUSE_ORDOS && s->o.type == STRUCTURE_HEAVY_VEHICLE && s->upgradeLevel == 1 && si->upgradeCampaign[2] > g_campaignID) return false;

The g_campaignID test here is a bit weird compared to code just below:

    if (si->upgradeCampaign[s->upgradeLevel] != 0 && si->upgradeCampaign[s->upgradeLevel] <= g_campaignID + 1) {        ...        return true; // if structure can be upgraded.    }
  • Upvote 1
Link to comment
Share on other sites

I fail to see how code specifically implemented to prevent the Ordos from getting them on level 6 could possibly be seen as a bug.

Yes it's not really a bug, but do you know why it was removed on other later releases (Amiga & Sega)?

The developers wanted to remove this exception, or it's a bug of Amiga & Sega Mega Drive releases? Most likely the first.

It's similar to Saboteur move issue...

 

Ordos did get siege tanks in mission 6 with version 1.0. I am sure of it.

Although proving it is rather difficult after 10 years of PC replacement and room cleansing events :(

Really? ;) See the video:

Even in v1.0 the code is:

seg010:2629                   Ret0:                                                       ; CODE XREF: sub_1CA1C+6Dj

seg010:2629                                                                               ; sub_1CA1C:loc_1CB0Dj ...

seg010:2629 33 C0                             xor     ax, ax                              ; Logical Exclusive OR

seg010:262B

seg010:262B                   loc_1CA5B:                                                  ; CODE XREF: sub_1CA1C+11Ej

seg010:262B E9 E2 00                          jmp     Done                                ; Jump

seg010:262E                   ; ---------------------------------------------------------------------------

seg010:262E

seg010:262E                   loc_1CA5E:                                                  ; CODE XREF: sub_1CA1C+31j

seg010:262E                                                                               ; sub_1CA1C+3Bj

seg010:262E C4 5E 06                          les     bx, [bp+buildingGamePtr]            ; Load Full Pointer to ES:xx

seg010:2631 26 80 7F 08 02                    cmp     es:[bx+_buildingGame.houseID], 2    ; Compare Two Operands

seg010:2636 75 23                             jnz     short loc_1CA8B                     ; Jump if Not Zero (ZF=0)

seg010:2638 C4 5E 06                          les     bx, [bp+buildingGamePtr]            ; Load Full Pointer to ES:xx

seg010:263B 26 80 7F 02 04                    cmp     es:[bx+_buildingGame.TypeIndex], 4  ; Heavy Factory

seg010:2640

seg010:2640                   loc_1CA70:                                                  ; Jump if Not Zero (ZF=0)

seg010:2640 75 19                             jnz     short loc_1CA8B

seg010:2642 C4 5E 06                          les     bx, [bp+buildingGamePtr]            ; Load Full Pointer to ES:xx

seg010:2645 26 80 7F 4E 01                    cmp     es:[bx+_buildingGame.techLevel], 1  ; Compare Two Operands

seg010:264A 75 0F                             jnz     short loc_1CA8B                     ; Jump if Not Zero (ZF=0)

seg010:264C C4 5E FC                          les     bx, [bp+buildingDataPtr]            ; Load Full Pointer to ES:xx

seg010:264F

seg010:264F                   loc_1CA7F:

seg010:264F 26 8B 47 5E                       mov     ax, es:[bx+_buildingData.techUpgrade3]

seg010:2653

seg010:2653                   loc_1CA83:                                                  ; Compare Two Operands

seg010:2653 3B 06 A6 38                       cmp     ax, missionNumberPrevious

seg010:2657 7E 02                             jle     short loc_1CA8B                     ; Jump if Less or Equal (ZF=1 | SF!=OF)

seg010:2659 EB CE                             jmp     short Ret0                          ; Jump

seg010:265B                   ; ---------------------------------------------------------------------------

seg010:265B

seg010:265B                   loc_1CA8B:                                                  ; CODE

AX register is 6 (because techUpgrade3 for Heavy Factory is unlocked on mission 6th), but MissionNumberPrevious is 5 when you play Mission 6th, so until techUpgrade3 is greater than MissionNumberPrevious, it goes on jmp Ret0 (return false on IsUpgradable? function).

 

 

@MrFlibble: You changed 06 byte of yellow line, right? But "3B 06 ?? ??" is no more than "cmp ax, [????]" in opcode, where [????] is the memory reference of a word.

  • Upvote 1
Link to comment
Share on other sites

The code is mainly written to skip the launcher tech, rather than to delay Ordos siege tank tech.

You could argue that they intended on both effects in one step though.

In Structure_IsUpgradable:

    if (s->o.houseID == HOUSE_ORDOS && s->o.type == STRUCTURE_HEAVY_VEHICLE && s->upgradeLevel == 1 && si->upgradeCampaign[2] > g_campaignID) return false;
The g_campaignID test here is a bit weird compared to code just below:

    if (si->upgradeCampaign[s->upgradeLevel] != 0 && si->upgradeCampaign[s->upgradeLevel] <= g_campaignID + 1) {        ...        return true; // if structure can be upgraded.    }

To skip launchers tech (and only this), it should be: si->upgradeCampaign[2] > g_scenarioID

Maybe it's only a typo if for Amiga and Sega this line it's changed.

  • Upvote 1
Link to comment
Share on other sites

These are the modifications for ordos in dune 1.0, the pc version, compared to other houses:

- troopers in mission 4 (Harkonnen has troopers in 2).

- trooper squads in mission 5, instead of rocket launchers. (Harkonnen has trooper squads in 4).

- siege tanks in mission 6. Not 7.

- starport allows rocket launchers for all houses in mission 6.

- starport allows siege tanks for all houses in mission 7. Not 6.

- starport did not allow ornithopters in the starport for any house. Android does for A and O, I do support that one though :).

- starport allowed ordos to get access to trikes and quads too.

Actually the differences you list are not for the Ordos, but vice versa: it's the Harkonnens who get all the code exceptions for earlier access to Troopers, Quads and stuff. The default tech tree has WOR at level 4, and the Trooper squad upgrade at level 6.

As for the Starport, the list of available units is defined individually in each scenario file and is not restricted by anything. You can buy infantry and Sandworms from the Starport if you edit a scenario file.

 

After all, V1.07 was not made by Westwood, was it?

Just asking, who made V1.07?

 

Lets google...

Nyerguds is the host of the download:

http://forum.dune2k.com/topic/20168-dune-2-v107-fix/

....Ow, that answers me some questions. :D

What you linked to is not the original v1.07 patch (which is official, created by Westwood studios), it's the unofficial fix that does not have a version number, it just cleans up most of the bugs in v1.07 that we could find and figure out a remedy for.

 

I fail to see how code specifically implemented to prevent the Ordos from getting them on level 6 could possibly be seen as a bug.

Well, TrueBrain and segra repeatedly pointed out various shenanigans in the original Dune II code, all those instances when something was intended by the programmers but didn't work out the way it should've been etc. etc. So it's just common sense that a simple fact of something being a code exception doesn't necessarily entail that the corresponding effect was part of the original design on the developers' part.

 

@MrFlibble: You changed 06 byte of yellow line, right? But "3B 06 ?? ??" is no more than "cmp ax, [ ????]" in opcode, where [????] is the memory reference of a word.

Yes, I did figure that I was doing it the wrong way back then, so I dropped thatincorrect "fix" from the list.
Link to comment
Share on other sites

@ MrFibble

That makes sense.

 

@ drnovice

A video that got uploaded 23 hours ago doesn't have much credit for me. Even more so if it is someone with programming experience that uploaded a video. :)

 

But I was willing to put work into it.

 

It is true that Ordos has no capability of building siege tanks in 6. I played my diskette versions again. My father saved an old computer. With them installed. Yay for me, somehow.

It's those 2 siege tanks in the reinforcements that have made the confusion. And I clearly remember why I didn't play Ordos much back then.

 


 

But here the other thing, no one answered me that yet here with code, or whatever:

 

Siege tanks in L5 with Atreides by taking over the Ordos Heavy Factory.

I succeeded in it again.

 

Has V1.07 that? Or is it only V1.0?

Link to comment
Share on other sites

We did definitely offtopic, so maybe we should rename the title of main topic.
 

A video that got uploaded 23 hours ago doesn't have much credit for me. Even more so if it is someone with programming experience that uploaded a video. :)

I uploaded the video but I showed you the reality, otherwise you would have seen the production of siege tanks with second upgrade... ;)
 

[...]
But here the other thing, no one answered me that yet here with code, or whatever:

Siege tanks in L5 with Atreides by taking over the Ordos Heavy Factory.
I succeeded in it again.

Has V1.07 that? Or is it only V1.0?

MrFlibble response:

Unlike structures, units in Dune II do not have tech level restrictions, only factory upgrades do. Meaning that you can produce a unit that does not require a factory upgrade in any level, provided that you have the required structure. Same applies for the AI. If you put a WOR in the AI base of whichever House/faction except Atreides in level 2, the AI will build individual Trooper units. Trooper squads on the other hand will only be available when you meet the tech level requirement for WOR upgrade, which by default is level 6 (level 4 for Harkonnens).

bearing in mind that AI doesn't need to upgrades:

/* AIs get the full upgrade immediately */    if (houseID != g_playerHouseID) {        while (true) {            if (!Structure_IsUpgradable(s)) break;            s->upgradeLevel++;        }        s->upgradeTimeLeft = 0;    }

then if you play as Ordos and take over Heavy Factory on Mission 5th against Atreides, you'll get a Heavy Factory with existing 2 upgrades (regular default for the mission); but if Ordos has the exception:

/* Ordos Heavy Vehicle gets the last upgrade for free */if (s->o.houseID == HOUSE_ORDOS && s->o.type == STRUCTURE_HEAVY_VEHICLE && s->upgradeLevel == 2) s->upgradeLevel = 3;

explains how the second upgrade that gave launchers to Atreides offering instead siege tanks to Ordos. ;)

 

@Nyerguds: even this is a "bug" for me. Yes it's caused by specific code exception for House Ordos, but I don't think that developers expected this specific case. Playtesting sucks...

 

Very curious the Manual:

Capturing Enemy structures:
How do you go about capturing an enemy structure? First, the ability
to capture an enemy structure is only given to Infantry and Troopers.
Second, the enemy structure's Damage Indicator must be in the RED.
you can then command an Infantry/Trooper unit to "Move" onto the
structure and take it over. If you command an Infantry/Trooper unit
to move onto the structure before it is in the RED, your unit will
explode and inflict damage on the structure.

What happens when you capture a structure? When a structure is
captured by one of your units, it will become one of your structures.
If you capture an enemy factory, you will be able to produce any
units that factory was producing when it was under enemy control.
This tactic will allow you to get possession of special enemy weapons
that your House cannot produce
.

Certain structures such as Palaces, Outposts, Barracks, IX, and Wor
Facilities can never be captured. These structures must be destroyed.
Beware, for some Houses bobby-trap their own structures in case they
fall into enemy hands. These structures may self-destruct right
away or they might wait awhile
.

 

The yellow part is to try to explain the bug showed above, but the red part is fool (?!?) :blink:

  • Upvote 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...