Recent Posts

Pages: 1 [2] 3 4 ... 10
Graphics Update / Re: Terrain Tiles
« Last post by leeor_net on October 22, 2017, 03:13:02 PM »
Since the 'mars like' planet is the one I'm doing almost all of my testing on and the one that most users are going to be using, I'd focus on something that has that look (like the original tileset). Later we can customize for Lunar (moon like), Ganymede, Murcury, Venus (lots of volcanic activity), etc. I wanted to basically start with three basic types: Mercury, Mars and Ganymede. These offer the range of hard, easy and medium, respectively in terms of difficulty levels of the individual planets. Later on we can develop other tilesets or customize them. Once the mars is done for the time being I can just recolor them to indicate differences.
I've had some experience using PDB files in C#, but I wasn't sure if that concept would transfer to C++. Fortunately it does!

PDB (Program Database) files contain:

 * public, private, and static function addresses
 * Global variable names and addresses
 * Parameter and local variable names and offsets where to find them on the stack
 * etc

So basically, if you want to debug an application and use fairly sophisticated debug tools like breakpoints, variable watches, etc, you do not actually need the source code, you just need the PDB file that is generated when the file is compiled.

You can load the application into a new project in Visual Studio 2017 (or other IDEs for that matter), then start a new instance of the application with the debugger attached. Visual Studio will automatically search for and load the PDB file associated with the application/library. In this case, I just placed the PDB file next to the executable and Visual Studio automatically found it.

Since OP2Archive is a command line program, I needed to provide arguments before running. This worked just like when debugging normally in Visual Studio. So it was easy to give it the command CREATE test.vol

See the image below of the application running in Visual Studio with the debugger attached.

Visual Studio even shows you the source code with line numbers and everything as you step through each function in the program.

Also, apparently since OP2Utility was statically linked, all of the information necessary to step through functions from OP2Utility called from OP2Archive were available for debugging without including a separate PDB file for OP2Utility.

The catch with PDB files is that each PDB file is unique to the compiled file and they are rather large. So, if you have a random PDB file for an application, it doesn't help unless it is the exact right one created on compilation.

For size reference, OP2Archive's release PDB is about 6,300 KB. This compressed down to about 1,400 KB with the standard ZIP algorithm. OP2Archive's debug PDB is about 14,100 KB, or over twice as large as the release PDB. OP2Archive is a small application and I could see how PDB files could quickly spiral into massive sizes for larger compiled files.

I know organizations like Microsoft will automatically create and archive PDB files for each release of their software. This way they can be debugged later as needed even without having to load and compile the source code. Probably important for widely used, operating system critical software.

Of course there is a security risk involved with storing the PDB file as someone could use it and basically just breeze through a thorough review of your source code.

I wonder how often when someone hires a company to create an application or library to fulfill some business need, they actually ask for copies of the PDB files for the final product just in case it needs debugged years later after development.

What a boon it would have been to get a hold of PDB files for Outpost 2's binaries.

I was thinking about placing the OP2Archive and OP2MapImager PDB files next to the executables when releasing them for fun. For such a non-critical application where the source code is public, it probably isn't a big deal, but it is a good habit to be in I think?

Thoughts? I'm done ramblig for now. :)

OutpostHD / Re: OutpostHD - An Outpost Redesign
« Last post by leeor_net on October 22, 2017, 03:03:22 PM »
I think that's what Basic Research was supposed to do. It sped up current research by a few turns... ultimately not that useful.

I was thinking of something similar which would provide some sort of random buff. Like small efficiency upgrades, cost cutting, etc.
Computers & Programming General / Git and GitHub tagging commits and releases
« Last post by Vagabond on October 22, 2017, 01:44:55 PM »
I'm starting to tag my releases in Git for OP2MapImager and OP2Archive. I noticed that GitHub automatically grabbed the tag and created a 'release' page associated with the tag with a zip file containing the source code as it existed for that release.

