Recent Posts

Pages: 1 ... 8 9 [10]
General Interest / Re: Remote Pair Programming
« Last post by Hooman on May 31, 2017, 03:54:39 AM »
Your convenience methods sound like a good idea.

I'd be happy to pair with you again. I've noted it in my calendar.
Introductions / Re: Hello,
« Last post by Hooman on May 31, 2017, 03:19:59 AM »
Hello, welcome back!

What was your previous nick?
Introductions / Hello,
« Last post by vladamiercrystal on May 30, 2017, 09:31:27 PM »
Hello, Its good to be back after sometime being away, I saw that the forums are talking back up again. Would like to play some games some time. But You know, Id be a easy fight lol
General Interest / Re: Remote Pair Programming
« Last post by Vagabond on May 29, 2017, 07:22:17 PM »
Just finished pushing OP2MapImager code into the repository at: \Outpost2SVN\GameResources\OP2MapImager.

I separated the code into 2 more files: MapFileReader.h and MapData.h. I pushed all the code to parse the map file into a class called MapFileReader. All methods except void ReadMapData(MapData& mapData, string filename) are encapsulated as private. I added documentation to most members of MapData.h since it is a very important public structure. Those comments should be proofed by someone else. I'm still not an expert at the contents of the map file.

I also added helper functions to return the map width in non base 2 log form and the tile set filename as a std::string (the parsed data does not include a '\0' terminator). This way an end user doesn't have to deal with odd implementation details, but the data in the MapData struct still represents the MapFile content.

If anyone wants to continue on the project, I am available on Sunday, 4 June at Midnight GMT - 5 June 3AM GMT. That is Sunday 7-10PM Eastern US Time. If this is too early, we could also push later in the day. Looking at about a 3 hour chunk of time for the pairing.

I'll probably discontinue working on the project until then with the possible exception of researching a library for image manipulation or minor fixes if anyone notices dumb things in the code in the repo over the work week.

I'm happy to work with Hooman again or if someone else wants to jump in, myself or Hooman could rotate out? Or if there are 4 of us, we could pair on 2 different projects.
General Interest / Re: Remote Pair Programming
« Last post by Hooman on May 29, 2017, 07:15:49 AM »
Yes, TeamViewer worked pretty good. Lag was minimal, mostly only noticeable when I was trying to scroll to a specific point in a file, and even then not all that much.

TeamViewer can be used with or without registering an account with TeamViewer. It's easiest if you register an account with TeamViewer using your email address, and then add the other person to your friend's list. That allows you to easily send a request to join them using their computer, which they can accept or deny. There is another method we tried first, which didn't require registering an account with TeamViewer, and involved sharing access codes, similar to a username and password. Beware though that these access codes let someone join without prompting to accept on the host end. This method seems to be useful for accessing your own computer remotely, so you can join while it's unattended. To aid this feature, TeamViewer is also set to launch at startup by default when you install it. If you're security conscious, you might want to change that option, and perhaps not use the access code sharing method.

There was some trouble initially getting TeamViewer to use the mic on my end. It was only transmitting audio one way at first. We tried using Discord for the audio, but since TeamViewer was still transmitting audio one direction, including what Discord was playing, it caused my voice to echo back 1 or 2 words later. Very hard to speak clearly when you hear a delayed echo of yourself. It messes with your brain, confuses you, and makes you slur your words trying to compensate. Try it sometime, it's weird and fascinating. I eventually got the mic to work, though in hindsight I wonder if it may have had something to do with closing Skype first.

Chrome Remote Desktop did not connect for us. It failed during the connection attempt, after alerting the other side.


Stated project goals seem quite good. I've wanted something that can make scaled images of maps for a long time.

More generally, I would like new code to allow for easy cross platform extraction of game resources. Many of the current tools are Windows specific, and have extra dependencies that need to be installed. I'd like standalone utilities available with minimal dependencies, to ensure stuff just works wherever. Ultimately, I want to make it easy for anyone to access game resources, either through library code, or without needing to program anything, in easy to use standard formats. That should allow people to do whatever they want with the resources, creating new utilities, editing resources, or extracting resources for use in new projects or remakes. I'm hoping easy access to the game resources might spur on new projects.
News / Re: Wiki Software Updated
« Last post by Vagabond on May 29, 2017, 12:36:12 AM »
White Claw,

