Author Topic: Colony Game Bug  (Read 3085 times)

Offline ImpulziveMyztik

  • Newbie
  • *
  • Posts: 7
Colony Game Bug
« on: September 10, 2008, 09:40:41 PM »
Dunno if anybody else has noticed this or posted about this, and I searched long and hard but didn't find anything, so please forgive if this is a repeat post.

The problem is thus:

Scenario: Post Release Colony Demo

Problem: When you have built the spaceport and retrieved the wreckage, then you take it back to the spaceport to unload it. When you unload it, the game crashes. At least, it does for me. Now, there has been some minor modification to the game to allow it to run on my system, but nothing in the scenarios has changed. Is it just me, was the scenario designed that way(it is a demo, after all), or is it indeed a bug?
« Last Edit: September 10, 2008, 09:41:20 PM by ImpulziveMyztik »

Offline Hidiot

  • Hero Member
  • *****
  • Posts: 1018
Colony Game Bug
« Reply #1 on: September 11, 2008, 02:34:05 AM »
Nothing you can do can fix missions, cause they're hard-coded into their own .dll

The crash is a mission bug they didn't fix when they made the map so you're stuck with it. Just be happy you finished :)
"Nothing from nowhere, I'm no one at all"

Offline Sirbomber

  • Hero Member
  • *****
  • Posts: 3238
Colony Game Bug
« Reply #2 on: September 11, 2008, 07:40:41 AM »
The mission works fine in the demo, but not in the final game.
« Last Edit: September 11, 2008, 03:29:01 PM by Sirbomber »
"As usual, colonist opinion is split between those who think the plague is a good idea, and those who are dying from it." - Outpost Evening Star

Outpost 2 Coding 101 Tutorials

Offline Hooman

  • Administrator
  • Hero Member
  • *****
  • Posts: 4955
Colony Game Bug
« Reply #3 on: September 11, 2008, 02:38:06 PM »
Maybe a tech ID changed between the two versions? That could probably cause a crash under those exact conditions. If that's the case, it probably wouldn't be too hard to fix with a hex editor. (Change 4 bytes). Of course you need to find where those bytes are first, and what they should be changed to.
 

Offline ImpulziveMyztik

  • Newbie
  • *
  • Posts: 7
Colony Game Bug
« Reply #4 on: September 11, 2008, 03:02:49 PM »
Quote
Nothing you can do can fix missions, cause they're hard-coded into their own .dll
Like I said, its not a mission, but a colony game, and one made by someone here, dunno who, sry.

As far as editing with a hex editor, I have a couple editor programs, but know nothing about the structure of this particular game. Any help in that department?

Offline Hidiot

  • Hero Member
  • *****
  • Posts: 1018
Colony Game Bug
« Reply #5 on: September 11, 2008, 03:04:45 PM »
missions,colony games, multi player maps, whatever. They all need a .dll to run and the .dll contains the info on all object and preset events
"Nothing from nowhere, I'm no one at all"

Offline Sirbomber

  • Hero Member
  • *****
  • Posts: 3238
Colony Game Bug
« Reply #6 on: September 11, 2008, 03:28:23 PM »
Quote
Like I said, its not a mission, but a colony game, and one made by someone here, dunno who, sry.
Quote
Scenario: Post Release Colony Demo
No, that was a Dynamix-made map released with a demo made by Sierra. We didn't make it.
"As usual, colonist opinion is split between those who think the plague is a good idea, and those who are dying from it." - Outpost Evening Star

Outpost 2 Coding 101 Tutorials

Offline ImpulziveMyztik

  • Newbie
  • *
  • Posts: 7
Colony Game Bug
« Reply #7 on: September 11, 2008, 03:34:09 PM »
In that case, do you happen to know what dll(s) that colony game is? I have a rough program that is actually quite efficient at cracking open dll's and modifying them.

Offline Hooman

  • Administrator
  • Hero Member
  • *****
  • Posts: 4955
Colony Game Bug
« Reply #8 on: September 11, 2008, 04:34:44 PM »
All colony games DLLs start with a "c" in their name. You'll have to infer the rest.
 

Offline Sirbomber

  • Hero Member
  • *****
  • Posts: 3238
Colony Game Bug
« Reply #9 on: September 11, 2008, 06:32:28 PM »
Post-Release Colony Demo : cds1.dll
"As usual, colonist opinion is split between those who think the plague is a good idea, and those who are dying from it." - Outpost Evening Star

Outpost 2 Coding 101 Tutorials

Offline ImpulziveMyztik

  • Newbie
  • *
  • Posts: 7
Colony Game Bug
« Reply #10 on: September 11, 2008, 08:00:31 PM »
Thank you very much. :D
now we see if I remember any game style programming :blink:  :whistle:  

Offline Hooman

  • Administrator
  • Hero Member
  • *****
  • Posts: 4955
Colony Game Bug
« Reply #11 on: September 13, 2008, 02:25:14 AM »
This may be of interest:
Code: [Select]
11004F42    68 80150000      PUSH 1580

That's the third parameter to TethysGame::CreateWreck, which is the tech ID that is given by the wreckage. The value 0x1580 = 5504.
Checking demotekm.txt, we find:
Code: [Select]
BEGIN_TECH "EDWARD Satellite" 05504

Also, remember the note in the SDK at then end of that function declaration:
Code: [Select]
	static int __fastcall CreateWreck(int tileX, int tileY, enum map_id techID, int bInitiallyVisible);  	// Note: techID must be >= 8000 but < (8000+4096)

I'd say that's most likely a problem.
« Last Edit: September 13, 2008, 02:29:36 AM by Hooman »