Outpost Universe Forums

Projects & Development => Projects => Outpost 2 Update => Topic started by: Leviathan on April 28, 2008, 10:15:57 PM

Title: Outpost 2 - 1.3.5 Update
Post by: Leviathan on April 28, 2008, 10:15:57 PM
Ok so it would be great if we can get stuff sorted this year and get a new version of Outpost 2 out!

What would you like to see in the next update?

What I think:
- New tilesets
- New maps
- Renegades single-player campaign included
- Map maker included
- Different language Outpost 2 versions
- IRC client included?

Please also see this (http://forum.outpostuniverse.net/index.php?showtopic=3975) post.

Thanks :)
Title: Outpost 2 - 1.3.5 Update
Post by: Paco on April 28, 2008, 10:46:47 PM
AI, and unit max removal.... I'll add more to this...
Title: Outpost 2 - 1.3.5 Update
Post by: Arklon on April 28, 2008, 11:11:02 PM
Quote
AI, and unit max removal.... I'll add more to this...
AI's not feasible any time soon, can't remove the unit cap due to engine limitations (though the cap can be doubled pretty easily, since it looks like it was originally supposed to be double what it actually ended up as the whole time).

Quote
- Renegades single-player campaign included
It's something of an alpha or a beta in its current state, with missions 3 and 4 having a tendency to be bug out.