The entire WIKI is about 1 and half years old. So it is really new. Dave, myself and Leeor pushed most all the current info.

Private message me your email address and I'll give you write access.

It still needs a lot of work in some sections and you are always welcome to fix any mistakes that we have made typing in them.

I actually made a section on the in game videos, but it is well, not that good yet.
General Interest / Re: Remote Pair Programming
« Last post by Vagabond on May 29, 2017, 12:31:42 AM »
The first pair programming session was a pretty big success. It took us about an hour and a half to slog through the technical details of software setup. and then we probably spent about 2.5 hours split between pair programming and reviewing Outpost 2 internal data.

I had a great time and learned a lot in the process.

Environment Setup Details

Chrome Remote Desktop would not secure a connection between our computers (I think it was on my end, but not sure).

Next we tried TeamViewer. The initial link setup was easy. Screen quality was good and lag was only bothersome when scrolling through a lot of text. (Hooman can speak to the latency better than me since I was the host.) It took us a long time to get audio setup. Hooman could hear me but I couldn't hear him. We eventually tried audio through Discord with TeamViewer. There was an extremely annoying echo in Discord when TeamViewer was on. Turning off TeamViewer and Discord would transmit the audio fine. We eventually got TeamViewer's internal audio function via VoIP to work.

After about 1.5 hours of fiddling, we got it all up and running at 1366x778 resolution without much lag. We live geographically distant from each other, so I was pretty happy with the screen sharing and audio quality. My kids only burst into loud crying once during the session, so it wasn't too embarrassing. :)

Pair Programming Results

We reviewed the info on the repository on how Map files work. (By review, I mean Hooman taught me and then showed me how to use a hex editor, very nice of him). Then we started a C++ console project. The repo contains all the backend code for the map editor. Within this code is a a C++ file for representing and parsing a map file. It is designed as COM compatible and didn't include a couple of the details that have been discovered about the MAP file format since it was created.

We elected to create a new struct to represent the map data. The newer version is be a little easier to read without the COM decoration and uses some more modern C++ features like std::vector. It was also key for me to work through to learn what was going on since I'm not a great C++ programmer. We ended the pair programming session having read most all the data from the MAP file into the MapData struct in C++.

I'm going to spend a little time cleaning up the code and then will post it to the Outpost 2 repository. Need to figure out where we want it in the repo though.

Project Goals

I think where we are going with this is creating a console application that can render images of Outpost 2 maps in different sizes. IE you could render a map at 50% of its normal size. The current map editor only produces the small thumbnails and only in BMP format. I am happy the map editor has the functionality it does, but I would like to see more.

The next step should probably be either gaining access to VOL file contents or mapping tileIDs from the map to their respective tiles on the sprite sheets. There is a file in the OllyDbg section of the repo with a lot of info on the VOL format.

Tentative Project Goals:

* Able to render a map at a custom size in common image formats. Probably at a minimum BMP and PNG or JPEG.
* Able to handle batch rendering of multiple maps if desired.
* Able to read required content out of VOL files to include WELLs, Tile Sets, and Map files.
* Separate the console application from the backend code so if someone ever wanted to create a new Map Editor, they could plug in the imagery code to allow quick rendering of maps in custom sizes and common image formats.
* Try to create a useful library for how to manipulate VOL files and MAP files. I think this may already exist in the old Map Editors code though.

I should probably let Hooman comment if he has any different goals though since it is half his work. And enough rambling for now.
News / Re: Wiki Software Updated
« Last post by White Claw on May 28, 2017, 11:46:28 PM »
Is the wiki still in need of updating? I've poked around it a bit, but wasn't sure if it was still alive much. Perhaps that's a place I can help contribute more.
Outpost 1 & Outpost General / Re: One CHAP is Enough
« Last post by White Claw on May 28, 2017, 11:42:59 PM »
Haha. I remember killing my colonists (or maybe it caused them to evacuate to the surface) because I wanted to build into the deeper layers, which effectively shut down the main tube during construction and starved the first UG layer of supplies.
Outpost 1 & Outpost General / Re: Terraforming Tech Tree
« Last post by White Claw on May 28, 2017, 11:40:35 PM »
It's been a while since I played, but I recall that more labs researching a topic would yield faster results...and that it payed to invest in "basic research" topics. I think I would also build at least 50+ of the terraforming buildings to start, aiming for something like 200 or more.
Pages: 1 ... 8 9 [10]