Jump to content

Welcome to FED2k Discussion
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Photo

Super Dune II Second Edition Project News


  • Please log in to reply
9 replies to this topic

#1
MrFlibble

MrFlibble

    Shai Hulud

  • Forum Staff
  • PipPipPipPipPipPipPipPipPip
  • 3,788 posts
  • LocationRussia
Since my work on SD2SE has significantly diverged from the original Super Dune 2, I have decided to split the project into two:

Posted Image
Super Dune II Classic - this is the original Super Dune 2 with all possible bugs and errors fixed.

Check out the Super Dune II Classic Gallery for screenshots from SD2Classic.

Super Dune II Classic is now also hosted by ModDB.

Posted Image
Dune 2 eXtended - previously known as Super Dune II Second Edition. This mod is aimed at enhanced gameplay and lots of new stuff :)

Lots of screenshots to look at in the Dune 2 eXtended Gallery.

I hope this distinction will allow for more freedom and creativity, and rekindle interest in Dune II modding.

#2
Nyerguds

Nyerguds

    Fedaykin

  • Fedaykin
  • PipPipPipPipPipPipPip
  • 1,250 posts
  • LocationFlanders (Belgium)
ooh, neat :)

#3
MrFlibble

MrFlibble

    Shai Hulud

  • Forum Staff
  • PipPipPipPipPipPipPipPipPip
  • 3,788 posts
  • LocationRussia
BTW Nyerguds, I think I'd find a SETUP.EXE that sets the game to a fixed language other than English very useful - I'm currently using Dune 2 HS in its German flavor for the new DuneX (helps to fix the wrong announcements on the side selection screen, among other things) ;)

#4
Nyerguds

Nyerguds

    Fedaykin

  • Fedaykin
  • PipPipPipPipPipPipPip
  • 1,250 posts
  • LocationFlanders (Belgium)
hmm... it's probably not hard to rewire the 3-language full-sound setup I made to save one language instead of showing the selection screen. After all that's kinda just the exact opposite of what I did for the audio ;D

I'll look into it when I got some time.

#5
MrFlibble

MrFlibble

    Shai Hulud

  • Forum Staff
  • PipPipPipPipPipPipPipPipPip
  • 3,788 posts
  • LocationRussia
Thanks a lot, that would be very helpful :)

#6
Nyerguds

Nyerguds

    Fedaykin

  • Fedaykin
  • PipPipPipPipPipPipPip
  • 1,250 posts
  • LocationFlanders (Belgium)
Heh wow. I had to search a bit, but in the end, the actual hack is incredibly easy.
See, when no command line parameter is given, the 'default' language is set to "5" so it automatically overflows (valid languages are 0-4) and gives the language selection screen.

All you need to do is change that 5 to the language you want. In my 3-language setup that's the byte at location 70A0 :)
Languages are 0=ENG 1=FRE 2=GER 3=ITA 4=SPA, though of course we only got strings files for the first three.

Also note that while you force a default language this way, people can still change it by giving the correct command line parameter. And by giving an illegal language parameter, you can even force it to show the normal language selection menu again.


This is kinda what their original code must've looked like in C language... well besides the blatantly wrong string compares, and not checking the length of the command line parameters string (paramStr) :P
if (paramStr[1] != "")
{
	languageID=0
	while (languageID<5 && (langStrings[languageID] != paramStr[1]))
	{
		languageID++;
	}
}
else
{
	languageID=5;
}

if (languageID>=5)
{
	showLanguageMenu();
}
SaveLanguage();

The part we replace is the else { languageID=5; } :)

#7
MrFlibble

MrFlibble

    Shai Hulud

  • Forum Staff
  • PipPipPipPipPipPipPipPipPip
  • 3,788 posts
  • LocationRussia
Thanks for the analysis and info, Nyerguds :) I'll try it out when I got time.

#8
MrFlibble

MrFlibble

    Shai Hulud

  • Forum Staff
  • PipPipPipPipPipPipPipPipPip
  • 3,788 posts
  • LocationRussia
The solution works perfectly, thanks! You can see it in action in the new release of Dune 2 eXtended ;)

In the meantime, I have also updated Super Dune II: Classic Edition. One of the major changes is that the controllable Sandworms in the Fremen campaign have been made more player-friendly. You can now order them (among other things) to go into Area Guard mode, which makes them only attack enemy units:

Posted Image
(Here a worm just ate a Harkonnen Devastator ;D)


This way, the worms won't eat your own units before they can be used against the enemy anymore :)

#9
Nyerguds

Nyerguds

    Fedaykin

  • Fedaykin
  • PipPipPipPipPipPipPip
  • 1,250 posts
  • LocationFlanders (Belgium)
That actually works? Wow!

btw, I see you put Area Guard at the bottom... Is the lowest command always the default after executing a targeted command?

#10
MrFlibble

MrFlibble

    Shai Hulud

  • Forum Staff
  • PipPipPipPipPipPipPipPipPip
  • 3,788 posts
  • LocationRussia
I don't know, I just put them in the order they are in the game executable. Sandworms don't behave like regular units anyway. For example, the Move command hardly does anything but making the worm move anout one cell in the desired direction after quite a long delay. And it will ignore the Move command completely if it's going after a unit on sand.