I went in and edited the tag to add the binary of the executable and some release notes. I thought the results looked very nice.

Anyways, I don't know what people think about using that as the primary distribution source. Right now I am using the Wiki page here:

I think I'm leaning towards switching to releases being on GitHub since it will be autogenerated when I tag the releases in Git anyways.

Also, just wanted to let people know the feature existed.

Projects / Re: OP2MapImager Development
« Last post by Vagabond on October 22, 2017, 01:31:21 PM »
I went ahead and added MIT license files to both OP2Utility and OP2Archive. Unfortunately, GitHub didn't recognize them! I must not have copied them exactly verbatim enough for GitHub to recognize it or perhaps it takes some time for a bot to review the repo and catalog it.

I'll give it a day or so and then probably repost the OP2Archive zip file with the license included.

Outpost 2 Divided Destiny / Re: Outpost 3 Alpha Testing Commencing
« Last post by Zhall on October 22, 2017, 12:36:34 PM »
For sc2 i needed to run them through 3ds max 2011 inside of a windows xp virtual machine. This is intensive but the only way i found to work, and the export handle is really nice for sc2 so its worth it.

For unity its as simple as exporting as fbx.
Graphics Update / Re: Power Structures
« Last post by White Claw on October 22, 2017, 11:20:14 AM »
Take, for example, DawnBringer's palettes. These are meant almost exclusively for low-color pixel art but the point is that the color mix itself is extremely well selected and with good use of those colors provides an excellent balance of hue, vibrance, saturation and contrast.

Thanks for the point out. I will take a look at the philosophy behind this and see if I can implement something similar. Maybe two opposing pallets for terrain vs. structures to increase contrast and distinction, as you pointed out.

And would also have to agree about a single large dish on the array.

I think after having been away for a bit and coming back, I'm also liking the large array. Although I also remember having discussions with Leeor about making the scale of the terrain (as compared to the buildings) feeling large. So perhaps a single dish, but a little smaller so it's not taking up the entire tile.
Graphics Update / Re: Storage Tank
« Last post by White Claw on October 22, 2017, 11:09:21 AM »
Graphics Update / Re: OutpostHD Graphics
« Last post by White Claw on October 22, 2017, 11:08:29 AM »
Hey, any more progress on these? I've been curious how many of the original game buildings have been redesigned? I got the feeling it was quite a significant portion already.

Hey Hooman. Sorry, not real progress for a bit now. I switched jobs a few months back, and it suddenly got really busy the last month or two. I am hoping to start working on these again in the near future. This coming week is going to be busy again but I'm hoping for a little progress. Keeping my fingers crossed for after that. :)

I haven't really decided which agridome I like more.  Both are fantastic designs.  Leaning more on the tent shape rather than the ball.  Just seems to fit better.

I made the tent shape first, because I feels more in the theme of the original. I also made the sphere out of request, and I think it came out pretty nicely too. Probably not the most practical from an "our civilization is on the brink of extinction" standpoint, but still looks aesthetically interesting. We also had discussions that perhaps they would both be in-game, since the agridome has three different tiers.
Graphics Update / Re: Terrain Tiles
« Last post by White Claw on October 22, 2017, 11:02:51 AM »
Thanks for the additional feedback about the terrain tiles. There's a lot of subjectivity that can go into this, and I think part of the problem is that there's not really a set "theme" for the geology of the hypothetical planet. (Is it full of iron, silica, sandy-windblown, or frozen methane, etc...)

For the blue/purple shift, I believe there's a whole 'nother planet tile set planned for such a view. Something in the white/gray/bluish tile set (but I defer to Leeor). I can tint things more orange/rust and see how that comes out.

Also, from what I've experienced while trying to diversify color a bit, the scale of these are such that adding too many colors starts to make the whole thing look like noise and it gets hard to distinguish terrain shape (basically it starts to camouflage).
Pages: 1 [2] 3 4 ... 10