Quote
- Different language Outpost 2 versions
The localization code needs to be able to patch more dlls than it currently does so the main menu and such can be translated. Translating tech trees is a no go because that will break multiplayer compatibility between different language versions and translating missions is also not possible because we don't have the source for them. There are WIPs for french, german, italian(?), and spanish translations.
Title: Outpost 2 - 1.3.5 Update
Post by: BlackBox on April 29, 2008, 01:34:04 AM
Actually, it is possible to get techtrees to sync up for multiplayer (it's possible to force the checksum to match on the files by adding 4 bytes of garbage data to the end).

As far as including renegades, the mapper, IRC, etc. to the download, I think these should be left separate. To a lot of people this is just extra garbage that is probably not wanted; in the case of the mapper and renegades, these are beta at best. Not to mention that a lot of people prefer a smaller download (if not because of a slow connection, it's because they don't want a bunch of crap getting installed with the game. Personally, I'm not a big fan of that kind of thing and I don't think we should start doing that).

As far as new maps and new tilesets, I would say include them only as long as they have been tested and appear to be of high quality. I think it's too easy to get into the habit of including things just for the sake of including them; we should only include something if it deserves to be included. A prime example (and I admit, I am the culprit here) would be Plymouth Cold War. It didn't get tested enough and really shouldn't have been included (though it still was due to time constraints, because we wanted something new just to have it).

I think if we are going to be releasing new content of any type, it needs to be QUALITY. Not something thrown together at the last minute to include just to have something "new" (which really turned out to be buggy crap once people actually played it). No one should be pressured into finishing or releasing a project for the sake of inclusion in the update.
Title: Outpost 2 - 1.3.5 Update
Post by: Empedocles on April 29, 2008, 10:21:38 AM
I'd like to see this (http://forum.outpostuniverse.net/index.php?showtopic=3413&hl=) in the next update. I run into the unit limit all the time and that picture of 2000+ Laser Lynx is just awesome.
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on April 29, 2008, 03:33:44 PM
When you talk about high quality and being bug-free...
What if they're supposed to be buggy, or buggy in an uber way, like causing the terrain to melt into multi-colored lines?
Title: Outpost 2 - 1.3.5 Update
Post by: Arklon on April 29, 2008, 03:46:21 PM
Quote
Actually, it is possible to get techtrees to sync up for multiplayer (it's possible to force the checksum to match on the files by adding 4 bytes of garbage data to the end).
OP2 doesn't checksum techs (which isn't what makes translated techs not compatible with others anyway), which it def should since it's very annoying when you find out later in the game some people have different techs and the game desynced.
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on April 29, 2008, 04:03:20 PM
Then why do techs in different languages cause desyncs?
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on April 29, 2008, 06:22:47 PM
Well, I found this to be an interesting question, so I looked into it.

The game checksums the following files, and stores the checksum in an array in this order:
-------  [Part 1: Sheet data]
BUILDING.TXT
MINES.TXT
MORALE.TXT
SPACE.TXT
VEHICLES.TXT
WEAPONS.TXT
edentek.txt
ply_tek.txt
multitek.txt
-------  [Part 2: Exe data]
Shell  [whatever the loaded shell DLL is called]
Outpost2  [whatever is returned by GetModuleFileName(0)]
-------  [Part 3: Script data]
scriptChecksum  [the level DLL]
map  [referenced by the DLL]
-------  [Part 4: Summary]
checksumOfChecksums  [checksum of the above checksum table]
-------


You'll notice the tech tree referenced by the level is not specifically checksummed, but if it is one of the default ones, then it gets included in the first part of the checksumming. Hence the tech tree is only checksummed if it's one of the default files (edentek.txt, ply_tek.txt, or multitek.txt). Also note that tutortek.txt is not checked anywhere, even though it's one of the default stock files.


Edit: But BlackBox is right. We can fake a checksum if we need to. It's actually quite easy, and we did it back when the sheet files were first decompressed and then repacked.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Savant 231-A on April 30, 2008, 01:07:13 AM
I would like to see an integrated IRC client in op2
And it would be nice to see the tilesets remodeled :D
 
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on April 30, 2008, 06:33:23 PM
Quote
I would like to see an integrated IRC client in op2
Why? What purpose would that sever, other than making unnecessary work for our already overburdened coders?
Title: Outpost 2 - 1.3.5 Update
Post by: Fenrisul on April 30, 2008, 08:26:10 PM
Easier to get new people to play? perhaps gamers that don't have an interest in IRC itself but rather just like to play games?
Title: Outpost 2 - 1.3.5 Update
Post by: Savant 231-A on May 01, 2008, 10:10:34 AM
Quote
Quote
I would like to see an integrated IRC client in op2
Why? What purpose would that sever, other than making unnecessary work for our already overburdened coders?
I wouldn't call it unnecessary work, you can, but I won't.

Also, why are we arguing? I think the coders will be able to tell is it unnecessary work or not.
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on May 01, 2008, 04:46:43 PM
Quote
Also, why are we arguing? I think the coders will be able to tell is it unnecessary work or not.
I believe they have, on several occasions.

And if they don't have "an interest in IRC" then how do they intend to talk to anyone? Whether it's built into OP2 or not, it's still IRC.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 02, 2008, 07:24:31 PM
Ok, so I put together a *Beta* package containing all the new patches that people have been using. This should make setup and syncing with new people a little easier if you're going to force the new patches on them (which people usually seem to do).


This package contains the 1.3.0.4 RC2 release as a base, with the following patches and changes:
 - Minimap scroll fix (so you get caught on the sides less often)
 - Network game speed fix (so it tries to stay at the speed you set rather than half of that)
 - Hard unit limit patch  (1023 -> 2047 max units)
 - Soft unit limit patch (See ChangeLog.txt for details, it might not match the previous patch people are using)
 - The "NetPatch" mod has been included, with the current game server settings already applied to Outpost.ini, and a pre-made shortcut (which may need modification).


*Important Notes*
- The checksum on this package might not match what people are using. I took the soft unit limit patch from one of my earlier exe files, and I think it might be different from the soft unit limit changes that Sirbomber wrote to the exe that people have been using.
- The "Outpost2 (Loadmod NetPatch).lnk" file is set to the "C:\Sierra\Outpost2\" folder, which might not be where you install the game. If you place the game somewhere else, you'll need to update the link for it to work. Otherwise, you can just copy it to your desktop as is.

- I recommend choosing "Extract Here" from "C:\Sierra\", since the package has the "Outpost2\" folder stored internally.



This package is not official at this point. There are still a few things I'm looking into doing that may get added before a final release is supplied. Here are a few missing things:
- Fix minimap scrolling for undersized maps, so the scrolling doesn't get stuck
- Meteor Defense patch (so there is no cycle time when it can't shoot something down, only the probability that it can't).
- Fix wreckage bug, where wreckage sometimes turns into rare rubble on certain terrain types.
- Swap group selection behavior, so <number> only selects units, and Shift+<number> will select and center (rather than the other way around).
- Fix the option buttons once and for all so people don't need to press Alt or play with Windows settings.
- And of course, get official endorsement from BlackBox! :P


Download: Outpost 2 (1.3.0.5 - Beta 1) (http://www.outpost2.net/files/op2/Outpost2%20(1.3.0.5%20-%20Beta%201).rar)

Edit: Beta 2 has been released. It is posted later in this thread: Here (http://forum.outpost2.net/index.php?showtopic=4222&view=findpost&p=65464).
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 03, 2008, 06:46:28 AM
Whoa, whoa, whoa! Hang on there! Everyone is already used to the current method of selecting hotkeyed unit groups.  If you change it now you're going to mess it up for the people who have been playing for 10+ years.

Having said that, I don't suppose you could hack a way to select multiple buildings of the same type?  That would certainly make commanding GPs and building vehicles at multiple VFs easier!

But I get the feeling that's not gonna happen.

Other than that, looks good.  Any you planning on including any new maps/missions/techtrees (hint hint)?
Title: Outpost 2 - 1.3.5 Update
Post by: Hidiot on October 03, 2008, 12:51:35 PM
I would also suggest including color mods (.bmps only, or whatever) that have been made and look good. They don't cause desync in multi player and may be a nice little feature.
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 03, 2008, 01:19:19 PM
Quote
I would also suggest including color mods (.bmps only, or whatever) that have been made and look good.
I assume that means "all of them except DM 666"?  What's wrong with that one though...?

Anyways, good idea.  We should probably include all mods (maybe as optional installations) while we're at it.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 03, 2008, 04:32:37 PM
If you have stuff you want added, you could always put it somewhere in the SVN so I can take a look at it. I make no guarantees though. (Probably best to make a branch off the current branch, and then putting the files in there. Ask on IRC if you're not sure. Or just dump them somewhere new and obvious and let me know).


And are you really that serious about the unit group selection? Seems like that'd be pretty easy to retrain for. Possibly even pleasant. It would certainly make it more convenient for new players that are used to the way other games work. Or when switching between pretty much every other game and OP2.


I'll add the multiple structure selection to my ToDo list, but it'll get a pretty low priority and I probably won't look into it for this next update.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 03, 2008, 07:40:55 PM
Since when has Outpost 2 ever been about being like "other" games?
I personally enjoy the current hotkey system.  Less buttons to press.
Title: Outpost 2 - 1.3.5 Update
Post by: CK9 on October 04, 2008, 01:29:54 AM
If anyone were to shift the hotkeys, all the rushers would be mentally messed up....LETS DO IT!  rofl!  jjk
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 05, 2008, 09:31:08 PM
Quote
- Fix the option buttons once and for all so people don't need to press Alt or play with Windows settings.

Done!

I'll put it into the next patch release. If anyone just can't wait, you can download the patched copy of odasl.dll directly from the SVN. I'll be working on some of the other patches before packaging up a new release.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Leviathan on October 06, 2008, 04:57:49 AM
Really glad work is getting done on this :)

Thanks!
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 06, 2008, 05:43:59 AM
I've just committed another two updates to the SVN.

One is the meteor defense patch. Now it won't fail to fire 1/8 of the time. Note that there is still a 50% probability of shooting down the missile if it's unupgraded, and a 75% chance if it's upgraded. These probabilities were not affected.


The other patch addresses the wreckage bug. Now with the patch applied, wreckage should always be picked up as wreckage, rather than sometimes becomming common or rare ore. Also, cargo trucks will no longer try to salvage nothing by docking in the middle of nowhere. The patch isn't quite "perfect" though. If you set the rubble cell type, but not the tile type, then it won't pick up anything, but the truck wheels will still spin for a bit after it's stopped, like it's trying to salvag something. It stops after a bit and has no effect on the game. I don't think I'll bother addressesing this issue. At least not at this time. The problem though, stems from the cell type being checked in some parts of the code but not others. (The tile index is always checked against known rubble tiles).
 
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 06, 2008, 07:32:02 AM
Don't worry about that, Hooman.  That isn't a bug so much as poor map design.  I sometimes wonder why those celltypes are even usable in the mapper.  They don't really work right, do they?

Anyways, good work.
Title: Outpost 2 - 1.3.5 Update
Post by: BlackBox on October 06, 2008, 01:44:58 PM
Quote
Anyways, good idea.  We should probably include all mods (maybe as optional installations) while we're at it.
This reminds me that we should probably make some changes to op2ext (the mod loader), by making it a little easier to use, or more flexible (allow loading multiple mods).

If we are going to include all mods it might be nice to have a way to select which mods to use (some kind of launcher perhaps, or even a menu from within the game).

This would be easier than having a list of shortcuts when the game is installed to select a mod.

Another thing that I had thought of in the past was an "mp3 unpacker" type of program for the CLM files. Instead of forcing people to download the CLM file if they want the music, let them download the music in a compressed form (mp3/ogg) and a separate program (perhaps even during the installer, if some option is selected) uses this data and decompresses these to raw PCM data and generates a CLM file. (This would also allow people to make CLMs with custom music, if they so desired).
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 06, 2008, 06:03:53 PM
Yeah, I was thinking of having a "Which mods do you want to install?" type question, but didn't say anything because I've already asked a lot out of Hooman.

And the multiple mods would be nice, but could cause problems.  What if you try to load two mods that change the same things?  You'd need to have some sort of compatibility check.

Now if you'll excuse me, I want to go make something that we'll probably all regret.  Mwahahahahahetc.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 06, 2008, 09:09:44 PM
I think the game hardcodes the internal filenames that it looks for in the .CLM file, so that limits editing it a little bit. It'd be more like overwriting songs.

Maybe we could write an extension to allowing playing compressed formats from in game? I have code around that can hook the right places and decode and play .aud files from in game. Even the in game volume controls worked. The project was somewhat limited in scope though, as there was no concept of a playlist that got built, nor was there much in the way of a programming interface to the code that would be useful to level writers. It'd also be nice if it could be added in a backwards compatible way, so new levels using such a mod don't need it to run.


I definately agree with upgrading op2ext to handle multiple mods, and not needing a lot of shortcuts to decide what mods to load. I was thinking of maybe just a .ini file type of control. If they wanted to change something, they could just edit the file, or comment out certain lines. Maybe even have module parameters specified in there.

At any rate, I'd like to be able to install the game server support in a way that doesn't require command line parameters to activate. (I'd also like to give it it's own button, rather than stealing "Serial"). I'm sure there are other mods too that would benefit from this. Mainly any type of mod that doesn't overwrite existing stuff, but only adds functionality. Possibly even new campaigns if we can mod the shell so that it allows you to select which campaign you'd like to play.

There is definately a potential for problems with mods that try to change the same things. I usually put some kind of error checking in my code though, so it will at least tell the person what's wrong rather than simply crash. Since mods are so free to do pretty much whatever they want, it's pretty much up to the mod writer to write their mods in a way behaves nicely. Mind you, if they are getting included in a download package, we can pre-screen them for potential conflicts. In practice, this probably wouldn't be so bad, since not many people are actually writing mods.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 11, 2008, 06:21:36 AM
So yeah, still haven't gotten around to working on a better loadmod system. I think I'm stalling out on that one. Anyone else have any ideas on how to do this? Or maybe I just need to do some thinking out loud.

I was thinking add some lines to Outpost2.ini, but then wondered just how well that would work. How would you know what mods to load, especially if you wanted some setup but disabled? Then I was thinking of a custom file that just listed the DLLs. Then it occured to me that some mods have parameters. For instance, the net patch takes a game server address. It'd be nice to specify not just mods, but parameters to them, and maybe even multiple sets of parameters for the same mod.

Perhaps a format like this:

Code: [Select]
# Comment
DllName:Parameters

Possible Example 1:
Code: [Select]
# NetPatch with game server support
NetPatch.dll:127.0.0.1

In the above, everything after the colon could just be handed off to the module for processing. Or perhaps the module should try to pretty things up a bit by accepting parameters in a form such as:

Possible Example 2:
Code: [Select]
# NetPatch with game server support
NetPatch.dll:GameServerAddr=127.0.0.1

In both cases, you could just comment out lines to render a module inactive.


But the parameters lend itself to a .ini style approach, that might look something like this:
Code: [Select]
[NetPatch]
Dll = "NetPatch.dll"
GameServerAddr = "127.0.0.1"

Of course that last example is incomplete, as how will the game know what the module sections are called with the standard Ini processing functions. You'd probably need a known tag in a known section that lists the (active) module names. The Dll tag within the module section could be standard, and then leave the module to load the rest of the tags from it's section. The module would probably need to take the settings tag name as a parameter.

Example:
Code: [Select]
[Addons]
LoadAddons = "NetPatch, SomeOtherMod, YetAnotherMod"

[NetPatch]
Dll = "NetPatch.dll"
GameServerAddr = "127.0.0.1"

[AltNetPatch]
Dll = "NetPatch.dll"
GameServerAddr = "192.168.1.2"

...

Note the inactive parameter set under the "AltNetPatch" heading. It's not listed in the LoadAddons line. Since the Dll name is divorced from the section name, you'd need to tell the dll which section name to load additional settings from (such as the GameServerAddr tag). That way it also doesn't get confused if the same module has different parameter sets specified for it. It would also allow certain well crafted modules to load multiple parameter sets at once.


Questions? Comments? Better ideas?
 
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 13, 2008, 02:02:46 AM
Ok, I went with the later idea, and updated the net fix a little bit. I've put together another package containing this and a few other patches.


Outpost 2 (1.3.0.5 - Beta 2).rar (http://www.outpost2.net/files/op2/Outpost2%20(1.3.0.5%20-%20Beta%202).rar)


Recent changes (from ChangeLog.txt):
Quote
1.3.5 Beta 1
   * Minimap scroll fix (no longer gets caught on top and bottom for full sized maps, but can still get caught on sides of undersized maps)
   * Network game speed fix, so it attempts to play at the set speed rather than gradually slowing to half that speed
   * Applied hard unit limit increase patch (1023 -> 2047 max units)
   * Applied soft unit limit table updates: (Changed when the build buttons dissapear)
  - NumPlayers    1     2     3     4     5     6
  - Vehicles  { 400,  320,  230,  180,  154,  130} (per player)
  - Buildings { 950,  350,  200,  150,  100,   96} (per player)
  -           ------------------------------------
  - Units     {1350,  670,  430,  330,  254,  226} (per player) [Vehicles + Buildings]
  - Total     {1350, 1340, 1290, 1320, 1270, 1356} (for all players)  [Units Per Player * Number Of Players]
  - Gaia      { 697,  707,  757,  727,  777,  691} (space left for non-player units) [approx.]  [*Weapons fire* (twice as many combat units now?), Beacons, Fumaroles, Disasters]

1.3.5 Beta 2
   * Fixed option button highlighting bug in odasl.dll
   * Applied Meteor Defense patch, so it will never fail to fire (but can still miss)
   * Fixed wreckage bug, where wreckage sometimes got picked up as rubble (fixed the rubble checking code)
   * Upgraded op2ext.dll to support loading multiple mods through Outpost2.ini
   * Included updated NetFix, and associated Outpost2.ini settings (using new module loading system)
   * Swapped centering behavior of <number> and Shift+<number> (unit group hotkeys)


As there have been changes to the net fix, I would appreciate people testing it out thuroughly. It should have less trouble trying to join games now. It may even give slightly less trouble when searching for games. It may also be a little more usable for people with troublesome routers. There are some additional .ini settings you can set to help deal with router troubles. I would like to know how well these features work.

A word of caution though. If you try to used the ForcedPort parameter without port forwarding setup, it could potentially break communications that might otherwise have worked. This parameter is not used by default, and must be explicity setup. This parameter is intended for people who have trouble being introduced by a third party such as the game host, or the game server. That is, people who have "symmetric NAT" routers. (Yes, I know, this is an old term that doesn't fully describe the real mess of routers out there, but it's what people here have probably already heard). If you need to setup this parameter, then do the following.
  1) Adjust your router to forward a port to your computer for use by Outpost 2. The default port used by this patch is 47800 UDP.
  2) Add the following line to Outpost2.ini (or similar if you adjusted the port) under the [NetFix] section.
Code: [Select]
ForcedPort=47800

That should tell the introducer (game host, or game server) to introduce you using that port instead of the router re-mapped port from the return address of the packet. Since this port is forwarded, it will be valid for anyone, and not just the introducer. (If the port isn't forwarded, then all return packets will be dropped by the router as there will be no return mapping setup for that port, so connections will not succeed).



ToDo List
-----------
High priority:
- Change version number
- Strip relocations from Outpost2.exe
- Swap centering behavior of other unit selection hotkeys? (backspace? tab?)
- Re-enable old SIGS button, and move net fix over to that button

Low Priority:
- Additional MiniMap scroll fixing (for small maps with border)
- Fix DLL name length limit bug

Maybe:
- Fix multiple selection bug (reselect same unit adds to selected unit count)
- Fix RCC crash bug (calling pure virtual function)
Title: Outpost 2 - 1.3.5 Update
Post by: Gagagigo3 on October 13, 2008, 04:04:38 AM
I cant play any colony game...this was after this new beta. Or is it just me  :blink:  
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 13, 2008, 08:33:05 AM
Do we have to install a clean copy of 1.3.5, or can it upgrade/replace the existing 1.3.4 files?
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 13, 2008, 12:08:20 PM
Probably best to install it fresh, but I don't see how it really matters that much. Saved games won't be compatible due to the unit limit patch, but otherwise I see no harm in installing over top of another version. Of course if you install over an older version you might end up with a bit of extra junk, such as old and obsolete files and folders (like NetPatch/). I suppose if you tried to use a /loadmod shortcut while the newer copy is loading through Outpost2.ini, they might conflict. If in doubt, just do a fresh install.


I have no trouble with colony games.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Hidiot on October 13, 2008, 12:31:19 PM
Tried it out, made a fresh copy over which I copied all misc items and everything works fine, including colony games.
Title: Outpost 2 - 1.3.5 Update
Post by: fallenangel on October 14, 2008, 05:01:31 PM
Hey Cool a new version!  
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 29, 2008, 07:52:05 AM
Err... So, how do I set up mods now?
None of my /loadmod shortcuts work, and I really need to test MT2.
Which is difficult when OP2 fails to "initialize properly."
Title: Outpost 2 - 1.3.5 Update
Post by: Hidiot on October 29, 2008, 09:23:22 AM
I think you still have to use the /loadmod feature on the folder where you have the files. the .ini file only seems to suppord .dll linking.

I know I did something like that and it worked.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 29, 2008, 04:57:48 PM
I didn't change the /loadmod feature. It's still there, works the same, and should work independently of loading modules through the .ini file.

The only conflict I can see is if two DLLs have overlapping load addresses. Although, any normal DLL that can't be loaded to it's preferred base address would just get relocated to another one. It should still work, just take slightly longer to load. Mind you, NetFixV3.dll uses some special hacks (the ForcedExports project) that requires a know/fixed load address. But that DLL should be loaded first, so it's preferred load address won't already be taken, and if for some reason it is taken, it should give an error message to that effect.

I suspect your problem is something else entirely. Perhaps post the shortcut? Where does the error occur? At Program startup? Or when you try to start a level?

If you're getting an error when trying to start a level, it may be because of some SDK changes I was talking about that I think you copied into your files. If that's the case, then your DLL probably isn't exporting the level details, such as the name, description, and DescBlock. Try adding "Export" in front of those lines.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 29, 2008, 05:45:07 PM
When I try loading MT2 (or any mod) through a shortcut, I get two error messages both saying that "The application failed to initialize properly (0xc0000005).  Click on OK to terminate the application" and then OP2 doesn't load.  But, for whatever reason, if I try to open OP2 through the shortcut, dismiss the error messages, and then immediately load OP2 through the regular EXE the mod will load?
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 30, 2008, 05:53:17 PM
Umm, Sirbomber....

Ok, first thing is, why are you even trying to load a module this way? This really isn't needed for extra levels, which made me go investigate what you were doing. Your download package has an OP2mod.dll in it, but when I checked the code, it just appears to be the NetFix mod. This is already being loaded in the newer version through the .ini file, and you don't need a /loadmod parameter for it. In fact, you shouldn't also be using the /loadmod parameter for this DLL, as I've said it will conflict. Both versions require the same load address. Also, since I don't recall ever posting the source to that project, I assume it's unmodified, and doesn't do anything specific to your addon.

I would suggest not trying to include all the newest patches in your download if it's being used on a version that now already has all these patches applied.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on October 30, 2008, 08:34:14 PM
Yeah, I had to include the old NetFix DLL because someone was whining about not being able to use the netfix with MT2.  Besides, the verison I use to test doesn't have that DLL included.

I load MT2 through a mod because I replace multitek and sheets.vol.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on October 31, 2008, 04:50:20 PM
You can make two packages for the two versions meanwhile. Have a 1.3.4 pack with the DLL, and a 1.3.5 pack without it. You probably also want to drop the exe for the 1.3.5 pack, as it would likely downgrade it.

I still don't really see why you're using a mod loader. The /loadmod parameter could only load one DLL, and if you're loading an unmodified NetFix, then there's no room for another DLL that would mod which files the game uses. How exactly do you replace the tech tree and sheets files?
 
Title: Outpost 2 - 1.3.5 Update
Post by: Hidiot on November 01, 2008, 02:11:40 AM
It worked for me when I put the MT2 tech files in with the NetFix .dll and made a shortcut with /loadmod NetFix.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on November 01, 2008, 01:49:02 PM
Duh, wait, the mod loading system tells the game to look in the folder for those extra files, doesn't it? I forgot it plays with the [DEBUG] ART_PATH variable in Outpost2.ini.

Well then, I see a funny situation here. You guys are trying to load a DLL just because that's what loadmod was designed for, but what you really want is the ART_PATH to be changed so that your sheet files get used instead. Well, looking at the code, it seems the /loadmod parameter is a folder name, and having an OP2mod.dll in there is optional. Just throw the files in an empty folder and /loadmod it without using a DLL. If for some reason that doesn't work, just compile an empty DLL to stick in there. Although, I'm pretty sure that's not needed.

Don't go using /loadmod on the NetFix dll just because it's lying around.
 
Title: Outpost 2 - 1.3.5 Update
Post by: BlackBox on November 02, 2008, 05:52:06 PM
IIRC, the ART_PATH is only used when it loads op2_art.bmp. I believe loadmod works to change the vol paths by adding FolderName\VolName.vol to the search path for each vol that is loaded by the game.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on November 02, 2008, 08:09:03 PM
Hmm, all I see in the source, is it tries to load anything matching "Addon\*.vol", where that "Addon" is hardcoded and doesn't depend on the /loadmod parameter. It also adds these vols after the main core vols. Wouldn't that make the files contained in them lower priority? Or does this somehow let you replace core game files without having to overwrite them?
 
Title: Outpost 2 - 1.3.5 Update
Post by: BlackBox on November 03, 2008, 11:28:00 AM
I think the original idea there was to allow for additions like new tilesets and maps that use them (greenworld is a good example of this). It should get added last in the search path (since it's assumed that everything in this directory is "new" content, thus isn't going to be intended to overwrite existing game files -- after all the filenames of the VOL contents should be different, i.e. the well files for greenworld were named grnwld00.bmp - grnwld12.bmp IIRC.

Then, if someone wants to override this "new" content on a mod by mod basis (i.e. what if I want to replace a greenworld file in my mod) then they can do so and it will transparently override the existing files.

I guess I should probably take a look at the code again and double check this.
Title: Outpost 2 - 1.3.5 Update
Post by: Conestoga on November 17, 2008, 01:16:02 AM
Quote
Ok so it would be great if we can get stuff sorted this year and get a new version of Outpost 2 out!

What would you like to see in the next update?

What I think:
- New tilesets
- New maps
- Renegades single-player campaign included
- Map maker included
- Different language Outpost 2 versions
- IRC client included?

Please also see this (http://forum.outpostuniverse.net/index.php?showtopic=3975) post.

Thanks :)
- New Tilesets - We could always use some new scenery, now can't we? I would love to see more then rocky multiple shades of gray and orange rock.

- New Maps - Again, we could always use some new scenery. The old maps in colony games were getting rather dull after a while anyway.  :lol:

- Renegades single-player campaign included - I've never really heard of this before, but the thought of a new campaign is almost too intriguing to pass down.

- Map maker included - I would KILL to have a much more convenient map making program with all the tools necessary to make and play built right into the game. It would be much easier for both new map makers like me and the more elite designers.

- Different language Outpost 2 versions - Not everyone knows English, this would be perfect to expand our horizons for gamers.

- IRC client included? - I don't think this may be possible in my opinion, but its more convenient for others to talk to each other then it'll be nice to have.

My ideas:

- Music & Videos built into download - Nothing like a little reconstruction, plus the music files and videos won't play for me, too. :lol:

- More colony games involving the opposing colony in the same map - I love to not only feel threatened by having a Plymouth colony on my map like Eden Starship, but to also raid it sometimes.

- Reapplying the "Dan's" codes - I know its not right to have these cheats, but being a previous owner of the CD (Before brother stole and broke it :whistle: ), its presence should remain honored. That's my opinion at least. :lol:

- Boost enemy AI in previous games/maps - You'd think the enemy colony would have better things to do then send a convoy to the edge of the map then disappear like on Eden Starship easy.

- Like previously said: Built-in map maker - Adding all the tools and programs into the game to let you make maps to play would be a lot more convenient and less time consuming for everyone.

I'll think up more later. :heh:

The Conestoga :op2:
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on December 10, 2008, 11:22:06 PM
Here's a request I've made a few times:
Make it so the sexy menu music doesn't stop playing when you go to the Multiplayer menu (preferably make it play right up until the game is about to launch, but whatever works).
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on December 11, 2008, 04:45:31 PM
Hmm perhaps. Although, we should probably consider including the menu music with the game first. As I don't have the menu music with the default package, I would never notice something like this.
 
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on December 11, 2008, 05:01:00 PM
Not having the menu music is a crime against humanity.
Unfortunately I don't know where to download it (I just copy it off my CD).
Title: Outpost 2 - 1.3.5 Update
Post by: Sirbomber on December 21, 2008, 01:38:25 PM
Edit: In the Christmas spirit of "not ripping people a new one" I've deleted the explosive rant and replaced it with this:

Something in 1.3.5 doesn't work.
Title: Outpost 2 - 1.3.5 Update
Post by: Hooman on December 21, 2008, 07:27:30 PM
Umm, Sirbomber, the old way is still there. The new way is just another option. If you don't like it, use the old way. At worst, you'd have to create a dummy DLL that does nothing to load.


As for why this upgrade was needed, consider this. To make that shortcut, you must specify the path to OP2. Since different people install OP2 in different folders, it means they have to customize the path. This is, in many ways, equivalent to playing with the .ini file. Granted, they do it once, rather than when they want to switch between mods. But, I should point out that the new mod loading system wasn't designed for temporary mods. It was designed for permanent mods, like the net fix. If you want to use a temporary mod, I stronly suggest you use the old method. The benefit of the new mod loading system, is that no end user ever has to play with the mod loading system to get permanent patches to load properly. They can simply be packaged with Outpost 2 in a way that will work no matter where they install it. There is no hardcoded absolute path for them to adjust anywhere. If you'll recall the long set of instructions that were posted on how to get the net fix patch to load in earlier versions of Outpost 2, well, that's exactly why it was designed.


Edit: It's possible that the old way is not entirely there. I may have built the newer version starting with some outdated source code. If that's the case, then certain functionality may have been reverted. I haven't verified this against the older version, but I did notice a size discrepancy, so this is probably the source of the trouble. The change to op2ext.dll was introduced in 1.3.5 Beta 2. If you're having trouble with the /loadmod parameter, then try an earlier version. I'll see if I can obtain a newer copy of the source for the next release.